# RAGProject **Repository Path**: wk1019591719/ragproject ## Basic Information - **Project Name**: RAGProject - **Description**: RAG智能食谱问答系统(LangChain) - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 6 - **Forks**: 0 - **Created**: 2025-08-17 - **Last Updated**: 2025-11-20 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # RAGProject ## 项目描述 这是一个基于检索增强生成(RAG)的食谱问答系统,旨在通过结合文档检索和自然语言处理技术来提供准确的食谱相关信息。系统支持多种功能,包括菜谱查询、食材列表获取、按类别搜索等。 ## 软件架构 该项目采用模块化设计,主要包含以下几个核心组件: - **数据准备模块**:负责文档加载、分块、过滤及元数据增强。 - **索引构建模块**:使用FAISS库创建并管理向量索引,以便高效地进行相似性搜索。 - **检索优化模块**:实现混合搜索策略,结合向量搜索与BM25算法以提高检索效果。 - **生成集成模块**:利用大语言模型生成自然流畅的答案,并支持流式输出。 - **配置管理**:通过`RAGConfig`类集中管理系统参数。 ## 安装指南 1. 克隆仓库到本地。 2. 确保已安装Python环境。 3. 安装uv - Windows: ```powershell powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex" ``` - Linux: ```bash curl -LsSf https://astral.sh/uv/install.sh | sh ``` 4. 下载相关依赖 ```bash uv init . -p 3.12.9 .\.venv\Scripts\activate uv add -r .\requirements.txt ``` 5. 根据需要调整`config.py`中的配置参数。 ## 使用说明 - 运行`main.py`启动交互式命令行界面。 - 可调用以下方法: - `ask_question`:提出关于食谱的问题。 - `search_by_category`:根据类别搜索食谱。 - `get_ingredients_list`:获取特定菜肴的所需材料列表。 - `run_interactive`:启动交互模式,便于连续提问。 ## 案例:酸辣土豆丝怎么做 ![image-20210924181321130](img/1.png) ![image-20210924181321130](img/2.png)