您的位置:首页 > 健康 > 养生 > 做一个网站最便宜多少钱_免费咨询法律服务_百度指数怎么下载_营销网站建设推广

做一个网站最便宜多少钱_免费咨询法律服务_百度指数怎么下载_营销网站建设推广

2025/3/1 8:48:01 来源:https://blog.csdn.net/u010582342/article/details/145933347  浏览:    关键词:做一个网站最便宜多少钱_免费咨询法律服务_百度指数怎么下载_营销网站建设推广
做一个网站最便宜多少钱_免费咨询法律服务_百度指数怎么下载_营销网站建设推广

使用场景,移动端集成AnythingLLM chat,使用python作为转发,此处可以有自己的业务去访问AnythingLLM,避免前端输入一堆东西,直接返回结果。

以下是如何实现流式输出的详细步骤和代码示例:


from flask import Flask, Response, request
import requests
from flask_cors import CORSapp = Flask(__name__)
CORS(app)
api_key = "WQ59GRH-1JC4M3R-MS2NN3X-VBQCY7H"  # 替换成你自己的apikey
# workspace = "8ceb3fb1-4e75-40fe-87db-570d5a689113"
workspace_name = "8ceb3fb1-4e75-40fe-87db-570d5a689113"
@app.route('/api/embed/<workspace_name>/stream-chat', methods=['GET', 'POST'])
def proxy(workspace_name):try:target_url = f"http://ip:port/api/v1/workspace/{workspace_name}/stream-chat"headers = {"Authorization": f"Bearer {api_key}","Content-Type": "application/json","accept": "text/event-stream"  # 确保服务器支持流式响应}data = {"message": "道德经讲的是什么,用50个字概括", #此处需要拼接自己的问题或本地业务"mode": "query",  # 可选chat/query模式'max_tokens': 1024,  # 控制生成文本的长度"stream": True}print("1")# 根据请求方法选择GET或POSTtarget_response = requests.post(target_url,json=data,  # 将客户端的流式数据转发headers=headers,  # 使用自定义请求头stream=True)  # 启用流式请求# 检查目标服务器的响应状态if target_response.status_code != 200:return f"Error: Target server returned status code {target_response.status_code}", target_response.status_code# 按流接收并返回数据块def generate():try:print("start")for chunk in target_response.iter_lines():if chunk:  # 确保数据块不为空print(chunk.decode("utf-8"))yield chunk.decode("utf-8")+"\n\n"  # 立即将数据块返回给客户端finally:print("close")target_response.close()  # 确保关闭目标响应# 创建流式响应return Response(generate(), mimetype='text/event-stream')except requests.RequestException as e:return f"Error: {str(e)}", 500if __name__ == '__main__':app.run(host="0.0.0.0",debug=True)

关键点说明

1、host=“0.0.0.0”

不配置,不能被其他地址访问

2、 yield chunk.decode(“utf-8”)+“\n\n”

解码之后必须给后面的\n\n,这个是格式要求,不能去掉

3、 “stream”: True

注意配置这些的地方,不能少

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com