Source: https://ailoot.ai/models/nl-be/sourceful-riverflow-v2-pro/
Canonical: https://ailoot.ai/models/nl-be/sourceful-riverflow-v2-pro/
Language: nl-be

# Sourceful: Riverflow V2 Pro

[Markdown](https://ailoot.ai/models/nl-be/sourceful-riverflow-v2-pro/index.md) · [JSON](https://ailoot.ai/models/nl-be/sourceful-riverflow-v2-pro/facts.json)

## [Sourceful: Riverflow V2 Pro](https://ailoot.ai/models/nl-be/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.

- [**Ailoot Ultra · Afbeeldingen** `POST /v1/images/generations` `sourceful/riverflow-v2-pro`](https://ailoot.ai/models/nl-be/sourceful-riverflow-v2-pro/#method-0)

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-pro`](https://ailoot.ai/models/nl-be/#m=sourceful%2Friverflow-v2-pro&route=Ultra&caller=sourceful%2Friverflow-v2-pro&fmt=images)

Sourceful /`sourceful/riverflow-v2-pro`

### Aan 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 |
| --- | --- | --- | --- | --- |
| Veld`model` | Type`string` | VereisteVereist | Waarden en limieten sourceful/riverflow-v2-pro | Standaard— |
| Veld`prompt` | Type`string` | VereisteVereist | Waarden en limieten Minimumlengte: 1 | Standaard— |
| Veld`resolution` | Type`string` | VereisteOptioneel | Waarden en limieten 1K, 2K, 4K | Standaard— |
| Veld`aspect_ratio` | Type`string` | VereisteOptioneel | Waarden en limieten 1:1, 4:3, 3:4, 3:2, 2:3, 16:9, 9:16, 21:9, auto | Standaard— |
| Veld`n` | Type`integer` | VereisteOptioneel | Waarden en limieten Minimum: 1 Maximum: 1 | Standaard— |
| Veld`input_references` | Type`array` | VereisteOptioneel | Waarden en limieten Minimumaantal items: 0 Maximumaantal items: 10 | Standaard— |
| Veld`provider` | Type`object` | VereisteOptioneel | Waarden en limieten | Standaard— |

Methodeparameters en levenscyclus

| Parameter | Contract |
| --- | --- |
| Parameter`content_type` | Contractapplication/json |
| Parameter`required` | Contractmodel, prompt |
| Parameter`material_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 →](https://ailoot.ai/docs/nl-be/billing/reserve/)

### Voorbeeldverzoeken

#### Ailoot Ultra · Afbeeldingen

curl

```bash
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}/content`
- `GET /v1/media/assets`
- `GET /v1/media/assets/{asset_id}`

Lezen van andere inhoud

Bestaande eigen bestanden ophalen

```bash
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 |
| --- | --- |
| Veld`created` | Type |
| Veld`data[].url` | Type |
| Veld`data[].b64_json` | Type |
| Veld`usage` | Type |

### Aliasnamen

#### Modelaliasnamen

**Ailoot Ultra** [`sourceful/riverflow-v2-pro`](https://ailoot.ai/models/nl-be/#m=sourceful%2Friverflow-v2-pro&route=Ultra&caller=sourceful%2Friverflow-v2-pro&fmt=images)

#### Aliasnamen voor methodepaden

`/v1/images`

#### Gerelateerde aanroeper-ID’s

[`sourceful/riverflow-v2-pro`](https://ailoot.ai/models/nl-be/#m=sourceful%2Friverflow-v2-pro&route=Ultra&caller=sourceful%2Friverflow-v2-pro&fmt=images)

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`

Verbind Ailoot met Claude Code, OpenCode, Hermes of je eigen applicatie.

## Het bedrijf en zijn projectenportefeuille

Het bedrijf en zijn projectenportefeuille: miljoenen klanten; maandelijkse verkopen in de miljarden.

## Koop tokens met korting.

Abonnementsvoordeel voor regelmatig gebruik. Promotiecodes geven tot 50% korting op tokens.

Abonnement

Kies een abonnement met korting voor je terugkerende verzoeken.

Promotiecode tot 50%

Vul de code bij aankoop in. De prijs wordt volgens de lopende actie herberekend.

Kosten in de geschiedenis

Model, tokens en bedrag worden per verzoek bewaard.

[Kies een abonnement](https://ailoot.ai/docs/nl-be/billing/subscriptions/) · [Bekijk modelprijzen](https://ailoot.ai/models/nl-be/)

## Verbind de API met het product dat je verkoopt.

SaaS, apps en bots volgens de openbare aanbodvoorwaarden en licentieovereenkomst van Ailoot. Vraag voor doorverkoop een resellerlicentie aan.

Commerciële applicatie

Voeg tekst-, beeld-, video- en geluidsgeneratie aan betaalde functies van je service toe.

Resellerlicentie

Stuur een projectbeschrijving en toegangsschema. Vraag schriftelijke voorwaarden voor gebruik en doorverkoop.

Documenten op de site

Aanbodvoorwaarden, licentieovereenkomst en gegevensbeleid zijn vóór het verbinden beschikbaar.

[Vraag een resellerlicentie aan](mailto:support@ailoot.ai) · [Aanbodvoorwaarden en licentieovereenkomst](https://ailoot.ai/legal/offer?lang=nl-be)

## Ailoot · Het bedrijf en zijn projectenportefeuille





Ailoot bouwt op opgebouwde operationele ervaring, een groot klantenbestand, een stabiele dienst en doorlopende KPI-controle.





Het bedrijf en zijn projectenportefeuille: miljoenen klanten; maandelijkse verkopen in de miljarden.





Ailoot gebruikt die operationele ervaring voor API-toegang tot AI-functies in klantproducten, agents, applicaties en automatiseringen.
