Modelli locali
Esegui PentAGI su modelli ospitati sul tuo hardware, così che prompt, output degli strumenti e finding rimangano sui tuoi server.
PentAGI può funzionare interamente con modelli che servi tu stesso. I prompt degli agentagent — agenteUn agente AI di PentAGI: un modello con il proprio prompt, impostazioni e strumenti che svolge un tipo di lavoro in un flow, come testare, scrivere codice o cercare sul web., l'output dei tooltool — strumentoCiò con cui un agente agisce: una funzionalità integrata come il terminale, il browser isolato o la ricerca web, oppure un programma nella sandbox come nmap, metasploit o sqlmap. che leggono e i findingfindingQualcosa che il test ha scoperto e registrato, come un host, un servizio in esecuzione o una vulnerabilità. che riportano rimangono sui tuoi server, e un flowflowUn'esecuzione di PentAGI: un obiettivo, i task creati dai tuoi messaggi e tutto ciò che gli agenti hanno fatto lungo il percorso. lungo costa tempo GPU invece di token. Sono supportati due tipi di server di modelli: Ollama, il più rapido da configurare, e vLLM o qualsiasi altro server con un'API compatibile con OpenAI, per un throughput più elevato.
Ollama
Indica a PentAGI il server Ollama in .env:
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 hasIl file di configurazione assegna un modello e i suoi parametri a ogni agent typeagent type — tipo di agenteIl ruolo che un agente ricopre, come pentester, coder o searcher. Le impostazioni del modello vengono scelte per tipo di agente.; senza di esso, OLLAMA_ imposta il modello predefinito. L'immagine include configurazioni pronte in /, tra cui ollama-qwen332b-fp16-tc.provider.yml e ollama-qwq32b-fp16-tc.provider.yml.
La finestra di contesto predefinita di Ollama è molto più piccola di quanto necessiti un flow: gli agent usano tipicamente circa 64K token, e PentAGI è configurato per 110K. Ollama imposta la dimensione del contesto solo quando crea un modello, quindi costruisci una variante da un 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 e altri server compatibili con OpenAI
vLLM, LocalAI e altri server con un'API compatibile con OpenAI si connettono come provider personalizzato:
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.ymlL'immagine include configurazioni per diverse build di Qwen su vLLM; le varianti -no-think disattivano il reasoning. Gli agent lavorano tramite tool calltool call — chiamata agli strumentiUna richiesta dal modello di eseguire uno degli strumenti dell'agente, come un comando terminale o una ricerca web., quindi avvia il server con il parser delle tool call e il templatetemplateTesto salvato che PentAGI riutilizza. Un template salvato in Templates compila il primo messaggio di un nuovo flow; in Enterprise, un template di report definisce le sezioni di un report e il loro ordine, così template diversi producono documenti diversi per il cliente, gli ingegneri e il management. di chat consigliati per il tuo modello: con un parser sbagliato, gli argomenti delle tool call arrivano corrotti e un flow si interrompe dopo pochi passi.
Scegliere un modello
- Assegna il tuo modello più potente a
primary_,agent pentestereadvisernel file di configurazione; quelli più leggeri possono serviresearcher,enrichere il riassunto. - Per modelli con meno di 32B di parametri, attiva monitoraggio dell'esecuzione e pianificazione dei task. Raddoppiano approssimativamente la qualità dei risultati al costo di due o tre volte più token e tempo.
- Pianifica la memoria: QwQ 32B in FP16, ad esempio, richiede circa 71 GB di memoria GPU.
Mantieni locale il resto dello stack
| Parte | Impostazione |
|---|---|
| Embedding | EMBEDDING_ con un modello di embedding in EMBEDDING_ usa lo stesso server Ollama; un server locale compatibile con OpenAI funziona con EMBEDDING_, il suo indirizzo in EMBEDDING_ e qualsiasi EMBEDDING_ non vuoto |
| Ricerca web | Search invia le query degli agent a internet. DuckDuckGo è attivo per impostazione predefinita; disattivalo con DUCKDUCKGO_ e mantieni solo i motori di ricerca che accetti, come il tuo SearXNG personale |
| Knowledge graphknowledge graph — grafo della conoscenzaIl grafo di host, servizi, vulnerabilità e degli accessi tra di essi che PentAGI costruisce durante un test quando questa funzionalità opzionale è abilitata. Mostra come i finding sono collegati. | Disattivato per impostazione predefinita. Quando è attivo, Graphiti chiama OpenAI a meno che GRAPHITI_ non lo invii al server in LLM_, al quale chiede poi anche gli embedding con il modello indicato in EMBEDDING_, oppure text-embedding-3-small quando questo è vuoto. Se quel server non fornisce quel modello, imposta GRAPHITI_: Graphiti usa allora EMBEDDING_, EMBEDDING_ e EMBEDDING_, i valori che PentAGI utilizza, e devono puntare a un server compatibile con OpenAI — vedi Knowledge graph |
| Osservabilità | Gli stack Langfuse e Grafana inclusi girano sul tuo host — vedi Osservabilità |
| Controllo aggiornamenti | UPDATE_ lo disattiva; Sicurezza elenca cosa invia |
| Immagini | Docker scarica le immagini della sandboxsandboxIl container Docker isolato in cui gli agenti eseguono i loro strumenti. L'interfaccia lo mostra come Terminal. da Docker Hub con le proprie impostazioni; in una rete chiusa, punta il demone Docker a un mirror del registry |
Ultimo aggiornamento il