Source: https://ailoot.ai/models/nb/voyageai-voyage-code-4/
Canonical: https://ailoot.ai/models/nb/voyageai-voyage-code-4/
Language: nb

# VoyageAI by MongoDB: voyage-code-4

[Markdown](https://ailoot.ai/models/nb/voyageai-voyage-code-4/index.md) · [JSON](https://ailoot.ai/models/nb/voyageai-voyage-code-4/facts.json)

## [VoyageAI by MongoDB: voyage-code-4](https://ailoot.ai/models/nb/voyageai-voyage-code-4/)

Voyage AI voyage-code-4 er en kodeembeddingmodell for å finne relevant kildekode fra spørsmål, problembeskrivelser og kodeagenters mål. Den støtter inndata på 32 000 tokener og 256, 512, 1024 eller 2048 dimensjoner, med flyttalls- og kvantiserte representasjoner.

- [**Ailoot Ultra · Vektorrepresentasjoner** `POST /v1/embeddings` `voyageai/voyage-code-4`](https://ailoot.ai/models/nb/voyageai-voyage-code-4/#method-0)

Om modellen

Denne beskrivelsen dekker modellens funksjoner. Tilgjengelige inndata, utdata og alternativer i Ailoot er oppført nedenfor for den valgte metoden.

voyage-code-4 er Voyage AIs kodespesialiserte embeddingmodell for søk i kodelagre og gjenfinning til kodeagenter. Den er utviklet for å hjelpe med å finne relevant kildekode når utgangspunktet er et spørsmål, et symptom eller en oppgavebeskrivelse fremfor en kjent identifikator. Den representerer kode og tekstlig informasjon som numeriske vektorer for gjenfinning; den redigerer ikke kodelageret eller genererer en rettelse.

#### Gjenfinn kode fra problemet som undersøkes

Produsenten beskriver et treningskorpus utvalgt fra ferdigbehandlede pull requests, som kobler forespørsler i naturlig språk til kode. Dette er en meningsfull forskjell fra treningseksempler som hovedsakelig bygger på kildefiler og docstrings: Gjenfinningsoppgaven kan starte med adferden som må undersøkes.

Forbered en forespørsel som «Finn hvor et tomt resultat gjør at en vellykket operasjon blir rapportert som mislykket.» Indekser lesbare kildekodeseksjoner med filstier og relevante kommentarer. Behold betingelsene rundt funksjonen når de forklarer adferden. En returnert kandidat bør føre leseren eller agenten tilbake til kildekodeseksjonen den representerer.

Semantisk gjenfinning kan utfylle eksakt identifikatorsøk og fulltekstsøk. Hvis et funksjonsnavn allerede er kjent, er et eksakt oppslag fortsatt nyttig. Hvis bare et symptom er kjent, kan vektorsøk gi kandidater som undersøkes, og søket kan forfines med en ny forespørsel.

#### Query- og document-roller

Voyages gjenfinningsveiledning skiller forespørselen fra korpusdokumentet gjennom inndatatypene query/document. For kodesøk bruker du problem- eller oppgavebeskrivelsen på forespørselssiden og den indekserte kildekoden eller dokumentasjonen på dokumentsiden. Den publiserte oppskriften legger til rollespesifikke gjenfinningsinstruksjoner når embeddingvektoren beregnes.

Hold kodens originale formatering, navn og relevante dokumentasjon tilgjengelig utenfor vektoren. For en kildekodeseksjon beholder du filstien og plasseringen; for en programmeringsveiledning beholder du overskriften. Undersøk den faktiske koden og koden som kaller den etter gjenfinning, før en endring velges. En kandidats relevans fastslår ikke at den er eneste årsak til et rapportert problem.

#### Kontekst- og representasjonsvalg

Den nøyaktige modellens publiserte kontekstlengde er 32 000 tokener. Standardembeddingvektoren har 1024 dimensjoner, med 256, 512 og 2048 også støttet gjennom Matryoshka-læring. Kunngjøringen dokumenterer representasjoner med 32-biters flyttall, 8-biters heltall med og uten fortegn samt binærrepresentasjoner.

Velg én dimensjon og representasjon for samlingen og behold dem i metadataene. Flyttallsvektorer og kvantiserte representasjoner krever tilsvarende lagrings- og sammenligningshåndtering. En binærrepresentasjon koder vektorinformasjon annerledes enn en liste med vanlige flyttallskoordinater; bevar dette skillet når resultater forberedes for søk.

For en lang fil velger du sammenhengende seksjoner der kildeplasseringene kan gjenfinnes. En funksjon kan trenge en tilstøtende typedefinisjon eller kommentar for å forklare en betingelse, mens en hel for stor fil kan inneholde uvedkommende materiale. Hold seksjonen tilpasset oppgaven som skal søkes etter, fremfor å behandle maksimal kontekst som en foretrukket stykkestørrelse.

#### Bruk gjenfunnet kildekode som evidens

En praktisk kodeagentarbeidsflyt gjenfinner kandidatkode, leser filene, følger relevante henvisninger og snevrer inn søket etter hvert som undersøkelsen går fremover. Den gjenfunne teksten blir kontekst for resonnerings- eller redigeringstrinnet. Hold koblingen til den indekserte kodelagerrevisjonen, slik at en kandidat undersøkes mot riktig kildekode.

Det utgavespesifikke bidraget fra voyage-code-4 er fokuset på gjenfinningstrinnet fra problem til kode som kodeagenter bruker, sammen med fleksible dimensjoner og representasjoner. Resultatet er en gjenfinningsvektor, mens diagnose, redigering og validering fortsatt er separate oppgaver forankret i det faktiske kodelageret.

**Ailoot Ultra · Vektorrepresentasjoner** `POST /v1/embeddings` `voyageai/voyage-code-4`

[`voyageai/voyage-code-4`](https://ailoot.ai/models/nb/#m=voyageai%2Fvoyage-code-4&route=Ultra&caller=voyageai%2Fvoyage-code-4&fmt=embeddings)

VoyageAI by MongoDB /`voyageai/voyage-code-4`

### Start

Voyage AI voyage-code-4 er en kodeembeddingmodell for å finne relevant kildekode fra spørsmål, problembeskrivelser og kodeagenters mål. Den støtter inndata på 32 000 tokener og 256, 512, 1024 eller 2048 dimensjoner, med flyttalls- og kvantiserte representasjoner.

Godkjente inndata

Tekst · token\_ids

Resultater

embedding

### Tilgjengelig i Ailoot · inndata & metoder

**Ailoot Ultra · Vektorrepresentasjoner** `POST /v1/embeddings`

Inndatatyper

`text`, `token_ids`

Utdatatyper

`embedding`

Kontekst

32 000 tokens

Utdataformat

json

| Felt | Type | Krav | Verdier & grenser | Standard |
| --- | --- | --- | --- | --- |
| Felt`model` | Type`string` | KravPåkrevd | Verdier & grenser voyageai/voyage-code-4 | Standard— |
| Felt`input` | Type`string\|string[]\|integer[]\|integer[][]` | KravPåkrevd | Verdier & grenser Minste antall elementer: 1 Vilkår: Ikke-tom batch med ensartede elementer. Token-ID-er er ikke-negative heltall. Inndatabudsjett: Maksimum: 32 000 · Tekstenhet: UTF8-byte · Tokenenhet: elementer i token-arrayet | Standard— |
| Felt`encoding_format` | Type`string` | KravValgfritt | Verdier & grenser float | Standardfloat |
| Felt`dimensions` | Type`integer` | KravStøttes ikke | Verdier & grenser Minimum: 1 | Standard— |
| Felt`user` | Type`json_value` | KravValgfritt | Verdier & grenser Vilkår: Kilden tillater dette JSON-metadatafeltet; den nøyaktige semantikken hos den underliggende leverandøren er modellavhengig. | Standard— |
| Felt`session_id` | Type`json_value` | KravValgfritt | Verdier & grenser Vilkår: Kilden tillater dette JSON-metadatafeltet; den nøyaktige semantikken hos den underliggende leverandøren er modellavhengig. | Standard— |
| Felt`trace` | Type`json_value` | KravValgfritt | Verdier & grenser Vilkår: Kilden tillater dette JSON-metadatafeltet; den nøyaktige semantikken hos den underliggende leverandøren er modellavhengig. | Standard— |
| Felt`provider` | Type`object` | KravValgfritt | Verdier & grenser Vilkår: provider.options avvises | Standard— |

Kombinasjoner av inngående materialer

**text\_to\_embedding**

Metodeparametere og livssyklus

| Parameter | Avtale |
| --- | --- |
| Parameter`content_type` | Avtaleapplication/json |
| Parameter`required` | Avtalemodel, input |
| Parameter`input_shapes` | Avtalestring, string\[\], nonnegative\_integer\_token\_array, nonnegative\_integer\_token\_array\[\] |
| Parameter`encoding_format` | Avtalefloat |
| Parameter`dimensions_override` | Avtalefalse |
| Parameter`max_input_budget_units` | Avtale32000 |
| Parameter`multimodal_objects` | Avtalefalse |
| Parameter`material_types` | Avtaletext, token\_ids |

Livssyklus: `synchronous_json`

Bevar hver vektors indeks og dimensjon.

Et multimodalt modellnavn innebærer ikke at bildeobjekter er tillatt på denne nøyaktige stien.

### Priser

Tariffopplysninger legger ikke til forespørselsvalg. Støttede parametere står ved den valgte metoden.

Hurtigmodus

Standardpris Når hurtigmodus er valgt

Flex-modus

Standardpris Når flex-modus er valgt

Maksimal resonneringsinnsats

Standardpris Når justeringen «default» brukes for maksimal resonneringsinnsats

#### Ailoot-satser

#### Priser etter konfigurasjon

| Konfigurasjon | Prisplan | Kostnad |
| --- | --- | --- |
| KonfigurasjonGrunnpriser for tokener | PrisplanGrunnsats | Kostnad Inndata · Inngående tokener **$0.00024** / 1K tokener Utdata · Utgående tokener **$0** / 1K tokener Inndata · Lesing fra hurtigbuffer **—** / 1K tokener Inndata · Skriving til hurtigbuffer **—** / 1K tokener Inndata · Skriving til hurtigbuffer, 1 time **—** / 1K tokener |

Ailoot reserverer et estimert beløp før en forespørsel. Etter resultatet gjøres det endelige beløpet opp basert på målt forbruk. Oppgjør for strømming bruker den endelige forbruksposten. [Slik fungerer reservasjon og oppgjør →](https://ailoot.ai/docs/nb/billing/reserve/)

### Eksempelforespørsler

#### Ailoot Ultra · Vektorrepresentasjoner

curlPython SDK

```bash
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "voyageai/voyage-code-4", "input": ["First document", "Second document"]}')

Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/embeddings \
  -H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path("result.json").read_text())
for x in r.get("data",[]): print(json.dumps({"index":x.get("index"),"embedding":x.get("embedding")}))
PY_RESULT
```

```python
from openai import OpenAI
import os

client=OpenAI(base_url="https://api.ailoot.ai/v1",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
result=client.embeddings.create(model='voyageai/voyage-code-4',input=["First document","Second document"])
print(result)
for item in result.data:print(item.index,item.embedding)
```

### Motta og lagre resultater

#### Ailoot Ultra · Vektorrepresentasjoner

json

##### Behold alle ferdige resultater

Behold alle fullstendige returnerte svar, filer og innholdsdeler.

Bevar hver vektor sammen med indeksen. Antall vektorer må være lik antall inndata; dimensjonene må være konsistente.

##### Hvis det opprinnelige svaret må kontrolleres

Det innføres ikke noe endepunkt for embedding-jobber.

Svarfelter

| Felt | Type |
| --- | --- |
| Felt`object` | Typestring |
| Felt`model` | Typestring |
| Felt`data[].index` | Typeinteger |
| Felt`data[].embedding` | Typefinite float\[\] |
| Felt`usage` | Typeobject |

Feil og neste trinn

| Svar | Vilkår | Neste trinn |
| --- | --- | --- |
| Svar400 · `invalid_request_error` | VilkårUgyldige påkrevde felter, materialrepresentasjon eller parameterverdi | Neste trinnKorriger de angitte feltene før en ny opprettelsesforespørsel. |

### Aliaser

#### Modellaliaser

**Ailoot Ultra** [`voyageai/voyage-code-4`](https://ailoot.ai/models/nb/#m=voyageai%2Fvoyage-code-4&route=Ultra&caller=voyageai%2Fvoyage-code-4&fmt=embeddings)

#### Aliaser for metodestier

Bruk metodestiene som vises ovenfor.

#### Tilknyttede anroper-ID-er

[`voyageai/voyage-code-4`](https://ailoot.ai/models/nb/#m=voyageai%2Fvoyage-code-4&route=Ultra&caller=voyageai%2Fvoyage-code-4&fmt=embeddings)

FAQ · VoyageAI by MongoDB: voyage-code-4

Hvilke inndata og resultater er tilgjengelige?

`POST /v1/embeddings` · `voyageai/voyage-code-4`: `text`, `token_ids` → `embedding`

Hvilke felt bruker forespørselen?

`POST /v1/embeddings` · `voyageai/voyage-code-4`: `model`, `input`, `encoding_format`, `provider`

Hvilke grenser gjelder?

`POST /v1/embeddings` · `voyageai/voyage-code-4`: `ctx`: `32000`; `input.budget.maximum`: `32000` (UTF8-byte); `input.min_items`: `1`

Koble Ailoot til Claude Code, OpenCode, Hermes eller egen applikasjon.

## Selskapet og dets prosjektportefølje

Selskapet og dets prosjektportefølje: millioner av kunder; månedlig salg for milliarder.

## Kjøp tokener med rabatt.

Abonnementsrabatt for jevnlig bruk. Kampanjekoder gir opptil 50% på tokenkjøp.

Abonnement

Velg et rabattabonnement for faste forespørsler.

Kampanjekode opptil 50%

Oppgi kode ved kjøp. Prisen beregnes på nytt etter gjeldende kampanje.

Kostnader i historikken

Modell, tokener og beløp lagres for hver forespørsel.

[Velg abonnement](https://ailoot.ai/docs/nb/billing/subscriptions/) · [Se modellpriser](https://ailoot.ai/models/nb/)

## Koble API-et til produktet du selger.

SaaS, apper og boter etter Ailoots offentlige tilbud og lisensavtale. Be om forhandlerlisens for videresalg.

Kommersiell applikasjon

Bygg tekst-, bilde-, video- og lydgenerering inn i betalte funksjoner i tjenesten.

Forhandlerlisens

Send prosjektbeskrivelse og tilgangsopplegg. Be om skriftlige vilkår for bruk og videresalg.

Dokumenter på nettstedet

Offentlig tilbud, lisensavtale og retningslinjer for databehandling er tilgjengelige før tilkobling.

[Be om forhandlerlisens](mailto:support@ailoot.ai) · [Offentlig tilbud og lisensavtale](https://ailoot.ai/legal/offer?lang=nb)

## Ailoot · Selskapet og dets prosjektportefølje





Ailoot bygger på etablert driftserfaring, en stor kundebase, stabil tjeneste og løpende KPI-kontroll.





Selskapet og dets prosjektportefølje: millioner av kunder; månedlig salg for milliarder.





Ailoot bruker denne driftserfaringen til API-tilgang til AI-funksjoner i kundenes produkter, agenter, applikasjoner og automatiseringer.
