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

深度集成DeepSeek大模型:WebSocket流式聊天实现

目录

  • 5分钟快速接入DeepSeek大模型:WebSocket实时聊天指南
    • 创建应用
    • 开发后端代码 (Python/Node.js)
    • 结语

5分钟快速接入DeepSeek大模型:WebSocket实时聊天指南

创建应用

  1. 访问DeepSeek官网

    • 前往 DeepSeek官网。
    • 如果还没有账号,需要先注册一个。
      在这里插入图片描述
  2. 进入API开放平台

    • 点击右上角的“API 开放平台”按钮,进入后台管理页面。
    • 你可以看到默认赠送的10元免费额度。
      在这里插入图片描述
  3. 创建API Key

    • 点击“API keys”,进入Key管理页面。
    • 创建一个新的API Key,并确保保存好这个Key,因为一旦离开页面就无法再次查看。
      在这里插入图片描述

开发后端代码 (Python/Node.js)

推荐使用Python或Node.js编写后台代码。下面以Python为例进行说明。

  1. 安装OpenAI库

    pip3 install openai
    
  2. 引入OpenAI并创建DeepSeek客户端实例

    from openai import OpenAIclient = OpenAI(api_key="替换为你的key", base_url="https://api.deepseek.com")
    
  3. 发送请求

    response = client.chat.completions.create(model="deepseek-chat",messages=[{"role": "user", "content": "详细介绍一下你自己"},],stream=False
    )
    print(response.choices[0].message.content)
    

    输出结果如下:
    在这里插入图片描述

  4. 流式输出结果
    将请求参数 stream 设置为 True 即可实现流式输出。

    response = client.chat.completions.create(model="deepseek-chat",messages=[{"role": "user", "content": "详细介绍一下你自己"},],stream=True
    )
    for chunk in response:print(chunk.choices[0].delta.content, end='', flush=True)
    
  5. 接口封装
    将功能封装为WebSocket接口,实现实时聊天。

    import asyncio
    import json
    from websockets import serve
    from openai import OpenAIclient = OpenAI(api_key="替换为你的key", base_url="https://api.deepseek.com")async def chat_handler(websocket):async for message in websocket:data = json.loads(message)user_input = data.get('user_input', '')history = data.get('history', [])messages = [{"role": "system", "content": "You are a helpful assistant"}]messages.extend(history)messages.append({"role": "user", "content": user_input})response = client.chat.completions.create(model="deepseek-chat",messages=messages,stream=True)for chunk in response:content = chunk.choices[0].delta.contentif content:await websocket.send(json.dumps({'content': content}, ensure_ascii=False))async def main():async with serve(chat_handler, "localhost", 8765):await asyncio.Future()  # Run foreverif __name__ == "__main__":asyncio.run(main())
    

    使用Postman测试接口:
    在这里插入图片描述

结语

通过以上步骤,你可以在短短5分钟内完成与DeepSeek大模型的集成,并实现一个实时聊天应用。WebSocket技术使得聊天内容可以流式传输,提升用户体验。希望这篇指南对你有所帮助,让你的项目更加高效和强大!

前端开发教程构建高效智能对话前端:基于Ant Design X 的deepseek对话应用

源码下载地址

http://www.lryc.cn/news/541013.html

相关文章:

  • Jmeter连接数据库、逻辑控制器、定时器
  • 『Linux笔记』进程间通信(IPC)详细介绍!
  • Jmeter进阶篇(34)如何解决jmeter.save.saveservice.timestamp_format=ms报错?
  • Visual Studio 2022配置网址参考
  • Redis中集合(Set)常见命令详解
  • 动态规划
  • stm32rtc实时时钟详解文章
  • DeepSeek 助力 Vue 开发:打造丝滑的 键盘快捷键(Keyboard Shortcuts)
  • 【第一节】C++设计模式(创建型模式)-工厂模式
  • 深入理解 SQL 注入漏洞及解决方案
  • 使用 deepseek实现 go语言,读取文本文件的功能,要求支持 ascii,utf-8 等多种格式自适应
  • 7.【线性代数】——求解Ax=0,主列和自由列
  • vue3结合后端传递过来的文件进行预览功能
  • 【Python爬虫(39)】掌控全局:分布式爬虫的任务管理与监控之道
  • Jenkins整合Jmeter实现接口自动化测试
  • Web 自动化测试提速利器:Aqua 的 Web Inspector (检查器)使用详解
  • 大语言模型:从开发到运行的深度解构
  • 【GoLang】【算法模板】2、GoLang 算法模板整理
  • 合理建模--最短路径
  • 喜报!博睿数据案例获经观传媒“2024年度数字转型创新案例”!
  • 基于图扑 HT 可视化技术打造智慧地下采矿可视化方案
  • 深度学习(2)-深度学习关键网络架构
  • 【学习笔记】Cadence电子设计全流程(二)原理图库的创建与设计(8-15)
  • 【Linux网络编程】IP协议格式,解包步骤
  • 给老系统做个安全检查——Burp SqlMap扫描注入漏洞
  • Windows 快速搭建C++开发环境,安装C++、CMake、QT、Visual Studio、Setup Factory
  • 开源免费文档翻译工具 可支持pdf、word、excel、ppt
  • 从CNN到Transformer:遥感影像目标检测的未来趋势
  • 【GORM学习笔记】GORM介绍以及增删改查相关操作
  • WebSocket在分布式环境中的局限性及解决方案