Vai al contenuto principale
La principale funzionalità dell’API Flux Tasks è quella di interrogare lo stato di esecuzione di un’attività utilizzando l’ID dell’attività generato dall’API Flux Images Generation. Questo documento fornirà una descrizione dettagliata dell’integrazione dell’API Flux Tasks, aiutandoti a integrare facilmente e sfruttare appieno le potenti funzionalità di questa API. Con l’API Flux Tasks, puoi facilmente interrogare lo stato di esecuzione delle attività dell’API Flux Images Generation.

Processo di richiesta

Per utilizzare l’API Flux Tasks, è necessario prima andare alla pagina di richiesta Flux Images Generation API per richiedere il servizio corrispondente, quindi copiare l’ID dell’attività dell’API Flux Images Generation, come mostrato nell’immagine:

Infine, accedi alla pagina dell’API Flux Tasks Flux Tasks API per richiedere il servizio corrispondente. Una volta entrato nella pagina, fai clic sul pulsante “Acquire”, come mostrato nell’immagine. Pagina di richiesta Se non hai ancora effettuato il login o la registrazione, verrai automaticamente reindirizzato alla pagina di login che ti invita a registrarti e accedere. Dopo aver effettuato il login o la registrazione, verrai automaticamente riportato alla pagina corrente. Alla prima richiesta, verrà offerto un credito gratuito, che ti consente di utilizzare gratuitamente questa API.

Esempio di richiesta

L’API Flux Tasks può essere utilizzata per interrogare i risultati dell’API Flux Images Generation. Per informazioni su come utilizzare l’API Flux Images Generation, fare riferimento al documento Flux Images Generation API. Prendiamo come esempio un ID di attività restituito dal servizio dell’API Flux Images Generation. Supponiamo di avere un ID di attività: 2db0168c-2373-4367-8d9a-9dc778802e8a, e ora mostriamo come utilizzarlo passando un ID di attività.

Esempio di attività

Impostazione dell’intestazione della richiesta e del corpo della richiesta

Request Headers includono:
  • accept: specifica di ricevere la risposta in formato JSON, qui impostato su application/json.
  • authorization: la chiave per chiamare l’API, che può essere selezionata direttamente dopo la richiesta.
Request Body include:
  • id: l’ID dell’attività caricata.
  • action: il modo in cui operare sull’attività.
Impostato come mostrato nell’immagine:

Esempio di codice

Si può notare che, sul lato destro della pagina, sono già stati generati automaticamente vari codici in diverse lingue, come mostrato nell’immagine:

Alcuni esempi di codice sono i seguenti:

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)

Esempio di risposta

Se la richiesta ha successo, l’API restituirà i dettagli dell’attività dell’immagine in questione. Ad esempio:
{
  "_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": "a white siamese cat"
  },
  "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": "a white siamese cat",
        "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
        }
      }
    ]
  }
}
Il risultato restituito contiene diversi campi, il campo request è il corpo della richiesta inviato per avviare l’attività, mentre il campo response è il corpo della risposta restituito al termine dell’attività. La descrizione dei campi è la seguente.
  • id, l’ID dell’attività di generazione dell’immagine, utilizzato per identificare univocamente questa attività di generazione dell’immagine.
  • request, informazioni sulla richiesta nell’attività dell’immagine.
  • response, informazioni sulla risposta nell’attività dell’immagine.

Operazione di query in batch

Questa è per interrogare i dettagli delle attività delle immagini per più ID di attività. A differenza di quanto sopra, è necessario selezionare l’azione come retrieve_batch. Request Body include:
  • ids: un array di ID delle attività caricate.
  • action: il modo in cui operare sull’attività.
Impostato come mostrato nell’immagine:

Esempio di codice

Si può notare che, sul lato destro della pagina, sono già stati generati automaticamente vari codici in diverse lingue, come mostrato nell’immagine:

Alcuni esempi di codice sono i seguenti:

Esempio di risposta

Se la richiesta ha successo, l’API restituirà i dettagli specifici di tutte le attività delle immagini in batch. Ad esempio:
{
  "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 gatto siamese bianco"
      },
      "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 gatto siamese bianco",
            "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 gatto siamese bianco"
      },
      "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 gatto siamese bianco",
            "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)

Errore di gestione

In caso di errore durante la chiamata all’API, l’API restituirà il codice di errore e le informazioni corrispondenti. Ad esempio:
  • 400 token_mismatched:Richiesta non valida, probabilmente a causa di parametri mancanti o non validi.
  • 400 api_not_implemented:Richiesta non valida, probabilmente a causa di parametri mancanti o non validi.
  • 401 invalid_token:Non autorizzato, token di autorizzazione non valido o mancante.
  • 429 too_many_requests:Troppe richieste, hai superato il limite di frequenza.
  • 500 api_error:Errore interno del server, qualcosa è andato storto sul server.

Esempio di risposta di errore

{
  "success": false,
  "error": {
    "code": "api_error",
    "message": "fetch failed"
  },
  "trace_id": "2cf86e86-22a4-46e1-ac2f-032c0f2a4e89"
}

Conclusione

Attraverso questo documento, hai compreso come utilizzare l’API FLux Tasks per interrogare informazioni dettagliate su singoli o batch di compiti di immagini. Speriamo che questo documento possa aiutarti a integrare e utilizzare meglio questa API. Se hai domande, non esitare a contattare il nostro team di supporto tecnico.