Sourceful: Riverflow V2 Pro
Riverflow 2.0 Pro is het Pro-profiel van Sourceful voor het genereren en bewerken van afbeeldingen voor creatief werk waarbij merkherkenbaarheid telt. De familie beoordeelt en corrigeert kandidaten, ondersteunt lettertypeaanwijzingen en biedt detailherstel op basis van referenties voor productetiketten en grafisch werk.
Over het model
Deze beschrijving gaat over de mogelijkheden van het model. De via Ailoot beschikbare invoer, uitvoer en opties staan hieronder voor de geselecteerde methode.
Riverflow 2.0 Pro is het Pro-profiel van de Riverflow 2.0-familie van Sourceful voor het genereren en bewerken van product-, verpakkings- en marketingbeelden. Het combineert beeldcreatie of -bewerking met een redeneermodel dat kandidaten beoordeelt en corrigeert. De kernpunten zijn betrouwbare uitvoering van een visuele briefing, typografie en behoud van de productdetails die een beeld bruikbaar maken voor een merk.
Lever voor een compositie waarbij kwaliteit telt het productbeeld of grafisch ontwerp, de exacte tekst en de beoogde visuele opstelling aan. Een bruikbare scène kan een pot met etiket naast zijn ingrediënten plaatsen en daarbij de vorm van de verpakking en de hiërarchie van het etiket behouden. Beschrijf de belichting, achtergrond en uitsnede en geef vervolgens aan welke productdetails niet mogen veranderen. Het resultaat is een gerenderd creatief beeld; bepalen hoe dit in een bredere campagne of bewerkbare opmaak past, is een afzonderlijke applicatiestap.
De 2.0-workflow beoordeelt kandidaten automatisch en corrigeert problemen in meerdere stappen. Geef dat proces een duidelijk doel door vereiste inhoud te scheiden van optionele stijlkeuzes. Benoem bij een bewerking het te wijzigen element en de omliggende kenmerken die behouden moeten blijven. Een aanpassing van de productkleur mag niet ongemerkt een nieuw etiketontwerp worden en een vervanging van de achtergrond moet het aangeleverde object herkenbaar houden. De voltooide afbeelding moet nog steeds met de briefing en bronreferenties worden vergeleken.
Lettertypecontrole gebruikt openbare of aangeleverde aangepaste lettertypen om de merktypografie te sturen. Riverflow 2.0 ondersteunt maximaal twee lettertypen tegelijk en maximaal 300 tekens per afbeelding in de workflow voor lettertypecontrole. Geef de exacte tekst, hiërarchie en het beoogde lettergewicht of de gewenste spatiëring, in plaats van te verwachten dat het model de formulering kiest. Controleer belangrijke tekens, cijfers, ligaturen en kleine ondersteunende tekst in het resulterende beeld. Beknopte tekst laat bovendien ruimte voor het product en de visuele uitleg.
De workflow voor superresolutie op basis van referenties van de familie herstelt fijne tekst of grafische details die een scène met lagere resolutie niet nauwkeurig bevat. Lever bronontwerp van hoge kwaliteit aan, zodat de fase voor detailherstel het echte etiket of ontwerp kan reproduceren. De release 2.0 beschrijft maximaal vier vervangingsinstanties per verzoek, waarmee je één product of meerdere producten in een scène kunt corrigeren. Dit is een herstelworkflow op basis van referenties rond de gegenereerde afbeelding, geen garantie dat elke eerste afbeelding perfecte microdetails bevat.
Houd voor een verwante productreeks de stijl, belichting en structuur van de scène gelijk en lever voor elk artikel de juiste referentie aan. Een campagnebeeld kan een hoofdweergave van het product combineren met praktische ruimte voor goedgekeurde tekst; een productclose-up kan voorrang geven aan etiket- en materiaaldetails. Kies de voorbereiding van bron en uitvoer voor de beoogde weergavegrootte en bewaar de gekozen afbeelding met de referenties die de identiteit ervan vastleggen. Een correctie op scèneniveau en een stap voor detailherstel behandelen verschillende onderdelen van het bestand.
Pro verschilt van het Fast-profiel en van Riverflow 2.5. De latere generatie voegt aangepaste scorecriteria en diepere beoordelingsinstellingen toe; je mag niet aannemen dat die latere instellingen onderdeel zijn van dit 2.0-profiel. Controleer bij een bruikbare eindbeoordeling de gevraagde wijziging, typografie, productidentiteit en omliggende details aan de hand van de bron. Herzie de specifieke instructie of referentie die de afwijking veroorzaakt en behoud de compositie die al bij de taak past.
Ailoot Ultra · Afbeeldingen POST /v1/images/generations sourceful/riverflow-v2-pro
sourceful/riverflow-v2-proAan de slag
Riverflow 2.0 Pro is het Pro-profiel van Sourceful voor het genereren en bewerken van afbeeldingen voor creatief werk waarbij merkherkenbaarheid telt. De familie beoordeelt en corrigeert kandidaten, ondersteunt lettertypeaanwijzingen en biedt detailherstel op basis van referenties voor productetiketten en grafisch werk.
- Toegestane invoer
- Tekst · Afbeeldingen
- Resultaten
- Afbeeldingen
Beschikbaar in Ailoot · invoer en methoden
Ailoot Ultra · Afbeeldingen POST /v1/images/generations
- Invoertypen
text,image- Uitvoertypen
image
| Veld | Type | Vereiste | Waarden en limieten | Standaard |
|---|---|---|---|---|
Veldmodel | Typestring | VereisteVereist | Waarden en limieten sourceful/riverflow-v2-pro | Standaard— |
Veldprompt | Typestring | VereisteVereist | Waarden en limieten Minimumlengte: 1 | Standaard— |
Veldresolution | Typestring | VereisteOptioneel | Waarden en limieten 1K, 2K, 4K | Standaard— |
Veldaspect_ratio | Typestring | VereisteOptioneel | Waarden en limieten 1:1, 4:3, 3:4, 3:2, 2:3, 16:9, 9:16, 21:9, auto | Standaard— |
Veldn | Typeinteger | VereisteOptioneel | Waarden en limieten Minimum: 1 Maximum: 1 | Standaard— |
Veldinput_references | Typearray | VereisteOptioneel | Waarden en limieten Minimumaantal items: 0 Maximumaantal items: 10 | Standaard— |
Veldprovider | Typeobject | VereisteOptioneel | Waarden en limieten | Standaard— |
Methodeparameters en levenscyclus
| Parameter | Contract |
|---|---|
Parametercontent_type | Contractapplication/json |
Parameterrequired | Contractmodel, prompt |
Parametermaterial_types | Contracttext, image |
Levenscyclus: synchronous_result_then_owned_library
GET /v1/media/tasks/{task_id} · de daadwerkelijk geretourneerde task_id of het record in de mediabibliotheek
GET /v1/media/assets/{asset_id}/content
GET /v1/media/assets
GET /v1/media/assets/{asset_id}
Tarieven
Zo worden de uiteindelijke kosten berekend
De weergegeven tarieven geven een schatting van de kosten vóór de generatie. Het definitieve bedrag wordt berekend op basis van de kosten die voor de oorspronkelijke generatie zijn geregistreerd. De gemeten duur van de uitvoer en de geschatte hoeveelheden zijn niet de definitieve factureerbare hoeveelheid.
Tariefverwijzingen voegen geen verzoekopties toe. Ondersteunde parameters staan bij de geselecteerde methode.
- Snelle modus
- Niet opgegeven Wanneer de snelle modus is geselecteerd
- Flexmodus
- Niet opgegeven Wanneer de modus flex is geselecteerd
- Maximale redeneerinspanning
- Niet opgegeven Wanneer bij maximale redeneerinspanning de default-aanpassing wordt gebruikt
Geschatte tarieven ter vergelijking
Prijzen per configuratie
Koppel elke kostenpost aan de getoonde voorwaarden. Gebruik één tarief voor elke groep alternatieve configuraties.
| Configuratie | Tariefstaffel | Verwachte hoeveelheid | Rekeneenheid | Kosten |
|---|---|---|---|---|
| ConfiguratieBasistarieven voor tokens | TariefstaffelBasistarief | Verwachte hoeveelheid— | Rekeneenheid— | Kosten Invoer · Invoertokens · Schatting uitsluitend ter vergelijking — / 1K tokens Uitvoer · Uitvoertokens · Schatting uitsluitend ter vergelijking — / 1K tokens Invoer · Cache lezen · Schatting uitsluitend ter vergelijking — / 1K tokens Invoer · Cache schrijven · Schatting uitsluitend ter vergelijking — / 1K tokens Invoer · Cache schrijven, 1 uur · Schatting uitsluitend ter vergelijking — / 1K tokens |
| ConfiguratieLettertype-invoer | Tariefstaffel— | Verwachte hoeveelheid— | Rekeneenheidper afbeelding | Kosten Invoer · Lettertype-invoer · Schatting uitsluitend ter vergelijking $0.06 per afbeelding |
| ConfiguratieInvoerreferentie | Tariefstaffel— | Verwachte hoeveelheid— | Rekeneenheidper afbeelding | Kosten Invoer · Invoerreferentie · Schatting uitsluitend ter vergelijking $0.4 per afbeelding |
| Configuratieuitvoerafbeelding | Tariefstaffel— | Verwachte hoeveelheid— | Rekeneenheidper uitvoerafbeelding | Kosten Uitvoer · uitvoerafbeelding · Schatting uitsluitend ter vergelijking $0.3 per uitvoerafbeelding |
| ConfiguratieGeschatte generatiekosten | Tariefstaffel— | Verwachte hoeveelheidschatting voor één generatie | Rekeneenheid— | Kosten Uitvoer · Geschatte generatiekosten · Schatting uitsluitend ter vergelijking $0.3 schatting vóór generatie Deze schatting is geen extra bedrag of vast tarief voor de voltooide generatie. |
Ailoot reserveert vóór een verzoek een geschat bedrag. Na het resultaat worden de uiteindelijke kosten afgerekend op basis van het gemeten verbruik. Bij streaming gebeurt de afrekening op basis van de definitieve verbruiksregistratie. Zo werken reservering en afrekening →
Voorbeeldverzoeken
Ailoot Ultra · Afbeeldingen
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': 'sourceful/riverflow-v2-pro', '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
Resultaten ophalen en opslaan
Ailoot Ultra · Afbeeldingen
Download elke teruggegeven afbeelding of sla de Base64-inhoud ervan op
GET /v1/media/tasks/{task_id}GET /v1/media/assets/{asset_id}/contentGET /v1/media/assetsGET /v1/media/assets/{asset_id}
Lezen van andere inhoud
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.
Alle voltooide resultaten bewaren
Sla elke voltooide afbeelding op; haal elke teruggegeven URL op of decodeer de bijbehorende Base64-inhoud.
Bewaar het volledige antwoord en de headers, alle daadwerkelijke uitvoer, de oorspronkelijk geretourneerde identificatoren en alle gebruiksvelden. Herstel de oorspronkelijke bewerking zonder de aanmaakaanvraag opnieuw in te dienen.
Als het oorspronkelijke antwoord moet worden gecontroleerd
Bewaar de geretourneerde X-Client-Request-ID voor reconciliatie. Lees alleen daadwerkelijk geretourneerde task_id/asset_id-waarden of de eigen mediabibliotheek uit; bouw nooit een taak-URL op basis van de bewerkings-ID en dien de aanmaakaanvraag nooit opnieuw in.
Antwoordvelden
| Veld | Type |
|---|---|
Veldcreated | Type |
Velddata[].url | Type |
Velddata[].b64_json | Type |
Veldusage | Type |
Aliasnamen
Modelaliasnamen
Ailoot Ultra sourceful/riverflow-v2-pro
Aliasnamen voor methodepaden
/v1/images
Gerelateerde aanroeper-ID’s
FAQ · Sourceful: Riverflow V2 Pro
- Welke invoer en resultaten zijn beschikbaar?
POST /v1/images/generations·sourceful/riverflow-v2-pro:text,image→image- Welke velden gebruikt het verzoek?
POST /v1/images/generations·sourceful/riverflow-v2-pro:model,prompt,resolution,aspect_ratio,n,input_references,provider- Welke limieten gelden?
POST /v1/images/generations·sourceful/riverflow-v2-pro:n.minimum:1;n.maximum:1