{
  "aboutHtml": "<p>Voyage Code 3 je model vektorskih vložitev, specializiran za pridobivanje izvorne kode. Proizvajalec opisuje naloge iskanja kode po naravnem jeziku, kodi in dokumentacijskih nizih: vprašanje lahko najde implementacijo, odsek kode povezano logiko, opis funkcije pa relevantno kodo. Model ustvarja vektorje za iskanje, ne urejene datoteke ali dokončanega programa.</p><p>Gradivo repozitorija pripravite okoli smiselnih enot kode. Funkcijo ohranite z njenim imenom, podpisom in komentarji, ki pojasnjujejo njen namen. Za večjo komponento vključite bližnje definicije, potrebne za razumevanje operacije. Repozitorij, revizijo, pot datoteke in položaj vrstice shranite ločeno, da iskalni rezultat odpre natančen vir, za katerega je bila ustvarjena vektorska vložitev.</p><p>Iskanje v naravnem jeziku lahko opiše vedenje, na primer iskanje dela projekta, ki preveri naloženo datoteko pred shranjevanjem. Poizvedba na podlagi kode lahko poda funkcijo, za katero je treba drugje poiskati ujemanje po namenu. Reprezentativna iskanja izberite iz resničnih razvojnih nalog, vključno z neznanimi poimenovanji, podobnimi implementacijami in pripomočki, katerih pomen je odvisen od okoliške kode.</p><p>Kontekstno okno 32000 tokenov sprejme obsežne odlomke kode. Ta prostor uporabite premišljeno: celotna funkcija in njene relevantne odvisnosti so lahko bolj informativne kot poljuben blok, odrezan sredi toka izvajanja. Med izluščanjem ohranite berljivo izvorno oblikovanje in jezikovno sintakso. Če je izvorna datoteka večja od vhodnega okna, jo razdelite na uporabnih strukturnih mejah ter ohranite odnos med odlomki in njihovo nadrejeno datoteko.</p><p>Voyage Code 3 podpira vektorske vložitve z 2048, 1024, 512 ali 256 dimenzijami ter predstavitve s plavajočo vejico, predznačene ali nepredznačene osembitne in binarne predstavitve. Ti parametri podpirajo različne velikosti indeksov repozitorijev in iskalne konfiguracije. Kompaktno predstavitev ocenite z istimi resničnimi iskanji kot večjo izhodiščno predstavitev in preverite, ali pravilna funkcija ali datoteka ostaja med uporabnimi rezultati.</p><p>Za programerskega asistenta najprej pridobite relevantne izvorne odlomke, nato jih skupaj z datotečnimi referencami podajte komponenti, odgovorni za odgovor ali spremembo. Ujemanje po podobnosti pomaga izbrati kontekst; ne potrjuje, da sta dve implementaciji zamenljivi. Preden pridobljeno kodo uporabite kot vodilo za popravek, preglejte njene vhode, stranske učinke in okoliške pogodbe kode.</p><p>Nepovezane različice repozitorija ločite z metapodatki in ohranite sledljivost indeksiranih revizij. Če se funkcija premakne ali se njeno vedenje spremeni, posodobite njen vektor in izvorni položaj. Iste nastavitve vektorskih vložitev naj opisujejo indeksirani vir in njegove poizvedbe. Pri migraciji indeksa primerjajte rezultate z obstoječim naborom vprašanj, da spremenjeni model ali vektorska predstavitev tiho ne spremenita kode, ki jo vidi razvijalec.</p><p>Uporabna preverjanja vključujejo, ali poizvedba najde dejansko implementacijo namesto samo imena testa, ali dokumentacijski niz najde pripadajočo funkcijo in ali se semantično povezana koda razlikuje od površinsko podobnega odseka. Vrnjeno izvorno besedilo in položaj ohranite v iskalnem rezultatu, da lahko razvijalci pregledajo dokaze. To modelove vektorske vložitve, osredotočene na kodo, spremeni v praktično orodje za navigacijo in izbiro konteksta.</p>",
  "aboutText": "Voyage Code 3 je model vektorskih vložitev, specializiran za pridobivanje izvorne kode. Proizvajalec opisuje naloge iskanja kode po naravnem jeziku, kodi in dokumentacijskih nizih: vprašanje lahko najde implementacijo, odsek kode povezano logiko, opis funkcije pa relevantno kodo. Model ustvarja vektorje za iskanje, ne urejene datoteke ali dokončanega programa.\n\nGradivo repozitorija pripravite okoli smiselnih enot kode. Funkcijo ohranite z njenim imenom, podpisom in komentarji, ki pojasnjujejo njen namen. Za večjo komponento vključite bližnje definicije, potrebne za razumevanje operacije. Repozitorij, revizijo, pot datoteke in položaj vrstice shranite ločeno, da iskalni rezultat odpre natančen vir, za katerega je bila ustvarjena vektorska vložitev.\n\nIskanje v naravnem jeziku lahko opiše vedenje, na primer iskanje dela projekta, ki preveri naloženo datoteko pred shranjevanjem. Poizvedba na podlagi kode lahko poda funkcijo, za katero je treba drugje poiskati ujemanje po namenu. Reprezentativna iskanja izberite iz resničnih razvojnih nalog, vključno z neznanimi poimenovanji, podobnimi implementacijami in pripomočki, katerih pomen je odvisen od okoliške kode.\n\nKontekstno okno 32000 tokenov sprejme obsežne odlomke kode. Ta prostor uporabite premišljeno: celotna funkcija in njene relevantne odvisnosti so lahko bolj informativne kot poljuben blok, odrezan sredi toka izvajanja. Med izluščanjem ohranite berljivo izvorno oblikovanje in jezikovno sintakso. Če je izvorna datoteka večja od vhodnega okna, jo razdelite na uporabnih strukturnih mejah ter ohranite odnos med odlomki in njihovo nadrejeno datoteko.\n\nVoyage Code 3 podpira vektorske vložitve z 2048, 1024, 512 ali 256 dimenzijami ter predstavitve s plavajočo vejico, predznačene ali nepredznačene osembitne in binarne predstavitve. Ti parametri podpirajo različne velikosti indeksov repozitorijev in iskalne konfiguracije. Kompaktno predstavitev ocenite z istimi resničnimi iskanji kot večjo izhodiščno predstavitev in preverite, ali pravilna funkcija ali datoteka ostaja med uporabnimi rezultati.\n\nZa programerskega asistenta najprej pridobite relevantne izvorne odlomke, nato jih skupaj z datotečnimi referencami podajte komponenti, odgovorni za odgovor ali spremembo. Ujemanje po podobnosti pomaga izbrati kontekst; ne potrjuje, da sta dve implementaciji zamenljivi. Preden pridobljeno kodo uporabite kot vodilo za popravek, preglejte njene vhode, stranske učinke in okoliške pogodbe kode.\n\nNepovezane različice repozitorija ločite z metapodatki in ohranite sledljivost indeksiranih revizij. Če se funkcija premakne ali se njeno vedenje spremeni, posodobite njen vektor in izvorni položaj. Iste nastavitve vektorskih vložitev naj opisujejo indeksirani vir in njegove poizvedbe. Pri migraciji indeksa primerjajte rezultate z obstoječim naborom vprašanj, da spremenjeni model ali vektorska predstavitev tiho ne spremenita kode, ki jo vidi razvijalec.\n\nUporabna preverjanja vključujejo, ali poizvedba najde dejansko implementacijo namesto samo imena testa, ali dokumentacijski niz najde pripadajočo funkcijo in ali se semantično povezana koda razlikuje od površinsko podobnega odseka. Vrnjeno izvorno besedilo in položaj ohranite v iskalnem rezultatu, da lahko razvijalci pregledajo dokaze. To modelove vektorske vložitve, osredotočene na kodo, spremeni v praktično orodje za navigacijo in izbiro konteksta.",
  "editorialOverlay": {
    "copy_fields": null,
    "copy_sha256": null,
    "copy_source": null,
    "html_sha256": "5b04b67c12a6e5205239667f27b518a1f679f9d6551a8577db788fafc707262c",
    "module_sha256": "ee9dc1c50b1e6a8fb7fa062030fcb4646b9aaaeb08be513b723a5a92a7290f06",
    "raw_model_unchanged": true,
    "schema": "ailoot-native-model-editorial-v1"
  },
  "locale": "sl",
  "methods": [
    {
      "html": "<div class=\"sheet-head\"><span class=\"mav\" aria-hidden=\"true\">•</span><h2 id=\"sheet-title\">Voyage AI: Voyage Code 3</h2><button class=\"icon-btn\" type=\"button\" data-close-sheet aria-label=\"Zapri\">×</button></div><div class=\"idline\"><span>Voyage AI /</span><code>voyage-code-3</code><button type=\"button\" id=\"copy-id\">Kopiraj ID</button></div><nav class=\"card-jump-nav\" aria-label=\"Razdelki kartice modela\"><button type=\"button\" data-card-jump=\"overview\">Začetek</button><button type=\"button\" data-card-jump=\"methods\">Vhodi in metode</button><button type=\"button\" data-card-jump=\"pricing\">Cenik</button><button type=\"button\" data-card-jump=\"examples\">Primeri</button><button type=\"button\" data-card-jump=\"results\">Rezultati</button><button type=\"button\" data-card-jump=\"aliases\">Druga imena</button></nav><div class=\"card-method-tabs\" role=\"tablist\" aria-label=\"Metode API\"><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-code-3\">Vektorske predstavitve</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\">Začetek</h3><p class=\"mdesc-full\">Voyage Code 3 ustvarja vektorske vložitve za iskanje kode po besedilu, kodi in dokumentacijskih nizih. Okno 32000 tokenov, izbirno število dimenzij vektorjev in kvantizirani izhod podpirajo iskanje po repozitoriju in izbiro konteksta kode za programerske asistente.</p><dl class=\"card-io\" data-card-io><div><dt>Dovoljeni vhodi</dt><dd>Besedilo</dd></div><div><dt>Rezultati</dt><dd>embedding</dd></div></dl><details class=\"card-about\"><summary>O modelu</summary><p class=\"note-s\" data-model-method-boundary>Ta opis zajema zmožnosti modela. Vhodi, izhodi in možnosti, ki so na voljo v Ailoot, so spodaj navedeni za izbrano metodo.</p><div class=\"mabout\" id=\"m-about\"><p>Voyage Code 3 je model vektorskih vložitev, specializiran za pridobivanje izvorne kode. Proizvajalec opisuje naloge iskanja kode po naravnem jeziku, kodi in dokumentacijskih nizih: vprašanje lahko najde implementacijo, odsek kode povezano logiko, opis funkcije pa relevantno kodo. Model ustvarja vektorje za iskanje, ne urejene datoteke ali dokončanega programa.</p><p>Gradivo repozitorija pripravite okoli smiselnih enot kode. Funkcijo ohranite z njenim imenom, podpisom in komentarji, ki pojasnjujejo njen namen. Za večjo komponento vključite bližnje definicije, potrebne za razumevanje operacije. Repozitorij, revizijo, pot datoteke in položaj vrstice shranite ločeno, da iskalni rezultat odpre natančen vir, za katerega je bila ustvarjena vektorska vložitev.</p><p>Iskanje v naravnem jeziku lahko opiše vedenje, na primer iskanje dela projekta, ki preveri naloženo datoteko pred shranjevanjem. Poizvedba na podlagi kode lahko poda funkcijo, za katero je treba drugje poiskati ujemanje po namenu. Reprezentativna iskanja izberite iz resničnih razvojnih nalog, vključno z neznanimi poimenovanji, podobnimi implementacijami in pripomočki, katerih pomen je odvisen od okoliške kode.</p><p>Kontekstno okno 32000 tokenov sprejme obsežne odlomke kode. Ta prostor uporabite premišljeno: celotna funkcija in njene relevantne odvisnosti so lahko bolj informativne kot poljuben blok, odrezan sredi toka izvajanja. Med izluščanjem ohranite berljivo izvorno oblikovanje in jezikovno sintakso. Če je izvorna datoteka večja od vhodnega okna, jo razdelite na uporabnih strukturnih mejah ter ohranite odnos med odlomki in njihovo nadrejeno datoteko.</p><p>Voyage Code 3 podpira vektorske vložitve z 2048, 1024, 512 ali 256 dimenzijami ter predstavitve s plavajočo vejico, predznačene ali nepredznačene osembitne in binarne predstavitve. Ti parametri podpirajo različne velikosti indeksov repozitorijev in iskalne konfiguracije. Kompaktno predstavitev ocenite z istimi resničnimi iskanji kot večjo izhodiščno predstavitev in preverite, ali pravilna funkcija ali datoteka ostaja med uporabnimi rezultati.</p><p>Za programerskega asistenta najprej pridobite relevantne izvorne odlomke, nato jih skupaj z datotečnimi referencami podajte komponenti, odgovorni za odgovor ali spremembo. Ujemanje po podobnosti pomaga izbrati kontekst; ne potrjuje, da sta dve implementaciji zamenljivi. Preden pridobljeno kodo uporabite kot vodilo za popravek, preglejte njene vhode, stranske učinke in okoliške pogodbe kode.</p><p>Nepovezane različice repozitorija ločite z metapodatki in ohranite sledljivost indeksiranih revizij. Če se funkcija premakne ali se njeno vedenje spremeni, posodobite njen vektor in izvorni položaj. Iste nastavitve vektorskih vložitev naj opisujejo indeksirani vir in njegove poizvedbe. Pri migraciji indeksa primerjajte rezultate z obstoječim naborom vprašanj, da spremenjeni model ali vektorska predstavitev tiho ne spremenita kode, ki jo vidi razvijalec.</p><p>Uporabna preverjanja vključujejo, ali poizvedba najde dejansko implementacijo namesto samo imena testa, ali dokumentacijski niz najde pripadajočo funkcijo in ali se semantično povezana koda razlikuje od površinsko podobnega odseka. Vrnjeno izvorno besedilo in položaj ohranite v iskalnem rezultatu, da lahko razvijalci pregledajo dokaze. To modelove vektorske vložitve, osredotočene na kodo, spremeni v praktično orodje za navigacijo in izbiro konteksta.</p></div></details></section><section class=\"card-section\" data-card-section=\"methods\"><h3 tabindex=\"-1\">Na voljo v Ailoot · vhodi in metode</h3><details class=\"card-method\" open><summary><b>Ailoot Ultra · Vektorske predstavitve</b> <code>POST /v1/embeddings</code></summary><dl class=\"method-capabilities\"><div><dt>Vhod</dt><dd><code>text</code></dd></div><div><dt>Izhod</dt><dd><code>embedding</code></dd></div></dl><div class=\"tw\" data-card-parameters data-typed-parameters><table><thead><tr><th>Polje</th><th>Vrsta</th><th>Zahteva</th><th>Vrednosti in omejitve</th><th>Privzeto</th></tr></thead><tbody><tr><th data-cell-label=\"Polje\" scope=\"row\"><span class=\"card-cell-label\">Polje</span><code class=\"card-field-name\">model</code></th><td data-cell-label=\"Vrsta\" data-field-type><span class=\"card-cell-label\">Vrsta</span><code>string</code></td><td data-cell-label=\"Zahteva\"><span class=\"card-cell-label\">Zahteva</span>Obvezno</td><td data-cell-label=\"Vrednosti in omejitve\"><span class=\"card-cell-label\">Vrednosti in omejitve</span><div>voyage-code-3</div><div>Pogoji: Uporabite natančen izbirnik modela Ailoot.</div></td><td data-cell-label=\"Privzeto\" data-default=\"unspecified\"><span class=\"card-cell-label\">Privzeto</span>—</td></tr><tr><th data-cell-label=\"Polje\" scope=\"row\"><span class=\"card-cell-label\">Polje</span><code class=\"card-field-name\">input</code></th><td data-cell-label=\"Vrsta\" data-field-type><span class=\"card-cell-label\">Vrsta</span><code>string or array&lt;string&gt;</code></td><td data-cell-label=\"Zahteva\"><span class=\"card-cell-label\">Zahteva</span>Obvezno</td><td data-cell-label=\"Vrednosti in omejitve\"><span class=\"card-cell-label\">Vrednosti in omejitve</span><div>Pogoji: Besedilo ali seznam besedil; za vsak vrnjeni element data in njegov indeks ohranite po en vektor.</div></td><td data-cell-label=\"Privzeto\" data-default=\"unspecified\"><span class=\"card-cell-label\">Privzeto</span>—</td></tr></tbody></table></div><details class=\"note-s\" data-method-contract><summary>Parametri in življenjski cikel metode</summary><div class=\"tw\" data-card-table=\"contract\"><table><thead><tr><th>Parameter</th><th>Specifikacija</th></tr></thead><tbody><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>content_type</code></th><td data-cell-label=\"Specifikacija\"><span class=\"card-cell-label\">Specifikacija</span>application/json</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>required</code></th><td data-cell-label=\"Specifikacija\"><span class=\"card-cell-label\">Specifikacija</span>model, input</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>optional</code></th><td data-cell-label=\"Specifikacija\"><span class=\"card-cell-label\">Specifikacija</span></td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>material_types</code></th><td data-cell-label=\"Specifikacija\"><span class=\"card-cell-label\">Specifikacija</span>text</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>conditions</code></th><td data-cell-label=\"Specifikacija\"><span class=\"card-cell-label\">Specifikacija</span>Pošljite besedilo z izbranim modelom; ohranite vsak vrnjeni vektor in njegov indeks.</td></tr></tbody></table></div><p>Življenjski cikel: <code>synchronous</code></p></details></details></section><section class=\"card-section\" data-card-section=\"pricing\"><h3 tabindex=\"-1\">Cenik</h3><div data-native-semantic-method=\"v1\" data-tariff-reference-only><p class=\"note-s\" data-rate-support-note>Tarifni podatki ne dodajajo možnosti zahteve. Podprti parametri so navedeni pri izbrani metodi.</p><dl data-price-conditions><dt>Hitri način</dt><dd>Ni navedeno <span class=\"note-s\">Ko je izbran hitri način</span></dd><dt>Način flex</dt><dd>Ni navedeno <span class=\"note-s\">Ko je izbran način flex</span></dd><dt>Najvišja raven razmišljanja</dt><dd>Ni navedeno <span class=\"note-s\">Ko najvišja raven razmišljanja uporablja privzeto prilagoditev (default)</span></dd></dl></div><div data-declared-tariff-pricing><h4>Cene Ailoot</h4><h4>Cene po nastavitvah</h4><div class=\"tw\" data-pricing-profiles><table><thead><tr><th>Nastavitev</th><th>Cenovna lestvica</th><th>Strošek</th></tr></thead><tbody><tr><th data-cell-label=\"Nastavitev\" scope=\"row\"><span class=\"card-cell-label\">Nastavitev</span>Osnovne cene žetonov</th><td data-cell-label=\"Cenovna lestvica\"><span class=\"card-cell-label\">Cenovna lestvica</span>Osnovna cena</td><td data-cell-label=\"Strošek\"><span class=\"card-cell-label\">Strošek</span><div><span>Vhod · Vhodni žetoni</span> <b>$0.0004</b> <span class=\"price-unit\">/ 1K žetonov</span></div><div><span>Izhod · Izhodni žetoni</span> <b>$0</b> <span class=\"price-unit\">/ 1K žetonov</span></div><div><span>Vhod · Branje predpomnilnika</span> <b>—</b> <span class=\"price-unit\">/ 1K žetonov</span></div><div><span>Vhod · Zapis v predpomnilnik</span> <b>—</b> <span class=\"price-unit\">/ 1K žetonov</span></div><div><span>Vhod · Zapis v predpomnilnik, 1 ura</span> <b>—</b> <span class=\"price-unit\">/ 1K žetonov</span></div></td></tr></tbody></table></div></div><p class=\"note-s\">Ailoot pred zahtevo rezervira ocenjeni znesek. Po rezultatu obračuna končni strošek na podlagi izmerjene porabe. Obračun pretakanja uporablja končni zapis porabe. <a href=\"/docs/sl/billing/reserve/\">Kako delujeta rezervacija in obračun →</a></p></section><section class=\"card-section\" data-card-section=\"examples\"><h3 tabindex=\"-1\">Primeri zahtev</h3><h4>Ailoot Ultra · Vektorske predstavitve</h4><div class=\"code-group\"><div class=\"cg-bar\"><div class=\"cg-tabs\" role=\"tablist\" aria-label=\"Primeri kode\"><button class=\"cg-tab\" id=\"model-code-2790-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-2790-panel-0\" aria-selected=\"true\" tabindex=\"0\">curl · shranite vse vektorje in podatke o porabi</button></div><div class=\"cg-tools\"><button class=\"cg-btn cg-copy\" type=\"button\" aria-label=\"Kopiraj kodo\"><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-2790-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-2790-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-code-3&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\">Prejmi in shrani rezultate</h3></section><section class=\"card-section\" data-card-section=\"aliases\"><h3 tabindex=\"-1\">Druga imena</h3><h4>Druga imena modelov</h4><p class=\"note-s\"><span data-model-alias-route=\"Ultra\"><b>Ailoot Ultra</b> <a href=\"#m=voyage-code-3&amp;route=Ultra&amp;caller=voyage-code-3&amp;fmt=embeddings\"><code>voyage-code-3</code></a></span></p><h4>Druga imena poti metod</h4><p class=\"note-s\">Uporabite zgoraj navedene poti metod.</p><h4>Povezani ID-ji za klic</h4><p class=\"note-s\"><a href=\"#m=voyage-code-3&amp;route=Ultra&amp;caller=voyage-code-3&amp;fmt=embeddings\"><code>voyage-code-3</code></a></p></section></div>",
      "method_identity": {
        "effective_request_model_id": "voyage-code-3",
        "fmt": "embeddings",
        "http": "POST",
        "path": "/v1/embeddings",
        "request_model_id": "voyage-code-3",
        "route_label": "Ultra"
      },
      "method_key": "Ultra|embeddings|/v1/embeddings|voyage-code-3",
      "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": "Ohranite izvirni odgovor in X-Client-Request-ID za uskladitev. Dvoumen odgovor ne dovoljuje ponovne oddaje iste zahteve za ustvarjanje.",
              "unknown_no_replay": true
            },
            "outputs": {
              "all_results": "Shranite celoten odgovor JSON, vsak vektor z njegovim indeksom, vsa polja s podatki o porabi in glave zahteve.",
              "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": "Uporabite natančen izbirnik modela Ailoot.",
                "default_known": false,
                "enum": [
                  "voyage-code-3"
                ],
                "enum_known": true,
                "maximum_length": null,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "conditions": "Besedilo ali seznam besedil; za vsak vrnjeni element data in njegov indeks ohranite po en vektor.",
                "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-code-3"
                  ],
                  "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-code-3"
              },
              "content_type": "application/json"
            }
          },
          "input": {
            "conditions": [
              "Pošljite besedilo z izbranim modelom; ohranite vsak vrnjeni vektor in njegov indeks."
            ],
            "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": "Osnovne cene žetonov",
            "units": [
              {
                "amount": "0.0004000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": "0.0000004",
                "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-code-3\",\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.4,
        "input": [
          "text"
        ],
        "label": "Vektorske predstavitve",
        "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.0004000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": "0.0000004",
                "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-code-3",
        "route_label": "Ultra",
        "status_reads": [],
        "tiers": [],
        "units": [
          {
            "amount": "0.0004000",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "input_price",
            "label": "Input tokens",
            "native_amount_usd_per_unit": "0.0000004",
            "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-code-3",
  "nativeProvenance": {
    "input_facts_canonical_sha256": "5a8775051366d9db19d237eb8d547998cdca01d9037542cd569ff3e2c215d803",
    "input_html_sha256": "8a93642cfa0c67873836df52c4a992bc944f58da718aaadb6a8323b16422c07a",
    "private_audit_sha256": "9001efd3a62e9b95d0fb50e108f7340c7f504b509df65a6fcc2b275539f1ec3a",
    "role": "historical-normalized-input-audit-hashes",
    "schema": "ailoot-native-model-provenance-v2"
  },
  "page": {
    "canonical": "https://ailoot.ai/models/sl/voyage-code-3/",
    "description": "Voyage Code 3 ustvarja vektorske vložitve za iskanje kode po besedilu, kodi in dokumentacijskih nizih. Okno 32000 tokenov, izbirno število dimenzij vektorjev in kvantizirani izhod podpirajo iskanje po repozitoriju in izbiro konteksta kode za programerske asistente.",
    "locale": "sl",
    "md_url": "https://ailoot.ai/models/sl/voyage-code-3/index.md",
    "title": "Voyage AI: Voyage Code 3 — Ailoot",
    "url": "https://ailoot.ai/models/sl/voyage-code-3/"
  },
  "rawModel": {
    "about": "Voyage Code 3 je model vektorskih vložitev, specializiran za pridobivanje izvorne kode. Proizvajalec opisuje naloge iskanja kode po naravnem jeziku, kodi in dokumentacijskih nizih: vprašanje lahko najde implementacijo, odsek kode povezano logiko, opis funkcije pa relevantno kodo. Model ustvarja vektorje za iskanje, ne urejene datoteke ali dokončanega programa.\n\nGradivo repozitorija pripravite okoli smiselnih enot kode. Funkcijo ohranite z njenim imenom, podpisom in komentarji, ki pojasnjujejo njen namen. Za večjo komponento vključite bližnje definicije, potrebne za razumevanje operacije. Repozitorij, revizijo, pot datoteke in položaj vrstice shranite ločeno, da iskalni rezultat odpre natančen vir, za katerega je bila ustvarjena vektorska vložitev.\n\nIskanje v naravnem jeziku lahko opiše vedenje, na primer iskanje dela projekta, ki preveri naloženo datoteko pred shranjevanjem. Poizvedba na podlagi kode lahko poda funkcijo, za katero je treba drugje poiskati ujemanje po namenu. Reprezentativna iskanja izberite iz resničnih razvojnih nalog, vključno z neznanimi poimenovanji, podobnimi implementacijami in pripomočki, katerih pomen je odvisen od okoliške kode.\n\nKontekstno okno 32000 tokenov sprejme obsežne odlomke kode. Ta prostor uporabite premišljeno: celotna funkcija in njene relevantne odvisnosti so lahko bolj informativne kot poljuben blok, odrezan sredi toka izvajanja. Med izluščanjem ohranite berljivo izvorno oblikovanje in jezikovno sintakso. Če je izvorna datoteka večja od vhodnega okna, jo razdelite na uporabnih strukturnih mejah ter ohranite odnos med odlomki in njihovo nadrejeno datoteko.\n\nVoyage Code 3 podpira vektorske vložitve z 2048, 1024, 512 ali 256 dimenzijami ter predstavitve s plavajočo vejico, predznačene ali nepredznačene osembitne in binarne predstavitve. Ti parametri podpirajo različne velikosti indeksov repozitorijev in iskalne konfiguracije. Kompaktno predstavitev ocenite z istimi resničnimi iskanji kot večjo izhodiščno predstavitev in preverite, ali pravilna funkcija ali datoteka ostaja med uporabnimi rezultati.\n\nZa programerskega asistenta najprej pridobite relevantne izvorne odlomke, nato jih skupaj z datotečnimi referencami podajte komponenti, odgovorni za odgovor ali spremembo. Ujemanje po podobnosti pomaga izbrati kontekst; ne potrjuje, da sta dve implementaciji zamenljivi. Preden pridobljeno kodo uporabite kot vodilo za popravek, preglejte njene vhode, stranske učinke in okoliške pogodbe kode.\n\nNepovezane različice repozitorija ločite z metapodatki in ohranite sledljivost indeksiranih revizij. Če se funkcija premakne ali se njeno vedenje spremeni, posodobite njen vektor in izvorni položaj. Iste nastavitve vektorskih vložitev naj opisujejo indeksirani vir in njegove poizvedbe. Pri migraciji indeksa primerjajte rezultate z obstoječim naborom vprašanj, da spremenjeni model ali vektorska predstavitev tiho ne spremenita kode, ki jo vidi razvijalec.\n\nUporabna preverjanja vključujejo, ali poizvedba najde dejansko implementacijo namesto samo imena testa, ali dokumentacijski niz najde pripadajočo funkcijo in ali se semantično povezana koda razlikuje od površinsko podobnega odseka. Vrnjeno izvorno besedilo in položaj ohranite v iskalnem rezultatu, da lahko razvijalci pregledajo dokaze. To modelove vektorske vložitve, osredotočene na kodo, spremeni v praktično orodje za navigacijo in izbiro konteksta.",
    "about_sha256": "7a62faecaa1a469a228fb832e8fd51d0fb1ee7fc0232e975614f45428c1f130f",
    "alias_of": null,
    "aliases": [],
    "author": "Voyage AI",
    "capabilities": {
      "context_length": 32000,
      "manufacturer_input": [
        "text"
      ],
      "manufacturer_output": [
        "embeddings"
      ]
    },
    "card_routes": [
      {
        "label": "Ultra",
        "rates": [
          {
            "amount": "0.0004000",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "input_price",
            "label": "Input tokens",
            "native_amount_usd_per_unit": "0.0000004",
            "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": "Celoten cenik konfiguracije je v podrobnostih."
      }
    ],
    "ctx": null,
    "display_name": "Voyage AI: Voyage Code 3",
    "formats": [
      "embeddings"
    ],
    "id": "voyage-code-3",
    "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": "Ohranite izvirni odgovor in X-Client-Request-ID za uskladitev. Dvoumen odgovor ne dovoljuje ponovne oddaje iste zahteve za ustvarjanje.",
              "unknown_no_replay": true
            },
            "outputs": {
              "all_results": "Shranite celoten odgovor JSON, vsak vektor z njegovim indeksom, vsa polja s podatki o porabi in glave zahteve.",
              "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": "Uporabite natančen izbirnik modela Ailoot.",
                "default_known": false,
                "enum": [
                  "voyage-code-3"
                ],
                "enum_known": true,
                "maximum_length": null,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "conditions": "Besedilo ali seznam besedil; za vsak vrnjeni element data in njegov indeks ohranite po en vektor.",
                "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-code-3"
                  ],
                  "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-code-3"
              },
              "content_type": "application/json"
            }
          },
          "input": {
            "conditions": [
              "Pošljite besedilo z izbranim modelom; ohranite vsak vrnjeni vektor in njegov indeks."
            ],
            "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": "Osnovne cene žetonov",
            "units": [
              {
                "amount": "0.0004000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": "0.0000004",
                "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-code-3\",\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.4,
        "input": [
          "text"
        ],
        "label": "Vektorske predstavitve",
        "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.0004000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": "0.0000004",
                "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-code-3",
        "route_label": "Ultra",
        "status_reads": [],
        "tiers": [],
        "units": [
          {
            "amount": "0.0004000",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "input_price",
            "label": "Input tokens",
            "native_amount_usd_per_unit": "0.0000004",
            "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-code-3",
        "request_model_id": "voyage-code-3",
        "route_label": "Ultra"
      }
    ],
    "name": "Voyage AI: Voyage Code 3",
    "price": {
      "in": 0.4,
      "in_label": null,
      "out": 0,
      "out_label": null,
      "scope_label": "Token rates",
      "sort_in": 0.4,
      "sort_out": 0,
      "varies": false
    },
    "short": "Voyage Code 3 ustvarja vektorske vložitve za iskanje kode po besedilu, kodi in dokumentacijskih nizih. Okno 32000 tokenov, izbirno število dimenzij vektorjev in kvantizirani izhod podpirajo iskanje po repozitoriju in izbiro konteksta kode za programerske asistente.",
    "short_sha256": "d4d092b4a7555efe0f233ac899b7e43901dde1d9465c4a647af52200c6d5d963"
  },
  "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 Code 3 ustvarja vektorske vložitve za iskanje kode po besedilu, kodi in dokumentacijskih nizih. Okno 32000 tokenov, izbirno število dimenzij vektorjev in kvantizirani izhod podpirajo iskanje po repozitoriju in izbiro konteksta kode za programerske asistente.",
  "source": {
    "audit_sha256": "2e00086bcbfc28e64d0cebe97aa47c17d8d5618963027f8ffb9dc6123d7d25b1",
    "bridge_map_sha256": "1125275768b9636fc8461bc7da5061239a81ddfe508e2557843ca42c58ab0036",
    "raw_model_json_sha256": "bcbd753aa50801a49186fb2e00c10a4bb72d35895860067a4492cab89757d737",
    "renderer_sha256": "dcba2271c18b0f9570a8b166e8d1e3166f121e096a58609c3a46da31562a1bf2"
  },
  "sourceRevision": "f2c4a09ff80533adb735b5a6ee0a31aadb8bfb389bf67feeb377b06a73a29b2d"
}
