LangChainでAzure OpenAI Serviceのモデルを使おうとしてちょっと手こずったのでメモ
LangChainを触ってみようとして
Quickstart | 🦜️🔗 LangChain
から初めてみて、OpenAI版とかはあるのですが、Azure版は書かれてないです
AzureChatOpenAI | 🦜️🔗 LangChain
を見てまず、Chatのサンプルを動かしてみました
import os
os.environ["AZURE_OPENAI_API_KEY"] = "..."
os.environ["AZURE_OPENAI_ENDPOINT"] = "https://<your-endpoint>.openai.azure.com/"
os.environ["AZURE_OPENAI_API_VERSION"] = "2023-06-01-preview"
os.environ["AZURE_OPENAI_CHAT_DEPLOYMENT_NAME"] = "chat"
AZURE_OPENAI_API_KEYとAZURE_OPENAI_ENDPOINT: Azure OpenAI の Keys and Endpointで確認
AZURE_OPENAI_API_VERSION: Azure OpenAI Service の REST API リファレンス - Azure OpenAI | Microsoft Learn にサポートされているバージョン
AZURE_OPENAI_CHAT_DEPLOYMENT_NAME: LLMのモデルをデプロイするとき自分が指定したデプロイ名
from langchain_core.messages import HumanMessage
from langchain_openai import AzureChatOpenAI
model = AzureChatOpenAI(
azure_deployment=os.environ["AZURE_OPENAI_CHAT_DEPLOYMENT_NAME"],
api_version=os.environ["AZURE_OPENAI_API_VERSION"],
)
ドキュメントでは openai_api_version
でしたが、api_version
が正しそうです
message = HumanMessage(content="Tell me a joke")
print(model.invoke([message]).content)
これでLLMの返答が確認できます
チュートリアルやるかで動かないと時間がとられますね
公式ドキュメントが古いのか確認してPR送ったりしたいところです
PR
このリンクは、アフィリエイトリンクです