JeeSite 快速开发平台
官方网站
    • 平台简介
    • 架构特点
    • 技术选型
    • 功能介绍
    • 安装部署
    • 常见问题
    • 目录结构
    • 更新日志
    • Vue 文档
    • BPM 文档
    • Cloud 文档
V5 演示
Vue 演示
💖联系
  • 我要提意见、文档纠错
  • JeeSite 代码库, 请⭐Star关注
  • JeeSite Vue 代码库, 请⭐关注
  • Spring Cloud 微服务架构
  • JeeSite 手机端/移动端
  • AI + RAG + CMS 人工智能
  • Flowable 中国式工作流
  • OAauth2 统一认证服务器
  • 政务内外网环境中间件
  • 访问 ThinkGem 官方博客
  • 点击进入,下拉查看动态
官方网站
    • 平台简介
    • 架构特点
    • 技术选型
    • 功能介绍
    • 安装部署
    • 常见问题
    • 目录结构
    • 更新日志
    • Vue 文档
    • BPM 文档
    • Cloud 文档
V5 演示
Vue 演示
💖联系
  • 我要提意见、文档纠错
  • JeeSite 代码库, 请⭐Star关注
  • JeeSite Vue 代码库, 请⭐关注
  • Spring Cloud 微服务架构
  • JeeSite 手机端/移动端
  • AI + RAG + CMS 人工智能
  • Flowable 中国式工作流
  • OAauth2 统一认证服务器
  • 政务内外网环境中间件
  • 访问 ThinkGem 官方博客
  • 点击进入,下拉查看动态
  • 快速了解

  • 后端开发手册

  • Vue前端手册

  • 经典前端手册

  • 扩展功能专题

    • BPM 业务流程系统
    • 用户类型、类型扩展
    • 消息推送、消息提醒
    • 单点登录、OAuth2
    • 作业监控、任务调度
    • 对象存储、文件存储
    • 可视化数据大屏
    • 在线报表设计器
    • 文件管理、文件柜
    • 在线预览图片文档
    • 手机端移动端、Uni-App
    • CMS 内容管理系统
    • AI 知识库智能助手
      • 模块简介
      • 在线演示
      • 源码下载
      • AI 模型配置
      • 向量数据库配置
        • 安装 Chroma
        • 安装 PGVector
      • 创建 AI 菜单
      • 工具调用 Tool Calling
    • 涉密 “三员” 管理
    • OAauth2 统一认证服务
  • 云服务技术架构

  • 技术支持与服务

AI + RAG + CMS 内容检索增强生成智能助手

# 模块简介

本模块基于 Spring AI 和 JeeSite 内容管理系统(CMS)并结合了检索增强生成(Retrieval-Augmented Generation, RAG)技术 和先进的人工智能算法(AI),打造了一个强大的企业级知识管理和智能对话平台。该模块专为企业设计,旨在通过高效的知识获取和精准的对话能力, 提升企业的信息管理效率和员工的工作效能。

检索增强生成 RAG 技术使系统能够自动从海量的企业文档中检索最相关的信息,并将其融入到生成的回答中,确保每一次查询都 能获得最新且准确的结果。这种检索与生成相结合的方式,不仅提高了信息检索的准确性,还增强了回答的上下文关联性, 特别适合处理复杂的企业知识库。

此外该模块,支持在线大模型和本地部署的大模型,如:Ollama、DeepSeek、通义千问,理论上支持所有 OpenAPI 标准接口的 AI 提供商。 并能无缝集成多种嵌入式 AI 模型的向量数据库,如 Chroma、PGVector、Elasticsearch、Milvus 等,实现高效的数据存储、检索及分析。 无论是大规模数据集还是高度专业化的领域知识,JeeSite CMS + RAG + AI 都能提供定制化解决方案,满足企业多样化的业务需求和技术要求。 企业可以轻松管理和访问复杂的信息资源,促进内部知识共享和创新,从而在竞争激烈的市场环境中保持领先地位。

优势:本模块结构清晰,代码简洁易懂,不管是正式项目、或是学习 AI 技术、都能轻松应对读懂源代码。

# 在线演示

  • 地址:https://vue.jeesite.com/cms/chat/index (opens new window)

# 源码下载

  • 后端:https://gitee.com/thinkgem/jeesite5/tree/v5.springboot3/modules/cms-ai (opens new window)
  • 前端:https://gitee.com/thinkgem/jeesite-vue/tree/main/packages/cms (opens new window)

# AI 模型配置

支持的 AI 模型列表:https://docs.spring.io/spring-ai/reference/1.0/api/index.html (opens new window)

  • 线上模型:理论上支持所有 OpenAPI (opens new window) 标准接口的 AI 提供商。

  • 本地模型:使用 Ollama (opens new window) 安装方法,本文不多赘述,网上有很多安装资料。

  • 模型类型包括:聊天对话模型和嵌入式向量库模型,需注意 dimensions 维度参数,要和模型要求的匹配。

具体配置项详见 jeesite-cms-ai.yml (opens new window) 文件,有注释。

# 向量数据库配置

支持的向量库列表:https://docs.spring.io/spring-ai/reference/1.0/api/vectordbs.html (opens new window)

  • Chroma
  • PGVector
  • Elasticsearch
  • Milvus
  • ...

具体配置项详见 jeesite-cms-ai.yml (opens new window) 文件,有注释。

# 安装 Chroma

docker run --name chroma -p 8000:8000 ghcr.io/chroma-core/chroma:0.5.20
1

# 安装 PGVector

docker run -d --name pgvector -p 5433:5432 -e POSTGRES_USER=postgres \
              -e POSTGRES_PASSWORD=postgres pgvector/pgvector:pg17
1
2
  • 进入容器
docker exec -it pgvector psql -U postgres
1
  • 建库语句
CREATE DATABASE "jeesite-ai";

-- 激活数据库
\connect "jeesite-ai";

-- 建立数据表和索引
CREATE EXTENSION IF NOT EXISTS vector;
CREATE EXTENSION IF NOT EXISTS hstore;
CREATE EXTENSION IF NOT EXISTS "uuid-ossp";

-- 使用 all-minilm 模型时创建
DROP TABLE IF EXISTS vector_store_384;
CREATE TABLE IF NOT EXISTS vector_store_384 (
	id varchar(64) DEFAULT uuid_generate_v4() PRIMARY KEY,
	content text,
	metadata json,
	embedding vector(384)
);
CREATE INDEX ON vector_store_384 USING HNSW (embedding vector_cosine_ops);

-- 使用 nomic-embed-text 模型时创建
DROP TABLE IF EXISTS vector_store_786;
CREATE TABLE IF NOT EXISTS vector_store_786 (
	id varchar(64) DEFAULT uuid_generate_v4() PRIMARY KEY,
	content text,
	metadata json,
	embedding vector(768)
);
CREATE INDEX ON vector_store_786 USING HNSW (embedding vector_cosine_ops);

-- 使用 bge-m3 模型时创建
DROP TABLE IF EXISTS vector_store_1024;
CREATE TABLE IF NOT EXISTS vector_store_1024 (
	id varchar(64) DEFAULT uuid_generate_v4() PRIMARY KEY,
	content text,
	metadata json,
	embedding vector(1024)
);
CREATE INDEX ON vector_store_1024 USING HNSW (embedding vector_cosine_ops);
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39

# 创建 AI 菜单

系统管理 -> 系统设置 -> 菜单管理 -> 新增

  • 菜单名称:AI 助手
  • 菜单地址:/cms/chat/index

# 工具调用 Tool Calling

工具调用 Tool Calling(也称 Function Calling)是人工智能应用程序中的常见模式,允许模型与一组 API 或工具交互,从而增强其功能。

实例代码,详见 CmsAiTools.java (opens new window) 让 AI 调用你的 java 实现你的业务联动。

进入 JeeSite 源码仓库页面,点击右上角 ⭐ Star 加星关注。

← CMS 内容管理系统 涉密 “三员” 管理→

联系我们:s.jeesite.com  |  微信号:jeesitex  |  邮箱:jeesite@163.com
© 2013-2025 济南卓源软件有限公司 版权所有 | Theme Vdoing

请关注 JeeSite 微信公众号,了解最新动态

  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式