{
  "aboutHtml": "<p>Voyage 3.5 Lite muuntaa tekstin vektoriesityksiksi semanttista hakua varten. Voyage AI kuvaa tämän version viiveen ja kustannusten kannalta optimoiduksi, joten se sopii ehdokkaaksi hakuratkaisuihin, joissa saapuvia kysymyksiä vektoroidaan usein tai ylläpidetään suurta haettavien katkelmien kokoelmaa. Tuloste on annetun tekstin numeerinen esitys, jota hakusovellus vertaa lähdeaineistostaan tallennettuihin vektoreihin.</p><p>Aloita kokoelmasta, jonka rajaukset vastaavat käyttäjän tehtävää. Tukikeskuksessa yksi katkelma voi selittää menettelyn ja sen edellytykset. Säilytä keskusteluarkistossa riittävä osa vastausketjusta, jotta käy ilmi, mihin vastaus liittyy. Tuloksen tulee johtaa luettavaan tietolähteeseen, joten tallenna alkuperäinen teksti, pysyvä lähdelinkki ja asiakirjan metatiedot jokaisen vektoriesityksen yhteyteen.</p><p>Kirjoita testikyselyt niin kuin käyttäjät ne esittäisivät. ”Missä muutan laskun osoitteen?” on hyödyllisempi hakutesti kuin asianomaisen artikkelin otsikon kopioiminen. Sisällytä lyhyitä kysymyksiä, toisin muotoiltuja ilmauksia, alan lyhenteitä ja tapauksia, joissa mainitaan useita käsitteitä. Tarkista palautetut katkelmat ja selvitä, johtuuko puuttuva tulos lähdesisällön puutteesta, katkelmien huonoista rajoista vai haun valinnoista.</p><p>Valmistaja dokumentoi 32000 tokenin konteksti-ikkunan. Se mahdollistaa laajat tekstisyötteet, mutta katkelmien pituus on edelleen hakuratkaisun suunnitteluvalinta. Pidä tiivis vastaus yhdessä tarvittavien ehtojen kanssa; älä erota määritelmää sen selittämästä termistä. Poimi lähteestä luettavaa tekstiä ja poista joka sivulla toistuva navigaatio, jos se peittää käyttäjän etsimän tiedon.</p><p>Voyage 3.5 Lite tukee 2048, 1024, 512 ja 256 ulottuvuutta. Liukuluku-, kahdeksan bitin kokonaisluku- ja binääriesitykset tarjoavat vektori-indeksille lisävaihtoehtoja. Testaa pienempää tai kvantisoitua esitystä samoilla kysymyksillä ja samalla aineistolla kuin täyden tarkkuuden vertailutasoa. Tallenna valittu malli, ulottuvuus ja tietotyyppi indeksin yhteyteen, jotta kyselyvektorit käyttävät vastaavia asetuksia.</p><p>Merkitse valmistajan hakutyönkulussa indeksoitavat katkelmat asiakirjoiksi ja saapuvat haut kyselyiksi. Säilytä jokaisen palautetun vektorin yhteys syötetekstiinsä, kun käsittelet useita katkelmia yhdessä. Onnistunut vektorointi tuottaa vektorit; sovelluksen on silti sijoitettava ne oikeisiin tietueisiin ja näytettävä lähdeote käyttäjän avatessa tuloksen.</p><p>Käytä tätä versiota haettavaan tukiaineistoon, asiakirjojen löytämiseen tarkoitettuun työkaluun tai avustajan hakuvaiheeseen. Arvioi monikielisessä aineistossa oman kokoelmasi kieliyhdistelmiä sen sijaan, että luottaisit yhteen englanninkieliseen testiin. Pidä käyttöoikeudet ja kieliversion metatiedot sovelluksen saatavilla, jotta olennainen osuma voidaan suodattaa ja näyttää oikeassa yhteydessä.</p><p>Päivitä kasvavissa kokoelmissa muuttuneiden katkelmien vektorit yhdessä niiden lähdeversioiden kanssa. Säilytä todellinen kysymysjoukko, jossa on helppoja osumia, vaikeita uudelleenmuotoiluja ja samankaltaisia asiakirjoja, joissa on eri vastaukset. Mittaa haun laatua ja koko hakuprosessin toimintaa odotetulla kuormalla. Valmistajan Lite-versiolle määrittämä käyttöpainotus auttaa ehdokkaan valinnassa; lopullinen ulottuvuus, katkelmastrategia ja indeksiasetukset perustuvat omalla aineistollasi saatuihin tuloksiin.</p>",
  "aboutText": "Voyage 3.5 Lite muuntaa tekstin vektoriesityksiksi semanttista hakua varten. Voyage AI kuvaa tämän version viiveen ja kustannusten kannalta optimoiduksi, joten se sopii ehdokkaaksi hakuratkaisuihin, joissa saapuvia kysymyksiä vektoroidaan usein tai ylläpidetään suurta haettavien katkelmien kokoelmaa. Tuloste on annetun tekstin numeerinen esitys, jota hakusovellus vertaa lähdeaineistostaan tallennettuihin vektoreihin.\n\nAloita kokoelmasta, jonka rajaukset vastaavat käyttäjän tehtävää. Tukikeskuksessa yksi katkelma voi selittää menettelyn ja sen edellytykset. Säilytä keskusteluarkistossa riittävä osa vastausketjusta, jotta käy ilmi, mihin vastaus liittyy. Tuloksen tulee johtaa luettavaan tietolähteeseen, joten tallenna alkuperäinen teksti, pysyvä lähdelinkki ja asiakirjan metatiedot jokaisen vektoriesityksen yhteyteen.\n\nKirjoita testikyselyt niin kuin käyttäjät ne esittäisivät. ”Missä muutan laskun osoitteen?” on hyödyllisempi hakutesti kuin asianomaisen artikkelin otsikon kopioiminen. Sisällytä lyhyitä kysymyksiä, toisin muotoiltuja ilmauksia, alan lyhenteitä ja tapauksia, joissa mainitaan useita käsitteitä. Tarkista palautetut katkelmat ja selvitä, johtuuko puuttuva tulos lähdesisällön puutteesta, katkelmien huonoista rajoista vai haun valinnoista.\n\nValmistaja dokumentoi 32000 tokenin konteksti-ikkunan. Se mahdollistaa laajat tekstisyötteet, mutta katkelmien pituus on edelleen hakuratkaisun suunnitteluvalinta. Pidä tiivis vastaus yhdessä tarvittavien ehtojen kanssa; älä erota määritelmää sen selittämästä termistä. Poimi lähteestä luettavaa tekstiä ja poista joka sivulla toistuva navigaatio, jos se peittää käyttäjän etsimän tiedon.\n\nVoyage 3.5 Lite tukee 2048, 1024, 512 ja 256 ulottuvuutta. Liukuluku-, kahdeksan bitin kokonaisluku- ja binääriesitykset tarjoavat vektori-indeksille lisävaihtoehtoja. Testaa pienempää tai kvantisoitua esitystä samoilla kysymyksillä ja samalla aineistolla kuin täyden tarkkuuden vertailutasoa. Tallenna valittu malli, ulottuvuus ja tietotyyppi indeksin yhteyteen, jotta kyselyvektorit käyttävät vastaavia asetuksia.\n\nMerkitse valmistajan hakutyönkulussa indeksoitavat katkelmat asiakirjoiksi ja saapuvat haut kyselyiksi. Säilytä jokaisen palautetun vektorin yhteys syötetekstiinsä, kun käsittelet useita katkelmia yhdessä. Onnistunut vektorointi tuottaa vektorit; sovelluksen on silti sijoitettava ne oikeisiin tietueisiin ja näytettävä lähdeote käyttäjän avatessa tuloksen.\n\nKäytä tätä versiota haettavaan tukiaineistoon, asiakirjojen löytämiseen tarkoitettuun työkaluun tai avustajan hakuvaiheeseen. Arvioi monikielisessä aineistossa oman kokoelmasi kieliyhdistelmiä sen sijaan, että luottaisit yhteen englanninkieliseen testiin. Pidä käyttöoikeudet ja kieliversion metatiedot sovelluksen saatavilla, jotta olennainen osuma voidaan suodattaa ja näyttää oikeassa yhteydessä.\n\nPäivitä kasvavissa kokoelmissa muuttuneiden katkelmien vektorit yhdessä niiden lähdeversioiden kanssa. Säilytä todellinen kysymysjoukko, jossa on helppoja osumia, vaikeita uudelleenmuotoiluja ja samankaltaisia asiakirjoja, joissa on eri vastaukset. Mittaa haun laatua ja koko hakuprosessin toimintaa odotetulla kuormalla. Valmistajan Lite-versiolle määrittämä käyttöpainotus auttaa ehdokkaan valinnassa; lopullinen ulottuvuus, katkelmastrategia ja indeksiasetukset perustuvat omalla aineistollasi saatuihin tuloksiin.",
  "editorialOverlay": {
    "copy_fields": null,
    "copy_sha256": null,
    "copy_source": null,
    "html_sha256": "5ee4460703922f2ea86d4f11fd3ca9224b5c48066e4a47de43509378acffdd06",
    "module_sha256": "ee9dc1c50b1e6a8fb7fa062030fcb4646b9aaaeb08be513b723a5a92a7290f06",
    "raw_model_unchanged": true,
    "schema": "ailoot-native-model-editorial-v1"
  },
  "locale": "fi",
  "methods": [
    {
      "html": "<div class=\"sheet-head\"><span class=\"mav\" aria-hidden=\"true\">•</span><h2 id=\"sheet-title\">Voyage AI: Voyage 3.5 Lite</h2><button class=\"icon-btn\" type=\"button\" data-close-sheet aria-label=\"Sulje\">×</button></div><div class=\"idline\"><span>Voyage AI /</span><code>voyage-3.5-lite</code><button type=\"button\" id=\"copy-id\">Kopioi ID</button></div><nav class=\"card-jump-nav\" aria-label=\"Mallikortin osiot\"><button type=\"button\" data-card-jump=\"overview\">Aloitus</button><button type=\"button\" data-card-jump=\"methods\">Syötteet &amp; menetelmät</button><button type=\"button\" data-card-jump=\"pricing\">Hinnoittelu</button><button type=\"button\" data-card-jump=\"examples\">Esimerkit</button><button type=\"button\" data-card-jump=\"results\">Tulokset</button><button type=\"button\" data-card-jump=\"aliases\">Aliakset</button></nav><div class=\"card-method-tabs\" role=\"tablist\" aria-label=\"API-menetelmät\"><button type=\"button\" role=\"tab\" tabindex=\"0\" aria-controls=\"card-method-content\" aria-selected=\"true\" id=\"card-method-tab-0\" data-card-method=\"Ultra|embeddings|/v1/embeddings|voyage-3.5-lite\">Vektoriesitykset</button></div><div id=\"card-method-content\" role=\"tabpanel\" aria-labelledby=\"card-method-tab-0\"><section class=\"card-section\" data-card-section=\"overview\"><h3 tabindex=\"-1\">Aloitus</h3><p class=\"mdesc-full\">Voyage 3.5 Lite vektoroi tekstin semanttista hakua varten painottaen viivettä ja tehokasta tiedonhakua. Se tukee 32000 tokenin konteksti-ikkunaa, neljää vektorikokoa ja kvantisoitua tulostetta tietopankkihakuun, asiakirjojen vastaavuuksien löytämiseen ja RAG-käyttöön.</p><dl class=\"card-io\" data-card-io><div><dt>Hyväksytyt syötteet</dt><dd>Teksti</dd></div><div><dt>Tulokset</dt><dd>embedding</dd></div></dl><details class=\"card-about\"><summary>Tietoa mallista</summary><p class=\"note-s\" data-model-method-boundary>Tämä kuvaus kattaa mallin ominaisuudet. Ailootissa saatavilla olevat syötteet, tulosteet ja asetukset luetellaan alla valitulle menetelmälle.</p><div class=\"mabout\" id=\"m-about\"><p>Voyage 3.5 Lite muuntaa tekstin vektoriesityksiksi semanttista hakua varten. Voyage AI kuvaa tämän version viiveen ja kustannusten kannalta optimoiduksi, joten se sopii ehdokkaaksi hakuratkaisuihin, joissa saapuvia kysymyksiä vektoroidaan usein tai ylläpidetään suurta haettavien katkelmien kokoelmaa. Tuloste on annetun tekstin numeerinen esitys, jota hakusovellus vertaa lähdeaineistostaan tallennettuihin vektoreihin.</p><p>Aloita kokoelmasta, jonka rajaukset vastaavat käyttäjän tehtävää. Tukikeskuksessa yksi katkelma voi selittää menettelyn ja sen edellytykset. Säilytä keskusteluarkistossa riittävä osa vastausketjusta, jotta käy ilmi, mihin vastaus liittyy. Tuloksen tulee johtaa luettavaan tietolähteeseen, joten tallenna alkuperäinen teksti, pysyvä lähdelinkki ja asiakirjan metatiedot jokaisen vektoriesityksen yhteyteen.</p><p>Kirjoita testikyselyt niin kuin käyttäjät ne esittäisivät. ”Missä muutan laskun osoitteen?” on hyödyllisempi hakutesti kuin asianomaisen artikkelin otsikon kopioiminen. Sisällytä lyhyitä kysymyksiä, toisin muotoiltuja ilmauksia, alan lyhenteitä ja tapauksia, joissa mainitaan useita käsitteitä. Tarkista palautetut katkelmat ja selvitä, johtuuko puuttuva tulos lähdesisällön puutteesta, katkelmien huonoista rajoista vai haun valinnoista.</p><p>Valmistaja dokumentoi 32000 tokenin konteksti-ikkunan. Se mahdollistaa laajat tekstisyötteet, mutta katkelmien pituus on edelleen hakuratkaisun suunnitteluvalinta. Pidä tiivis vastaus yhdessä tarvittavien ehtojen kanssa; älä erota määritelmää sen selittämästä termistä. Poimi lähteestä luettavaa tekstiä ja poista joka sivulla toistuva navigaatio, jos se peittää käyttäjän etsimän tiedon.</p><p>Voyage 3.5 Lite tukee 2048, 1024, 512 ja 256 ulottuvuutta. Liukuluku-, kahdeksan bitin kokonaisluku- ja binääriesitykset tarjoavat vektori-indeksille lisävaihtoehtoja. Testaa pienempää tai kvantisoitua esitystä samoilla kysymyksillä ja samalla aineistolla kuin täyden tarkkuuden vertailutasoa. Tallenna valittu malli, ulottuvuus ja tietotyyppi indeksin yhteyteen, jotta kyselyvektorit käyttävät vastaavia asetuksia.</p><p>Merkitse valmistajan hakutyönkulussa indeksoitavat katkelmat asiakirjoiksi ja saapuvat haut kyselyiksi. Säilytä jokaisen palautetun vektorin yhteys syötetekstiinsä, kun käsittelet useita katkelmia yhdessä. Onnistunut vektorointi tuottaa vektorit; sovelluksen on silti sijoitettava ne oikeisiin tietueisiin ja näytettävä lähdeote käyttäjän avatessa tuloksen.</p><p>Käytä tätä versiota haettavaan tukiaineistoon, asiakirjojen löytämiseen tarkoitettuun työkaluun tai avustajan hakuvaiheeseen. Arvioi monikielisessä aineistossa oman kokoelmasi kieliyhdistelmiä sen sijaan, että luottaisit yhteen englanninkieliseen testiin. Pidä käyttöoikeudet ja kieliversion metatiedot sovelluksen saatavilla, jotta olennainen osuma voidaan suodattaa ja näyttää oikeassa yhteydessä.</p><p>Päivitä kasvavissa kokoelmissa muuttuneiden katkelmien vektorit yhdessä niiden lähdeversioiden kanssa. Säilytä todellinen kysymysjoukko, jossa on helppoja osumia, vaikeita uudelleenmuotoiluja ja samankaltaisia asiakirjoja, joissa on eri vastaukset. Mittaa haun laatua ja koko hakuprosessin toimintaa odotetulla kuormalla. Valmistajan Lite-versiolle määrittämä käyttöpainotus auttaa ehdokkaan valinnassa; lopullinen ulottuvuus, katkelmastrategia ja indeksiasetukset perustuvat omalla aineistollasi saatuihin tuloksiin.</p></div></details></section><section class=\"card-section\" data-card-section=\"methods\"><h3 tabindex=\"-1\">Saatavilla Ailootissa · syötteet &amp; menetelmät</h3><details class=\"card-method\" open><summary><b>Ailoot Ultra · Vektoriesitykset</b> <code>POST /v1/embeddings</code></summary><dl class=\"method-capabilities\"><div><dt>Syötetyypit</dt><dd><code>text</code></dd></div><div><dt>Tulostyypit</dt><dd><code>embedding</code></dd></div></dl><div class=\"tw\" data-card-parameters data-typed-parameters><table><thead><tr><th>Kenttä</th><th>Tyyppi</th><th>Vaatimus</th><th>Arvot &amp; rajat</th><th>Oletus</th></tr></thead><tbody><tr><th data-cell-label=\"Kenttä\" scope=\"row\"><span class=\"card-cell-label\">Kenttä</span><code class=\"card-field-name\">model</code></th><td data-cell-label=\"Tyyppi\" data-field-type><span class=\"card-cell-label\">Tyyppi</span><code>string</code></td><td data-cell-label=\"Vaatimus\"><span class=\"card-cell-label\">Vaatimus</span>Pakollinen</td><td data-cell-label=\"Arvot &amp; rajat\"><span class=\"card-cell-label\">Arvot &amp; rajat</span><div>voyage-3.5-lite</div><div>Ehdot: Käytä täsmällistä Ailoot-mallin valitsinta.</div></td><td data-cell-label=\"Oletus\" data-default=\"unspecified\"><span class=\"card-cell-label\">Oletus</span>—</td></tr><tr><th data-cell-label=\"Kenttä\" scope=\"row\"><span class=\"card-cell-label\">Kenttä</span><code class=\"card-field-name\">input</code></th><td data-cell-label=\"Tyyppi\" data-field-type><span class=\"card-cell-label\">Tyyppi</span><code>string or array&lt;string&gt;</code></td><td data-cell-label=\"Vaatimus\"><span class=\"card-cell-label\">Vaatimus</span>Pakollinen</td><td data-cell-label=\"Arvot &amp; rajat\"><span class=\"card-cell-label\">Arvot &amp; rajat</span><div>Ehdot: Teksti tai tekstiluettelo; säilytä yksi vektori jokaista palautettua data-alkiota ja sen indeksiä kohden.</div></td><td data-cell-label=\"Oletus\" data-default=\"unspecified\"><span class=\"card-cell-label\">Oletus</span>—</td></tr></tbody></table></div><details class=\"note-s\" data-method-contract><summary>Menetelmän parametrit ja elinkaari</summary><div class=\"tw\" data-card-table=\"contract\"><table><thead><tr><th>Parametri</th><th>Sopimus</th></tr></thead><tbody><tr><th data-cell-label=\"Parametri\" scope=\"row\"><span class=\"card-cell-label\">Parametri</span><code>content_type</code></th><td data-cell-label=\"Sopimus\"><span class=\"card-cell-label\">Sopimus</span>application/json</td></tr><tr><th data-cell-label=\"Parametri\" scope=\"row\"><span class=\"card-cell-label\">Parametri</span><code>required</code></th><td data-cell-label=\"Sopimus\"><span class=\"card-cell-label\">Sopimus</span>model, input</td></tr><tr><th data-cell-label=\"Parametri\" scope=\"row\"><span class=\"card-cell-label\">Parametri</span><code>optional</code></th><td data-cell-label=\"Sopimus\"><span class=\"card-cell-label\">Sopimus</span></td></tr><tr><th data-cell-label=\"Parametri\" scope=\"row\"><span class=\"card-cell-label\">Parametri</span><code>material_types</code></th><td data-cell-label=\"Sopimus\"><span class=\"card-cell-label\">Sopimus</span>text</td></tr><tr><th data-cell-label=\"Parametri\" scope=\"row\"><span class=\"card-cell-label\">Parametri</span><code>conditions</code></th><td data-cell-label=\"Sopimus\"><span class=\"card-cell-label\">Sopimus</span>Lähetä teksti valitulle mallille; säilytä jokainen palautettu vektori ja sen indeksi.</td></tr></tbody></table></div><p>Elinkaari: <code>synchronous</code></p></details></details></section><section class=\"card-section\" data-card-section=\"pricing\"><h3 tabindex=\"-1\">Hinnoittelu</h3><div data-native-semantic-method=\"v1\" data-tariff-reference-only><p class=\"note-s\" data-rate-support-note>Hintatiedot eivät lisää pyyntövalintoja. Tuetut parametrit on lueteltu valitulle menetelmälle.</p><dl data-price-conditions><dt>Nopea tila</dt><dd>Ei määritetty <span class=\"note-s\">Kun nopea tila on valittu</span></dd><dt>Flex-tila</dt><dd>Ei määritetty <span class=\"note-s\">Kun flex-tila on valittu</span></dd><dt>Päättelyn enimmäisteho</dt><dd>Ei määritetty <span class=\"note-s\">Kun päättelyn enimmäistehoon sovelletaan default-oletussäätöä</span></dd></dl></div><div data-declared-tariff-pricing><h4>Ailoot-hinnat</h4><h4>Hinnat asetusten mukaan</h4><div class=\"tw\" data-pricing-profiles><table><thead><tr><th>Asetukset</th><th>Hinnasto</th><th>Veloitus</th></tr></thead><tbody><tr><th data-cell-label=\"Asetukset\" scope=\"row\"><span class=\"card-cell-label\">Asetukset</span>Tokenien perushinnat</th><td data-cell-label=\"Hinnasto\"><span class=\"card-cell-label\">Hinnasto</span>Perushinta</td><td data-cell-label=\"Veloitus\"><span class=\"card-cell-label\">Veloitus</span><div><span>Syöte · Syötetokenit</span> <b>$0.0001</b> <span class=\"price-unit\">/ 1K tokenia</span></div><div><span>Tuloste · Tulostokenit</span> <b>$0</b> <span class=\"price-unit\">/ 1K tokenia</span></div><div><span>Syöte · Välimuistin luku</span> <b>—</b> <span class=\"price-unit\">/ 1K tokenia</span></div><div><span>Syöte · Välimuistiin kirjoitus</span> <b>—</b> <span class=\"price-unit\">/ 1K tokenia</span></div><div><span>Syöte · Välimuistiin kirjoitus, 1 tunti</span> <b>—</b> <span class=\"price-unit\">/ 1K tokenia</span></div></td></tr></tbody></table></div></div><p class=\"note-s\">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. <a href=\"/docs/fi/billing/reserve/\">Varauksen ja lopullisen veloituksen toiminta →</a></p></section><section class=\"card-section\" data-card-section=\"examples\"><h3 tabindex=\"-1\">Esimerkkipyynnöt</h3><h4>Ailoot Ultra · Vektoriesitykset</h4><div class=\"code-group\"><div class=\"cg-bar\"><div class=\"cg-tabs\" role=\"tablist\" aria-label=\"Koodivaihtoehdot\"><button class=\"cg-tab\" id=\"model-code-2788-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-2788-panel-0\" aria-selected=\"true\" tabindex=\"0\">curl · tallenna kaikki vektorit ja käyttötiedot</button></div><div class=\"cg-tools\"><button class=\"cg-btn cg-copy\" type=\"button\" aria-label=\"Kopioi koodi\"><svg class=\"cp\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><rect x=\"5.25\" y=\"5.25\" width=\"8.5\" height=\"8.5\" rx=\"1.75\"/><path d=\"M10.75 5.25V3.5a1.25 1.25 0 0 0-1.25-1.25H3.5A1.25 1.25 0 0 0 2.25 3.5v6a1.25 1.25 0 0 0 1.25 1.25h1.75\"/></svg><svg class=\"ok\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><path d=\"m3 8.5 3.25 3.25L13 5\"/></svg></button></div></div><div class=\"cg-body\"><div class=\"cg-pane\" id=\"model-code-2788-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-2788-tab-0\"><pre data-lang=\"bash\"><code>set -eu\n: &quot;${AILOOT_API_KEY:?Set your Ailoot API key}&quot;\ncat &gt; request.json &lt;&lt;&#39;JSON&#39;\n{\n  &quot;model&quot;: &quot;voyage-3.5-lite&quot;,\n  &quot;input&quot;: &quot;The quick brown fox jumps over the lazy dog&quot;\n}\nJSON\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/embeddings \\\n  -H &quot;Authorization: Bearer $AILOOT_API_KEY&quot; -H &#39;Content-Type: application/json&#39; \\\n  --data-binary @request.json -D response-headers.txt -o embeddings.json\n# Keep every data item and its index, the full usage object and response headers.\n</code></pre></div></div></div></section><section class=\"card-section\" data-card-section=\"results\"><h3 tabindex=\"-1\">Vastaanota ja tallenna tulokset</h3></section><section class=\"card-section\" data-card-section=\"aliases\"><h3 tabindex=\"-1\">Aliakset</h3><h4>Mallin aliakset</h4><p class=\"note-s\"><span data-model-alias-route=\"Ultra\"><b>Ailoot Ultra</b> <a href=\"#m=voyage-3.5-lite&amp;route=Ultra&amp;caller=voyage-3.5-lite&amp;fmt=embeddings\"><code>voyage-3.5-lite</code></a></span></p><h4>Menetelmäpolkujen aliakset</h4><p class=\"note-s\">Käytä yllä näytettyjä menetelmäpolkuja.</p><h4>Liittyvät kutsujan ID:t</h4><p class=\"note-s\"><a href=\"#m=voyage-3.5-lite&amp;route=Ultra&amp;caller=voyage-3.5-lite&amp;fmt=embeddings\"><code>voyage-3.5-lite</code></a></p></section></div>",
      "method_identity": {
        "effective_request_model_id": "voyage-3.5-lite",
        "fmt": "embeddings",
        "http": "POST",
        "path": "/v1/embeddings",
        "request_model_id": "voyage-3.5-lite",
        "route_label": "Ultra"
      },
      "method_key": "Ultra|embeddings|/v1/embeddings|voyage-3.5-lite",
      "ordinal": 0,
      "rawMethod": {
        "cache_read": null,
        "cache_write": null,
        "cache_write_1h": null,
        "contract": {
          "data": {
            "all_results": "Save the complete JSON response, every vector with its index, all usage fields and request headers.",
            "lifecycle": {
              "content": [],
              "create": {
                "http": "POST",
                "path": "/v1/embeddings"
              },
              "mode": "synchronous",
              "status": [],
              "unknown": "Säilytä alkuperäinen vastaus ja X-Client-Request-ID täsmäytystä varten. Epäselvä vastaus ei anna lupaa lähettää samaa luontipyyntöä uudelleen.",
              "unknown_no_replay": true
            },
            "outputs": {
              "all_results": "Tallenna koko JSON-vastaus, jokainen vektori ja sen indeksi, kaikki käyttötietokentät sekä pyynnön otsakkeet.",
              "every_actual_output": true,
              "family": "embedding",
              "fields": [
                {
                  "name": "object",
                  "type": "string"
                },
                {
                  "name": "model",
                  "type": "string"
                },
                {
                  "name": "data[].index",
                  "type": "integer"
                },
                {
                  "name": "data[].embedding",
                  "type": "array<number>"
                },
                {
                  "name": "usage",
                  "type": "object"
                },
                {
                  "name": "usage.prompt_tokens",
                  "type": "integer"
                },
                {
                  "name": "usage.total_tokens",
                  "type": "integer"
                }
              ]
            },
            "parameters": [
              {
                "conditions": "Käytä täsmällistä Ailoot-mallin valitsinta.",
                "default_known": false,
                "enum": [
                  "voyage-3.5-lite"
                ],
                "enum_known": true,
                "maximum_length": null,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "conditions": "Teksti tai tekstiluettelo; säilytä yksi vektori jokaista palautettua data-alkiota ja sen indeksiä kohden.",
                "default_known": false,
                "enum_known": false,
                "maximum_length": null,
                "name": "input",
                "oneOf": [
                  {
                    "minLength": 1,
                    "type": "string"
                  },
                  {
                    "items": {
                      "minLength": 1,
                      "type": "string"
                    },
                    "minItems": 1,
                    "type": "array"
                  }
                ],
                "required": true,
                "type": "string or array<string>"
              }
            ],
            "request_schema": {
              "additionalProperties": true,
              "properties": {
                "input": {
                  "oneOf": [
                    {
                      "minLength": 1,
                      "type": "string"
                    },
                    {
                      "items": {
                        "minLength": 1,
                        "type": "string"
                      },
                      "minItems": 1,
                      "type": "array"
                    }
                  ]
                },
                "model": {
                  "enum": [
                    "voyage-3.5-lite"
                  ],
                  "type": "string"
                }
              },
              "required": [
                "model",
                "input"
              ],
              "type": "object"
            },
            "schema_template": {
              "actual_file_preparation_required": false,
              "body": {
                "input": "The quick brown fox jumps over the lazy dog",
                "model": "voyage-3.5-lite"
              },
              "content_type": "application/json"
            }
          },
          "input": {
            "conditions": [
              "Lähetä teksti valitulle mallille; säilytä jokainen palautettu vektori ja sen indeksi."
            ],
            "content_type": "application/json",
            "material_types": [
              "text"
            ],
            "optional": [],
            "required": [
              "model",
              "input"
            ]
          },
          "lifecycle": {
            "content": [],
            "create": {
              "http": "POST",
              "path": "/v1/embeddings"
            },
            "mode": "synchronous",
            "status": [],
            "unknown": "Keep the original response and X-Client-Request-ID for reconciliation. An ambiguous response is not permission to submit the same creation again.",
            "unknown_no_replay": true
          },
          "method": {
            "http": "POST",
            "path": "/v1/embeddings"
          },
          "output": {
            "all_results": "Save the complete JSON response, every vector with its index, all usage fields and request headers.",
            "every_actual_output": true,
            "family": "embedding",
            "fields": [
              {
                "name": "object",
                "type": "string"
              },
              {
                "name": "model",
                "type": "string"
              },
              {
                "name": "data[].index",
                "type": "integer"
              },
              {
                "name": "data[].embedding",
                "type": "array<number>"
              },
              {
                "name": "usage",
                "type": "object"
              },
              {
                "name": "usage.prompt_tokens",
                "type": "integer"
              },
              {
                "name": "usage.total_tokens",
                "type": "integer"
              }
            ]
          }
        },
        "ctx": null,
        "declared_pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Tokenien perushinnat",
            "units": [
              {
                "amount": "0.0001000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": "0.0000001",
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": "0",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": "0",
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\ncat > request.json <<'JSON'\n{\n  \"model\": \"voyage-3.5-lite\",\n  \"input\": \"The quick brown fox jumps over the lazy dog\"\n}\nJSON\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/embeddings \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -H 'Content-Type: application/json' \\\n  --data-binary @request.json -D response-headers.txt -o embeddings.json\n# Keep every data item and its index, the full usage object and response headers.\n",
            "label": "curl · save all vectors and usage",
            "language": "bash"
          }
        ],
        "family": "openai",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "embeddings",
        "http": "POST",
        "in": 0.1,
        "input": [
          "text"
        ],
        "label": "Vektoriesitykset",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "out": 0,
        "output": [
          "embedding"
        ],
        "path": "/v1/embeddings",
        "price_conditions": [
          {
            "label": "Fast mode",
            "value": "Not specified",
            "when": "When fast mode is selected"
          },
          {
            "label": "Flex mode",
            "value": "Not specified",
            "when": "When flex mode is selected"
          },
          {
            "label": "Maximum reasoning effort",
            "value": "Not specified",
            "when": "When maximum reasoning effort uses the default adjustment"
          }
        ],
        "pricing": {
          "billing_mode": "token",
          "image_input_price": null,
          "image_output_price": null,
          "per_request_price": null
        },
        "pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": "0.0001000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": "0.0000001",
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": "0",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": "0",
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          }
        ],
        "request_model_id": "voyage-3.5-lite",
        "route_label": "Ultra",
        "status_reads": [],
        "tiers": [],
        "units": [
          {
            "amount": "0.0001000",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "input_price",
            "label": "Input tokens",
            "native_amount_usd_per_unit": "0.0000001",
            "native_quantity": 1,
            "native_unit": "input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": "0",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "output_price",
            "label": "Output tokens",
            "native_amount_usd_per_unit": "0",
            "native_quantity": 1,
            "native_unit": "output_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_read_price",
            "label": "Cache read",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "cached_input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "cached_input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_price",
            "label": "Cache write",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "generic_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "generic_cache_creation_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_1h_price",
            "label": "Cache write, 1 hour",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "one_hour_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "one_hour_cache_creation_token"
          }
        ]
      }
    }
  ],
  "model_id": "voyage-3.5-lite",
  "nativeProvenance": {
    "input_facts_canonical_sha256": "3bdfee92aa066583390846d162f612ecd851a8e29605861ea5f375b5cdb15f5a",
    "input_html_sha256": "fdcf7364244b53425c03d69ce955206efff87c0466b132cd6a2689db5805344c",
    "private_audit_sha256": "2462c589ca51caf658d033c892bbdc4b6c9ec5ed979230fbca2c42767ef72a6c",
    "role": "historical-normalized-input-audit-hashes",
    "schema": "ailoot-native-model-provenance-v2"
  },
  "page": {
    "canonical": "https://ailoot.ai/models/fi/voyage-3-5-lite/",
    "description": "Voyage 3.5 Lite vektoroi tekstin semanttista hakua varten painottaen viivettä ja tehokasta tiedonhakua. Se tukee 32000 tokenin konteksti-ikkunaa, neljää vektorikokoa ja kvantisoitua tulostetta tietopankkihakuun, asiakirjojen vastaavuuksien löytämiseen ja RAG-käyttöön.",
    "locale": "fi",
    "md_url": "https://ailoot.ai/models/fi/voyage-3-5-lite/index.md",
    "title": "Voyage AI: Voyage 3.5 Lite — Ailoot",
    "url": "https://ailoot.ai/models/fi/voyage-3-5-lite/"
  },
  "rawModel": {
    "about": "Voyage 3.5 Lite muuntaa tekstin vektoriesityksiksi semanttista hakua varten. Voyage AI kuvaa tämän version viiveen ja kustannusten kannalta optimoiduksi, joten se sopii ehdokkaaksi hakuratkaisuihin, joissa saapuvia kysymyksiä vektoroidaan usein tai ylläpidetään suurta haettavien katkelmien kokoelmaa. Tuloste on annetun tekstin numeerinen esitys, jota hakusovellus vertaa lähdeaineistostaan tallennettuihin vektoreihin.\n\nAloita kokoelmasta, jonka rajaukset vastaavat käyttäjän tehtävää. Tukikeskuksessa yksi katkelma voi selittää menettelyn ja sen edellytykset. Säilytä keskusteluarkistossa riittävä osa vastausketjusta, jotta käy ilmi, mihin vastaus liittyy. Tuloksen tulee johtaa luettavaan tietolähteeseen, joten tallenna alkuperäinen teksti, pysyvä lähdelinkki ja asiakirjan metatiedot jokaisen vektoriesityksen yhteyteen.\n\nKirjoita testikyselyt niin kuin käyttäjät ne esittäisivät. ”Missä muutan laskun osoitteen?” on hyödyllisempi hakutesti kuin asianomaisen artikkelin otsikon kopioiminen. Sisällytä lyhyitä kysymyksiä, toisin muotoiltuja ilmauksia, alan lyhenteitä ja tapauksia, joissa mainitaan useita käsitteitä. Tarkista palautetut katkelmat ja selvitä, johtuuko puuttuva tulos lähdesisällön puutteesta, katkelmien huonoista rajoista vai haun valinnoista.\n\nValmistaja dokumentoi 32000 tokenin konteksti-ikkunan. Se mahdollistaa laajat tekstisyötteet, mutta katkelmien pituus on edelleen hakuratkaisun suunnitteluvalinta. Pidä tiivis vastaus yhdessä tarvittavien ehtojen kanssa; älä erota määritelmää sen selittämästä termistä. Poimi lähteestä luettavaa tekstiä ja poista joka sivulla toistuva navigaatio, jos se peittää käyttäjän etsimän tiedon.\n\nVoyage 3.5 Lite tukee 2048, 1024, 512 ja 256 ulottuvuutta. Liukuluku-, kahdeksan bitin kokonaisluku- ja binääriesitykset tarjoavat vektori-indeksille lisävaihtoehtoja. Testaa pienempää tai kvantisoitua esitystä samoilla kysymyksillä ja samalla aineistolla kuin täyden tarkkuuden vertailutasoa. Tallenna valittu malli, ulottuvuus ja tietotyyppi indeksin yhteyteen, jotta kyselyvektorit käyttävät vastaavia asetuksia.\n\nMerkitse valmistajan hakutyönkulussa indeksoitavat katkelmat asiakirjoiksi ja saapuvat haut kyselyiksi. Säilytä jokaisen palautetun vektorin yhteys syötetekstiinsä, kun käsittelet useita katkelmia yhdessä. Onnistunut vektorointi tuottaa vektorit; sovelluksen on silti sijoitettava ne oikeisiin tietueisiin ja näytettävä lähdeote käyttäjän avatessa tuloksen.\n\nKäytä tätä versiota haettavaan tukiaineistoon, asiakirjojen löytämiseen tarkoitettuun työkaluun tai avustajan hakuvaiheeseen. Arvioi monikielisessä aineistossa oman kokoelmasi kieliyhdistelmiä sen sijaan, että luottaisit yhteen englanninkieliseen testiin. Pidä käyttöoikeudet ja kieliversion metatiedot sovelluksen saatavilla, jotta olennainen osuma voidaan suodattaa ja näyttää oikeassa yhteydessä.\n\nPäivitä kasvavissa kokoelmissa muuttuneiden katkelmien vektorit yhdessä niiden lähdeversioiden kanssa. Säilytä todellinen kysymysjoukko, jossa on helppoja osumia, vaikeita uudelleenmuotoiluja ja samankaltaisia asiakirjoja, joissa on eri vastaukset. Mittaa haun laatua ja koko hakuprosessin toimintaa odotetulla kuormalla. Valmistajan Lite-versiolle määrittämä käyttöpainotus auttaa ehdokkaan valinnassa; lopullinen ulottuvuus, katkelmastrategia ja indeksiasetukset perustuvat omalla aineistollasi saatuihin tuloksiin.",
    "about_sha256": "6da9d6fd6cfde8d6f5bf8b7aa370b1ddd356c1c7303a01cbc8c52ded9e166385",
    "alias_of": null,
    "aliases": [],
    "author": "Voyage AI",
    "capabilities": {
      "context_length": 32000,
      "manufacturer_input": [
        "text"
      ],
      "manufacturer_output": [
        "embeddings"
      ]
    },
    "card_routes": [
      {
        "label": "Ultra",
        "rates": [
          {
            "amount": "0.0001000",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "input_price",
            "label": "Input tokens",
            "native_amount_usd_per_unit": "0.0000001",
            "native_quantity": 1,
            "native_unit": "input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": "0",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "output_price",
            "label": "Output tokens",
            "native_amount_usd_per_unit": "0",
            "native_quantity": 1,
            "native_unit": "output_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          }
        ],
        "summary": "Konfiguraation täydet hintatiedot lisätiedoissa."
      }
    ],
    "ctx": null,
    "display_name": "Voyage AI: Voyage 3.5 Lite",
    "formats": [
      "embeddings"
    ],
    "id": "voyage-3.5-lite",
    "input": [
      "text"
    ],
    "kind": "embedding",
    "locale": "en",
    "max_out": null,
    "methods": [
      {
        "cache_read": null,
        "cache_write": null,
        "cache_write_1h": null,
        "contract": {
          "data": {
            "all_results": "Save the complete JSON response, every vector with its index, all usage fields and request headers.",
            "lifecycle": {
              "content": [],
              "create": {
                "http": "POST",
                "path": "/v1/embeddings"
              },
              "mode": "synchronous",
              "status": [],
              "unknown": "Säilytä alkuperäinen vastaus ja X-Client-Request-ID täsmäytystä varten. Epäselvä vastaus ei anna lupaa lähettää samaa luontipyyntöä uudelleen.",
              "unknown_no_replay": true
            },
            "outputs": {
              "all_results": "Tallenna koko JSON-vastaus, jokainen vektori ja sen indeksi, kaikki käyttötietokentät sekä pyynnön otsakkeet.",
              "every_actual_output": true,
              "family": "embedding",
              "fields": [
                {
                  "name": "object",
                  "type": "string"
                },
                {
                  "name": "model",
                  "type": "string"
                },
                {
                  "name": "data[].index",
                  "type": "integer"
                },
                {
                  "name": "data[].embedding",
                  "type": "array<number>"
                },
                {
                  "name": "usage",
                  "type": "object"
                },
                {
                  "name": "usage.prompt_tokens",
                  "type": "integer"
                },
                {
                  "name": "usage.total_tokens",
                  "type": "integer"
                }
              ]
            },
            "parameters": [
              {
                "conditions": "Käytä täsmällistä Ailoot-mallin valitsinta.",
                "default_known": false,
                "enum": [
                  "voyage-3.5-lite"
                ],
                "enum_known": true,
                "maximum_length": null,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "conditions": "Teksti tai tekstiluettelo; säilytä yksi vektori jokaista palautettua data-alkiota ja sen indeksiä kohden.",
                "default_known": false,
                "enum_known": false,
                "maximum_length": null,
                "name": "input",
                "oneOf": [
                  {
                    "minLength": 1,
                    "type": "string"
                  },
                  {
                    "items": {
                      "minLength": 1,
                      "type": "string"
                    },
                    "minItems": 1,
                    "type": "array"
                  }
                ],
                "required": true,
                "type": "string or array<string>"
              }
            ],
            "request_schema": {
              "additionalProperties": true,
              "properties": {
                "input": {
                  "oneOf": [
                    {
                      "minLength": 1,
                      "type": "string"
                    },
                    {
                      "items": {
                        "minLength": 1,
                        "type": "string"
                      },
                      "minItems": 1,
                      "type": "array"
                    }
                  ]
                },
                "model": {
                  "enum": [
                    "voyage-3.5-lite"
                  ],
                  "type": "string"
                }
              },
              "required": [
                "model",
                "input"
              ],
              "type": "object"
            },
            "schema_template": {
              "actual_file_preparation_required": false,
              "body": {
                "input": "The quick brown fox jumps over the lazy dog",
                "model": "voyage-3.5-lite"
              },
              "content_type": "application/json"
            }
          },
          "input": {
            "conditions": [
              "Lähetä teksti valitulle mallille; säilytä jokainen palautettu vektori ja sen indeksi."
            ],
            "content_type": "application/json",
            "material_types": [
              "text"
            ],
            "optional": [],
            "required": [
              "model",
              "input"
            ]
          },
          "lifecycle": {
            "content": [],
            "create": {
              "http": "POST",
              "path": "/v1/embeddings"
            },
            "mode": "synchronous",
            "status": [],
            "unknown": "Keep the original response and X-Client-Request-ID for reconciliation. An ambiguous response is not permission to submit the same creation again.",
            "unknown_no_replay": true
          },
          "method": {
            "http": "POST",
            "path": "/v1/embeddings"
          },
          "output": {
            "all_results": "Save the complete JSON response, every vector with its index, all usage fields and request headers.",
            "every_actual_output": true,
            "family": "embedding",
            "fields": [
              {
                "name": "object",
                "type": "string"
              },
              {
                "name": "model",
                "type": "string"
              },
              {
                "name": "data[].index",
                "type": "integer"
              },
              {
                "name": "data[].embedding",
                "type": "array<number>"
              },
              {
                "name": "usage",
                "type": "object"
              },
              {
                "name": "usage.prompt_tokens",
                "type": "integer"
              },
              {
                "name": "usage.total_tokens",
                "type": "integer"
              }
            ]
          }
        },
        "ctx": null,
        "declared_pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Tokenien perushinnat",
            "units": [
              {
                "amount": "0.0001000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": "0.0000001",
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": "0",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": "0",
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\ncat > request.json <<'JSON'\n{\n  \"model\": \"voyage-3.5-lite\",\n  \"input\": \"The quick brown fox jumps over the lazy dog\"\n}\nJSON\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/embeddings \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -H 'Content-Type: application/json' \\\n  --data-binary @request.json -D response-headers.txt -o embeddings.json\n# Keep every data item and its index, the full usage object and response headers.\n",
            "label": "curl · save all vectors and usage",
            "language": "bash"
          }
        ],
        "family": "openai",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "embeddings",
        "http": "POST",
        "in": 0.1,
        "input": [
          "text"
        ],
        "label": "Vektoriesitykset",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "out": 0,
        "output": [
          "embedding"
        ],
        "path": "/v1/embeddings",
        "price_conditions": [
          {
            "label": "Fast mode",
            "value": "Not specified",
            "when": "When fast mode is selected"
          },
          {
            "label": "Flex mode",
            "value": "Not specified",
            "when": "When flex mode is selected"
          },
          {
            "label": "Maximum reasoning effort",
            "value": "Not specified",
            "when": "When maximum reasoning effort uses the default adjustment"
          }
        ],
        "pricing": {
          "billing_mode": "token",
          "image_input_price": null,
          "image_output_price": null,
          "per_request_price": null
        },
        "pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": "0.0001000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": "0.0000001",
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": "0",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": "0",
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          }
        ],
        "request_model_id": "voyage-3.5-lite",
        "route_label": "Ultra",
        "status_reads": [],
        "tiers": [],
        "units": [
          {
            "amount": "0.0001000",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "input_price",
            "label": "Input tokens",
            "native_amount_usd_per_unit": "0.0000001",
            "native_quantity": 1,
            "native_unit": "input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": "0",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "output_price",
            "label": "Output tokens",
            "native_amount_usd_per_unit": "0",
            "native_quantity": 1,
            "native_unit": "output_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_read_price",
            "label": "Cache read",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "cached_input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "cached_input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_price",
            "label": "Cache write",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "generic_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "generic_cache_creation_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_1h_price",
            "label": "Cache write, 1 hour",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "one_hour_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "one_hour_cache_creation_token"
          }
        ]
      }
    ],
    "model_aliases": [
      {
        "canonical_model_id": "voyage-3.5-lite",
        "request_model_id": "voyage-3.5-lite",
        "route_label": "Ultra"
      }
    ],
    "name": "Voyage AI: Voyage 3.5 Lite",
    "price": {
      "in": 0.1,
      "in_label": null,
      "out": 0,
      "out_label": null,
      "scope_label": "Token rates",
      "sort_in": 0.1,
      "sort_out": 0,
      "varies": false
    },
    "short": "Voyage 3.5 Lite vektoroi tekstin semanttista hakua varten painottaen viivettä ja tehokasta tiedonhakua. Se tukee 32000 tokenin konteksti-ikkunaa, neljää vektorikokoa ja kvantisoitua tulostetta tietopankkihakuun, asiakirjojen vastaavuuksien löytämiseen ja RAG-käyttöön.",
    "short_sha256": "61db24acd587cfab4f14b7f3c526314d69996c4d48e50298883531c74deb64a7"
  },
  "renderer_schema": {
    "method_order": "Original DTO methods order; every exact route/format/path/caller survives.",
    "prices": "Original public DTO fields and original native display HTML; no flattened or normalized offers."
  },
  "representation": "exact-public-dto-and-native-renderer-html",
  "representationNotes": {
    "current_reference": {
      "about_json_pointer": "/aboutHtml",
      "methods": [
        {
          "contract_json_pointer": "/methods/0/rawMethod/contract",
          "html_json_pointer": "/methods/0/html",
          "method_ordinal": 0
        }
      ],
      "role": "current-semantic-reference"
    },
    "raw_input": {
      "examples_role": "historical-input-not-current-ready-examples",
      "json_pointers": [
        "/rawModel",
        "/methods/0/rawMethod"
      ],
      "role": "historical-owner-input"
    },
    "schema": "ailoot-native-model-representations-v1"
  },
  "schema": "ailoot-static-model-facts-v1",
  "schema_version": 1,
  "shortText": "Voyage 3.5 Lite vektoroi tekstin semanttista hakua varten painottaen viivettä ja tehokasta tiedonhakua. Se tukee 32000 tokenin konteksti-ikkunaa, neljää vektorikokoa ja kvantisoitua tulostetta tietopankkihakuun, asiakirjojen vastaavuuksien löytämiseen ja RAG-käyttöön.",
  "source": {
    "audit_sha256": "2e00086bcbfc28e64d0cebe97aa47c17d8d5618963027f8ffb9dc6123d7d25b1",
    "bridge_map_sha256": "1125275768b9636fc8461bc7da5061239a81ddfe508e2557843ca42c58ab0036",
    "raw_model_json_sha256": "694752dcd087e76b8d9a02dbf940ad6b045a5a27886483041e395e4424c80bec",
    "renderer_sha256": "303a59603e2bc29ba8fda690e95fd32cec68de223d92e26054a88babff801dd7"
  },
  "sourceRevision": "2a8821e5adfcd405b47fa8ac1e2efac25dc36a9603941971e74efc37f5c91101"
}
