开源项目local-ai-packaged使用教程
1. 项目目录结构及介绍
local-ai-packaged项目是一个开源的docker compose模板,旨在快速搭建一个功能齐全的本地AI和低代码开发环境。项目目录结构如下:
local-ai-packaged/
├── .github/
│ └── ISSUE_TEMPLATE/
├── assets/
├── flowise/
├── n8n-tool-workflows/
│ ├── backup/
│ └── workflows/
├── searxng/
├── .env.example
├── .gitattributes
├── .gitignore
├── Caddyfile
├── LICENSE
├── Local_RAG_AI_Agent_n8n_Workflow.json
├── README.md
├── docker-compose.yml
├── n8n_pipe.py
└── start_services.py
.github/
: 包含项目模板的issue模板。assets/
: 存放项目相关的资源文件。flowise/
: Flowise相关文件,是一个低代码AI代理构建器,与n8n配合使用。n8n-tool-workflows/
: 包含n8n的工作流文件。searxng/
: SearXNG相关文件,一个开源的免费互联网元搜索引擎。.env.example
: 配置文件的示例,需要用户根据实际情况修改后重命名为.env
。.gitattributes
: 定义git属性的文件。.gitignore
: 定义git忽略的文件列表。Caddyfile
: Caddy的配置文件,用于管理HTTPS/TLS。LICENSE
: 项目使用的Apache-2.0许可证文件。Local_RAG_AI_Agent_n8n_Workflow.json
: 本地RAG AI代理工作流文件。README.md
: 项目说明文件。docker-compose.yml
: docker compose配置文件,用于启动和配置项目中的所有服务。n8n_pipe.py
: n8n管道脚本。start_services.py
: 启动服务的Python脚本,包括 Supabase 和本地AI服务。
2. 项目的启动文件介绍
项目的启动文件是start_services.py
。该Python脚本负责启动项目中包含的所有服务。根据用户的GPU配置,可以选择不同的启动选项:
- 对于NVIDIA GPU用户:
python start_services.py --profile gpu-nvidia
- 对于AMD GPU用户(Linux系统):
python start_services.py --profile gpu-amd
- 对于Mac/Apple Silicon用户:根据是否有能力将GPU暴露给Docker实例,可以选择以下选项:
- 完全在CPU上运行:
python start_services.py --profile cpu
- 在Mac上本地运行Ollama,并从n8n实例连接:
python start_services.py --profile none
- 完全在CPU上运行:
3. 项目的配置文件介绍
项目的配置文件是.env.example
。用户需要根据自身需求修改该文件,并将其重命名为.env
。以下是配置文件中的一些重要环境变量:
N8N_ENCRYPTION_KEY
: n8n的加密密钥。N8N_USER_MANAGEMENT_JWT_SECRET
: n8n用户管理的JWT密钥。POSTGRES_PASSWORD
: Postgres数据库的密码。JWT_SECRET
: JWT密钥,用于Supabase。ANON_KEY
: Supabase的匿名密钥。SERVICE_ROLE_KEY
: Supabase的服务角色密钥。DASHBOARD_USERNAME
: Supabase仪表板的用户名。DASHBOARD_PASSWORD
: Supabase仪表板的密码。
此外,还有用于Caddy配置的变量,如N8N_HOSTNAME
、WEBUI_HOSTNAME
等,这些变量在部署到生产环境时需要设置,而在本地开发环境中可以保持注释状态。