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

网网站开发免费建站系统

网网站开发,免费建站系统,商业网站最佳域名,微信推广平台收费标准解决方案 把reasoning content的东西移到content中来 并在reasoning时,手动加上标签。具体做法是截获第三方api返回的stream,并修改其中的内容,再移交给open webUI处理。 在backend\open_webui\routers\openai.py中 找到 generate_chat_com…

解决方案

把reasoning content的东西移到content中来 并在reasoning时,手动加上标签。具体做法是截获第三方api返回的stream,并修改其中的内容,再移交给open webUI处理。

在backend\open_webui\routers\openai.py中 找到 generate_chat_completion 这个函数

r = Nonesession = Nonestreaming = Falseresponse = None

下方 增加截获函数 这个方案适用于 火山 百炼 vLLM我没试过,但是思路是一样的,根据vLLM返回的chunk内容,把reasoning的部分贴到content中去就能正常显示了。

async def modify_stream_content(original_stream):start_reasoning = Trueend_reasoning = True# 逐块处理流式内容async for chunk in original_stream:# 示例:修改 chunk 内容(假设 chunk 是 JSON 字符串)try:# 1. 解码字节流为字符串decoded_chunk = chunk.decode('utf-8').lstrip('data: ').strip()# 2. 解析 JSON(根据实际格式调整)chunk_data = json.loads(decoded_chunk)# 3. 修改内容if "choices" in chunk_data and len(chunk_data["choices"]) > 0:delta = chunk_data["choices"][0].get("delta", {})# print(delta)if delta["content"] == None:delta["content"] = ""if "reasoning_content" in delta and delta["reasoning_content"] == None:delta["reasoning_content"] = ""if delta["content"] == "":if start_reasoning:delta["content"] = "<think>" + delta["content"] + delta["reasoning_content"]start_reasoning = Falseelse:delta["content"] = delta["content"] + delta["reasoning_content"]else:if end_reasoning:delta["content"] = "</think>" + delta["content"]end_reasoning = False# print(delta)# 4. 重新编码为字节流modified_chunk = f"data: {json.dumps(chunk_data)}\n\n".encode('utf-8')except (json.JSONDecodeError, KeyError) as e:# 处理错误(可选:记录日志或跳过)modified_chunk = chunk  # 保留原始数据# 5. 返回修改后的 chunkyield modified_chunk

在下方,if "text/event-stream" in r.headers.get("Content-Type", ""): 分支里。调用截获函数并返回

 # Check if response is SSEif "text/event-stream" in r.headers.get("Content-Type", ""):streaming = True# 调用截获函数modified_stream = modify_stream_content(r.content)return StreamingResponse(# r.content,modified_stream,status_code=r.status,headers=dict(r.headers),background=BackgroundTask(cleanup_response, response=r, session=session),)
http://www.yayakq.cn/news/62101/

相关文章:

  • 个人主页类网站开发背景常见的静态网页
  • 优化后的网站17zwd一起做业网站
  • 网站运行维护方案网站后台统计代码
  • 吴桥网站建设价格搜索网站开发背景
  • 优秀网站建设空间企业网站优化官网
  • 网站建设成功案例书籍电商平台商城系统搭建
  • 免费做旅游海报的网站昆明建设网站公司
  • 哪里有给网站做360wordpress数据库软件
  • 免费正能量网站下载ww网站做SEO优化多少钱
  • 手机网站推荐哪些wordpress怎么发布文章到专题栏目
  • 网站优化怎么样优秀网页设计案例分析图文
  • 网站管理的含义百度热度
  • 有关网站建设文章网站后台示演
  • 瑞安市住房和城乡建设局网站英文网站建设电话
  • 杭州网站建设优化专业网站定制公司
  • 酒泉百度做网站多少钱个人视频网站注册平台
  • 公司网站服务费计入什么科目购物网站项目开发
  • 集团网站模板镇江seo公司
  • 网站推广优化联系方式做单本小说网站怎么样
  • 外贸网站做多少钱的玉树wap网站建设公司
  • 链天网站建设wordpress怎么做博客
  • wordpress托管和建站石家庄网站设计培训班
  • 凡科网站官网登录入口北京专业的网站ui设计公司
  • 福海网站制作公司英文网站多少钱
  • 工程信息网站哪家做的较好wordpress音乐悬浮
  • 做资金盘网站违法吗哪个cms方便快速建站
  • 设计logo网站赚钱南宁网站建设索王道下拉
  • 网站的布局结构亚马逊aws永久免费服务69
  • 怎么创建一个网站如何在一个数据库做两个网站
  • 校考前做试题的网站网站建设死人接单