LangChain
https://book.st-hakky.com/docs/langcain-intro/
LangChainは、GPT-3のような大規模言語モデル(Large Language Model: LLM)を利用してサービスの開発をしたいときに便利に使えるライブラリです。
例えば、開発したいチャットアプリの要件に、「最新の検索結果の内容も踏まえてAIに返答をさせたい」といった条件が追加された場合には LangChain が有効です。 LangChain には、「検索エンジンでの検索結果を API で返してくれるサービス」である SerpApi と LLM を組み合わせる機能があります。 この機能を使うことで、よくある「最新の検索結果の内容も踏まえて AI に返答をさせたい」という要望を数行のコードで実装できます。
JavaScript/TypeScript実装とPython実装がある
6つのモジュールがある
Models
機械学習のモデルのこと。3つある
LLMs GPT-3.5など
Chat Models: OpenAIのChat APIのためのモデル
Text Embedding Models: テキストをベクトル化するモデル
Prompts
モデルへの入力を組み立てるモジュール
Chains
モジュールを連結する
ModelとPromptを組み合わせてChainを作り、Chainを実行する、といった流れになる
Indexes
テキストをベクトル化してvector storeに保存
クエリをベクトル化して検索し、文脈(context)をプロンプトとして与える
LlamaIndexも同様のことができる
Memory
過去のやり取り(hisotry)をプロンプトとして与える
Agents
LLMがさまざまなツールを使えるかのようにするモジュール
Bashでのコマンド実行、Pythonスクリプト実行、Google search etc.
参考
2023-04
話題の ChatGPT + LangChain で、膨大な PDF ドキュメントの内容を爆速で把握する
プロンプトエンジニアリングから始めるLangChain入門