使用Azure OpenAI服务创建聊天机器人

创建聊天机器人步骤:

1、开通 Azure OpenAI 服务

在 Azure 国际版注册账号。注册后创建OpenAI 服务。申请提交后需要等待审核,审核通过后就可以对接接口了。

2、创建 Azure OpenAI 服务

当你的申请通过后,就可以到 Azure 上创建 OpenAI 服务了。点击“创建资源”,搜索找到“OpenAI”。

服务创建好以后,还要部署一个 ChatGPT 模型。在你创建好的 OpenAI 服务中,依次点击“模型部署”-“创建”,在弹出的对话框中填写模型名称,选择gpt-35-turbo模型。

再到“密钥和终点”复制保存 API 要用的密钥和终结点。

3、创建 Console 聊天应用程序

安装“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));
}

4、程序运行截图

使用Azure OpenAI服务创建聊天机器人_第1张图片

你可能感兴趣的:(AI,azure,chatgpt,机器人)