Skip to content

Commit 05e2a95

Browse files
Merge pull request volcengine#25 from volcengine/feat-fine-samples-readme
feat: refine samples readme
2 parents 8917ad5 + a69bd0e commit 05e2a95

File tree

11 files changed

+961
-201
lines changed

11 files changed

+961
-201
lines changed
Lines changed: 151 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,151 @@
1+
# AI Coding Agent - 智能编程助手
2+
3+
## 项目概述
4+
5+
这是一个基于火山引擎AgentKit构建的智能编程助手系统,专门用于帮助用户解决各类编程问题。系统集成了代码执行沙箱、TOS对象存储服务功能,能够提供专业、高效的编程辅助体验。
6+
7+
## 功能特性
8+
9+
### 🔧 核心功能
10+
11+
- **智能编程对话**:基于AI的智能编程助手,能够理解用户编程需求并提供准确代码解决方案
12+
- **代码执行验证**:在沙箱环境中执行代码,验证代码的正确性和运行效果
13+
- **前端代码托管**:自动将前端代码(HTML/CSS/JS)上传至TOS对象存储,并生成可访问的预览链接
14+
- **多语言支持**:支持Python、Java、JavaScript、Go等多种编程语言
15+
- **长期记忆**:支持会话记忆和用户历史记录存储
16+
- **观测能力**:集成OpenTelemetry追踪和APMPlus监控
17+
18+
## 项目结构
19+
20+
```
21+
ai-coding/
22+
├── agent.py # 主智能体应用,包含智能体配置和运行逻辑
23+
├── tools.py # 工具函数模块,包含TOS上传、URL生成等功能
24+
├── requirements.txt # Python依赖包列表
25+
└── README.md # 项目说明文档
26+
```
27+
28+
## 技术架构
29+
30+
### 系统架构图
31+
32+
```
33+
用户请求
34+
35+
AgentKit - Runtime
36+
37+
AI Coding Agent (主智能体)
38+
├── 代码执行工具 (run_code)
39+
├── TOS上传工具 (upload_frontend_code_to_tos)
40+
├── URL生成工具 (get_url_of_frontend_code_in_tos)
41+
```
42+
43+
### 工具集成
44+
45+
系统集成了以下核心工具:
46+
47+
- **代码执行工具**:基于沙箱环境的安全代码执行
48+
- **TOS上传与下载工具**:自动化前端代码托管
49+
50+
## 快速开始
51+
52+
### 1. 前置准备
53+
54+
#### 获取AK/SK
55+
56+
1. 登录火山引擎控制台 (https://console.volcengine.com)
57+
2. 进入"访问控制" → "密钥管理"
58+
3. 点击"创建密钥",生成新的Access Key和Secret Key
59+
4. 为AK/SK配置AgentKit产品权限:
60+
- 进入"访问控制" → "策略管理"
61+
-`AgentKitFullAccess`策略授权给指定用户,确保用户的AK/SK具有完整的AgentKit权限
62+
63+
#### 获取AgentKit工具ID
64+
65+
1. 登录火山引擎AgentKit控制台
66+
2. 进入"工具管理" → "工具列表"
67+
3. 创建新工具:
68+
- 工具名称:ai-coding-agent
69+
- 描述:AI编程助手工具
70+
4. 复制显示的工具ID,用于后续配置
71+
72+
### 2. 安装依赖
73+
74+
```bash
75+
cd 02-use-cases/ai_coding
76+
uv pip install -r requirements.txt
77+
#
78+
pip3 install -r requirements.txt
79+
```
80+
81+
### 3. 配置环境变量
82+
83+
本地必需:
84+
85+
```bash
86+
export VOLCENGINE_ACCESS_KEY=AK
87+
export VOLCENGINE_SECRET_KEY=SK
88+
export DATABASE_TOS_BUCKET=agentkit-platform-{{your account_id}}
89+
export AGENTKIT_TOOL_ID={{your tool_id}}
90+
```
91+
92+
说明:
93+
94+
- `DATABASE_TOS_BUCKET`用来存储前端代码
95+
96+
### 4. 启动与部署
97+
98+
#### 本地调试
99+
100+
本地可以使用 veadk web 进行调试
101+
102+
```bash
103+
# 1. 进入 ai_coding 的上级目录
104+
cd 02-use-cases
105+
106+
# 2. [可选] 创建配置配置 .env 文件,如果 步骤2 已经配置了环境变量,这里可以跳过
107+
touch .env
108+
# 配置 .env 文件,
109+
echo "VOLCENGINE_ACCESS_KEY=AK" >> .env
110+
echo "VOLCENGINE_SECRET_KEY=SK" >> .env
111+
# 可选:如果未设置已有知识库,agent会自动创建知识库并做初始化导入, 这一步需要设置 DATABASE_TOS_BUCKET, 主要上传知识库内容并导入
112+
echo "DATABASE_TOS_BUCKET=agentkit-platform-{{your account_id}}" >> .env
113+
echo "AGENTKIT_TOOL_ID={{your tool_id}}" >> .env
114+
# 3.启动 veadk web 调试
115+
veadk web
116+
```
117+
118+
veadk web 默认会监听 8000 端口, 服务启动后,你可以在浏览器中访问 `http://127.0.0.1:8000`, agent 选择 `ai_coding`, 即可在 web 右侧的输入框中输入问题, 并查看智能体的回复。
119+
120+
#### 部署到火山引擎 AgentKit(runtime):
121+
122+
使用 agentkit 部署到火山引擎。
123+
124+
```bash
125+
# 1. 进入到 ai_coding 目录
126+
cd 02-use-cases/ai_coding
127+
128+
# 2. 配置 agentkit
129+
agentkit config \
130+
--agent_name ai_coding \
131+
--entry_point 'agent.py' \
132+
--runtime_envs DATABASE_TOS_BUCKET=agentkit-platform-{{your account_id}} \
133+
--runtime_envs AGENTKIT_TOOL_ID={{your tool_id}} \
134+
--launch_type cloud
135+
136+
# 3. 部署到 runtime
137+
agentkit launch
138+
```
139+
140+
发布成功后,可以登录火山引擎 AgentKit 控制台,点击 Runtime 查看部署的智能体。
141+
142+
## 使用与测试
143+
144+
示例 Prompt:
145+
146+
- 前端代码生成:请帮我用JavaScript写一个防抖功能
147+
- python代码生成:请帮我写一个斐波那契数列生成函数
148+
149+
## 常见问题
150+
151+
- 首次运行报错 `DATABASE_TOS_BUCKET not set`:需设置用于代码上传的 TOS Bucket 名称。

0 commit comments

Comments
 (0)