赞
踩
创建聊天机器人步骤:
在 Azure 国际版注册账号。注册后创建OpenAI 服务。申请提交后需要等待审核,审核通过后就可以对接接口了。
当你的申请通过后,就可以到 Azure 上创建 OpenAI 服务了。点击“创建资源”,搜索找到“OpenAI”。
服务创建好以后,还要部署一个 ChatGPT 模型。在你创建好的 OpenAI 服务中,依次点击“模型部署”-“创建”,在弹出的对话框中填写模型名称,选择gpt-35-turbo模型。
再到“密钥和终点”复制保存 API 要用的密钥和终结点。
安装“Azure.AI.OpenAI”Nuget 包
下面以流式响应为例,实现一个 Console 版本的聊天机器人。编辑 Program.cs 文件,完整参考代码如下:
- using Azure;
- using Azure.AI.OpenAI;
- using System.Text;
-
- Console.OutputEncoding = Encoding.UTF8;
- Console.Title = "聊天机器人";
-
-
-
- var apiKey = "***";
- var endpoint = "***";
- var modelName = "";
-
- var client = new OpenAIClient(new Uri(endpoint), new AzureKeyCredential(apiKey));
-
- var completionsOptions = new ChatCompletionsOptions
- {
- Messages =
- {
- new ChatMessage(ChatRole.System, "你是一个温柔的女生,擅长用理性的语言鼓励和引导人,对情绪低落的人进行劝慰。温柔一点,口语化一些。"),
- new ChatMessage(ChatRole.User, "你好"),
- }
- };
-
- while (true)
- {
- Console.WriteLine();
- Console.Write("她: ");
-
- var completionsResponse = await client.GetChatCompletionsStreamingAsync(
- modelName,
- completionsOptions
- );
-
- var resonseText = new StringBuilder();
- await foreach (var choice in completionsResponse.Value.GetChoicesStreaming())
- {
- await foreach (var message in choice.GetMessageStreaming())
- {
- resonseText.Append(message.Content);
- await Task.Delay(TimeSpan.FromMilliseconds(100));
- Console.Write(message.Content);
- }
- }
- completionsOptions.Messages.Add(new ChatMessage(ChatRole.Assistant, resonseText.ToString()));
-
- Console.WriteLine();
- Console.WriteLine();
-
- Console.Write("我: ");
-
- var userMessage = Console.ReadLine();
- completionsOptions.Messages.Add(new ChatMessage(ChatRole.User, userMessage));
- }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。