灵答 AI-开源、轻量 AI 客服中台系统

✨ 特性

🏠 私有化与数据自主

  • 前后端分离,可自建机房 / 内网部署,知识库与对话策略自主可控。
  • 向量化数据默认落本地目录(可配置 VECTOR_STORE_PATH),文档与向量不必依赖境外 SaaS。

📚 知识库与 RAG

  • 多知识库管理,文档上传(含 Word 等解析链路)、切分与向量化、向量检索增强生成。
  • 客服实例可绑定一个或多个知识库,回复可追溯知识来源。

🤖 AI 客服编排

  • 多客服实例、独立公开链接与访客对话页,支持开场语、系统提示、主题等配置。
  • 管理端 API 配置:填写供应商、API Key、模型与 Embedding、Base URL 等;支持连通性测试。

👤 账号与权限

  • 用户注册 / 登录(含验证码)、JWT 鉴权;管理员可使用用户管理、模型配置、会话管理等能力。

🌐 对外与集成

  • 每条客服 独立访问入口,便于嵌入业务站点或 iframe。
  • 提供 HTTP API 能力,便于与现有系统集成(详见代码路由)。

🚀 快速开始

安装依赖

# 后端
cd backend
npm install
cp .env.example .env
# 编辑 .env:MONGODB_URI、JWT_SECRET、PORT 等

# 前端
cd ../frontend
npm install

开发

# 终端 1:后端
cd backend
npm run dev

# 终端 2:前端
cd frontend
npm run dev

构建(前端生产包)

cd frontend
npm run build

数据库(可选示例)

仓库根目录提供 ai_customer.js(MongoDB 脚本示例)。导入前请阅读首页「部署指南」或文档说明;会重建集合,勿用于生产库。


📦 技术栈

层级 技术
前端 React 18、Ant Design 5、React Router 6、Vite 5、Axios、Recharts
后端 Node.js、Express 4、Mongoose 8、JWT、LangChain、@langchain/openai
数据 MongoDB;向量文件本地 JSON 存储(vector_stores)
AI 可对接 OpenAI 兼容接口、火山引擎(Volcano / Ark)等,在控制台配置

主要依赖(节选)

前端: antd、axios、react-router-dom、react-markdown、recharts

后端: express、mongoose、langchain、@langchain/openai、mammoth、multer、jsonwebtoken、svg-captcha


🎯 核心功能

模块 说明
概览 / 控制台 登录后进入管理端,查看与跳转各模块
知识库 创建知识库、上传文件、触发向量化、分片浏览
客服 创建客服、绑定知识库、公开链接、主题与联系方式等
模型管理(管理员) 多平台 API 配置、密钥与模型名、测试连接
访客对话 通过公开链接访问,基于绑定知识库的 RAG 问答
用户 / 会话(管理员) 用户与对话会话运维(视版本路由而定)

📖 使用说明

  1. 环境:Node.js、MongoDB;在 backend/.env 配置 MONGODB_URI 等。
  2. 大模型:在管理端 模型管理 / API 配置 中填写 Key、模型 ID、Endpoint 等(详见站内「模型配置帮助说明」页或 docs 下火山指引)。
  3. 首个管理员:可使用 npm run create-admin(在 backend 目录,依仓库脚本说明)或注册后由现有管理员赋权。