Modèles locaux
Exécutez PentAGI sur des modèles hébergés sur votre propre matériel, afin que les prompts, les sorties d'outils et les findings restent sur vos serveurs.
PentAGI peut fonctionner entièrement avec des modèles que vous hébergez vous-même. Les prompts des agentsagentUn agent IA de PentAGI : un modèle avec son propre prompt, ses paramètres et ses outils, qui effectue un type de travail spécifique dans un flow, comme tester, écrire du code ou rechercher sur le web., la sortie des outils qu’ils lisent et les findingsfinding — constatQuelque chose que le test a découvert et enregistré, comme un hôte, un service en cours d'exécution ou une vulnérabilité. qu’ils rapportent restent alors sur vos serveurs, et un long flowflowUn flow de PentAGI : un objectif, les tâches créées à partir de vos messages et tout ce que les agents ont fait en cours de route. coûte du temps GPU au lieu de tokens. Deux types de serveurs de modèles sont pris en charge : Ollama, le plus rapide à configurer, et vLLM ou tout autre serveur disposant d’une API compatible OpenAI, pour un débit plus élevé.
Ollama
Indiquez à PentAGI le serveur Ollama dans .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 hasLe fichier de configuration attribue un modèle et ses paramètres à chaque agent typeagent type — type d'agentLe rôle joué par un agent, tel que pentester, coder ou searcher. Les paramètres du modèle sont choisis par type d'agent. ; sans celui-ci, OLLAMA_ définit le modèle par défaut. L’image inclut des configurations prêtes à l’emploi dans /, parmi lesquelles ollama-qwen332b-fp16-tc.provider.yml et ollama-qwq32b-fp16-tc.provider.yml.
La fenêtre de contexte par défaut d’Ollama est bien plus petite que ce dont un flow a besoin : les agents utilisent généralement environ 64K tokens, et PentAGI est configuré pour 110K. Ollama définit la taille du contexte uniquement lors de la création d’un modèle, donc construisez une variante à partir d’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 et autres serveurs compatibles OpenAI
vLLM, LocalAI et d’autres serveurs disposant d’une API compatible OpenAI se connectent en tant que provider personnalisé :
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’image inclut des configurations pour plusieurs builds Qwen sur vLLM ; les variantes -no-think désactivent le reasoning. Les agents fonctionnent via des tool callstool call — appel d’outilUne demande du modèle d’exécuter l’un des outils de l’agent, comme une commande terminal ou une recherche web., donc démarrez le serveur avec le parser de tool call et le templatetemplateTexte enregistré que PentAGI réutilise. Un template enregistré dans Templates remplit le premier message d’un nouveau flow ; dans Enterprise, un template de rapport définit les sections d’un rapport et leur ordre, si bien que différents templates produisent différents documents pour le client, les ingénieurs et la direction. de chat recommandés pour votre modèle : avec un parser incorrect, les arguments des tool calls arrivent corrompus et un flow s’arrête après quelques étapes.
Choisir un modèle
- Attribuez votre modèle le plus puissant à
primary_,agent pentesteretadviserdans le fichier de configuration ; des modèles plus légers peuvent servirsearcher,enricheret la summarization. - Pour les modèles de moins de 32B paramètres, activez la surveillance de l’exécution et la planification des tasks. Cela double approximativement la qualité des résultats, au prix de deux à trois fois plus de tokens et de temps.
- Prévoyez la mémoire : QwQ 32B en FP16, par exemple, nécessite environ 71 Go de mémoire GPU.
Garder le reste de la stack en local
| Partie | Paramètre |
|---|---|
| Embeddings | EMBEDDING_ avec un modèle d’embedding dans EMBEDDING_ utilise le même serveur Ollama ; un serveur local compatible OpenAI fonctionne avec EMBEDDING_, son adresse dans EMBEDDING_ et n’importe quel EMBEDDING_ non vide |
| Recherche web | Search envoie les requêtes des agents sur Internet. DuckDuckGo est activé par défaut ; désactivez-le avec DUCKDUCKGO_ et ne conservez que les engines que vous acceptez, telles que votre propre SearXNG |
| Knowledge graphknowledge graph — graphe de connaissancesLe graphe des hôtes, services, vulnérabilités et des accès entre eux que PentAGI construit pendant un test lorsque cette fonctionnalité optionnelle est activée. Il montre comment les constats sont reliés. | Désactivé par défaut. Lorsqu’il est activé, Graphiti appelle OpenAI sauf si GRAPHITI_ l’envoie vers le serveur dans LLM_, auquel cas il lui demande également des embeddings avec le modèle nommé dans EMBEDDING_, ou text-embedding-3-small lorsque celui-ci est vide. Si ce serveur ne propose pas ce modèle, définissez GRAPHITI_ : Graphiti utilise alors EMBEDDING_, EMBEDDING_ et EMBEDDING_, les valeurs que PentAGI emploie, et elles doivent pointer vers un serveur compatible OpenAI — voir Knowledge graph |
| Observabilité | Les stacks Langfuse et Grafana incluses s’exécutent sur votre hôte — voir Observability |
| Vérification des mises à jour | UPDATE_ la désactive ; Security liste ce qu’elle envoie |
| Images | Docker récupère les images de sandboxsandboxLe conteneur Docker isolé dans lequel les agents exécutent leurs outils. L'interface l'affiche comme Terminal. depuis Docker Hub avec ses propres paramètres ; dans un réseau fermé, pointez le daemon Docker vers un mirror de registry |
Dernière mise à jour le