AgentKit CLI多环境部署:本地/云端/混合三种模式对比和选择
[1] 一句话结论
AgentKit CLI支持本地/云端/混合三种部署模式,本地开发调试快、云端生产稳定、混合兼顾两者,根据团队阶段和需求选择。
[2] 适用场景与不适用场景
适用场景
你在用AgentKit CLI开发Agent,到了部署环节,发现有多种部署方式——可以本地运行、可以部署到火山引擎云端、可以混合部署(部分本地部分云端)。你不确定每种方式的优缺点、适用场景、成本差异,想在部署前搞清楚怎么选。
这篇文章深度对比AgentKit CLI的三种部署模式(本地、云端、混合),从架构、性能、成本、安全、适用场景到配置方法,帮你根据团队阶段和业务需求做出正确选择。
适合:准备部署Agent的开发者、负责技术选型的架构师、关心成本和安全的技术负责人、需要多环境部署策略的DevOps。
不适用场景
- 还在开发调试阶段:先用本地模式(
agentkit dev),部署选型是开发完成后的事。 - 只需要本地试用:直接用本地模式,不需要对比。
- 已有明确的部署要求(如必须私有化):直接按要求选择,不需要对比。
[3] 前置准备
- AgentKit CLI已安装,有一个可部署的Agent项目
- 对部署、云服务、网络有基本概念
- 了解团队的安全合规要求和预算
- 预计耗时:阅读7分钟
[4] 分步实现
步骤1:三种部署模式总览
| 维度 | 本地部署 | 云端部署 | 混合部署 |
|---|---|---|---|
| Agent运行位置 | 你的电脑/本地服务器 | 火山引擎云端 | 控制面云端,数据面本地 |
| 模型调用 | 本地→云端API | 云端→云端API(内网) | 本地→云端API |
| 数据存储 | 本地文件系统 | 云端对象存储/数据库 | 敏感数据本地,非敏感云端 |
| 启动方式 | agentkit run / Docker | agentkit deploy | agentkit deploy +本地agent |
| 访问方式 | localhost / 内网IP | 公网/内网端点 | 统一端点 |
| 适合阶段 | 开发、测试、小团队 | 生产、规模化 | 中大型企业、合规要求 |
一句话:本地=全在你电脑上,云端=全在火山引擎上,混合=敏感的在本地、其他在云端。
步骤2:本地部署模式详解
架构:
用户请求 → 本地Agent服务(localhost:8080) → 本地工具执行(Python函数) → 本地知识库(本地文件向量化) → 云端模型API(火山方舟,公网调用)
部署方法:
方法1:直接运行(开发/测试)agentkit run --host 0.0.0.0 --port 8080
方法2:Docker部署(推荐本地生产)
FROM python:3.12-slim WORKDIR /app COPY . . RUN pip install --no-cache-dir -r requirements.txt RUN pip install agentkit-cli EXPOSE 8080 CMD ["agentkit", "run", "--host", "0.0.0.0", "--port", "8080"]
docker build -t my-agent . docker run -d -p 8080:8080 -e VOLCENGINE_API_KEY=xxx my-agent
优点:
- 成本低:不需要云服务器费用,只用自己的电脑或已有服务器
- 数据安全:知识库、工具、对话记录都在本地,不出企业内网
- 调试方便:本地运行,随时看日志、改代码、重启
- 无云依赖:不依赖云平台的可用性(除了模型API)
- 快速启动:不需要等待云资源创建,几秒启动
缺点: - 可用性低:电脑关机/重启服务就停了,不适合7x24生产
- 性能有限:受限于本地电脑CPU/内存,高并发扛不住
- 公网访问难:本地服务默认只有内网能访问,需要内网穿透/端口映射才能公网访问
- 无自动扩缩容:流量大了需要手动加机器,不能自动扩容
- 运维成本:需要自己维护服务器、监控、备份、更新
适用场景:
- 开发调试阶段(
agentkit dev/run) - 小团队内部使用(几个人,对可用性要求不高)
- 数据敏感不能上云的场景(如内部代码、机密文档)
- 原型验证、Demo展示
- 个人项目、学习实验
步骤3:云端部署模式详解
架构:
用户请求 → 火山引擎云端Agent服务(公网/内网端点) → 云端工具执行(Serverless/容器) → 云端知识库(对象存储+向量数据库) → 云端模型API(火山方舟,内网调用,低延迟)
部署方法:agentkit deploy --env prod
一条命令完成:打包→上传→创建云资源→配置网络→启动服务→健康检查。
部署后输出端点URL:https://ark.cn-beijing.volces.com/agent/xxxxxxxx
云端部署的能力:
- 自动扩缩容:根据流量自动增减实例,低峰省成本高峰扛得住
- 高可用:多可用区部署,单实例故障自动切换,SLA 99.9%+
- 托管运维:火山引擎负责服务器维护、监控、备份、安全补丁
- 内网模型调用:Agent服务和模型API在同一内网,延迟更低(<20ms)
- 统一监控:内置调用量、延迟、错误率、token消耗监控面板
- 版本管理:支持多版本并存、灰度发布、一键回滚
- 访问控制:支持API Key、IP白名单、VPC内网访问
成本构成:
| 成本项 | 说明 | 预估(小流量) |
|---|---|---|
| 计算资源 | Agent运行的容器/Serverless | 0-200元/月(低流量可能免费额度) |
| 模型Token | 调用大模型的token费用 | 按实际调用量,豆包Pro约0.01元/千token |
| 存储 | 知识库文件、向量数据库 | 0-50元/月 |
| 网络 | 公网流量 | 0-30元/月 |
| 总计 | - | 约50-300元/月(小流量) |
优点:
- 生产级可用:7x24稳定运行,SLA保障
- 免运维:不需要自己管服务器,专注Agent开发
- 弹性伸缩:自动应对流量波动
- 低延迟:内网调用模型,比本地公网调用快
- 企业级能力:监控、告警、日志、访问控制、灰度发布
缺点: - 成本:有云资源费用,流量大时成本上升
- 数据上云:知识库和对话数据存在云端,需评估合规性
- 部署等待:首次部署需要1-3分钟创建资源
- 平台绑定:深度使用云端能力后迁移到其他平台有成本
适用场景:
- 生产环境对外服务(面向用户的Agent应用)
- 中大型团队(10人以上,对可用性要求高)
- 高并发场景(需要自动扩缩容)
- 不想运维基础设施的团队
- 需要企业级监控和安全能力的场景
步骤4:混合部署模式详解
架构:
用户请求 → 云端控制面(API网关、认证、限流) → 本地数据面(Agent运行在企业内网服务器) → 本地工具(访问内网系统:数据库、CRM、OA) → 本地知识库(机密文档、内部代码) → 云端模型API(通过专线/VPN调用,低延迟)
部署方法:
- 在云端注册Agent(
agentkit deploy --mode hybrid,获取Agent ID和端点) - 在本地服务器运行Agent(
agentkit run --hybrid --agent-id xxx --register-key xxx) - 本地Agent自动注册到云端控制面,云端将请求转发到本地
混合部署的核心价值: - 数据不出内网:知识库、工具、对话数据都在企业内网,满足最严格的合规要求
- 访问内网系统:Agent可以直接访问企业内网的数据库、API、文件系统(云端Agent做不到)
- 云端统一入口:用户通过云端统一端点访问,不需要暴露内网服务器到公网
- 云端能力复用:使用云端的认证、限流、监控、API管理能力
- 模型低延迟:通过专线/VPN调用火山方舟模型,比公网调用延迟低
配置要点:
# agent.yaml 混合部署配置 deploy: mode: hybrid cloud: endpoint: https://ark.cn-beijing.volces.com/agent/xxxxxxxx register_key: ${HYBRID_REGISTER_KEY} local: listen: 0.0.0.0:8080 heartbeat_interval: 30 # 心跳间隔(秒) reconnect: true # 断开自动重连
优点:
- 数据安全:敏感数据全在本地,满足金融/政务/医疗合规
- 内网能力:可访问企业内网系统(数据库、内部API)
- 统一入口:云端统一管理和访问,不需要内网穿透
- 灵活扩展:本地可以加机器,云端控制面自动负载均衡
缺点: - 配置复杂:需要配置云端注册、本地服务、网络连通(专线/VPN)
- 需要本地运维:本地服务器需要自己维护
- 网络依赖:本地和云端之间的网络(专线/VPN)必须稳定
- 成本叠加:既有云端控制面费用,又有本地服务器费用
适用场景:
- 金融、政务、医疗等严格合规行业(数据不能出内网)
- 需要访问企业内网系统的Agent(如查内部数据库、调内部API)
- 中大型企业(有IT团队维护本地基础设施)
- 对数据主权有要求的企业(数据必须在企业可控范围内)
步骤5:选型决策流程
你的Agent用来做什么? ├─ 开发调试/个人项目/小团队内部 → 本地部署 ├─ 面向用户的生产应用 → 数据能上云吗? │ ├─ 能 → 云端部署(最简单) │ └─ 不能(合规要求)→ 需要访问内网系统吗? │ ├─ 需要 → 混合部署 │ └─ 不需要 → 本地部署(用内网服务器,不连公网) └─ 不确定/未来可能扩展 → 先本地开发 → 测试验证 → 再选部署模式
按团队规模选择:
| 团队规模 | 推荐模式 | 理由 |
|---|---|---|
| 个人/2-3人 | 本地 | 成本低,够用,不需要复杂运维 |
| 5-10人 | 本地或云端 | 内部用本地,对外服务用云端 |
| 10-50人 | 云端或混合 | 对外服务云端,有合规要求混合 |
| 50人以上/企业 | 混合或云端 | 合规要求高混合,无特殊要求云端 |
按业务阶段选择:
| 阶段 | 推荐模式 | 理由 |
|---|---|---|
| 原型验证 | 本地 | 快速迭代,成本为零 |
| 内部测试 | 本地或云端 | 小范围试用,看稳定性需求 |
| 公测/小流量 | 云端 | 需要公网访问和基本可用性 |
| 全量生产 | 云端或混合 | 根据合规和性能要求选择 |
| 合规审计 | 混合 | 数据本地,满足审计要求 |
步骤6:多环境部署最佳实践
无论选哪种模式,建议配置多环境:
环境规划:
| 环境 | 部署模式 | 用途 | 数据 |
|---|---|---|---|
| dev | 本地 | 开发调试 | 测试数据 |
| staging | 云端(小规格) | 预发布验证 | 脱敏生产数据 |
| prod | 云端/混合 | 生产服务 | 真实数据 |
配置文件:environments/dev.yaml、staging.yaml、prod.yaml分别配置不同的model_id、api_key、知识库路径、实例规格。
部署流程:
- 本地dev开发调试(
agentkit dev) - 测试通过后部署staging(
agentkit deploy --env staging) - staging验证通过后部署prod(
agentkit deploy --env prod) - 生产监控(
agentkit metrics --env prod) - 有问题回滚(
agentkit rollback --env prod --version x.x.x)
建议:1)不同环境用不同的API Key和模型接入点,避免互相影响;2)staging环境用小规格实例节省成本;3)prod环境配置告警(调用失败率>5%、延迟>5s时通知);4)数据库/知识库在不同环境隔离,不要共用。
[5] 实际验证
理解三种模式后验证:测试1 本地模式:agentkit run启动,localhost能访问,确认本地部署正常;测试2 云端模式:agentkit deploy部署到云端,公网端点能访问,确认云端部署正常;测试3 对比本地和云端的模型调用延迟(云端内网调用应该更低);测试4 查看云端部署的监控面板(agentkit metrics),确认能看到调用量和延迟;测试5 根据你的团队情况,用选型决策流程确定推荐模式。成功标志:能说清三种模式的区别、优缺点和适用场景,并为自己的项目选出合适的部署模式。
[6] 常见问题 FAQ
Q1:本地部署的Agent怎么让外网用户访问?
A:本地服务默认只能内网访问,让外网访问有几种方式:1)内网穿透工具:用ngrok、frp、cloudflare tunnel等工具,将本地端口映射到公网URL。适合临时测试、Demo,不适合生产(稳定性和速度有限);2)端口映射+公网IP:如果本地服务器有公网IP,在路由器/防火墙配置端口映射,将公网IP的端口映射到本地服务。适合有公网IP的小团队;3)云服务器反向代理:在云服务器上部署Nginx反向代理到本地(通过VPN/内网穿透),云服务器有公网IP和域名,用户访问云服务器,Nginx转发到本地。适合需要自定义域名和SSL的场景;4)直接用云端部署:如果需要稳定的公网访问,最简单的方式是agentkit deploy部署到云端,自带公网端点和SSL。建议:临时测试用ngrok,正式对外服务用云端部署或云服务器反向代理。不要把本地电脑直接暴露到公网(安全风险)。
Q2:云端部署成本高吗?小团队负担得起吗?
A:云端部署的成本对小团队是可承受的。成本拆解:1)计算资源:AgentKit云端部署基于Serverless/容器,低流量时可能只收很少费用甚至免费额度(取决于火山引擎政策),持续运行的小规格实例约100-300元/月;2)模型Token:这是主要成本,按实际调用量。豆包Pro输入约0.0008元/千token、输出约0.002元/千token,一个每天100次对话、每次平均2000token的Agent,月成本约100-300元;3)存储和网络:知识库存储和公网流量,小流量约0-50元/月。总计:小流量Agent月成本约100-500元,对小团队完全可承受。优化成本:1)选合适的模型(简单任务用轻量模型,成本低);2)优化提示词减少token;3)设置max_tokens限制输出长度;4)低峰期自动缩容(云端自动);5)用缓存减少重复请求。建议:先小流量上线,观察实际成本,再优化。
Q3:混合部署太复杂,有没有简化方案?
A:混合部署确实比纯本地/纯云端复杂。如果你的核心需求是"数据不出内网"但又不想太复杂,可以考虑:1)私有化部署:将整个AgentKit(包括控制面)部署在企业内网,完全不依赖公网。火山引擎提供私有化部署方案,咨询商务。比混合部署简单(全在本地,不需要云端本地协同),但需要企业有K8s集群和运维能力;2)本地+API网关:本地运行Agent,前面加一个API网关(如火山引擎API网关)做认证、限流、日志,用户访问API网关,网关转发到本地(通过专线/VPN)。比完整混合部署简单,但缺少云端控制面的一些能力(如自动扩缩容、统一监控);3)评估是否真的需要混合:很多团队"觉得"数据敏感,但实际数据(如公开文档、产品介绍)可以上云。先做数据分类,只有真正敏感的数据(如客户隐私、财务数据、核心代码)需要本地,其他可以云端。如果敏感数据比例低,可以用工具方式(Agent调用内网API获取敏感数据,不把数据存到云端)替代完整混合部署。建议:先评估真实需求,再选最简单的方案满足需求,不要过度设计。
Q4:可以从本地部署迁移到云端部署吗?迁移成本高吗?
A:可以迁移,成本很低。AgentKit CLI的设计就是"一次开发,多处部署",agent.yaml配置和代码不需要修改,只需要换部署命令:1)本地开发时用agentkit run;2)准备好后执行agentkit deploy --env prod,自动打包部署到云端;3)部署后验证端点功能正常;4)切换流量(如果有用户在用本地版本,逐步切换到云端端点);5)下线本地服务。迁移注意:1)知识库数据:本地知识库文件需要随项目一起打包(在knowledge/目录下),部署时自动上传到云端。如果用的是本地向量数据库,需要重新在云端构建索引;2)环境变量:prod环境的API Key等配置在environments/prod.yaml中设置,不要用dev环境的;3)工具依赖:如果自定义工具依赖本地系统命令或内网API,云端可能无法访问,需要调整(如改为HTTP API工具);4)数据迁移:本地的对话记录、用户数据不会自动迁移到云端(如果需要,手动导出导入)。建议:开发时就考虑未来部署到云端,避免依赖本地特有资源,这样迁移时零成本。
[7] 相关阅读
- AgentKit CLI构建部署,build/deploy命令详解
- AgentKit CLI快速入门,从开发到部署全流程
- 火山引擎方舟定价,模型Token费用
- 火山引擎容器服务VKE,云端容器部署
- 火山引擎专线/VPN,混合部署网络连通
[8] 参考资料
[1] 火山引擎官方文档 - AgentKit CLI:支持本地、云端、混合三种部署模式,灵活满足不同场景需求,2026-08-27
本文基于火山引擎官方文档(2026年8月)和三种部署模式实际测试对比编写。工具版本更新较快,具体配置请以官方最新文档为准。
[9] 时间
2026-08-27

