当前位置:首页 > 网站源码 > 正文内容

微信聊天满屏特效代码大全(微信聊天屏幕特效代码)

网站源码1年前 (2023-09-06)255

前言

由于众所周知的原 因,国内是没法直接调用 OpenAI 接口的。幸好可以白嫖 Cloudfare Workers、Vercel 等免费服务做 API 代理,我之前一直是这么用的,速度也还可以。前两天申请的微软的 Azure OpenAI 接口通过了,立即体验了一下。

它的流式响应速度比用 Cloudfare Worders 代理 OpenAI 官方接口快多了。你可以在我的这个小程序上体验一番EazAI智能助手。

下面我将演示如何开通 Azure OpenAI 服务,以及如何使用 C# 调用 Azure OpenAI 接口创建一个 Console 应用程序并实现聊天机器人功能。

一、开通 Azure OpenAI 服务

要开通 Azure OpenAI 服务,前提是你得有一个国际信用卡(比如 Visa 或 MasterCard),然后在 Azure 国际版(azure.com)注册一个账号。如果你不是微软 MVP,最好用公司邮箱注册,否则无法申请开通 OpenAI 服务。

第一次注册并成功绑卡后,还有200美金的免费额度哦。完成账号注册和绑卡后,在"创建资源"里找到 OpenAI 服务,根据提示点击下面这个链接填写申请表单:

或者直接访问这个链接:

https://aka.ms/oai/access

表单说明了 Azure OpenAI 服务目前只对企业或 MVP 开放,所以如果你不是 MVP 需要用公司的邮箱申请,个人 Gmail 或 Outlook 等邮箱都会被直接拒绝。

展开全文

表单中涉及到公司信息部分,最好如实填写,不然也很可能被拒。填写完提交后,一般两个工作日内就会收到邮件通知。

二、创建 Azure OpenAI 服务

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

点击进入,填写这一页的信息:

然后一直下一步就可以完成创建了。服务创建好以后,还要部署一个 ChatGPT 模型。在你创建好的 OpenAI 服务中,依次点击"模型部署"-"创建",在弹出的对话框中填写模型名称,选择 gpt-35-turbo模型:

再到"密钥和终点"复制保存 API 要用的密钥和终结点:

三、创建 Console 聊天应用程序

使用.NET 的 CLI 命令行工具或通过 IDE 创建一个 Console 应用程序:

dotnet newconsole -o ChatConsole cd ChatConsole

安装两个需要用到的 Nuget 包:

dotnet addpackage Microsoft.Extensions.Configuration.UserSecrets

dotnet addpackage Azure.AI.OpenAI --prerelease

第一个包是用来管理本地密钥的,请不要直接在代码中填写密码。第二个包是 Azure 官方的 OpenAI API 库,目前只有预览版。安装好后,通过 user-secrets添加好下面三个配置,分别是上面创建好的终结点、密钥和模型名称:

dotnet user-secrets init

dotnet user-secrets setAzure:OpenAI:Endpoint [YOUR_AZURE_OPENAI_ENDPOINT]

dotnet user-secrets setAzure:OpenAI:ApiKey [YOUR_AZURE_OPENAI_APIKEY]

dotnet user-secrets setAzure:OpenAI:ModelName [YOUR_MODEL_DEPLOYMENT]

实现聊天功能有两种方式。一种是非流式响应,即一次性返回所有文字;另一种是流式响应,即一个字或几个字地返回,是最常用的方式。流式响应的好处是第一时间响应用户请求,在用户阅读的同时逐渐响应后面的内容,体验更佳。这两种方式的实现,请参考 Azure OpenAI API 文档:

https://learn.microsoft.com/en-us/azure/cognitive-services/openai/chatgpt-quickstart

下面以流式响应为例,实现一个 Console 版本的聊天机器人。编辑 Program.cs文件,完整参考代码如下:

usingAzure;

usingAzure.AI.OpenAI;

usingMicrosoft.Extensions.Configuration;

usingSystem.Text;

Console.OutputEncoding = Encoding.UTF8;

微信聊天满屏特效代码大全(微信聊天屏幕特效代码)

varconfiguration = newConfigurationBuilder

.AddUserSecrets<Program>

.Build;

varapiKey = configuration["Azure:OpenAI:ApiKey"];

varendpoint = configuration["Azure:OpenAI:Endpoint"];

varmodelName = configuration["Azure:OpenAI:ModelName"];

varclient = newOpenAIClient(newUri(endpoint), newAzureKeyCredential(apiKey));

varcompletionsOptions = newChatCompletionsOptions

{

Messages =

{

newChatMessage(ChatRole.System, "你是一个温柔的女生,擅长用理性的语言鼓励和引导人,对情绪低落的人进行劝慰。温柔一点,口语化一些。"),

newChatMessage(ChatRole.User, "你好"),

}

};

while(true)

{

Console.WriteLine;

Console.Write("她: ");

varcompletionsResponse = awaitclient.GetChatCompletionsStreamingAsync(

modelName,

completionsOptions

);

varresonseText = newStringBuilder;

awaitforeach(varchoice incompletionsResponse.Value.GetChoicesStreaming)

{

awaitforeach(varmessage inchoice.GetMessageStreaming)

{

resonseText.Append(message.Content);

Console.Write(message.Content);

awaitTask.Delay(TimeSpan.FromMilliseconds(100));

}

}

completionsOptions.Messages.Add(newChatMessage(ChatRole.Assistant, resonseText.ToString));

Console.WriteLine;

Console.WriteLine;

Console.Write("我: ");

varuserMessage = Console.ReadLine;

completionsOptions.Messages.Add(newChatMessage(ChatRole.User, userMessage));

}

由于 Azure OpenAI 的响应速度非常快,为了模拟打字效果特意加了一点延迟。使用 dot run 运行效果如下:

以下视频来源于

精致码农

已关注

关注

重播分享赞

关闭

观看更多

更多

正在加载

正在加载

退出全屏

视频加载失败,请刷新页面再试

刷新

视频详情

四、总结

本文介绍了如何使用 Azure OpenAI 和 C# 创建聊天机器人。由于国内无法直接访问 OpenAI 接口,但可以通过 Cloudfare Workers 等做代理,但使用微软的 Azure OpenAI 服务可以有更快的响应体验。

介绍如何在 Azure 中注册和创建 Azure OpenAI 服务,以及如何在服务中部署 ChatGPT 模型。接着,我演示了如何使用 .NET CLI 创建控制台应用程序,并添加相关配置。

最后,我使用 C# 代码演示如何调用 Azure OpenAI 接口实现一个 Console 聊天机器人。

- EOF -

点击标题可跳转

.NET 轻量级可视化插件框架

C# 异步有多少种实现方式?

.NET 7 中实现速率限制无痛接入

看完本文有收获?请转发分享给更多人

推荐关注「DotNet」,提升.Net技能

点赞和在看就是最大的支持❤️

扫描二维码推送至手机访问。

版权声明:本文由我的模板布,如需转载请注明出处。


本文链接:http://sdjcht.com/post/29493.html

分享给朋友:

“微信聊天满屏特效代码大全(微信聊天屏幕特效代码)” 的相关文章

京东绿豆家装怎么样(京东旗下绿豆装修公司)

京东绿豆家装怎么样(京东旗下绿豆装修公司)

今天给各位分享京东绿豆家装怎么样的知识,其中也会对京东旗下绿豆装修公司进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!本文目录一览: 1、京东绿豆家装同心店在哪里 2、绿豆家...

one数字藏品平台海贼王值多少(one艺术数字藏品海贼王)

one数字藏品平台海贼王值多少(one艺术数字藏品海贼王)

今天给各位分享one数字藏品平台海贼王值多少的知识,其中也会对one艺术数字藏品海贼王进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!本文目录一览: 1、onepiece海贼王里...

软件下载页面php源码(软件下载页面php源码在哪)

软件下载页面php源码(软件下载页面php源码在哪)

本篇文章给大家谈谈软件下载页面php源码,以及软件下载页面php源码在哪对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。 本文目录一览: 1、怎样查看一个网页的php源代码 2、那里有php...

手游平台十大排名下载(游戏手游平台排行榜)

手游平台十大排名下载(游戏手游平台排行榜)

本篇文章给大家谈谈手游平台十大排名下载,以及游戏手游平台排行榜对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。 本文目录一览: 1、网游手游排行榜前十名 2、最好的手游下载平台有哪些?...

开源商城app源码(源码商城源码)

开源商城app源码(源码商城源码)

今天给各位分享开源商城app源码的知识,其中也会对源码商城源码进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!本文目录一览: 1、有没有开源的电商系统源码? 2、什么是TPs...

畅易阁天龙八部怀旧服交易平台(天龙八部怀旧服畅易阁)

畅易阁天龙八部怀旧服交易平台(天龙八部怀旧服畅易阁)

今天给各位分享畅易阁天龙八部怀旧服交易平台的知识,其中也会对天龙八部怀旧服畅易阁进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!本文目录一览: 1、天龙八部最好的交易平台是哪个?...