项目简介
本项目是一个聊天对话管理系统,集成了聊天交互、对话快照、用户管理等功能。系统支持OPEN AI、Claude等模型,可根据对话生成可分享的静态页面,还具备对话集的全文查找功能,方便用户整理和搜索会话记录。
项目的主要特性和功能
- 聊天交互:用户可与系统进行对话,第一个消息为系统消息,默认附带最新的4条消息作为上下文。
- 用户管理:第一个注册的用户为管理员,支持对用户的限流设置,可通过配置对信任的email增加ratelimit。
- 对话快照与分享:支持根据对话生成可分享的静态页面,方便用户分享对话内容。
- 对话记录管理:提供对话快照目录(对话集),支持英文全文查找,便于用户整理和搜索会话记录。
- 多模型支持:支持OPEN AI、Claude等模型,用户可按需使用。
安装使用步骤
前提条件
假设用户已经下载了本项目的源码文件。
后端(Golang环境)
bash
cd chat; cd api
go mod tidy
export PG_HOST=192.168.0.135
export PG_DB=hwu
export PG_USER=hwu
export PG_PASS=pass
export PG_PORT=5432
make serve
前端(Node环境)
bash
cd ..; cd web
npm install
npm run dev
端到端测试(e2e)
bash
cd ..; cd e2e
export PG_HOST=192.168.0.135
export PG_DB=hwu
export PG_USER=hwu
export PG_PASS=pass
export PG_PORT=5432
npm install
npx playwright test # --ui
部署
参考 docker-compose.yaml
文件进行部署,也可点击 Deploy on Railway 进行部署。部署后配置环境变量:
PORT=8080
OPENAI_RATELIMIT=0
若有其他两个api key则进行填写。部署完成后,注册用户,第一个用户为管理员,之后到 https://$hostname/static/#/admin/user 设置ratelimit,公网部署时,仅对信任的email增加ratelimit,保证安全性。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】