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

如何获取Python调用Azure OpenAI的API请求详情以排查部署错误?

查看Python调用Azure OpenAI的API请求详情及部署错误排查

一、获取API请求详情的方法

1. 启用OpenAI库调试日志

通过开启Python日志的DEBUG级别,直接查看OpenAI库发送的完整请求信息(包括端点、headers、请求体等)。示例代码:

import openai
import logging

# 配置日志输出DEBUG级别的内容
logging.basicConfig(level=logging.DEBUG)

openai.api_type = "azure"
openai.api_base = "<your endpoint>"
openai.api_version = "2022-12-01"
openai.api_key = "<your token>"
engine = "test-code"

codex_query = "What is OpenAI?"
response = openai.Completion.create(engine=engine, prompt=codex_query, stop="#")
print(response['choices'][0]['text'])

运行后日志会输出:

  • 完整请求URL(包含部署名、API版本)
  • 请求headers(含API密钥、Content-Type等)
  • 请求体参数(prompt、stop等)

2. 自定义请求钩子记录详情

通过修改OpenAI的请求会话,添加钩子函数单独记录请求关键信息,避免过多日志干扰:

import openai
import requests
import logging

logging.basicConfig(level=logging.INFO)

def log_request_details(request):
    logging.info(f"请求端点: {request.url}")
    logging.info(f"请求Headers: {dict(request.headers)}")
    logging.info(f"请求参数: {request.body}")
    return request

# 给OpenAI的请求会话添加钩子
openai.requestssession.hooks["request"].append(log_request_details)

# 后续配置与调用代码不变
openai.api_type = "azure"
openai.api_base = "<your endpoint>"
openai.api_version = "2022-12-01"
openai.api_key = "<your token>"
engine = "test-code"

codex_query = "What is OpenAI?"
response = openai.Completion.create(engine=engine, prompt=codex_query, stop="#")

二、排查「部署不存在」错误的关键点

对比独立脚本与开源项目的请求详情,重点核对以下内容:

  • 部署名称完全匹配:engine参数值必须和Azure OpenAI门户中创建的部署名称完全一致(区分大小写,例如部署名是Test-Code不能写成test-code)
  • 端点格式正确:api_base必须是https://<资源名称>.openai.azure.com/格式,末尾斜杠不能省略
  • API版本兼容:确认api_version与部署的模型版本兼容,部分新模型需要使用更高版本(如2023-05-15)
  • 环境变量覆盖问题:开源项目可能优先读取环境变量(如AZURE_OPENAI_DEPLOYMENT_NAME、AZURE_OPENAI_ENDPOINT),需检查这些环境变量是否覆盖了代码中的配置值
  • 资源权限验证:通过Azure门户或CLI命令az cognitiveservices account deployment show --name <资源名> --resource-group <资源组名> --deployment-name <部署名>,确认API密钥对应的资源确实包含该部署

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.16 19:43:14