Tham chiếu API

Hướng dẫn đầy đủ sử dụng API Qwen Image Edit

Tham chiếu API Qwen Image Edit

Tài liệu này mô tả chi tiết tất cả các tính năng và phương thức của API Qwen Image Edit.

1. Giao diện API

Tất cả các lệnh gọi API được thực hiện đến điểm cuối cơ sở sau:

https://api.qwen-image-edit.com/v1

2. Xác thực

Để truy cập API, cần có khóa API. Truyền khóa của bạn trong tiêu đề Authorization như sau:

Authorization: Bearer YOUR_API_KEY

3. Phương thức cốt lõi

3.1. /edit - Chỉnh sửa hình ảnh

Phương thức chính để chỉnh sửa hình ảnh.

Phương thức HTTP: POST

Nội dung yêu cầu:

{
  "image": "https://example.com/image.jpg",
  "prompt": "Thay đổi văn bản trên hình ảnh",
  "elements": [
    {
      "type": "text",
      "content": "Văn bản mới",
      "position": "top-left"
    }
  ],
  "style_transfer": {
    "preset": "van_gogh"
  }
}

Tham số:

Tham sốKiểuMô tả
imagestringURL của hình ảnh cần chỉnh sửa (bắt buộc)
promptstringHướng dẫn chỉnh sửa (bắt buộc)
elementsarrayCác yếu tố cần thêm (tùy chọn)
style_transferobjectCài đặt chuyển đổi kiểu (tùy chọn)

Phản hồi thành công:

{
  "edited_image_url": "https://api.qwen-image-edit.com/edited/abc123.jpg",
  "job_id": "job_abc123",
  "status": "completed"
}

3.2. /analyze - Phân tích hình ảnh

Được sử dụng để lấy thông tin về hình ảnh.

Phương thức HTTP: POST

Nội dung yêu cầu:

{
  "image": "https://example.com/image.jpg",
  "features": ["text", "objects"]
}

Tham số:

Tham sốKiểuMô tả
imagestringURL của hình ảnh cần phân tích (bắt buộc)
featuresarrayCác tính năng cần phân tích (bắt buộc)

Phản hồi thành công:

{
  "text": [
    {
      "content": "Văn bản mẫu",
      "position": [100, 100, 200, 150]
    }
  ],
  "objects": [
    {
      "label": "person",
      "position": [50, 50, 150, 200]
    }
  ]
}

4. Phương thức tiện ích

4.1. /jobs/{job_id} - Trạng thái công việc

Để kiểm tra trạng thái của các hoạt động chạy dài.

Phương thức HTTP: GET

Phản hồi thành công:

{
  "status": "processing",
  "progress": 50,
  "estimated_completion": "2023-06-15T14:30:00Z"
}

5. Cấu hình nâng cao

5.1. Xử lý hàng loạt

Để xử lý nhiều hình ảnh trong một yêu cầu:

{
  "batch": [
    {
      "image": "https://example.com/image1.jpg",
      "prompt": "Chỉnh sửa hình ảnh đầu tiên"
    },
    {
      "image": "https://example.com/image2.jpg",
      "prompt": "Chỉnh sửa hình ảnh thứ hai"
    }
  ]
}

5.2. Xử lý lỗi

Các lỗi API được trả về với mã trạng thái HTTP tiêu chuẩn:

Mô tả
400Yêu cầu không hợp lệ
401Không được ủy quyền
429Quá nhiều yêu cầu
500Lỗi máy chủ

6. Giới hạn và hạn ngạch

Tính năngGiới hạn
Yêu cầu mỗi phút60
Yêu cầu mỗi ngày5000
Kích thước hình ảnh10MB

7. Webhook

Bạn có thể sử dụng webhook để nhận thông báo khi các hoạt động chạy dài hoàn tất.

7.1. job.completed

{
  "event": "job.completed",
  "data": {
    "job_id": "job_abc123",
    "edited_image_url": "https://api.qwen-image-edit.com/edited/abc123.jpg"
  }
}

7.2. job.failed

{
  "event": "job.failed",
  "data": {
    "job_id": "job_abc123",
    "error": "Lỗi khi xử lý hình ảnh"
  }
}

8. SDK

Các SDK được hỗ trợ chính thức:

  • JavaScript/TypeScript
  • Python
  • PHP
  • Java
  • Go
  • Ruby

Ví dụ sử dụng SDK:

// JavaScript/TypeScript
import QwenImageEdit from 'qwen-image-edit';

const client = new QwenImageEdit({
  apiKey: 'YOUR_API_KEY',
  region: 'YOUR_REGION'
});

async function editImage() {
  try {
    const result = await client.edit({
      image: 'https://example.com/image.jpg',
      prompt: 'Chỉnh sửa hình ảnh'
    });
    console.log('Hình ảnh đã chỉnh sửa:', result.edited_image_url);
  } catch (error) {
    console.error('Lỗi:', error);
  }
}

editImage();