chatbot
Chatbot 是一个支持自定义语料训练的中文聊天机器人开源项目,旨在帮助开发者轻松构建专属的智能对话系统。它解决了通用大模型在特定领域或私有数据场景下适配性不足的问题,让用户能够利用自己的数据集(如客服记录、专业知识库等)训练出更懂业务需求的机器人。
该项目主要面向开发者、AI 研究人员以及对自然语言处理感兴趣的技术爱好者。其核心亮点在于灵活的架构设计:不仅保留了经典的 Seq2Seq 版本供学习和轻量级部署,还规划了向 GPT 类大模型及多模态能力(如图文对话)的演进路线。此外,Chatbot 支持 TensorFlow 和 PyTorch 双框架,并引入了 MindSpore 版本,具备分布式集群训练和 RLHF(人类反馈强化学习)等高级特性,能够适应从单机实验到大规模生产环境的不同需求。无论是希望深入理解对话模型原理的学习者,还是需要落地垂直领域应用的企业团队,都能从中获得实用的工具支持。
使用场景
某电商运营团队需要从多个无法直接导出数据的后台系统中,每日手动整理数百个订单信息以生成日报。
没有 chatbot 时
- 人工复制效率极低:员工需逐个打开订单页面,手动复制粘贴商品名、价格和数量到 Excel,耗时数小时且容易出错。
- 非结构化数据难处理:面对截图格式或特殊布局的订单信息,传统脚本无法识别,只能依靠肉眼核对录入。
- 流程割裂且繁琐:截图、识别文字、整理表格需要切换多个软件工具,操作链路长,新人上手成本高。
- 无法灵活响应需求:一旦老板临时要求按“特定地区”或“异常订单”筛选数据,整个整理流程需推倒重来。
使用 chatbot 后
- 自然语言一键执行:运营人员只需在对话框输入“提取当前页面所有订单并生成 Excel",chatbot 自动调用浏览器完成抓取与汇总。
- 智能视觉解析能力:内置的 Shopping Agent 能自动对网页进行全屏或区域截图,利用大模型精准识别图片中的复杂订单信息。
- 自动化闭环处理:从打开网页、批量截图到数据分析、文件导出,全流程由 chatbot 自主调度,将数小时工作压缩至几分钟。
- 动态交互即时调整:若需追加筛选条件,只需继续对话指令(如“只保留金额大于 500 元的订单”),系统即刻重新分析并输出新报表。
chatbot 通过将自然语言指令转化为自动化执行流,彻底消除了重复性人工录入,让数据处理变得像聊天一样简单高效。
运行环境要求
- Linux
- Windows
未说明
未说明

快速开始
项目文档切换
查看 Shopping Agent 文档 | 查看 Chatbot 文档
Shopping Agent
概述
ShoppingAgent是一个智能订单分析Agent,能够通过浏览器自动化、截图识别和大模型分析,帮助用户快速提取、汇总、生成excel,可以处理所有无法直接导出的订单后台信息。采用FastAPI作为后端服务,Streamlit作为前端界面,借助大模型的能力,实现自动化的Agent功能,提供直观的操作体验和强大的订单处理能力。
功能特点
- 自然语言交互:通过聊天界面使用自然语言指令控制订单处理流程
- 浏览器自动化:自动打开网页并进行截图操作
- 灵活截图:支持全屏截图、元素选择截图和手动区域选择截图
- 批量分析:对多张订单截图进行批量处理和信息提取
- 数据导出:将分析结果导出为Excel文件
- 系统配置:可自定义服务器、模型和浏览器等参数
快速开始
前提条件
- Python 3.8+
- Google Chrome浏览器(版本140.0及以上,建议使用最新稳定版)
- 下载Chrome驱动,下载地址见dist/resourece文件夹下
安装步骤
克隆项目代码库到本地
安装依赖包:
pip install -r requirements.txt
启动应用
启动后端服务:
python -m app.main打开新终端,启动前端界面:
streamlit run app/frontend.py浏览器会自动打开前端界面,或手动访问 http://localhost:8501
使用指南
基本流程
打开订单页面:在URL输入框中输入订单页面地址,点击"打开网页"按钮
截取订单截图:
- 选择截图方式(默认全屏或手动选择区域)
- 对于手动选择区域:先获取全页截图,然后在图片上拖动鼠标选择订单区域,最后点击"截取所选区域"
分析订单:点击"批量分析订单"按钮,系统会自动处理所有截图并提取订单信息
查看和导出结果:在右侧面板查看分析结果,点击"导出为Excel"保存数据
智能交互
在左侧聊天窗口,可以使用自然语言指令控制系统
系统配置
在侧边栏选择"系统设置",可以配置:
- 服务器地址和端口
- AI模型参数和API密钥
- Chrome浏览器和驱动路径
注意:配置修改后需要重启应用才能生效
目录结构
project-root/ ├── app/ │ ├── init.py │ ├── main.py # 后端服务入口 │ ├── frontend.py # 前端界面 │ ├── config.py # 配置文件 │ └── utils/ # 工具函数 ├── screenshots/ # 截图保存目录 ├── excels/ # Excel导出目录 ├── .env # 环境变量 └── requirements.txt # 依赖清单
常见问题
浏览器无法启动:
- 检查CHROME_PATH配置是否正确
- 确保Chrome浏览器已安装且版本为112.0及以上
- 尝试更新Chrome浏览器到最新版本
- Windows系统需确保Chrome安装路径不含中文或特殊字符
截图失败:
- 检查网页是否完全加载
- 尝试使用不同的截图方式
- 确认浏览器窗口没有被最小化
- 确保Chrome版本与chromedriver版本匹配
分析结果不准确:
- 确保订单截图清晰可见
- 尝试缩小截图区域,只包含订单信息
- 检查API密钥和网络连接
前后端连接失败:
- 确认后端服务已启动
- 检查服务器地址配置是否正确
- 确认端口没有被占用
依赖说明
基础依赖
- python-dotenv>=1.0.0 # 环境变量管理
- fastapi>=0.103.1 # 后端API框架
- uvicorn>=0.23.2 # ASGI服务器
- streamlit>=1.27.0 # 前端框架
- requests>=2.31.0 # HTTP请求
- pandas>=2.1.1 # 数据处理
- openpyxl>=3.1.2 # Excel处理
- pillow>=10.0.1 # 图像处理
浏览器自动化
- selenium>=4.14.0 # 浏览器自动化(兼容Chrome 112+)
- webdriver-manager>=4.0.1 # WebDriver管理(自动匹配Chrome版本)
图像处理与多模态理解
- python-multipart>=0.0.6 # 处理multipart表单数据
</span
chatbot
ChatGPT带火了聊天机器人,主流的趋势都调整到了GPT类模式,本项目也与时俱进,会在近期更新更新GPT类版本。 这是一个可以使用自己语料进行训练的中文聊天机器人项目,欢迎大家实践交流以及Star、Fork。
Seq2Seq版本效果参考(训练进度50%)

RoadMap:
V1.1: Update: 2024-09-30
- 增加MindSpore版本,优先在MindSpore版本上引入GPT模型,RLHF等特性。
- 整体工程架构分为Seq2Seq和GPT两大分支,继续保持多AI框架版本演进。
V1.2: Update: 2024-12-30 (Maybe)
- 实现类似mini-GPT4的功能,可以进行图文多模态的对话,主要提升趣味性和丰富性。
- 增强分布式集群训练相关能力和RLHF等特性。
seq2seq版本代码执行顺序
大家可以使用小黄鸡的语料,下载地址: https://github.com/zhaoyingjun/chatbot/blob/master/chineseChatbotWeb-tf2.0/seq2seqChatbot/train_data/xiaohuangji50w_nofenci.conv
- 在下载好代码和语料之后,将语料文件放入train_data目录下,超参配置在config/seq2seq.ini文件中配置。
- 按照数据预处理器(data_utls.py)→ execute.py(执行器)→ app.py(可视化对话模块)的顺序执行就可以了。
- 大规模分布式训练版本,参照horovod的启动方式:
horovodrun -np n -H host1_ip:port,host2_ip:port,hostn_ip:port python3 excute.py
建议训练环境配置
- ubuntu==18.04
- python==3.6
TF2.X:
- tensorflow==2.6.0
- flask==0.11.1
- horovod==0.24 (分布式训练)
pytorch:
- torch==1.11.0
- flask==0.11.1
开源交流、联系方式
QQ:934389697
常见问题
相似工具推荐
openclaw
OpenClaw 是一款专为个人打造的本地化 AI 助手,旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚,能够直接接入你日常使用的各类通讯渠道,包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息,OpenClaw 都能即时响应,甚至支持在 macOS、iOS 和 Android 设备上进行语音交互,并提供实时的画布渲染功能供你操控。 这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地,用户无需依赖云端服务即可享受快速、私密的智能辅助,真正实现了“你的数据,你做主”。其独特的技术亮点在于强大的网关架构,将控制平面与核心助手分离,确保跨平台通信的流畅性与扩展性。 OpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者,以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力(支持 macOS、Linux 及 Windows WSL2),即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你
n8n
n8n 是一款面向技术团队的公平代码(fair-code)工作流自动化平台,旨在让用户在享受低代码快速构建便利的同时,保留编写自定义代码的灵活性。它主要解决了传统自动化工具要么过于封闭难以扩展、要么完全依赖手写代码效率低下的痛点,帮助用户轻松连接 400 多种应用与服务,实现复杂业务流程的自动化。 n8n 特别适合开发者、工程师以及具备一定技术背景的业务人员使用。其核心亮点在于“按需编码”:既可以通过直观的可视化界面拖拽节点搭建流程,也能随时插入 JavaScript 或 Python 代码、调用 npm 包来处理复杂逻辑。此外,n8n 原生集成了基于 LangChain 的 AI 能力,支持用户利用自有数据和模型构建智能体工作流。在部署方面,n8n 提供极高的自由度,支持完全自托管以保障数据隐私和控制权,也提供云端服务选项。凭借活跃的社区生态和数百个现成模板,n8n 让构建强大且可控的自动化系统变得简单高效。
AutoGPT
AutoGPT 是一个旨在让每个人都能轻松使用和构建 AI 的强大平台,核心功能是帮助用户创建、部署和管理能够自动执行复杂任务的连续型 AI 智能体。它解决了传统 AI 应用中需要频繁人工干预、难以自动化长流程工作的痛点,让用户只需设定目标,AI 即可自主规划步骤、调用工具并持续运行直至完成任务。 无论是开发者、研究人员,还是希望提升工作效率的普通用户,都能从 AutoGPT 中受益。开发者可利用其低代码界面快速定制专属智能体;研究人员能基于开源架构探索多智能体协作机制;而非技术背景用户也可直接选用预置的智能体模板,立即投入实际工作场景。 AutoGPT 的技术亮点在于其模块化“积木式”工作流设计——用户通过连接功能块即可构建复杂逻辑,每个块负责单一动作,灵活且易于调试。同时,平台支持本地自托管与云端部署两种模式,兼顾数据隐私与使用便捷性。配合完善的文档和一键安装脚本,即使是初次接触的用户也能在几分钟内启动自己的第一个 AI 智能体。AutoGPT 正致力于降低 AI 应用门槛,让人人都能成为 AI 的创造者与受益者。
stable-diffusion-webui
stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面,旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点,将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。 无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师,还是想要深入探索模型潜力的开发者与研究人员,都能从中获益。其核心亮点在于极高的功能丰富度:不仅支持文生图、图生图、局部重绘(Inpainting)和外绘(Outpainting)等基础模式,还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外,它内置了 GFPGAN 和 CodeFormer 等人脸修复工具,支持多种神经网络放大算法,并允许用户通过插件系统无限扩展能力。即使是显存有限的设备,stable-diffusion-webui 也提供了相应的优化选项,让高质量的 AI 艺术创作变得触手可及。
everything-claude-code
everything-claude-code 是一套专为 AI 编程助手(如 Claude Code、Codex、Cursor 等)打造的高性能优化系统。它不仅仅是一组配置文件,而是一个经过长期实战打磨的完整框架,旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。 通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能,everything-claude-code 能显著提升 AI 在复杂任务中的表现,帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略,使得模型响应更快、成本更低,同时有效防御潜在的攻击向量。 这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库,还是需要 AI 协助进行安全审计与自动化测试,everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目,它融合了多语言支持与丰富的实战钩子(hooks),让 AI 真正成长为懂上
opencode
OpenCode 是一款开源的 AI 编程助手(Coding Agent),旨在像一位智能搭档一样融入您的开发流程。它不仅仅是一个代码补全插件,而是一个能够理解项目上下文、自主规划任务并执行复杂编码操作的智能体。无论是生成全新功能、重构现有代码,还是排查难以定位的 Bug,OpenCode 都能通过自然语言交互高效完成,显著减少开发者在重复性劳动和上下文切换上的时间消耗。 这款工具专为软件开发者、工程师及技术研究人员设计,特别适合希望利用大模型能力来提升编码效率、加速原型开发或处理遗留代码维护的专业人群。其核心亮点在于完全开源的架构,这意味着用户可以审查代码逻辑、自定义行为策略,甚至私有化部署以保障数据安全,彻底打破了传统闭源 AI 助手的“黑盒”限制。 在技术体验上,OpenCode 提供了灵活的终端界面(Terminal UI)和正在测试中的桌面应用程序,支持 macOS、Windows 及 Linux 全平台。它兼容多种包管理工具,安装便捷,并能无缝集成到现有的开发环境中。无论您是追求极致控制权的资深极客,还是渴望提升产出的独立开发者,OpenCode 都提供了一个透明、可信