用 C# 建立一个 Console App 并成功发出第一个 AI 请求。

一.准备工作:

1.大模型(智谱)的API Key

登录:智谱AI开放平台→控制台→左侧API Key→使用或者添加API Key

注:如果没有API Key的选项,需要进行实名认证。

2..NET开发环境

.NET 8.0 SDK 或更高版本

二.创建应用

使用VS Code进行创建

1.创建控制台应用并安装软件包

a.创建一个文件夹NETConsole

b.使用VS Code 打开

c.新建终端依次输入命令

①创建控制台应用程序

dotnet new console -o ExtensionsAI

②进入文件

cd ExtensionsAI

③安装所需的软件包

dotnet add package OpenAI
dotnet add package Microsoft.Extensions.AI.OpenAI --prerelease
dotnet add package Microsoft.Extensions.Configuration
dotnet add package Microsoft.Extensions.Configuration.UserSecrets
2.编写Program.cs
using Microsoft.Extensions.AI;
using Microsoft.Extensions.Configuration;
using OpenAI;
using System.ClientModel;
using System.ClientModel.Primitives;
//读取模型与连接
string? model = "glm-4-flash";
string? key = "****************************************";

//1. 自定义 HttpClient
var proxyHttpClient = new HttpClient
{
    Timeout = TimeSpan.FromSeconds(60) // 拉长超时避免弱网超时
};

//2. 构造 OpenAIClientOptions,指定中转 Endpoint + 自定义 Transport
var clientOptions = new OpenAIClientOptions
{
    Endpoint = new Uri("https://open.bigmodel.cn/api/paas/v4"),
    Transport = new HttpClientPipelineTransport(proxyHttpClient)
};

//3. 正确构造客户端:凭证 + Options
ApiKeyCredential apiCred = new ApiKeyCredential(key!);
OpenAIClient openAiClient = new OpenAIClient(apiCred, clientOptions);
IChatClient client = openAiClient.GetChatClient(model!).AsIChatClient();

//读取 benefits.md 文件的内容,然后为模型创建一个提示。这个提示会指示模型用 20 个词或更少的词来总结文件的文本内容
string text = File.ReadAllText("benefits.md");
string prompt = $"""
    用20个字或更少的字概括以下文本:
    {text}
    """;

// 调用 GetResponseAsync 方法,将提示信息发送给模型以生成响应
ChatResponse response = await client.GetResponseAsync(
    prompt,
    new ChatOptions { MaxOutputTokens = 400 });
Console.WriteLine(response);
3.运行程序查看效果

可以尝试修改Program.cs中,prompt里的提示词加上[中文]查看终端输出的效果。或者替换读取的文件。

Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐