この記事では、LangChain のエージェントについてあらゆる側面から説明します。
LangChain のエージェントとは何ですか?
アプリケーションによっては、あらかじめ決められたチェーンだけでなく、ユーザーの入力に依存する未知のチェーンも必要とする場合があります。そのような場合に備えて「」があります。 エージェント 」ツールにアクセスし、ユーザーの入力と要求に応じてどのツールが必要かを判断します。ツールキットは基本的に、特定の目的を実行するために必要なツールのセットであり、ツールキットには 3 ~ 5 つのツールがあります。
LangChain エージェントの種類
主要なエージェントは 2 つあります。
- アクションエージェント
- 計画と実行のエージェント
アクションエージェント: これらのエージェントは、実行するアクションを段階的に決定します。各ステップを評価して実行し、いくつかのステップを含むエージェントの疑似コードについて説明する場合は、次のステップに進みます。
- ユーザーからの入力を受け取ります。
- エージェントは、ツールと必要なツールの種類を決定します。
- そのツールを入力ツールで呼び出して観察を記録します。
- 履歴ツール、観察ツール、入力ツールはエージェントに返されます。
- エージェントがこのツールを終了することを決定するまで、このプロセスを繰り返します。
計画と実行のエージェント: これらのエージェントは、まず実行するアクションを決定し、次にそれらのアクションをすべて実行します。
- ユーザー入力が受信されます。
- エージェントは、実行するすべてのステップをリストします。
- エグゼキュータはステップのリストを調べて、それらを実行します。
エージェントのセットアップ
エージェントをセットアップする前に、最新バージョンの パイソン オペレーティングシステムに応じて。
ステップ 1: パッケージのインストール
まず、そのための環境を確立する必要があります。「」を通じて LangChain、google-search-results、openai をインストールする必要があります。 ピップ ' 指示:
! ピップ インストール ラングチェーン
! ピップ インストール グーグル検索結果
! ピップ インストール オープンナイ
必要なライブラリをインポートする:
langchain.schema から SystemMessage をインポートlangchain.agents から OpenAIFunctionsAgent、AgentExecutor をインポート
langchain.agents インポート ツールから
langchain.chat_models から ChatOpenAI をインポート
輸入再
getpass から getpass をインポート
ステップ 2: シークレット API を取得する
環境をセットアップしたら、OpenAI Platform から秘密の API キーを取得する必要があります。
llm = チャットオープンAI ( openai_api_key =openai_api_key、 温度 = 0 )
ステップ 3: ツールの初期化
次に、文字列の長さを取得するための簡単な Python コードを記述して、ツールを定義しましょう。
def get_word_string ( 単語: str ) - > 整数:
「」 「文字列の長さを教えてください。」 「」
戻る のみ ( 言葉 )
ツール = [ get_word_string 】
ステップ 4: プロンプト テンプレートを作成する
ツールを定義した後、これを使用するためのプロンプト テンプレートを設定します。 「OpenAIFunctionsAgent.create_prompt()」 テンプレートを自動的に作成するヘルパー関数。
プロンプト = OpenAIFunctionsAgent.create_prompt ( システムメッセージ =システムメッセージ )
ステップ 5: エージェントの作成
これで、すべての部分を完成させ、 という関数を使用してエージェントを作成できます。 「OpenAIFunctionsAgent()」 。
ステップ 6: ランタイムのセットアップ
エージェントが正常に作成された場合は、エージェントのランタイムを作成します。この「AgentExecutor」がエージェントのランタイムとして使用されます。
ステップ 7: エージェントのテスト
ランタイムを作成したら、今度はエージェントをテストします。
ステップ 2 で正しい API キーを入力すると、応答が得られます。
結論
この記事はさまざまな側面から説明されています。まず、LangChain とは何か、それがどのように機能するかを示し、次に LangChain のエージェントに移り、LangChain のエージェントの目的について説明し、2 つの主要なタイプのエージェントに関する情報が含まれています。 「アクションエージェント」 そして 「計画と実行のエージェント」 LangChain で使用され、最後にコードが実行されて LangChain にエージェントが確立されます。