LangChain

Generative AI

【LangChain】バージョン依存関係でPython仮想環境にインストールできない

日々アップデートが高速で実施されていくLangChainです。 Windows環境で開発を行い、requirements.txtを用いてLinuxの仮想環境にライブラリをインストールしようとしたら、LangChainに関係するライブラリのバ...
ChatGPT

【LangChain】FAISSのフィルタを利用した検索拡張生成(RAG)

独自の前提知識を与えた上でのGPTの回答生成のため、LangChainのRetrievalQAを使用しています。VectorStoreとしてFAISSを使用するときに、FAISSのデータにフィルタをかける方法を記載しておきます。 RAG 今...
LangChain

【LangChain】LCELを使用したChain実装

LangChainを使ったプログラム作成をしておりますが、LCEL(LangChain Expression Language)を使っていなかったため、試しに実装してみました。 from langchain.chat_models impo...
LangChain

【LangChain】DALL・Eが生成した画像を出力するStreamlitアプリ

LangChain、OpenAIのDALL・E APIを使用して、DALL・Eが生成したStreamlitアプリケーションを作成してみました。 以下、Pythonのコードです。 OpenAIのAPIキーは環境変数に登録してあります。Pyth...
ChatGPT

【LangChain】Yahoo Finance NewsとWikipediaから企業情報を取得するAgent

LangChainのToolsにYahoo Finance Newsが追加されていたので使ってみました。 コード ToolsにGoogle Search、Wikipedia、Yahoo Finance Newsを設定し、Agentを作成しま...
Azure

【Azure OpenAI Service】LangChainのRetrievalQAでエラー openai.error.InvalidRequestError

Azure OpenAI Serviceのgpt-3.5-turboとLangChainのRetrievalQAを使ってチャットBOTを作成しようとしたところ、以下のエラーが発生しました。 openai.error.InvalidReque...
Generative AI

【LangChain】StreamlitでGPTのストリーミング応答を実装

Streamlit、LangChain(OpenAI API)で、ChatGPTのようなストリーミング応答を実装するためのコードをメモしておきます。 LangChain 0.0.260で動作確認しました。 from langchain.ch...
Generative AI

【LangChain】ChromaDBのベクトル検索にフィルタをかける方法

LangChainを使用して、LLMにベクトルデータを読み込ませて色々作っています。 ChromaDBのベクトル検索に、フィルタをかける方法を記載します。 データ準備 以下のCSVファイルを作成しました。推理小説のレビューデータを想定してお...
ChatGPT

【LangChain】CSVLoaderでCSVファイルの項目をmetadataとして設定できるようにする

ChatGPTに外部データをもとにした回答生成させるために、ベクトルデータベースを作成していました。CSVファイルのある列をベクトル化し、ある列をメタデータ(metadata)に設定したかったのですが、CSVLoaderクラスのload関数...