项目介绍

zhao11122233/CaraBot 是一个托管在 GitHub 上的开源项目,主要使用 Python 编写,目前获得 3 个 Star、0 次 Fork。

仓库全名
zhao11122233/CaraBot
Star 数
3

README 摘要

CaraBot: Agent 驱动的智能知识库系统 | Agent 应用开发 | AI 应用开发 | 大语言模型应用 🌐 English Version 📖 项目概述 CaraBot 是一个基于 LangGraph 和 RAG(检索增强生成)架构的 Agent 驱动智能知识库系统。它将语义搜索与 LLM 驱动的对话 AI 相结合,支持自然语言与文档库交互。内置的 ReAct Agent 能够自主搜索、检索和摄入文档,准确高效地回答用户查询。 📚 配套课程资料:本项目附有完整的课程资料,从 FastAPI 基础到 LangGraph Agent 开发,循序渐进,适合 AI 应用开发初学者学习。课程文件包含详细教程、代码示例和学习指南。 🔑 关键词 Agent 应用开发、AI 应用开发、大语言模型应用、LLM 应用、RAG…

完整内容见 GitHub 原始 README 或本页 。

常见问题

CaraBot 用什么语言开发?

主要使用 Python 编写,目前有 3 个 Star。

如何获取 CaraBot 的源码?

可以直接克隆仓库:git clone https://github.com/zhao11122233/CaraBot.git,默认分支为 main;安装与运行步骤见仓库 README。

CaraBot 最近还在维护吗?

仓库最近一次更新为 8月5日,当前没有未关闭的 Issue;Star 数为 3,可作为社区活跃度的参考。

简要分析

热度分
3
价值分
1
活跃状态
活跃

README

CaraBot: Agent 驱动的智能知识库系统 | Agent 应用开发 | AI 应用开发 | 大语言模型应用

GitHub Stars GitHub Issues GitHub License Python Version


🌐 English Version

📖 项目概述

CaraBot 是一个基于 LangGraph 和 RAG(检索增强生成)架构的 Agent 驱动智能知识库系统。它将语义搜索与 LLM 驱动的对话 AI 相结合,支持自然语言与文档库交互。内置的 ReAct Agent 能够自主搜索、检索和摄入文档,准确高效地回答用户查询。

📚 配套课程资料:本项目附有完整的课程资料,从 FastAPI 基础到 LangGraph Agent 开发,循序渐进,适合 AI 应用开发初学者学习。课程文件包含详细教程、代码示例和学习指南。

🔑 关键词

Agent 应用开发、AI 应用开发、大语言模型应用、LLM 应用、RAG 应用、知识库系统、智能问答系统、语义搜索、向量数据库、FastAPI、LangChain、LangGraph、ReAct Agent

✨ 核心优势

  • 🚀 高性能:基于 FastAPI 和 Milvus 向量数据库,支持高并发检索
  • 🤖 Agent 驱动:LangGraph ReAct Agent,具备工具调用能力,自主操作知识库
  • 💬 对话式 AI:支持多轮对话,通过 SSE 流式输出,兼容 OpenAI 接口的 LLM
  • 🌐 多语言支持:支持中文、英文、斯瓦希里语等多种语言
  • 📚 多格式支持:支持 PDF、DOCX、Markdown、TXT 等常见文档格式
  • 🔒 企业级安全:提供 API Key 认证、数据加密等安全特性
  • 📊 可扩展:模块化设计,支持灵活扩展和定制

🎯 功能特性

🤖 Agent 对话

  • 💬 自然语言对话:通过 POST /api/v1/chat 与知识库对话交互
  • 🔧 工具调用:Agent 自主调用搜索、统计、文本入录等工具完成用户需求
  • 🔄 多轮对话:基于 PostgreSQL Checkpoint 持久化对话状态(thread_id)
  • ⚡ 流式 SSE:实时 token 级流式输出,即时响应
  • 🔌 灵活 LLM:兼容 OpenAI、DeepSeek、Qwen、vLLM 等所有 OpenAI 兼容接口

📚 文档管理

  • 📥 批量上传:支持同时批量摄入多个文档
  • 🏷️ 元数据管理:全面的元数据跟踪,包括作者、集合、创建日期
  • 🔄 版本控制:跟踪文档修订,维护历史版本
  • 📁 自动分类:基于内容和元数据的自动分类

🔍 智能检索

  • 🧠 语义搜索:上下文感知搜索,超越关键词匹配理解用户意图
  • 🔍 过滤搜索:按文档类型、作者、集合、日期范围进行高级过滤
  • 📊 结果排序:基于相关度得分、时效性和用户反馈的智能排序
  • 📈 搜索分析:跟踪搜索模式,识别知识缺口

🏗️ 企业级架构

  • 📦 可扩展存储:Milvus 集群支持,适用于大容量文档库
  • 🔄 分布式处理:异步文档处理管道,支持大规模摄入
  • 🛡️ 高可用性:冗余组件和故障转移机制,确保关键操作的可靠性
  • 🔒 安全可靠:API Key 认证、数据加密(静态和传输中)

📸 API 文档预览

CaraBot 提供完整的 FastAPI Swagger UI 文档界面,你可以在 http://localhost:8000/docs 访问交互式 API 文档,直接在浏览器中测试所有 API 端点。

🚀 快速开始

📋 环境要求

  • 🐍 Python 3.10+
  • 🐳 Docker 和 Docker Compose(用于基础设施组件)
  • 💾 最低 8GB RAM(生产环境建议 16GB)

📦 安装步骤

1. 克隆项目
git clone https://github.com/zhao111222333/carabot.git
cd carabot
2. 配置环境变量
# 复制并编辑环境变量文件
cp .env.example .env
# 编辑 .env —— 至少需要将 API_KEY 修改为安全的值
3. 启动基础设施
docker-compose up -d postgres redis milvus-standalone etcd minio
4. 初始化数据库
pip install -r requirements.txt
python scripts/init_db.py
5. 启动应用
uvicorn src.app.main:create_app --factory --host 0.0.0.0 --port 8000 --reload
6. 验证服务
curl http://localhost:8000/health

🏗️ 架构概述

核心架构

  • 用户 → API 网关 → 认证中间件 → 接口层
  • 接口层:Chat 对话接口、文档管理服务、搜索接口、统计接口
  • Agent 层:LangGraph Agent 调用 LLM 提供者和工具
  • 工具层:搜索服务、统计服务、上传服务
  • 数据层:PostgreSQL(元数据)、Milvus/Chroma(向量数据库)

🧩 技术栈

组件 技术栈 说明
Web 框架 FastAPI 高性能异步 Web 框架
Agent 框架 LangGraph ReAct Agent 状态图编排 + Checkpoint 持久化
LLM 集成 OpenAI 兼容接口 支持 OpenAI、DeepSeek、Qwen、vLLM 等
向量数据库 Milvus/Chroma 生产级向量数据库/开发级向量数据库
关系数据库 PostgreSQL 企业级关系数据库 + Agent 对话 Checkpoint
缓存 Redis 高性能缓存系统
向量嵌入 BGE-M3 多语言向量嵌入模型
文档处理 PyPDF2、python-docx 多格式文档解析
容器化 Docker、Kubernetes 容器化部署和编排

📊 应用场景

🏢 企业知识管理

  • 📚 内部 Wiki:公司政策、流程和最佳实践的集中存储库
  • 👥 员工入职:新员工文档和培训材料
  • 📝 技术文档:软件开发指南、API 文档、故障排除手册
  • 📈 销售支持:产品手册、案例研究、竞争情报

📊 金融服务

  • 📄 文档管理:贷款协议、合规文档、监管申报
  • 📊 研究报告:市场分析、投资研究、客户演示
  • 🏦 政策检索:保险政策、理赔流程、保障信息

⚖️ 法律与合规

  • 📜 合同管理:按条款、合作方或义务搜索和审查合同
  • 📊 合规跟踪:跟踪合规要求和审计文档
  • 📚 判例法研究:法律先例、法院裁决和法规参考

🤝 贡献指南

我们欢迎任何形式的贡献!请参阅 贡献指南 获取更多信息。

📝 提交代码

  1. Fork 项目
  2. 创建特性分支 (git checkout -b feature/AmazingFeature)
  3. 提交更改 (git commit -m 'Add some AmazingFeature')
  4. 推送到分支 (git push origin feature/AmazingFeature)
  5. 打开 Pull Request

🐛 报告问题

请使用 GitHub Issues 报告问题或提出建议。

📄 许可证

本项目采用 MIT 许可证 - 请参阅 LICENSE 文件了解详情。

🙏 致谢

⭐ Star History

Star History Chart

📞 联系方式


Made with ❤️ by the CaraBot Team

评论

暂无评论