API 文档

Qwen Image Edit API 完整使用指南

API 文档

Qwen Image Edit API 通过简单的 HTTP 端点提供强大的图像编辑功能。本指南涵盖所有可用端点、参数和使用示例。

身份验证

所有 API 请求都需要使用 API 密钥进行身份验证。在请求头中包含您的 API 密钥:

const headers = {
  'Authorization': `Bearer ${API_KEY}`,
  'Content-Type': 'application/json'
};

基础 URL

https://qwenimageedit.top/api

端点

文本编辑

在图像中编辑或添加文本,同时保持原有样式和上下文。

端点: POST /api/image/text-edit

参数:

参数类型必需描述
imageFile/URL要编辑的源图像
instructionstring文本编辑指令
positionobject文本位置坐标
styleobject文本样式偏好

请求示例:

const response = await fetch('/api/image/text-edit', {
  method: 'POST',
  headers,
  body: JSON.stringify({
    image: 'https://example.com/image.jpg',
    instruction: '将文本"Hello"改为"欢迎"',
    position: { x: 100, y: 50 },
    style: {
      fontSize: 24,
      color: '#000000',
      fontFamily: 'Arial'
    }
  })
});

const result = await response.json();

响应:

{
  "success": true,
  "editedImage": "https://example.com/edited-image.jpg",
  "processingTime": 2.5,
  "creditsUsed": 1
}

语义编辑

对图像进行高级语义更改,如风格转换或对象操作。

端点: POST /api/image/semantic-edit

参数:

参数类型必需描述
imageFile/URL要编辑的源图像
promptstring语义编辑指令
strengthnumber编辑强度 (0.1-1.0)
preserveAreasarray编辑时要保留的区域

请求示例:

const response = await fetch('/api/image/semantic-edit', {
  method: 'POST',
  headers,
  body: JSON.stringify({
    image: 'https://example.com/portrait.jpg',
    prompt: '转换为印象派绘画风格',
    strength: 0.8,
    preserveAreas: [
      { x: 50, y: 50, width: 200, height: 200 }
    ]
  })
});

const result = await response.json();

批量处理

在单个请求中处理多个图像以提高效率。

端点: POST /api/image/batch-edit

参数:

参数类型必需描述
imagesarray图像 URL 或文件数组
operationsarray编辑操作数组
parallelboolean并行处理图像

请求示例:

const response = await fetch('/api/image/batch-edit', {
  method: 'POST',
  headers,
  body: JSON.stringify({
    images: [
      'https://example.com/image1.jpg',
      'https://example.com/image2.jpg'
    ],
    operations: [
      {
        type: 'text-edit',
        instruction: '添加水印"© 2024"',
        position: { x: 10, y: 10 }
      }
    ],
    parallel: true
  })
});

错误处理

API 返回标准 HTTP 状态码和详细错误消息:

{
  "success": false,
  "error": {
    "code": "INVALID_IMAGE",
    "message": "提供的图像格式不受支持",
    "details": "支持的格式:JPEG、PNG、WebP"
  }
}

常见错误代码:

  • INVALID_API_KEY: 无效或缺失的 API 密钥
  • INSUFFICIENT_CREDITS: 操作积分不足
  • INVALID_IMAGE: 不支持的图像格式或损坏的文件
  • PROCESSING_FAILED: 图像处理失败
  • RATE_LIMIT_EXCEEDED: 请求过于频繁

速率限制

  • 免费版: 每分钟 10 次请求
  • 专业版: 每分钟 100 次请求
  • 企业版: 自定义限制

SDK 和库

JavaScript/TypeScript

npm install @qwen-image-edit/sdk
import { QwenImageEdit } from '@qwen-image-edit/sdk';

const client = new QwenImageEdit({
  apiKey: 'your-api-key',
  baseUrl: 'https://qwenimageedit.top/api'
});

const result = await client.textEdit({
  image: 'path/to/image.jpg',
  instruction: '将文本颜色改为红色'
});

Python

pip install qwen-image-edit
from qwen_image_edit import QwenImageEdit

client = QwenImageEdit(api_key='your-api-key')

result = client.text_edit(
    image='path/to/image.jpg',
    instruction='将文本颜色改为红色'
)

Webhooks

对于长时间运行的操作,您可以使用 webhooks 在处理完成时接收通知:

const response = await fetch('/api/image/text-edit', {
  method: 'POST',
  headers,
  body: JSON.stringify({
    image: 'https://example.com/large-image.jpg',
    instruction: '复杂编辑任务',
    webhook: {
      url: 'https://your-app.com/webhook',
      secret: 'webhook-secret'
    }
  })
});

最佳实践

  1. 图像质量: 使用高分辨率图像(最小 512x512)以获得更好的结果
  2. 清晰指令: 提供具体、清晰的编辑指令
  3. 错误处理: 始终实施适当的错误处理
  4. 速率限制: 遵守速率限制并实施指数退避
  5. 缓存: 尽可能缓存结果以减少 API 调用

支持

技术支持和问题咨询: