@@ -16,6 +16,7 @@ alwaysApply: false
16
16
- 使用多语言/任意框架:如 Java、Go、PHP、.NET、Python、Node.js 等。
17
17
- 需要稳定对外服务与弹性伸缩:按量计费、可缩容到 0。
18
18
- 需要私网/内网访问:VPC/PRIVATE 访问、小程序 `callContainer` 内网直连。
19
+ - 需要开发 AI 智能体:基于函数型云托管开发个性化 AI 应用。
19
20
20
21
## 2. 模式选择(快速对比)
21
22
@@ -51,13 +52,15 @@ alwaysApply: false
51
52
- 用来“做事情”的:`manageCloudRun`
52
53
- `init`:创建本地项目(可选模板)
53
54
- `download`:把已有服务的代码拉到本地
54
- - `run`:本地跑起来(仅函数型)
55
+ - `run`:本地跑起来(仅函数型,支持普通函数和Agent模式 )
55
56
- `deploy`:把本地代码部署到云托管
56
57
- `delete`:删除服务(需要显式确认)
58
+ - `createAgent`:创建 AI 智能体(基于函数型云托管)
57
59
- 重要参数(只记这几个)
58
60
- `targetPath`:本地目录(必须是绝对路径)
59
61
- `serverConfig`:CPU/Mem/实例数/访问类型/环境变量等部署参数
60
- - `runOptions`:本地运行端口与临时环境变量(函数型)
62
+ - `runOptions`:本地运行端口与临时环境变量(函数型),支持 `runMode: 'normal' | 'agent'`
63
+ - `agentConfig`:Agent 配置(agentName、botTag、description、template)
61
64
- 删除一定要带 `force: true`,否则不会执行
62
65
63
66
## 5. 核心工作流(先懂步骤,再看示例)
@@ -127,25 +130,38 @@ alwaysApply: false
127
130
{ "name": "manageCloudRun", "arguments": { "action": "deploy", "serverName": "my-svc", "targetPath": "/abs/ws/my-svc", "serverConfig": { "OpenAccessTypes": ["WEB"], "Cpu": 0.5, "Mem": 1, "MinNum": 0, "MaxNum": 5 } } }
128
131
```
129
132
133
+ 6) 创建 AI 智能体(可选)
134
+ ```json
135
+ { "name": "manageCloudRun", "arguments": { "action": "createAgent", "serverName": "my-agent", "targetPath": "/abs/ws/agents", "agentConfig": { "agentName": "MyAgent", "botTag": "demo", "description": "我的智能体", "template": "blank" } } }
136
+ ```
137
+
138
+ 7) 运行智能体(可选)
139
+ ```json
140
+ { "name": "manageCloudRun", "arguments": { "action": "run", "serverName": "my-agent", "targetPath": "/abs/ws/agents/my-agent", "runOptions": { "port": 3000, "runMode": "agent" } } }
141
+ ```
142
+
130
143
## 6. 最佳实践(强烈建议)
131
144
132
145
- 优先 PRIVATE/VPC 或小程序内网 `callContainer`,减少公网暴露。
133
146
- Web 必须用 CloudBase Web SDK 认证;小程序由平台鉴权。
134
147
- 机密通过环境变量下发;多环境(dev/stg/prod)分离配置。
135
148
- 部署前后用 `queryCloudRun.detail` 校验配置与可达性。
136
149
- 镜像分层可复用、体积小;监测启动时延与内存占用。
150
+ - Agent 开发:使用 `@cloudbase/aiagent-framework`,支持 SSE 流式响应,BotId 格式为 `ibot-{name}-{tag}`。
137
151
138
152
## 7. 快速排查
139
153
140
154
- 访问失败:检查 OpenAccessTypes/域名/端口、实例是否缩容为 0。
141
155
- 部署失败:校验 Dockerfile/构建日志/镜像体积与 CPU/Mem 配比。
142
156
- 本地运行失败:仅支持函数型;需 `package.json` 的 `dev`/`start` 或入口 `index.js|app.js|server.js`。
143
157
- 性能抖动:减小依赖与初始化;适当提高 MinNum;优化冷启动。
158
+ - Agent 运行失败:检查 `@cloudbase/aiagent-framework` 依赖、BotId 格式、SSE 响应格式。
144
159
145
160
## 8. 函数型云托管(Function 模式)要点(精简)
146
161
147
162
- 定义:云托管 + 函数框架(`@cloudbase/functions-framework`)+ 函数代码,让容器服务开发像写云函数一样简单。
148
163
- 何时选择:需要 WebSocket/SSE/文件上传/流式响应;需要长任务或连接 DB/消息队列;需要单实例多函数与共享内存、低时延与更好日志/调试。
164
+ - Agent 模式:基于函数型云托管开发 AI 智能体,使用 `@cloudbase/aiagent-framework`,支持 SSE 流式响应和个性化 AI 应用。
149
165
- 工具支持:本地运行仅支持函数型(`manageCloudRun` → `run`);部署用 `manageCloudRun` → `deploy`;查询用 `queryCloudRun`。
150
166
- 迁移提示:与云函数调用链/运行时不同,迁移需少量改造(含客户端调用方式)。
151
167
- 可移植性:基于函数框架,可在本地/主机/Docker 运行,非云托管需自管构建与部署。
0 commit comments