kotaemon

2025-09-11

ai

生命不等于是呼吸,生命是活动。——卢梭

https://github.com/Cinnamon/kotaemon

Kotaemon:开源RAG聊天神器,让你的文档变成“会答题”的智能体

在AI与大模型蓬勃发展的今天,RAG(Retrieval-Augmented Generation,检索增强生成)技术已经成为“知识问答”领域的热门。你是否曾想过,能不能像ChatGPT一样,直接“和自己的文档聊天”?无论是PDF、Word、表格还是PPT,随时提问,让AI帮你找答案、做摘要、智能检索?

这,就是 Kotaemon 要解决的问题!
Kotaemon 是一个开源、可定制、极简UI的RAG工具,让你随时随地“和自己的资料对话”,支持本地和云端大模型,既适合小白用户也适合AI开发者二次开发。


项目定位:文档聊天的RAG一站式解决方案

Kotaemon 的定位非常清晰:
开源、支持多模型、极简界面的文档聊天工具和开发框架。

  • 你可以像用ChatGPT那样,对自己的文件提问,得到准确、有出处的答案。
  • 开发者可以用它做RAG管线的快速原型/定制开发。
  • 支持多用户、私有/公共文件管理、API对接等,既能独立部署也能嵌入业务系统。

Preview


功能亮点一览

对终端用户:

  • 简洁极致的Web UI,支持多种文件类型(PDF、HTML、Excel等)。
  • 支持主流大模型(如OpenAI、Azure、Cohere、Ollama本地模型等),API密钥一键配置。
  • 多用户管理,文件分组,聊天记录与收藏共享。
  • 多模态支持:图片、表格、图表都能检索、问答。
  • 答案自动“引用”出处,保证可追溯性和准确性。
  • 多种推理方式:支持多步推理(如ReAct、ReWOO等智能体)。
  • 支持本地部署,数据安全隐私有保障。

对开发者:

  • 内置RAG管线框架,轻松定制文档检索/问答流程。
  • UI基于Gradio,易于二次开发和扩展。
  • 支持多种文档存储和向量数据库(Elasticsearch、ChromaDB、LanceDB等)。
  • 可插拔式推理管线、索引策略,支持自定义agent和retriever。
  • API接口丰富,易集成到自有平台或产品。
  • 支持Docker一键部署、Colab在线体验,开发、测试、生产全流程友好。

极速安装体验

Docker部署推荐(适合无开发基础用户):

1
2
3
4
5
6
docker run \
-e GRADIO_SERVER_NAME=0.0.0.0 \
-e GRADIO_SERVER_PORT=7860 \
-v ./ktem_app_data:/app/ktem_app_data \
-p 7860:7860 -it --rm \
ghcr.io/cinnamon/kotaemon:main-full

运行后,浏览器访问 http://localhost:7860 即可使用。

Python源码部署(开发者友好):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# 创建环境
conda create -n kotaemon python=3.10
conda activate kotaemon

# 克隆源码
git clone https://github.com/Cinnamon/kotaemon
cd kotaemon

# 安装依赖
pip install -e "libs/kotaemon[all]"
pip install -e "libs/ktem"

# 启动服务
python app.py

默认用户名、密码都是 admin,支持在UI添加新用户。


配置与定制:多模型、多存储、多推理

模型API密钥配置举例(.env 文件):

1
2
3
4
OPENAI_API_BASE=https://api.openai.com/v1
OPENAI_API_KEY=<your OpenAI API key here>
OPENAI_CHAT_MODEL=gpt-3.5-turbo
OPENAI_EMBEDDINGS_MODEL=text-embedding-ada-002

本地模型也支持,如 Ollama:

1
2
ollama pull llama3.1:8b
ollama pull nomic-embed-text

在Web UI里直接选择模型即可。

定制RAG推理管线(flowsettings.py):

1
2
3
4
5
6
7
8
9
10
11
12
# 文档存储配置
KH_DOCSTORE = (Elasticsearch | LanceDB | SimpleFileDocumentStore)
# 向量数据库配置
KH_VECTORSTORE = (ChromaDB | LanceDB | InMemory | Milvus | Qdrant)
# 启用多模态问答
KH_REASONINGS_USE_MULTIMODAL = True
# 推理流程
KH_REASONINGS = [
"ktem.reasoning.simple.FullQAPipeline",
"ktem.reasoning.react.ReactAgentPipeline", # ReAct智能体
"ktem.reasoning.rewoo.RewooAgentPipeline", # ReWOO智能体
]

自定义聊天机器人示例:

1
2
3
4
5
6
7
8
9
from kotaemon import KotaemonApp

app = KotaemonApp(
doc_store="SimpleFileDocumentStore",
vector_store="ChromaDB",
llm_provider="OpenAI",
retrieval_mode="hybrid" # 混合检索模式
)
app.run()

典型应用场景

  • 企业内部知识库问答:将公司文档/合同/产品手册喂给Kotaemon,员工随时提问,智能检索与答案溯源。
  • 学术资料智能检索:论文、教材、笔记、图表一站式问答,支持复杂推理与多模态内容。
  • 个人云文档助手:私人云盘资料随时“聊天”,自动引用出处,查找快人一步。
  • 开发者RAG管线原型:快速搭建和测试自己的检索与生成流程,支持多种数据库和大模型对接。
  • 团队协作与共享:多用户管理、聊天收藏共享,支持协同筛查重要信息。

技术亮点

  • 极简UI/UX体验:无门槛操作,轻松上手,暗黑模式支持。
  • 多模态问答能力:不仅能处理文本,还能智能解析图片、表格、图表等。
  • 混合检索与高质量召回:结合全文检索与向量检索,自动重排序,确保检索准确性。
  • 复杂推理能力:支持多步推理、agent驱动(如ReAct、ReWOO),应对复杂问答。
  • 高度可扩展性:模块化设计,支持自定义管线、数据库、模型和UI组件。

社区与生态

Kotaemon 已有超过2万Star、上千Fork,持续活跃开发中。
支持 HuggingFace Spaces 在线体验,官方文档详尽,反馈与贡献渠道畅通。主页


总结:让你的知识库“活起来”

Kotaemon 让“和文档聊天”变成现实,无论你是终端用户,还是AI开发者,都能在这套开源RAG框架里找到属于自己的答案。
本地/云端部署,数据安全,功能强大且高度可定制,是打造智能文档助手的首选。

赶快试试 Kotaemon,让你的知识库活起来,AI帮你答题、查找、推理、溯源,效率提升不是一点点!

官网/文档:https://cinnamon.github.io/kotaemon/
开源地址:https://github.com/Cinnamon/kotaemon
在线体验:HuggingFace Spaces