部署本地模型
使用 Ollama、Xinference 或其他框架部署和运行本地模型。
RAGFlow 与 Ollama 和 Xinference 无缝集成,无需进一步的环境配置。您可以使用它们在 RAGFlow 中部署两种类型的本地模型:聊天模型和嵌入模型。
使用 Ollama 部署本地 模型
Ollama 使您能够运行在本地部署的开源大语言模型。它将模型权重、配置和数据打包到一个由 Modelfile 定义的单一包中,并优化设置和配置,包括 GPU 使用。
note
- 有关下载 Ollama 的信息,请参阅此处。
- 有关支持的模型和变体的完整列表,请参阅 Ollama 模型库。
1. 使用 Docker 部署 Ollama
Ollama 可以从二进制文件安装或使用 Docker 部署。以下是使用 Docker 部署的说明:
$ docker run --name ollama -p 11434:11434 ollama/ollama
> time=2024-12-02T02:20:21.360Z level=INFO source=routes.go:1248 msg="Listening on [::]:11434 (version 0.4.6)"
> time=2024-12-02T02:20:21.360Z level=INFO source=common.go:49 msg="Dynamic LLM libraries" runners="[cpu cpu_avx cpu_avx2 cuda_v11 cuda_v12]"
确保 Ollama 在所有 IP 地址上监听:
$ sudo ss -tunlp | grep 11434 # MAC
$ netstat -ano | findstr :11434 # Windows
> tcp LISTEN 0 4096 0.0.0.0:11434 0.0.0.0:* users:(("docker-proxy",pid=794507,fd=4))
> tcp LISTEN 0 4096 [::]:11434 [::]:* users:(("docker-proxy",pid=794513,fd=4))
根据需要拉取模型。我们建议您从 llama3.2(3B 聊天模型)和 bge-m3(567M 嵌入模型)开始:
$ docker exec ollama ollama pull llama3.2
> pulling dde5aa3fc5ff... 100% ▕████████████████▏ 2.0 GB
> success
$ sudo docker exec ollama ollama pull bge-m3
> pulling daec91ffb5dd... 100% ▕████████████████▏ 1.2 GB
> success
2. 查找 Ollama URL 并确保其可访问
- 如果 RAGFlow 在 Docker 中运行,localhost 在 RAGFlow Docker 容器内映射为
host.docker.internal。如果 Ollama 在同一主机上运行,用于 Ollama 的正确 URL 将是http://host.docker.internal:11434/,您应该检查 Ollama 是否可以从 RAGFlow 容器内部访问:
$ sudo docker exec -it ragflow-server bash
$ curl http://host.docker.internal:11434/
> Ollama is running
- 如果 RAGFlow 从源代码启动,Ollama 与 RAGFlow 在同一主机上运行,请检查 Ollama 是否可以从 RAGFlow 的主机访问:
$ curl http://localhost:11434/
> Ollama is running
- 如果 RAGFlow 和 Ollama 在不同机器上运行,请检查 Ollama 是否可以从 RAGFlow 的主机访问:
$ curl http://${IP_OF_OLLAMA_MACHINE}:11434/
> Ollama is running
3. 添加 Ollama
在 RAGFlow 中,点击页面右上角的您的徽标 > 模型提供商,将 Ollama 添加到 RAGFlow:
4. 完成基本 Ollama 设置
在弹出窗口中,完成 Ollama 的基本设置:
- 确保您的模型名称和类型与步骤 1(使用 Docker 部署 Ollama)中拉取的模型匹配。例如,(
llama3.2和chat)或(bge-m3和embedding)。 - 在 Ollama 基础 URL 中,输入您在步骤 2 中找到的 URL即
http://host.docker.internal:11434、http://localhost:11434或http://${IP_OF_OLLAMA_MACHINE}:11434/v1。 - 可选:如果您的模型包含图像到文本模型,请打开是否支持视觉?下的切换开关。
警告
不当的基础 URL 设置将触发以下错误:
Max retries exceeded with url: /api/chat (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0xffff98b81ff0>: Failed to establish a new connection: [Errno 111] Connection refused'))
5. 更新系统模型设置
点击您的徽标 > 模型提供商 > 系统模型设置来更新您的模型:
- 您现在应该能够从聊天模型下的下拉列表中找到 llama3.2,从嵌入模型下的下拉列表中找到 bge-m3。
- 如果您的本地模型是嵌入模型,您应该在嵌入模型下找到它。
6. 更新聊天配置
在聊天配置中相应地更新您的模型。