Sourceful: Riverflow V2 Pro
Riverflow 2.0 Pro is het Pro-profiel van Sourceful voor beeldgeneratie en -bewerking van creaties waarbij merkconsistentie belangrijk is. 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 Sourcefuls Riverflow 2.0-familie voor het genereren en bewerken van product-, verpakkings- en marketingbeelden. Het combineert beeldcreatie of -bewerking met een redeneermodel dat kandidaten beoordeelt en corrigeert. Centraal staan het betrouwbaar uitvoeren van een visuele briefing, typografie en het behouden van de productdetails die een beeld bruikbaar maken voor een merk.
Lever voor een compositie waarbij kwaliteit belangrijk is het productbeeld of grafisch ontwerp, de exacte bewoordingen en de beoogde visuele opstelling aan. Een bruikbare scène kan een pot met etiket naast de ingrediënten plaatsen, met behoud van de vorm van de verpakking en de hiërarchie van het etiket. Beschrijf de belichting, achtergrond en uitsnede en geef daarna aan welke productdetails niet mogen veranderen. Het resultaat is een gerenderd creatief beeld; bepalen hoe het in een bredere campagne of bewerkbare lay-out past, is een afzonderlijke toepassingsstap.
De 2.0-workflow beoordeelt kandidaten automatisch en corrigeert problemen in meerdere stappen. Geef dat proces een duidelijk doel door verplichte inhoud van optionele stijlkeuzes te scheiden. Benoem bij een bewerking het element dat moet veranderen 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. Het afgewerkte beeld moet nog steeds met de briefing en bronreferenties worden vergeleken.
Lettertypecontrole gebruikt publiek beschikbare of aangeleverde eigen lettertypen om de merktypografie te sturen. Riverflow 2.0 ondersteunt in zijn workflow voor lettertypecontrole maximaal twee lettertypen tegelijk en maximaal 300 tekens per afbeelding. Geef de exacte tekst, hiërarchie en het beoogde lettergewicht of de spatiëring op, in plaats van te verwachten dat het model de bewoordingen kiest. Controleer belangrijke lettertekens, cijfers, ligaturen en kleine ondersteunende tekst in het resulterende beeld. Beknopte bewoordingen laten ook ruimte voor het product en de visuele toelichting.
De superresolutieworkflow op basis van referenties van de familie herstelt fijne tekst of grafisch werk dat een scène met lagere resolutie niet nauwkeurig weergeeft. Lever bronmateriaal van hoge kwaliteit aan, zodat de detailherstelstap het werkelijke etiket of ontwerp kan reproduceren. De 2.0-release beschrijft maximaal vier te vervangen voorkomens per verzoek, zodat correcties mogelijk zijn op één product of meerdere producten in een scène. Dit is een herstelworkflow op basis van referenties rond het gegenereerde beeld, geen garantie dat elk eerste beeld perfecte microdetails bevat.
Houd voor een verwante productreeks de stijl, belichting en scèneopbouw consistent, terwijl je voor elk artikel de juiste referentie aanlevert. Een campagnebeeld kan een hoofdweergave van het product combineren met praktische ruimte voor goedgekeurde tekst; een productclose-up kan voorrang geven aan details van etiket en materiaal. Kies de voorbereiding van bron en uitvoer voor de beoogde weergavegrootte en bewaar het gekozen beeld met de referenties die de identiteit ervan vastleggen. Een correctie op scèneniveau en een detailherstelstap pakken verschillende delen van het resultaat aan.
Pro staat los van het Fast-profiel en van Riverflow 2.5. De latere generatie voegt eigen scorecriteria en diepere beoordelingsregelingen toe; die latere instellingen mogen niet als onderdeel van dit 2.0-profiel worden verondersteld. Controleer bij een bruikbare eindbeoordeling de gevraagde wijziging, typografie, productidentiteit en omliggende details aan de hand van de bron. Herwerk de specifieke instructie of referentie die voor een afwijking verantwoordelijk is 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 beeldgeneratie en -bewerking van creaties waarbij merkconsistentie belangrijk is. 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
- Invoer
text,image- Uitvoer
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} · daadwerkelijk teruggegeven task_id of 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 getoonde tarieven ramen de kosten vóór de generatie. De definitieve kosten worden berekend op basis van de kosten die voor de oorspronkelijke generatie zijn geregistreerd. De gemeten duur van het gegenereerde resultaat en de geraamde hoeveelheden vormen 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 geselecteerd is
- Flex-modus
- Niet opgegeven Wanneer de flex-modus geselecteerd is
- Maximale redeneerinspanning
- Niet opgegeven Wanneer voor 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 raming is geen extra kost 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 de volledige respons en headers, iedere daadwerkelijke uitvoer, de oorspronkelijk teruggegeven identificatoren en alle verbruiksvelden. Herstel de oorspronkelijke bewerking zonder de aanmaakaanvraag opnieuw in te dienen.
Als het oorspronkelijke antwoord moet worden gecontroleerd
Bewaar de teruggegeven X-Client-Request-ID voor de reconciliatie. Lees uitsluitend daadwerkelijk teruggegeven 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