如何实现基于ChatGPT API的C#接入?

今年开年,最火的莫过于的相关讨论,这个提供了非常强大的AI处理,并且整个平台也提供了很多对应的API进行接入的处理,使得我们可以在各种程序上无缝接入AI的后端处理,从而实现智能AI的各种应用 。的API可以在前端,以及一些后端进行API的接入,本文主要介绍基于的API的C#接入研究 。
PS:给大家推荐一个C#开发可以用到的界面组件——,它能完美构建流畅、美观且易于使用的应用程序,无论是风格的界面,还是分析处理大批量的业务数据,它都能轻松胜任!
点击获取 v22.1正式版(Q技术交流:)
什么是?
(全名:ChatPre- ),美国研发的聊天机器人程序,于2022年11月30日发布 。是人工智能技术驱动的自然语言处理工具,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,真正像人类一样来聊天交流,甚至能完成撰写邮件、视频脚本、文案、翻译、代码,写论文 等任务 。
是美国人工智能研究实验室新推出的一种人工智能技术驱动的自然语言处理工具,使用了神经网络架构,也是GPT-3.5架构,这是一种用于处理序列数据的模型,拥有语言理解和文本生成能力,尤其是它会通过连接大量的语料库来训练模型,这些语料库包含了真实世界中的对话,使得具备上知天文下知地理,还能根据聊天的上下文进行互动的能力,做到与真正人类几乎无异的聊天场景进行交流 。不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务 。
的官网地址如下:,如果我们需要使用它的对话处理以及强大的API能力,需要注册才能使用,至于如何注册以及接收验证码的操作,请百度一下一下即可,这里忽略,只是介绍它的功能以及如何介入使用 。
可以做很多不同类型的工作,常规的问答聊天,编写各种语言的应用代码,编写论文、摘要等,以及图片处理,翻译等等,如下是它们的一些功能分类和介绍 。
如我们可以在对话中测试其聊天/应答功能 。
我们也可以让它编写一段操作代码,如下所示 。
如果我们要了解平台的API介绍,可以参考,其大概分类也是很常规的功能应用相关的,如下是它的列表介绍 。
我们要学会如何使用API的话,需要了解它的相关模型概念,以及对各种处理的定义 。
基于的API的C#接入
从上面的API介绍中,我们可以看到,API平台没有针对不同的语义给出不同的实现方式,只是给出了一个通用的调用方式,主要是基于输入参数,响应的数据格式的参考,具体的不同语言的应用如C#的接入,需要根据实际的格式进行对接 。
主要的代码如下所示 。
using RestSharp;using System;namespace Gpt3APIExample{class Program{static void Main(string[] args){// OpenAI API地址string apiUrl = "https://api.openai.com/v1/engines/gpt-3/jobs";// OpenAI API密钥string apiKey = "YOUR_API_KEY";// 创建一个RestClient对象var client = new RestClient(apiUrl);// 创建一个RestRequest对象var request = new RestRequest(Method.POST);// 在请求头中添加API密钥request.AddHeader("Authorization", "Bearer " + apiKey);// 添加请求内容request.AddJsonBody(new{model = "text-davinci-002",prompt = "What is the capital of France?",max_tokens = 100,n = 1,stop = null,temperature = 0.5,});// 发送请求并获取响应IRestResponse response = client.Execute(request);// 显示响应内容Console.WriteLine(response.Content);Console.ReadLine();}}}
这个代码主要就是针对输入信息和输出的内容进行简单的包装,使用的一个Http类库进行访问的包装 。
而为了更好的使用的API处理,我们可以使用更高级一点的类库,如下面介绍的两个开源C#包装的类库: