見出し画像

LangChainのv0.0.126からv0.0.138までの差分を整理(もくもく会向け)

本日は第2回目のLangChainもくもく会なので、前回3月29日に実施した回から本日までのLangChainの差分について整理しました。

v0.0.126 (2023.3.30)

追加
・pymupdf出力に不足しているsourceフィールドを追加
・Harrison/unstructured validationを追加
・Harrison/better asyncを追加
・ConversationalRetrievalChainにトークン削減を追加
・Harrison/aleph alpha embeddingsを追加
・ConversationKGMemoryの改善とload_memory_variables関数の追加
・Harrison/gitbookを追加
・Harrison/memory checkを追加
・anthropicへの非同期サポートを追加
・searx: 非同期対応とJSON結果を提供するヘルパーツールを実装
・サイトマップエントリの除去を追加
・OpenAIコールバックに成功したリクエスト数を追加
・GoogleDriveローダーにGoogleシートの読み込み機能を追加
・Harrison/memory baseを追加
変更
・BaseQAWithSourcesChainを更新して、SOURCES: の後にスペースと改行がある場合に対応
その他
・バージョンを126に更新

https://github.com/hwchase17/langchain/releases/tag/v0.0.126

v0.0.127 (2023.3.31)

追加
・ChatOpenAIに温度を追加
・Harrison/base agent without docsを追加
・Figmaドキュメントの更新と例の追加
・LLMにapredict_and_parseを追加
・PrompTemplateのfrom_*にkwargsを追加
・Harrison/engine argsを追加
・Harrison/aim integrationを追加
・Harrison/clear mlを追加
・Harrison/arizeを追加
・非同期リトリーバーのサポートを追加
変更
・ElasticVectorSearchクラスのdocstringsを更新
・ツールの冗長性をエージェントの冗長性より優先するよう変更
・BaseOutputParserのdocstringsに詳細を追加
・Redisのlrange()が挿入の逆の順序でレコードを取得するバグ修正
・不正確なwikipageの要約を修正
・wikipediaの要約を修正
・text.pyの更新
その他
・バージョンを127に更新

https://github.com/hwchase17/langchain/releases/tag/v0.0.127

v0.0.128 (2023.4.1)

追加
・epublications用のドキュメントローダーを追加
・sitemapをより柔軟にする機能を追加
・chromaにMMRメソッドを追加
・Harrison/apifyを追加
・googleドライブドキュメントローダーにエラーメッセージを追加
・__version__を追加
変更
・requestsをより汎用的にする機能を追加
・vectorstore-retriever.ipynbを更新
その他
・バージョンを128に更新

https://github.com/hwchase17/langchain/releases/tag/v0.0.128

v0.0.129 (2023.4.2)

追加
・total_costの推定を追加(openaiのトークン数に基づく)
・wikipedia api exampleを追加
・TextLoaderにencodingパラメータを追加
・Deeplakeデータセットを読み取り専用モードで開く機能を追加
・remote retrieverを追加
・Dockerfileを追加(Dockerコンテナ内でユニットテストを実行)
・Harrison/sql alchemyを追加
・Harrison/multiline commandsを追加
変更
・gdrive loaderのmetadatasにタイトルを追加
・DirectoryLoaderとBSHTMLLoaderでloaderクラスにkwargsを渡す機能を追加(エンコーディングやBeautifulSoupの動作を変更可能)
その他
・バージョンを129に更新
・Windowsで失敗するユニットテストをスキップ

https://github.com/hwchase17/langchain/releases/tag/v0.0.129

v0.0.130 (2023.4.4)

追加
・Harrison/base agentを追加
・Zilliz exampleを追加
・chat model exampleを追加
・SeleniumURLLoaderを追加(JavaScript依存のWebページデータの取得用)
・SearxSearchWrapperのカテゴリサポートを追加
・Harrison/llamaを追加
・custom agent docsを追加
変更
・wikipedia api wrapperの出力を変更
・Pinecone用の返す文書数を減少させる
・SerpAPIのエラーメッセージ内のタイポを修正
その他
・バージョンを130に更新

https://github.com/hwchase17/langchain/releases/tag/v0.0.130

v0.0.131 (2023.4.4)

追加
・Harrison/base language modelを追加
・agent_vectorstore.ipynbを更新
・requests toolをload_tools用の個別のメソッドに拡張
・agentタイプのEnumを追加
・Harrison/msg filesを追加
・Harrison/sql viewsを追加
・Harrison/gpt4allを追加
変更
・Windowsでのテストの修正とdev dependencyの追加
・データベースをノートブックまたはスクリプトのコンテキストに関係なく永続化
・DataFrameエージェントでfrom_agent_and_toolsにおけるkwargsの不足を修正
・SQLエージェントの作成時にkwargsを渡すように修正
・requests wrapperの変更
・Qdrantの更新(1.1.1に)とドキュメントの修正
その他
・バージョンを131に更新

https://github.com/hwchase17/langchain/releases/tag/v0.0.131

v0.0.132 (2023.4.5)

追加
・metalリトリバーを追加
・Harrison/pineconeハイブリッドを追加
・階層的プランニングエージェントを追加(大規模なopenapiスペックに対するマルチステップクエリ用)
・Harrison/elastic searchを追加
・AsyncCallbackManagerの改善
・Harrison/tfidfリトリバーを追加
変更
・Pineconeインデックスが存在しない場合に新しいインデックスを作成しないように修正
・LlamaCppパラメータの更新
・Elasticsearchの修正
その他
・バージョンを132に更新

https://github.com/hwchase17/langchain/releases/tag/v0.0.132

v0.0.133 (2023.4.7)

追加
・lint_diffコマンドを追加
・モックサーバーを追加
・UnstructuredEmailLoaderにMSFT Outlookファイルのサポートを追加
・マルチアクションエージェントを追加
・Harrison/openapiパーサーを追加
・Harrison/openapiスペックを追加
変更
・WhatsAppChatLoaderの24時間形式の正規表現パターンを修正
その他
・タイプミスの修正(openapi agent toolkit)
・バージョンを133に更新

https://github.com/hwchase17/langchain/releases/tag/v0.0.133

v0.0.134 (2023.4.8)

追加
・jinaのJupyterノートブックを追加
・AgentExecutorの実行時間制限を追加
・Request bodyを追加
・rwkvのサポートを追加
・APIチェーン用の評価ノートブック例を追加
・openai組織の設定サポートを追加
・Harrison/weaviate retrieverを追加
・Weaviateにおけるsimilarity_search_by_vectorの実装を追加
・インコンテキストQA評価チェーンと思考推論チェーンを追加
・Harrison/entity storeを追加
・Harrison/allow org noneを追加
・Harrison/table indexを追加
・グラウンドトゥルース質問生成を支援するノートブックを追加
・エージェントツールの取り出しを追加
・Harrison/redisの改善を追加
・VectorStore基本クラスで非同期ベクタ操作を追加
・_atake_next_stepでのツールの並行実行を追加
・pytest-vcrを追加して統合テストでのHTTPインタラクションを記録
・Harrison/move evalを追加
変更
・gpt4allの例にmodelパラメータを更新
・Deep Lakeを拡張して属性検索、距離指標、スコアの返却、MMRを含める
・opensearchを既存のインスタンスをより良くサポートするように拡張
・ドキュメントの修正
・デフォルトの埋め込み最大トークンサイズを設定
・チャットモデルのオープンAI用トークンカウントを修正
・バージョンを134に更新
その他
・複数のタイプミス修正(ドキュメント、コード内)
・JSON5ではなくJSONを使用
・不要なBaseModelの依存関係を削除
・Gitbookの強化
・エージェントのドキュメントの更新

https://github.com/hwchase17/langchain/releases/tag/v0.0.134

v0.0.135 (2023.4.9)

追加
・共有Googleドライブフォルダのサポートを追加
・Harrison/redisを追加
・Harrison/motorheadを追加
・ChromaDB: インデックス作成時にメタデータを調整する機能を追加
変更
・Qdrantを1.1.2にアップグレード
・ドキュメントの修正
・openai_organizationを引数として使用
・RWKV: 呼び出し間でmodel_stateを伝播させないように変更
・チャットモデルでtemperatureパラメータが使用されない問題を修正
その他
・エージェントのドキュメントの更新
・複数のタイプミス修正(ドキュメント、エラーメッセージ、コード内)
・統合テストでの依存関係の見落としを修正
・ドキュメントリンクの修正
・READMEのリンク内の不要な疑問符を削除
・バージョンを135に更新

https://github.com/hwchase17/langchain/releases/tag/v0.0.135

v0.0.136 (2023.4.10)

追加
・AsyncIteratorCallbackHandlerを追加
・Multi-Hop / Multi-Spec LLM Chainを追加
・Deep Lakeリトリーバー例を追加(Twitterのthe-algorithmソースコードを解析)
変更
・StructuredOutputParserでJSONDecoderエラーからの復旧を許可
・ReadTheDocsローダーのメインコンテンツフィルタを修正
・Harrison/docsの整理
その他
・複数のタイプミス修正(ドキュメント、エラーメッセージ、コード内)
・AzureOpenAIエンベディング例でのインポート漏れを修正
・async_agent.ipynbのカンマ抜けを修正
・バージョンを136に更新

https://github.com/hwchase17/langchain/releases/tag/v0.0.136

v0.0.137 (2023.4.12)

追加
・BabyAGI Notebook Exampleを追加
・APIChainに非同期呼び出しを追加
・GPT4Allのストリーミングを追加
・PDFをHTMLコンテンツとして読み込む新しいローダーを追加
・コールバックのドキュメントを追加
・SqlDatabaseToolkitにカスタムLLMを追加
・BentoMLの例を追加
・milvus/zillizをドキュメントに追加
・Harrison/databerryを追加
・condaインストール手順を追加
・tiktoken用のOpenAIEmbeddings特別トークンパラメータを追加
・OpenSearch用のカスタムベクターフィールドとテキストフィールドを追加
・baby agiエージェントを追加
・キャメルロールプレイのノートブック例を追加
・Harrison/postgresを追加
・Harrison/openapiプランナーを追加
変更
・runとarunをcombine_docsとacombine_docsの代わりに使用
・Harrison/docsエージェントの更新
・Graphsignalエコシステムページを更新
・google_search.ipynbのドキュメント更新
・tokenizerの注意書きをllms/getting_startedで更新
・OpenAI Embeddingsの整理
・バージョンの更新
その他
・質問応答ノートブックの修正
・Ast Python Replの修正(Chatgptの複数行コマンド用)

https://github.com/hwchase17/langchain/releases/tag/v0.0.137

v0.0.138 (2023.4.13)

追加
・bilibiliローダーを追加
・OpenAPIエージェントにPATCHとDELETEを追加
・ワークアラウンドを追加(非同期ベクターストアメソッドがない場合)
・'continue_on_failure'パラメータの修正を追加
・Zapier NLA OAuthアクセストークンを追加
・リトリーバル例をAIプラグインに追加
・出力パーサの型推論を追加
変更
・OpenAPIエージェントの詳細出力をオプションに変更
・tiktokenをPython 3.8で使用
・llamaモデル呼び出しの未設定引数を修正
・VectorStoreクラスメソッドの型指定を更新
・YoutubeLoader.from_youtube_channelの名前とドキュメントを更新
・Harrison/pineconeハイブリッドの更新
・Qdrant vectorstoreから不要なメソッドを削除し、docstringを整理
・Harrison/apply llmフラグの更新
・chatgpt_plugins.ipynbを更新
・custom_agent.ipynbを更新
・バージョン138に更新
その他
・タイプミスの修正(いくつかの箇所)
・aiohttp.client_exceptions.ClientConnectionErrorの修正
・エラーメッセージの重複単語を削除
・統合テスト用インポートの修正

https://github.com/hwchase17/langchain/releases/tag/v0.0.138

全体的な流れ

拡張性と互換性の向上: 新しいAPIのサポートや既存のAPIの改善、データローディング機能の追加などにより、プロジェクトの拡張性と互換性が向上しています。

非同期処理の強化: 非同期処理のサポートが強化されており、プロジェクトのパフォーマンスが向上し、ユーザーがより効率的にタスクを実行できるようになっています。

ユーザー体験の改善: ドキュメントや例の追加・更新により、ユーザーがプロジェクトを理解しやすくなり、使いやすさが向上しています。また、エラーメッセージやバグ修正により、ユーザーが問題に遭遇した際の対処が容易になっています。

コード品質の向上: コードの整理やリファクタリング、バグ修正が行われており、プロジェクトのメンテナンス性と安定性が向上しています。

GPT-4による考察

プルリクエストから見る傾向はこちら。

思った以上に盛りだくさん。機能は毎日たくさん追加されているけれども、実際に使ってみると「あれ?なんでこんな動きするの?」みたいな機能も少なくないので、もくもく会で手を動かしながら検証していきましょう〜。

現場からは以上です。

この記事が気に入ったらサポートをしてみませんか?