0Pricing
Azure Fundamentals · 课时

Azure OpenAI Service

在 Azure OpenAI Service 中部署 GPT 模型,从脚本调用补全应用程序接口,并理解负责任人工智能原则和内容筛选选项。

Azure OpenAI Service 是 CoddyKit 上的免费 Azure Fundamentals 课时。 这是第 4 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Azure Fundamentals 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Azure Fundamentals 课程共包含 4 节课。

什么是 Azure OpenAI Service?

Azure OpenAI Service通过 Microsoft 的 Azure 云基础结构提供对 OpenAI 大型语言模型的访问,包括 GPT-4、GPT-3.5-turbo、DALL-E 和 Embeddings 模型。与直接使用 OpenAI API 不同,Azure OpenAI 提供企业级功能:通过 VNet/Private Link 实现的专用网络、Microsoft 的合规认证(ISO 27001、SOC 2、GDPR)、内容筛选、客户数据隐私保护(您的数据不会用于训练 OpenAI 的基础模型),以及与 Azure RBAC 和监视功能的集成。

请求访问权限并部署模型

Azure OpenAI 要求使用已获批准的订阅——访问权限受到限制,必须通过表单提出请求。获得批准后,您需要创建 Azure OpenAI 资源,然后在其中创建一个部署。部署会将模型(例如 gpt-4)绑定到部署名称(例如 my-gpt4)和令牌配额(每分钟令牌数上限)。调用 API 时应使用部署名称,而不是基础模型名称。同一资源中可以共存使用不同模型或配额的多个部署。

# Create an Azure OpenAI resource
az cognitiveservices account create \
  --name myOpenAI \
  --resource-group myRG \
  --kind OpenAI \
  --sku S0 \
  --location eastus

# Create a deployment
az cognitiveservices account deployment create \
  --name myOpenAI \
  --resource-group myRG \
  --deployment-name my-gpt4 \
  --model-name gpt-4 \
  --model-version '0613' \
  --model-format OpenAI \
  --sku-name Standard \
  --sku-capacity 10

聊天补全 API

聊天补全 API(/openai/deployments/{deployment}/chat/completions)接受包含角色(system、user、assistant)的消息列表,并返回模型的响应。system消息用于设置模型的行为和角色。user消息包含提示或问题。对话之前的轮次会包含在消息数组中,以便模型在多轮对话中保持上下文。温度(0–2)用于控制响应的随机性。

# Chat completion API call
curl -X POST 'https://myOpenAI.openai.azure.com/openai/deployments/my-gpt4/chat/completions?api-version=2024-02-01' \
  -H 'api-key: <key>' \
  -H 'Content-Type: application/json' \
  -d '{
    "messages": [
      {"role": "system", "content": "You are a helpful Azure expert."},
      {"role": "user", "content": "Explain what a Recovery Services vault is."}
    ],
    "temperature": 0.7,
    "max_tokens": 500
  }'

提示工程基础

提示工程是设计有效输入消息、以便从语言模型获得最佳结果的实践。关键技术包括:系统提示——为模型指定清晰的角色和约束;少样本示例——向模型展示 2–5 个所需输入输出格式的示例;思维链——要求模型在给出最终答案前逐步思考;约束——明确指示模型应采用的格式、长度以及需要避免的内容。优质提示可以减少幻觉并提高一致性。

用于语义搜索的嵌入

嵌入会将文本转换为能够捕捉语义含义的稠密数值向量。含义相近的两段文本在向量空间中的向量也会彼此接近(通过余弦相似度衡量)。Azure OpenAI 嵌入终结点(/embeddings)使用 text-embedding-ada-002 模型生成 1,536 维向量。您可以使用嵌入构建语义搜索(查找与查询相似的文档)、RAG(检索增强生成)和推荐系统。

# Get an embedding vector for a piece of text
curl -X POST 'https://myOpenAI.openai.azure.com/openai/deployments/my-embedding/embeddings?api-version=2024-02-01' \
  -H 'api-key: <key>' \
  -H 'Content-Type: application/json' \
  -d '{
    "input": "Azure Site Recovery replicates VMs to a secondary region."
  }'

内容筛选

Azure OpenAI 包含多层内容筛选系统,会同时处理提示(输入)和补全(输出)。它可以检测并阻止四类内容:仇恨、色情、暴力和自残。每个类别都有三个严重程度级别(低、中、高),您可以分别配置各类别的筛选阈值。系统也会筛选提示注入尝试(试图覆盖系统提示的越狱攻击)。默认情况下会启用内容筛选,并且除非提供用例说明,大多数模型都无法禁用该功能。

检索增强生成(RAG)

RAG会让语言模型基于您自己的数据生成响应,而不是完全依赖模型的训练知识。其流程如下:(1)将文档编入向量存储(例如 Azure AI Search);(2)用户提出问题时,将问题转换为嵌入,并在向量存储中搜索相关文档片段;(3)将这些片段作为上下文加入系统提示;(4)模型根据提供的上下文回答问题。RAG 可以减少幻觉,并让 LLM 无需微调即可回答有关私有数据和最新数据的问题。

微调与 RAG

有两种方法可以使用自定义数据扩展模型的能力。微调会使用您的示例训练新的模型版本,将相关知识融入模型权重中——这最适合教会模型特定的风格、格式或难以通过提示描述的行为。RAG会在推理时检索相关信息,并将其提供到上下文中——对于经常变化的大型知识库,这种方式更合适,因为您只需更新向量索引,而不必重新训练模型。对于大多数企业用例,由于成本更低且迭代速度更快,通常首选 RAG。

Azure AI Studio(AI Foundry)

Azure AI Studio(正在重新命名为 Azure AI Foundry)是一个用于在 Azure 上构建生成式 AI 应用程序的统一门户。它提供用于交互式测试模型补全的试验场、用于根据真实数据集评估模型质量的工具、用于构建和部署 RAG 管道并将其作为 REST API 发布的提示流设计器,以及与 GitHub 和 VS Code 的集成,以支持开发人员工作流。Azure AI Studio 简化了从模型部署到生产环境 AI 应用程序的整个过程。

令牌定价与配额管理

Azure OpenAI 按处理的1,000 个令牌计费——一个令牌大约相当于 4 个字符或 0.75 个单词。输入(提示)令牌和输出(补全)令牌都会计费。GPT-4 的每个令牌成本明显高于 GPT-3.5-turbo。每个部署都有一个每分钟令牌数 (TPM) 配额,用于限制吞吐量以防止滥用。如果您的应用程序超出配额,API 将返回 429 TooManyRequests。您可以申请提高配额,或在客户端实现指数退避和重试逻辑。

生成式 AI 的负责任 AI

Microsoft 针对生成式 AI 具体应用其负责任 AI 原则。基于事实——响应应基于可验证的信息(RAG 有助于实现这一点)。透明度——用户应知道自己正在与 AI 交互。防止伤害——内容筛选器会阻止有害输出。隐私——您在 Azure OpenAI 中的数据不会用于训练 OpenAI 的全球模型。在 Azure OpenAI 上构建的应用程序必须进行用例风险评估,并按照 Microsoft 可接受使用策略的要求,针对已识别的危害实施缓解措施。

快速检查

请测试您对本课中 Microsoft Azure Fundamentals (AZ-900) 概念的理解。

课程回顾

在本课中,您学习了以下内容:Azure OpenAI Service 提供对 GPT-4 及其他模型的企业级访问,并具备专用网络和合规性功能;聊天补全 API 使用系统、用户和助手消息角色来支持多轮对话;嵌入和 RAG 将模型响应基于您的私有数据,从而减少幻觉。接下来,我们将学习 Azure Arc,了解如何通过 Azure 控制平面管理混合环境和本地资源。

常见问题解答

「Azure OpenAI Service」课时是免费的吗?

是的 — 「Azure OpenAI Service」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Azure Fundamentals 课程的其余内容,请升级到 CoddyKit PRO。 Azure Fundamentals 课程共包含 4 节课。

「Azure OpenAI Service」这节课中我会学到什么?

在 Azure OpenAI Service 中部署 GPT 模型,从脚本调用补全应用程序接口,并理解负责任人工智能原则和内容筛选选项。 你通过在浏览器中直接运行的动手代码来练习 Azure Fundamentals,全天候 AI 导师会在你学习这节课的过程中回答你的问题。

学习 Azure Fundamentals 需要有经验吗?

无需任何先前经验。CoddyKit 上的 Azure Fundamentals 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 4 节课,共 4 节。

「Azure OpenAI Service」课时需要多长时间?

大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。

我能在这节 Azure Fundamentals 课中编写并运行代码吗?

能。每节 Azure Fundamentals 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。

此课程中的所有课时

  1. Azure 认知服务概览
  2. 实际使用语言和视觉 API
  3. Azure 机器学习工作室
  4. Azure OpenAI Service
← 返回 Azure Fundamentals