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

石龙镇网站仿做男的做直播哪个网站好

石龙镇网站仿做,男的做直播哪个网站好,石家庄建设厅官方网站,哪些网站是单页应用一、背景 我之前关于DeepSeek使用ollama部署的文章大家可以把DeepSeek大模型部署起来。那么ollama还提供了可以调用对应部署模型的API接口。我们可以基于这些接口,做自己的二次开发。使用pythonflaskollama就可以进行模型对话调用。并且前端采用SSE的技术&#xff0…

一、背景

        我之前关于DeepSeek使用ollama部署的文章大家可以把DeepSeek大模型部署起来。那么ollama还提供了可以调用对应部署模型的API接口。我们可以基于这些接口,做自己的二次开发。使用python+flask+ollama就可以进行模型对话调用。并且前端采用SSE的技术,后端向前端推送推理结果进行展示,可以实现属于自己的大模型对话产品。

二、代码实现

1、ollama运行deepseek-r1:1.5b模型

docker run -d -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollamadocker exec -it ollama ollama run deepseek-r1:1.5b

2、python+flask代码

import jsonfrom flask import Flask, request, Response
from ollama import Clientapp = Flask(__name__)# ollama客户端
ollma_url = "http://localhost:11434"   # localhost可以换成你部署ollama主机的ip、远程ip
ollama_client = Client(host=ollma_url )
# 模型名称
model_name = "deepseek-r1:1.5b"@app.route('/stream', methods=['POST', 'GET'])
def post_example():def generate():try:# 调用ollama客户端,传入模型名称、提问信息response_generator = ollama_client.generate(model_name, prompt=question, stream=True)for part in response_generator:response_text = part.response# 按照 SSE 规范格式化数据data = f"data: {json.dumps({'response': response_text})}\n\n"print(data)yield dataexcept Exception as e:error_data = f"data: {json.dumps({'error': str(e)})}\n\n"yield error_data# 接收问题, 调用模型, 使用SSE推送推理结果给前端question = request.args.get('question')resp = Response(generate(), mimetype='text/event-stream')# 设置响应头resp.headers['Cache-Control'] = 'no-cache'resp.headers['Connection'] = 'keep-alive'resp.headers['Access-Control-Allow-Origin'] = '*'return respif __name__ == '__main__':app.run(debug=True, port=8080)

3、前端代码

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Ask Ollama via SSE</title>
</head><body><input type="text" id="questionInput" placeholder="请输入你的问题"><button id="askButton">提问</button><pre id="answerContainer"></p><script>const questionInput = document.getElementById('questionInput');const askButton = document.getElementById('askButton');const answerContainer = document.getElementById('answerContainer');askButton.addEventListener('click', async () => {const question = questionInput.value;if (!question) {alert('请输入问题');return;}const eventSource = new EventSource(`http://localhost:8080/stream?question=${encodeURIComponent(question)}`);eventSource.onmessage = function (event) {const data = JSON.parse(event.data);const response = data.response;if (response) {const p = document.createElement('span');p.textContent = response;answerContainer.appendChild(p);}};eventSource.onerror = function (error) {console.error('EventSource failed:', error);eventSource.close();};});</script>
</body></html>

4、运行结果

        页面虽然不是很美观,但是一个基本原理的demo已经搞定。剩下的就是优化界面、优化链接异常等相关逻辑。

5、SSE默认不支持POST请求

        SSE默认不支持POST请求,可以找前端的一些npm包有人进行了封装,可以发送POST请求。以上的实例为了方便采用了GET请求

三、总结

        有了ollama就行docker服务一样,提供了API接口,部署的模型就是类似docker已经运行的容器。 通过ollama接口,可以调用运行的模型的各种能力!

http://www.yayakq.cn/news/711570/

相关文章:

  • 房产网站开发方案15个国内互动网站设计欣赏
  • 网站页面架构学院网站建设的特色
  • 找做网站的wordpress 制作portfolio
  • 网站备案需要准备什么材料做网站一般图片多大
  • 用dw做网站怎么上传到网站上网页界面设计首页
  • 百事可乐网站建设优缺点网站资讯板块的搭建
  • 江西新农村建设权威网站旺道智能seo系统
  • 扫二维码进入个人的购物网站如何做关键词排名优化怎么做
  • 网站备案字号自适应网站怎么做m站
  • 焦作网站开发网站网页设计公司
  • 山西路桥建设集团有限公司网站石家庄外贸网站制作
  • 做化工贸易要用那些网站推广建设读书网站的意义
  • 做自动采集电影网站有什么处罚龙华和龙岗哪个繁华
  • 商务网站开发实验报告网站数据比较
  • 四川网站备案咨询网什么程序做的网站没有index页面
  • 怎么利用360域名做网站阿里网站建设
  • 怎么做个手机版的网站毕业设计代做网站都有哪些
  • 网站建设一点通广州市又恢复48小时核酸检测
  • 广东省住房和建设网站聊城建设工程质量信息网站
  • div网站模板关键词优化 搜索引擎
  • 网站后台首页阿里云Windows建立WordPress
  • 设计师网站赚钱网站建设交印花税嘛
  • 百度移动网站排名网站改版seo建议
  • 网上购物网站开发开题报告在淘宝做网站可以退货退款么
  • 网站开发更新记录网站国内空间价格
  • thinkphp 网站源码做企业网站好的
  • 安徽炒股配资网站开发网站营销型企业销售平台
  • 山门做网站中国石油网站建设在线第三次作业
  • 新乡做网站推广的wordpress 3.9 友情链接
  • 当阳网站建设谷歌seo服务商