一款使用自然语言构建RAG管道的Streamlit应用,让用户无需编写代码即可创建基于自己数据的ChatGPT式问答系统。
一分钟了解#
RAGs是一个基于Streamlit的应用程序,让你通过自然语言描述创建RAG(检索增强生成)管道。你可以描述任务(如"加载这个网页")和想要的参数(如"检索X个文档"),然后通过简单的界面配置和查询基于自己数据的AI助手。
核心价值:让非技术人员也能轻松构建专业级RAG应用,无需编程知识。
快速上手#
安装难度:中 - 需要Python环境和OpenAI API密钥,使用Poetry管理依赖
# 克隆项目
git clone https://github.com/run-llama/rags.git
cd rags
# 创建并激活虚拟环境
python3 -m venv .venv
source .venv/bin/activate
# 安装依赖
poetry install --with dev
创建配置文件并添加API密钥 在项目根目录创建
.streamlit/secrets.toml文件,添加以下内容:openai_key = "<你的OpenAI API密钥>"
启动应用
streamlit run 1_🏠_Home.py
适合我的场景吗?
- ✅ 知识库问答:创建基于公司文档、产品手册的智能问答系统
- ✅ 内容分析:分析网页内容并回答相关问题
- ❌ 需要高度自定义的复杂应用:此工具更注重易用性而非高级定制
- ❌ 完全离线使用:默认需要OpenAI API,无法完全离线运行
核心能力#
1. 自然语言RAG管道构建 - 无需编写代码#
- 通过简单的自然语言描述(如"加载这个PDF并回答问题")来构建完整的RAG系统 实际价值:降低技术门槛,让业务人员也能快速构建专业级AI应用
2. 智能参数配置 - 自动生成与手动调整#
- 系统根据你的描述自动生成RAG参数(如Top-K、分块大小等),同时支持手动调整 实际价值:平衡自动化控制与个性化需求,无需理解复杂参数也能优化结果
3. 多模型支持 - 灵活选择LLM和嵌入模型#
- 支持OpenAI、Anthropic、Replicate、Hugging Face等多种LLM和嵌入模型 实际价值:可根据成本、性能和隐私需求灵活切换后端模型
4. 交互式聊天界面 - 直观的数据查询#
- 提供标准聊天界面,可实时查询RAG代理并获得基于数据的回答 实际价值:用户体验自然,无需学习新工具即可与自己的数据对话
技术栈与集成#
开发语言:Python 主要依赖:
- Streamlit:构建用户界面
- LlamaIndex:RAG核心框架
- OpenAI API:默认LLM服务
集成方式:应用/工具
维护状态#
- 开发活跃度:活跃开发中,基于LlamaIndex构建
- 最近更新:近期有更新,项目相对较新
- 社区响应:有GitHub问题和Discord社区支持
文档与学习资源#
- 文档质量:全面
- 官方文档:README.md
- 示例代码:包含安装和设置示例,以及详细的功能概述