Saltar al contenido principal
La principal función de la API de Tareas de Flux es consultar el estado de ejecución de una tarea mediante el ID de tarea generado por la API de Generación de Imágenes de Flux. Este documento detallará las instrucciones de integración de la API de Tareas de Flux, ayudándole a integrar y aprovechar al máximo las potentes funciones de esta API. A través de la API de Tareas de Flux, puede consultar fácilmente el estado de ejecución de las tareas de la API de Generación de Imágenes de Flux.

Proceso de Solicitud

Para utilizar la API de Tareas de Flux, primero debe ir a la página de solicitud API de Generación de Imágenes de Flux para solicitar el servicio correspondiente, y luego copiar el ID de tarea de la API de Generación de Imágenes de Flux, como se muestra en la imagen:

Finalmente, acceda a la página de la API de Tareas de Flux API de Tareas de Flux para solicitar el servicio correspondiente. Una vez en la página, haga clic en el botón “Acquire”, como se muestra en la imagen. Página de Solicitud Si aún no ha iniciado sesión o registrado, será redirigido automáticamente a la página de inicio de sesión para invitarlo a registrarse e iniciar sesión. Después de registrarse e iniciar sesión, será redirigido automáticamente a la página actual. Al solicitar por primera vez, se le otorgará un crédito gratuito que le permitirá utilizar esta API de forma gratuita.

Ejemplo de Solicitud

La API de Tareas de Flux se puede utilizar para consultar los resultados de la API de Generación de Imágenes de Flux. Para saber cómo utilizar la API de Generación de Imágenes de Flux, consulte el documento API de Generación de Imágenes de Flux. Tomemos como ejemplo un ID de tarea devuelto por el servicio de la API de Generación de Imágenes de Flux, y demostraremos cómo utilizar esta API. Supongamos que tenemos un ID de tarea: 2db0168c-2373-4367-8d9a-9dc778802e8a, a continuación, demostraremos cómo pasar un ID de tarea.

Ejemplo de Tarea

Configuración de Encabezados y Cuerpo de Solicitud

Encabezados de Solicitud incluyen:
  • accept: especifica que se aceptan respuestas en formato JSON, aquí se debe llenar como application/json.
  • authorization: la clave para llamar a la API, que puede seleccionarse directamente después de la solicitud.
Cuerpo de Solicitud incluye:
  • id: el ID de tarea cargado.
  • action: el método de operación sobre la tarea.
Configurado como se muestra en la imagen:

Ejemplo de Código

Se puede observar que en el lado derecho de la página se han generado automáticamente códigos en varios lenguajes, como se muestra en la imagen:

Algunos ejemplos de código son los siguientes:

CURL

curl -X POST 'https://api.acedata.cloud/flux/tasks' \
-H 'accept: application/json' \
-H 'authorization: Bearer {token}' \
-H 'content-type: application/json' \
-d '{
  "id": "2c454ff3-4f8f-47f0-8147-acb29a84d1c2",
  "action": "retrieve"
}'

Python

import requests

url = "https://api.acedata.cloud/flux/tasks"

headers = {
    "accept": "application/json",
    "authorization": "Bearer {token}",
    "content-type": "application/json"
}

payload = {
    "id": "2c454ff3-4f8f-47f0-8147-acb29a84d1c2",
    "action": "retrieve"
}

response = requests.post(url, json=payload, headers=headers)
print(response.text)

Ejemplo de Respuesta

Después de una solicitud exitosa, la API devolverá la información detallada de la tarea de imagen correspondiente. Por ejemplo:
{
  "_id": "677de81d550a4144a5f4cf62",
  "id": "2db0168c-2373-4367-8d9a-9dc778802e8a",
  "api_id": "deefc5d7-7f22-43e9-929e-f2b6afee60b7",
  "application_id": "001c2f84-2a4a-4c4d-ba3f-8a89f43b5be2",
  "created_at": 1736304669.779,
  "credential_id": "b00bddd3-140f-4343-a9a2-affb312b60de",
  "request": {
    "action": "generate",
    "size": "1024x1024",
    "prompt": "un gato siamés blanco"
  },
  "trace_id": "6624929c-bb80-40c0-81e8-d96af8405d19",
  "user_id": "ad7afe47-cea9-4cda-980f-2ad8810e51cf",
  "response": {
    "success": true,
    "task_id": "2db0168c-2373-4367-8d9a-9dc778802e8a",
    "trace_id": "6624929c-bb80-40c0-81e8-d96af8405d19",
    "data": [
      {
        "prompt": "un gato siamés blanco",
        "image_url": "https://sf-maas-uat-prod.oss-cn-shanghai.aliyuncs.com/outputs/57d9ff7c-5a00-409e-9dcc-90f35b38d16e_0.png",
        "seed": 281520112,
        "timings": {
          "inference": 3.193
        }
      }
    ]
  }
}
El resultado devuelto tiene varios campos, el campo request es el cuerpo de la solicitud al iniciar la tarea, mientras que el campo response es el cuerpo de respuesta devuelto después de completar la tarea. La descripción de los campos es la siguiente.
  • id, el ID de la tarea de imagen generada, utilizado para identificar de manera única esta tarea de generación de imagen.
  • request, consulta la información de solicitud en la tarea de imagen.
  • response, consulta la información de respuesta en la tarea de imagen.

Operación de Consulta por Lotes

Esto es para consultar los detalles de las tareas de imagen para múltiples IDs de tarea, a diferencia de lo anterior, se debe seleccionar la acción como retrieve_batch. Cuerpo de Solicitud incluye:
  • ids: un array de IDs de tarea cargados.
  • action: el método de operación sobre la tarea.
Configurado como se muestra en la imagen:

Ejemplo de Código

Se puede observar que en el lado derecho de la página se han generado automáticamente códigos en varios lenguajes, como se muestra en la imagen:

Algunos ejemplos de código son los siguientes:

Ejemplo de Respuesta

Después de una solicitud exitosa, la API devolverá la información detallada de todas las tareas de imagen en lote. Por ejemplo:
{
  "items": [
    {
      "_id": "677de81d550a4144a5f4cf62",
      "id": "2db0168c-2373-4367-8d9a-9dc778802e8a",
      "api_id": "deefc5d7-7f22-43e9-929e-f2b6afee60b7",
      "application_id": "001c2f84-2a4a-4c4d-ba3f-8a89f43b5be2",
      "created_at": 1736304669.779,
      "credential_id": "b00bddd3-140f-4343-a9a2-affb312b60de",
      "request": {
        "action": "generate",
        "size": "1024x1024",
        "prompt": "un gato siamés blanco"
      },
      "trace_id": "6624929c-bb80-40c0-81e8-d96af8405d19",
      "user_id": "ad7afe47-cea9-4cda-980f-2ad8810e51cf",
      "response": {
        "success": true,
        "task_id": "2db0168c-2373-4367-8d9a-9dc778802e8a",
        "trace_id": "6624929c-bb80-40c0-81e8-d96af8405d19",
        "data": [
          {
            "prompt": "un gato siamés blanco",
            "image_url": "https://sf-maas-uat-prod.oss-cn-shanghai.aliyuncs.com/outputs/57d9ff7c-5a00-409e-9dcc-90f35b38d16e_0.png",
            "seed": 281520112,
            "timings": {
              "inference": 3.193
            }
          }
        ]
      }
    },
    {
      "_id": "677de950550a4144a5f52963",
      "id": "72bdd69d-290d-4710-a6d4-60c78968865a",
      "api_id": "deefc5d7-7f22-43e9-929e-f2b6afee60b7",
      "application_id": "001c2f84-2a4a-4c4d-ba3f-8a89f43b5be2",
      "created_at": 1736304976.278,
      "credential_id": "b00bddd3-140f-4343-a9a2-affb312b60de",
      "request": {
        "action": "generate",
        "size": "1024x1024",
        "prompt": "un gato siamés blanco"
      },
      "trace_id": "1dca4b49-d31d-42e6-83d9-7f0c56f62d31",
      "user_id": "ad7afe47-cea9-4cda-980f-2ad8810e51cf",
      "response": {
        "success": true,
        "task_id": "72bdd69d-290d-4710-a6d4-60c78968865a",
        "trace_id": "1dca4b49-d31d-42e6-83d9-7f0c56f62d31",
        "data": [
          {
            "prompt": "un gato siamés blanco",
            "image_url": "https://sf-maas-uat-prod.oss-cn-shanghai.aliyuncs.com/outputs/57b5c7e5-3436-466d-86ed-583ede4a3d7c_0.png",
            "seed": 1437672535,
            "timings": {
              "inference": 3.175
            }
          }
        ]
      }
    }
  ],
  "count": 2
}

CURL

curl -X POST 'https://api.acedata.cloud/flux/tasks' \
-H 'accept: application/json' \
-H 'authorization: Bearer {token}' \
-H 'content-type: application/json' \
-d '{
  "ids": ["2db0168c-2373-4367-8d9a-9dc778802e8a","72bdd69d-290d-4710-a6d4-60c78968865a"],
  "action": "retrieve_batch"
}'

Python

import requests

url = "https://api.acedata.cloud/flux/tasks"

headers = {
    "accept": "application/json",
    "authorization": "Bearer {token}",
    "content-type": "application/json"
}

payload = {
    "ids": ["2db0168c-2373-4367-8d9a-9dc778802e8a","72bdd69d-290d-4710-a6d4-60c78968865a"],
    "action": "retrieve_batch"
}

response = requests.post(url, json=payload, headers=headers)
print(response.text)

Manejo de errores

Al llamar a la API, si se encuentra con un error, la API devolverá el código de error correspondiente y la información. Por ejemplo:
  • 400 token_mismatched: Solicitud incorrecta, posiblemente debido a parámetros faltantes o inválidos.
  • 400 api_not_implemented: Solicitud incorrecta, posiblemente debido a parámetros faltantes o inválidos.
  • 401 invalid_token: No autorizado, token de autorización inválido o faltante.
  • 429 too_many_requests: Demasiadas solicitudes, ha superado el límite de tasa.
  • 500 api_error: Error interno del servidor, algo salió mal en el servidor.

Ejemplo de respuesta de error

{
  "success": false,
  "error": {
    "code": "api_error",
    "message": "la recuperación falló"
  },
  "trace_id": "2cf86e86-22a4-46e1-ac2f-032c0f2a4e89"
}

Conclusión

A través de este documento, usted ha comprendido cómo utilizar la API de FLux Tasks para consultar información detallada sobre tareas de imágenes individuales o por lotes. Esperamos que este documento le ayude a integrar y utilizar mejor esta API. Si tiene alguna pregunta, no dude en ponerse en contacto con nuestro equipo de soporte técnico.