Hoppa till huvudinnehåll
Detta dokument kommer att introducera en Hailuo Videos Generation API integrationsbeskrivning, som kan generera Hailuo officiella videor genom att ange anpassade parametrar.

Ansökningsprocess

För att använda API:et måste du först gå till Hailuo Videos 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 för 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ändningsmetoden, vilket innebär att du anger en prompt prompt, en åtgärd action, en referensbild för första ramen first_image_url samt en modell model, 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 ange modellen, som för närvarande huvudsakligen består av bild-till-video-modellen minimax-i2v och text-till-video-modellen minimax-t2v, med specifikt innehåll som följer:

Här kan vi se att vi har ställt in Request Headers, inklusive:
  • accept: vilken format av svar du vill ta emot, här anges som application/json, det vill säga JSON-format.
  • authorization: nyckeln för att anropa API:et, som kan väljas direkt efter ansökan.
Dessutom har vi ställt in Request Body, inklusive:
  • model: modellen för att generera videon, som huvudsakligen består av bild-till-video-modellen minimax-i2v och text-till-video-modellen minimax-t2v.
  • action: åtgärden för denna videogenereringsuppgift.
  • first_image_url: när bild-till-video-modellen minimax-i2v väljs, måste en länk till referensbilden för första ramen laddas upp, Base64-kodning stöds inte.
  • prompt: prompten.
  • callback_url: URL:en för att få tillbaka resultatet.
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": "baf1034c-684c-46be-ae6d-89ebb89b690d",
  "trace_id": "3221eb74-1a25-447a-ba69-7d9b310e306c",
  "data": [
    {
      "id": "0pv8yhe4fdrge0cmckpv23pd2g",
      "model": "minimax-t2v",
      "prompt": "Internal heat",
      "video_url": "https://file.aigpai.com/czjl/qoueLWBokF3ud6tdVD6VJTZuXTnK5HaMO2qAOS46Ef8VSBFUA/tmp9e3u11c1.output.mp4",
      "state": "succeeded"
    }
  ]
}
Det returnerade resultatet har flera fält, som beskrivs nedan:
  • success, statusen för videogenereringsuppgiften.
  • task_id, ID för videogenereringsuppgiften.
  • trace_id, spårnings-ID för videogenereringen.
  • data, resultatlistan för videogenereringsuppgiften.
    • id, videons ID för videogenereringsuppgiften.
    • prompt, prompten för videogenereringsuppgiften.
    • model, länk till omslaget för videogenereringsuppgiften.
    • video_url, länk till videon för videogenereringsuppgiften.
    • state, statusen för videogenereringsuppgiften.
Vi kan se att vi har fått tillfredsställande videoinformation, och vi behöver bara hämta den genererade Hailuo-videon baserat på videolänkadressen i data. Om du vill generera motsvarande integrationskod kan du direkt kopiera den som till exempel CURL-koden nedan:
curl -X POST 'https://api.acedata.cloud/hailuo/videos' \
-H 'accept: application/json' \
-H 'authorization: Bearer {token}' \
-H 'content-type: application/json' \
-d '{
  "action": "generate",
  "prompt": "Internal heat"
}'

Asynkron återkoppling

Eftersom Hailuo Videos Generation API:s genereringstid är relativt lång, cirka 1-2 minuter, om API:et 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 asynkron återkoppling. Den övergripande processen är: när klienten initierar en begäran, specificerar den ett extra callback_url-fält. Efter att klienten har initierat API-begäran kommer API:et omedelbart att returnera ett resultat som innehåller ett task_id-fält, vilket representerar det aktuella uppgifts-ID:t. När uppgiften är klar kommer resultatet av den genererade videon att skickas till klientens angivna callback_url i POST JSON-format, vilket också inkluderar task_id-fältet, så att uppgiftsresultatet kan kopplas ihop med ID:t. Låt oss förstå hur man gör detta genom ett exempel. 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 nedan: Kopiera denna URL, så kan den användas som Webhook, här är exemplet https://webhook.site/580b81f5-596e-4321-b03f-606770b0bb83. Därefter kan vi ställa in fältet callback_url till ovanstående Webhook-URL, samtidigt som vi fyller i motsvarande parametrar, med specifikt innehåll som visas i bilden nedan:

Klicka på körning, och du kan omedelbart få ett resultat, som följer:
{
  "task_id": "05aff65c-5e84-442b-8e29-3a5d27130840"
}
Vänta en stund, så kan vi observera resultatet av den genererade videon på https://webhook.site/580b81f5-596e-4321-b03f-606770b0bb83, som visas i bilden nedan: Innehållet är som följer:
{
    "success": true,
    "task_id": "05aff65c-5e84-442b-8e29-3a5d27130840",
    "trace_id": "b9856b8a-725d-45c9-befe-e789d9fd9ffb",
    "data": [
        {
            "id": "t80jhsf96srg80cmcm6b0rk8gm",
            "model": "minimax-t2v",
            "prompt": "Internal heat",
            "video_url": "https://file.aigpai.com/czjl/YPaUz2DcwpJqItTXAG9XHAoEoj3dbF0XPU69LT5nefCMzBFUA/tmp8s_59jez.output.mp4",
            "state": "succeeded"
        }
    ]
}
Vi kan se att resultatet innehåller ett task_id-fält, och de andra fälten liknar de som nämndes tidigare, och genom detta fält kan uppgifterna kopplas samman.

Felhantering

När du anropar API:et, om du stöter på ett fel, kommer API:et att returnera motsvarande felkod och information. Till exempel:
  • 400 token_mismatched:Felaktig begäran, möjligtvis på grund av saknade eller ogiltiga parametrar.
  • 400 api_not_implemented:Felaktig begäran, 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 begärningar, du har överskridit hastighetsgränsen.
  • 500 api_error:Internt 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 Hailuo Videos Generation API för att generera video genom att ange en prompt och en referensbild för första ramen. Vi hoppas att detta dokument kan hjälpa dig att bättre integrera och använda API:et. Om du har några frågor, tveka inte att kontakta vårt tekniska supportteam.