Puedes acceder a los modelos de Voyage IA utilizando la API de Embedding y Reordenación, que está disponible a través de MongoDB Atlas. Utiliza los siguientes métodos para acceder a la API:
REST API: para un acceso agnóstico del lenguaje.
Cliente de Python: cliente oficial para facilitar su uso.
Cliente TypeScript: cliente oficial para aplicaciones TypeScript y JavaScript.
Esta página resume cómo acceder a la API. Para obtener detalles completos sobre la API, incluidos los lÃmites de velocidad y los niveles de uso, consulta la Referencia de API.
Claves de API
La Embedding and Reranking API utiliza claves de API para supervisar el uso y gestionar los permisos. Para crear y gestionar las claves de API de su modelo, utilice la interfaz de usuario de MongoDB Atlas. Para obtener instrucciones, consulte Gestionar claves de API del modelo Voyage AI.
REST API
Los siguientes ejemplos demuestran cómo llamar al servicio de incrustación a través de la REST API. La API admite solicitudes cURL y HTTP desde cualquier lenguaje de programación.
La autenticación se maneja a través de la Clave API del modelo, que debe incluir en el encabezado de autorización de cada solicitud de API como un token Bearer.
Para obtener más información, consulte la especificación completa de la API.
Puntos de conexión con ámbito
Nota
Vista previa pública
La geografÃa de Europa y su endpoint, eu.ai.mongodb.com, están disponibles como funcionalidad de vista previa pública. La funcionalidad y la documentación correspondiente pueden cambiar en cualquier momento durante el perÃodo de vista previa.
Si la clave de API de su modelo está limitada a una geografÃa, envÃe sus solicitudes al endpoint de esa geografÃa en lugar de ai.mongodb.com. El cuerpo de la solicitud, los encabezados y el formato de respuesta no cambian. Solo cambia el host.
Endpoint | GeografÃa |
|---|---|
| Sin ámbito. Atlas puede servir la solicitud desde cualquier geografÃa. |
| Europa |
| Estados Unidos |
Los puntos finales con ámbito siguen el patrón <geography>.ai.mongodb.com, donde <geography> es el valor geography de la clave API del modelo que envÃa con la solicitud.
Para adaptar cualquiera de los ejemplos anteriores, sustituye el host en la URL de solicitud. Por ejemplo, una clave con ámbito en Europa utiliza la siguiente URL para generar incrustaciones:
https://eu.ai.mongodb.com/v1/embeddings
Una clave con ámbito solo funciona con su endpoint coincidente. El envÃo de una clave con ámbito de Europa a us.ai.mongodb.com o a ai.mongodb.com falla.
Para saber qué es una geografÃa y cuándo limitar una clave a una, consulte GeografÃas para la inferencia de Voyage AI.
Cliente de Python
Para instalar el paquete oficial de Python usando pip:
pip install --upgrade voyageai
Utiliza la opción --upgrade o -U para instalar la versión más reciente del paquete. Esto te dará acceso a las funcionalidades más recientes y a la corrección de errores. Para obtener parámetros especÃficos del modelo, consulta los ejemplos de uso para cada página del modelo.
Importante
Debe usar la versión 0.3.7 o posterior de la biblioteca cliente de Python. Esta versión añade soporte para la API Embedding and Reranking.
La clase voyageai.Client proporciona una interfaz sÃncrona para invocar la API de Voyage. Crea un objeto cliente y úsalo para acceder a modelos de IA de Voyage.
Ejemplo
El siguiente ejemplo muestra cómo inicializar el cliente con configuraciones personalizadas y generar embeddings:
import voyageai # Initialize the client with custom settings vo = voyageai.Client( api_key="<model-api-key>", # Or use VOYAGE_API_KEY environment variable max_retries=3, # Retry up to 3 times on rate limit errors timeout=30 # Timeout after 30 seconds ) # Generate embeddings result = vo.embed( texts=["MongoDB is redefining what a database is in the AI era."], model="voyage-4-large" ) print(f"Embedding dimension: {len(result.embeddings[0])}") print(f"Total tokens used: {result.total_tokens}")
La siguiente tabla describe los parámetros que se pueden pasar al inicializar el cliente:
Parameter | Tipo | Requerido | Descripción |
|---|---|---|---|
| String | No | Clave API del modelo. Por defecto es Ninguno. Si no hay ninguna, el cliente busca la clave API en el siguiente orden:
NOTA: El cliente Python dirige automáticamente las solicitudes al endpoint correcto de la API según el formato de la clave de API:
Puedes anular este comportamiento estableciendo el parámetro |
| entero | No | Número máximo de reintentos para cada solicitud de API en caso de errores de lÃmite de velocidad o indisponibilidad temporal del servidor. Por defecto, es 0. El cliente emplea una estrategia de espera y reintento para gestionar tales errores y genera una excepción al alcanzar el lÃmite máximo de reintentos. Por defecto, el cliente no reintenta. |
| entero | No | Tiempo máximo en segundos para esperar una respuesta de la API antes de abortar la solicitud. El valor por defecto es Ninguno. Si se supera el tiempo de espera especificado, la solicitud se termina y se genera una excepción por tiempo de espera. Por defecto, no se aplica ninguna restricción de tiempo de espera. |
| String | No | URL base personalizada para las solicitudes de la API. Por defecto, el cliente detecta automáticamente el endpoint correcto según la clave de API proporcionada. |
TypeScript cliente
Para instalar el paquete oficial de Typescript usando npm:
npm install voyageai
La clase VoyageAIClient proporciona una interfaz asÃncrona para invocar la API de Voyage desde aplicaciones TypeScript y JavaScript. Crea un objeto cliente y úsalo para acceder a los modelos de IA de Voyage.
A diferencia del cliente Python, el cliente TypeScript envÃa solicitudes al punto final de la plataforma Voyagehttps://api.voyageai.com/v1 () de forma predeterminada. Para usar la API de incrustación y reclasificación con la clave API de su modelo, cambie la environment opción a https://ai.mongodb.com/v1 al crear el cliente.
Ejemplo
El siguiente ejemplo muestra cómo inicializar el cliente para la API de incrustación y reclasificación y generar incrustaciones:
import { VoyageAIClient } from "voyageai"; // Initialize the client for the Embedding and Reranking API const client = new VoyageAIClient({ apiKey: process.env.VOYAGE_API_KEY, // Model API key environment: "https://ai.mongodb.com/v1", maxRetries: 3, // Retry up to 3 times timeoutInSeconds: 30 // Time out after 30 seconds }); // Generate embeddings const result = await client.embed({ input: ["MongoDB is redefining what a database is in the AI era."], model: "voyage-4-large" }); console.log(`Embedding dimension: ${result.data[0].embedding.length}`); console.log(`Total tokens used: ${result.usage.totalTokens}`);
La siguiente tabla describe las opciones que puede pasar al inicializar el cliente:
Opción | Tipo | Requerido | Descripción |
|---|---|---|---|
| String | Sà | Clave API del modelo. Si no establece esta opción, el cliente utiliza la variable de entorno |
| String | No | URL base para las solicitudes de API. Por defecto, es |
| Número | No | Número máximo de reintentos para cada solicitud de API en caso de errores de lÃmite de velocidad o indisponibilidad temporal del servidor. Por defecto, es 2. El cliente emplea una estrategia de espera y reintento para gestionar dichos errores y lanza una excepción al alcanzar el lÃmite máximo de reintentos. |
| Número | No | Tiempo máximo en segundos para esperar una respuesta de la API antes de cancelar la solicitud. El valor predeterminado es 60. Si la solicitud supera el tiempo de espera especificado, el cliente finaliza la solicitud y lanza una excepción de tiempo de espera. |
| Objeto | No | HTTP headers extra para enviar con cada solicitud de API. |
Además embed de, el cliente proporciona los rerank multimodalEmbed contextualizedEmbed métodos, y. Para ver los parámetros especÃficos del modelo, consulte los ejemplos de uso en la página de cada modelo.