《自托管AI套件安装与配置指南》
1. 项目基础介绍
本项目是一个开源的自托管AI套件,它提供了一个基于Docker的模板,可以快速搭建一个功能完备的本地AI和低代码开发环境。这个环境包括Ollama(用于本地大型语言模型的平台)、Open WebUI(用于与N8N代理进行交互的聊天界面)、Supabase(作为数据库、向量存储和认证服务)等。本项目是Cole的版本,包含了一些改进和额外添加的Supabase、Open WebUI、Flowise、SearXNG和Caddy等工具。
项目主要使用Python进行配置脚本的编写,使用Docker来容器化服务。
2. 关键技术和框架
- Docker: 用于容器化应用,确保服务的隔离和一致性。
- n8n: 一个基于Node.js的低代码平台,提供了超过400个集成和先进的AI组件。
- Supabase: 一个开源的数据库即服务解决方案,广泛用于AI代理。
- Ollama: 一个跨平台的LLM平台,用于安装和运行最新的本地大型语言模型。
- Open WebUI: 类似ChatGPT的界面,用于私人与本地模型和N8N代理进行交互。
- Flowise: 一个无需或低代码的AI代理构建器,与n8n配合使用效果很好。
- Qdrant: 一个开源的高性能向量存储,提供了全面的API。
- SearXNG: 一个开源的免费互联网元搜索引擎,聚合了229个搜索服务的结果。
- Caddy: 一个用于自定义域名的HTTPS/TLS管理的工具。
3. 安装和配置
准备工作
在开始之前,请确保已经安装以下软件:
- Python: 用于运行设置脚本。
- Git/GitHub Desktop: 用于轻松管理仓库。
- Docker/Docker Desktop: 用于运行所有服务。
安装步骤
-
克隆仓库并导航到项目目录:
git clone https://github.com/coleam00/local-ai-packaged.git cd local-ai-packaged
-
在运行服务之前,需要根据Supabase的自托管指南设置环境变量。复制
.env.example
文件并将其重命名为.env
,在项目根目录中设置以下必需的环境变量:# N8N 配置 N8N_ENCRYPTION_KEY= N8N_USER_MANAGEMENT_JWT_SECRET= # Supabase 密钥 POSTGRES_PASSWORD= JWT_SECRET= ANON_KEY= SERVICE_ROLE_KEY= DASHBOARD_USERNAME= DASHBOARD_PASSWORD= POOLER_TENANT_ID=
请确保为所有密钥生成安全的随机值。不要在生成环境中使用示例值。
-
根据是否部署到生产环境,设置以下环境变量(否则留空):
# Caddy 配置 N8N_HOSTNAME=n8n.yourdomain.com WEBUI_HOSTNAME=:openwebui.yourdomain.com FLOWISE_HOSTNAME=:flowise.yourdomain.com SUPABASE_HOSTNAME=:supabase.yourdomain.com OLLAMA_HOSTNAME=:ollama.yourdomain.com SEARXNG_HOSTNAME=searxng.yourdomain.com LETSENCRYPT_EMAIL=your-email-address
-
项目中包含一个
start_services.py
脚本,用于启动Supabase和本地AI服务。脚本接受一个--profile
标志,用于指定GPU配置。根据你的GPU类型运行以下命令之一:
-
对于Nvidia GPU用户:
python start_services.py --profile gpu-nvidia
-
对于AMD GPU用户:
python start_services.py --profile gpu-amd
-
对于Mac/Apple Silicon用户:
如果你在使用带有M1或更新处理器的Mac,无法将GPU暴露给Docker实例。这种情况下有两个选项:
-
完全在CPU上运行启动套件:
python start_services.py --profile cpu
-
在你的Mac上运行Ollama,然后从n8n实例连接:
python start_services.py --profile none
如果你在Mac上本地运行Ollama,请查看Ollama主页上的安装说明。
-
-
-
如果在本地运行Ollama,需要修改n8n服务配置中的OLLAMA_HOST环境变量。更新Docker Compose文件中的x-n8n部分如下:
x-n8n: &service-n8n # ... 其他配置 ... environment: # ... 其他环境变量 ... - OLLAMA_HOST=host.docker.internal:11434
在看到“Editor is now accessible via: http://localhost:5678/”后,访问
http://localhost:5678/home/credentials
,点击“Local Ollama service”,将基础URL更改为http://host.docker.internal:11434/
。 -
对于其他人:
python start_services.py --profile cpu
注意事项
- 确保在使用Docker之前已经正确配置了GPU,如果是Mac用户,可能需要特殊处理。
- 所有环境变量的值都需要预先设置好,确保安全性和正确性。
- 根据实际情况调整Caddy配置文件中的域名和端口。
以上步骤为项目的详细安装和配置指南,按照这些步骤操作,可以帮助你成功搭建和运行自托管AI套件。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考