Skip to content

如何使用 .NET SDK 构建 Azure AI Foundry 项目

通过 Azure.AI.Projects SDK 为 .NET 开发者提供高层级客户端,实现对 AI 代理(Agents)、连接、数据集、模型部署及评估指标的统一管理和快速调用。

为什么需要这个技能

在构建企业级 AI 应用时,开发者需要管理复杂的资源生态,包括模型部署、向量索引、数据集版本以及具备工具调用能力的 AI Agent。如果通过原始 REST API 操作,开发成本极高且难以维护。

Azure.AI.Projects SDK 将这些操作封装为面向对象的 C# 客户端,让开发者能够以强类型的方式在 .NET 环境中快速编排 AI 工作流,无需手动处理复杂的 HTTP 请求和认证细节。

适用场景

  • AI Agent 开发:创建能够执行 Python 代码、搜索 Web 或调用自定义函数的持久化代理。
  • RAG 管道构建:管理 Azure AI Search 索引并上传训练/测试数据集。
  • 模型生命周期管理:在代码中动态查询、切换不同的模型部署版本。
  • 自动化评估:通过 SDK 定义评估配置并运行模型性能量化测试。

核心工作流

1. 环境准备与认证

首先安装核心包并配置环境变量(如 PROJECT_ENDPOINT)。使用 DefaultAzureCredential 实现无密钥的安全认证。

csharp
using Azure.Identity;
using Azure.AI.Projects;

var endpoint = Environment.GetEnvironmentVariable("PROJECT_ENDPOINT");
AIProjectClient projectClient = new AIProjectClient(
    new Uri(endpoint), 
    new DefaultAzureCredential());

2. 创建与运行 AI Agent

通过 PersistentAgentsClient 实现一个简单的数学辅导代理,并创建会话线程进行交互。

csharp
PersistentAgentsClient agentsClient = projectClient.GetPersistentAgentsClient();

// 创建 Agent
PersistentAgent agent = await agentsClient.Administration.CreateAgentAsync(
    model: "gpt-4o-mini",
    name: "Math Tutor",
    instructions: "You are a personal math tutor.");

// 创建线程并发送消息
PersistentAgentThread thread = await agentsClient.Threads.CreateThreadAsync();
await agentsClient.Messages.CreateMessageAsync(thread.Id, MessageRole.User, "Solve 3x + 11 = 14");
ThreadRun run = await agentsClient.Runs.CreateRunAsync(thread.Id, agent.Id);

// 轮询直到运行完成
while (run.Status == RunStatus.Queued || run.Status == RunStatus.InProgress)
{
    await Task.Delay(500);
    run = await agentsClient.Runs.GetRunAsync(thread.Id, run.Id);
}

3. 资源管理(连接与索引)

SDK 提供了统一的客户端体系来管理项目资源:

  • Connections:管理对外部数据源或服务的连接。
  • Datasets:支持通过 UploadFileUploadFolder 上传训练数据。
  • Indexes:通过 Indexes.CreateOrUpdate 快速创建 Azure AI Search 索引。

下载和安装

下载 azure-ai-projects-dotnet 中文版 Skill ZIP

解压后将目录放入你的 AI 工具 skills 文件夹,重启工具后即可使用。具体路径参考内附的 USAGE.zh.md

你可能还需要

暂无推荐