Modelle

VoyageAI by MongoDB: voyage-code-4

Markdown · JSON

VoyageAI by MongoDB: voyage-code-4

Voyage AI voyage-code-4 ist ein Code-Embedding-Modell zum Auffinden relevanten Quellcodes anhand von Fragen, Problembeschreibungen und Zielen von Programmieragenten. Es unterstützt Eingaben mit 32.000 Tokens und 256, 512, 1024 oder 2048 Dimensionen sowie Gleitkomma- und quantisierte Repräsentationen.

Über das Modell

Diese Beschreibung erläutert die Fähigkeiten des Modells. Die über Ailoot verfügbaren Eingaben, Ausgaben und Optionen sind unten für die ausgewählte Methode aufgeführt.

voyage-code-4 ist das auf Code spezialisierte Embedding-Modell von Voyage AI für Repository-Suche und die Informationssuche von Programmieragenten. Es soll helfen, relevanten Quellcode zu finden, wenn der Ausgangspunkt eine Frage, ein Symptom oder eine Aufgabenbeschreibung statt einer bekannten Kennung ist. Es repräsentiert Code und textliche Informationen als numerische Vektoren für die Suche; es bearbeitet das Repository nicht und erzeugt keine Fehlerbehebung.

Code anhand des untersuchten Problems abrufen

Der Hersteller beschreibt einen Trainingskorpus, der aus abgeschlossenen Pull Requests zusammengestellt wurde und natürlichsprachliche Anfragen mit Code verknüpft. Dies ist ein bedeutsamer Unterschied zu Trainingsbeispielen, die hauptsächlich aus Quelldateien und deren Docstrings bestehen: Die Suchaufgabe kann bei dem Verhalten beginnen, das untersucht werden muss.

Bereiten Sie eine Anfrage wie „Finde die Stelle, an der ein leeres Ergebnis dazu führt, dass ein erfolgreicher Vorgang als Fehler gemeldet wird“ vor. Indizieren Sie lesbare Quellcodeabschnitte mit ihren Dateipfaden und relevanten Kommentaren. Bewahren Sie die umgebenden Bedingungen einer Funktion, wenn sie ihr Verhalten erklären. Ein zurückgegebener Kandidat sollte Leser oder Agenten zu dem Quellcodeabschnitt zurückführen, den er repräsentiert.

Semantische Suche kann die exakte Kennungs- und Volltextsuche ergänzen. Ist ein Funktionsname bereits bekannt, bleibt eine exakte Suche nützlich. Ist nur ein Symptom bekannt, kann Vektorsuche Kandidaten zur Untersuchung liefern, die sich mit einer weiteren Anfrage eingrenzen lassen.

Rollen von Anfrage und Dokument

Voyages Suchhinweise unterscheiden die Anfrage vom Korpusdokument durch die Eingabetypen query/document. Verwenden Sie bei der Codesuche die Problem- oder Aufgabenbeschreibung als Anfrage und den indizierten Quellcode oder die Dokumentation als Dokument. Das veröffentlichte Rezept fügt bei der Embedding-Berechnung rollenspezifische Suchinstruktionen hinzu.

Halten Sie die ursprüngliche Formatierung, Namen und relevante Dokumentation des Codes außerhalb des Vektors verfügbar. Bewahren Sie bei einem Quellcodeabschnitt Dateipfad und Position, bei einer Programmieranleitung die Überschrift. Prüfen Sie nach dem Abruf den tatsächlichen Code und seine Aufrufer, bevor Sie eine Änderung wählen. Die Relevanz eines Kandidaten belegt nicht, dass er die einzige Ursache eines gemeldeten Problems ist.

Kontext und Repräsentationsmöglichkeiten

Die veröffentlichte Kontextlänge dieses konkreten Modells beträgt 32.000 Tokens. Sein Standard-Embedding hat 1024 Dimensionen; durch Matryoshka-Lernen werden auch 256, 512 und 2048 Dimensionen unterstützt. Die Ankündigung dokumentiert 32-Bit-Gleitkomma-, vorzeichenbehaftete und vorzeichenlose 8-Bit-Ganzzahl- sowie binäre Repräsentationen.

Wählen Sie eine Dimension und Repräsentation für die Sammlung und speichern Sie diese in ihren Metadaten. Gleitkommavektoren und quantisierte Repräsentationen erfordern die jeweils passende Speicherung und Vergleichsverarbeitung. Eine binäre Repräsentation kodiert Vektorinformationen anders als eine Liste gewöhnlicher Gleitkommakoordinaten; bewahren Sie diese Unterscheidung bei der Vorbereitung von Suchergebnissen.

Wählen Sie bei einer langen Datei zusammenhängende Abschnitte, deren Quellpositionen wiedergefunden werden können. Eine Funktion kann eine benachbarte Typdefinition oder einen Kommentar benötigen, um eine Bedingung zu erklären, während eine ganze übergroße Datei sachfremdes Material enthalten kann. Richten Sie den Abschnitt an der gesuchten Aufgabe aus, statt den maximalen Kontext als bevorzugte Abschnittsgröße zu behandeln.

Abgerufenen Quellcode als Beleg verwenden

Ein praktischer Workflow für Programmieragenten ruft mögliche Quellcodeabschnitte ab, liest diese Dateien, folgt relevanten Verweisen und grenzt die Suche im Verlauf der Untersuchung ein. Der abgerufene Text wird zum Kontext für den Denk- oder Bearbeitungsschritt. Bewahren Sie seine Zuordnung zur indizierten Repository-Revision, damit ein Kandidat anhand des richtigen Quellcodes geprüft wird.

Der ausgabespezifische Beitrag von voyage-code-4 ist der Schwerpunkt auf dem von Programmieragenten verwendeten Schritt von der Problembeschreibung zum relevanten Code, zusammen mit flexiblen Dimensionen und Repräsentationen. Seine Ausgabe ist ein Suchvektor; Diagnose, Bearbeitung und Validierung bleiben separate, im tatsächlichen Repository verankerte Aufgaben.

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

voyageai/voyage-code-4

VoyageAI by MongoDB /voyageai/voyage-code-4

Start

Voyage AI voyage-code-4 ist ein Code-Embedding-Modell zum Auffinden relevanten Quellcodes anhand von Fragen, Problembeschreibungen und Zielen von Programmieragenten. Es unterstützt Eingaben mit 32.000 Tokens und 256, 512, 1024 oder 2048 Dimensionen sowie Gleitkomma- und quantisierte Repräsentationen.

Zulässige Eingaben
Text · token_ids
Ergebnisse
embedding

In Ailoot verfügbar · Eingaben und Methoden

Ailoot Ultra · Embeddings POST /v1/embeddings
Eingabetypen
text, token_ids
Ausgabetypen
embedding
Kontext
32.000 tokens
Ausgabeformat
json
FeldTypAnforderungWerte und LimitsStandard
FeldmodelTypstringAnforderungErforderlichWerte und Limits
voyageai/voyage-code-4
Standard—
FeldinputTypstring|string[]|integer[]|integer[][]AnforderungErforderlichWerte und Limits
Mindestanzahl Elemente: 1
Bedingungen: Nicht leerer, homogener Batch. Token-IDs sind nichtnegative Ganzzahlen.
Eingabebudget: Maximum: 32.000 · Texteinheit: UTF8-Bytes · Tokeneinheit: Elemente des Token-Arrays
Standard—
Feldencoding_formatTypstringAnforderungOptionalWerte und Limits
float
Standardfloat
FelddimensionsTypintegerAnforderungNicht unterstütztWerte und Limits
Minimum: 1
Standard—
FelduserTypjson_valueAnforderungOptionalWerte und Limits
Bedingungen: Der Quellcode erlaubt dieses JSON-Metadatenfeld; die genaue Semantik beim vorgelagerten Anbieter ist modellspezifisch.
Standard—
Feldsession_idTypjson_valueAnforderungOptionalWerte und Limits
Bedingungen: Der Quellcode erlaubt dieses JSON-Metadatenfeld; die genaue Semantik beim vorgelagerten Anbieter ist modellspezifisch.
Standard—
FeldtraceTypjson_valueAnforderungOptionalWerte und Limits
Bedingungen: Der Quellcode erlaubt dieses JSON-Metadatenfeld; die genaue Semantik beim vorgelagerten Anbieter ist modellspezifisch.
Standard—
FeldproviderTypobjectAnforderungOptionalWerte und Limits
Bedingungen: provider.options abgelehnt
Standard—
Kombinationen von Eingabematerialien

text_to_embedding

Methodenparameter und Lebenszyklus
ParameterVertrag
Parametercontent_typeVertragapplication/json
ParameterrequiredVertragmodel, input
Parameterinput_shapesVertragstring, string[], nonnegative_integer_token_array, nonnegative_integer_token_array[]
Parameterencoding_formatVertragfloat
Parameterdimensions_overrideVertragfalse
Parametermax_input_budget_unitsVertrag32000
Parametermultimodal_objectsVertragfalse
Parametermaterial_typesVertragtext, token_ids

Lebenszyklus: synchronous_json

Jeden Vektorindex und jede Dimension beibehalten.

Ein multimodaler Modellname erlaubt auf genau diesem Pfad keine Bildobjekte.

Tarife

Tarifangaben erweitern die Anfrageoptionen nicht. Unterstützte Parameter stehen bei der ausgewählten Methode.

Schnellmodus
Standardtarif Wenn der Schnellmodus ausgewählt ist
Flex-Modus
Standardtarif Wenn der Modus flex ausgewählt ist
Maximaler Denkaufwand
Standardtarif Wenn beim maximalen Denkaufwand die Standardanpassung (default) verwendet wird

Ailoot-Tarife

Preise nach Konfiguration

KonfigurationTarifstaffelGebühr
KonfigurationBasistarife für TokenTarifstaffelGrundtarifGebühr
Eingabe · Eingabetoken $0.00024 / 1K Token
Ausgabe · Ausgabetoken $0 / 1K Token
Eingabe · Cache-Lesen — / 1K Token
Eingabe · Cache-Schreiben — / 1K Token
Eingabe · Cache-Schreiben, 1 Stunde — / 1K Token

Ailoot reserviert vor einer Anfrage einen geschätzten Betrag. Nach dem Ergebnis rechnet Ailoot die endgültige Gebühr anhand des gemessenen Verbrauchs ab. Bei Streaming erfolgt die Abrechnung anhand des abschließenden Verbrauchsdatensatzes. So funktionieren Reservierung und Abrechnung →

Beispielanfragen

Ailoot Ultra · Embeddings

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)

Ergebnisse abrufen und speichern

Ailoot Ultra · Embeddings

json

Alle fertiggestellten Ergebnisse aufbewahren

Bewahren Sie jede vollständig zurückgegebene Antwort, Datei und jeden Inhaltsteil auf.

Jeden Vektor mit seinem Index beibehalten. Die Anzahl der Vektoren muss der Anzahl der Eingaben entsprechen; die Dimensionen müssen konsistent sein.

Wenn die ursprüngliche Antwort geprüft werden muss

Es wird kein Endpunkt für Embedding-Aufträge eingeführt.

Antwortfelder
FeldTyp
FeldobjectTypstring
FeldmodelTypstring
Felddata[].indexTypinteger
Felddata[].embeddingTypfinite float[]
FeldusageTypobject
Fehler und nächste Schritte
AntwortBedingungNächster Schritt
Antwort400 · invalid_request_errorBedingungPflichtfelder, Darstellung des Eingabematerials oder Parameterwert ungültigNächster SchrittDie angegebenen Felder vor einer neuen Erstellungsanfrage korrigieren.

Aliasnamen

Modellaliasnamen

Ailoot Ultra voyageai/voyage-code-4

Aliasnamen für Methodenpfade

Verwenden Sie die oben angezeigten Methodenpfade.

Zugehörige Aufrufer-IDs

voyageai/voyage-code-4

FAQ · VoyageAI by MongoDB: voyage-code-4
Welche Eingaben und Ergebnisse sind verfügbar?

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

Welche Felder verwendet die Anfrage?

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

Welche Grenzen gelten?

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

Weitere Details

Verbinden Sie Ailoot mit Claude Code, OpenCode, Hermes oder Ihrer eigenen Anwendung.

Das Unternehmen und sein Projektportfolio

Das Unternehmen und sein Projektportfolio: Millionen von Kunden; monatliche Umsätze in Milliardenhöhe.

Tokens mit Rabatt kaufen.

Aborabatt für regelmäßige Arbeit. Aktionscodes bieten bis 50% beim Tokenkauf.

Abo
Wählen Sie einen Tarif mit Rabatt für Ihre regelmäßigen Anfragen.
Aktionscode bis 50%
Geben Sie den Code beim Kauf ein. Der Preis wird nach den gültigen Aktionsbedingungen berechnet.
Ausgaben in der Historie
Modell, Tokens und Betrag werden für jede Anfrage gespeichert.

Abo wählen · Modellpreise ansehen

Verbinden Sie die API mit dem Produkt, das Sie verkaufen.

SaaS, Anwendungen und Bots nach dem offiziellen Angebot und Lizenzvertrag von Ailoot. Fordern Sie für den Weiterverkauf eine Reseller-Lizenz an.

Kommerzielle Anwendung
Integrieren Sie Text-, Bild-, Video- und Audioerzeugung in kostenpflichtige Funktionen Ihres Dienstes.
Reseller-Lizenz
Senden Sie Projektbeschreibung und Zugangsmodell. Fordern Sie schriftliche Nutzungs- und Weiterverkaufsbedingungen an.
Dokumente auf der Website
Offizielles Angebot, Lizenzvertrag und Datenschutzerklärung sind vor der Verbindung zugänglich.

Reseller-Lizenz anfordern · Offizielles Angebot und Lizenzvertrag