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

# Sourceful: Riverflow V2 Pro

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

## [Sourceful: Riverflow V2 Pro](https://ailoot.ai/models/nb/sourceful-riverflow-v2-pro/)

Riverflow 2.0 Pro er Sourcefuls Pro-profil for bildegenerering og bilderedigering der merkevarehensyn er viktige. Familien vurderer og korrigerer forslag, støtter skriftveiledning og tilbyr referansebasert detaljreparasjon for produktetiketter og grafikk.

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

Om modellen

Denne beskrivelsen dekker modellens funksjoner. Tilgjengelige inndata, utdata og alternativer i Ailoot er oppført nedenfor for den valgte metoden.

Riverflow 2.0 Pro er Pro-profilen i Sourcefuls Riverflow 2.0-familie for generering og redigering av produkt-, emballasje- og markedsføringsbilder. Den kombinerer bildeproduksjon eller redigering med en resonneringsmodell som vurderer forslag og korrigerer dem. Kjernen er pålitelig gjennomføring av en visuell oppdragsbeskrivelse, typografi og bevaring av produktdetaljene som gjør et bilde nyttig for en merkevare.

For en komposisjon der kvalitet er viktig, bør du legge ved produktbildet eller grafikken, den nøyaktige ordlyden og den tiltenkte visuelle oppbygningen. En nyttig scene kan plassere en krukke med etikett ved siden av ingrediensene, samtidig som beholderens form og etikettens hierarki bevares. Beskriv lys, bakgrunn og beskjæring, og angi deretter hvilke produktdetaljer som ikke skal endres. Resultatet er et rendret reklamebilde; å avgjøre hvordan det passer inn i en større kampanje eller en redigerbar layout, er et separat applikasjonstrinn.

2.0-arbeidsflyten vurderer forslag automatisk og korrigerer problemer over flere trinn. Gi prosessen et tydelig mål ved å skille obligatorisk innhold fra valgfrie stilvalg. Ved redigering bør du angi elementet som skal endres, og de omkringliggende egenskapene som skal bevares. En oppdatering av produktfarge skal ikke ubemerket bli til et nytt etikettdesign, og et bakgrunnsbytte skal holde det vedlagte objektet gjenkjennelig. Det ferdige bildet må fortsatt sammenlignes med oppdragsbeskrivelsen og kildereferansene.

Skriftkontroll bruker offentlig tilgjengelige eller vedlagte egendefinerte skrifter til å styre merkevaretypografien. Riverflow 2.0 støtter opptil to skrifter om gangen og opptil 300 tegn per bilde i arbeidsflyten for skriftkontroll. Oppgi nøyaktig tekst, hierarki og ønsket skriftvekt eller avstand, i stedet for å forvente at modellen velger ordlyden. Kontroller viktige skrifttegn, tall, ligaturer og liten støttetekst i resultatfilen. Konsis ordlyd gir også plass til produktet og den visuelle forklaringen.

Familiens referansebaserte arbeidsflyt for superoppløsning reparerer liten tekst eller grafikk som en scene med lavere oppløsning ikke gjengir nøyaktig. Legg ved kildegrafikk av høy kvalitet, slik at detaljreparasjonen har den faktiske etiketten eller designen som skal gjenskapes. 2.0-utgivelsen beskriver opptil fire erstatningsforekomster per forespørsel, slik at detaljer på ett eller flere produkter i en scene kan korrigeres. Dette er en referansebasert reparasjonsflyt rundt det genererte bildet, ikke en garanti for at alle første bilder har perfekte mikrodetaljer.

For et sett med beslektede produkter bør du holde stil, lys og scenestruktur konsekvent, samtidig som du legger ved riktig referanse for hver vare. Kampanjemateriell kan kombinere en hovedvisning av produktet med praktisk plass til godkjent tekst; et nærbilde av produktet kan prioritere etikett- og materialdetaljer. Klargjør kilden og utdataene for den tiltenkte visningsstørrelsen, og bevar det valgte bildet sammen med referansene som fastslår identiteten. En korrigering av selve scenen og et trinn for detaljreparasjon retter seg mot ulike deler av artefakten.

Pro er forskjellig fra Fast-profilen og fra Riverflow 2.5. Den senere generasjonen legger til egendefinerte vurderingskriterier og dypere kontroll over vurderingen; disse senere innstillingene skal ikke antas å være en del av denne 2.0-profilen. Ved en nyttig sluttvurdering bør du kontrollere den ønskede endringen, typografien, produktidentiteten og omkringliggende detaljer mot kilden. Endre den konkrete instruksjonen eller referansen som er ansvarlig for avviket, samtidig som du beholder komposisjonen som allerede passer oppgaven.

**Ailoot Ultra · Bilder** `POST /v1/images/generations` `sourceful/riverflow-v2-pro`

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

Sourceful /`sourceful/riverflow-v2-pro`

### Start

Riverflow 2.0 Pro er Sourcefuls Pro-profil for bildegenerering og bilderedigering der merkevarehensyn er viktige. Familien vurderer og korrigerer forslag, støtter skriftveiledning og tilbyr referansebasert detaljreparasjon for produktetiketter og grafikk.

Godkjente inndata

Tekst · Bilder

Resultater

Bilder

### Tilgjengelig i Ailoot · inndata & metoder

**Ailoot Ultra · Bilder** `POST /v1/images/generations`

Inndatatyper

`text`, `image`

Utdatatyper

`image`

| Felt | Type | Krav | Verdier & grenser | Standard |
| --- | --- | --- | --- | --- |
| Felt`model` | Type`string` | KravPåkrevd | Verdier & grenser sourceful/riverflow-v2-pro | Standard— |
| Felt`prompt` | Type`string` | KravPåkrevd | Verdier & grenser Minste lengde: 1 | Standard— |
| Felt`resolution` | Type`string` | KravValgfritt | Verdier & grenser 1K, 2K, 4K | Standard— |
| Felt`aspect_ratio` | Type`string` | KravValgfritt | Verdier & grenser 1:1, 4:3, 3:4, 3:2, 2:3, 16:9, 9:16, 21:9, auto | Standard— |
| Felt`n` | Type`integer` | KravValgfritt | Verdier & grenser Minimum: 1 Maksimum: 1 | Standard— |
| Felt`input_references` | Type`array` | KravValgfritt | Verdier & grenser Minste antall elementer: 0 Maksimalt antall elementer: 10 | Standard— |
| Felt`provider` | Type`object` | KravValgfritt | Verdier & grenser | Standard— |

Metodeparametere og livssyklus

| Parameter | Avtale |
| --- | --- |
| Parameter`content_type` | Avtaleapplication/json |
| Parameter`required` | Avtalemodel, prompt |
| Parameter`material_types` | Avtaletext, image |

Livssyklus: `synchronous_result_then_owned_library`

`GET /v1/media/tasks/{task_id}` · faktisk returnert task\_id eller oppføring i mediebiblioteket

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

`GET /v1/media/assets`

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

### Priser

##### Slik beregnes det endelige beløpet

De viste satsene anslår kostnaden før generering. Det endelige beløpet beregnes ut fra kostnaden som er registrert for den opprinnelige genereringen. Målt varighet på utdataene og anslåtte mengder er ikke den endelige fakturerbare mengden.

Tariffopplysninger legger ikke til forespørselsvalg. Støttede parametere står ved den valgte metoden.

Hurtigmodus

Ikke angitt Når hurtigmodus er valgt

Flex-modus

Ikke angitt Når flex-modus er valgt

Maksimal resonneringsinnsats

Ikke angitt Når justeringen «default» brukes for maksimal resonneringsinnsats

#### Estimerte satser for sammenligning

#### Priser etter konfigurasjon

Knytt hver kostnad til de viste vilkårene. Bruk én sats for hvert sett med alternative konfigurasjoner.

| Konfigurasjon | Prisplan | Forventet mengde | Faktureringsenhet | Kostnad |
| --- | --- | --- | --- | --- |
| KonfigurasjonGrunnpriser for tokener | PrisplanGrunnsats | Forventet mengde— | Faktureringsenhet— | Kostnad Inndata · Inngående tokener · Estimat kun for sammenligning **—** / 1K tokener Utdata · Utgående tokener · Estimat kun for sammenligning **—** / 1K tokener Inndata · Lesing fra hurtigbuffer · Estimat kun for sammenligning **—** / 1K tokener Inndata · Skriving til hurtigbuffer · Estimat kun for sammenligning **—** / 1K tokener Inndata · Skriving til hurtigbuffer, 1 time · Estimat kun for sammenligning **—** / 1K tokener |
| KonfigurasjonSkriftinndata | Prisplan— | Forventet mengde— | Faktureringsenhetper bilde | Kostnad Inndata · Inndata for skrifttype · Estimat kun for sammenligning **$0.06** per bilde |
| KonfigurasjonInndatareferanse | Prisplan— | Forventet mengde— | Faktureringsenhetper bilde | Kostnad Inndata · Referanse som inndata · Estimat kun for sammenligning **$0.4** per bilde |
| Konfigurasjonutdatabilde | Prisplan— | Forventet mengde— | Faktureringsenhetper utdatabilde | Kostnad Utdata · utdatabilde · Estimat kun for sammenligning **$0.3** per utdatabilde |
| KonfigurasjonAnslått genereringskostnad | Prisplan— | Forventet mengdeestimat for én generering | Faktureringsenhet— | Kostnad Utdata · Anslått genereringskostnad · Estimat kun for sammenligning **$0.3** estimat før generering Dette anslaget er verken en tilleggsavgift eller en fast sats for den fullførte genereringen. |

Ailoot reserverer et estimert beløp før en forespørsel. Etter resultatet gjøres det endelige beløpet opp basert på målt forbruk. Oppgjør for strømming bruker den endelige forbruksposten. [Slik fungerer reservasjon og oppgjør →](https://ailoot.ai/docs/nb/billing/reserve/)

### Eksempelforespørsler

#### Ailoot Ultra · Bilder

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
```

### Motta og lagre resultater

#### Ailoot Ultra · Bilder

Last ned hvert returnerte bilde eller lagre Base64-innholdet

- `GET /v1/media/tasks/{task_id}`
- `GET /v1/media/assets/{asset_id}/content`
- `GET /v1/media/assets`
- `GET /v1/media/assets/{asset_id}`

Andre innholdslesinger

Les eksisterende ressurser som tilhører deg

```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.
```

##### Behold alle ferdige resultater

Lagre hvert ferdige bilde; hent hver returnerte URL eller dekod Base64-innholdet.

Bevar hele svaret og svarhodene, alle faktiske utdata, de opprinnelige returnerte identifikatorene og alle bruksfeltene. Hent den opprinnelige operasjonen igjen uten å sende opprettelsesforespørselen på nytt.

##### Hvis det opprinnelige svaret må kontrolleres

Bevar returnert X-Client-Request-ID for avstemming. Les bare faktisk returnerte task\_id/asset\_id-verdier eller egne oppføringer i mediebiblioteket; bygg aldri en oppgave-URL fra operasjons-ID-en, og send aldri opprettelsesforespørselen på nytt.

Svarfelter

| Felt | Type |
| --- | --- |
| Felt`created` | Type |
| Felt`data[].url` | Type |
| Felt`data[].b64_json` | Type |
| Felt`usage` | Type |

### Aliaser

#### Modellaliaser

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

#### Aliaser for metodestier

`/v1/images`

#### Tilknyttede anroper-ID-er

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

FAQ · Sourceful: Riverflow V2 Pro

Hvilke inndata og resultater er tilgjengelige?

`POST /v1/images/generations` · `sourceful/riverflow-v2-pro`: `text`, `image` → `image`

Hvilke felt bruker forespørselen?

`POST /v1/images/generations` · `sourceful/riverflow-v2-pro`: `model`, `prompt`, `resolution`, `aspect_ratio`, `n`, `input_references`, `provider`

Hvilke grenser gjelder?

`POST /v1/images/generations` · `sourceful/riverflow-v2-pro`: `n.minimum`: `1`; `n.maximum`: `1`

Koble Ailoot til Claude Code, OpenCode, Hermes eller egen applikasjon.

## Selskapet og dets prosjektportefølje

Selskapet og dets prosjektportefølje: millioner av kunder; månedlig salg for milliarder.

## Kjøp tokener med rabatt.

Abonnementsrabatt for jevnlig bruk. Kampanjekoder gir opptil 50% på tokenkjøp.

Abonnement

Velg et rabattabonnement for faste forespørsler.

Kampanjekode opptil 50%

Oppgi kode ved kjøp. Prisen beregnes på nytt etter gjeldende kampanje.

Kostnader i historikken

Modell, tokener og beløp lagres for hver forespørsel.

[Velg abonnement](https://ailoot.ai/docs/nb/billing/subscriptions/) · [Se modellpriser](https://ailoot.ai/models/nb/)

## Koble API-et til produktet du selger.

SaaS, apper og boter etter Ailoots offentlige tilbud og lisensavtale. Be om forhandlerlisens for videresalg.

Kommersiell applikasjon

Bygg tekst-, bilde-, video- og lydgenerering inn i betalte funksjoner i tjenesten.

Forhandlerlisens

Send prosjektbeskrivelse og tilgangsopplegg. Be om skriftlige vilkår for bruk og videresalg.

Dokumenter på nettstedet

Offentlig tilbud, lisensavtale og retningslinjer for databehandling er tilgjengelige før tilkobling.

[Be om forhandlerlisens](mailto:support@ailoot.ai) · [Offentlig tilbud og lisensavtale](https://ailoot.ai/legal/offer?lang=nb)

## Ailoot · Selskapet og dets prosjektportefølje





Ailoot bygger på etablert driftserfaring, en stor kundebase, stabil tjeneste og løpende KPI-kontroll.





Selskapet og dets prosjektportefølje: millioner av kunder; månedlig salg for milliarder.





Ailoot bruker denne driftserfaringen til API-tilgang til AI-funksjoner i kundenes produkter, agenter, applikasjoner og automatiseringer.
