AI知识库(支持 DeepSeek)
支持 DeepSeek/ChatGPT 的大模型的对话式 AI 知识库系统

下文的 向量 为AI核心概念之一,将 $A$B 两个字符串向量化,然后就可以求得 $A$B相似性。相似性是一个范围固定的具体数值,可以方便的进行比较和排序等,不同于 LIKE 或者 全文搜索,具体使用见模块(这是向量数据于本模块的应用简述,非全面介绍)。

运行流程

  1. 将内容以 知识点 格式录入知识库系统(独立部署和存储,使用MySQL和Redis)
  2. 系统利用 文本嵌入模型 对知识点标题部分进行向量化
  3. 用户提问内容 向量化,然后以余弦相似性算法搜索知识点
  4. 将相似度最高的知识点作为参考资料发送给AI模型(LLM)以回复用户提问

这种运行流程就像是你直接给AI发送一篇文章,让它归纳总结后回答你的问题。只不过手动发送文章的步骤改为了:预录入知识点 > 高级匹配算法 > 系统自动打包发送

主要特性

  1. 对接完善:六种向量模型+十一种对话模型支持(含 ChatGPTDeepSeek 的大模型)
  2. 配置齐全:模型代理配置、提示词、无关响应方案、知识库相关、甚至如何分配 tokens、是否允许前台调整配置等等均是可控的
  3. 多知识库:知识点内容引用、批量向量化、编辑自动重新向量化、快捷管理 Redis 缓存、使用 AI模型 分析文本直接生成问答对等等
  4. 向量搜索:调试库内知识点的匹配情况,并可以快速对知识点进行调整
  5. 对话调试:调试一个消息引用了那些知识点、调试 AI模型 的各种参数、tokens 消耗情况调试等等,亦是位于管理员后台的会话窗口
  6. 前台友好:会员可通过积分或余额兑换 tokens、同时可自定义每个对话模型的 头像窗口标题欢迎消息代理api keytokens收取乘数
  7. 会话管理:查阅会员与AI的对话情况,与 对话调试 基本一致,只是不能发消息
  8. AI会员:前后台用户在均会自动建立为 AI会员,可于后台的AI会员管理中查阅,后台调整 AI会员tokens 余额等
  9. (PHP+MySQL+Redis) + AI 实现,无需向量数据库
  10. 其他细节请浏览演示站...

快速体验

刚安装时可以先不配置 Redis,直接按以下步骤了解知识库系统。

  1. 阿里云百炼平台 获取 API KEY
  2. 于后台 知识库配置 内配置好 API KEY
  3. 于后台 对话模型管理 内设置好至少一个模型的 API KEY 并开启模型开关
  4. 于后台 知识点管理 选中所有知识点并点击顶栏的 向量化 按钮,然后了解大体有那些知识点。
  5. 体验后台的 向量搜索对话调试

使用说明

  1. 安装本模块,请同时安装 md-editor-v3富文本编辑器md-editor-v3富文本编辑器(Nuxt版本),这是必须的,它们不需要积分,且对系统代码无侵入。
  2. 运行模式分为 php+mysqlredis+mysql 两种;第一种因MySQL不能检索向量性能不行,建议简单体验后立刻着手部署 redis+mysql
  3. 模块支持阿里的向量模型和对话模型,其他的国外模型的开通、访问不畅由开发者自行解决,我们不提供任何建议或解决办法,请理解。
  4. 默认已开始调试,待您建库完毕后,可于 config/ai.php 关闭,调试的使用见下方的常见问题。

Redis安装

  1. 知识库要安装的是 Redis Stack,不是单独的 Redis了解差异?
  2. 系统的 Redis 配置位于 config/ai.php 文件,请准备好 Redis 之后手动进行配置,然后于后台 知识库配置 中开启 Redis+MySQL 模式。
  3. 您可以直接按以下文档完成 Linux 系统的 Redis Stack 安装(本地亦可链接使用),或查阅完整官方安装文档
  4. 若不想/不能完成安装,您还可以使用 redis 官网推荐的云服务;免费30M(不能说很少,但不多)。

Debian/Ubuntu 安装 Redis

bash 复制代码
# 以下命令,依次执行以安装。
curl -fsSL https://packages.redis.io/gpg | sudo gpg --dearmor -o /usr/share/keyrings/redis-archive-keyring.gpg
sudo chmod 644 /usr/share/keyrings/redis-archive-keyring.gpg
echo "deb [signed-by=/usr/share/keyrings/redis-archive-keyring.gpg] https://packages.redis.io/deb $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/redis.list
sudo apt-get update
sudo apt-get install redis-stack-server
  1. 安装完成后,执行 systemctl start redis-stack-server 启动 redis-stack 服务
  2. 执行 systemctl status redis-stack-server 检查服务运行状态,服务正常运行时有 active(running) 字样
  3. 执行命令多看输出、遇到错误请先查百度,这只是 Linux 安装一个软件而已,虽然不难,但您确实可能遇到问题,因为我们无法预计您对 Linux 的熟悉程度,多数都是小问题。
  • 默认的服务配置位于:/etc/systemd/system/redis-stack-server.service
  • 默认的 Redis Stack 配置文件位于:/etc/redis-stack.conf
  • 如果你需要远程链接 redis,请在 redis-stack.conf 文件内添加 protected-mode no,或者添加 requirepass 123456redis 设置服务密码为 123456
  • 执行 systemctl enable redis-stack-server 开启 redis-stack 服务的开机自启
  • 其他可用命令: systemctl [start|stop|restart|enable|disable|status|systemctl list-units] redis-stack-server

常见问题

1. 如何彻底清空redis内的知识库数据,并重建缓存和索引?

  1. 清空:知识库配置 > Redis > 删除索引和缓存
  2. 重建:知识点管理 > 点击顶栏的 redis索引 按钮和 检查redis缓存 按钮

2. 如何调试对话服务?

知识库默认已经开启了调试,以便您在建库阶段可以快速查找问题,日志被记录于 runtime/ai,日志内容为:

  1. 发送给接口的消息体,含有模型参数、提示词、知识点内容、历史消息等
  2. 接口响应,含有模型生成的内容(SSE),以及程序对内容解析后的数组原样输出

3. 一些原因造成我需要手动清理redis进程,如何操作?

bash 复制代码
ps -ef | grep redis
kill -9 pid

4. AI进行超长回复时连接中断?(未回复完成但卡住不再出现新的文字)

  • PHP-FPM 配置中的 request_terminate_timeout 默认值通常为 100 秒,若您的服务总是在 100 秒左右自动中断,请调大此值。
  • 客户端网络连接不稳定也可能造成此问题,请更换网络环境再次测试。
  • 在AI回复的过程中,浏览器不宜长期后台运行,此举可能触发浏览器的节能功能而主动关闭连接。

更新日志

  • 2025-03-06 21:36:52

    v1.0.8

    修复已知问题、优化细节
    • 修复会话聊天记录中未显示R1模型的推理过程的问题
    • 生成回答时设置 set_time_limit(0); 以防止脚本运行时间不足
    • 优化细节
  • 2025-03-05 21:58:09

    v1.0.7

    增加 DeepSeek 模型支持
    • 增加间隔时间后的 自动创建新会话 功能和配置项
    • 增加 DeepSeek r1DeepSeek v3 模型支持
    • 优化模型接口类型相关处理
    • 向量模型 text-embedding-v3 参数同步
    • 会话列表中的最后对话时间实时更新
    • 修复 debug 日志文件名称可能乱码的问题
  • 2025-01-03 08:35:31

    v1.0.6

    更新可用模型、优化细节
    • 同步阿里灵积各个模型最大上下文长度 tokens 数据
    • 增加阿里灵积通用文本向量模型 text-embedding-v3
    • 增加 gpt-4o-mini
    • 优化细节
  • 2024-11-02 14:46:24

    v1.0.5

    修复已知问题
    • 修复非超管打开后台模型配置时提示无权限的问题
  • 2024-10-15 14:23:11

    v1.0.4

    兼容至 v2.1.2
    • 兼容 badmin-v2.1.2pinia 更新
    • 本版本仅提供给 BuildAdminweb-nuxt 工程的 v2.1.2+
  • 2024-07-17 05:16:32

    v1.0.3

    新增功能和优化细节
    • 修复聊天记录翻页时闪烁的问题(反转渲染聊天记录窗口)
    • 新增嵌入模型:text-embedding-v2、text-embedding-3-small、text-embedding-3-large
    • 新增文本生成模型:qwen-max-8k、qwen-max-longcontext-30k、gpt-4-turbo-128k、gpt-4o-128k
    • 废弃文本生成模型:gpt-3.5-turbo-4k
    • 优化细节
  • 2024-07-08 13:12:19

    v1.0.2

    兼容系统v2.1.0
    • Http.fetch 替换为 Http.$fetch 以避免 Nuxt 的警告信息
    • 即将废弃的 process.client 替换为 import.meta.client
    • 兼容 element-plus 2.7.5
    • 修复会话列表没有滚动条的问题
    • 修复其他已知问题
    • 此版本仅向 BuildAdmin >= v2.1.0 的系统提供
  • 2024-05-06 13:13:12

    v1.0.1

    优化细节
    • 修复新版本BuildAdmin中与AI聊天时接口跨域的问题
    • 优化前台在无模型可用时的错误提示
  • 2023-10-29 02:35:15

    v1.0.0

    首次发布

    无详细更新日志

妙码生花
妙码生花
这家伙很懒,什么也没写~
模块授权
正版授权,允许商业使用
自购买起一年内免费下载和升级更新
不加密源代码,私有部署,二开方便
可复制产品,不支持七天无理由退款
禁止转售、分享等任何形式的再分发
仅 BuildAdmin 后台管理系统可以使用
模块信息
模块价格
¥998.00
访问次数
8484
模块标识
ai
下载次数
77
模块分类
完整应用
上次更新
2025-03-06 21:36:52
开发者主页
-
购买送积分
-
完整应用NuxtTypeScript