NishaVijai/streamlit-rag-data-analyst
GitHub: NishaVijai/streamlit-rag-data-analyst
基于 Streamlit 和 RAG 技术构建的 AI 数据分析应用,支持用户用自然语言对 CSV 数据集提问并获得结构化的商业洞察与可视化推荐。
Stars: 0 | Forks: 0
# 📊 Streamlit RAG 数据分析师
## ✨ 功能
- 📂 上传您自己的 CSV 数据集
- 📦 预加载示例数据集,方便即时测试
- 📈 交互式数据集可视化 (Plotly)
- 🔎 检索增强生成 (RAG) 上下文过滤
- 🧠 AI 驱动的商业分析 (GPT-4.1 Mini / LLaMA 3)
- ⚠️ 风险检测与异常洞察
- 💡 机遇识别
- 💬 与您的数据集聊天
- 🛡️ Prompt 注入防护层
- ⚡ 缓存数据集加载以优化性能
- 📊 可展开的数据集浏览器
## 🧠 工作原理 (RAG Pipeline)
1. 用户上传或选择一个数据集
2. 用户提出自然语言问题
3. 系统使用轻量级 RAG 逻辑检索相关行
4. 检索到的上下文被注入到 LLM prompt 中
5. LLM 返回结构化的商业洞察
## 📊 输出格式
AI 以结构化格式进行回复:
- 📌 **洞察** → 关键趋势、模式
- ⚠️ **风险** → 异常、下降、隐患
- 💡 **机遇** → 增长信号
- 📈 **推荐图表** → 最佳可视化方案
## 📂 默认数据集
如果未上传文件,应用将加载:
- `sales.csv`
您可以通过上传自己的 CSV 文件来覆盖它。
## 🛠️ 本地运行
git clone https://github.com/your-username/streamlit-rag-data-analyst.git
cd streamlit-rag-data-analyst
pip install -r requirements.txt
streamlit run streamlit_rag_analysis_prompt_app.py
## 🔐 环境变量
为本地开发创建一个 `.env` 文件:
GITHUB_TOKEN_GPT_MINI=your_token_here
GITHUB_TOKEN_LLAMA_INSTRUCT=your_token_here
## 🧰 技术栈
- Streamlit
- Pandas
- Plotly
- PyYAML
- Requests
- GitHub Models API
- GPT-4.1 Mini
- LLaMA 3 70B
## 🛡️ 安全功能
- Prompt 注入检测层
- 系统 prompt 隔离
- 安全上下文注入
- 安全上下文构建器 (防止 LLM 过载)
- 基于 RAG 的受控数据检索
- API 故障处理与回退安全机制
## 📌 说明
- 本项目专为商业分析用例设计
- 最适合结构化的 CSV 数据集
- 针对中小型数据集进行了优化 (建议 < 5MB)
## ✨ 功能
- 📂 上传您自己的 CSV 数据集
- 📦 预加载示例数据集,方便即时测试
- 📈 交互式数据集可视化 (Plotly)
- 🔎 检索增强生成 (RAG) 上下文过滤
- 🧠 AI 驱动的商业分析 (GPT-4.1 Mini / LLaMA 3)
- ⚠️ 风险检测与异常洞察
- 💡 机遇识别
- 💬 与您的数据集聊天
- 🛡️ Prompt 注入防护层
- ⚡ 缓存数据集加载以优化性能
- 📊 可展开的数据集浏览器
## 🧠 工作原理 (RAG Pipeline)
1. 用户上传或选择一个数据集
2. 用户提出自然语言问题
3. 系统使用轻量级 RAG 逻辑检索相关行
4. 检索到的上下文被注入到 LLM prompt 中
5. LLM 返回结构化的商业洞察
## 📊 输出格式
AI 以结构化格式进行回复:
- 📌 **洞察** → 关键趋势、模式
- ⚠️ **风险** → 异常、下降、隐患
- 💡 **机遇** → 增长信号
- 📈 **推荐图表** → 最佳可视化方案
## 📂 默认数据集
如果未上传文件,应用将加载:
- `sales.csv`
您可以通过上传自己的 CSV 文件来覆盖它。
## 🛠️ 本地运行
git clone https://github.com/your-username/streamlit-rag-data-analyst.git
cd streamlit-rag-data-analyst
pip install -r requirements.txt
streamlit run streamlit_rag_analysis_prompt_app.py
## 🔐 环境变量
为本地开发创建一个 `.env` 文件:
GITHUB_TOKEN_GPT_MINI=your_token_here
GITHUB_TOKEN_LLAMA_INSTRUCT=your_token_here
## 🧰 技术栈
- Streamlit
- Pandas
- Plotly
- PyYAML
- Requests
- GitHub Models API
- GPT-4.1 Mini
- LLaMA 3 70B
## 🛡️ 安全功能
- Prompt 注入检测层
- 系统 prompt 隔离
- 安全上下文注入
- 安全上下文构建器 (防止 LLM 过载)
- 基于 RAG 的受控数据检索
- API 故障处理与回退安全机制
## 📌 说明
- 本项目专为商业分析用例设计
- 最适合结构化的 CSV 数据集
- 针对中小型数据集进行了优化 (建议 < 5MB)标签:DLL 劫持, Kubernetes, LLM, RAG, Streamlit, Unmanaged PE, 代码示例, 商业智能, 大语言模型, 恶意代码分类, 数据分析, 访问控制, 逆向工具