Pro API: ohjaa pilvessä tapahtuvaa renderöintiä omalta palvelimeltasi

Kaikki mitä sovellus tekee verkossa (kuvat, retusointi, videot, koulutetut hahmot) on myös saavutettavissa HTTP:n kautta, samaan hintaan krediiteissä, ilman että sovelluksen tarvitsee olla auki. Ohjaat sitä omalta palvelimeltasi, skripteistäsi tai agentistasi lisenssisi krediiteillä.

Saatavilla Pro-lisenssillä. Avain luodaan sovelluksessa kohdassa Asetukset > API.

Perustahttps://api.tendre.ai/pro/v1
Todennusotsake Authorization: Bearer tk_pro_...
FormaattiJSON sisään ja ulos, PNG kuville, MP4 videoille
Konekuvausopenapi-pro.yaml (OpenAPI 3.0), asiakkaan generointia varten

Hanki avain

Sovelluksessa Pro-lisenssillä: Asetukset > API > Uusi avain. Anna sille nimi (esimerkiksi "tuotantopalvelin"), valitse sen käyttöoikeudet ja halutessasi päivittäinen krediittiraja sekä vanhenemispäivä.

Avain näytetään vain kerran. Kopioi se heti. Kadonnutta avainta ei palauteta, se korvataan uudella.

  • Enintään kolme aktiivista avainta per lisenssi. Riittää kierrättämään yhden ilman palvelukatkosta: luo uusi, asenna se, peruuta vanha.
  • Avain ei ole istumapaikka. Tietokoneesi ja puhelimesi pysyvät käytettävissä sen rinnalla.
  • Avain on yhtä arvokas kuin krediittisi. Älä koskaan laita avainta verkkosivulle, jaettuun sovellukseen tai julkiseen repositorioon. Aseta sille päivittäinen krediittiraja heti kun se elää palvelimella.

Mitä avaimella saa tehdä

KäyttöoikeusMitä se sallii
LukuAina myönnetty: renderöinnin tila, tiedoston lataus, saldo, hahmoluettelo
KuvatKuvien lähettäminen ja peruuttaminen (generointi, retusointi, variaatio)
VideotVideoiden lähettäminen ja peruuttaminen

Kutsu avaimen käyttöoikeuksien ulkopuolelta vastaa 403 portee_manquante, puuttuva käyttöoikeus löytyy kentästä portee.

Renderöinnin elinkaari

Aina samat kolme vaihetta.

  1. Lähetä. POST /images tai POST /videos. Välitön vastaus jobId:llä ja hinnalla.
  2. Kysy tilaa. GET /images/{jobId} tai GET /videos/{jobId}, kolmen sekunnin välein, kunnes status on completed tai failed.
  3. Lataa. GET /images/{jobId}/file tai GET /videos/{jobId}/file, heti kun tila on completed. Tiedostoa ei säilytetä, joten lataa se odottamatta.

Karkeita aikatauluja: 10-40 sekuntia kuvalle, 1-5 minuuttia videolle, pidempään kun moottori käynnistyy kylmältä.

Ensimmäinen kutsusi

KEY=tk_pro_...
B=https://api.tendre.ai/pro/v1
curl -s $B/credits -H "Authorization: Bearer $KEY"
{ "balance": 1830, "licenseId": "lic_...", "key": "k_1a2b3c4d",
  "limits": { "concurrent": 2, "perMinute": 60, "perDay": 0 }, "running": 0 }

Jos tämä vastaa, kaikki muukin toimii.

Täydellinen renderöinti kolmella tavalla

bash

KEY=tk_pro_...
B=https://api.tendre.ai/pro/v1
JOB=$(curl -s $B/images -H "Authorization: Bearer $KEY" -H "Content-Type: application/json" \
  -d '{"prompt":"a lighthouse at dawn, photorealistic","width":1216,"height":832}' | jq -r .jobId)
until curl -s $B/images/$JOB -H "Authorization: Bearer $KEY" | grep -q '"completed"'; do sleep 3; done
curl -s $B/images/$JOB/file -H "Authorization: Bearer $KEY" -o lighthouse.png

PowerShell

$H = @{ Authorization = "Bearer tk_pro_..." }
$B = "https://api.tendre.ai/pro/v1"
$job = Invoke-RestMethod -Uri "$B/videos" -Method Post -Headers $H -ContentType "application/json" `
  -Body '{"prompt":"waves on a beach at sunset, gentle wind","width":1080,"height":1920,"audio":true}'
do { Start-Sleep 5; $s = Invoke-RestMethod -Uri "$B/videos/$($job.jobId)" -Headers $H } while ($s.status -eq "pending")
Invoke-WebRequest -Uri "https://api.tendre.ai$($s.file_url)" -Headers $H -OutFile beach.mp4

Python

import time, requests
KEY, B = "tk_pro_...", "https://api.tendre.ai/pro/v1"
H = {"Authorization": f"Bearer {KEY}"}
job = requests.post(f"{B}/videos", headers=H, json={"prompt": "waves on a beach at sunset, gentle wind", "audio": True}).json()
while (s := requests.get(f"{B}/videos/{job['jobId']}", headers=H).json())["status"] == "pending":
    time.sleep(3)
if s["status"] == "completed":
    open("beach.mp4", "wb").write(requests.get("https://api.tendre.ai" + s["file_url"], headers=H).content)
else:
    print("failed:", s.get("detail"))

Mitä seuraavaksi

  • Kuvat: generointi, kolme retusointitilaa, hahmot.
  • Videot: formaatit, hintaruudukko, alku- ja loppuruudut.
  • Tili: saldo, rajat, koulutetut hahmot, toiminta.
  • Rajat ja virheet: rajat, kaikki virhekoodit, hyvät käytännöt.

Mitä ei ole vielä

Suunnitellussa järjestyksessä: hahmojen koulutus omista valokuvistasi, äänet, skaalaus 2K:hon, kiinteä siemen renderöinnin toistamiseksi ja webhookit jotta voit lopettaa tilan kyselemisen.

API on versioitu. Kaikki tässä kuvattu pysyy voimassa osoitteessa /pro/v1: lisäykset eivät koskaan riko olemassa olevaa, ja rikkova muutos toimitettaisiin nimellä /pro/v2.

Windows · Pilvi tai NVIDIA

Generoi yksityisesti. Tänään.

Lataa tendre.AI, aktivoi kerran, ja käytä sitä ikuisesti, täysin offline-tilassa, omalla GPU:llasi.

Lataa WindowsilleLataa Androidille (.apk)
Lataa MacilleMac-versio tulossa pian!
OS Windows 10/11GPU NVIDIA 8GB+VRAM 12GB suositeltuLevytila 20GB

Ei NVIDIA-näytönohjainta? Aloita 100-prosenttisesti pilvessä: 10 ilmaista kuvaa joka päivä, sen jälkeen 1 krediitti per kuva. NVIDIA-näytönohjain (8GB+) avaa rajattoman paikallisen generoinnin.