Você pode acessar os modelos de IA do Voyage usando a API de incorporação e reclassificação, disponível por meio do MongoDB Atlas. Use os seguintes métodos para acessar a API:
API REST: para acesso independente de idioma.
cliente Python: cliente oficial para facilidade de uso.
cliente TypeScript: cliente oficial para aplicativos TypeScript e JavaScript.
Esta página resume como acessar a API. Para obter detalhes completos sobre a API, incluindo limites de taxa e níveis de uso, consulte a Referência da API.
Chaves de API
A API de incorporação e reclassificação usa chaves de API para monitorar o uso e gerenciar permissões. Para criar e gerenciar suas chaves de API do modelo, use a IU do MongoDB Atlas. Para obter instruções, consulte Chaves de API do modelo.
REST API
Os exemplos a seguir demonstram como chamar o serviço de incorporação por meio da API REST. A API suporta solicitações cURL e HTTP de qualquer linguagem de programação.
A autenticação é tratada por meio da chave de API do modelo, que você deve incluir no cabeçalho de autorização de cada solicitação de API como um token de portador.
Para saber mais, consulte a especificação completa da API.
Endpoints com escopo
Observação
Visualização pública
A região geográfica da Europa e seu endpoint, eu.ai.mongodb.com, estão disponíveis como um recurso de visualização pública. O recurso e a documentação correspondente podem mudar a qualquer momento durante o período de Pré-visualização.
Se a chave de API do seu modelo tiver como escopo uma localização geográfica, envie suas solicitações para o ponto de extremidade dessa localização geográfica em vez de ai.mongodb.com. O corpo da solicitação, os cabeçalhos e o formato de resposta não mudam. Apenas o host muda.
Endpoint | Geograficamente |
|---|---|
| Sem escopo. O Atlas pode atender à solicitação de qualquer localização geográfica. |
| Europa |
| Estados Unidos |
Os endpoints com escopo seguem o padrão <geography>.ai.mongodb.com, em que <geography> é o valor geography da chave de API do modelo que você envia com a solicitação.
Para adaptar qualquer um dos exemplos anteriores, substitua o host na URL de solicitação. Por exemplo, uma chave com escopo para a Europa usa a seguinte URL para gerar incorporações:
https://eu.ai.mongodb.com/v1/embeddings
Uma chave com escopo definido funciona apenas em relação ao endpoint correspondente. O envio de uma chave com escopo europeu para us.ai.mongodb.com ou para ai.mongodb.com falha.
Para saber o que é uma geográfica e quando definir o escopo de uma chave para uma, consulte Geographies for Voyage AI Inference.
Cliente Python
Para instalar o pacote oficial do Python usando o pip:
pip install --upgrade voyageai
Use a opção --upgrade ou -U para instalar a versão mais recente do pacote. Isso lhe dá acesso aos recursos e correções de bugs mais recentes. Para parâmetros específicos do modelo, consulte os exemplos de uso para cada página de modelo.
Importante
Você deve usar a versão 0.3.7 ou posterior da biblioteca do cliente Python. Esta versão adiciona suporte para a API de incorporação e reclassificação.
A classe voyageai.Client fornece uma interface síncrona para invocar a API do Voyage. Crie um objeto de cliente e use-o para acessar os modelos de IA do Voyage.
Exemplo
O exemplo a seguir mostra como inicializar o cliente com configurações personalizadas e gerar incorporações:
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}")
A tabela a seguir descreve os parâmetros que você pode passar ao inicializar o cliente:
Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
| String | No | Chave API do modelo. O padrão é Nenhum. Se Nenhum, o cliente procurará a chave API na seguinte ordem:
NOTA: o cliente Python roteia automaticamente as solicitações para o ponto de extremidade da API correto com base no formato da chave da API:
Você pode substituir este comportamento configurando o parâmetro |
| Inteiro | No | Número máximo de tentativas para cada solicitação de API em caso de erros de limite de taxa ou indisponibilidade temporária do servidor . Padrão é 0. O cliente emprega uma estratégia de esperar e tentar novamente para lidar com esses erros e gerar uma exceção ao atingir o limite máximo de tentativas. Por padrão, o cliente não tenta novamente. |
| Inteiro | No | Tempo máximo, em segundos, para aguardar uma resposta da API antes de abortar a solicitação. O padrão é Nenhum. Se o tempo limite especificado for excedido, a solicitação será encerrada e uma exceção de tempo limite será gerada. Por padrão, nenhuma restrição de tempo limite é imposta. |
| String | No | URL base personalizada para solicitações de API. Por padrão, o cliente detecta automaticamente o ponto de extremidade correto com base na chave de API fornecida. |
Cliente TypeScript
Para instalar o pacote oficial do TypeScript usando npm:
npm install voyageai
A classe VoyageAIClient fornece uma interface assíncrona para invocar a API do Voyage a partir de aplicativos TypeScript e JavaScript. Crie um objeto de cliente e use-o para acessar os modelos de IA do Voyage.
Ao contrário do cliente Python, o cliente TypeScript envia solicitações para o ponto de extremidade da plataforma Voyagehttps://api.voyageai.com/v1 () por padrão. Para usar a API de incorporação e reclassificação com sua chave de API de modelo, defina a environment opção como https://ai.mongodb.com/v1 ao criar o cliente.
Exemplo
O exemplo a seguir mostra como inicializar o cliente para a API de incorporação e reclassificação e gerar incorporações:
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}`);
A tabela a seguir descreve as opções que você pode passar ao inicializar o cliente:
Opção | Tipo | Obrigatório | Descrição |
|---|---|---|---|
| String | Sim | Chave API do modelo. Se você não definir esta opção, o cliente utilizará a |
| String | No | URL base para solicitações de API. O padrão é |
| Número | No | Número máximo de tentativas para cada solicitação de API em caso de erros de limite de taxa ou indisponibilidade temporária do servidor . Padrão é 2. O cliente emprega uma estratégia de esperar e tentar novamente para lidar com esses erros e lança uma exceção ao atingir o limite máximo de tentativas. |
| Número | No | Tempo máximo, em segundos, para aguardar uma resposta da API antes de abortar a solicitação. Padrão é 60. Se a solicitação exceder o tempo limite especificado, o cliente encerrará a solicitação e lançará uma exceção de tempo limite. |
| Objeto | No | Cabeçalhos HTTP extras para enviar com cada solicitação de API. |
Além embed do, o cliente fornece os rerank multimodalEmbed contextualizedEmbed métodos, e. Para parâmetros específicos do modelo, consulte os exemplos de uso para cada página de modelo.