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

长丰县住房和建设局网站客户管理系统

长丰县住房和建设局网站,客户管理系统,wordpress国产网校,重庆建站费用最近开发智能客服,需要用php调用已有的大模型应用接口流式输出vue前端调用打字机效果展示。这里整理了php调用大模型流式输出业务过滤等的核心实现部分,分享给大家。 前置条件:大模型应用接口已经打通(最好是通过postman或者apip…

最近开发智能客服,需要用php调用已有的大模型应用接口流式输出+vue前端调用打字机效果展示。这里整理了php调用大模型流式输出+业务过滤等的核心实现部分,分享给大家。

前置条件:大模型应用接口已经打通(最好是通过postman或者apipost调用成功,如下图,消息返回的内容可能根据自己的大模型应用api有差异,但是一定要看到每行有一个json数据返回)

php7.0 以上的版本,调用方式如下:

public function sendRequestStreaming($messages) {set_time_limit(0);header('Content-Type: text/plain; charset=utf-8');header('X-Accel-Buffering: no');ob_implicit_flush(true);ob_start();$data = [// 此处的参数和你的大模型api对应'inputs' => [],'query' => $messages,'response_mode' => 'streaming'];$curl = curl_init($this->baseUrl . 'chat-messages'); // 注意地址改成你自己的大模型api地址curl_setopt($curl, CURLOPT_POST, true);curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode($data));$header = ['Content-Type: application/json','Authorization: Bearer ' . $this->apiKey, // 注意改成你的大模型的apiKey'Accept: text/event-stream'];curl_setopt($curl, CURLOPT_HTTPHEADER, $header);curl_setopt($curl, CURLOPT_TIMEOUT, 0); // 永不超时curl_setopt($curl, CURLOPT_RETURNTRANSFER, false); // 禁止直接输出到变量// 全局变量用于跨回调保留状态(如未处理完的缓冲)$buffer = '';curl_setopt($curl, CURLOPT_WRITEFUNCTION, function ($curl, $data) {global $buffer;// 合并缓冲(处理跨块数据)$buffer .= $data;// 过滤数据$filtered = $this->filterData($buffer);// 假设数据按换行分割,处理完整行(根据API实际格式调整)$lines = explode("\n", $filtered);// 最后一行可能不完整,保留到下次处理$buffer = array_pop($lines);// 逐行实时输出foreach ($lines as $line) {echo $line . "\n";ob_flush(); // 刷新输出缓冲flush();}// 返回已处理的数据长度(一定要注意,是返回原数据长度)return strlen($data);});curl_exec($curl);// $error = curl_error($curl); 如果需要捕获错误,记录错误日志等curl_close($curl);// 处理剩余缓冲if (!empty($buffer)) {echo $this->filterData($buffer);;ob_flush();flush();}}// 过滤流式json数据protected function filterData($str) {return $str;// 根据需要过滤数据,如某些json数据不想返回给前端// if (strpos($str, 'data: {"event": "message') === 0) {//     return $str;// } else {//    return "";// }}

以上的方法实现了php调用大模型流式输出,可根据自己的需求修改。

注意:CURLOPT_WRITEFUNCTION内部末尾的return是源数据长度,不要自作聪明改成处理后的新数据长度。

http://www.dtcms.com/wzjs/289771.html

相关文章:

  • 专门做机器人大战的网站叫什么搜狗推广登陆
  • 石家庄网站制作设计国外免费建站网站
  • 青海省交通建设管理局网站广告投放平台
  • 网站建设方案书ppt网图识别在线百度
  • 成都哪家公司做网站seo网络营销外包
  • 北京网站建设专家网页设计与制作考试试题及答案
  • 怎么样在网上建设网站挣钱西安seo关键词查询
  • 网站做抢红包活动广告语seo服务外包价格
  • 用什么做网站的访问量统计长沙优化网站哪家公司好
  • 清河网站建设网络公司广州seo网络营销培训
  • 网站系统开发怎么做优化网站排名公司
  • 网站设计遇到的问题完整的品牌推广方案
  • 镇江网站关键字优化免费的舆情网站
  • 做接口的网站系统优化大师官方下载
  • 怎么做动态的实时更新的网站做竞价托管的公司
  • 家装设计效果图网站2023年百度小说风云榜
  • 家装设计费用怎么收费外贸网站推广优化
  • 网站免费申请免费行情软件网站下载大全
  • 点击立即进入正能量网站百度电脑版下载
  • html5网站源码phpseo培训网的优点是
  • 那些网站是做俄罗斯鞋子百度搜索浏览器
  • 达州网站建设qinsanwseo新手教程
  • 个人交互网站可口可乐软文营销案例
  • wordpress国内视频网站吗2021最火关键词
  • vs2015做简单网站一键搭建网站
  • 做网站推广哪家公司好网络营销以什么为中心
  • 直接用源码做网站盗版吗盐城seo培训
  • 小挑可以做网站吗网络推广都是收费
  • 厦门php网站建设seo短视频网页入口营销
  • 手机网站建设比较好的公司考证培训机构