Open3

サンドボックス

ta.toshiota.toshio

app

components

ファイル/フォルダ 役割
artifacts.module.scss & artifacts.tsx アーティファクトに関するスタイルとコンポーネント
auth.module.scss & auth.tsx 認証に関連するスタイルとコンポーネント
button.module.scss & button.tsx ボタンのスタイルとコンポーネント
chat-list.tsx チャットセッションやメッセージのリストを管理
chat.module.scss & chat.tsx チャットインターフェースのスタイルとコンポーネント
emoji.tsx 絵文字の表示と選択を処理
error.tsx エラーメッセージやエラーハンドリング用UI
exporter.module.scss & exporter.tsx データエクスポートに関連するスタイルとコンポーネント
home.module.scss & home.tsx ホームページに関連するスタイルとコンポーネント
input-range.module.scss & input-range.tsx 範囲入力コンポーネントとスタイルを処理
markdown.tsx Markdownコンテンツを表示するコンポーネント
mask.module.scss & mask.tsx マスク機能に関連するUIコンポーネント
message-selector.module.scss & message-selector.tsx メッセージの選択に関連するコンポーネントとスタイル
model-config.tsx モデルの設定を管理
new-chat.module.scss & new-chat.tsx 新しいチャットセッションのスタイルとコンポーネント
settings.module.scss & settings.tsx 設定ページやパネルの管理
sidebar.tsx サイドバーのナビゲーション用コンポーネント
ui-lib.module.scss & ui-lib.tsx UIコンポーネントとスタイルのライブラリ
sd/ フォルダ
index.tsx sd機能のエントリーポイントとして機能するコンポーネント
sd-panel.module.scss sdパネルに関連するスタイル
sd-panel.tsx sdパネルを構成するコンポーネント
sd-sidebar.tsx sdのサイドバーを構成するコンポーネント
sd.module.scss sdモジュールに関連する全体的なスタイル
sd.tsx sd機能全体のメインコンポーネント

sdはStable Diffusion

api

ファイル名 役割
alibaba.ts Alibaba APIとのインターフェースを管理する機能
anthropic.ts Anthropic APIとのインターフェースを管理する機能
auth.ts 認証関連のAPIを管理する機能
azure.ts Microsoft Azure APIとのインターフェースを管理する機能
baidu.ts Baidu APIとのインターフェースを管理する機能
bytedance.ts ByteDance APIとのインターフェースを管理する機能
common.ts 共通のAPIリクエストやユーティリティ関数を管理するファイル
google.ts Google APIとのインターフェースを管理する機能
iflytek.ts iFLYTEK APIとのインターフェースを管理する機能
moonshot.ts Moonshot APIとのインターフェースを管理する機能
openai.ts OpenAI APIとのインターフェースを管理する機能
stability.ts Stability AI APIとのインターフェースを管理する機能

client

ファイル名 役割
api.ts クライアントサイドのAPIリクエストやレスポンスを処理する機能
controller.ts クライアントサイドのロジックやデータの管理を担当する機能

config

ファイル名 役割
build.ts アプリケーションのビルド設定を管理する機能
client.ts クライアントサイドの設定を管理する機能
server.ts サーバーサイドの設定を管理する機能

masks

masksフォルダは、アプリケーション内で使用される「マスク」機能に関連する設定やデータ、ロジックを管理する役割を担っています。「マスク」は、おそらくユーザーが入力したデータや表示する内容に対して、特定のフィルターやテンプレートを適用するためのものです。このフォルダには、マスク機能に関連するビルドスクリプト、言語別の設定ファイル、および型定義ファイルが含まれています。つまり、マスク機能の全体的な管理や処理を行うためのコードが集約されている場所です。

ファイル名 役割
build.ts マスクデータのビルドや構築を管理する機能
cn.ts 中国語に関連するマスクデータや設定を管理するファイル
en.ts 英語に関連するマスクデータや設定を管理するファイル
index.ts マスク機能のエントリーポイントとして機能するファイル
tw.ts 台湾向けのマスクデータや設定を管理するファイル
typing.ts マスク機能に関連する型定義を管理するファイル

store

ファイル名 役割
access.ts アクセス制御や認証に関連するデータ管理を担当する機能
chat.ts チャットデータの管理や状態を管理する機能
config.ts アプリケーションの設定データを管理する機能
index.ts ストア機能のエントリーポイントとして機能するファイル
mask.ts マスクデータの管理や状態を管理する機能
prompt.ts プロンプトデータの管理や状態を管理する機能
sd.ts 特定の機能(おそらく「sd」機能)に関連するデータ管理を担当する機能
sync.ts データの同期やバックアップを管理する機能
update.ts データやアプリケーションの更新を管理する機能

utils

ファイル名 役割
baidu.ts Baiduに関連するユーティリティ関数を提供するファイル
chat.ts チャット機能に関連するユーティリティ関数を提供するファイル
clone.ts オブジェクトのクローン作成に関連するユーティリティ関数を提供するファイル
cloudflare.ts Cloudflareに関連するユーティリティ関数を提供するファイル
cors.ts CORS(クロスオリジンリソース共有)に関連するユーティリティ関数
format.ts データのフォーマットや変換に関連するユーティリティ関数
hmac.ts HMAC(ハッシュベースメッセージ認証コード)に関連するユーティリティ関数
hooks.ts Reactのフックに関連するユーティリティ関数を提供するファイル
merge.ts データやオブジェクトのマージに関連するユーティリティ関数
model.ts データモデルに関連するユーティリティ関数
object.ts オブジェクト操作に関連するユーティリティ関数
store.ts ストレージやデータ保存に関連するユーティリティ関数
sync.ts データの同期に関連するユーティリティ関数
tencent.ts Tencentに関連するユーティリティ関数を提供するファイル
token.ts トークンの生成や検証に関連するユーティリティ関数
ta.toshiota.toshio

https://gist.github.com/kohya-ss/68d41a9720bfbdfd87869ec970142f4b

llmに抜き出してもらう

関数名 役割
qwen2_chat_handler Qwen2モデル用のチャットインタラクションを処理します。
command_r_chat_handler Command Rモデル用のチャットインタラクションを管理します。
gemma_2_chat_handler Gemma 2モデル用のチャットインタラクションを処理します。
get_chat_completion_handler 選択されたモデルとパラメータに基づいてチャットのコンプリートハンドラーを取得します。
log 指定されたログファイルや出力にメッセージやデータを記録します。
build_message_simple コンポーネント間の通信のためにシンプルなメッセージを構築します。
build_messages プロンプトやユーザー入力に基づいて、モデルとのインタラクションのための一連のメッセージを構築します。
generate_response 提供されたメッセージとパラメータに基づいてモデルからの応答を生成します。
check_review_response_ok_ng モデルのレビューに対する応答が受け入れられるかどうか(OK/NG)をチェックします。
generate_plot 物語やナラティブのプロットの概要を生成します。
generate_characters_rough 物語の粗いキャラクターの説明を作成します。
generate_cleaned_characters_rough 粗いキャラクターの説明をクリーンアップし、洗練します。
generate_characters_detailed 詳細なキャラクターの説明を生成します。
generate_cleaned_character_detail 詳細なキャラクターの説明をクリーンアップし、洗練します。
generate_outline プロットやキャラクターの詳細に基づいて物語の概要を生成します。
generate_cleaned_outline_and_split 生成された概要をクリーンアップし、セクションに分割します。
generate_scenes 概要とキャラクターの詳細に基づいてシーンを生成します。
generate_cleaned_scenes 生成されたシーンをクリーンアップし、洗練します。
generate_text 物語の文章を生成します。
generate_cleaned_text 一貫性と品質を高めるために生成された文章をクリーンアップし、洗練します。
main ユーザーの入力やパラメータに基づいて全体のプロセスを指揮するメイン関数です。
setup_parser コマンドラインインターフェース(CLI)入力のための引数解析を設定します。

全体的な処理の流れは、ユーザーからの入力をもとに、ストーリーやキャラクターを生成するプロセスを管理します。

  1. コマンドライン引数の解析 (setup_parser):

    • setup_parser 関数を呼び出して、コマンドライン引数を解析します。この引数には、生成するストーリーの段階や、デバッグモードのオン/オフなど、様々な設定が含まれます。
    • 解析結果は args オブジェクトとして保持され、以降の処理に使用されます。
  2. 各生成フェーズの実行 (main 内の処理):

    • コマンドライン引数に基づき、ストーリーの生成フェーズが順次実行されます。具体的には、以下の処理が行われます:
      1. プロットの生成 (generate_plot):
        • 物語の概要となるプロットを生成します。
      2. 粗いキャラクター設定の生成 (generate_characters_rough):
        • プロットに基づき、キャラクターの基本的な設定(名前、役割など)を生成します。
      3. 詳細なキャラクター設定の生成 (generate_characters_detailed):
        • キャラクターの詳細な背景や性格を生成します。
      4. アウトラインの生成 (generate_outline):
        • プロットとキャラクター設定をもとに、物語の概要をさらに詳細にします。
      5. シーンの生成 (generate_scenes):
        • 物語の具体的なシーンを生成し、どのように展開していくかを決定します。
      6. テキストの生成 (generate_text):
        • 上記の全ての情報を基に、最終的な物語の文章を生成します。
  3. クリーニング処理:

    • 各生成フェーズの後に、生成されたデータをクリーンアップし、必要に応じて精度を高めます。この処理には、以下の関数が使用されます:
      • generate_cleaned_characters_rough
      • generate_cleaned_character_detail
      • generate_cleaned_outline_and_split
      • generate_cleaned_scenes
      • generate_cleaned_text
    • これにより、生成されたストーリーが整合性を保ち、品質が向上します。
  4. レビューと応答のチェック:

    • 生成された各部分に対してレビューを行い、その結果に基づいて必要に応じて再生成や修正を行います。
    • check_review_response_ok_ng 関数を使用して、レビューの結果が適切かどうかを判断し、必要に応じてフィードバックを提供します。
  5. ログの記録 (log):

    • 各ステップの結果や処理の詳細は log 関数を通じて記録されます。これにより、処理の進行状況やエラーを追跡できます。

処理の全体像

main 関数は、コマンドライン引数に基づいて、プロットから最終的なテキスト生成までの一連のフェーズを順次実行します。それぞれのフェーズは独立して実行され、途中でレビューやクリーニング処理が挟まることで、ストーリーの整合性と品質が保たれます。各フェーズの結果はログとして記録され、ユーザーが指定した出力ファイルに保存されます。

このプロセスは、ユーザーが定義したオプションに従ってカスタマイズされるため、柔軟にストーリー生成が行えるよう設計されています。