VoyageAI by MongoDB: voyage-4-large
voyage-4-large é o modelo de embeddings de texto de mistura de especialistas da Voyage AI para recuperação de uso geral e multilingue. Os seus vetores partilham o espaço da família Voyage 4, permitindo pesquisar embeddings de corpus gerados por Large com embeddings de consulta compatíveis de outros modelos da família.
Sobre o modelo
Esta descrição apresenta as capacidades do modelo. As entradas, saídas e opções disponíveis no Ailoot para o método selecionado estão indicadas abaixo.
voyage-4-large é o principal modelo de embeddings de texto da Voyage AI na família Voyage 4. Representa passagens de origem e consultas como vetores numéricos para recuperação de uso geral e multilingue. As suas duas características distintivas são um desenho de modelo de mistura de especialistas e o espaço de embeddings partilhado utilizado por voyage-4-large, voyage-4, voyage-4-lite e voyage-4-nano.
Espaço partilhado: escolhas separadas para corpus e consulta
O fabricante descreve recuperação assimétrica: os documentos podem ter embeddings gerados com voyage-4-large, enquanto outro modelo da família Voyage 4 prepara os vetores de consulta. Por exemplo, um corpus representado por Large pode ser pesquisado com consultas voyage-4. Isto permite que os dois lados da pesquisa utilizem modelos diferentes, permanecendo no espaço compatível documentado.
Uma coleção prática pode, por isso, utilizar Large para preparar passagens documentais estáveis e escolher independentemente o modelo do lado da consulta. Os embeddings dos documentos são gerados quando o corpus é criado ou atualizado, enquanto as consultas são vetorizadas à medida que os utilizadores pesquisam. O anúncio da família descreve a alteração do modelo de consulta dentro da família compatível sem voltar a vetorizar o corpus documental apenas por causa dessa alteração. Mantenha os vetores comparados com dimensões coincidentes e em representações que o sistema de pesquisa consiga interpretar em conjunto.
Desenho de embeddings com mistura de especialistas
Uma camada densa feed-forward processa cada token através de todo o seu conjunto de parâmetros. A abordagem MoE descrita para voyage-4-large utiliza um encaminhador e redes feed-forward de especialistas, selecionando os especialistas que processam cada token. Isto separa a capacidade total do modelo dos parâmetros ativos para um token específico. A Voyage indica uma proporção de ativação de 1/10 para o desenho MoE do modelo, utilizando encaminhamento top-k.
A explicação técnica do fabricante também descreve duas escolhas de desenvolvimento. A capacidade dos especialistas afeta se os tokens em excesso contornam uma camada de especialistas por uma via residual; a equipa escolheu o maior fator de capacidade viável para evitar perda de qualidade de recuperação. Na etapa final de treino, os parâmetros do encaminhador são congelados antes da fusão de modelos, para que a interpolação dos modelos de origem não altere o encaminhamento aprendido de seleção de especialistas. Estas são características da preparação do modelo, distintas das definições de comprimento de texto ou truncamento utilizadas ao preparar uma entrada.
Dimensões e representação de saída
A tabela oficial do modelo especifica uma janela de contexto de 32 000 tokens e embeddings selecionáveis de 256, 512, 1024 e 2048 dimensões, com 1024 como predefinição. A família utiliza aprendizagem Matryoshka para tamanhos de representação aninhados e suporta escolhas de quantização: vírgula flutuante de 32 bits, inteiros de 8 bits com ou sem sinal e saída binária compactada.
Com saída binária, o comprimento da lista de bytes devolvida é um oitavo da dimensão selecionada, porque cada byte contém oito bits do embedding. Preserve as escolhas de dimensão e tipo de dados com o índice e utilize um método de comparação que suporte essa representação. Um vetor menor ou comprimido altera a representação utilizada na pesquisa; avalie as passagens relevantes devolvidas para perguntas reais antes de o escolher para uma coleção.
Prepare entradas de documento e consulta
A Voyage recomenda utilizar o papel document para passagens do corpus e o papel query para a formulação da pesquisa. A sua opção de papel acrescenta a instrução de recuperação correspondente antes da geração de embeddings. Preserve o título útil, as condições e a localização de origem da passagem e, depois, guarde o vetor devolvido com o texto original e um identificador estável.
Numa coleção de conhecimento técnico, uma pergunta sobre um modo de falha deve conduzir à passagem que descreve esse modo e as suas condições relevantes. Numa coleção documental que abranja várias línguas, conserve a língua de origem e avalie as perguntas e a terminologia com que os utilizadores pesquisarão. A publicação abrange material de recuperação que inclui documentos técnicos, conversas, documentos longos, código, direito, finanças e texto da Web. O embedding localiza material candidato; uma etapa posterior de reordenação ou resposta utiliza o texto original.
Limites de contexto, lotes e truncamento
O guia atual do fabricante permite até 1000 cadeias e 120 000 tokens totais de entrada num pedido voyage-4-large. Isto difere do limite de lote indicado para voyage-4, embora ambos tenham uma janela de 32 000 tokens por texto. O truncamento predefinido encurta uma entrada demasiado longa para caber; desativar o truncamento devolve um erro para texto demasiado longo.
Escolha deliberadamente os limites de passagens que contêm respostas, para que uma fonte longa não perca uma ressalva relevante numa parte final truncada. Mantenha a associação à fonte ao devolver resultados de pesquisa e examine o texto candidato real, em vez de tratar a proximidade vetorial como verificação do seu conteúdo. A compatibilidade de espaço partilhado aplica-se à família textual Voyage 4 documentada; o processamento contextualizado de fragmentos, os embeddings de imagem/vídeo e as edições posteriores de modelos mantêm os seus próprios fluxos específicos.
Ailoot Ultra · Embeddings POST /v1/embeddings voyageai/voyage-4-large
voyageai/voyage-4-largeIntrodução
voyage-4-large é o modelo de embeddings de texto de mistura de especialistas da Voyage AI para recuperação de uso geral e multilingue. Os seus vetores partilham o espaço da família Voyage 4, permitindo pesquisar embeddings de corpus gerados por Large com embeddings de consulta compatíveis de outros modelos da família.
- Entradas aceites
- Texto · token_ids
- Resultados
- embedding
Disponível no Ailoot · entradas e métodos
Ailoot Ultra · Embeddings POST /v1/embeddings
- Entrada
text,token_ids- Saída
embedding- Contexto
- 32 000 tokens
- Formato de saída
- json
| Campo | Tipo | Requisito | Valores e limites | Predefinição |
|---|---|---|---|---|
Campomodel | Tipostring | RequisitoObrigatório | Valores e limites voyageai/voyage-4-large | Predefinição— |
Campoinput | Tipostring|string[]|integer[]|integer[][] | RequisitoObrigatório | Valores e limites Número mínimo de elementos: 1 Condições: Lote homogéneo não vazio. Os IDs de tokens são números inteiros não negativos. Orçamento de entrada: Máximo: 32 000 · Unidade de texto: bytes UTF8 · Unidade de tokens: elementos do array de tokens | Predefinição— |
Campoencoding_format | Tipostring | RequisitoOpcional | Valores e limites float | Predefiniçãofloat |
Campodimensions | Tipointeger | RequisitoNão suportado | Valores e limites Mínimo: 1 | Predefinição— |
Campouser | Tipojson_value | RequisitoOpcional | Valores e limites Condições: A fonte permite este campo de metadados JSON; a semântica exata a montante depende do modelo. | Predefinição— |
Camposession_id | Tipojson_value | RequisitoOpcional | Valores e limites Condições: A fonte permite este campo de metadados JSON; a semântica exata a montante depende do modelo. | Predefinição— |
Campotrace | Tipojson_value | RequisitoOpcional | Valores e limites Condições: A fonte permite este campo de metadados JSON; a semântica exata a montante depende do modelo. | Predefinição— |
Campoprovider | Tipoobject | RequisitoOpcional | Valores e limites Condições: provider.options rejeitado | Predefinição— |
Combinações de materiais de entrada
text_to_embedding
Parâmetros e ciclo de vida do método
| Parâmetro | Contrato |
|---|---|
Parâmetrocontent_type | Contratoapplication/json |
Parâmetrorequired | Contratomodel, input |
Parâmetroinput_shapes | Contratostring, string[], nonnegative_integer_token_array, nonnegative_integer_token_array[] |
Parâmetroencoding_format | Contratofloat |
Parâmetrodimensions_override | Contratofalse |
Parâmetromax_input_budget_units | Contrato32000 |
Parâmetromultimodal_objects | Contratofalse |
Parâmetromaterial_types | Contratotext, token_ids |
Ciclo de vida: synchronous_json
Guarde o índice e a dimensão de cada vetor.
O nome do modelo multimodal não permite objetos de imagem neste caminho exato.
Tarifários
As referências tarifárias não acrescentam opções ao pedido. Os parâmetros suportados constam do método selecionado.
- Modo rápido
- Tarifa normal Quando o modo rápido está selecionado
- Modo flex
- Tarifa normal Quando o modo flex está selecionado
- Esforço máximo de raciocínio
- Tarifa normal Quando o esforço máximo de raciocínio usa o ajuste predefinido (default)
Tarifas Ailoot
Preços por configuração
| Configuração | Tabela de tarifas | Custo |
|---|---|---|
| ConfiguraçãoTarifas base dos tokens | Tabela de tarifasTarifa base | Custo Entrada · Tokens de entrada $0.00024 / 1K tokens Saída · Tokens de saída $0 / 1K tokens Entrada · Leitura da cache — / 1K tokens Entrada · Escrita na cache — / 1K tokens Entrada · Escrita na cache, 1 hora — / 1K tokens |
O Ailoot reserva um montante estimado antes de um pedido. Após o resultado, liquida o custo final com base na utilização medida. No streaming, a liquidação usa o registo final de utilização. Como funcionam a reserva e a liquidação →
Exemplos de pedidos
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-4-large", "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-4-large',input=["First document","Second document"])
print(result)
for item in result.data:print(item.index,item.embedding)
Receber e guardar os resultados
Ailoot Ultra · Embeddings
json
Guardar todos os resultados concluídos
Guarde cada resposta, ficheiro e parte de conteúdo devolvidos na íntegra.
Guarde cada vetor com o respetivo índice. O número de vetores tem de ser igual ao número de entradas; as dimensões têm de ser consistentes.
Se for necessário verificar a resposta original
Não é introduzido nenhum endpoint de tarefas de embeddings.
Campos da resposta
| Campo | Tipo |
|---|---|
Campoobject | Tipostring |
Campomodel | Tipostring |
Campodata[].index | Tipointeger |
Campodata[].embedding | Tipofinite float[] |
Campousage | Tipoobject |
Erros e passos seguintes
| Resposta | Condição | Passo seguinte |
|---|---|---|
Resposta400 · invalid_request_error | CondiçãoCampos obrigatórios, representação do material ou valor do parâmetro inválidos | Passo seguinteCorrija os campos indicados antes de um novo pedido de criação. |
Aliases
Aliases do modelo
Ailoot Ultra voyageai/voyage-4-large
Aliases dos caminhos dos métodos
Use os caminhos dos métodos indicados acima.
IDs de chamada relacionados
FAQ · VoyageAI by MongoDB: voyage-4-large
- Que entradas e resultados estão disponíveis?
POST /v1/embeddings·voyageai/voyage-4-large:text,token_ids→embedding- Que campos utiliza o pedido?
POST /v1/embeddings·voyageai/voyage-4-large:model,input,encoding_format,provider- Que limites se aplicam?
POST /v1/embeddings·voyageai/voyage-4-large:ctx:32000;input.budget.maximum:32000(bytes UTF8);input.min_items:1