VoyageAI by MongoDB: voyage-multimodal-3.5
Voyage AI voyage-multimodal-3.5 encode le texte, les images et les images vidéo dans un espace partagé de recherche d’information. Il traite des contenus entrelacés, tels que des captures de documents, des tableaux et des scènes, avec des entrées de 32 000 tokens et une représentation par défaut de 1024 dimensions.
À propos du modèle
Cette description présente les capacités du modèle. Les entrées, sorties et options disponibles dans Ailoot pour la méthode sélectionnée figurent ci-dessous.
voyage-multimodal-3.5 est le modèle de plongement de Voyage AI pour la recherche dans le texte, les images et la vidéo. Il traite du texte et du contenu visuel entrelacés au moyen d’un encodeur transformer unique, en représentant une entrée multimodale complète dans un espace vectoriel partagé. L’édition 3.5 ajoute la prise en charge explicite des images vidéo et des dimensions de plongement flexibles.
Préserver la relation entre texte et éléments visuels
Préparez une page ou une section de document sous une forme préservant ses informations visuelles utiles. Une diapositive contenant un graphique et une courte explication peut être représentée par son image et le texte associé dans la même entrée ordonnée. Pour une collection fondée sur des PDF, l’entrée visuelle documentée est une capture de page ou une autre représentation du document sous forme d’image.
Pour un graphique de rapport, gardez le titre, les libellés des axes et la légende dans l’image. Joignez du texte explicatif lorsqu’il apporte le contexte nécessaire à l’interprétation du visuel. Stockez le numéro de page et l’identifiant de la source avec le vecteur obtenu, afin qu’un candidat retrouvé permette d’ouvrir la page pertinente plutôt que de simplement renvoyer un nom de document.
Le format d’entrée du fabricant prend en charge des séquences de texte, d’images et de vidéos. Ses formats d’image publiés sont PNG, JPEG, WebP et GIF, avec MP4 pour la vidéo. Le contenu visuel peut être représenté par des URL ou des données Base64 selon la recette documentée ; gardez un même style de représentation au sein d’une requête.
Retrouver une scène plutôt qu’une longue vidéo entière
Le modèle représente la vidéo comme une séquence ordonnée d’images. Le fabricant recommande de diviser une longue vidéo en scènes liées, d’aligner les limites des scènes sur les horodatages disponibles de la transcription et de conserver le texte de transcription correspondant. Une résolution plus basse ou une fréquence d’images réduite peuvent aider une scène sémantiquement continue à tenir dans son budget de contexte.
Pour une collection de vidéos de formation, une requête pourrait demander la scène montrant le réglage d’une commande particulière. Associez chaque scène indexée à sa plage temporelle. Renvoyez la scène correspondante et examinez les images ou l’extrait d’origine pour vérifier l’action réelle, plutôt que de traiter le vecteur retrouvé comme une description écrite de tout l’enregistrement.
Le texte de transcription peut contribuer lorsqu’il est préparé comme une partie de l’entrée multimodale. Le plongement des images vidéo ne fournit pas lui-même de transcription vocale.
Contexte et limites de préparation
La longueur de contexte annoncée est de 32 000 tokens par entrée. Voyage compte chaque ensemble de 560 pixels d’image et de 1120 pixels vidéo comme un token dans son calcul publié ; le contenu visuel partage donc ce budget avec le texte. Les limites documentées comprennent aussi 16 millions de pixels et 20 MB par image, ainsi que 20 MB par vidéo. Une liste contient au maximum 1000 entrées et 320 000 tokens cumulés.
Le réglage de troncature par défaut coupe une entrée trop longue ; si cette limite tombe au milieu d’une image, l’image entière est supprimée. Préparer des pages ou des scènes complètes dans le budget préserve donc un contenu d’entrée plus prévisible. L’autre réglage documenté rejette les entrées trop longues au lieu de les tronquer.
Dimensions vectorielles et rôles de recherche
La dimension de sortie par défaut est de 1024, avec des dimensions de 256, 512 et 2048 également documentées pour cette édition. L’annonce décrit des plongements Matryoshka et des représentations à virgule flottante, en entiers signés ou non signés de 8 bits, et binaires. Conservez la dimension et la représentation choisies avec l’index.
La recette de recherche de Voyage distingue les entrées de requête et de document. Une requête peut être du texte ou une image, et les documents indexés peuvent combiner texte et éléments visuels. Un vecteur représente chaque séquence d’entrée complète ; stockez son association avec la page source, l’image ou la scène afin que le résultat classé reste examinable.
Utiliser la source visuelle renvoyée
Une étape de recherche peut trouver une page de rapport, un tableau, une diapositive ou une scène pertinents pour la requête. L’étape de rédaction de réponse ou d’analyse lit ensuite cette source. Pour un tableau, examinez les en-têtes et les valeurs réels avant d’utiliser un résultat ; pour une scène, examinez les images pertinentes et le texte associé.
La différence substantielle par rapport à voyage-multimodal-3 est la prise en charge explicite de la vidéo et les choix supplémentaires de représentation de l’édition 3.5. Ce sont des capacités de plongement pour retrouver des sources, avec des vecteurs numériques en sortie plutôt que des images, une vidéo ou une réponse narrative générées.
Ailoot Ultra · Embeddings POST /v1/embeddings voyageai/voyage-multimodal-3.5
voyageai/voyage-multimodal-3.5
voyageai/voyage-multimodal-3.5Premiers pas
Voyage AI voyage-multimodal-3.5 encode le texte, les images et les images vidéo dans un espace partagé de recherche d’information. Il traite des contenus entrelacés, tels que des captures de documents, des tableaux et des scènes, avec des entrées de 32 000 tokens et une représentation par défaut de 1024 dimensions.
- Entrées acceptées
- Texte · token_ids
- Résultats
- embedding
Disponible dans Ailoot · entrées et méthodes
Ailoot Ultra · Embeddings POST /v1/embeddings
- Entrée
text,token_ids- Sortie
embedding- Contexte
- 32 000 tokens
- Format de sortie
- json
| Champ | Type | Exigence | Valeurs et limites | Par défaut |
|---|---|---|---|---|
Champmodel | Typestring | ExigenceObligatoire | Valeurs et limites voyageai/voyage-multimodal-3.5 | Par défaut— |
Champinput | Typestring|string[]|integer[]|integer[][] | ExigenceObligatoire | Valeurs et limites Nombre minimal d’éléments: 1 Conditions: Lot homogène non vide. Les identifiants de jetons sont des entiers positifs ou nuls. Budget d’entrée : Maximum: 32 000 · Unité de texte: octets UTF8 · Unité de tokens: éléments du tableau de tokens | Par défaut— |
Champencoding_format | Typestring | ExigenceFacultatif | Valeurs et limites float | Par défautfloat |
Champdimensions | Typeinteger | ExigenceNon pris en charge | Valeurs et limites Minimum: 1 | Par défaut— |
Champuser | Typejson_value | ExigenceFacultatif | Valeurs et limites Conditions: Le code source autorise ce champ de métadonnées JSON ; sa sémantique exacte en amont dépend du modèle. | Par défaut— |
Champsession_id | Typejson_value | ExigenceFacultatif | Valeurs et limites Conditions: Le code source autorise ce champ de métadonnées JSON ; sa sémantique exacte en amont dépend du modèle. | Par défaut— |
Champtrace | Typejson_value | ExigenceFacultatif | Valeurs et limites Conditions: Le code source autorise ce champ de métadonnées JSON ; sa sémantique exacte en amont dépend du modèle. | Par défaut— |
Champprovider | Typeobject | ExigenceFacultatif | Valeurs et limites Conditions: provider.options est refusé | Par défaut— |
Combinaisons d’éléments d’entrée
text_to_embedding
Paramètres et cycle de vie de la méthode
| Paramètre | Contrat |
|---|---|
Paramètrecontent_type | Contratapplication/json |
Paramètrerequired | Contratmodel, input |
Paramètreinput_shapes | Contratstring, string[], nonnegative_integer_token_array, nonnegative_integer_token_array[] |
Paramètreencoding_format | Contratfloat |
Paramètredimensions_override | Contratfalse |
Paramètremax_input_budget_units | Contrat32000 |
Paramètremultimodal_objects | Contratfalse |
Paramètrematerial_types | Contrattext, token_ids |
Cycle de vie : synchronous_json
Conservez tous les indices et toutes les dimensions des vecteurs.
Un nom de modèle multimodal n’autorise pas les objets image sur ce chemin précis.
Tarifs
Les tarifs n’ajoutent pas d’options de requête. Les paramètres pris en charge figurent dans la méthode sélectionnée.
- Mode rapide
- Tarif standard Lorsque le mode rapide est sélectionné
- Mode Flex
- Tarif standard Lorsque le mode flex est sélectionné
- Effort de raisonnement maximal
- Tarif standard Lorsque l’effort de raisonnement maximal utilise l’ajustement par défaut (default)
Tarifs Ailoot
Prix par configuration
| Configuration | Barème tarifaire | Coût |
|---|---|---|
| ConfigurationTarifs de base des tokens | Barème tarifaireTarif de base | Coût Entrée · Tokens en entrée $0.00024 / 1K tokens Sortie · Tokens en sortie $0 / 1K tokens Entrée · Lecture du cache — / 1K tokens Entrée · Écriture dans le cache — / 1K tokens Entrée · Écriture dans le cache, 1 h — / 1K tokens |
Ailoot réserve un montant estimé avant une requête. Après le résultat, le montant final est débité selon l’utilisation mesurée. Pour le streaming, le montant final à débiter est calculé à partir du relevé final d’utilisation. Fonctionnement de la réservation et du débit →
Exemples de requêtes
Ailoot Ultra · Embeddings
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-multimodal-3.5", "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-multimodal-3.5',input=["First document","Second document"])
print(result)
for item in result.data:print(item.index,item.embedding)
Recevoir et enregistrer les résultats
Ailoot Ultra · Embeddings
json
Conserver tous les résultats terminés
Conservez chaque réponse, fichier et partie de contenu renvoyés dans leur intégralité.
Conservez chaque vecteur avec son indice. Le nombre de vecteurs doit être égal au nombre d’entrées ; les dimensions doivent être cohérentes.
Si la réponse d’origine doit être vérifiée
Aucun point de terminaison dédié aux tâches d’embedding n’est ajouté.
Champs de la réponse
| Champ | Type |
|---|---|
Champobject | Typestring |
Champmodel | Typestring |
Champdata[].index | Typeinteger |
Champdata[].embedding | Typefinite float[] |
Champusage | Typeobject |
Erreurs et étapes suivantes
| Réponse | Condition | Étape suivante |
|---|---|---|
Réponse400 · invalid_request_error | ConditionChamps obligatoires, représentation des contenus ou valeur de paramètre non valides | Étape suivanteCorrigez les champs indiqués avant une nouvelle requête de création. |
Alias
Alias du modèle
Ailoot Ultra voyageai/voyage-multimodal-3.5
Alias des chemins de méthode
Utilisez les chemins de méthode indiqués ci-dessus.
ID d’appel associés
FAQ · VoyageAI by MongoDB: voyage-multimodal-3.5
- Quelles entrées et quels résultats sont disponibles ?
POST /v1/embeddings·voyageai/voyage-multimodal-3.5:text,token_ids→embedding- Quels champs la requête utilise-t-elle ?
POST /v1/embeddings·voyageai/voyage-multimodal-3.5:model,input,encoding_format,provider- Quelles limites s’appliquent ?
POST /v1/embeddings·voyageai/voyage-multimodal-3.5:ctx:32000;input.budget.maximum:32000(octets UTF8);input.min_items:1