使用LangChain调用AzureOpenAI报错Resource not found,求解决方案
修复LangChain调用AzureOpenAI时的
Resource not found错误 以下是几个常见的排查和修复方向:
检查部署名称匹配度
Azure OpenAI的部署名称与代码中deployment_name参数必须完全一致(大小写敏感)。登录Azure门户,进入你的OpenAI资源,在「部署」页面确认实际的部署名称,不要直接默认使用模型名(比如你可能自定义了部署名称,而非text-davinci-003)。验证API基础地址正确性
确认OPENAI_API_BASE的格式为https://<你的资源名称>.openai.azure.com/,检查资源名称拼写是否有误,避免多字符、少字符或域名错误。更新API版本
代码中使用的2022-12-01版本较旧,可能与部分模型部署不兼容。建议更换为稳定的新版本,比如2023-05-15,确保API版本与部署的模型适配。确认API密钥与权限
检查OPENAI_API_KEY是否复制正确,可在Azure门户的「密钥和终结点」页面重新获取。同时确保运行代码的环境未被OpenAI资源的防火墙或虚拟网络规则限制访问。检查部署状态
在Azure门户的「部署」页面,确认目标模型的部署状态为「成功」,若处于创建中或失败状态,需重新完成部署。
修改后的示例代码
from langchain.llms import AzureOpenAI import os # 配置环境变量 os.environ["OPENAI_API_TYPE"] = "azure" os.environ["OPENAI_API_KEY"] = "你的API密钥" os.environ["OPENAI_API_BASE"] = "https://你的资源名称.openai.azure.com/" os.environ["OPENAI_API_VERSION"] = "2023-05-15" # 初始化AzureOpenAI,替换为实际部署名称 llm = AzureOpenAI( deployment_name="你的实际部署名称", model_name="text-davinci-003") print(llm("hi"))
内容的提问来源于stack exchange,提问作者user2467491
相关产品推荐
相关产品推荐

