LangFlow 1.0 : 基本プロジェクト : メモリ・チャットボット

LangFlow 1.0 : 基本プロジェクト : メモリ・チャットボット

作成 : クラスキャット セールスインフォメーション
作成日時 : 06/09/2024

* 本ページは、pre-release.langflow.org の以下のページを独自に翻訳して、適宜、補足説明したものです :

* サンプルコードの動作確認はしておりますが、必要な場合には適宜、追加改変しています。
* ご自由にリンクを張って頂いてかまいませんが、sales-info@classcat.com までご一報いただけると嬉しいです。

 

クラスキャット 人工知能 研究開発支援サービス

クラスキャット は人工知能・テレワークに関する各種サービスを提供しています。お気軽にご相談ください :

ClassCat Chatbot

◆ 人工知能とビジネスをテーマに WEB セミナーを定期的に開催しています。スケジュール
  • お住まいの地域に関係なく Web ブラウザからご参加頂けます。事前登録 が必要ですのでご注意ください。

お問合せ : 本件に関するお問い合わせ先は下記までお願いいたします。

  • クラスキャット セールス・マーケティング本部 セールス・インフォメーション
  • sales-info@classcat.com  ;  Website: www.classcat.com  ;   ClassCatJP

 

 

LangFlow 1.0 : 基本プロジェクト : メモリ・チャットボット

このフローは basic prompting フローを拡張して一意な SessionID にチャットメモリを含めます。

 

前提条件

 

メモリチャットボット・プロジェクトの作成

  1. LangFlow ダッシュボードから、New Project をクリックします。

  2. Memory Chatbot を選択します。

  3. メモリチャットボット フローが作成されます。
     

     
    このフローは Chat Input, PromptOpenAI コンポーネントを使用して基本的なチャットボットを作成します。このチャットボットは Chat Memory コンポーネントで拡張されます、これは Chat Input を通して送信されたメッセージを保存してそれらを {context} を通した OpenAI への続くプロンプトの先頭に追加します。Chat History コンポーネントは OpenAI コンポーネントに前の質問のメモリを与えます。

  4. OpenAI コンポーネント用の環境変数を作成するには、OpenAI API Key フィールドで、Globe ボタンをクリックしてから Add New Variable をクリックします。
    1. Variable Name フィールドで、openai_api_key と入力します。
    2. Value フィールドで、OpenAI API キー (sk-…) を貼り付けます。
    3. Save Variable をクリックします。

 

メモリチャットボット・フローの実行

  1. Run ボタンをクリックします。インタラクション・パネル が開き、そこでボットと会話できます。

  2. メッセージを入力して Enter を押します。ボットは Prompt コンポーネントのテンプレートに従って応答します。

  3. 更に質問を入力します。Outputs ログでは、クエリーは順番にログ記録されます。デフォルトでは 5 つのクエリーまで保存されます。LLM メモリがどこで消えるかを確認するには、”What is the first subject I asked you about?” と尋ねてみてください。

 

Session ID フィールドを変更して複数の会話を行なう

SessionID は、チャットボットとクライアント間の会話セッションのための Langchain の一意な識別子です。SessionID は、会話が初期化されたときに作成され、そのセッション中のすべての続くメッセージに関連付けられます。

作成した Memory Chatbot では、Chat Memory コンポーネントが Session ID を使用して Chat Input との過去のインタラクションを参照します。Session ID 値を変更して会話履歴間を切り替えることでこれを実演できます。

  1. Chat MemoryChat Input コンポーネントの Session ID で、Session ID の値を MySessionID から AnotherSessionID に変更します。

  2. Run ボタンをクリックしてフローを実行します。インタラクション・パネル で、新しい会話を行います (Eraser ボタンでキャッシュをクリアする必要があるかもしれません)。

  3. ボットに幾つかの質問を入力します。

  4. Chat MemoryChat Input コンポーネントの Session ID フィールドで、Session ID の値を MySessionID に戻します。

  5. フローを実行します。インタラクション・パネルOutputs ログは MySessionID を持つ最初のチャットの履歴を表示します。

 

Session ID を Langflow 変数として保存する

Session ID を Langflow 変数として保存するには、Session ID フィールドで、Globe ボタンをクリックし、そして Add New Variable をクリックします。

  1. Variable Name フィールドで、customer_chat_emea のような名前を入力します。

  2. Value フィールドで、1B5EBD79-6E9C-4533-B2C8-7E4FF29E983B のような値を入力します。

  3. Save Variable をクリックします。

  4. この変数を Chat Input に適用します。

 

以上