手動安裝
使用 Docker Compose 手動部署 PentAGI — 建立工作目錄、填寫 .env 檔案、新增 LLM provider 並啟動堆疊。
當您需要完全掌控設定,或無法執行互動式安裝程式時,請採用手動安裝方式。
1. 建立工作目錄
mkdir -p ~/pentagi && cd ~/pentagi2. 下載環境檔案
test -f .env || curl -fo .env.new https://raw.githubusercontent.com/vxcontrol/pentagi/main/.env.example
test -f .env.new && openssl rand -hex 32 | xargs -I VALUE sed -E -i.bak 's/^COOKIE_SIGNING_SALT=salt( .*)?$/COOKIE_SIGNING_SALT=VALUE/' .env.new
test -f .env.new && openssl rand -hex 16 | xargs -I VALUE sed -E -i.bak 's/^PENTAGI_POSTGRES_PASSWORD=postgres( .*)?$/PENTAGI_POSTGRES_PASSWORD=VALUE/' .env.new
test -f .env || mv .env.new .envCompose 檔案會掛載三個 providerprovider — 提供者為 PentAGI 提供語言模型的服務或伺服器,例如 OpenAI、Anthropic 或本機 Ollama。 組態檔,因此請先建立這些檔案(空白檔案即可):
touch example.custom.provider.yml example.ollama.provider.yml example.bedrock.provider.yml若您打算使用自訂的 OpenAI 相容端點或 Ollama,請改為取得範例組態檔而非空白檔案,並將 .env 中的 LLM_ 或 OLLAMA_ 指向 / 或 /。該自訂範例指名了 OpenAI 模型,其中包括 o3-mini(OpenAI 將於 2026 年 10 月 23 日停用)— 請將每個 agentagent — 代理PentAGI 的 AI 代理:擁有專屬提示詞、設定與工具的模型,在流程中執行特定類型的工作,例如測試、撰寫程式碼或搜尋網路。 的 model 設為您的端點所支援的模型:
curl -o example.custom.provider.yml https://raw.githubusercontent.com/vxcontrol/pentagi/main/examples/configs/custom-openai.provider.yml
curl -o example.ollama.provider.yml https://raw.githubusercontent.com/vxcontrol/pentagi/main/examples/configs/ollama-llama318b.provider.yml3. 新增至少一個 LLM provider
編輯 .env 並設定至少一個 provider 的金鑰:
OPEN_AI_KEY=your_openai_key
ANTHROPIC_API_KEY=your_anthropic_key
GEMINI_API_KEY=your_gemini_key其他 providers(AWS Bedrock、Ollama、DeepSeek、GLM、Kimi、Qwen、MiniMax、Mistral、xAI 及自訂端點)說明於 LLM providers。Search enginessearch engine — 搜尋引擎代理用來收集最新資訊的網路搜尋服務,例如 DuckDuckGo、Google 或 Tavily。 為選用項目;DuckDuckGo 與 Sploitus 無需金鑰:
DUCKDUCKGO_ENABLED=true
SPLOITUS_ENABLED=true
TAVILY_API_KEY=your_tavily_key4. 啟動堆疊
curl -O https://raw.githubusercontent.com/vxcontrol/pentagi/main/docker-compose.yml
test -f .env && docker compose up -dWeb UI 可透過 https:/ 存取。請以 [email protected] / admin 登入並變更密碼。
網頁介面與其他服務皆綁定在 localhost,但每個 flowflow — 流程PentAGI 的一次執行:一個目標、從您的訊息建立的任務,以及代理在此過程中執行的所有操作。 的 sandboxsandbox — 沙盒代理執行工具的隔離 Docker 容器。介面中將其顯示為 Terminal。 會在 Docker 主機的每個介面上發布兩個回呼埠,預設範圍為 28000–29999,且 ufw 不會過濾這些埠。若其他使用者可以存取該主機,請先限制該範圍 — 請參閱 網路暴露。若要稍後更新安裝,請遵循 升級。
選用堆疊
每個選用服務皆以獨立的 Compose 檔案提供,您可將其疊加於基礎堆疊之上:
| 堆疊 | Compose 檔案 | 新增功能 |
|---|---|---|
| LLM 可觀測性 | docker-compose-langfuse.yml | Langfuse 搭配 ClickHouse、Redis 與 MinIO |
| Knowledge graphknowledge graph — 知識圖譜當啟用此選用功能時,PentAGI 在測試期間建立的主機、服務、弱點及其之間存取關係的圖譜。它顯示發現項目之間的關聯。 | docker-compose-graphiti.yml | Graphiti 與 Neo4j |
| 系統可觀測性 | docker-compose-observability.yml | Grafana、OpenTelemetry、VictoriaMetrics、Jaeger、Loki |
在生產環境或任何執行不受信任程式碼的環境中,請將 tooltool — 工具代理執行操作所用的手段:終端機、隔離瀏覽器或網路搜尋等內建功能,或沙盒中的程式,例如 nmap、metasploit 或 sqlmap。 容器隔離於專屬的 worker node 上。
最後更新於