Embeddings
Embeddings de texto são representações numéricas de texto que permitem medir a similaridade semântica. Este guia introduz embeddings, suas aplicações e como usar modelos de embedding para tarefas como busca, recomendações e detecção de anomalias.
Antes de implementar embeddings
Ao selecionar um provedor de embeddings, existem vários fatores que você pode considerar dependendo de suas necessidades e preferências:
- Tamanho do conjunto de dados e especificidade do domínio: tamanho do conjunto de dados de treinamento do modelo e sua relevância para o domínio que você deseja incorporar. Dados maiores ou mais específicos do domínio geralmente produzem melhores embeddings no domínio
- Desempenho de inferência: velocidade de busca de embedding e latência ponta a ponta. Esta é uma consideração particularmente importante para implantações em produção em larga escala
- Personalização: opções para treinamento contínuo em dados privados ou especialização de modelos para domínios muito específicos. Isso pode melhorar o desempenho em vocabulários únicos
Como obter embeddings com Anthropic
Anthropic não oferece seu próprio modelo de embedding. Um provedor de embeddings que tem uma ampla variedade de opções e capacidades abrangendo todas as considerações acima é a Voyage AI.
A Voyage AI desenvolve modelos de embedding de última geração e oferece modelos personalizados para domínios específicos da indústria, como finanças e saúde, ou modelos ajustados sob medida para clientes individuais.
O resto deste guia é para Voyage AI, mas incentivamos você a avaliar uma variedade de fornecedores de embeddings para encontrar o melhor ajuste para seu caso de uso específico.
Modelos Disponíveis
A Voyage recomenda usar os seguintes modelos de embedding de texto:
Modelo | Comprimento do Contexto | Dimensão do Embedding | Descrição |
---|---|---|---|
voyage-3-large | 32.000 | 1024 (padrão), 256, 512, 2048 | A melhor qualidade de recuperação para propósito geral e multilíngue. |
voyage-3 | 32.000 | 1024 | Otimizado para qualidade de recuperação de propósito geral e multilíngue. Veja o post do blog para detalhes. |
voyage-3-lite | 32.000 | 512 | Otimizado para latência e custo. Veja o post do blog para detalhes. |
voyage-code-3 | 32.000 | 1024 (padrão), 256, 512, 2048 | Otimizado para recuperação de código. Veja o post do blog para detalhes. |
voyage-finance-2 | 32.000 | 1024 | Otimizado para recuperação e RAG em finanças. Veja o post do blog para detalhes. |
voyage-law-2 | 16.000 | 1024 | Otimizado para recuperação e RAG jurídico e de contexto longo. Também melhorou o desempenho em todos os domínios. Veja o post do blog para detalhes. |
Adicionalmente, os seguintes modelos de embedding multimodal são recomendados:
Modelo | Comprimento do Contexto | Dimensão do Embedding | Descrição |
---|---|---|---|
voyage-multimodal-3 | 32000 | 1024 | Modelo de embedding multimodal rico que pode vetorizar texto intercalado e imagens ricas em conteúdo, como capturas de tela de PDFs, slides, tabelas, figuras e mais. Veja o post do blog para detalhes. |
Precisa de ajuda para decidir qual modelo de embedding de texto usar? Confira o FAQ.
Começando com Voyage AI
Para acessar os embeddings da Voyage:
- Cadastre-se no site da Voyage AI
- Obtenha uma chave de API
- Configure a chave de API como uma variável de ambiente para conveniência:
Você pode obter os embeddings usando o pacote Python oficial voyageai
ou requisições HTTP, como descrito abaixo.
Pacote Python Voyage
O pacote voyageai
pode ser instalado usando o seguinte comando:
Em seguida, você pode criar um objeto cliente e começar a usá-lo para incorporar seus textos:
result.embeddings
será uma lista de dois vetores de embedding, cada um contendo 1024 números de ponto flutuante. Após executar o código acima, os dois embeddings serão impressos na tela:
Ao criar os embeddings, você também pode especificar alguns outros argumentos para a função embed()
. Você pode ler mais sobre a especificação aqui
API HTTP Voyage
Você também pode obter embeddings solicitando a API HTTP da Voyage. Por exemplo, você pode enviar uma requisição HTTP através do comando curl
em um terminal:
A resposta que você receberia é um objeto JSON contendo os embeddings e o uso de tokens:
Você pode ler mais sobre o endpoint de embedding na documentação da Voyage
AWS Marketplace
Os embeddings da Voyage também estão disponíveis no AWS Marketplace. As instruções para acessar a Voyage na AWS estão disponíveis aqui.
Exemplo de Início Rápido
Agora que sabemos como obter embeddings, vamos ver um breve exemplo.
Suponha que temos um pequeno corpus de seis documentos para recuperar
Primeiro usaremos a Voyage para converter cada um deles em um vetor de embedding
Os embeddings nos permitirão fazer busca semântica / recuperação no espaço vetorial. Dado um exemplo de consulta,
convertemos em um embedding e realizamos uma busca do vizinho mais próximo para encontrar o documento mais relevante com base na distância no espaço de embedding.
Observe que usamos input_type="document"
e input_type="query"
para incorporar o documento e a consulta, respectivamente. Mais especificações podem ser encontradas aqui.
A saída seria o 5º documento, que é de fato o mais relevante para a consulta:
Se você está procurando um conjunto detalhado de guias sobre como fazer RAG com embeddings, incluindo bancos de dados vetoriais, confira nosso cookbook RAG.
FAQ
Preços
Visite a página de preços da Voyage para os detalhes de preços mais atualizados.
Was this page helpful?