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, Prompt と OpenAI コンポーネントを使用して基本的なチャットボットを作成します。このチャットボットは 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 Memory と Chat Input コンポーネントの Session ID で、Session ID の値を MySessionID から AnotherSessionID に変更します。

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

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

  4. Chat Memory と Chat 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 に適用します。

 

以上