TNBLOG
首页
博客
视频
资源
问答
猿趣
手机
关于
搜索
收藏
便签
笔记
消息
创作
登录
剑轩
故如虹,知恩;故如月,知明
博主信息
排名
6
文章
6
粉丝
16
评论
8
文章类别
CSS
15篇
微服务
41篇
Git
14篇
.NET
102篇
移动开发
33篇
软件架构
23篇
.NET Core
119篇
.NET MVC
11篇
英语
3篇
随笔
86篇
Bootstrap
3篇
Redis
21篇
编辑器
10篇
Js相关
15篇
虚拟化
8篇
更多
Oracle
7篇
Python
14篇
数据库
26篇
EF
17篇
微信
3篇
前端
151篇
消息队列
6篇
docker
41篇
多线程
1篇
Java
4篇
软件基础
2篇
C++
2篇
WCF
7篇
Linux
7篇
nginx
5篇
K8S
9篇
ABP
2篇
最新文章
最新评价
{{item.articleTitle}}
{{item.blogName}}
:
{{item.content}}
关于我们
ICP备案 :
渝ICP备18016597号-1
网站信息:
2018-2024
TNBLOG.NET
技术交流:
群号656732739
联系我们:
contact@tnblog.net
欢迎加群
欢迎加群交流技术
原
.net core调用基于GPT-3.5的ChatGPT接口
2060
人阅读
2023/3/6 15:24
总访问:
3957142
评论:
2
收藏:
0
手机
分类:
.NET Core
## 基于GPT-3.5的接口 OpenAI 已经开放和官网版本的ChatGPT相同的模型 gpt-3.5-turbo GPT-3.5和3.0调用方式几乎一样,修改一下参数即可 **代码如下:** ``` string chatGptToken = _configuration["ChatGptToken"]; HttpClient client = new HttpClient(); client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); client.DefaultRequestHeaders.Add("Authorization", $"Bearer {chatGptToken}"); var content = new { //prompt = question, messages = new List<dynamic>() { new { role = "system", content = "你是TNBLOG智能助手。" }, new { role = "user", content = questionModel.question } }, model = "gpt-3.5-turbo", max_tokens = 4000, temperature = 0.5, // 回答同样一个问题的相似度 }; StringContent strcontent = new StringContent(JsonConvert.SerializeObject(content), Encoding.UTF8, "application/json"); string result = client.PostAsync("接口地址", strcontent).Result.Content.ReadAsStringAsync().Result; ``` - model:使用的模型,gpt-3.5-turbo 是官网版本 Chat-GPT 同款模型 - messages:消息参数,必须是数组。对话消息可以短至 1 条,也可以填充整个对话消息。通常,对话首先是 system 角色,用于给模型定下一些规则。当然,也可以加入一些 用户角色 user 和 模型角色 assistant 的对话内容,以便模型可以理解回顾历史对话内容。 - temperature: 回答同样一个问题的相似度 **成功调用接口返回的格式如下:** ``` { "id":"chatcmpl-6rGxroCTyO0DbNuVl02MTPWehnVhc", "object":"chat.completion", "created":1678154615, "model":"gpt-3.5-turbo-0301", "usage":{ "prompt_tokens":34, "completion_tokens":179, "total_tokens":213 }, "choices":[ { "message":{ "role":"assistant", "content":"可以使用CSS的`::selection`伪元素来实现文字高亮效果。 ```css ::selection { background-color: yellow; color: black; } ``` 上面的代码会将选中的文本背景色设置为黄色,文字颜色设置为黑色。你可以将上面的代码添加到你的CSS文件中,或者在HTML文档中使用`<style>`标签来添加。 注意:`::selection`伪元素只能用于设置选中文本的样式,不能用于设置未选中文本的样式。在一些浏览器中,`::selection`伪元素的样式可能会被用户自定义样式所覆盖。" }, "finish_reason":"stop", "index":0 } ] } ``` **接收返回值的Model写一下** ``` public class OpenAIResponse { public string @object { get; set; } public Choice[] choices { get; set; } } public class Choice { // public string text { get; set; } public Message message { get; set; } } public class Message { public string role { get; set; } public string content { get; set; } } ``` 用这个model反序列化一下就可以了 ``` OpenAIResponse openAIResponse = Newtonsoft.Json.JsonConvert.DeserializeObject<OpenAIResponse>(result); ``` **前一个版本的返回值类型可以使用这样的方式反序列化** ``` public class OpenAIResponse { public string @object { get; set; } public Choice[] choices { get; set; } } public class Choice { public Message message { get; set; } } ``` tn2>如果我说这篇博客是GPT-3.5帮我写的,你们信嘛!
欢迎加群讨论技术,1群:677373950(满了,可以加,但通过不了),2群:656732739
👈{{preArticle.title}}
👉{{nextArticle.title}}
评价
{{titleitem}}
{{titleitem}}
{{item.content}}
{{titleitem}}
{{titleitem}}
{{item.content}}