AI相关项目
前言
这是项目[2]的改进版,实际工作中发现,类似coze,dify等低代码平台,动不动就需要调用大模型来处理相关逻辑。因此使用langchain+langgraph全新重构,使得智能体响应速度明显提升。另外,用户可随时切换到人工客服,实现智能助手与传统人工客服的完美融合。
技术栈
langchain + langgraph + langsmith + react + assistant-ui + socketio + RAG(ReRank, 由langchain方式实现的知识库) + function call(在线获取产品详情) + milvus
项目特色
- 中英文双语客服: 判断用户的输入语言,并用相应语言进行回复
- 双语知识库: RAG自动调用相应语言的知识库,知识库分公司资料知识库、产品资料知识库。知识库也区分两语的原因:在工业领域,对于特定词汇,不要指望AI
- 在线获取产品详情: 产品知识库中只存放了产品名称和索引信息,RAG完成后会继续通过function call在线获取产品详情,然后再汇总给产品Agent,并由它完成最终的回复
- 整个项目由三个agent组成: 售前Agent(负责公司基本信息)、产品Agent(负责产品知识库)、其它问题Agent(负责礼貌的拒绝,引导)
- 使用assistant-ui作为前端UI,但做了比较大的定制
- 修复移动端显示问题:移动端直接打开新窗口,PC则以右下角弹窗显示
- 自动判断用户语言:根据用户语言显示相应的引导语、系统标题等
- 弃用assistant-ui modal弹窗(这个插件是不是很鸡肋??我想嵌入任意第三方网站怎么搞?):用js重新写了一个弹窗插件,支持任意第三方网站嵌入
- 增加HITL(human in the loop)模式:当用户输入人工客服时,会显示确认按钮让用户确认,确认后即切换到人工客服模式
- 用react在assistant-ui的基础上增加了一个人工客服后台
- 人工客服可登录后台,实时接收并回复用户消息
- 后台增加基于socketio的IM服务
- 用于在人工客服模式下,实时推送消息给用户/客服
- 使用langgraph构建工作流,langsmith调试,兼顾性能和开发效率




Next
- 已可商用,不过界面嘛还可以美化,有空再说吧