排名
1
文章
860
粉丝
112
评论
163
.net core自定义项目模板,创建自己的模板项目,使用命令行创建模板项目
尘叶心繁 : 可以可以讲真的我都想弄个模板
net core webapi post传递参数
庸人 :
确实坑哈,我也是下班好了好几次,发现后台传递对象是可以的,但...
.net webapi 返回需要的字段,忽略某些字段,修改字段名等
雨雨雨雨雨辰 : 已精
.net webapi 返回需要的字段,忽略某些字段,修改字段名等
雨雨雨雨雨辰 :
疯狂反射
百度编辑器自定义模板
庸人 : 我建议换个编辑器,因为现在百度富文本已经停止维护了,用tinymec...
ICP备案 :渝ICP备18016597号-1
网站信息:2018-2025TNBLOG.NET
技术交流:群号656732739
联系我们:contact@tnblog.net
公网安备:
50010702506256


欢迎加群交流技术

基于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; }
}
如果我说这篇博客是GPT-3.5帮我写的,你们信嘛!
欢迎加群讨论技术,1群:677373950(满了,可以加,但通过不了),2群:656732739。有需要软件开发,或者学习软件技术的朋友可以和我联系~(Q:815170684)
评价