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

# Sourceful: Riverflow V2 Pro

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

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

Riverflow 2.0 Pro är Sourcefuls Pro-profil för bildgenerering och bildredigering för varumärkeskänsligt material. Familjen granskar och korrigerar kandidater, stöder typsnittsvägledning och erbjuder referensbaserad detaljreparation för produktetiketter och grafik.

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

Om modellen

Den här beskrivningen omfattar modellens förmågor. Tillgängliga indata, utdata och alternativ i Ailoot anges nedan för den valda metoden.

Riverflow 2.0 Pro är Pro-profilen i Sourcefuls Riverflow 2.0-familj för bildgenerering och bildredigering för produkt-, förpacknings- och marknadsföringsmaterial. Den kombinerar bildskapande eller redigering med en resonemangsmodell som granskar kandidater och gör korrigeringar. Dess centrala fokus är tillförlitligt genomförande av en visuell brief, typografi och bevarande av de produktdetaljer som gör materialet användbart för ett varumärke.

För en kvalitetskänslig komposition tillhandahåller du produktbilden eller grafiken, den exakta texten och det avsedda visuella arrangemanget. En användbar scen kan placera en burk med etikett bredvid dess ingredienser samtidigt som behållarens form och etikettens hierarki bevaras. Beskriv ljussättning, bakgrund och beskärning och ange sedan vilka produktdetaljer som inte ska ändras. Resultatet är en renderad kreativ bild; att avgöra hur den passar in i en större kampanj eller en redigerbar layout är ett separat applikationssteg.

2.0-arbetsflödet bedömer automatiskt kandidater och korrigerar problem i flera steg. Ge processen ett tydligt mål genom att skilja obligatoriskt innehåll från valfria stilval. Vid en redigering anger du elementet som ska ändras och de omgivande egenskaperna som ska bevaras. En uppdatering av produktfärg ska inte tyst bli en ny etikettdesign, och ett bakgrundsbyte ska hålla det tillhandahållna objektet igenkännligt. Den färdiga bilden behöver fortfarande jämföras med briefen och källreferenserna.

Typsnittskontroll använder offentliga eller tillhandahållna egna typsnitt för att vägleda varumärkets typografi. Riverflow 2.0 stöder upp till två typsnitt samtidigt och upp till 300 tecken per bild i arbetsflödet för typsnittskontroll. Ange exakt text, hierarki och avsedd vikt eller mellanrum i stället för att förvänta dig att modellen väljer formuleringen. Granska viktiga glyfer, siffror, ligaturer och liten kompletterande text i det resulterande materialet. Att hålla texten kortfattad lämnar också plats för produkten och den visuella förklaringen.

Familjens referensbaserade arbetsflöde för superupplösning reparerar fin text eller grafik som en scen med lägre upplösning inte innehåller korrekt. Tillhandahåll källgrafik av hög kvalitet så att detaljreparationssteget har den faktiska etiketten eller designen att återge. 2.0-utgåvan beskriver upp till fyra ersättningsinstanser per begäran, vilket möjliggör korrigeringar på en produkt eller flera produkter i en scen. Detta är ett referensbaserat reparationsflöde kring den genererade bilden, snarare än en garanti för att varje ursprunglig bild har perfekta mikrodetaljer.

För en uppsättning närbesläktade produkter håller du stil, ljussättning och scenstruktur konsekventa samtidigt som du tillhandahåller rätt referens för varje vara. Kampanjmaterial kan kombinera en huvudsaklig produktvy med praktiskt utrymme för godkänd text; en produktnärbild kan prioritera etikett- och materialdetaljer. Välj förberedelse av källa och utdata för den avsedda visningsstorleken och bevara den valda bilden med de referenser som fastställer dess identitet. En korrigering på scennivå och ett detaljreparationssteg behandlar olika delar av artefakten.

Pro skiljer sig från Fast-profilen och från Riverflow 2.5. Den senare generationen lägger till egna poängsättningskriterier och djupare granskningskontroller; dessa senare inställningar ska inte antas ingå i denna 2.0-profil. För en användbar slutgranskning kontrollerar du den begärda ändringen, typografin, produktidentiteten och de omgivande detaljerna mot källan. Ändra den specifika instruktion eller referens som orsakar en avvikelse samtidigt som du behåller den komposition som redan passar uppgiften.

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

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

Sourceful /`sourceful/riverflow-v2-pro`

### Start

Riverflow 2.0 Pro är Sourcefuls Pro-profil för bildgenerering och bildredigering för varumärkeskänsligt material. Familjen granskar och korrigerar kandidater, stöder typsnittsvägledning och erbjuder referensbaserad detaljreparation för produktetiketter och grafik.

Godkända indata

Text · Bilder

Resultat

Bilder

### Tillgängligt i Ailoot · indata & metoder

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

Indatatyper

`text`, `image`

Utdatatyper

`image`

| Fält | Typ | Krav | Värden & gränser | Standard |
| --- | --- | --- | --- | --- |
| Fält`model` | Typ`string` | KravObligatoriskt | Värden & gränser sourceful/riverflow-v2-pro | Standard— |
| Fält`prompt` | Typ`string` | KravObligatoriskt | Värden & gränser Minsta längd: 1 | Standard— |
| Fält`resolution` | Typ`string` | KravValfritt | Värden & gränser 1K, 2K, 4K | Standard— |
| Fält`aspect_ratio` | Typ`string` | KravValfritt | Värden & gränser 1:1, 4:3, 3:4, 3:2, 2:3, 16:9, 9:16, 21:9, auto | Standard— |
| Fält`n` | Typ`integer` | KravValfritt | Värden & gränser Minimum: 1 Maximum: 1 | Standard— |
| Fält`input_references` | Typ`array` | KravValfritt | Värden & gränser Minsta antal objekt: 0 Maximalt antal objekt: 10 | Standard— |
| Fält`provider` | Typ`object` | KravValfritt | Värden & gränser | Standard— |

Metodparametrar och livscykel

| Parameter | Avtal |
| --- | --- |
| Parameter`content_type` | Avtalapplication/json |
| Parameter`required` | Avtalmodel, prompt |
| Parameter`material_types` | Avtaltext, image |

Livscykel: `synchronous_result_then_owned_library`

`GET /v1/media/tasks/{task_id}` · Det task\_id som faktiskt returnerades eller en post i mediebiblioteket

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

`GET /v1/media/assets`

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

### Priser

##### Så beräknas slutavgiften

De visade priserna används för att uppskatta kostnaden före genereringen. Den slutliga debiteringen beräknas utifrån den kostnad som registrerats för den ursprungliga genereringen. Uppmätt längd på resultatet och uppskattade mängder utgör inte den slutliga debiterbara mängden.

Tariffuppgifter lägger inte till begäransalternativ. Parametrar som stöds anges för den valda metoden.

Snabbt läge

Ej angivet När snabbt läge är valt

Flex-läge

Ej angivet När läget flex är valt

Högsta resonemangsnivå

Ej angivet När den högsta resonemangsnivån använder standardjusteringen (default)

#### Uppskattade priser för jämförelse

#### Priser efter konfiguration

Matcha varje avgift mot de visade villkoren. Använd ett pris för varje uppsättning alternativa konfigurationer.

| Konfiguration | Prislista | Prognostiserad mängd | Debiteringsenhet | Avgift |
| --- | --- | --- | --- | --- |
| KonfigurationGrundpriser för token | PrislistaGrundpris | Prognostiserad mängd— | Debiteringsenhet— | Avgift Indata · Indatatoken · Uppskattning endast för jämförelse **—** / 1K token Utdata · Utdatatoken · Uppskattning endast för jämförelse **—** / 1K token Indata · Cacheläsning · Uppskattning endast för jämförelse **—** / 1K token Indata · Skrivning till cache · Uppskattning endast för jämförelse **—** / 1K token Indata · Skrivning till cache, 1 tim · Uppskattning endast för jämförelse **—** / 1K token |
| KonfigurationTeckensnittsindata | Prislista— | Prognostiserad mängd— | Debiteringsenhetper bild | Avgift Indata · Typsnittsindata · Uppskattning endast för jämförelse **$0.06** per bild |
| KonfigurationIndatareferens | Prislista— | Prognostiserad mängd— | Debiteringsenhetper bild | Avgift Indata · Indatareferens · Uppskattning endast för jämförelse **$0.4** per bild |
| Konfigurationutdatabild | Prislista— | Prognostiserad mängd— | Debiteringsenhetper utdatabild | Avgift Utdata · utdatabild · Uppskattning endast för jämförelse **$0.3** per utdatabild |
| KonfigurationUppskattad genereringskostnad | Prislista— | Prognostiserad mängduppskattning för en generering | Debiteringsenhet— | Avgift Utdata · Uppskattad genereringskostnad · Uppskattning endast för jämförelse **$0.3** uppskattning före generering Denna uppskattning är varken en extra avgift eller ett fast pris för den slutförda genereringen. |

Ailoot reserverar ett uppskattat belopp före en begäran. Efter resultatet slutregleras avgiften utifrån uppmätt förbrukning. Slutreglering för strömning använder den slutliga förbrukningsposten. [Så fungerar reservation och slutreglering →](https://ailoot.ai/docs/sv/billing/reserve/)

### Exempelbegäranden

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

### Ta emot och spara resultat

#### Ailoot Ultra · Bilder

Ladda ned varje returnerad bild eller spara dess Base64-innehåll

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

Andra innehållsläsningar

Läs befintliga resurser som tillhör dig

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

##### Behåll alla färdiga resultat

Spara varje färdig bild; hämta varje returnerad URL eller avkoda dess Base64-innehåll.

Spara hela svaret med headers, samtliga faktiska resultat, de ursprungliga returnerade identifierarna och alla användningsfält. Hämta den ursprungliga operationen utan att skicka skapandeförfrågan igen.

##### Om det ursprungliga svaret behöver kontrolleras

Behåll det returnerade värdet för X-Client-Request-ID för avstämning. Läs endast av resultat via de task\_id/asset\_id-värden som faktiskt returnerades eller via det mediebibliotek som tillhör dig. Bygg aldrig en uppgifts-URL från operations-ID:t och skicka aldrig skapandeförfrågan igen.

Svarsfält

| Fält | Typ |
| --- | --- |
| Fält`created` | Typ |
| Fält`data[].url` | Typ |
| Fält`data[].b64_json` | Typ |
| Fält`usage` | Typ |

### Alias

#### Modellalias

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

#### Alias för metodsökvägar

`/v1/images`

#### Relaterade anropar-ID:n

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

FAQ · Sourceful: Riverflow V2 Pro

Vilka indata och resultat finns?

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

Vilka fält använder begäran?

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

Vilka gränser gäller?

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

Anslut Ailoot till Claude Code, OpenCode, Hermes eller din app.

## Företaget och dess projektportfölj

Företaget och dess projektportfölj: miljontals kunder; månatlig försäljning för miljarder.

## Köp token med rabatt.

Prenumerationsrabatt för återkommande arbete. Kampanjkoder ger upp till 50% vid tokenköp.

Prenumeration

Välj en rabatterad plan för återkommande anrop.

Kampanjkod upp till 50%

Ange koden vid köpet. Priset räknas om enligt kampanjen.

Kostnader i historiken

Modell, token och belopp sparas för varje anrop.

[Välj prenumeration](https://ailoot.ai/docs/sv/billing/subscriptions/) · [Se modellpriser](https://ailoot.ai/models/sv/)

## Anslut API till produkten som du säljer.

SaaS, appar och botar enligt Ailoots officiella villkor och licensavtal. Begär återförsäljarlicens för vidareförsäljning.

Kommersiell applikation

Bygg text-, bild-, video- och ljudgenerering i tjänstens betalda funktioner.

Återförsäljarlicens

Skicka projektbeskrivning och åtkomstupplägg. Begär skriftliga villkor för användning och vidareförsäljning.

Dokument på webbplatsen

Officiella villkor, licensavtal och databehandlingspolicy finns tillgängliga före anslutning.

[Begär återförsäljarlicens](mailto:support@ailoot.ai) · [Officiella villkor och licensavtal](https://ailoot.ai/legal/offer?lang=sv)

## Ailoot · Företaget och dess projektportfölj





Ailoot bygger på etablerad driftserfarenhet, en stor kundbas, stabil service och löpande KPI-kontroll.





Företaget och dess projektportfölj: miljontals kunder; månatlig försäljning för miljarder.





Ailoot använder denna driftserfarenhet för API-åtkomst till AI-funktioner i kundernas produkter, agenter, applikationer och automatiseringar.
