综合介绍
Minima 是一个开源项目,旨在提供一个完全本地化的检索增强生成(RAG)工具。用户可以通过 Minima 与本地文件进行对话,支持两种模式:完全本地安装和自定义 GPT 模式。该项目使用 Docker 进行部署,支持多种文件格式的索引和查询,包括 PDF、XLS、DOCX、TXT、MD 和 CSV。Minima 采用 Mozilla 公共许可证 v2.0(MPLv2)发布,确保用户在使用和修改代码时的自由度。
功能列表
- 本地文件对话:通过本地安装的方式,与本地文件进行对话。
- 自定义 GPT 模式:使用自定义 GPT 模型查询本地文件。
- 多文件格式支持:支持 PDF、XLS、DOCX、TXT、MD 和 CSV 文件的索引和查询。
- Docker 部署:通过 Docker 进行快速部署和管理。
- 环境变量配置:通过 .env 文件配置环境变量,灵活设置文件路径和模型参数。
- 递归索引:支持文件夹内所有子文件夹和文件的递归索引。
使用帮助
安装流程
- 克隆项目:从 GitHub 克隆 Minima 项目到本地。
git clone https://github.com/dmayboroda/minima.git
cd minima
- 配置环境变量:在项目根目录下创建 .env 文件,并复制 .env.sample 文件中的内容到 .env 文件中,设置相关变量。
cp .env.sample .env
需要配置的变量包括:
LOCAL_FILES_PATH
:指定要索引的文件夹路径。EMBEDDING_MODEL_ID
:指定使用的嵌入模型。EMBEDDING_SIZE
:设置嵌入维度。START_INDEXING
:初次启动时设置为true
以开始索引。USER_ID
和PASSWORD
:用于自定义 GPT 模式的用户认证。
- 启动 Docker 容器:
- 完全本地安装:
bash
docker compose -f docker-compose-ollama.yml --env-file .env up --build
- 自定义 GPT 模式:
bash
docker compose --env-file .env up --build
- 完全本地安装:
使用流程
- 本地文件对话:
- 连接到本地服务器:
ws://localhost:8003/llm/
- 开始与本地文件进行对话,查询文件内容。
- 自定义 GPT 模式:
- 启动 Docker 容器后,从终端复制 OTP 并使用 Minima GPT 进行查询。
- 提出问题,Minima 将基于本地文件内容提供答案。
详细功能操作
- 文件索引:启动容器后,Minima 会自动索引指定文件夹内的所有文件。索引过程是递归的,所有子文件夹内的文件也会被索引。
- 查询文件内容:用户可以通过 WebSocket 连接到本地服务器,发送查询请求,Minima 会返回基于文件内容的答案。
- 环境变量配置:用户可以通过修改 .env 文件中的变量,灵活调整 Minima 的配置,如更改文件路径、嵌入模型等。