スポンサーリンク

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

記事内に広告が含まれています。

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

openai.error.InvalidRequestError: The API deployment for this resource does not exist. If you created the deployment within the last 5 minutes, please wait a moment and try again.

LangChainバージョンは 0.0.268 です。

結果として、コードを修正して以下のとおりとしたところ、エラーが解消されました。

import os
from langchain.chat_models import AzureChatOpenAI
from langchain.embeddings.openai import OpenAIEmbeddings
from langchain.chains import RetrievalQA
from langchain.vectorstores import FAISS
from dotenv import load_dotenv

load_dotenv()

OPENAI_API_DEPLOY = os.getenv('OPENAI_API_DEPLOY')
OPENAI_API_DEPLOY_EMBEDDING = os.getenv('OPENAI_API_DEPLOY_EMBEDDING')
FAISS_PATH= '{path}'
MODEL_NAME = 'gpt-3.5-turbo'

embeddings = OpenAIEmbeddings(deployment=OPENAI_API_DEPLOY_EMBEDDING)
db = FAISS.load_local(FAISS_PATH, embeddings)
retriever = db.as_retriever()

llm = AzureChatOpenAI(model_name=MODEL_NAME,
                      temperature=0,
                      deployment_name=OPENAI_API_DEPLOY
                      )

chain = RetrievalQA.from_llm(llm=llm, retriever=retriever)

# 以下省略

ポイントは、デプロイを指定する変数名で、OpenAIEmbeddingsでは”deployment”、AzureChatOpenAIでは”deployment_name”である点です。どちらも”deployment_name”で指定してており、上記のエラーが発生していました。

内部的にデプロイが混同されていたようです。

スポンサーリンク
スポンサーリンク
AzureGenerative AILangChain
著者SNS
タイトルとURLをコピーしました