PentAGI 安装与配置实战指南:从环境变量到 LLM / Embedding / 搜索提供商验证

发布时间:2026/11/9 8:31:43

PentAGI 安装与配置实战指南:从环境变量到 LLM / Embedding / 搜索提供商验证 PentAGI 安装与配置实战指南从环境变量到 LLM / Embedding / 搜索提供商验证【免费下载链接】pentagiFully autonomous AI Agents system capable of performing complex penetration testing tasks项目地址: https://gitcode.com/GitHub_Trending/pe/pentagi本篇指南是 PentAGIPenetration Testing Artificial General Intelligence自动化渗透测试系统安装完成与正式使用之间的桥梁它按顺序带你完成首次部署全流程——选择安装方式、设置核心服务端变量、配置并通过ctester/etester验证至少一个 LLM 提供商与 Embedding 提供商、按需接入搜索与可观测性最后启动整个栈并完成首次登录。读完本文你将掌握一套可复现、可验证的 PentAGI 上线操作清单并能读懂.env中每个关键变量的作用与底层实现。本文以仓库内 安装与配置指南 为主体结合 .env.example、ctester、etester 等源码补充实现细节。开始之前前置条件在动手之前请确认运行环境满足以下最低要求与仓库 README.md 中的 System Requirements 一致Docker 与 Docker Compose或 Podmanrootless 模式需按 README 的 Podman 章节调整 scraper 端口2 vCPU、4 GB RAM、20 GB 可用磁盘可访问外网用于拉取镜像以及连接 LLM 提供商至少一个可完成认证的 LLM 提供商OpenAI、Anthropic、Gemini、AWS Bedrock或本地 / Ollama / OpenAI 兼容后端。PentAGI 没有 LLM 提供商就无法运行README 明确要求 You have to set at least one Language Model provider ... to use PentAGI决定安装方式交互式安装器推荐或手动 Docker Compose 部署。提示交互式安装器可以带你完成下文步骤 2–6 的大部分操作本文依然可以作为核对清单使用。第一步选择安装方式方式 A交互式安装器推荐安装器是一个终端 UI 程序执行系统检查、生成合理的.env、协助配置 LLM 与搜索提供商、加固凭据并自动启动整个栈。其实现位于 backend/cmd/installer涵盖 checker系统检查、hardening凭据加固、processorcompose 处理等模块。安装器的典型执行流程对应 README.md 的 Using Installer 章节mkdir -p pentagi cd pentagi wget -O installer.zip https://pentagi.com/downloads/linux/amd64/installer-latest.zip unzip installer.zip ./installer安装器通过/var/run/docker.sock与 Docker API 交互需要相应权限生产环境推荐sudo ./installer开发环境将用户加入docker组sudo usermod -aG docker $USER后重新登录或执行newgrp docker。注意加入docker组等同于授予 root 级权限仅在受控环境使用。安装器会依次完成系统检查Docker、网络、资源→ 生成.env→ 配置 LLM 提供商 → 配置搜索引擎 → 安全加固与 SSL → 通过 docker-compose 启动。方式 B手动 Docker Compose 部署创建工作目录并把.env.example复制为.env填入密钥后启动栈。完整序列含示例 provider 配置文件和docker compose up -d命令见 README.md 的 Manual Installation 章节。仓库根目录的 .env.example 就是可复制的变量模板示例 provider 配置存放在 examples/configs例如 custom-openai.provider.yml、ollama-llama318b.provider.yml。第二步设置核心服务端变量无论采用哪种方式在把实例暴露到 localhost 之外前请务必在.env中确认以下变量对应.env.example的 PentAGI security settings 区块变量说明示例值 / 注意事项PUBLIC_URL用户与浏览器实际访问的 URLhttps://pentagi.example.com或https://192.168.1.100:8443必须使用真实主机名或 IP绝不能用0.0.0.0CORS_ORIGINS允许访问 UI 的所有源逗号分隔同时使用本地与外部访问时需同时包含https://localhost:8443和外部 URLPENTAGI_LISTEN_IP/PENTAGI_LISTEN_PORT监听地址与端口仅本机访问保持默认127.0.0.1对外连接设为0.0.0.0端口默认 8443COOKIE_SIGNING_SALTCookie 签名盐值必须改掉默认值.env.example中默认是saltPENTAGI_POSTGRES_PASSWORD、NEO4J_PASSWORD数据库密码必须改掉默认值对应 PostgreSQL 与 Graphiti/Neo4j外部访问场景下修改后需重建容器使配置生效见 README.md Accessing PentAGI from External Networks 章节docker compose down docker compose up -d --force-recreate随后用docker ps | grep pentagi验证端口绑定为0.0.0.0:8443-8443/tcp若仍显示127.0.0.1需直接在 docker-compose.yml 中把ports改为0.0.0.0:8443:8443后重建并在防火墙上放行 8443 端口UFWsudo ufw allow 8443/tcpfirewalldsudo firewall-cmd --permanent --add-port8443/tcp后 reload。通过 IP 访问时会遇到自签名证书告警属预期现象。第三步配置并测试 LLM 提供商在.env中为至少一个提供商设置凭据。.env.example中完整定义了以下提供商的变量每个提供商还可在 examples/configs 找到带注释的示例配置文件提供商核心变量默认端点OpenAIOPEN_AI_KEY、OPEN_AI_SERVER_URLhttps://api.openai.com/v1AnthropicANTHROPIC_API_KEY、ANTHROPIC_SERVER_URLhttps://api.anthropic.com/v1Google AI (Gemini)GEMINI_API_KEY、GEMINI_SERVER_URLhttps://generativelanguage.googleapis.comAWS BedrockBEDROCK_REGION 一种认证方式us-east-1DeepSeekDEEPSEEK_API_KEY、DEEPSEEK_SERVER_URLhttps://api.deepseek.comGLM (Zhipu AI)GLM_API_KEY、GLM_SERVER_URLhttps://api.z.ai/api/paas/v4Kimi (Moonshot)KIMI_API_KEY、KIMI_SERVER_URLhttps://api.moonshot.ai/v1Qwen (Alibaba)QWEN_API_KEY、QWEN_SERVER_URLhttps://dashscope-us.aliyuncs.com/compatible-mode/v1MiniMaxMINIMAX_API_KEY、MINIMAX_SERVER_URLhttps://api.minimax.io/v1Custom / OpenAI 兼容LLM_SERVER_URL、LLM_SERVER_KEY、LLM_SERVER_MODEL自填另有LLM_SERVER_CONFIG_PATH、LLM_SERVER_PROVIDER等OllamaOLLAMA_SERVER_URL本地http://ollama-server:11434或云端https://ollama.com、OLLAMA_SERVER_API_KEY、OLLAMA_SERVER_MODEL本地留空 KeyAWS Bedrock 支持三种认证方式在 ctester 源码 的createProvider中有对应校验BEDROCK_DEFAULT_AUTHtrueAWS SDK 默认凭据链推荐 EC2/ECS 场景、BEDROCK_BEARER_TOKENBearer Token、或BEDROCK_ACCESS_KEY_IDBEDROCK_SECRET_ACCESS_KEY静态凭据三者至少配置其一。用 ctester 验证提供商在启动完整流程之前先确认提供商能正确应答并支持 PentAGI 所需的 Agent 行为运行ctesterProvider Configuration Tester# 本地 Go 环境在 backend 目录内运行 go run ./cmd/ctester -verbose # 或在运行中的容器内 docker exec -it pentagi /opt/pentagi/bin/ctester -verbosectester的可选参数来自 backend/cmd/ctester/main.go远不止-verbose参数默认值说明-env.env环境文件路径-typecustom提供商类型custom, openai, anthropic, gemini, bedrock, ollama, deepseek, glm, kimi, qwen, minimax-name空作为PROVIDER_NAME/MODEL_NAME参与构建 provider 配置的提供商名-config空provider 配置文件路径同时作用于LLM_SERVER_CONFIG_PATH与OLLAMA_SERVER_CONFIG_PATH-tests空自定义测试 YAML 文件路径-report空报告写出路径-agentsall逗号分隔的待测 Agent 类型如simple, primary_agent, coder, pentester-groupsall逗号分隔的测试组basic, advanced, json, knowledge-workers4并发 worker 数-verbosefalse详细输出ctester覆盖 13 类 Agent 的测试simple、simple_json、primary_agent、assistant、generator、refiner、adviser、reflector、searcher、enricher、coder、installer、pentester并区分 Basic / Advanced / Capability 测试与成功率、平均延迟统计见 backend/cmd/ctester/models.go。若使用 custom、llama.cpp、vLLM、SGLang 后端时报告 tool-call / function-call 问题通常指向后端本身的 tool-call 解析器而非 PentAGI。完整用法与按 Agent 测试的说明见 README.md 的 Testing LLM Agents 章节。第四步配置并测试 Embedding 提供商PentAGI 使用 Embedding 支撑语义搜索、知识存储与记忆系统。相关变量来自.env.example的 Embedding 区块与 config.go 的默认值变量默认值说明EMBEDDING_PROVIDERopenai当前支持openai与ollama见 embedder.goEMBEDDING_MODEL空使用的 Embedding 模型EMBEDDING_URL空自定义 Embedding 端点为空且EMBEDDING_PROVIDERopenai时回退到OPEN_AI_SERVER_URLEMBEDDING_KEY空为空时回退到OPEN_AI_KEYEMBEDDING_BATCH_SIZE512批量向量化的大小EMBEDDING_MAX_TEXT_BYTES8192单条文本的最大字节数EMBEDDING_STRIP_NEW_LINEStrue向量化前是否去除换行从 embedder.go 的源码可以确认回退逻辑当EMBEDDING_PROVIDERopenai且EMBEDDING_URL/EMBEDDING_KEY为空时客户端自动改用OPEN_AI_SERVER_URL与OPEN_AI_KEYollama提供商则使用EMBEDDING_URL作为服务器地址且不支持 Key 认证。用 etester 验证 Embedding# 本地 Go 环境 go run ./cmd/etester test -verbose # 运行中的容器 docker exec -it pentagi /opt/pentagi/bin/etester test -verboseetester是一个子命令式工具见 backend/cmd/etester/main.go支持子命令作用示例test测试 Embedding 提供商与 pgvector 连接./etester test -verboseinfo显示 Embedding 数据库统计信息./etester infoflush删除 Embedding 库中所有文档带交互确认见 flush.go./etester flushreindex为所有文档重算 Embedding./etester reindexsearch在 Embedding 库中搜索文档./etester search -query How to install PostgreSQLetester还遵循TENANT_ID租户模式启动时会先EnsureTenantSchema并校验search_path与主服务保持一致见 etester/main.go 的初始化逻辑。如果之后更换 Embedding 提供商或模型需先flush再reindex知识库完整命令集见 README.md 的 Embedding Configuration and Testing 章节。第五步可选配置搜索提供商搜索提供商能提升研究质量但不是必选项。PentAGI 支持以下引擎对应变量均在.env.example中有定义引擎变量DuckDuckGoDUCKDUCKGO_ENABLED另有DUCKDUCKGO_REGION、DUCKDUCKGO_SAFESEARCH、DUCKDUCKGO_TIME_RANGESploitusSPLOITUS_ENABLEDGoogleGOOGLE_API_KEY、GOOGLE_CX_KEY另有GOOGLE_LR_KEYTavilyTAVILY_API_KEYFirecrawlFIRECRAWL_API_KEYFIRECRAWL_API_URL可选默认云 API也可指向自建实例TraversaalTRAVERSAAL_API_KEYPerplexityPERPLEXITY_API_KEY另有PERPLEXITY_MODEL、PERPLEXITY_CONTEXT_SIZESearxng自托管元搜索SEARXNG_URL另有SEARXNG_CATEGORIES默认general、SEARXNG_LANGUAGE、SEARXNG_SAFESEARCH默认0、SEARXNG_TIME_RANGE、SEARXNG_TIMEOUT内部浏览器分析回退引擎WEB_SEARCH_INTERNAL_ENABLED默认false、WEB_SEARCH_INTERNAL_MAX_SITES默认5、WEB_SEARCH_INTERNAL_MAX_SITE_BYTES默认10240最后一个引擎是web_search工具的免费回退方案它抓取页面并摘要替代付费分析 API需启用开关并配合 scraper 与至少一个链接引擎使用该引擎在 ftester 的 worker 参数解析 中以internal函数暴露供调试。搜索工具的注册与执行逻辑可进一步查看 backend/pkg/tools/search.go 与 backend/pkg/tools/searchers 目录。第六步可选启用 Graphiti、Langfuse 与可观测性这三个都是独立可选栈通过额外的 compose 文件拉起栈开启方式对应文件Graphiti 知识图谱GRAPHITI_ENABLEDtrue、GRAPHITI_URL、GRAPHITI_TIMEOUT配合NEO4J_USER、NEO4J_DATABASE、NEO4J_PASSWORD、NEO4J_URIdocker-compose-graphiti.ymlLangfuse 分析LANGFUSE_BASE_URL、LANGFUSE_PROJECT_ID、LANGFUSE_PUBLIC_KEY、LANGFUSE_SECRET_KEYdocker-compose-langfuse.yml监控Grafana / OpenTelemetryOTEL_HOST等docker-compose-observability.yml顺序要求必须先运行基础 docker-compose.yml 创建共享 Docker 网络pentagi-network、observability-network、langfuse-network再拉起可选栈否则会报网络不存在的错误。可选栈的具体编排可参考 docker-compose-graphiti.yml、docker-compose-langfuse.yml、docker-compose-observability.yml 及 observability 目录下的配置。第七步启动并验证启动整个栈docker compose up -d观察日志直至后端就绪docker compose logs -f pentagi若修改过任何提供商配置重新运行ctester与etester如需对单个 Agent 函数与工具做更深检查使用ftester见 README.md 的 Function Testing with ftester 章节打开https://localhost:8443或你的PUBLIC_URL使用默认账号adminpentagi.com/admin登录并立即修改默认密码。关于登录后的配置边界Web 控制台的Settings页面管理 Providers创建、编辑、测试用户定义的 provider 配置控制各 Agent 的模型选择与运行参数、Prompts系统/人类/工具提示词模板与 PentAGI API tokens而 LLM 与搜索凭据、Langfuse、Graphiti、MCP 仍属于服务端配置环境变量 / compose 文件 / 挂载的配置文件具体划分见 README.md 的 Current Web Settings Coverage 与 Still Server-Managed 章节。多用户场景下PentAGI 不开放自助注册新实例只有默认本地管理员账号管理员可通过 Users REST API/api/v1/users/管理本地用户OpenAPI UI 位于https://localhost:8443/api/v1/swagger/index.html。首次运行配置检查清单Docker/Podman、CPU、内存与磁盘满足最低要求已选定安装方式安装器或手动 ComposePUBLIC_URL与CORS_ORIGINS设置为真实主机名/IP不是0.0.0.0COOKIE_SIGNING_SALT与数据库密码已从默认值改掉至少一个 LLM 提供商已配置并通过ctesterEmbedding 提供商已配置并通过etester搜索提供商已配置可选需要时已启用 Graphiti / Langfuse / 可观测性可选栈已启动、日志健康、默认管理员密码已修改下一步登录后即可创建第一个 flow、使用提示词模板并查看结果详见 README.md 的 How to Use PentAGI After Login 章节。如需加固或全本地化部署请继续阅读 Worker Node 部署指南双节点隔离架构、Docker-in-Docker 与 TLS 加固与 vLLM Qwen3.5-27B-FP8 部署指南生产级本地 LLM 推理。【免费下载链接】pentagiFully autonomous AI Agents system capable of performing complex penetration testing tasks项目地址: https://gitcode.com/GitHub_Trending/pe/pentagi创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
延伸阅读

更多相关文章

2026/11/7 21:50:05

数据质量可复现性验证的技术实践与架构设计

1. 项目背景与核心目标"0307data quality reproduce_1"这个看似简单的项目标题背后,实际上隐藏着数据工程领域一个经典命题——数据质量的可复现性验证。我在金融行业数据仓库建设项目中,曾花费三个月时间解决过一个类似问题:某关键…

2026/10/29 10:41:46

Vue3响应式系统:ref、reactive与watchEffect深度解析

1. Vue3 响应式系统核心概念解析Vue3 的响应式系统是其核心机制,它通过 Proxy 和 Reflect API 实现了比 Vue2 更高效的数据绑定。这套系统主要围绕三个核心 API 构建:ref、reactive 和 watchEffect。1.1 ref 的工作原理与使用场景ref 是 Vue3 中最基础的…

2026/11/9 8:28:52

售楼部电工作业指导书怎么考 内部消息告诉你怎么拿下证书

售楼部电工作业指导书怎么考 内部消息告诉你怎么拿下证书 你是不是也遇到过这种情况,手里有电工技能,但就是找不到合适的工作? 急需特种作业证才能上岗找工作 ,这几乎是每个想进工地、售楼部、工程类岗位的电工都面临的难题。其实, 内部消息…

2026/11/9 8:28:52

特种工如何注销证书 别踩坑!实操考试心里没底怕挂科

特种工如何注销证书 别踩坑!实操考试心里没底怕挂科 实操考试心里没底怕挂科?你不是一个人。很多特种工在报考过程中,都会遇到这样那样的难题,尤其是证书注销这个环节,流程复杂、信息不透明,稍有不慎就可能耽误了职业发展,甚至影响到工作。…

2026/11/9 8:28:52

航运吊车工是特种工吗?上岗必备证书怎么考不被坑

航运吊车工是特种工吗?上岗必备证书怎么考不被坑 不知道去哪报名怕被中介坑?航运吊车工是特种工吗?这是很多准备进入特种作业领域的人最关心的问题之一。尤其是像漯河市的市政公用工程从业者,对岗位职责、证书办理、考试内容等信息都特别敏感。今天咱们就…

2026/11/9 8:28:51

特种工如何注销证书别跑错地方了官方报名入口全在这里

特种工如何注销证书别跑错地方了官方报名入口全在这里 工地太忙根本没时间复习考试,特种工证书的注销流程你也别耽误了。很多兄弟在换工作或者转行时,发现证书已经不适用了,但又不知道怎么操作,更怕走错流程影响以后的就业。今天就从安阳应届工程类毕业生…

2026/11/9 8:23:51

电工证补证多久?保姆级教程教你如何快速补办和跨省转移

电工证补证多久?保姆级教程教你如何快速补办和跨省转移 之前考的证在外省能不能转过来?你不是一个人。不管是从河南焦作转岗到其他城市,还是从其他省份过来务工,很多人都遇到过“电工证补证多久”的问题。今天我们就从 真实案例、官方流程、避坑指南…

2026/11/9 0:37:55

电工证丢失还能补吗?千万别踩坑,丢了证等于失业

电工证丢失还能补吗?千万别踩坑,丢了证等于失业 你正在找工作,但手里的电工证突然丢了,这下怎么办?别急,先别慌, 电工证丢失还能补吗 ?答案是肯定的,但 千万别踩坑 ,补办流程如果不了解,可能会耽误你上岗、甚至影响到你的收入。…

2026/11/9 0:03:09

建设厅的特种工有哪些含金量高?别交完钱考不过

建设厅的特种工有哪些含金量高?别交完钱考不过 怕考不过白交培训费?别急,先搞清楚建设厅的特种工有哪些含金量高的证,再决定是不是值得投入时间和金钱。 建设厅的特种工证是建筑行业里最基础、也最实用的证书之一,涉及多个作业类别,每种证的 含金量…

2026/11/9 0:03:09

荆门市电工证报名怎么考才靠谱 全国通用证别交冤枉钱

荆门市电工证报名怎么考才靠谱 全国通用证别交冤枉钱 怕考不过白交培训费?荆门市电工证报名前必须知道这些避坑指南。别看网上一堆培训机构广告,真要报个电工证,很多人被坑得一塌糊涂。特别是那些打着“包过”旗号的,最后不是考试不过,就是证不是全国通…

2026/11/9 0:03:09

高空电工作业过程通过率揭秘:怎么选靠谱机构不被坑

高空电工作业过程通过率揭秘:怎么选靠谱机构不被坑 不知道去哪报名怕被中介坑?你不是一个人。现在特种作业证报名渠道五花八门,从线下培训机构到线上代理,真假难辨。尤其是像高空电工作业这类高风险、高门槛的作业类型,证书含金量和考试通过率直接影响你…

2026/11/9 6:30:27

面向复杂光照与角度的宠物面部识别鲁棒性增强策略

在智慧养宠时代,基于视觉的宠物身份识别技术正逐步从实验室走向家庭应用。然而,与配合度高的人类不同,宠物是典型的“非合作生物识别对象”——它们不会主动配合摄像头调整姿态,更无法控制光照环境。实际应用中,我们常…

2026/11/7 14:50:12

SSM电子书店源码全解析:结构、原理、部署与排错实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
☎咨询二维码 ☎ ↑