Hoppa till huvudinnehåll
Denna artikel kommer att introducera en Flux Images Generation API integrationsbeskrivning, som kan generera Flux officiella bilder genom att ange anpassade parametrar.

Ansökningsprocess

För att använda API:et måste du först gå till Flux Images Generation API motsvarande sida för att ansöka om den tjänst som behövs. När du kommer till sidan, klicka på knappen “Acquire”, som visas i bilden nedan: Om du inte har loggat in eller registrerat dig kommer du automatiskt att omdirigeras till inloggningssidan där du blir inbjuden att registrera dig och logga in. Efter att ha loggat in eller registrerat dig kommer du automatiskt att återvända till den aktuella sidan. Vid första ansökan kommer det att finnas en gratis kvot som ges, så att du kan använda API:et gratis.

Grundläggande användning

Först bör du förstå den grundläggande användningen, vilket innebär att du anger en prompt prompt, en åtgärd action, och bildstorlek size, för att få det bearbetade resultatet. Först behöver du enkelt skicka ett action-fält, vars värde är generate, och sedan behöver vi också ange en prompt, den specifika informationen är som följer:

Här kan vi se att vi har ställt in Request Headers, inklusive:
  • accept: vilken typ av format du vill ta emot som svar, här anges application/json, det vill säga JSON-format.
  • authorization: API-nyckeln för att anropa API:et, som kan väljas direkt efter ansökan.
Dessutom har vi ställt in Request Body, inklusive:
  • action: åtgärden för denna bildgenereringsuppgift.
  • size: storleken på bildgenereringsresultatet.
  • count: antalet bilder som ska genereras, standardvärdet är 1, detta parameter är endast giltigt för bildgenereringsuppgifter, inte för redigeringsuppgifter.
  • prompt: prompten.
  • model: genereringsmodellen, standard flux-dev.
  • callback_url: URL:en där resultaten ska återkopplas.
Parametern size har vissa speciella begränsningar, som huvudsakligen delas in i width x height bildförhållande och x:y bildförhållande, specifikt som följer:
ModellOmfång
flux-2-flexStöder bildförhållande x >= 64 måste vara en multipel av 32
flux-2-proStöder bildförhållande x >= 64 måste vara en multipel av 32
flux-2-maxStöder bildförhållande x >= 64 måste vara en multipel av 32
flux-pro-1.1Stöder bildförhållande 256 <= x <= 1440 måste vara en multipel av 32
flux-devStöder bildförhållande 256 <= x <= 1440 måste vara en multipel av 32
flux-pro-1.1-ultraStöder inte bildförhållande, stöder bildförhållande
flux-kontext-proStöder inte bildförhållande, stöder bildförhållande
flux-kontext-maxStöder inte bildförhållande, stöder bildförhållande
Referensbildförhållanden: “1:1”, “16:9”, “21:9”, “3:2”, “2:3”, “4:5”, “5:4”, “3:4”, “4:3”, “9:16”, “9:21”, När du har valt kan du se att motsvarande kod också har genererats till höger, som visas i bilden nedan:

Klicka på knappen “Try” för att testa, som visas i bilden ovan, här får vi följande resultat:
{
  "success": true,
  "task_id": "226eb763-9eab-4d06-ad57-d59753a03307",
  "trace_id": "089f8b46-0167-4f25-88ee-3c3f88d80e84",
  "data": [
    {
      "prompt": "a white siamese cat",
      "image_url": "https://fal.media/files/lion/NVhtlwwGYQD6HrGaEfrzu_341484fad6d84b21b73f4f8824a3f98a.png",
      "timings": 1752743801
    },
    {
      "prompt": "a white siamese cat",
      "image_url": "https://fal.media/files/monkey/8UEQpFbQCYVOK1wKP3aV0_9bbc26fad64049b18d0244b99ef66ad1.png",
      "timings": 1752743801
    }
  ]
}
Det returnerade resultatet har flera fält, som beskrivs nedan:
  • success, statusen för den aktuella bildgenereringsuppgiften.
  • task_id, ID för den aktuella bildgenereringsuppgiften.
  • trace_id, spårnings-ID för den aktuella bildgenereringsuppgiften.
  • data, resultatlistan för den aktuella bildgenereringsuppgiften.
    • image_url, länken till bildgenereringsuppgiften.
    • prompt, prompten.
Vi kan se att vi har fått tillfredsställande bildinformation, vi behöver bara hämta den genererade Flux-bilden baserat på bildlänken i data-resultatet. Om du vill generera motsvarande integrationskod kan du direkt kopiera den som genererats, till exempel CURL-koden nedan:
curl -X POST 'https://api.acedata.cloud/flux/images' \
-H 'authorization: Bearer {token}' \
-H 'accept: application/json' \
-H 'content-type: application/json' \
-d '{
  "action": "generate",
  "prompt": "a white siamese cat",
  "model": "flux-kontext-pro",
  "count": 2
}'

Redigera bilduppgift

Om du vill redigera en viss bild måste du först ange parametern image_url med länken till den bild som ska redigeras, vid denna tidpunkt stöder action endast edit, så att du kan specificera följande innehåll:
  • model: den modell som används för denna redigeringsuppgift, för närvarande stöder uppgiften flux-kontext-max, flux-kontext-pro.
  • image_url: länken till den bild som ska laddas upp för redigering.
Exempel på ifyllning nedan:

När du har fyllt i kommer koden automatiskt att genereras som följer:

Motsvarande kod:
import requests

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

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

payload = {
    "action": "edit",
    "prompt": "a white siamese cat",
    "model": "flux-kontext-pro",
    "image_url": "https://cdn.acedata.cloud/ytj2qy.png"
}

response = requests.post(url, json=payload, headers=headers)
print(response.text)
När du klickar på kör kan du se att du omedelbart får ett resultat, som följer:
{
  "success": true,
  "task_id": "2a7979ff-1f77-4380-92c6-a2dc37c3b4c8",
  "trace_id": "732b65c0-48d9-49f7-b568-64e5acffe4c0",
  "data": [
    {
      "prompt": "a white siamese cat",
      "image_url": "https://fal.media/files/monkey/aEUXJZ6Faj9YXUCQVs01Q_af0cea56c558441c9ba8df67b200812d.png",
      "timings": 1752744073
    }
  ]
}
Vi kan se att den genererade effekten är en redigering av den ursprungliga bilden, resultatet liknar det ovan.

Asynkron återkoppling

Eftersom Flux Images Generation API:s genereringstid är relativt lång, cirka 1-2 minuter, om API:t inte svarar under en längre tid, kommer HTTP-förfrågan att hålla anslutningen öppen, vilket leder till extra systemresursförbrukning. Därför erbjuder detta API också stöd för asynkrona återkopplingar. Den övergripande processen är: När klienten initierar en begäran, specificerar den ett extra fält callback_url. Efter att klienten har initierat API-förfrågan kommer API:t omedelbart att returnera ett resultat som innehåller ett fält med task_id, vilket representerar det aktuella uppdragets ID. När uppdraget är slutfört kommer resultatet av den genererade bilden att skickas till klientens angivna callback_url i POST JSON-format, vilket också inkluderar fältet task_id, så att uppdragets resultat kan kopplas ihop med ID:t. Nedan går vi igenom ett exempel för att förstå hur man gör detta. Först är Webhook-återkopplingen en tjänst som kan ta emot HTTP-förfrågningar, utvecklaren bör ersätta med URL:en till sin egen byggda HTTP-server. Här för att underlätta demonstration använder vi en offentlig Webhook-exempelsida https://webhook.site/, öppna denna webbplats för att få en Webhook-URL, som visas i bilden: Kopiera denna URL, så kan den användas som Webhook, exemplet här är https://webhook.site/3d32690d-6780-4187-a65c-870061e8c8ab. Därefter kan vi ställa in fältet callback_url till ovanstående Webhook-URL, samtidigt som vi fyller i motsvarande parametrar, det specifika innehållet visas i bilden:

Klicka på kör, och du kan se att ett resultat omedelbart erhålls, som följer:
{
  "task_id": "6a97bf49-df50-4129-9e46-119aa9fca73c"
}
Vänta en stund, så kan vi observera resultatet av den genererade bilden på https://webhook.site/3d32690d-6780-4187-a65c-870061e8c8ab, som visas i bilden: Innehållet är som följer:
{
  "success": true,
  "task_id": "6a97bf49-df50-4129-9e46-119aa9fca73c",
  "trace_id": "9b4b1ff3-90f2-470f-b082-1061ec2948cc",
  "data": [
    {
      "prompt": "a white siamese cat",
      "image_url": "https://sf-maas-uat-prod.oss-cn-shanghai.aliyuncs.com/outputs/f4f8d407-377a-408a-82d0-427a5a836f09_0.png",
      "seed": 1698551532,
      "timings": {
        "inference": 3.328
      }
    }
  ]
}
Vi kan se att resultatet innehåller ett fält med task_id, de andra fälten liknar de ovan, och genom detta fält kan uppdraget kopplas ihop.

Felhantering

Vid anrop av API:t, om ett fel uppstår, kommer API:t att returnera motsvarande felkod och information. Till exempel:
  • 400 token_mismatched: Bad request, möjligtvis på grund av saknade eller ogiltiga parametrar.
  • 400 api_not_implemented: Bad request, möjligtvis på grund av saknade eller ogiltiga parametrar.
  • 401 invalid_token: Obehörig, ogiltig eller saknad auktoriseringstoken.
  • 429 too_many_requests: För många förfrågningar, du har överskridit hastighetsgränsen.
  • 500 api_error: Intern serverfel, något gick fel på servern.

Exempel på felrespons

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

Slutsats

Genom detta dokument har du fått en förståelse för hur du använder Flux Images Generation API för att generera bilder genom att ange promptord. Vi hoppas att detta dokument kan hjälpa dig att bättre integrera och använda detta API. Om du har några frågor, tveka inte att kontakta vårt tekniska supportteam.