# dmx123 **Repository Path**: leeooaa/dmx123 ## Basic Information - **Project Name**: dmx123 - **Description**: 12311111111 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-07-30 - **Last Updated**: 2025-08-18 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 文档问答系统 ## 项目概述 这是一个基于本地模型和向量数据库的文档问答系统,支持文档上传、分块、编码、向量存储和检索,以及基于检索结果的智能问答。 ## 功能特点 - **文档处理**:支持PDF、TXT、MD、DOCX、DOC等多种格式文档的上传和处理 - **智能分块**:基于内容结构智能分割文档,保留语义完整性 - **向量存储**:使用Chroma DB存储文档向量,支持高效检索 - **本地模型**:集成Ollama客户端,支持本地大模型调用 - **RAG增强**:结合检索结果和本地模型,提供准确的问答服务 - **网页控制台**:提供直观的用户界面,方便交互和管理 ## 安装指南 1. 克隆或下载项目到本地 2. 安装依赖包 ```bash pip install -r requirements.txt ``` 3. 安装并配置Ollama - 访问 [Ollama官网](https://ollama.com/) 下载并安装Ollama - 拉取所需模型,例如: ```bash ollama pull qwen3-30b-a3b-2507-thinking:256k ollama pull bge-m3 ``` - 启动Ollama服务: ```bash ollama serve ``` 4. 初始化向量数据库 - 运行 `reg_retrieval.py` 初始化向量数据库 ```bash python reg_retrieval.py ``` ## 使用说明 1. 启动网页控制台 ```bash streamlit run web_console.py --server.headless=true ``` - `--server.headless=true`参数表示以无头模式运行,适合在没有图形界面的服务器环境中使用 2. 系统会自动初始化向量数据库和Ollama客户端 3. 在文本框中输入您的问题,点击"提交"按钮 4. 系统会检索向量数据库,并结合本地模型生成答案 5. 查看答案和相关参考来源 ## 项目结构 ``` ├── document_chunking.py # 文档分块处理 ├── document_processor.py # 文档处理(格式转换、内容提取等) ├── Chromadbtest.py # Chroma DB测试代码 ├── ollamaclienttest.py # Ollama客户端实现 ├── reg_retrieval.py # 向量数据库检索和RAG实现 ├── web_console.py # 网页控制台客户端 ├── requirements.txt # 项目依赖 └── README.md # 项目说明 ``` ## 注意事项 1. 确保Ollama服务正在运行 - 默认情况下,Ollama服务运行在端口11434上 - 如果您的Ollama服务使用不同的端口,请在网页控制台的侧边栏中修改"Ollama服务端口"配置 2. 首次运行可能需要下载模型,耗时较长,请耐心等待 3. 根据您的硬件配置,可能需要调整模型参数以获得更好的性能 4. 系统支持的文档格式包括:PDF、TXT、MD、DOCX、DOC