You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用LangChain调用AzureOpenAI时持续触发PermissionError求助

关于AzureOpenAI+LangChain的PermissionError排查及代码检查

在使用AzureOpenAI结合LangChain开发时,反复出现PermissionError,怀疑是代理问题,但尝试添加openai_proxy参数后仍未解决,现将代码贴出请求检查:

from langchain.llms import OpenAI, AzureOpenAI
from langchain.prompts import PromptTemplate
from langchain.chains import LLMChain

llm = AzureOpenAI(openai_api_type="", openai_api_base="", deployment_name="", model_name="", openai_api_key="", openai_api_version="")

template = """
Translate the following text from {source_lang} to {dest_lang}: {source_text}
"""

prompt_name = PromptTemplate(input_variables=["source_lang", "dest_lang", "source_text"], template=template)
chain = LLMChain(llm=llm, prompt=prompt_name)

chain.predict(source_lang="English", dest_lang="Spanish", source_text="How are you?")

chain(inputs={"source_lang": "English", "dest_lang": "Spanish", "source_text": "How are you"})

代码检查要点

  • 必填参数不能为空:AzureOpenAI初始化时,openai_api_type必须设为"azure",openai_api_base需填写Azure资源的端点URL,deployment_name是Azure上部署的模型名称,model_name对应部署的模型版本,openai_api_key为资源密钥,openai_api_version要使用有效版本(如"2023-05-15"),空值会直接导致请求失败,甚至触发权限类报错。
  • 模板与调用逻辑正常:PromptTemplate的变量定义和后续调用的参数匹配,chain.predict()和chain()两种调用方式语法合法,这部分无问题。

代理及权限排查方向

  • 确认openai_proxy参数格式正确(如http://localhost:8080),且代理服务器可正常访问AzureOpenAI端点,未被防火墙或企业网络策略拦截。
  • 检查系统环境变量中的HTTP_PROXY、HTTPS_PROXY配置,LangChain可能读取全局代理设置,存在和手动配置冲突的可能。
  • 验证Azure资源权限:确认API密钥有效,资源的网络访问策略允许当前环境访问(如是否开启公网访问,或代理IP在允许列表内)。

内容的提问来源于stack exchange,提问作者Aniruddha

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.15 09:42:37