当前位置: 欣欣网 > 码农

使用 .NET 开发 AI 应用(1):踏上旅程

2024-06-07码农

在开启使用 .NET 开发 AI 应用的旅程之前,准备好.NET 开发环境是至关重要的。而安装 Visual Studio 2022 只是第一步,真正的挑战在于如何有效地集成强大的大型语言模型(LLM)。

本系列教程将指导你如何利用广受欢迎的 OpenAI 大型语言模型进行开发。鉴于直接访问 OpenAI 的 API 服务可能受到限制,我们将转而利用微软云的 Azure OpenAI 服务,这是一个可靠的替代方案,提供对 OpenAI 模型的访问。

Azure OpenAI 服务为开发者们提供了一系列 REST API,通过这些 API,你可以轻松接入 OpenAI 的尖端语言模型,如 GPT-4、GPT-3.5-Turbo 和嵌入式模型等。这些 API 是由 Azure OpenAI 与 OpenAI 共同开发的,确保了与 OpenAI 服务的高度兼容性。

但是在使用大语言模型之前,Azure OpenAI 要求你部署相关资源以激活服务。

创建 Azure OpenAI 服务

首先,你需要在 Azure 官网上注册并登录你的账户。

然后,在 Azure 门户中搜索 OpenAI 并进入其服务页面,点击「创建」按钮开始创建服务。

按照屏幕上的指示填写必要的信息,完成后点击「创建」,你的 Azure OpenAI 服务就会被成功创建。

接下来,部署大型语言模型是关键的一步。在服务页面的「资源管理->模型部署」区域,你可以管理现有部署或创建新的部署。

点击「新建部署」,从多个 OpenAI 基础模型中选择一个,例如「gpt-3.5-turbo-16k」。你还需要为你的部署指定一个名称,这个名称将在后续的开发过程中被使用。

为了在代码中使用已部署的模型,你还需要获取密钥和终结点信息。这些信息可以在 Azure OpenAI 服务页面的「密钥和终结点」区域找到并复制。

出于安全和便利的考虑,建议你将这些信息配置到环境变量中,这样可以避免在代码中重复输入这些信息。

Hello AI

最后,让我们创建一个简单的控制台应用程序来测试你的大型语言模型。

通过 Visual Studio 2022 创建一个新的应用程序,并使用 Nuget 包管理器添加 Azure OpenAI 客户端库。

然后编写如下代码:

string endpoint = Environment.GetEnvironmentVariable("AZURE_OPENAI_ENDPOINT");
string deploymentName = Environment.GetEnvironmentVariable("AZURE_OPENAI_GPT_NAME");
string apiKey = Environment.GetEnvironmentVariable("AZURE_OPENAI_API_KEY");
var openAIClient = new OpenAIClient(new Uri(endpoint), new AzureKeyCredential(apiKey));
var completionOptions = new ChatCompletionsOptions
{
DeploymentName = deploymentName
};
completionOptions.Messages.Add(new ChatRequestUserMessage("你好!"));
ChatCompletions response = await openAIClient.GetChatCompletionsAsync(completionOptions);
ChatResponseMessage assistantResponse = response.Choices[0].Message;
Console.WriteLine($"{assistantResponse.Content}");


运行你的程序,你将看到 AI 发出的问候:

结论

祝贺你,你已经成功迈出了使用 .NET 开发 AI 应用的第一步。