所有文章 > API开发 > Azure OpenAI API快速入门教程
Azure OpenAI API快速入门教程

Azure OpenAI API快速入门教程

在人工智能技术快速发展的今天,企业级AI服务正在重塑各行各业的创新范式。Azure OpenAI作为微软推出的企业级AI服务平台,将OpenAI领先的生成式AI能力与Azure云的安全合规特性完美结合,为开发者提供了开箱即用的大模型服务。本教程将带您从零开始,逐步掌握Azure OpenAI API的核心使用方法。

第一章 环境准备与资源创建

1.1 Azure账号注册与订阅

  1. 访问 Azure 门户
  2. 使用Microsoft账号登录或注册新账号
  3. 开通订阅(新用户可享受$200信用额度)

注意:部分区域需要单独申请OpenAI服务访问权限,可在Azure门户提交申请表单

1.2 创建OpenAI资源

# 使用Azure CLI快速创建资源
az cognitiveservices account create \
--name my-openai-resource \
--resource-group my-resource-group \
--kind OpenAI \
--sku S0 \
--location eastus2 \
--yes

1.3 获取API密钥与终结点

在Azure门户导航至创建的OpenAI资源

  1. 在”密钥和终结点”页面获取:
  • API密钥(两个可轮换密钥)
  • 服务终结点URL

第二章 API基础调用实践

2.1 环境配置

pip install python-dotenv openai

创建.env文件:

AZURE_OPENAI_ENDPOINT=https://your-resource.openai.azure.com
AZURE_OPENAI_KEY=your-api-key
AZURE_OPENAI_DEPLOYMENT=your-deployment-name

2.2 文本补全示例

import os
from dotenv import load_dotenv
from openai import AzureOpenAI

load_dotenv()

client = AzureOpenAI(
api_key=os.getenv("AZURE_OPENAI_KEY"),
api_version="2024-02-01",
azure_endpoint=os.getenv("AZURE_OPENAI_ENDPOINT")
)

response = client.completions.create(
model=os.getenv("AZURE_OPENAI_DEPLOYMENT"),
prompt="人工智能将改变",
temperature=0.7,
max_tokens=100
)

print(response.choices[0].text)

参数说明表:

参数类型说明推荐值
temperaturefloat生成随机性0.5-1.0
max_tokensint最大输出长度根据需求调整
top_pfloat核采样阈值0.9-1.0
frequency_penaltyfloat重复惩罚系数0.0-2.0

第三章 高级功能实战

3.1 聊天补全API

response = client.chat.completions.create(
model=os.getenv("AZURE_OPENAI_DEPLOYMENT"),
messages=[
{"role": "system", "content": "你是一位资深技术专家"},
{"role": "user", "content": "请用通俗语言解释量子计算"}
],
temperature=0.5
)

print(response.choices[0].message.content)

消息角色说明:

  • system:设定AI的行为特征
  • user:用户输入内容
  • assistant:AI的回复历史

3.2 流式响应处理

response = client.chat.completions.create(
model=os.getenv("AZURE_OPENAI_DEPLOYMENT"),
messages=[{"role": "user", "content": "讲述一个科技创业故事"}],
stream=True
)

for chunk in response:
if chunk.choices[0].delta.content:
print(chunk.choices[0].delta.content, end="")

3.3 函数调用能力

tools = [
{
"type": "function",
"function": {
"name": "get_current_weather",
"description": "获取当前天气",
"parameters": {
"type": "object",
"properties": {
"location": {"type": "string"}
}
}
}
}
]

response = client.chat.completions.create(
model=os.getenv("AZURE_OPENAI_DEPLOYMENT"),
messages=[{"role": "user", "content": "北京现在天气如何?"}],
tools=tools
)

print(response.choices[0].message.tool_calls)

第四章 企业级最佳实践

4.1 安全与合规配置

  1. 启用私有网络端点
  2. 配置数据驻留策略
  3. 设置内容过滤规则
# 启用内容过滤
response = client.chat.completions.create(
model=os.getenv("AZURE_OPENAI_DEPLOYMENT"),
messages=[...],
filter_params={
"hate": "block",
"self_harm": "alert"
}
)

4.2 性能优化技巧

  • 批量处理请求
  • 合理设置max_tokens
  • 使用异步API
  • 实施请求缓存

4.3 成本控制策略

  1. 监控使用指标
az monitor metrics list \
--resource my-openai-resource \
--metric "TotalTokens"
  1. 设置用量预警
  2. 选择合适模型层级(如gpt-35-turbo vs gpt-4)

第五章 典型应用场景

5.1 智能客服系统

def generate_response(query):
history = load_chat_history()
messages = [
{"role": "system", "content": "你是一个专业的客服助理"},
*history,
{"role": "user", "content": query}
]

response = client.chat.completions.create(
model=os.getenv("AZURE_OPENAI_DEPLOYMENT"),
messages=messages,
temperature=0.3
)

return response.choices[0].message.content

5.2 文档智能处理

def summarize_document(text):
response = client.chat.completions.create(
model=os.getenv("AZURE_OPENAI_DEPLOYMENT"),
messages=[{
"role": "user",
"content": f"请用三点总结以下文档内容:\n{text}"
}],
temperature=0.1
)
return response.choices[0].message.content

5.3 代码生成助手

def generate_python_code(requirement):
messages = [
{"role": "system", "content": "你是一个专业的Python开发助手"},
{"role": "user", "content": f"请生成满足以下需求的Python代码:{requirement}"}
]

response = client.chat.completions.create(
model=os.getenv("AZURE_OPENAI_DEPLOYMENT"),
messages=messages,
temperature=0.2
)

return extract_code(response.choices[0].message.content)

第六章 常见问题排查

6.1 认证失败问题

  • 检查API终结点格式
  • 验证密钥有效性
  • 确认Azure区域可用性

6.2 速率限制处理

from tenacity import retry, wait_exponential

@retry(wait=wait_exponential(multiplier=1, max=10))
def safe_api_call():
return client.chat.completions.create(...)

6.3 输出质量优化

  1. 改进prompt工程
  2. 调整temperature参数
  3. 使用few-shot learning
  4. 添加输出格式约束

结语:开启AI创新之旅

通过本教程,您已经掌握了Azure OpenAI API的核心使用方法和最佳实践。建议从以下方向深入探索:

  1. 集成到现有业务系统
  2. 构建定制化微调模型
  3. 开发创新型AI应用
  4. 参与Microsoft AI开发者社区

Azure OpenAI正在持续更新模型版本和功能特性,建议定期查阅官方文档获取最新信息。期待您利用这项强大的技术创造出改变世界的应用!

#你可能也喜欢这些API文章!