AIで稼ぐ教科書

ChatGPT, Stable Diffusion, Visual Studio, Excelなど教科書

Langchainの使い方(ChatGPT, Gemini)

langchainテスト用のメモです。

Langchainとは?

LangChain完全入門 生成AIアプリケーション開発がはかどる大規模言語モデルの操り方

Langchainは複数のLLM=いわゆるChatGPTなどのそれぞれの言語モデルをハンドリングできるプラットフォームです。

 

ブラウザやアプリでChatGPTにしろgeminiを使うと、文字数などの制限で一度生成が止まってしまいます。

 

Langchainはその辺の処理をオートにできるかなと思って試すことにしました。

 

メリットは?

メリットを整理すると

・複数LLMが利用可能

・拡張性、カスタマイズ性

・「PDF、CSV、PowerPoint、Word、HTML、Markdown、Email、URL」な度の読み込み

・複数のプロンプト

・メモリ機能

LangChainの概要と使い方|サクッと始めるプロンプトエンジニアリング【LangChain / ChatGPT】 (zenn.dev)

 

簡単な質問であればオンラインのChatGPTやGeminiでいいのですが、複数のプロンプトにまたがったり、ネットファイルを読んだりするにはLangChainから実装した方がよさそうです。

 

デメリットは?

Pythonで扱うのでPythonの処理をできる必要があります。

 

 

Langchainの使い方

Pythonで稼働の確認をしました。

 

Langchain+ChatGPTで使う

インストールは、

!pip install openai==1.13.3
!pip install langchain==0.1.11
!pip install langchain-openai==0.0.8

 

以下ページのチャットサンプルがうちでは稼働しました。

LangChainの概要と使い方|サクッと始めるプロンプトエンジニアリング【LangChain / ChatGPT】 (zenn.dev)

 

 

Langchain+Gemiiで使う

インストールは、

pip install -U --quiet langchain-google-genai pillow

 

以下のチャット、画像読み込みサンプルがうちでは無事稼働できました。

LangChainでGeminiを触ってみる #Python - Qiita

 

ただ画像はファイル指定だけではうまくいかず、b64encodeを経由した方が認識されました。

 

ネットの情報を取得する

最初のこちらで検索エンジンを作りIDを入手。

また「プログラマティックなアクセス」「Custom Search JSON API」の「開始する」を実行し、グーグルサーチのAPIキーも作っておきましょう。

Programmable Search - すべての検索エンジン (google.com)

 

次に以下のソースを実行します。

import os
os.environ["OPENAI_API_KEY"] = "**********"
os.environ["GOOGLE_CSE_ID"] = "**********"
os.environ["GOOGLE_API_KEY"] = "**********"


from langchain.agents import initialize_agent, load_tools
from langchain.chat_models import ChatOpenAI

# 言語モデルの設定
llm = ChatOpenAI(model="gpt-3.5-turbo", temperature=0)

# 使用するツールの設定
tool_names = ["google-search"]
tools = load_tools(tool_names, llm=llm)

# エージェントの初期化
agent = initialize_agent(
    tools, llm, agent="zero-shot-react-description", verbose=True
)

# 質問の実行
response = agent.invoke("現在の日本の総理大臣は誰ですか?")
print(response)

 

 

プログラムはこちらを参考にしました。

LangChainによる「ウェブ検索機能を搭載する方法」(Google API) (zenn.dev)

が、書き方は「langchain.agents」などを使うようになっているのでそのあたりを修正して使いました。

 

Googleカスタム検索は無料版は、1日に100クエリまで利用できます。

このブログは、ネットや書籍上の情報、個人の体験や感想を中心にまとめたものです。 正確性を期していはいますが、間違い・誤訳等あるかもしれません。 当サイトの情報によって生じたいかなる損失について一切の責任を負わないものとします. あらかじめご了承ください。

プライバシーポリシー |〇利用規約 |〇問い合わせ