littlebot
Published on 2025-04-07 / 0 Visits
0

【源码】基于Spring Boot和Vue的智能聊天管理系统

项目简介

本项目是基于Spring Boot后端框架和Vue前端框架构建的智能聊天管理系统,致力于提供高效、简洁且用户友好的聊天体验。系统融合多种实用功能,除基础聊天管理功能外,还支持与OpenAI服务集成,带来更智能的交互体验。

项目的主要特性和功能

后端(Spring Boot)

  1. 采用Spring Boot框架,确保系统稳定且高性能。
  2. 提供RESTful API接口,方便前端调用。
  3. 实现用户管理、会话管理、消息管理等基础功能。
  4. 支持使用OpenAI API密钥调用OpenAI服务,提供智能聊天功能。

前端(Vue)

  1. 运用Vue.js框架构建用户界面,交互体验流畅。
  2. 支持多会话管理,可同时打开多个聊天窗口。
  3. 具备搜索历史消息功能,便于查找过往对话。
  4. 提供角色管理,区分管理员和普通用户不同权限。
  5. UI设计优雅简洁,功能强大,满足不同用户需求。
  6. 支持PWA,提升移动体验。
  7. 支持Prompts预设,可用空格或 / 进行模糊搜索。
  8. 支持多个对话,每个对话可单独设置,通过URL直达。
  9. 支持导出和导入对话及设置。
  10. 实时显示当前对话消耗的token及回答的token,可及时打断。
  11. 支持多种余额查询方式,可定时查询内置账号余额并发送到微信。
  12. 支持URL query,可当作搜索引擎使用。

安装使用步骤

环境准备

  1. 安装Java和Maven,用于构建和运行后端代码。
  2. 安装Node.js和npm,用于安装前端依赖。

具体步骤

  1. 复制项目代码到本地。
  2. 后端项目操作:
    • 进入后端项目目录。
    • 运行mvn spring-boot:run启动Spring Boot应用。
  3. 前端项目操作:
    • 进入前端项目目录。
    • 运行npm install安装依赖。
    • 运行npm run serve启动Vue应用。
  4. 访问前端页面,开始使用聊天系统。

部署说明

  1. 推荐使用Docker进行容器化部署,便于管理和扩展应用。
  2. 可将应用部署到任何支持HTTP服务的服务器上。
  3. 也支持部署到Vercel、Netlify、Railway等平台,Vercel为首选,因其支持设置Edge Function服务器地区。

环境变量设置

v1.0.0版本环境变量变化较大,需重新设置。以 CLIENT_ 开头的变量会暴露给前端,请勿填写敏感信息。可通过以下两种方式设置: 1. 将 .env.example 文件修改为 .env,在 .env 中设置。 2. 在Vercel中设置 Environment Variables,此方式较方便,下次部署时生效。

具体环境变量及说明如下: | 环境变量 | 说明 | 默认值 | | ------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- | | OPENAI_API_KEY | OpenAI API Key,可以填写多个,用 \| 或者 换行 隔开,随机调用。最好是多填几个,API 有并发上的限制。如果用户不填自己的 key,那么就会使用你的 key。 | 无 | | OPENAI_API_BASE_URL | 本地开发时可以填写 OpenAI 的代理服务器,但是 Vercel 不需要。并且不建议生产阶段使用。 | api.openai.com | | NO_GFW | 表示可以服务器可以直连,不需要OPENAI_API_BASE_URL,就算设置了也不使用。 | false | | TIMEOUT | OpenAI API 超时。单位为毫秒,Vercel Edge Function 最大超时为 30000。 | 30000 | | PASSWORD | 网站密码 | 无 | | CLIENT_DEFAULT_MESSAGE | 默认提示信息 | - xx xx | | CLIENT_GLOBAL_SETTINGS | 默认全局设置 | {"APIKey":"","password":"","enterToSend":true} | | CLIENT_SESSION_SETTINGS | 默认对话设置,对话设置在每个对话中都是独立的。 | {"title":"","saveSession":true,"APITemperature":0.6,"continuousDialogue":true,"APIModel":"gpt-3.5-turbo"} | | CLIENT_MAX_INPUT_TOKENS | 有效上下文+输入的 token 数。OpenAI 不同模型的最大 token 不一样,价格也不同,可以分别设置。并且 OpenAI 会统计输入+输出之和,但我们这里只限制输入。 | {"gpt-3.5-turbo":4096,"gpt-4":8192,"gpt-4-32k":32768} | | SEND_KEY | 使用 Server 酱 推送帐号余额以及可用状态到微信,如果需要自行获取。推送时间为早上 8 点和晚上 8 点,在 vercel.json 文件中修改。如果 key 太多,超过 20 个,有可能失败。 | 无 | | SEND_CHANNEL | Server 酱 的推送通道,默认微信服务号。 | 9 |

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】