当前位置: 首页 > news >正文

江门网站建设维护新网域名管理

江门网站建设维护,新网域名管理,自己做首饰的好网站,帝国cms官网多轮对话功能实现 视频教程实现原理消息的类型 功能开发消息类修改请求体修改发送请求函数修改用户消息输入 多轮对话的token消息完整文档消息类型 视频教程 .NetAI开发入门HttpClient实现通义千问集成-多轮对话功能实现 实现原理 一直保留更新messages 现在设置的meessages只… 多轮对话功能实现 视频教程实现原理消息的类型 功能开发消息类修改请求体修改发送请求函数修改用户消息输入 多轮对话的token消息完整文档消息类型 视频教程 .NetAI开发入门HttpClient实现通义千问集成-多轮对话功能实现 实现原理 一直保留更新messages 现在设置的meessages只设置了两条内容 system系统消息给AI设置一个角色user用户消息你提的问题 消息的类型 根据OpenAI API官网消息有以下几种类型 我们现在主要用的就三个 System Message 系统消息用于指定模型的目标或角色放在messages第一位User Message用户消息用户发送给模型的消息。Assistant Message助手消息模型对用户消息的回复。 实现的效果 messages systemxx userxxx assistantxxx userxxx assistantxxx功能开发 消息类 创建一个消息类 public class ChatMessage{public string role { get; set; }public string message { get; set; }}修改请求体 修改请求体将message内容改成一个占位字符串用于后面修改 增加一个消息集合messages 用于存储消息 ListChatMessage messages new ListChatMessage();messages.Add(new ChatMessage() { role system, content 你是一个C#高手 });修改发送请求函数 增加一个result获取流式输出的content完整内容返回完整的助手消息内容用于后续添加到messages中 private static async Taskstring SendPostRequestAsync(string url,string jsonContent,string apiKey){using (var content new StringContent(jsonContent, Encoding.UTF8, application/json)){// 发送请求并获取响应HttpResponseMessage response await httpClient.PostAsync(url, content);// 处理响应if (response.IsSuccessStatusCode){string result ;using (Stream stream await response.Content.ReadAsStreamAsync())using (StreamReader reader new StreamReader(stream, Encoding.UTF8)){string line;while ((line await reader.ReadLineAsync()) ! null){if (string.IsNullOrEmpty(line))continue;string data line.Substring(6);if (data [DONE]){//结束标志break;}var streamObject JsonSerializer.DeserializeStreamObject(data);if (streamObject.choices.Count() 0){var contentRes streamObject.choices[0].delta.content;Console.Write(contentRes);result contentRes;}if (streamObject.usage ! null){Console.WriteLine($Usage: prompt_tokens:{streamObject.usage.prompt_tokens}, completion_tokens:{streamObject.usage.completion_tokens}, total_tokens:{streamObject.usage.total_tokens});}Thread.Sleep(200);}Console.WriteLine();}return result;// return await response.Content.ReadAsStringAsync();}else{Console.WriteLine($请求失败: {response.StatusCode});return $请求失败: {response.StatusCode};}}}将httpclient设置请求头的代码拿到一开始只设置一次 修改用户消息输入 修改用户消息改成用户直接在控制台上输入输入之后再加入到消息中然后将消息集合messages序列化成字符串替换掉jsonContent里面的消息占位符messagesContent再发送出去接收到模型返回的助手消息之后将助手消息也添加到messages中去role为assistant然后下次发送这些消息累加一起再发送 while (true){Console.Write(User:);var usermessage Console.ReadLine();if (string.IsNullOrEmpty(usermessage)){continue;}if (usermessage exit){break;}var user new ChatMessage() { role user, content usermessage };messages.Add(user);var str JsonSerializer.Serialize(messages);var send jsonContent.Replace(messagesContent, str);// 发送请求并获取响应Console.WriteLine(assistant:);var result await SendPostRequestAsync(url, send, apiKey);messages.Add(new ChatMessage() { role assistant, content result });}多轮对话的token 多轮对话的token是持续累加的第二次发送的时候相当于第一次发送和返回的消息也发送了都算在第二次发送的token中 消息完整文档 以下详细内容来着OpenAI API翻译 https://platform.openai.com/docs/api-reference/chat/create 消息类型 系统消息 (System message) object content (字符串或数组) 必填 系统消息的内容。 role (字符串) 必填 消息作者的角色此处为 system。 name (字符串) 可选 用于区分相同角色参与者的可选名称。 用户消息 (User message) object content (字符串或数组) 必填 用户消息的内容。 role (字符串) 必填 消息作者的角色此处为 user。 name (字符串) 可选 用于区分相同角色参与者的可选名称。 助手消息 (Assistant message) object content (字符串或数组) 可选 助手消息的内容。除非指定 tool_calls 或 function_call否则必填。 refusal (字符串或 null) 可选 助手的拒绝消息。 role (字符串) 必填 消息作者的角色此处为 assistant。 name (字符串) 可选 用于区分相同角色参与者的可选名称。 audio (对象或 null) 可选 与助手之前的音频响应相关的数据。 id 字符串必填 唯一标识模型生成的音频响应。 tool_call (数组) 必填 模型生成的工具调用列表例如函数调用。 id 字符串必填 具调用的唯一 ID。 type 字符串必填 工具类型目前仅支持 function。 function 对象必填 模型调用的函数。 name 字符串必填 要调用的函数名称。 arguments 字符串必填 模型以 JSON 格式生成的函数调用参数。 注意模型生成的参数可能无效或者包含未在函数定义中描述的参数。建议 在调用函数之前应在代码中验证参数 function_call 已弃用 (对象 或者 null) 选填 模型生成的工具调用列表例如函数调用。 name 字符串必填 要调用的函数名称。 arguments 字符串必填 模型以 JSON 格式生成的函数调用参数。 工具消息 (Tool message) object role (字符串) 必填 消息作者的角色此处为 tool。 content (字符串或数组) 必填 工具消息的内容。 tool_call_id (字符串) 必填 对应工具调用的消息 ID。 函数消息 (Function message) 已弃用 object role (字符串) 必填 消息作者的角色此处为 function。 content (字符串或 null) 必填 函数消息的内容。 name (字符串) 必填 函数名称。
http://www.w-s-a.com/news/329912/

相关文章:

  • 网站定制哪个好wordpress主题dux1.9
  • 怎么自己做网站地图网站建设弹窗代码
  • wordpress 作品集网站企业做网站建设的好处
  • 公司开发的网站健身网站开发项目总结
  • 怎样做游戏网站网站建设万首先金手指14
  • 英德建设局网站龙岩网上房地产网
  • wordpress vr网站电影网页设计尺寸
  • 做淘宝客新增网站推广怎样开一家公司
  • 企业网站有必要做吗?网站平均停留时间
  • 蘑菇街的网站建设凡科网站建设网页怎么建
  • 中国光大国际建设工程公司网站论坛是做网站还是app好
  • 地产集团网站建设高德是外国公司吗?
  • 天津市网站建站制作网站建设新报价图片欣赏
  • 怎么样在百度搜到自己的网站高端房产网站建设
  • 邯郸做移动网站多少钱ui设计好就业吗
  • 共享虚拟主机普惠版做网站产品推广包括哪些内容
  • 广州市网站建站免费咨询医生有问必答
  • app网站建设制作哪个网站可以做魔方图片
  • 教育培训网站建设方案模板下载网站文风
  • 电龙网站建设wordpress文章两端对齐
  • 做外单网站亚马逊免费的网站加速器
  • 英文网站推广工作一个虚拟主机可以做几个网站吗
  • 微网站 合同重庆电力建设设计公司网站
  • 网站怎么设置支付网站源码下载后怎么布置
  • 广州市公需课在哪个网站可以做手机商城软件下载
  • app网站建设需要什么长治网站建设公司
  • 网站模板平台广告宣传网站
  • cc域名的网站做网站放太多视频
  • 让公司做网站要注意什么建设工程公司企业文化
  • 佛山搭建建网站哪家好微信如何建立自己的公众号