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

在Cloud Functions中调用Azure OpenAI遇多类错误,请求排查

问题排查与解决方案

1. 旧版本API错误openai.lib._old_api.APIRemovedInV1

该错误是因为使用了OpenAI Python SDK v1.0之前的废弃写法,全局配置openai.api_type、openai.api_base等方式已被移除,必须切换到v1版本的AzureOpenAI客户端初始化方式,你当前的方向是正确的。

2. 凭证缺失与Endpoint配置错误

你遇到的Missing credentials和Must provide base_url or azure_endpoint错误,核心问题集中在环境变量配置和代码细节上:

核心修复点:

  • 导入os模块:代码中使用了os.getenv()但未导入os,会直接引发报错,必须在代码开头添加:
    import os
    
  • 确认GCP Cloud Functions环境变量配置:
    登录GCP控制台进入你的Cloud Functions详情页,在“环境变量”标签下添加AZURE_OPENAI_API_KEY和AZURE_OPENAI_ENDPOINT,确保值与Azure OpenAI控制台一致(AZURE_OPENAI_ENDPOINT需填完整URL,比如https://your-resource.openai.azure.com/)。
    禁止直接将环境变量名作为字符串传入(如api_key="AZURE_OPENAI_API_KEY"),必须用os.getenv("AZURE_OPENAI_API_KEY")读取云端配置的环境变量。
  • 验证环境变量有效性:可临时添加打印语句测试(上线前删除),查看GCP函数日志确认值正确输出:
    print(os.getenv("AZURE_OPENAI_API_KEY"))
    print(os.getenv("AZURE_OPENAI_ENDPOINT"))
    

3. 其他代码细节问题

  • 空prompt_:空字符串会导致Azure OpenAI返回无效结果,需填充符合需求的提示词,示例:
    prompt_ = f"针对{country}地区{year}年{month}月的{column_name}数据,当前值{current_value},上月值{previous_value},生成一段分析评论。"
    
  • 旧版本返回值错误:旧代码中response['choices'][0]['message']['content']写法错误,Completion接口返回无message字段,正确写法应为response['choices'][0]['text'];新版本用response.choices[0].text是正确的。

修复后的完整示例代码

import os
from azure_openai import AzureOpenAI

def generate_comment(month, year, country, column_name, current_value, previous_value):
    prompt_ = f"分析{country}地区{year}年{month}月的{column_name}数据:当前值{current_value},上月值{previous_value},生成一段简洁的评论。"
    
    client = AzureOpenAI(
        api_key=os.getenv("AZURE_OPENAI_API_KEY"),
        api_version="2023-09-15-preview",
        azure_endpoint=os.getenv("AZURE_OPENAI_ENDPOINT")
    )
    
    response = client.completions.create(
        model="MODEL_NAME",  # 替换为你的Azure OpenAI部署名称
        prompt=prompt_,
        max_tokens=50,
        temperature=0.35
    )
    return response.choices[0].text.strip()

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.20 20:27:06