İçeriğe atla
PentAGI
Dağıtım

Yerel modeller

PentAGI'yi kendi donanımınızda barındırılan modeller üzerinde çalıştırın; böylece prompt'lar, tool çıktıları ve finding'ler sunucularınızda kalır.

PentAGI, tamamen kendi sunduğunuz modeller üzerinde çalışabilir. Agent'ların prompt'ları, okudukları tool çıktıları ve raporladıkları finding'ler sunucularınızda kalır ve uzun bir flow, token yerine GPU zamanına mal olur. İki tür model sunucusu desteklenir: Kurulumu en hızlı olan Ollama ve daha yüksek throughput için OpenAI uyumlu API'ye sahip vLLM veya başka bir sunucu.

Ollama

.env dosyasında PentAGI'yi Ollama sunucusuna yönlendirin:

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

Yapılandırma dosyası, her agent type için bir model ve parametrelerini atar; böyle bir dosya yoksa OLLAMA_SERVER_MODEL varsayılan modeli ayarlar. Imaj, /opt/pentagi/conf/ içinde hazır yapılandırmalarla gelir; bunlar arasında ollama-qwen332b-fp16-tc.provider.yml ve ollama-qwq32b-fp16-tc.provider.yml bulunur.

Ollama'nın varsayılan context window'u bir flow'un ihtiyaç duyduğundan çok daha küçüktür: agent'lar tipik olarak yaklaşık 64K token kullanır ve PentAGI 110K için yapılandırılmıştır. Ollama, context boyutunu yalnızca bir model oluştururken ayarlar, bu nedenle bir Modelfile'dan bir varyant oluşturun:

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.1
ollama create qwen3:32b-fp16-tc -f Modelfile

vLLM ve diğer OpenAI uyumlu sunucular

vLLM, LocalAI ve OpenAI uyumlu API'ye sahip diğer sunucular özel provider olarak bağlanır:

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

Imaj, vLLM üzerinde birkaç Qwen yapısı için yapılandırmalar içerir; -no-think varyantları reasoning'i kapatır. Agent'lar tool call'lar aracılığıyla çalışır, bu nedenle sunucuyu modeliniz için önerilen tool-call parser ve chat template ile başlatın: yanlış bir parser ile tool-call argümanları bozuk döner ve bir flow birkaç adımdan sonra durur.

Model seçimi

  • Yapılandırma dosyasında primary_agent, pentester ve adviser için en güçlü modelinizi kullanın; daha hafif modeller searcher, enricher ve özetleme için hizmet verebilir.
  • 32B parametrenin altındaki modeller için execution monitoring and task planning özelliğini açın. Bu özellik, iki ila üç kat daha fazla token ve zaman maliyetiyle sonuç kalitesini kabaca iki katına çıkarır.
  • Belleği planlayın: Örneğin FP16'daki QwQ 32B, yaklaşık 71 GB GPU belleğine ihtiyaç duyar.

Yığının geri kalanını yerel tutun

ParçaAyar
EmbeddingsEMBEDDING_PROVIDER=ollama ile EMBEDDING_MODEL içindeki bir embedding modeli aynı Ollama sunucusunu kullanır; yerel bir OpenAI uyumlu sunucu EMBEDDING_PROVIDER=openai, EMBEDDING_URL içindeki adresi ve boş olmayan herhangi bir EMBEDDING_KEY ile çalışır
Web searchSearch, agent'ların sorgularını internete gönderir. DuckDuckGo varsayılan olarak açıktır; DUCKDUCKGO_ENABLED=false ile kapatın ve yalnızca kabul ettiğiniz engines (örneğin kendi SearXNG'iniz) kalsın
Knowledge graphVarsayılan olarak kapalıdır. Açık olduğunda Graphiti OpenAI'yi çağırır; GRAPHITI_LLM_CLIENT_TYPE=custom ise LLM_SERVER_URL içindeki sunucuyu kullanır ve embedding'leri de bu sunucudan, EMBEDDING_MODEL içinde belirtilen modelle veya bu boşsa text-embedding-3-small ile ister. Bu sunucu o modeli sunmuyorsa GRAPHITI_SEPARATE_EMBEDDING=true ayarlayın: Graphiti bu durumda PentAGI'nin kullandığı EMBEDDING_URL, EMBEDDING_KEY ve EMBEDDING_MODEL değerlerini alır ve bunların OpenAI uyumlu bir sunucuyu göstermesi gerekir — bkz. Knowledge graph
ObservabilityBirlikte verilen Langfuse ve Grafana yığınları host'unuzda çalışır — bkz. Observability
Update checkUPDATE_CHECK_INTERVAL=0 bunu kapatır; Security ne gönderdiğini listeler
ImagesDocker, sandbox imajlarını kendi ayarlarıyla Docker Hub'dan çeker; kapalı bir ağda Docker daemon'unu bir registry mirror'a işaret edin

Son güncelleme tarihi: