Source: https://ailoot.ai/models/fi/mistralai-voxtral-mini-tts-2603/
Canonical: https://ailoot.ai/models/fi/mistralai-voxtral-mini-tts-2603/
Language: fi

# Mistral: Voxtral Mini TTS

[Markdown](https://ailoot.ai/models/fi/mistralai-voxtral-mini-tts-2603/index.md) · [JSON](https://ailoot.ai/models/fi/mistralai-voxtral-mini-tts-2603/facts.json)

## [Mistral: Voxtral Mini TTS](https://ailoot.ai/models/fi/mistralai-voxtral-mini-tts-2603/)

Voxtral TTS on Mistral AI:n 4B-puhegenerointimalli, joka mukauttaa äänen viitteen perusteella yhdeksällä kielellä. Se muuntaa valmistellun tekstin ilmaisulliseksi ääneksi, tukee uudelleenkäytettäviä tai kertaluonteisia äänikehotteita ja suoratoistoa sekä tuottaa 24 kHz:n ääntä dokumentoiduissa muodoissa.

- [**Ailoot Ultra · Puhesynteesi** `POST /v1/audio/speech` `mistralai/voxtral-mini-tts-2603`](https://ailoot.ai/models/fi/mistralai-voxtral-mini-tts-2603/#method-0)

Tietoa mallista

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

Voxtral TTS on Mistral AI:n 4B-tekstistä puheeksi -malli puheen generoimiseen tekstistä ja ääniviitteestä. Valmistajan mallisivu tunnistaa 2603-version nimellä voxtral-mini-tts-2603, kun taas julkaistun painomallin kortin nimi on Voxtral 4B TTS 2603. Tämä merkintä koskee kyseistä puhegenerointijulkaisua, erillään Voxtral Small -ääniymmärryksestä, litteroinnista ja myöhemmistä reaaliaikaisista syötemalleista.

Ilmaisullinen puhe ja äänen mukauttaminen

Malli on suunniteltu tavoittamaan viiteäänen tauot, rytmi, intonaatio, aksentti ja tunneilmaisu. Ääni toimii ohjeena sille, miltä tekstin tulee kuulostaa; valmistajan yleiskuvaus ei edellytä erillisiä prosodia- tai tunnetageja eikä viitetallenteen puhetekstiä. Lähdeteksti määrää, mitä sanotaan, ja ääniviite ohjaa esitystapaa.

Yleiskuvaus kuvaa äänen mukauttamista jo 2–3 sekunnin äänestä. Arkkitehtuurikuvaus käsittelee 5–25 sekunnin äänikehotteita. Lausumilla on eri rajaus: lyhyt mukautusesimerkki ei vaadi käyttämään lyhintä mahdollista viitettä. Valitse selkeä puhe, joka edustaa lopputulokseen haluttua tyyliä ja aksenttia.

Julkaistu kortti sisältää kaksikymmentä valmista ääntä ja mukauttamisen uusiin ääniin. Valmistajan puhetyönkulku voi käyttää tallennettua ääniprofiilia tai kertaluonteista viiteleikettä. Profiilin tallentaminen mahdollistaa saman ääniviitteen uudelleenkäytön erillisissä puhepyynnöissä, kun taas kertaluonteinen leike antaa viitteen nykyiseen tehtävään. Profiili ja generoitu tallenne ovat eri tuotoksia.

Kielet ja kielten välinen esitys

Julkaisu tukee englantia, ranskaa, espanjaa, saksaa, italiaa, portugalia, hollantia, arabiaa ja hindiä. Valmistaja kuvaa murrevaihtelun, kielten välisen äänensiirron ja kielten sekoittamisen. Parasta tulosta varten puheopas suosittelee viitekielen sovittamista tekstin kieleen. Kielten välinen siirto voi säilyttää viitteen aksentin samalla, kun valmisteltu teksti puhutaan toisella tuetulla kielellä.

Käytännön kerrontatehtävä voi käyttää samaa äänityyliä selitykseen eri tuetuilla kielillä ja valmistella jokaisen tekstin aiotulle kuulijalle. Ääniavustajan vastaus voi käyttää lyhyttä keskustelunomaista käsikirjoitusta editoimattoman asiakirjan ääneenlukemisen sijaan. Tekstistä puheeksi -malli esittää valmistellut sanat; ne tuottava käännös- tai vastauskirjoitusvaihe on erillinen askel.

Tekstin valmistelu

Valmistajan puheopas suosittelee puhuttavaksi soveltuvaa tekstiä. Kirjoita luvut ja symbolit siinä muodossa, jossa ne tulee puhua, jotta mallin ei tarvitse valita mahdollisten lukutapojen välillä. Luku voi olla määrä, kellonaika tai tunniste; määritä tarkoitettu puhuttu sanamuoto ennen synteesiä. Avaa lyhenteet, kun ääntäminen on tärkeää, ja käytä erillisiä kirjaimia, kun se on tarkoitettu lukutapa.

Vältä rikasta muotoilua, emojeita ja erikoismerkkejä, joita ei esitetä puhuttuna sisältönä. Valmistele kokonaisia lauseita esityksen tarvitsemilla välimerkeillä ja sanamuodoilla. Opas suosittelee alle 300 sanan kehotteita parhaan tuloksen saamiseksi. Tämä on laatusuositus, ei ilmoitettu syötteen kova enimmäispituus.

Kirjoita menettelyn selitykseen toiminto ja ehto lauseeksi, jota kuulija voi seurata. Sijoita kuulutuksessa tärkeä tieto ennen valinnaisia yksityiskohtia. Säilytä äänivastauksessa asiallinen vastaus ja poista vain näytölle tarkoitettu muotoilu tai lähdemerkinnät, joita ei pidä puhua. Valmistelu tekee käsikirjoituksesta itsestään ääneen sopivan ennen kuin viite määrittää sen tyylin.

Suoratoisto, tuloste ja kesto

Valmistaja dokumentoi perus- ja suoratoistotoimituksen sekä kuvaa enintään kahden minuutin äänen natiivin generoinnin. Julkaistu painomallikortti luettelee myös eräpäättelyn useiden puhetehtävien valmisteluun. Palvelun pidemmät generoinnit käyttävät limitystä sen sijaan, että yhtä natiivia osaa käsiteltäisiin rajattomana. Valmistele pidempään kerrontaan johdonmukaiset osat ja pidä niiden äänen sekä tekstin valmistelu yhtenäisenä jatkoa käsittelevän toimitustyönkulun kanssa.

Julkaistu kortti määrittää 24 kHz:n äänen ja nimeää WAV-, PCM-, FLAC-, MP3-, AAC- ja Opus-tulostemuodot. Puhepalveluopas käsittelee MP3:a pakattuun toimitukseen, WAV:ia pakkaamattomaan PCM:ään, FLAC:ia häviöttömään pakkaukseen ja PCM:ää tai Opusia suoratoistoon. Valitse yhdistetyn työnkulun tukema muoto, joka sopii sen soittimeen tai käsittelyvaiheeseen. Muotovalinta ja suoratoistokäyttäytyminen ovat erillisiä itse äänen mukauttamisesta.

Malliarkkitehtuuri ja käytännön rajat

Julkistus kuvaa autoregressiivisen flow-matching-arkkitehtuurin, jossa on 3.4B Transformer -dekooderirunko, 390 miljoonan parametrin akustinen Transformer ja 300 miljoonan parametrin neuroäänikoodekki. Dekooderi ennustaa semanttisen sisällön ja akustinen komponentti tuottaa puhe-esityksen, kun taas koodekki käsittelee äänen. Komponentit selittävät likimääräisen 4B-mallimerkinnän; ne eivät ole lisäsyötekieliä tai eri vastausgenerointimalli.

Käytännön tulos on syntetisoitu tallenne tai äänivirta yhdistettynä valmisteltuun käsikirjoitukseensa ja valittuun ääneen. Säilytä yhteydet useita osia generoitaessa, jotta sovellus voi tallentaa, toistaa tai koota oikean aineiston. Malli tuottaa ääntä eikä litterointia, semanttisen haun vektoria tai vasta kirjoitettua faktavastausta.

Säilytä 2603-puheversio, tuettu kieli ja viitetyyli. Luetut lähteet antavat natiivin kahden minuutin lausuman ja alle 300 sanan valmistelusuosituksen, mutta eivät vahvista erillistä kovaa tekstimerkkien enimmäisrajaa tai yhteen liitetyn tallenteen kokonaiskestoa. Määritä valmis äänituotos varsinaisen tekstin, äänen ja toimitusvaatimusten perusteella.

**Ailoot Ultra · Puhesynteesi** `POST /v1/audio/speech` `mistralai/voxtral-mini-tts-2603`

[`mistralai/voxtral-mini-tts-2603`](https://ailoot.ai/models/fi/#m=mistralai%2Fvoxtral-mini-tts-2603&route=Ultra&caller=mistralai%2Fvoxtral-mini-tts-2603&fmt=speech)

Mistral /`mistralai/voxtral-mini-tts-2603`

### Aloitus

Voxtral TTS on Mistral AI:n 4B-puhegenerointimalli, joka mukauttaa äänen viitteen perusteella yhdeksällä kielellä. Se muuntaa valmistellun tekstin ilmaisulliseksi ääneksi, tukee uudelleenkäytettäviä tai kertaluonteisia äänikehotteita ja suoratoistoa sekä tuottaa 24 kHz:n ääntä dokumentoiduissa muodoissa.

Hyväksytyt syötteet

Teksti

Tulokset

Ääni

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

**Ailoot Ultra · Puhesynteesi** `POST /v1/audio/speech`

Syötetyypit

`text`

Tulostyypit

`audio`

Tulosteen muoto

mp3

| Kenttä | Tyyppi | Vaatimus | Arvot & rajat | Oletus |
| --- | --- | --- | --- | --- |
| Kenttä`model` | Tyyppi`string` | VaatimusPakollinen | Arvot & rajat mistralai/voxtral-mini-tts-2603 | Oletus— |
| Kenttä`input` | Tyyppi`string` | VaatimusPakollinen | Arvot & rajat Vähimmäispituus: 1 Yksikkö: Unicode-merkit | Oletus— |
| Kenttä`voice` | Tyyppi`string` | VaatimusPakollinen | Arvot & rajat en\_paul\_sad, en\_paul\_neutral, en\_paul\_happy, en\_paul\_frustrated, en\_paul\_excited, en\_paul\_confident, en\_paul\_cheerful, en\_paul\_angry, gb\_oliver\_neutral, gb\_oliver\_sad, gb\_oliver\_excited, gb\_oliver\_curious, gb\_oliver\_confident, gb\_oliver\_cheerful, gb\_oliver\_angry, gb\_jane\_sarcasm, gb\_jane\_confused, gb\_jane\_shameful, gb\_jane\_sad, gb\_jane\_neutral, gb\_jane\_jealousy, gb\_jane\_frustrated, gb\_jane\_curious, gb\_jane\_confident, fr\_marie\_sad, fr\_marie\_neutral, fr\_marie\_happy, fr\_marie\_excited, fr\_marie\_curious, fr\_marie\_angry | Oletus— |
| Kenttä`response_format` | Tyyppi`string` | VaatimusPakollinen | Arvot & rajat mp3 | Oletus— |

Syöteaineistojen yhdistelmät

**text\_to\_speech** · Pakollinen: input

Menetelmän parametrit ja elinkaari

| Parametri | Sopimus |
| --- | --- |
| Parametri`content_type` | Sopimusapplication/json |
| Parametri`required` | Sopimusmodel, input, voice, response\_format |
| Parametri`voice_ids` | Sopimusen\_paul\_sad, en\_paul\_neutral, en\_paul\_happy, en\_paul\_frustrated, en\_paul\_excited, en\_paul\_confident, en\_paul\_cheerful, en\_paul\_angry, gb\_oliver\_neutral, gb\_oliver\_sad, gb\_oliver\_excited, gb\_oliver\_curious, gb\_oliver\_confident, gb\_oliver\_cheerful, gb\_oliver\_angry, gb\_jane\_sarcasm, gb\_jane\_confused, gb\_jane\_shameful, gb\_jane\_sad, gb\_jane\_neutral, gb\_jane\_jealousy, gb\_jane\_frustrated, gb\_jane\_curious, gb\_jane\_confident, fr\_marie\_sad, fr\_marie\_neutral, fr\_marie\_happy, fr\_marie\_excited, fr\_marie\_curious, fr\_marie\_angry |
| Parametri`response_format` | Sopimusmp3 |
| Parametri`max_input_characters` | Sopimusnull |
| Parametri`other_options` | Sopimusfalse |
| Parametri`input` | Sopimustäsmällinen UTF-8-teksti; Unicode-merkkien määrä ilman normalisointia |
| Parametri`material_types` | Sopimustext |

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

Valitse juuri tämän malliprofiilin ääni.

Syötemerkit ja äänisekunnit ovat eri mittareita.

### Hinnoittelu

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öä

#### Ailoot-hinnat

#### Hinnat asetusten mukaan

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

| Asetukset | Hinnasto | Laskutettava määrä | Laskutusyksikkö | Veloitus |
| --- | --- | --- | --- | --- |
| AsetuksetTokenien perushinnat | HinnastoPerushinta | Laskutettava määrä— | Laskutusyksikkö— | Veloitus Syöte · Syötetokenit **—** / 1K tokenia Tuloste · Tulostokenit **—** / 1K tokenia Syöte · Välimuistin luku **—** / 1K tokenia Syöte · Välimuistiin kirjoitus **—** / 1K tokenia Syöte · Välimuistiin kirjoitus, 1 tunti **—** / 1K tokenia |
| AsetuksetUltra | Hinnasto— | Laskutettava määräJokainen Unicode-koodipiste lasketaan yhdeksi merkiksi, myös Han-merkit. | Laskutusyksikkö1K syötemerkkiä kohden | Veloitus Syöte · syötemerkki **$0.032** 1K syötemerkkiä kohden |

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

Mistral: Voxtral Mini TTS

#### Hinnat asetusten mukaan

| Asetukset | Laskutusehdot | Veloitus |
| --- | --- | --- |
| AsetuksetMistral: Voxtral Mini TTS · Oletusasetukset | LaskutusehdotOletuskokoonpano | Veloitus Syöte · Syötteen merkit **0,000032 $** syötemerkkiä kohden |

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/)

### Esimerkkipyynnöt

#### Ailoot Ultra · Puhesynteesi

curl

```bash
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_VOICE_ID:?Choose an accepted voice ID from this exact model profile}"
export AILOOT_VOICE_ID
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "mistralai/voxtral-mini-tts-2603", "input": "Good afternoon! This is a short voice take."}')
voice=os.environ["AILOOT_VOICE_ID"]
allowed=json.loads('["en_paul_sad", "en_paul_neutral", "en_paul_happy", "en_paul_frustrated", "en_paul_excited", "en_paul_confident", "en_paul_cheerful", "en_paul_angry", "gb_oliver_neutral", "gb_oliver_sad", "gb_oliver_excited", "gb_oliver_curious", "gb_oliver_confident", "gb_oliver_cheerful", "gb_oliver_angry", "gb_jane_sarcasm", "gb_jane_confused", "gb_jane_shameful", "gb_jane_sad", "gb_jane_neutral", "gb_jane_jealousy", "gb_jane_frustrated", "gb_jane_curious", "gb_jane_confident", "fr_marie_sad", "fr_marie_neutral", "fr_marie_happy", "fr_marie_excited", "fr_marie_curious", "fr_marie_angry"]')
if voice not in allowed: raise SystemExit("Choose an accepted voice ID from this exact model profile")
p["voice"]=voice
p["response_format"]="mp3"
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/audio/speech \
  -H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o speech.mp3
```

### Vastaanota ja tallenna tulokset

#### Ailoot Ultra · Puhesynteesi

mp3

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

Muut sisällön lukukerrat

MediakirjastoTehtävän tilaAineiston tiedot

```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 media-assets.json
```

```bash
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_MEDIA_TASK_ID:?Set the actual ID returned by the response or media-library metadata}"
export AILOOT_MEDIA_TASK_ID
resource_id=$(python3 -c 'import os,urllib.parse;print(urllib.parse.quote(os.environ["AILOOT_MEDIA_TASK_ID"],safe=""))')
curl --fail-with-body --silent --show-error "https://api.ailoot.ai/v1/media/tasks/$resource_id" \
  -H "Authorization: Bearer $AILOOT_API_KEY" -o media-task.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
print(json.dumps(json.loads(Path("media-task.json").read_text())))
PY_RESULT
```

```bash
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_ASSET_ID:?Set the actual ID returned by the response or media-library metadata}"
export AILOOT_ASSET_ID
resource_id=$(python3 -c 'import os,urllib.parse;print(urllib.parse.quote(os.environ["AILOOT_ASSET_ID"],safe=""))')
curl --fail-with-body --silent --show-error "https://api.ailoot.ai/v1/media/assets/$resource_id" \
  -H "Authorization: Bearer $AILOOT_API_KEY" -o media-asset.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
print(json.dumps(json.loads(Path("media-asset.json").read_text())))
PY_RESULT
```

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

Säilytä jokainen kokonainen palautettu vastaus, tiedosto ja sisällön osa.

Säilytä koko binääritulos ja otsakkeet. Jos palautetaan JSON tai useita tulosteita, säilytä jokainen data-alkio ja nouda jokainen resurssi sen todellisesta allekirjoitetusta URL-osoitteesta.

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

Säilytä alkuperäinen operation\_id/X-Client-Request-ID täsmäytystä varten lähettämättä pyyntöä uudelleen; erillistä äänen tilakyselyreittiä ei ole.

Vastauksen kentät

| Kenttä | Tyyppi |
| --- | --- |
| Kenttä`binary audio` | Tyyppibytes |
| Kenttä`response headers` | Tyyppiheaders |

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** [`mistralai/voxtral-mini-tts-2603`](https://ailoot.ai/models/fi/#m=mistralai%2Fvoxtral-mini-tts-2603&route=Ultra&caller=mistralai%2Fvoxtral-mini-tts-2603&fmt=speech)

#### Menetelmäpolkujen aliakset

Käytä yllä näytettyjä menetelmäpolkuja.

#### Liittyvät kutsujan ID:t

[`mistralai/voxtral-mini-tts-2603`](https://ailoot.ai/models/fi/#m=mistralai%2Fvoxtral-mini-tts-2603&route=Ultra&caller=mistralai%2Fvoxtral-mini-tts-2603&fmt=speech)

FAQ · Mistral: Voxtral Mini TTS

Mitä syötteitä ja tuloksia on saatavilla?

`POST /v1/audio/speech` · `mistralai/voxtral-mini-tts-2603`: `text` → `audio`

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

`POST /v1/audio/speech` · `mistralai/voxtral-mini-tts-2603`: `model`, `input`, `voice`, `response_format`

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.
