GitHunt
L0

l0sgAi/ai-chat-demo

一个简单的通用对话智能体demo,使用SpringBoot和SpringAI实现大语言模型LLM的简单整合。

AI-CHAT DEMO

一个AI大模型聊天机器人项目

对应前端的地址:https://github.com/l0sgAi/ai-chat-front

项目环境需求

  1. node.js
  2. java21+
  3. redis(需要自行配置)
  4. MySQL8(需要自行配置)
  5. MySQL数据表,建表脚本为本项目的document目录下的db.sql文件
  6. 支持OpenAI标准的大模型API密钥
  7. ElasticSearch,版本8.15.5

项目功能介绍

一个简单的AI大模型对话机器人项目。

使用SpringAI+SpringBoot+MySQL+Redis+ES开发,主要功能为:

  • 基于MySQL实现数据持久化管理。
  • 支持简单的登录注册,sa-token实现,集成Redis储存token
  • 包括聊天会话和聊天问答对,支持多用户。
  • 支持对话记忆和聊天上下文。
  • 使用虚拟线程异步方法实现对话。
  • 使用ElasticSearch作为向量储存实现RAG
  • 配置中心,可管理多个模型。(待实现)
  • 支持对话的全局搜索。(待实现)
  • 使用RabbitMQ优化异步架构。(待实现)

项目启动

  1. 准备项目环境。
  2. 启动后端SpringBoot项目。
  3. 启动前端项目。
  4. 浏览器访问http://localhost:5173/ (前端地址)。

项目使用注意事项

配置好环境后,需要先注册用户,登录后,即可开始使用。

请注意:

  • 只有管理员用户(roleId=1),才可以进入配置页面。
  • 目前管理员没有注册方法,先随便注册一个账号,再在数据库里把role字段改为1即可。

之后,还要在管理后台添加几个大模型。

1. 进入设置

  • 登录管理员账号
  • 点击右上角的"设置"按钮

2. 添加模型

  • 在管理后台点击左上角"新增配置"
  • 输入对应参数添加模型

3. 添加模型参数并保存

  • 启用你想调用的模型

‼️请注意,本项目使用OpenAI标准,请保证你的API KEY是支持OpenAI标准的。


MCP说明

不同的模型对于工具调用的能力有差异,目前测试下来工具调用效果最好的模型为qwen-plus-latestqwen-turbo-latest,有的模型不支持SpringAI方式的工具调用,会报错,大家可以自己多尝试。

MCP需要开启对应的MCP Server,我已经上传至分支mcp-server中。

使用说明
  1. 拉取分支mcp-server,配置自己的搜索API KEY,获取:tavily-home。
  2. 启动mcp-server分支上的本项目。
  3. 启动main分支上的本项目。

更新计划

  • (2025-07-27) 数学公式渲染支持。
  • (2025-07-27) 多模态模型支持,可以上传图片,并根据图片的内容进行输出。
  • (2025-07-27) 全文检索会话。
  • (2025-11-02) 知识库管理,只有管理员才能进入。
  • (2025-11-02) RAG问答支持。
  • (2025-11-11) MCP联网搜索支持。
  • 图片生成支持,使用RabbitMQ实现异步处理。

Languages

Java100.0%

Contributors

MIT License
Created June 1, 2025
Updated February 26, 2026