Source: https://ailoot.ai/models/fi/recraft-recraft-v4/
Canonical: https://ailoot.ai/models/fi/recraft-recraft-v4/
Language: fi

# Recraft: Recraft V4

[Markdown](https://ailoot.ai/models/fi/recraft-recraft-v4/index.md) · [JSON](https://ailoot.ai/models/fi/recraft-recraft-v4/facts.json)

## [Recraft: Recraft V4](https://ailoot.ai/models/fi/recraft-recraft-v4/)

Recraft V4 generoi 1K-rasterikuvia keskittyen sommitteluun, värisuhteisiin ja yksityiskohtaiseen luovaan ohjeeseen. Se kattaa kuvituksen, fotorealistiset kohtaukset ja graafiset suunnittelukonseptit sekä valinnaiset tyylisyötteet ja erillisen kuvasta kuvaksi -työnkulun.

- [**Ailoot Ultra · Kuvat** `POST /v1/images/generations` `recraft/recraft-v4`](https://ailoot.ai/models/fi/recraft-recraft-v4/#method-0)

Tietoa mallista

Tämä kuvaus kattaa mallin ominaisuudet. Ailootissa saatavilla olevat syötteet, tulosteet ja asetukset luetellaan alla valitulle menetelmälle.

Recraft V4 on Recraftin V4-sukupolven tavallinen rasterimalli. Valmistaja painottaa suunnitteluharkintaa: tasapainoista sommittelua, yhtenäisiä värisuhteita ja visuaalista tarkoitusta tukevaa yksityiskohtaisuutta. Se voi työskennellä tyylitellyn kuvituksen, valokuvakohtausten ja graafisten suunnittelukonseptien parissa. Käytä sitä, kun ohje vaatii esteettiset valinnat ja kehotetarkkuuden yhdistävää kuvaa, olipa tavoitteena tunnelman tutkiminen lyhyestä ohjeesta tai tarkoituksellisen asettelun tarkka määrittely.

Nimenomainen mallikoodi on recraftv4. Valmistajan viite luettelee 1K-rasterituloksen häviöttömänä WebP:nä tai PNG:nä. Neliökuva on 1024 × 1024 pikseliä, 16:9 on 1344 × 768 ja 2:3 on 832 × 1280; muut tuetut suhteet käyttävät omia mittojaan. V4 Pro on erillinen 2K-rasteriversio, kun taas V4 Vector ja Pro Vector palauttavat muokattavan SVG:n. Valitse toimitukseen tarkka V4-muunnelma näiden erilaisten tulosominaisuuksien yhdistämisen sijaan.

Valmistajan opas erottaa lyhyet tulkinnalliset kehotteet rakenteisesta luovasta ohjeesta. Lyhyt ilmaus voi jättää tilaa muodon, tunnelman ja rajauksen tutkimiselle. Rakenteinen ohje voi nimetä kohteen, ympäristön, asennon, materiaalin, toissijaiset elementit, valaistuksen ja visuaalisen hierarkian. Kuvaile kerronnalliseen kuvitukseen pienen sillan ylittävä pyöräilijä, rohkeat pelkistetyt muodot, lämpimät hillityt värit ja selkeä liike vasemmalta oikealle. Nämä sisältö- ja sommitteluvalinnat ovat toteutuskelpoisempia kuin pitkä irrallisten tyyliadjektiivien luettelo.

V4:n alue sisältää kuvituksen, tilallisen kuvaston ja fotorealistiset kuvat. Opas suosittelee kuvitukseen piirustuslogiikan ja 3D:n näköiseen kuvaan materiaalin, valon, kameran ja syvyyden kuvaamista. Jälkimmäinen pysyy rasterikuvana eikä muokattavana meshinä. Kerro juliste- tai pakkauskonseptissa, mitkä sanat ovat ensisijaisia, mihin ne kuuluvat ja miten kuva ja typografia toimivat yhdessä. Valmistaja korostaa luettavaa lyhyttä ja keskipitkää tekstiä; tarkasta palautetusta kuvasta todellinen sanamuoto ja järjestely ennen käyttöä.

Generointi tukee enintään 10 000 merkin kehotteita, satunnaissiementä, yhdestä kuuteen tulosta, toivottuja värejä ja haluttua taustaväriä. Valinnaiset yhteensopivat omat tyylit ja viitekuvat voivat ohjata visuaalista käsittelyä joustavalla tai tarkalla vastaavuudella. Valitse selkeä viite tai samaan visuaaliseen maailmaan kuuluva joukko ja anna sitten kehotteen kuvailla uusi kohde ja kohtaus. Viitteen ja tuloksen värivastaavuutta ei taata, joten määrittele tarvittava paletti selvästi ja vertaa tulosta siihen. Käytä viitetyyligenerointiin yhdestä kymmeneen PNG-, JPG- tai WebP-kuvaa, yhteensä enintään 64 MB ja kukin alle 20 MB. Jokaisen viitteen lyhyemmän sivun on oltava vähintään 256 pikseliä, pidemmän enintään 4 096 pikseliä ja tarkkuuden enintään 16 megapikseliä. Käytä joko näitä viitteitä tai yhteensopivaa tallennettua tyyliä, älä molempia.

Dokumentoitu kuvasta kuvaksi -operaatio yhdistää olemassa olevan kuvan ja kehotteen; voimakkuus 0–1 määrittelee uuden tuloksen etäisyyden lähteestä. Se ei hyväksy V4-tyyliasetuksia kyseisessä operaatiossa. Nykyinen generointiviite sulkee pois myös kuratoidut tyylinimet sekä negative\_prompt-, text\_layout-, artistic\_level- ja no\_text-asetukset. Valmistele myönteinen kuvaus halutusta tuloksesta ja arvioi kuvaa kohdesommitelmassa. Tavallinen V4 tarjoaa kohdennetun rasterimuotoisen suunnittelutulkinnan tietyllä versiolla, muodolla ja tuloskoolla. Anna kuvasta kuvaksi -työhön PNG, JPG, WebP tai SVG alle 20 MB:n koossa, enintään 16 megapikseliä ja molemmat sivut 256–4 096 pikseliä.

**Ailoot Ultra · Kuvat** `POST /v1/images/generations` `recraft/recraft-v4`

[`recraft/recraft-v4`](https://ailoot.ai/models/fi/#m=recraft%2Frecraft-v4&route=Ultra&caller=recraft%2Frecraft-v4&fmt=images)

Recraft /`recraft/recraft-v4`

### Aloitus

Recraft V4 generoi 1K-rasterikuvia keskittyen sommitteluun, värisuhteisiin ja yksityiskohtaiseen luovaan ohjeeseen. Se kattaa kuvituksen, fotorealistiset kohtaukset ja graafiset suunnittelukonseptit sekä valinnaiset tyylisyötteet ja erillisen kuvasta kuvaksi -työnkulun.

Hyväksytyt syötteet

Teksti · Kuvat

Tulokset

Kuvat

### Saatavilla Ailootissa · syötteet & menetelmät

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

Syötetyypit

`text`, `image`

Tulostyypit

`image`

Tulosteen muoto

Kuvatiedosto

| Kenttä | Tyyppi | Vaatimus | Arvot & rajat | Oletus |
| --- | --- | --- | --- | --- |
| Kenttä`model` | Tyyppi`string` | VaatimusPakollinen | Arvot & rajat recraft/recraft-v4 | Oletus— |
| Kenttä`prompt` | Tyyppi`string` | VaatimusPakollinen | Arvot & rajat Vähimmäispituus: 1 | Oletus— |
| Kenttä`n` | Tyyppi`integer` | VaatimusValinnainen | Arvot & rajat Vähimmäismäärä: 1 Enimmäismäärä: 6 | Oletus— |
| Kenttä`aspect_ratio` | Tyyppi`string` | VaatimusValinnainen | Arvot & rajat 1:1, 4:3, 3:4, 16:9, 9:16, auto | Oletus— |
| Kenttä`input_references` | Tyyppi`array` | VaatimusValinnainen | Arvot & rajat Kohteiden vähimmäismäärä: 0 Kohteiden enimmäismäärä: 1 | Oletus— |

Syöteaineistojen yhdistelmät

**Tekstistä kuvaksi** · Pakollinen: prompt

**reference\_guided\_image** · Pakollinen: prompt, actual image reference

Menetelmän parametrit ja elinkaari

| Parametri | Sopimus |
| --- | --- |
| Parametri`content_type` | Sopimusapplication/json |
| Parametri`required` | Sopimusmodel, prompt |
| Parametri`material_types` | Sopimustext, image |
| Parametri`optional_controls` | Sopimusn, aspect\_ratio, input\_references |
| Parametri`n` | Sopimus{"minimum":1,"maximum":6} |
| Parametri`reference_images` | Sopimus{"minimum":0,"maximum":1,"source":"asiakkaan todellisuudessa toimittama aineisto"} |
| Parametri`provider_specific_options` | SopimusVain tallennettu täsmällinen rajapintapisteen sallittujen arvojen luettelo: style/controls/text\_layout; rakenteita ei arvata. |

Menetelmien aliakset: `/v1/images`

Elinkaari: `synchronous_result_then_owned_library`

`GET /v1/media/tasks/{task_id}` · todellisuudessa palautettu task\_id tai mediakirjaston tietue

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

`GET /v1/media/assets`

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

Pelkkää kehotetta käyttävä esimerkki säilyttää virallisen ImageGenerationRequest-rakenteen.

Säilytä jokainen palautettu kuva ja koko vastaus; tulosmäärä on todellinen määrä, ei pyydetty n.

### Hinnoittelu

##### Lopullisen veloituksen laskenta

Näytettyjen hintojen avulla arvioidaan kustannukset ennen generointia. Lopullinen veloitus lasketaan alkuperäiselle generoinnille kirjatun kustannuksen perusteella. Lopullisena laskutettavana määränä ei käytetä tulosteen mitattua kestoa eikä ennustettuja määriä.

Hintatiedot eivät lisää pyyntövalintoja. Tuetut parametrit on lueteltu valitulle menetelmälle.

Nopea tila

Ei määritetty Kun nopea tila on valittu

Flex-tila

Ei määritetty Kun flex-tila on valittu

Päättelyn enimmäisteho

Ei määritetty Kun päättelyn enimmäistehoon sovelletaan default-oletussäätöä

#### Arvioidut vertailuhinnat

#### Hinnat asetusten mukaan

Kohdista kukin veloitus näytettyihin ehtoihin. Käytä yhtä hintaa kutakin vaihtoehtoisten asetusten ryhmää kohden.

| Asetukset | Hinnasto | Ennustettu määrä | Laskutusyksikkö | Veloitus |
| --- | --- | --- | --- | --- |
| AsetuksetTokenien perushinnat | HinnastoPerushinta | Ennustettu määrä— | Laskutusyksikkö— | Veloitus Syöte · Syötetokenit · Arvio vain vertailua varten **—** / 1K tokenia Tuloste · Tulostokenit · Arvio vain vertailua varten **—** / 1K tokenia Syöte · Välimuistin luku · Arvio vain vertailua varten **—** / 1K tokenia Syöte · Välimuistiin kirjoitus · Arvio vain vertailua varten **—** / 1K tokenia Syöte · Välimuistiin kirjoitus, 1 tunti · Arvio vain vertailua varten **—** / 1K tokenia |
| AsetuksetUltra | Hinnasto— | Ennustettu määrä— | Laskutusyksikkötuloskuvaa kohden | Veloitus Tuloste · kuvatuloste · Arvio vain vertailua varten **$0.08** tuloskuvaa kohden |
| AsetuksetArvioitu luontikustannus | Hinnasto— | Ennustettu määräyhden generoinnin arvio | Laskutusyksikkö— | Veloitus Tuloste · Arvioidut generointikustannukset · Arvio vain vertailua varten **$0.08** arvio ennen generointia Tämä arvio ei ole lisämaksu eikä valmistuneen generoinnin kiinteä hinta. |

Ailoot varaa arvioidun summan ennen pyyntöä. Tuloksen jälkeen lopullinen veloitus toteutetaan mitatun käytön perusteella. Suoratoiston veloituksessa käytetään lopullista käyttötietuetta. [Varauksen ja lopullisen veloituksen toiminta →](https://ailoot.ai/docs/fi/billing/reserve/)

#### Viitehinnaston tiedot

Mallitason viitehinnastot eivät muuta menetelmän valintaa, hinta-arvioita tai veloituksia. Käytössä olevat veloitukset käyttävät valitun Ailoot-menetelmän hintoja.

Kuvahinnoittelun kokoonpanot

#### Hinnat asetusten mukaan

| Asetukset | Laskutusehdot | Veloitus |
| --- | --- | --- |
| AsetuksetTuloskuva | LaskutusehdotHinnoitteluvaihtoehtoa ei ole määritelty. | Veloitus Tuloste · Kuvatuloste **$0.08** kuvaa kohden Vastaavat luettelomerkinnät kuvaavat samaa veloitusta; ne eivät lisää toista maksua. |

### Esimerkkipyynnöt

#### Ailoot Ultra · Kuvat

curlPython SDKNode.js SDK

```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': 'recraft/recraft-v4', '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
```

```python
from openai import OpenAI
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")

request={'model': 'recraft/recraft-v4', 'prompt': 'a red panda astronaut floating in space, studio lighting'}
client=OpenAI(base_url="https://api.ailoot.ai/v1",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
result=client.images.generate(**request)
Path("sdk-result.txt").write_text(str(result),encoding="utf-8")
save_images([{"b64_json":getattr(item,"b64_json",None),"url":getattr(item,"url",None)} for item in result.data])
```

```js
import OpenAI from "openai";
import { readFileSync, writeFileSync } from "node:fs";
const key=process.env.AILOOT_API_KEY;
if(!key) throw new Error("Set your actual Ailoot API key");
const client=new OpenAI({baseURL:"https://api.ailoot.ai/v1",apiKey:key,maxRetries:0});
const request={"model": "recraft/recraft-v4", "prompt": "a red panda astronaut floating in space, studio lighting"};
const result=await client.images.generate(request);
writeFileSync("sdk-result.json",JSON.stringify(result,null,2));
if(!result.data?.length) throw new Error("No completed images");
for(let index=0;index<result.data.length;index++) {
  const item=result.data[index];let encoded=item.b64_json,uri=item.url||"",raw;
  if(!encoded && uri.startsWith("data:image/")) {
    const comma=uri.indexOf(",");if(comma<0 || !uri.slice(0,comma).includes(";base64")) throw new Error("Unsupported image data URI");
    encoded=uri.slice(comma+1);
  }
  if(encoded) {
    if(encoded.length%4!==0 || !/^[A-Za-z0-9+/]*={0,2}$/.test(encoded)) throw new Error("Invalid Base64");
    raw=Buffer.from(encoded,"base64");
  } else if(uri) {
    const u=new URL(uri,"https://api.ailoot.ai");
    if(u.protocol!=="https:" || u.username || u.password) throw new Error("Invalid returned URL");
    const owned=u.origin==="https://api.ailoot.ai" && u.pathname.startsWith("/v1/media/assets/") && u.pathname.endsWith("/content");
    const response=await fetch(u,{headers:owned?{Authorization:"Bearer "+key}:{},redirect:"manual"});
    if(!response.ok) throw new Error("Image content download failed: "+response.status);
    raw=Buffer.from(await response.arrayBuffer());
  } else throw new Error("Image has neither bytes nor URL");
  if(!raw.length) throw new Error("Empty image result");
  const ext=raw.subarray(0,4).equals(Buffer.from([137,80,78,71]))?"png":raw[0]===255&&raw[1]===216?"jpg":raw.toString("ascii",0,4)==="RIFF"&&raw.toString("ascii",8,12)==="WEBP"?"webp":raw.toString("utf8").trimStart().startsWith("<svg")||raw.toString("utf8").trimStart().startsWith("<?xml")?"svg":"bin";
  writeFileSync(`image-${index}.${ext}`,raw);
}
console.log("Every returned image saved; sdk-result.json retains complete metadata");
```

### Vastaanota ja tallenna tulokset

#### Ailoot Ultra · Kuvat

Lataa jokainen palautettu kuva tai tallenna sen Base64-sisältö

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

##### Säilytä kaikki valmistuneet tulokset

Tallenna jokainen valmistunut kuva; nouda jokainen palautettu URL tai pura sen Base64-sisältö.

Säilytä jokainen data-alkio ja kaikki käyttötiedot; ota hallintaan ja tallenna kaikki todellisuudessa palautetut kuvat. Älä keksi osoitteita tai tunnisteita.

##### Jos alkuperäinen vastaus on tarkistettava

Jos kuvan generoinnin tai muokkauksen tulos edellyttää tarkistusta, säilytä alkuperäinen operation\_id/X-Client-Request-ID ja palautetut tulostiedot. Hae olemassa olevat omistamasi tulokset mediakirjastosta käyttämällä todellisia task\_id- tai asset\_id-arvoja. Älä lähetä generointi- tai muokkauspyyntöä uudelleen äläkä muodosta tilakyselyn URL-osoitetta operation\_id-arvosta.

Vastauksen kentät

| Kenttä | Tyyppi |
| --- | --- |
| Kenttä`created` | Tyyppiinteger |
| Kenttä`data[].url` | Tyyppistring |
| Kenttä`data[].b64_json` | Tyyppibase64 string |
| Kenttä`usage` | Tyyppiobject |

Virheet ja seuraavat vaiheet

| Vastaus | Ehto | Seuraava vaihe |
| --- | --- | --- |
| Vastaus400 · `invalid_request_error` | EhtoVirheelliset pakolliset kentät, aineiston esitysmuoto tai parametrin arvo | Seuraava vaiheKorjaa ilmoitetut kentät ennen uutta luontipyyntöä. |
| Vastaus`server_error` | EhtoPalautettu vastaus ilmoittaa, että operaatio tai tulos edellyttää tarkistusta | Seuraava vaiheSäilytä alkuperäinen palautettu operaation tai tehtävän ID, pyynnön otsakkeet ja vastaus; jatka kyseisen alkuperäisen operaation tuettuja lukutoimintoja. Älä lähetä luontipyyntöä uudelleen. |

### Aliakset

#### Mallin aliakset

**Ailoot Ultra** [`recraft/recraft-v4`](https://ailoot.ai/models/fi/#m=recraft%2Frecraft-v4&route=Ultra&caller=recraft%2Frecraft-v4&fmt=images)

#### Menetelmäpolkujen aliakset

`/v1/images`

#### Liittyvät kutsujan ID:t

[`recraft/recraft-v4`](https://ailoot.ai/models/fi/#m=recraft%2Frecraft-v4&route=Ultra&caller=recraft%2Frecraft-v4&fmt=images)

FAQ · Recraft: Recraft V4

Mitä syötteitä ja tuloksia on saatavilla?

`POST /v1/images/generations` · `recraft/recraft-v4`: `text`, `image` → `image`

Mitä kenttiä pyyntö käyttää?

`POST /v1/images/generations` · `recraft/recraft-v4`: `model`, `prompt`, `n`, `aspect_ratio`, `input_references`

Mitä rajoja sovelletaan?

`POST /v1/images/generations` · `recraft/recraft-v4`: `n.minimum`: `1`; `n.maximum`: `6`

Yhdistä Ailoot Claude Codeen, OpenCodeen, Hermesiin tai omaan sovellukseesi.

## Yritys ja sen projektisalkku

Yritys ja sen projektisalkku: miljoonia asiakkaita; kuukausittainen myynti miljardiluokassa.

## Osta tokenit alennuksella.

Tilausalennus säännölliseen käyttöön. Kampanjakoodit — jopa 50% tokeniostoista.

Tilaus

Valitse alennushintainen paketti säännöllisiä pyyntöjäsi varten.

Kampanjakoodi jopa 50%

Syötä koodi oston yhteydessä. Hinta lasketaan uudelleen voimassa olevan kampanjan mukaan.

Kulut historiassa

Malli, tokenit ja summa tallennetaan jokaiselle pyynnölle.

[Valitse tilaus](https://ailoot.ai/docs/fi/billing/subscriptions/) · [Katso mallihinnat](https://ailoot.ai/models/fi/)

## Yhdistä API tuotteeseen, jonka myyt.

SaaS, sovellukset ja botit Ailootin palveluehtojen ja lisenssisopimuksen mukaisesti. Pyydä edelleenmyyntiin jälleenmyyjälisenssi.

Kaupallinen sovellus

Lisää tekstin, kuvien, videoiden ja äänen luonti palvelusi maksullisiin ominaisuuksiin.

Jälleenmyyjälisenssi

Lähetä projektikuvaus ja pääsyn toteutustapa. Pyydä kirjalliset käyttö- ja jälleenmyyntiehdot.

Asiakirjat verkkosivustolla

Palveluehdot, lisenssisopimus ja tietojenkäsittelykäytäntö ovat saatavilla ennen yhdistämistä.

[Pyydä jälleenmyyjälisenssi](mailto:support@ailoot.ai) · [Palveluehdot ja lisenssisopimus](https://ailoot.ai/legal/offer?lang=fi)

## Ailoot · Yritys ja sen projektisalkku





Ailoot perustuu kertyneeseen toimintakokemukseen, laajaan asiakaskuntaan, vakaaseen palveluun ja jatkuvaan KPI-seurantaan.





Yritys ja sen projektisalkku: miljoonia asiakkaita; kuukausittainen myynti miljardiluokassa.





Ailoot hyödyntää tätä toimintakokemusta tarjotessaan API-yhteyden tekoälytoimintoihin asiakkaiden tuotteissa, agenteissa, sovelluksissa ja automaatioissa.
