LangChain と DeepInfra を使用してカスタマー サポート チャットボットを構築するためのガイド

LangChain と DeepInfra を使用してカスタマー サポート チャットボットを構築するためのガイド

翻訳者 |ブガッティ

レビュー | Chonglou

日常のオンラインのやり取りの中でチャットボットを目にしたことがあると思いますが、これらのデジタルアシスタントを動かす基盤技術について考えたことはありますか?チャットボットは特に顧客サポートの分野で効率を高めながら顧客サービスを向上させる、現代のビジネスに欠かせないツールなっています。今日は、 LangChainDeepInfra がどのようにしてこのようなチャットボットの応答性効率性を高めることができるのを詳しく説明します

チャットボットの基本コンポーネント

まず基本を理解しましょうチャットボットのコアコンポーネントは何でしょうか?応答性と効率性に優れたチャットボットを開発するにはモデル、プロンプトテンプレート、そして テンプレートとメモリ。

このモデルはチャットボットの背後にあるAI頭脳を表し、ユーザー入力を理解して応答する役割を担いますプロンプト テンプレートはチャットボットの応答をガイドし、返信がトピック沿っていることを保証します。最後に、メモリは対話状態を維持し、チャットボットが過去の会話を記憶しそれを使用して現在の会話のコンテキストを理解できるようにします。

操作ガイド

さあ始めましょう LangChainDeepInfraを使用してカスタマー サポート チャットボットを構築するプロセス説明します。このチャットボットがオンライン衣料品店で「機能」し、顧客が服を選ぶのを手伝うと仮定しましょう

  • DeepInfra APIキーを取得する

DeepInfra はシンプルなAPIとスケーラブルな本番環境レベルのインフラストラクチャを備えており、主流のAIモデルを簡単に実行できます。まず、このリンクを使用して、DeepInfra のサービスやり取りするためのAPIキーを取得する必要があります。キーを取得したら次のように環境でAPIトークンを設定できます

 from getpass import getpass import os # Set the DeepInfra API token DEEPINFRA_API_TOKEN = getpass() os.environ["DEEPINFRA_API_TOKEN"] = DEEPINFRA_API_TOKEN
  • LangChainとDeepInfra環境の構築

次に、 LangChain 環境と DeepInfra 環境を作成する必要があります。必要なコンポーネントをインポートし DeepInfraモデルインスタンスを作成しますたとえば databricks/dolly-v2-12b のようなモデルを使用できます

 from langchain import ConversationChain, LLMChain, PromptTemplate from langchain.memory import ConversationBufferWindowMemory from langchain.llms import DeepInfra # Create the DeepInfra instance llm = DeepInfra(model_id="databricks/dolly-v2-12b") llm.model_kwargs = {'temperature': 0.7, 'repetition_penalty': 1.2, 'max_new_tokens': 250, 'top_p': 0.9}
  • :チャットボット適したモデルの選択と展開

LLM に使用できるさまざまなモデルが存在します。この例では、databricks/dolly-v2-12b モデルの使用方法を示していますが、DeepInfra には他にも多くのモデルが用意されています。選択できるオプションが非常に多いため、LangChain で使用するのに適した LLM を見つけるために、AIModels などのツールを使用することをお勧めします。 AI モデルを自由に検索、フィルタリング、並べ替えて、プロジェクトに最適なものを見つけてください。選択可能なモデルを見つけるには、DeepInfra ページをご覧ください。

  • チャットボットの応答をガイドするプロンプトテンプレートを作成する

ここで、チャットボットの応答をガイドするプロンプト テンプレートを定義しますこれにより、チャットボットの応答がコンテキストとユーザーの入力と一致するようになります。いくつかの異なるテンプレートを試してみましたが、完璧なものを見つけるのは簡単ではありませんでした適切なキューを設計するプロセスは、キュー エンジニアリングと呼ばれます最終的には、 Pinecone の Web サイトで見つけたテンプレートを再利用することができました

 template = """Given the following user prompt and conversation log, formulate a question that would be the most relevant to provide the user with an answer from a knowledge base. You should follow the following rules when generating and answer: - Always prioritize the user prompt over the conversation log. - Ignore any conversation log that is not directly related to the user prompt. - Only attempt to answer if a question was posed. - The question should be a single sentence. - You should remove any punctuation from the question. - You should remove any words that are not relevant to the question. - If you are unable to formulate a question, respond with the same USER PROMPT you got. Conversation log: {history} USER PROMPT: {human_input} Your response: """ prompt = PromptTemplate( input_variables=["history", "human_input"], template=template )
  • チャットボットを初期化しメモリを設定する

モデルとプロンプト テンプレートの準備ができたら、次のステップはチャットボットを初期化し対話の状態維持するためのメモリを設定することです。

 # Now using DeepInfra with the LLMChain llm_chain = LLMChain( llm=llm, prompt=prompt, verbose=True, memory=ConversationBufferWindowMemory(k=2), )
  • チャットボットを実行して対話する

最後に、チャットボットと対話する準備が整いました。例を見てみましょう:

 output = llm_chain.predict(human_input="Hello! What clothes do you recommend I buy to rebuild my summer wardrobe") print(output)

結果として、いくつかの服が推奨されます。

 In the context of summer wardrobe recommendations, you should buy your clothes from the following list: - V-neck T-shirts - Tank Tops - Solid Color Swim Shorts - Swim Shorts - Skirts - Cardigans - Sandals

チャットボットにおける記憶の概念

チャットボットではメモリが重要な役割を果たします。これはチャットボットのやり取りにおけるコンテキストと履歴を維持するのに役立ちチャットボットが過去の会話を思い出し現在の会話のコンテキストを理解できるようにします。この機能は、より多くの人間同士のやり取りを生み出しユーザー エクスペリエンスを向上させるために不可欠です。記憶に関するトピックについては調べる価値のある記事が多数あります詳細についてはこのガイドを参照することをお勧めします

その他の参考資料と例

さらに理解を深めるには、Langchain Web サイトの ChatGPT Clone Notebook、Conversation Memory Notebook、Conversation Agent Notebook などのリソースを確認することをお勧めします。これらのリソースは、記憶の概念についてのより詳細な紹介、主要な概念を記憶するための実践的なガイダンス、および記憶の例を提供します。

AIModels.fyi にある他の Langchain ガイドも確認してください

DeepInfraプラットフォームに関する詳細なドキュメントも提供しており詳細な投稿、ガイド、記事を入手できるブログ運営しています。

結論は

LangChain と DeepInfra を使用して顧客サポート用のチャットボットを構築するのは、最初は複雑に思えるかもしれませんが、基本的なコンポーネントと手順を理解すれば、プロセス全体がはるかに簡単になります。これらのテクノロジーを活用することで、顧客サービスが大幅に改善され、ビジネス効率が向上し、全体的な顧客満足度が向上します。将来、これらのテクノロジーは真に強力なものとなり顧客サービスの分野にも発展し影響を与え続けることが期待されます

原題: LangChain と DeepInfra を使用したカスタマー サポート チャットボットの構築: ステップバイステップ ガイド、著者: Mike Young


<<:  ひと口引くとバラが生き返ります! Googleは画像ダイナミクスを生成することを提案しており、すべてのものに魂が宿ることになる

>>: 

ブログ    
ブログ    

推薦する

Google、ユーザーの文章力向上を支援するAI文法チェッカーをリリース

8月8日、IT Homeの友人はGrammarlyツールが提供する「文法チェック」サービスを使用した...

日常アルゴリズムのパスの合計について話す

[[426794]]この記事はWeChatの公開アカウント「3分でフロントエンドを学ぶ」から転載した...

AIは人間よりはるかに優れています。AIが意識を持つようになったら、人間はAIに取って代わられてしまうのでしょうか?

人工知能は、無意識のうちに私たちの生活にほぼ完全に浸透しているようで、人工知能の知能レベルはますます...

...

Musk xAI初の研究成果公開!創立メンバーのヤン・ゲとヤオクラスの卒業生が共同で創設した

マスク氏のxAI、初の公開研究成果がここに!共著者の一人は、xAI の創設メンバーであり Shing...

2.5 ~ 4 倍の深さで、より少ないパラメータと計算量で、DeLighT はどうやってそれを実現したのでしょうか?

ディープラーニングはパラメータが多すぎる、モデルが大きすぎる、展開が不便、そしてコンピューティングリ...

...

...

すべてのデータ サイエンティストに必要な 3 つのシンプルな異常検出アルゴリズム

外れ値検出の詳細と、Python で 3 つのシンプルで直感的かつ強力な外れ値検出アルゴリズムを実装...

...

ニューラルネットワークに基づくマルウェア検出分析

今日、あらゆる業界にとって、「マルウェアを効果的に検出する方法」は、ネットワーク セキュリティに関す...

カリフォルニア工科大学、プロペラアームを使って滑空する二足歩行ロボットを開発

LEONARDO は、カリフォルニア工科大学の航空宇宙ロボット工学および制御研究所の言語の天才たちの...

トイレ掃除から純資産435億ドルへ!黄仁訓の成功の秘訣:時計を着けないこと

若者に向けて、Lao Huang 氏から 3 つの提案を紹介します。学ぶことをやめず、できる限り最善...

...

...