models

Google: Nano Banana Pro (Gemini 3 Pro Image Preview)

Markdown · JSON

Google: Nano Banana Pro (Gemini 3 Pro Image Preview)

A Nano Banana Pro a Google Gemini 3 Pro Image Preview modellje képgeneráláshoz és szerkesztéshez. Dokumentált profiljában több képből álló kompozíciót, beágyazott szöveget, helyi kreatív módosításokat, Search-alapú forráshoz kötést és 2K vagy 4K kimenetet támogat.

A modellről

Ez a leírás a modell képességeit ismerteti. Az Ailootban elérhető bemenetek, kimenetek és lehetőségek alább, a kiválasztott metódusnál láthatók.

A Nano Banana Pro a Google Gemini 3 Pro modellre épülő képgeneráló és képszerkesztő modellje. Szöveget és képeket fogad, és képeket vagy szöveget ad vissza. Közzétett profilja infografikákat, diagramokat, termékvizualizációkat, képes forgatókönyveket és több elemet vagy referenciát egyesítő kompozíciókat fed le.

A kép és látható tartalmának megkomponálása

Nevezze meg a célt, a fő témát és az elemek kapcsolatát. Infografikához adja meg a tényleges számadatokat és pontos címkéket, majd írja le a hierarchiájukat. Termékjelenetnél azonosítsa a tárgyat, nézőpontot, környezetet és a felismerhetően megőrzendő részleteket. A modell dokumentált szövegmegjelenítési szerepe hosszabb szövegekre és többnyelvű elrendezésekre is kiterjed; ellenőrizze a visszakapott betűket, számokat és igazítást a képen.

A keresésalapú forráshoz kötés dokumentált módja aktuális információ bevonásának egy vizuális feladatba. Ahol az interfész elérhetővé teszi, őrizze meg a forrástényeket a feladatleírással együtt, és vizsgálja meg, hogyan jelennek meg a végső grafikán. Egy vizuálisan meggyőző grafikont vagy diagramot is össze kell vetni azokkal az adatokkal és címkékkel, amelyeket ábrázolnia kellett.

Referenciák és kreatív szerkesztések

A közzétett hosztolási profil legfeljebb tizennégy referenciaképet fogad. Rendeljen mindegyikhez szerepet, például témát, környezetet vagy vizuális stílust, ne hagyja megmagyarázatlanul a kapcsolatukat. A modellleírás legfeljebb öt téma azonosságának megőrzését hangsúlyozza; a visszakapott kompozíció egészében vesse össze a tényleges témákat és fontos részleteket.

Szerkesztésnél nevezze meg a módosítandó területet vagy tárgyat és a megőrzendő elemeket. A dokumentált kreatív vezérlők helyi módosításokat, világítás- és fókuszállítást, kameratranszformációkat és rugalmas képarányokat tartalmaznak. Tartsa elérhetően a forrásképet a kért szerkesztés és a felismerhetően megőrzendő részletek ellenőrzéséhez is.

Felbontás és használható vizuális anyag

A profil 2K és 4K kimenetet dokumentál. Válassza ki a vizuális arányt és kimeneti méretet a tervezett elhelyezéshez, majd vizsgálja meg a tényleges visszakapott méreteket és fájltulajdonságokat. Amikor a kép nagyobb elrendezésbe kerül, a designkoncepciónak és az exportkövetelménynek kapcsolatban kell maradnia.

Őrizze meg a kiválasztott képet a feladatleírással, a referenciák szerepével és módosítási előzményekkel együtt. Ellenőrizze a pontos szöveget, a téma folytonosságát és az információ hierarchiáját abban a méretben, amelyben az anyagot használni fogják. Hasznos eredmény ennek a modellprofilnak az ellenőrzött vizuális anyaga vagy kísérőszövege, készen a további design- vagy produkciós munkára.

Gyakorlati feladat

Gyakorlati feladat

Technikai példa angolul

Create a stock comparison infographic

Create a clean landscape infographic for a warehouse noticeboard. Title: "Weekly stock". Show exactly three labelled bars: "Boxes 24", "Bags 12", "Tubes 6". Use a white background, dark text and one blue accent. Keep labels large, align the bars to a common baseline and add no extra numbers or logos.

Várt eredmény

One infographic image with the exact title and three proportional, labelled bars on a common baseline.

Az eredmény ellenőrzése

Inspect all lettering and confirm the bar values and relative lengths match 24, 12 and 6.
Ailoot Ultra · OpenAI Chat POST /v1/chat/completions google/gemini-3-pro-image-preview

google/gemini-3-pro-image-preview

Google /google/gemini-3-pro-image-preview

Kezdő lépések

A Nano Banana Pro a Google Gemini 3 Pro Image Preview modellje képgeneráláshoz és szerkesztéshez. Dokumentált profiljában több képből álló kompozíciót, beágyazott szöveget, helyi kreatív módosításokat, Search-alapú forráshoz kötést és 2K vagy 4K kimenetet támogat.

Elfogadott bemenetek
Szöveg
Eredmények
Szöveg

Elérhető az Ailootban · bemenetek és metódusok

Ailoot Ultra · OpenAI Chat POST /v1/chat/completions
Bemenet
text
Kimenet
text
Kimeneti formátum
json vagy SSE
MezőTípusKövetelményÉrtékek és korlátokAlapértelmezett
MezőmodelTípusstringKövetelményKötelezőÉrtékek és korlátok
google/gemini-3-pro-image-preview
Alapértelmezett—
MezőmessagesTípusmessage[]KövetelményKötelezőÉrtékek és korlátok
Minimális elemszám: 1
Alapértelmezett—
Mezőmessages[].roleTípusstringKövetelményKötelezőÉrtékek és korlátok
Példák: system, user, assistant, tool, function
Feltételek: Ezeket a szerepeket a forráskód kompatibilitási típusai kifejezetten reprezentálják; a pontos szerepkészlet továbbra is modellspecifikus.
Modelltől függ
Alapértelmezett—
Mezőmessages[].contentTípusstring|content_part[]|nullKövetelményOpcionálisÉrtékek és korlátokAlapértelmezett—
Mezőmessages[].tool_callsTípustool_call[]KövetelményOpcionálisÉrtékek és korlátokAlapértelmezett—
Mezőmessages[].tool_call_idTípusstringKövetelményOpcionálisÉrtékek és korlátok
Akkor alkalmazandó, ha: role=tool; használja a ténylegesen visszaadott ID-t
Alapértelmezett—
Mezőmessages[].nameTípusstringKövetelményOpcionálisÉrtékek és korlátokAlapértelmezett—
Mezőmessages[].reasoning_contentTípusstringKövetelményOpcionálisÉrtékek és korlátok
Akkor alkalmazandó, ha: Küldje vissza a ténylegesen visszaadott gondolkodási tartalmat, ha ez a modell használja
Alapértelmezett—
Mezőmessages[].reasoning_detailsTípusobject|arrayKövetelményOpcionálisÉrtékek és korlátok
Modelltől függ
Alapértelmezett—
Mezőmax_tokensTípusintegerKövetelményOpcionálisÉrtékek és korlátok
Minimum: 1
Modelltől függ
Alapértelmezett—
Mezőmax_completion_tokensTípusintegerKövetelményOpcionálisÉrtékek és korlátok
Minimum: 1
Modelltől függ
Alapértelmezett—
MezőstreamTípusbooleanKövetelményOpcionálisÉrtékek és korlátokAlapértelmezettfalse
Mezőstream_options.include_usageTípusbooleanKövetelményOpcionálisÉrtékek és korlátok
Modelltől függ
Alapértelmezett—
MezőtemperatureTípusnumberKövetelményOpcionálisÉrtékek és korlátok
Modelltől függ
Alapértelmezett—
Mezőtop_pTípusnumberKövetelményOpcionálisÉrtékek és korlátok
Modelltől függ
Alapértelmezett—
MezőstopTípusstring|string[]KövetelményOpcionálisÉrtékek és korlátok
Modelltől függ
Alapértelmezett—
MezőtoolsTípusfunction_tool[]KövetelményOpcionálisÉrtékek és korlátok
Modelltől függ
Alapértelmezett—
Mezőtools[].typeTípusstringKövetelményOpcionálisÉrtékek és korlátok
function
Modelltől függ
Alapértelmezett—
Mezőtools[].function.nameTípusstringKövetelményKötelezőÉrtékek és korlátok
Akkor alkalmazandó, ha: Függvényeszköz megadva
Alapértelmezett—
Mezőtools[].function.descriptionTípusstringKövetelményOpcionálisÉrtékek és korlátokAlapértelmezett—
Mezőtools[].function.parametersTípusJSON_schemaKövetelményOpcionálisÉrtékek és korlátokAlapértelmezett—
Mezőtool_choiceTípusstring|objectKövetelményOpcionálisÉrtékek és korlátok
Modelltől függ
Alapértelmezett—
Mezőparallel_tool_callsTípusbooleanKövetelményOpcionálisÉrtékek és korlátok
Modelltől függ
Alapértelmezett—
Mezőresponse_formatTípusobjectKövetelményOpcionálisÉrtékek és korlátok
Modelltől függ
Alapértelmezett—
Mezőreasoning_effortTípusstringKövetelményOpcionálisÉrtékek és korlátok
Modelltől függ
Alapértelmezett—
MezőreasoningTípusobjectKövetelményOpcionálisÉrtékek és korlátok
Modelltől függ
Alapértelmezett—
Mezőservice_tierTípusstringKövetelményOpcionálisÉrtékek és korlátok
Modelltől függ
Alapértelmezett—
MezőinstructionsTípusstringKövetelményOpcionálisÉrtékek és korlátok
Kompatibilitási mező
Alapértelmezett—
MezőfunctionsTípusfunction[]KövetelményOpcionálisÉrtékek és korlátok
Modelltől függ
Alapértelmezett—
Mezőfunction_callTípusstring|objectKövetelményOpcionálisÉrtékek és korlátok
Modelltől függ
Alapértelmezett—
Mezőprompt_cache_optionsTípusobjectKövetelményOpcionálisÉrtékek és korlátok
Modelltől függ
Alapértelmezett—
MezőmodalitiesTípusstring[]KövetelményOpcionálisÉrtékek és korlátok
text
Alapértelmezett—
MezőproviderTípusobjectKövetelményOpcionálisÉrtékek és korlátok
Feltételek: A provider.options elutasításra kerül ezen az Ultra szöveges útvonalon
Alapértelmezett—
Mezőcache_control.ttlTípusstringKövetelményOpcionálisÉrtékek és korlátok
Feltételek: Az 1h elutasításra kerül a tényleges prompt-gyorsítótárazási helyeken
Alapértelmezett—
Bemeneti anyagok kombinációi

Szöveg · UTF8 szöveg

messages[].content

Metódus paraméterei és életciklusa
ParaméterSzerződés
Paramétercontent_typeSzerződésapplication/json
ParaméterrequiredSzerződésmodel, messages
Paramétermaterial_typesSzerződéstext
ParamétermessagesSzerződésüzenettömb role/content szerkezettel
Paraméterfile_materialSzerződésa tényleges UTF-8 dokumentum szó szerinti szövegként beillesztve; nincs kikövetkeztetett fájlazonosító
Paraméteroptional_controlsSzerződésstream, temperature, top_p, stop, max_tokens, max_completion_tokens, reasoning, response_format, tools, tool_choice
Paramétercontrol_scopeSzerződésmodellspecifikus; a felhasználói függvényeszközök eltérnek a hosztolt eszközöktől
Paraméteroutput_modalitiesSzerződéstext
Paraméterhosted_operationsSzerződésfalse
Paramétermultimodal_input_bindingSzerződésnull

Életciklus: synchronous_or_streamed

Küldje el a pontos modellazonosítót a messages mellett.

A kontextushossz nem kimeneti felső korlát.

Egy szövegfájl szó szerinti szöveget adhat meg; a kép-/hang-/fájlobjektum-bemenetek pontos hozzárendelést igényelnek.

Díjcsomagok

A díjszabás nem ad új kérési lehetőségeket. A támogatott paraméterek a kiválasztott módszernél szerepelnek.

Gyors mód
Normál díjszabás Ha a gyors mód van kiválasztva
Flex mód
Normál díjszabás Ha a flex mód van kiválasztva
Maximális gondolkodási ráfordítás
Normál díjszabás Ha a maximális gondolkodási ráfordításra a default beállításhoz tartozó korrekció vonatkozik
Explicit gyorsítótárazás díjai
Nincs engedélyezve Ha explicit gyorsítótárazást kérnek

Ailoot-díjak

Árak beállításonként

Minden díjat a megjelenített feltételekhez rendeljen. Az alternatív beállítások minden csoportjához egy díjtételt használjon.

BeállításDíjtáblázatKontextustokenek, több mintKontextustokenek, legfeljebbDíj
BeállításTokenenkénti alapárakDíjtáblázatAlapdíjKontextustokenek, több mint—Kontextustokenek, legfeljebbNincs felső korlátDíj
Bemenet · Bemeneti tokenek $0.004 / 1K token
Kimenet · Kimeneti tokenek $0.024 / 1K token
Bemenet · Gyorsítótár olvasása $0.0004 / 1K token
Bemenet · Írás a gyorsítótárba $0.00075 / 1K token
Bemenet · Írás a gyorsítótárba, 1 óra — / 1K token
Kimenet · Kimeneti képtokenek $0.24 / 1K képtoken
BeállításA kéréshossz szerinti 1. ársávDíjtáblázat—Kontextustokenek, több mint0Kontextustokenek, legfeljebbNincs felső korlátDíj
Bemenet · Bemeneti tokenek $0.004 / 1K token
Kimenet · Kimeneti tokenek $0.024 / 1K token
Bemenet · Gyorsítótár olvasása $0.0004 / 1K token
Bemenet · Írás a gyorsítótárba $0.00075 / 1K token
Bemenet · Írás a gyorsítótárba, 1 óra — / 1K token

A referencia-díjszabás részletei

A modellszintű referenciatáblázatok nem módosítják a metódusválasztást, az árajánlatokat vagy a díjakat. A tényleges díjak a kiválasztott Ailoot-metódus díjtételeit használják.

google/gemini-3-pro-image-preview

Árak beállításonként

BeállításElszámolási feltételekDíj
Beállításgoogle/gemini-3-pro-image-preview · Alapértelmezett beállításokElszámolási feltételekAlapértelmezett konfigurációDíj
Bemenet · Bemenet 0,004 USD / 1K token
Kimenet · Kimenet 0,24 USD / 1K token
Google: Nano Banana Pro (Gemini 3 Pro Image Preview)

Árak beállításonként

BeállításElszámolási feltételekDíj
BeállításGoogle: Nano Banana Pro (Gemini 3 Pro Image Preview) · Alapértelmezett beállításokElszámolási feltételekAlapértelmezett konfigurációDíj
Bemenet · Bemeneti tokenek 0,004 USD / 1K token
Kimenet · Kimeneti tokenek 0,024 USD / 1K token
Bemenet · Bemeneti kép 0,004 USD / 1K token
Kimenet · Kimeneti kép 0,24 USD / 1K token
Bemenet · Hangbemenet 0,004 USD / 1K token
Bemenet · Hangadatok olvasása a gyorsítótárból 0,0004 USD / 1K token
Kimenet · Webes keresés 0,028 USD keresésenként
Kimenet · Következtetési tokenek 0,024 USD / 1K token
Bemenet · Gyorsítótár olvasása 0,0004 USD / 1K token
Bemenet · Gyorsítótárba írás · 5 perc 0,00075 USD / 1K token

Az Ailoot a kérés előtt becsült összeget foglal le. Az eredmény után a mért használat alapján elszámolja a végső díjat. Folyamatos átvitel esetén a végső használati rekordot használja. A foglalás és az elszámolás működése →

Példakérések

Ailoot Ultra · OpenAI Chat

curlPython SDKPython-adatfolyam
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "google/gemini-3-pro-image-preview", "messages": [{"role": "user", "content": "Explain the difference between an observation and a hypothesis in three sentences."}]}')

Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/chat/completions \
  -H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path("result.json").read_text())
for x in r.get("choices",[]):
    if x.get("message",{}).get("content"): print(x["message"]["content"])
PY_RESULT
from openai import OpenAI
import os

if not os.environ.get("AILOOT_API_KEY", "").strip(): raise SystemExit("Set AILOOT_API_KEY before making a request")
client=OpenAI(base_url="https://api.ailoot.ai/v1",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
result=client.chat.completions.create(model='google/gemini-3-pro-image-preview',messages=[{"role":"user","content":"Explain observations and hypotheses in three sentences."}])
import base64, json
from pathlib import Path

def save_result(data, stem="result"):
    # Keep every field, including usage, IDs, reasoning and tool requests.
    Path(stem + ".json").write_text(json.dumps(data, ensure_ascii=False, indent=2), encoding="utf-8")
    print(json.dumps(data, ensure_ascii=False, indent=2))
    def save_blob(encoded, suffix, label):
        raw = base64.b64decode(encoded, altchars=b"-_", validate=True)
        ext = "png" if raw.startswith(b"\x89PNG\r\n\x1a\n") else "jpg" if raw.startswith(b"\xff\xd8") else "webp" if raw[:4] == b"RIFF" and raw[8:12] == b"WEBP" else suffix
        file = Path(stem + "-" + label + "." + ext)
        file.write_bytes(raw)
        print("Saved", file)
    for index, block in enumerate(data.get("content") or []):
        print("Content", index, json.dumps(block, ensure_ascii=False))
    for choice in data.get("choices") or []:
        print("Choice", choice.get("index"), json.dumps(choice.get("message", choice.get("delta", {})), ensure_ascii=False))
    for index, item in enumerate(data.get("output") or []):
        print("Output", index, json.dumps(item, ensure_ascii=False))
        if item.get("type") == "image_generation_call" and item.get("result"):
            save_blob(item["result"], item.get("output_format") or "bin", "output-" + str(index))
    for ci, candidate in enumerate(data.get("candidates") or []):
        for pi, part in enumerate((candidate.get("content") or {}).get("parts") or []):
            print("Candidate/part", ci, pi, json.dumps(part, ensure_ascii=False))
            blob = part.get("inlineData") or part.get("inline_data")
            if blob and blob.get("data"):
                mime = blob.get("mimeType") or blob.get("mime_type")
                suffix = {"image/png":"png", "image/jpeg":"jpg", "image/webp":"webp", "audio/wav":"wav", "audio/mpeg":"mp3", "video/mp4":"mp4"}.get(mime, "bin")
                save_blob(blob["data"], suffix, "candidate-" + str(ci) + "-part-" + str(pi))

save_result(result.to_dict(mode="json"))
from openai import OpenAI
import os
from pathlib import Path

if not os.environ.get("AILOOT_API_KEY", "").strip(): raise SystemExit("Set AILOOT_API_KEY before making a request")
client=OpenAI(base_url="https://api.ailoot.ai/v1",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
import base64, json
from pathlib import Path

def save_result(data, stem="result"):
    # Keep every field, including usage, IDs, reasoning and tool requests.
    Path(stem + ".json").write_text(json.dumps(data, ensure_ascii=False, indent=2), encoding="utf-8")
    print(json.dumps(data, ensure_ascii=False, indent=2))
    def save_blob(encoded, suffix, label):
        raw = base64.b64decode(encoded, altchars=b"-_", validate=True)
        ext = "png" if raw.startswith(b"\x89PNG\r\n\x1a\n") else "jpg" if raw.startswith(b"\xff\xd8") else "webp" if raw[:4] == b"RIFF" and raw[8:12] == b"WEBP" else suffix
        file = Path(stem + "-" + label + "." + ext)
        file.write_bytes(raw)
        print("Saved", file)
    for index, block in enumerate(data.get("content") or []):
        print("Content", index, json.dumps(block, ensure_ascii=False))
    for choice in data.get("choices") or []:
        print("Choice", choice.get("index"), json.dumps(choice.get("message", choice.get("delta", {})), ensure_ascii=False))
    for index, item in enumerate(data.get("output") or []):
        print("Output", index, json.dumps(item, ensure_ascii=False))
        if item.get("type") == "image_generation_call" and item.get("result"):
            save_blob(item["result"], item.get("output_format") or "bin", "output-" + str(index))
    for ci, candidate in enumerate(data.get("candidates") or []):
        for pi, part in enumerate((candidate.get("content") or {}).get("parts") or []):
            print("Candidate/part", ci, pi, json.dumps(part, ensure_ascii=False))
            blob = part.get("inlineData") or part.get("inline_data")
            if blob and blob.get("data"):
                mime = blob.get("mimeType") or blob.get("mime_type")
                suffix = {"image/png":"png", "image/jpeg":"jpg", "image/webp":"webp", "audio/wav":"wav", "audio/mpeg":"mp3", "video/mp4":"mp4"}.get(mime, "bin")
                save_blob(blob["data"], suffix, "candidate-" + str(ci) + "-part-" + str(pi))

with client.chat.completions.stream(model='google/gemini-3-pro-image-preview',messages=[{"role":"user","content":"Explain observations and hypotheses in three sentences."}]) as stream:
    with Path("stream-events.jsonl").open("w",encoding="utf-8") as log:
        for event in stream:
            payload=event.to_dict(mode="json")
            log.write(json.dumps(payload,ensure_ascii=False)+"\n"); log.flush()
            print(json.dumps(payload,ensure_ascii=False))
    final=stream.get_final_completion()
    save_result(final.to_dict(mode="json"),"stream-result")

Eredmények fogadása és mentése

Ailoot Ultra · OpenAI Chat

json vagy SSE

Őrizzen meg minden elkészült eredményt

Őrizzen meg minden teljes visszaadott választ, fájlt és tartalomrészt.

Őrizze meg az összes válaszváltozatot és azok tartalmát/eszközhívásait/gondolkodási tartalmát. SSE esetén válaszváltozat- és eszközindex szerint állítsa össze a részleges frissítéseket, és tartsa meg a végső befejezési okot és a használati adatokat.

Ha az eredeti választ ellenőrizni kell

Őrizze meg a kérés-/válaszazonosítókat és a fejléceket. Nincs megadva általános URL a szöveges feladatok lekéréséhez.

Válaszmezők
MezőTípus
Mezőchoices[].indexTípusinteger
Mezőchoices[].message.contentTípusstring|null
Mezőchoices[].message.tool_callsTípustool_call[]
Mezőchoices[].message.reasoning_contentTípusstring
Mezőchoices[].message.reasoning_detailsTípusobject|array
Mezőchoices[].finish_reasonTípusstring|null
MezőusageTípusobject
Hibák és következő lépések
VálaszFeltételKövetkező lépés
Válasz400 · invalid_request_errorFeltételÉrvénytelen kötelező mezők, az anyag érvénytelen reprezentációja vagy érvénytelen paraméterértékKövetkező lépésJavítsa a jelzett mezőket egy új létrehozási kérés előtt.

Álnevek

Modell álnevei

Ailoot Ultra google/gemini-3-pro-image-preview

Metódusútvonalak álnevei

/v1/images

Kapcsolódó modellazonosítók

google/gemini-3-pro-image-preview

Ailoot Ultra · Képek POST /v1/images/generations google/gemini-3-pro-image-preview

google/gemini-3-pro-image-preview

Google /google/gemini-3-pro-image-preview

Kezdő lépések

A Nano Banana Pro a Google Gemini 3 Pro Image Preview modellje képgeneráláshoz és szerkesztéshez. Dokumentált profiljában több képből álló kompozíciót, beágyazott szöveget, helyi kreatív módosításokat, Search-alapú forráshoz kötést és 2K vagy 4K kimenetet támogat.

Elfogadott bemenetek
Szöveg · Képek
Eredmények
Képek

Elérhető az Ailootban · bemenetek és metódusok

Ailoot Ultra · Képek POST /v1/images/generations
Bemenet
text, image
Kimenet
image
MezőTípusKövetelményÉrtékek és korlátokAlapértelmezett
MezőmodelTípusstringKövetelményKötelezőÉrtékek és korlátok
google/gemini-3-pro-image-preview
Alapértelmezett—
MezőpromptTípusstringKövetelményKötelezőÉrtékek és korlátok
Minimális hossz: 1
Alapértelmezett—
MezőresolutionTípusstringKövetelményOpcionálisÉrtékek és korlátok
1K, 2K, 4K
Alapértelmezett—
Mezőaspect_ratioTípusstringKövetelményOpcionálisÉrtékek és korlátok
1:1, 2:3, 3:2, 3:4, 4:3, 4:5, 5:4, 9:16, 16:9, 21:9
Alapértelmezett—
MezőnTípusintegerKövetelményOpcionálisÉrtékek és korlátok
Minimum: 1
Maximum: 1
Alapértelmezett—
Mezőinput_referencesTípusarrayKövetelményOpcionálisÉrtékek és korlátok
Minimális elemszám: 0
Maximális elemszám: 14
Alapértelmezett—
MezőproviderTípusobjectKövetelményOpcionálisÉrtékek és korlátokAlapértelmezett—
Metódus paraméterei és életciklusa
ParaméterSzerződés
Paramétercontent_typeSzerződésapplication/json
ParaméterrequiredSzerződésmodel, prompt
Paramétermaterial_typesSzerződéstext, image

Életciklus: synchronous_result_then_owned_library

GET /v1/media/tasks/{task_id} · A ténylegesen visszaadott task_id vagy a médiatár bejegyzése

GET /v1/media/assets/{asset_id}/content

GET /v1/media/assets

GET /v1/media/assets/{asset_id}

Díjcsomagok

A végső díj számítása

A megjelenített díjtételek a generálás előtti költségbecsléshez szolgálnak. A végleges díj az eredeti generáláshoz rögzített költségből számítódik. A kimenet mért időtartama és az előre jelzett mennyiségek nem azonosak a véglegesen elszámolandó mennyiséggel.

A díjszabás nem ad új kérési lehetőségeket. A támogatott paraméterek a kiválasztott módszernél szerepelnek.

Gyors mód
Nincs megadva Ha a gyors mód van kiválasztva
Flex mód
Nincs megadva Ha a flex mód van kiválasztva
Maximális gondolkodási ráfordítás
Nincs megadva Ha a maximális gondolkodási ráfordításra a default beállításhoz tartozó korrekció vonatkozik

Becsült díjak összehasonlításhoz

Árak beállításonként

Minden díjat a megjelenített feltételekhez rendeljen. Az alternatív beállítások minden csoportjához egy díjtételt használjon.

BeállításDíjtáblázatElőre jelzett mennyiségDíj
BeállításTokenek alapdíjaiDíjtáblázatAlapdíjElőre jelzett mennyiség—Díj
Bemenet · Bemeneti tokenek · Becslés, csak összehasonlításra — / 1K token
Kimenet · Kimeneti tokenek · Becslés, csak összehasonlításra — / 1K token
Bemenet · Gyorsítótár olvasása · Becslés, csak összehasonlításra — / 1K token
Bemenet · Írás a gyorsítótárba · Becslés, csak összehasonlításra — / 1K token
Bemenet · Írás a gyorsítótárba, 1 óra · Becslés, csak összehasonlításra — / 1K token
BeállításA generálás becsült költségeDíjtáblázat—Előre jelzett mennyiségbecslés egy generálásraDíj
Kimenet · Becsült generálási költség · Becslés, csak összehasonlításra $0.98304 becslés a generálás előtt

Ez a becslés nem jelent további díjat, és nem rögzített díjszabás az elkészült generálásra.

Az Ailoot a kérés előtt becsült összeget foglal le. Az eredmény után a mért használat alapján elszámolja a végső díjat. Folyamatos átvitel esetén a végső használati rekordot használja. A foglalás és az elszámolás működése →

Példakérések

Ailoot Ultra · Képek

curl
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
export AILOOT_API_KEY
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p={'model': 'google/gemini-3-pro-image-preview', 'prompt': 'a red panda astronaut floating in space, studio lighting'}

Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/images/generations \
  -H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import base64, json, os, subprocess
from pathlib import Path
from urllib.parse import urlsplit, urljoin

def save_images(items):
    if not items: raise SystemExit("No completed images; retain the full response")
    for index, item in enumerate(items):
        encoded=item.get("b64_json")
        uri=item.get("url", "")
        if not encoded and uri.startswith("data:image/"):
            header, separator, encoded=uri.partition(",")
            if not separator or ";base64" not in header: raise SystemExit("Unsupported image data URI")
        if encoded:
            raw=base64.b64decode(encoded,validate=True)
        elif uri:
            uri=urljoin("https://api.ailoot.ai",uri)
            parsed=urlsplit(uri)
            if parsed.scheme!="https" or not parsed.netloc or parsed.username or parsed.password:
                raise SystemExit("Invalid returned image URL")
            owned=parsed.netloc=="api.ailoot.ai" and parsed.path.startswith("/v1/media/assets/") and parsed.path.endswith("/content")
            args=["curl","--fail-with-body","--silent","--show-error",uri]
            if owned: args += ["-H","Authorization: Bearer "+os.environ["AILOOT_API_KEY"]]
            temporary=Path(f"image-{index}.bin")
            subprocess.run(args+["-o",str(temporary)],check=True)
            raw=temporary.read_bytes()
            temporary.unlink()
        else: raise SystemExit("Image has neither bytes nor URL")
        if not raw: raise SystemExit("Empty image result")
        ext="png" if raw.startswith(b"\x89PNG") else "jpg" if raw.startswith(b"\xff\xd8") else "webp" if raw[:4]==b"RIFF" and raw[8:12]==b"WEBP" else "svg" if raw.lstrip().startswith((b"<svg",b"<?xml")) else "bin"
        Path(f"image-{index}.{ext}").write_bytes(raw)
    print("Every returned image saved; complete response metadata retained")
save_images(json.loads(Path("result.json").read_text())["data"])
PY_RESULT

Eredmények fogadása és mentése

Ailoot Ultra · Képek

Töltsön le minden visszaadott képet, vagy mentse a Base64-tartalmat

  • GET /v1/media/tasks/{task_id}
  • GET /v1/media/assets/{asset_id}/content
  • GET /v1/media/assets
  • GET /v1/media/assets/{asset_id}
További tartalomlekérések
A meglévő, Önhöz tartozó médiafájlok lekérése
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/media/assets \
  -H "Authorization: Bearer $AILOOT_API_KEY" -o owned-assets.json
# Preserve every returned asset and follow its exact signed content URL. Do not construct a signed token.
Őrizzen meg minden elkészült eredményt

Mentsen minden elkészült képet; töltse le az összes visszaadott URL tartalmát, vagy dekódolja a Base64-tartalmat.

Őrizze meg a teljes választ és a fejléceket, minden tényleges kimenetet, az eredetileg visszaadott azonosítókat és az összes használati adatmezőt. Az eredeti műveletet állítsa helyre, a létrehozási kérés újbóli beküldése nélkül.

Ha az eredeti választ ellenőrizni kell

Őrizze meg a visszaadott X-Client-Request-ID értéket az egyeztetéshez. Csak a ténylegesen visszaadott task_id/asset_id értékekkel kérdezzen le, vagy használja a saját médiatárat; soha ne állítson össze feladat-URL-t a műveletazonosítóból, és soha ne küldje be újra a létrehozási kérést.

Válaszmezők
MezőTípus
MezőcreatedTípus
Meződata[].urlTípus
Meződata[].b64_jsonTípus
MezőusageTípus

Álnevek

Modell álnevei

Ailoot Ultra google/gemini-3-pro-image-preview

Metódusútvonalak álnevei

/v1/images

Kapcsolódó modellazonosítók

google/gemini-3-pro-image-preview

Ailoot Ultra · Anthropic Messages POST /v1/messages google/gemini-3-pro-image-preview

google/gemini-3-pro-image-preview

Google /google/gemini-3-pro-image-preview

Kezdő lépések

A Nano Banana Pro a Google Gemini 3 Pro Image Preview modellje képgeneráláshoz és szerkesztéshez. Dokumentált profiljában több képből álló kompozíciót, beágyazott szöveget, helyi kreatív módosításokat, Search-alapú forráshoz kötést és 2K vagy 4K kimenetet támogat.

Elfogadott bemenetek
Szöveg
Eredmények
json · sse

Elérhető az Ailootban · bemenetek és metódusok

Ailoot Ultra · Anthropic Messages POST /v1/messages
Bemenet
text
Kimenet
json, sse
Kimeneti formátum
JSON vagy SSE
MezőTípusKövetelményÉrtékek és korlátokAlapértelmezett
MezőmodelTípusstringKövetelményKötelezőÉrtékek és korlátok
google/gemini-3-pro-image-preview
Alapértelmezett—
MezőmessagesTípusmessage[]KövetelményKötelezőÉrtékek és korlátokAlapértelmezett—
Mezőmessages[].roleTípusstringKövetelményKötelezőÉrtékek és korlátok
user, assistant
Alapértelmezett—
Mezőmessages[].contentTípusstringKövetelményKötelezőÉrtékek és korlátokAlapértelmezett—
Mezőmax_tokensTípusintegerKövetelményKötelezőÉrtékek és korlátokAlapértelmezett—
MezőstreamTípusbooleanKövetelményOpcionálisÉrtékek és korlátokAlapértelmezettfalse
Bemeneti anyagok kombinációi

Szöveg · UTF-8 szöveg

messages[].content karakterlánc

Metódus paraméterei és életciklusa
ParaméterSzerződés
Paramétercontent_typeSzerződésapplication/json
ParaméterrequiredSzerződésmodel, messages, max_tokens
Paraméteroptional_controlsSzerződésstream
Paramétermaterial_typesSzerződéstext
Paramétertext_file_materialSzerződésOlvassa el a tényleges UTF-8 dokumentumot, és tegye a szövegét a jelzett bemeneti karakterláncba vagy az üzenettartalom karakterláncába.

Életciklus: synchronous_or_streamed

Díjcsomagok

A díjszabás nem ad új kérési lehetőségeket. A támogatott paraméterek a kiválasztott módszernél szerepelnek.

Gyors mód
Normál díjszabás Ha a gyors mód van kiválasztva
Flex mód
Normál díjszabás Ha a flex mód van kiválasztva
Maximális gondolkodási ráfordítás
Normál díjszabás Ha a maximális gondolkodási ráfordításra a default beállításhoz tartozó korrekció vonatkozik
Explicit gyorsítótárazás díjai
Nincs engedélyezve Ha explicit gyorsítótárazást kérnek

Ailoot-díjak

Árak beállításonként

Minden díjat a megjelenített feltételekhez rendeljen. Az alternatív beállítások minden csoportjához egy díjtételt használjon.

BeállításDíjtáblázatKontextustokenek, több mintKontextustokenek, legfeljebbDíj
BeállításTokenenkénti alapárakDíjtáblázatAlapdíjKontextustokenek, több mint—Kontextustokenek, legfeljebbNincs felső korlátDíj
Bemenet · Bemeneti tokenek $0.004 / 1K token
Kimenet · Kimeneti tokenek $0.024 / 1K token
Bemenet · Gyorsítótár olvasása $0.0004 / 1K token
Bemenet · Írás a gyorsítótárba $0.00075 / 1K token
Bemenet · Írás a gyorsítótárba, 1 óra — / 1K token
Kimenet · Kimeneti képtokenek $0.24 / 1K képtoken
BeállításA kéréshossz szerinti 1. ársávDíjtáblázat—Kontextustokenek, több mint0Kontextustokenek, legfeljebbNincs felső korlátDíj
Bemenet · Bemeneti tokenek $0.004 / 1K token
Kimenet · Kimeneti tokenek $0.024 / 1K token
Bemenet · Gyorsítótár olvasása $0.0004 / 1K token
Bemenet · Írás a gyorsítótárba $0.00075 / 1K token
Bemenet · Írás a gyorsítótárba, 1 óra — / 1K token

Az Ailoot a kérés előtt becsült összeget foglal le. Az eredmény után a mért használat alapján elszámolja a végső díjat. Folyamatos átvitel esetén a végső használati rekordot használja. A foglalás és az elszámolás működése →

Példakérések

Ailoot Ultra · Anthropic Messages

Teljes, minimális JSON-törzscurl · használd a saját UTF-8-dokumentumodatPython · mentsd el a teljes eredményt
{
  "model": "google/gemini-3-pro-image-preview",
  "max_tokens": 128,
  "messages": [
    {
      "role": "user",
      "content": "Summarize the incident report."
    }
  ],
  "stream": false
}
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_TEXT_FILE:?Set your actual UTF-8 document}"
export AILOOT_TEXT_FILE
python3 - <<'PY_REQUEST'
import json, os
from pathlib import Path

source_file = Path(os.environ['AILOOT_TEXT_FILE'])
if not source_file.is_file():
    raise SystemExit('Set AILOOT_TEXT_FILE to your actual UTF-8 document')
text = source_file.read_text(encoding='utf-8')
if not text.strip():
    raise SystemExit('Choose a document containing text')
payload = {'model': 'google/gemini-3-pro-image-preview', 'max_tokens': 128, 'messages': [{'role': 'user', 'content': 'Summarize the incident report.'}]}
payload['messages'][0]['content'] = 'Summarize this material and quote supporting source passages.\n\n' + text
Path('request.json').write_text(json.dumps(payload, ensure_ascii=False), encoding='utf-8')
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/messages \
  -H "x-api-key: $AILOOT_API_KEY" -H 'anthropic-version: 2023-06-01' -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path

result = json.loads(Path('result.json').read_text(encoding='utf-8'))
print(json.dumps(result, ensure_ascii=False, indent=2))
PY_RESULT
import json, os
from pathlib import Path

source_file = Path(os.environ['AILOOT_TEXT_FILE'])
if not source_file.is_file():
    raise SystemExit('Set AILOOT_TEXT_FILE to your actual UTF-8 document')
text = source_file.read_text(encoding='utf-8')
if not text.strip():
    raise SystemExit('Choose a document containing text')
payload = {'model': 'google/gemini-3-pro-image-preview', 'max_tokens': 128, 'messages': [{'role': 'user', 'content': 'Summarize the incident report.'}]}
payload['messages'][0]['content'] = 'Summarize this material and quote supporting source passages.\n\n' + text
from urllib.request import Request, urlopen
from urllib.error import HTTPError

api_key = os.environ['AILOOT_API_KEY']
if not api_key.strip():
    raise SystemExit('Set AILOOT_API_KEY before making a request')
headers = {'x-api-key': 'PLACEHOLDER_KEY', 'anthropic-version': '2023-06-01', 'Content-Type': 'application/json'}
headers['x-api-key'] = api_key
request = Request('https://api.ailoot.ai/v1/messages', data=json.dumps(payload, ensure_ascii=False).encode('utf-8'), headers=headers, method='POST')
try:
    with urlopen(request, timeout=120) as response:
        raw = response.read()
        Path('response-headers.txt').write_text(str(response.headers), encoding='utf-8')
except HTTPError as error:
    Path('result.json').write_bytes(error.read())
    Path('response-headers.txt').write_text(str(error.headers), encoding='utf-8')
    raise
Path('result.json').write_bytes(raw)
import json
from pathlib import Path

result = json.loads(Path('result.json').read_text(encoding='utf-8'))
print(json.dumps(result, ensure_ascii=False, indent=2))

Eredmények fogadása és mentése

Ailoot Ultra · Anthropic Messages

JSON vagy SSE

Őrizzen meg minden elkészült eredményt

Őrizzen meg minden teljes visszaadott választ, fájlt és tartalomrészt.

Őrizze meg az összes tartalomblokkot, a gondolkodási tartalom aláírásait és a tényleges eszközhasználati ID-kat. Állítsa össze az összes SSE-blokk részleges frissítését; az első szövegblokk nem a teljes kimenet.

Ha az eredeti választ ellenőrizni kell

Őrizze meg a kérés-/válaszazonosítókat és a fejléceket. Nincs megadva általános URL a szöveges feladatok lekéréséhez.

Válaszmezők
MezőTípus
MezőidTípusstring
MezőmodelTípusstring
Mezőcontent[]Típustext|thinking|tool_use|other content block
Mezőstop_reasonTípusstring|null
MezőusageTípusobject
Hibák és következő lépések
VálaszFeltételKövetkező lépés
Válasz400 · invalid_request_errorFeltételÉrvénytelen kötelező mezők, az anyag érvénytelen reprezentációja vagy érvénytelen paraméterértékKövetkező lépésJavítsa a jelzett mezőket egy új létrehozási kérés előtt.

Álnevek

Modell álnevei

Ailoot Ultra google/gemini-3-pro-image-preview

Metódusútvonalak álnevei

/v1/images

Kapcsolódó modellazonosítók

google/gemini-3-pro-image-preview

FAQ · Google: Nano Banana Pro (Gemini 3 Pro Image Preview)
Milyen bemenetek és eredmények érhetők el?

POST /v1/chat/completions · google/gemini-3-pro-image-preview: text → text

POST /v1/images/generations · google/gemini-3-pro-image-preview: text, image → image

POST /v1/messages · google/gemini-3-pro-image-preview: text → json, sse

Mely mezőket használja a kérés?

POST /v1/chat/completions · google/gemini-3-pro-image-preview: model, messages, stream, modalities, provider

POST /v1/images/generations · google/gemini-3-pro-image-preview: model, prompt, resolution, aspect_ratio, n, input_references, provider

POST /v1/messages · google/gemini-3-pro-image-preview: model, messages, max_tokens, stream

Milyen korlátok érvényesek?

POST /v1/chat/completions · google/gemini-3-pro-image-preview: messages.min_items: 1

POST /v1/images/generations · google/gemini-3-pro-image-preview: n.minimum: 1; n.maximum: 1

További részletek

Csatlakoztassa az Ailootot a Claude Code-hoz, OpenCode-hoz, Hermeshez vagy saját alkalmazásához.

A vállalat és projektportfóliója

A vállalat és projektportfóliója: ügyfelek milliói; havi értékesítés milliárdos nagyságrendben.

Vásároljon tokeneket kedvezménnyel.

Előfizetési kedvezmény rendszeres munkához. Promókódok — akár 50% tokenvásárlási kedvezmény.

Előfizetés
Válasszon kedvezményes tarifát a rendszeres kéréseihez.
Promókód akár 50%-ig
Vásárláskor adja meg a kódot. Az ár az érvényes akció szerint újraszámolódik.
Költségek az előzményekben
Minden kéréshez megmarad a modell, a tokenek és az összeg.

Előfizetés kiválasztása · Modellárak megtekintése

Csatlakoztassa az API-t az értékesített termékéhez.

SaaS, alkalmazások és botok — az Ailoot ajánlati feltételei és licencszerződése alapján. Viszonteladáshoz kérjen viszonteladói licencet.

Kereskedelmi alkalmazás
Építsen szöveg-, kép-, videó- és hanggenerálást szolgáltatása fizetős funkcióiba.
Viszonteladói licenc
Küldje el a projekt leírását és a hozzáférés módját. Kérjen írásos használati és viszonteladási feltételeket.
Dokumentumok a weboldalon
Az ajánlati feltételek, licencszerződés és adatkezelési szabályzat már a csatlakoztatás előtt elérhető.

Viszonteladói licenc kérése · Ajánlati feltételek és licencszerződés