modelli

VoyageAI by MongoDB: voyage-code-4

Markdown · JSON

VoyageAI by MongoDB: voyage-code-4

Voyage AI voyage-code-4 è un modello di embedding del codice per trovare sorgenti pertinenti a partire da domande, descrizioni di problemi e obiettivi di agenti di programmazione. Supporta input di 32.000 token e 256, 512, 1024 o 2048 dimensioni, con rappresentazioni a virgola mobile e quantizzate.

Informazioni sul modello

Questa descrizione illustra le funzionalità del modello. Gli input, gli output e le opzioni disponibili in Ailoot per il metodo selezionato sono elencati di seguito.

voyage-code-4 è il modello di embedding specializzato nel codice di Voyage AI per la ricerca nei repository e il recupero di informazioni per gli agenti di programmazione. È progettato per aiutare a trovare sorgenti pertinenti quando il punto di partenza è una domanda, un sintomo o una descrizione dell’attività anziché un identificatore noto. Rappresenta codice e informazioni testuali come vettori numerici per il recupero; non modifica il repository e non genera una correzione.

Recuperare codice a partire dal problema esaminato

Il produttore descrive un corpus di addestramento selezionato da pull request completate, che collega query in linguaggio naturale e codice. È una distinzione significativa rispetto a esempi di addestramento costruiti principalmente attorno a file sorgenti e relative docstring: l’attività di recupero può partire dal comportamento da indagare.

Prepara una query come «Trova dove un risultato vuoto fa segnalare come fallita un’operazione riuscita». Indicizza sezioni sorgenti leggibili con percorsi di file e commenti pertinenti. Mantieni le condizioni che circondano la funzione quando ne spiegano il comportamento. Un candidato restituito dovrebbe riportare il lettore o l’agente alla sezione sorgente che rappresenta.

Il recupero semantico può affiancare la ricerca esatta di identificatori e quella a testo integrale. Se il nome di una funzione è già noto, una ricerca esatta rimane utile. Se è noto soltanto un sintomo, la ricerca vettoriale può fornire candidati da esaminare e affinare con un’altra query.

Ruoli di query e documento

Le indicazioni di recupero di Voyage distinguono la query dal documento del corpus attraverso i tipi di input query/document. Per la ricerca nel codice, usa la descrizione del problema o dell’attività come query e il sorgente o la documentazione indicizzati come documento. La ricetta pubblicata aggiunge istruzioni di recupero specifiche del ruolo durante la codifica.

Mantieni disponibili al di fuori del vettore la formattazione originale del codice, i nomi e la documentazione pertinente. Per una sezione sorgente, conserva il percorso del file e la posizione; per una guida di programmazione, conserva il titolo. Dopo il recupero, esamina il codice effettivo e i suoi chiamanti prima di scegliere una modifica. La pertinenza di un candidato non stabilisce che sia l’unica causa di un problema segnalato.

Contesto e scelte di rappresentazione

La lunghezza di contesto pubblicata per il modello esatto è di 32.000 token. Il suo embedding predefinito ha 1024 dimensioni, con 256, 512 e 2048 dimensioni anch’esse supportate tramite apprendimento Matryoshka. L’annuncio documenta rappresentazioni a virgola mobile a 32 bit, interi a 8 bit con e senza segno e rappresentazioni binarie.

Seleziona una dimensione e una rappresentazione per la raccolta e mantienile con i metadati. I vettori a virgola mobile e le rappresentazioni quantizzate richiedono la gestione corrispondente di memorizzazione e confronto. Una rappresentazione binaria codifica l’informazione vettoriale diversamente da un elenco di normali coordinate a virgola mobile; preserva questa distinzione quando prepari i risultati per la ricerca.

Per un file lungo, scegli sezioni coerenti le cui posizioni sorgenti possano essere recuperate. Una funzione può richiedere una definizione di tipo o un commento adiacenti per spiegare una condizione, mentre un file intero eccessivamente grande può includere materiale non pertinente. Mantieni la sezione allineata all’attività da cercare anziché trattare il contesto massimo come dimensione preferita del segmento.

Usare il sorgente recuperato come evidenza

Un flusso concreto di agente di programmazione recupera sorgenti candidati, legge quei file, segue riferimenti pertinenti e restringe la ricerca con il progredire dell’indagine. Il testo recuperato diventa contesto per la fase di ragionamento o modifica. Mantieni la sua associazione con la revisione indicizzata del repository, affinché un candidato sia esaminato rispetto al sorgente corretto.

Il contributo specifico dell’edizione voyage-code-4 è l’attenzione al passaggio di recupero dal problema al codice usato dagli agenti di programmazione, insieme a dimensioni e rappresentazioni flessibili. Il suo output è un vettore di recupero, mentre diagnosi, modifica e validazione rimangono attività separate basate sul repository effettivo.

Ailoot Ultra · Embedding POST /v1/embeddings voyageai/voyage-code-4

voyageai/voyage-code-4

VoyageAI by MongoDB /voyageai/voyage-code-4

Introduzione

Voyage AI voyage-code-4 è un modello di embedding del codice per trovare sorgenti pertinenti a partire da domande, descrizioni di problemi e obiettivi di agenti di programmazione. Supporta input di 32.000 token e 256, 512, 1024 o 2048 dimensioni, con rappresentazioni a virgola mobile e quantizzate.

Input accettati
Testo · token_ids
Risultati
embedding

Disponibile in Ailoot · input e metodi

Ailoot Ultra · Embedding POST /v1/embeddings
Tipi di input
text, token_ids
Tipi di output
embedding
Contesto
32.000 tokens
Formato di output
json
CampoTipoRequisitoValori e limitiPredefinito
CampomodelTipostringRequisitoObbligatorioValori e limiti
voyageai/voyage-code-4
Predefinito—
CampoinputTipostring|string[]|integer[]|integer[][]RequisitoObbligatorioValori e limiti
Numero minimo di elementi: 1
Condizioni: Batch omogeneo non vuoto. Gli ID dei token sono numeri interi non negativi.
Budget di input: Massimo: 32.000 · Unità di testo: byte UTF8 · Unità di token: elementi dell’array di token
Predefinito—
Campoencoding_formatTipostringRequisitoFacoltativoValori e limiti
float
Predefinitofloat
CampodimensionsTipointegerRequisitoNon supportatoValori e limiti
Minimo: 1
Predefinito—
CampouserTipojson_valueRequisitoFacoltativoValori e limiti
Condizioni: La fonte consente questo campo di metadati JSON; la semantica esatta del fornitore a monte dipende dal modello.
Predefinito—
Camposession_idTipojson_valueRequisitoFacoltativoValori e limiti
Condizioni: La fonte consente questo campo di metadati JSON; la semantica esatta del fornitore a monte dipende dal modello.
Predefinito—
CampotraceTipojson_valueRequisitoFacoltativoValori e limiti
Condizioni: La fonte consente questo campo di metadati JSON; la semantica esatta del fornitore a monte dipende dal modello.
Predefinito—
CampoproviderTipoobjectRequisitoFacoltativoValori e limiti
Condizioni: provider.options rifiutato
Predefinito—
Combinazioni di materiali in input

text_to_embedding

Parametri e ciclo di vita del metodo
ParametroContratto
Parametrocontent_typeContrattoapplication/json
ParametrorequiredContrattomodel, input
Parametroinput_shapesContrattostring, string[], nonnegative_integer_token_array, nonnegative_integer_token_array[]
Parametroencoding_formatContrattofloat
Parametrodimensions_overrideContrattofalse
Parametromax_input_budget_unitsContratto32000
Parametromultimodal_objectsContrattofalse
Parametromaterial_typesContrattotext, token_ids

Ciclo di vita: synchronous_json

Conserva l'indice e la dimensione di ogni vettore.

Il nome del modello multimodale non consente oggetti immagine su questo percorso specifico.

Tariffe

Le tariffe non aggiungono opzioni alla richiesta. I parametri supportati sono elencati nel metodo selezionato.

Modalità rapida
Tariffa standard Quando è selezionata la modalità rapida
Modalità flex
Tariffa standard Quando è selezionata la modalità flex
Sforzo massimo di ragionamento
Tariffa standard Quando lo sforzo massimo di ragionamento usa l'adeguamento predefinito (default)

Tariffe Ailoot

Prezzi per configurazione

ConfigurazioneListino delle tariffeCosto
ConfigurazioneTariffe di base dei tokenListino delle tariffeTariffa baseCosto
Input · Token in input $0.00024 / 1K token
Output · Token in output $0 / 1K token
Input · Lettura dalla cache — / 1K token
Input · Scrittura nella cache — / 1K token
Input · Scrittura nella cache, 1 ora — / 1K token

Ailoot prenota un importo stimato prima di una richiesta. Dopo il risultato, addebita il costo finale in base all’utilizzo misurato. Per lo streaming, l’addebito usa il record finale di utilizzo. Come funzionano la prenotazione e l’addebito finale →

Esempi di richieste

Ailoot Ultra · Embedding

curlPython SDK
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
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)

Ricevi e salva i risultati

Ailoot Ultra · Embedding

json

Conserva tutti i risultati completati

Conserva ogni risposta, file e parte di contenuto restituiti per intero.

Conserva ogni vettore con il suo indice. Il numero di vettori deve coincidere con il numero di input; le dimensioni devono essere coerenti.

Se occorre verificare la risposta originale

Non viene introdotto alcun endpoint per i job di embedding.

Campi della risposta
CampoTipo
CampoobjectTipostring
CampomodelTipostring
Campodata[].indexTipointeger
Campodata[].embeddingTipofinite float[]
CampousageTipoobject
Errori e passaggi successivi
RispostaCondizionePassaggio successivo
Risposta400 · invalid_request_errorCondizioneCampi obbligatori, rappresentazione del materiale o valore del parametro non validiPassaggio successivoCorreggi i campi indicati prima di una nuova richiesta di creazione.

Alias

Alias del modello

Ailoot Ultra voyageai/voyage-code-4

Alias dei percorsi dei metodi

Usa i percorsi dei metodi indicati sopra.

ID di chiamata correlati

voyageai/voyage-code-4

FAQ · VoyageAI by MongoDB: voyage-code-4
Quali input e risultati sono disponibili?

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

Quali campi usa la richiesta?

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

Quali limiti si applicano?

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

Maggiori dettagli

Collega Ailoot a Claude Code, OpenCode, Hermes o alla tua applicazione.

L’azienda e il suo portafoglio di progetti

L’azienda e il suo portafoglio di progetti: milioni di clienti; vendite nell’ordine dei miliardi ogni mese.

Acquista token con uno sconto.

Sconto con abbonamento per lavoro regolare. Codici fino al 50% sull’acquisto di token.

Abbonamento
Scegli un piano scontato per richieste regolari.
Codice fino al 50%
Inserisci il codice all’acquisto. Il prezzo si aggiorna secondo la promozione.
Spese nella cronologia
Modello, token e importo sono salvati per ogni richiesta.

Scegli abbonamento · Consulta prezzi dei modelli

Collega l’API al prodotto che vendi.

SaaS, app e bot secondo offerta e accordo di licenza Ailoot. Per rivendere, richiedi una licenza reseller.

Applicazione commerciale
Integra generazione di testo, immagini, video e suono nelle funzioni a pagamento.
Licenza reseller
Invia descrizione del progetto e schema di accesso. Richiedi condizioni scritte per uso e rivendita.
Documenti sul sito
Offerta, accordo di licenza e politica sui dati sono disponibili prima della connessione.

Richiedi licenza reseller · Offerta e accordo di licenza