重磅新作tauri2.0+vue3.5+deepseek+arco桌面客户端ai流式输出聊天对话系统。
tauri2-vue3-deepseek:桌面端ai聊天对话,基于Tauri2.x+Vite6集成接入DeepSeek-V3聊天对话系统,支持圆角阴影多窗口、流式输出打字效果、浅色+暗黑模式、代码高亮美化、会话本地存储等功能。
技术栈
- 编辑器:VScode
- 技术框架:vite^6.3.5+vue^3.5.15+vue-router^4.5.1
- Ai大模型框架:DeepSeek-V3-0324 + OpenAI
- 跨平台框架:tauri^2.5.0
- UI组件库:arco-design^2.57.0 (字节桌面端组件库)
- 状态管理:pinia^3.0.3
- 本地缓存:pinia-plugin-persistedstate^4.3.0
- 高亮插件:highlight.js^11.11.1
- markdown插件:markdown-it
项目特性
- 基于跨平台Tauri2.0搭建项目,接入DeepSeek-V3,体积小、性能优、效果丝滑
- 封装多窗口管理、支持暗黑+浅色主题模式、展开/收缩侧边栏
- 支持各种代码高亮效果、易于展示分享代码片段
- 支持上下文多轮对话、提示词生成图片及预览功能
- 支持在浏览器打开会话里面的链接
- 使用arco-design组件库,保证UI风格统一性
项目结构目录
使用 tauri2.0+vite6 搭建跨平台项目模板,接入 deepseek-v3 对话模型,采用vue3 setup语法糖开发编码。
目前Tauri2-Vue3-DeepSeek客户端Ai对话项目已经更新到我的原创作品集。
Tauri2+DeepSeek+Vue3+Arco电脑端AI流式聊天对话系统
环境变量配置.env
- # 项目名称VITE_APPNAME = 'Tauri2-DeepSeek'# 运行端口VITE_PORT = 1420# DeepSeek API配置VITE_DEEPSEEK_API_KEY = 替换为你的 API KeyVITE_DEEPSEEK_BASE_URL = https://api.deepseek.com
复制代码 入口配置文件main.js
- /** * 渲染页面入口main.js * @author andy */import { createApp } from "vue"import App from "./App.vue"import './style.scss'// 引入插件配置import Plugins from './plugins'// 引入路由/状态管理import Router from './router'import Pinia from './pinia'createApp(App).use(Plugins).use(Router).use(Pinia).mount("#app");
复制代码
项目通用布局
项目整体分为自定义顶部导航栏+侧边栏+右侧对话区三个板块。
Ai聊天编辑框
编辑框组件封装在components目录下。
- {{item.text}} 深度思考 (R1) 联网 从网盘添加 选择网盘文件 从本地添加 上传文件 上传代码 代码文件 代码文件夹 GitHub仓库 图片 本地文件 PDF文档分析 网页总结
复制代码
tauri2+vue3接入deepseek流式输出
- const completion = await openai.chat.completions.create({ // 单一会话 // messages: [ {role: 'user', content: editorValue} ], // 多轮会话 messages: props.multiConversation ? historySession.value : [{role: 'user', content: editorValue}], model: 'deepseek-chat', stream: true, // 流式输出 max_tokens: 8192, // 限制一次请求中模型生成 completion 的最大 token 数(默认使用 4096) temperature: 0.4, // 严谨采样 越低越严谨(默认1)})
复制代码 通过for循环分片返回流式。- // 使用数组存储chunk内容,提高拼接效率let chunks = []let lastUpdate = 0// 处理流式输出for await (const chunk of completion) { const content = chunk.choices[0]?.delta?.content || '' if(content) { chunks.push(content) // 限制更新频率:每100ms最多更新一次 const now = Date.now() if (now - lastUpdate > 100) { sessionstate.updateSession(botKey, {content: chunks.join('')}) lastUpdate = now // 滚动最底部 if (sessionstate.reachBottom) { props.scrollBottom() } } } if(chunk.choices[0]?.finish_reason === 'stop') { sessionstate.loading = false // 确保最终内容完整更新 sessionstate.updateSession(botKey, {content: chunks.join(''), loading: false}) if (sessionstate.reachBottom) { props.scrollBottom() } }}
复制代码 Ok,以上就是tauri2.0+vue3对接deepseek实战桌面端ai流式对话系统的一些分享,希望对大家有所帮助!
Uniapp-DeepSeek跨三端AI助手|uniapp+vue3+deepseek-v3流式ai聊天模板
vue3-webseek网页版AI问答|Vite6+DeepSeek+Arco流式ai聊天打字效果
flutter3-deepseek流式AI模板|Flutter3.27+Dio+DeepSeeek聊天ai助手
Vue3-DeepSeek-Chat流式AI对话|vite6+vant4+deepseek智能ai聊天助手
附上几个最新实战项目
Tauri2.0-Vue3OS桌面端os平台|tauri2+vite6+arco电脑版OS管理系统
Tauri2.0+Vite5聊天室|vue3+tauri2+element-plus仿微信|tauri聊天应用
Electron35-DeepSeek桌面端AI系统|vue3.5+electron+arco客户端ai模板
flutter3-dymall仿抖音直播商城|Flutter3.27短视频+直播+聊天App实例
Electron31-Vue3Admin管理系统|vite5+electron+pinia桌面端后台Exe
uniapp+vue3聊天室|uni-app+vite4+uv-ui跨端仿微信app聊天语音/朋友圈
flutter3-winchat桌面端聊天实例|Flutter3+Dart3+Getx仿微信Exe程序
来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |