138 lines
3.5 KiB
Markdown
Raw Permalink Normal View History

2025-10-15 17:19:26 +08:00
# Batch API 测试Demo
这个demo用于测试通义千问的Batch API是否能正常响应。
## 说明
- 使用测试模型 `batch-test-model` 进行测试
- **不产生模型推理费用**
- 测试文件限制单文件不超过1MB不超过100行
- 最大并行任务数2个
## 文件说明
- `test_model.jsonl` - 测试输入文件包含2个简单请求
- `test_batch_api.py` - 测试脚本
- `README.md` - 本说明文件
## 使用步骤
### 1. 设置API Key
在运行测试前,需要设置环境变量 `DASHSCOPE_API_KEY`
**Windows (PowerShell):**
```powershell
$env:DASHSCOPE_API_KEY="sk-your-api-key"
```
**Windows (CMD):**
```cmd
set DASHSCOPE_API_KEY=sk-your-api-key
```
**Linux/Mac:**
```bash
export DASHSCOPE_API_KEY="sk-your-api-key"
```
### 2. 安装依赖
确保已安装 openai SDK
```bash
pip install openai
```
### 3. 运行测试
进入demo目录并运行测试脚本
```bash
cd demo
python test_batch_api.py
```
## 预期结果
如果API正常响应你会看到
1. **文件上传成功** - 显示文件ID
2. **任务创建成功** - 显示任务ID
3. **任务状态轮询** - 显示任务进展
4. **结果下载** - 显示固定测试响应:`"This is a test result."`
示例输出:
```
============================================================
步骤1上传测试文件
============================================================
正在上传文件: test_model.jsonl
✓ 文件上传成功
文件ID: file-batch-xxx
============================================================
步骤2创建Batch任务
============================================================
正在创建Batch任务...
✓ Batch任务创建成功
任务ID: batch_xxx
状态: validating
============================================================
步骤3等待任务完成
============================================================
[轮询 #1] 任务状态: in_progress
等待10秒后再次查询...
[轮询 #2] 任务状态: completed
============================================================
步骤4下载结果
============================================================
正在下载成功结果...
✓ 成功结果前500字符:
------------------------------------------------------------
{"id":"xxx","custom_id":"1","response":{"status_code":200,...
------------------------------------------------------------
✓ 完整结果已保存到: result.jsonl
============================================================
✓ 测试完成API响应正常
============================================================
```
## 常见问题
### 1. API Key未设置
**错误信息**: `❌ 错误未设置API Key`
**解决方法**: 按照步骤1设置环境变量
### 2. 网络连接失败
**错误信息**: `Connection error``Timeout`
**解决方法**:
- 检查网络连接
- 检查防火墙设置
- 如果在中国大陆,确认能访问阿里云服务
### 3. API Key无效
**错误信息**: `Invalid API Key``Authentication failed`
**解决方法**:
- 检查API Key是否正确
- 确认API Key对应正确的地域北京/新加坡)
- 检查API Key是否过期
### 4. 任务失败
**错误信息**: `❌ 任务失败`
**解决方法**:
- 查看错误详情
- 参考错误码文档https://help.aliyun.com/zh/model-studio/developer-reference/error-code
## 参考文档
- API文档: `../docs/API/Tongyi-API.md`
- 错误码: https://help.aliyun.com/zh/model-studio/developer-reference/error-code
- 批量推理: https://help.aliyun.com/zh/model-studio/batch-inference