本機模型
在您自己的硬體上託管模型並執行 PentAGI,讓 prompt、tool output 與 finding 都保留在您的伺服器上。
PentAGI 可以完全在您自行託管的模型上執行。agentagent — 代理PentAGI 的 AI 代理:擁有專屬提示詞、設定與工具的模型,在流程中執行特定類型的工作,例如測試、撰寫程式碼或搜尋網路。 的提示詞、它們讀取的工具輸出以及它們報告的 findingfinding — 發現項目測試期間發現並記錄的內容,例如主機、運行中的服務或弱點。 都會保留在您的伺服器上,而一個長 flowflow — 流程PentAGI 的一次執行:一個目標、從您的訊息建立的任務,以及代理在此過程中執行的所有操作。 的成本是 GPU 時間而非 token。支援兩種類型的模型伺服器:Ollama(設定最快速)以及 vLLM 或任何其他具有 OpenAI 相容 API 的伺服器(以獲得更高的吞吐量)。
Ollama
在 .env 中將 PentAGI 指向 Ollama 伺服器:
OLLAMA_SERVER_URL=http://ollama-server:11434
OLLAMA_SERVER_CONFIG_PATH=/opt/pentagi/conf/ollama-qwen332b-fp16-tc.provider.yml
OLLAMA_SERVER_PULL_MODELS_ENABLED=false # true downloads missing models at startup
OLLAMA_SERVER_LOAD_MODELS_ENABLED=false # true lists the models the server already has組態檔會為每個 agent typeagent type — 代理類型代理扮演的角色,例如 pentester、coder 或 searcher。模型設定是依據代理類型來選擇。 指派模型及其參數;若沒有該檔案,OLLAMA_ 會設定預設模型。映像檔在 / 中隨附了現成的組態,其中包括 ollama-qwen332b-fp16-tc.provider.yml 和 ollama-qwq32b-fp16-tc.provider.yml。
Ollama 的預設上下文視窗遠小於 flow 所需的大小:agent 通常使用約 64K token,而 PentAGI 設定為 110K。Ollama 僅在建立模型時設定上下文大小,因此請從 Modelfile 建構變體:
FROM qwen3:32b-fp16
PARAMETER num_ctx 110000
PARAMETER temperature 0.3
PARAMETER top_p 0.8
PARAMETER min_p 0.0
PARAMETER top_k 20
PARAMETER repeat_penalty 1.1ollama create qwen3:32b-fp16-tc -f ModelfilevLLM 和其他 OpenAI 相容伺服器
vLLM、LocalAI 和其他具有 OpenAI 相容 API 的伺服器可作為 自訂 provider 連接:
LLM_SERVER_URL=http://vllm-server:8000/v1
LLM_SERVER_KEY=local # any non-empty value when the server has no key
LLM_SERVER_MODEL=Qwen/Qwen3.6-27B-FP8
LLM_SERVER_CONFIG_PATH=/opt/pentagi/conf/vllm-qwen3.6-27b-fp8.provider.yml映像檔隨附了多個基於 vLLM 的 Qwen 建置組態;-no-think 變體會關閉推理功能。Agent 透過 tool calltool call — 工具呼叫模型要求執行代理其中一項工具的請求,例如終端機指令或網路搜尋。 進行工作,因此請使用針對您的模型推薦的 tool-call 解析器和 chat templatetemplate — 範本PentAGI 可重複使用的已儲存文字。儲存在 Templates 中的範本會填入新流程的第一則訊息;在 Enterprise 中,報告範本規定報告的章節及其順序,因此不同的範本會為客戶、工程師和管理層產生不同的文件。 啟動伺服器:若解析器錯誤,tool call 引數將會損毀,導致 flow 在幾個步驟後停止。
選擇模型
- 在組態檔中,將您最強大的模型提供給
primary_、agent pentester和adviser;較輕量的模型可用於服務searcher、enricher和摘要任務。 - 對於參數量低於 32B 的模型,請啟用 執行監控與 task 規劃。這大約能使結果品質加倍,但代價是 token 用量和時間增加兩到三倍。
- 規劃記憶體需求:例如,FP16 格式的 QwQ 32B 需要約 71 GB 的 GPU 記憶體。
保持其餘堆疊在本機
| 部分 | 設定 |
|---|---|
| Embeddings | EMBEDDING_ 搭配 EMBEDDING_ 中的 embedding 模型會使用相同的 Ollama 伺服器;本機 OpenAI 相容伺服器可搭配 EMBEDDING_ 使用,其位址位於 EMBEDDING_,且 EMBEDDING_ 需為非空值 |
| Web search | Search 會將 agent 的查詢傳送至網際網路。預設啟用 DuckDuckGo;使用 DUCKDUCKGO_ 將其關閉,並僅保留您接受的 engines,例如您自己的 SearXNG |
| Knowledge graphknowledge graph — 知識圖譜當啟用此選用功能時,PentAGI 在測試期間建立的主機、服務、弱點及其之間存取關係的圖譜。它顯示發現項目之間的關聯。 | 預設為關閉。啟用時,Graphiti 會呼叫 OpenAI,除非 GRAPHITI_ 將其導向 LLM_ 中的伺服器,並使用 EMBEDDING_ 中指定的模型(若為空則使用 text-embedding-3-small)向該伺服器請求嵌入向量。若該伺服器不提供該模型,請設定 GRAPHITI_:Graphiti 隨後會採用 PentAGI 所使用的 EMBEDDING_、EMBEDDING_ 和 EMBEDDING_ 值,且這些值必須指向一個與 OpenAI 相容的伺服器 — 請參閱 Knowledge graph |
| Observability | 隨附的 Langfuse 和 Grafana 堆疊會在您的主機上執行 — 請參閱 Observability |
| Update check | UPDATE_ 會將其關閉;Security 列出了它傳送的內容 |
| Images | Docker 會使用其自身的設定從 Docker Hub 拉取 sandboxsandbox — 沙盒代理執行工具的隔離 Docker 容器。介面中將其顯示為 Terminal。 映像檔;在封閉網路中,請將 Docker daemon 指向 registry mirror |
最後更新於