~/questoes/agentes-de-ia
Na LangChain, embed_documents e embed_query são dois métodos especializados da classe Embeddings com funções diferentes. O primeiro processa múltiplos documentos de uma vez, gerando vários vetores simultaneamente, enquanto o segundo transforma uma única consulta (pergunta) em um vetor otimizado para busca semântica.
A alternativa C está correta porque descreve precisamente a divisão de responsabilidades entre os métodos: embed_documents trabalha com listas inteiras de documentos e retorna múltiplos vetores, enquanto embed_query recebe uma consulta isolada e retorna um único vetor. Essa separação existe porque alguns modelos aplicam estratégias diferentes para documentos e para queries.
Esta alternativa inverte a realidade. Na verdade, embed_documents retorna múltiplos vetores (um para cada documento da lista), enquanto embed_query retorna um único vetor da consulta. A confusão entre singular e plural aqui prejudica toda a análise.
Essa alternativa cria uma distinção que não existe. Ambos os métodos usam o mesmo modelo de embeddings (genérico ou especializado). A diferença não está no tipo de modelo, mas em como cada método processa seus inputs — um em batch, outro em singular.
Exatamente isto. embed_documents recebe uma lista de documentos e gera múltiplos vetores em paralelo. embed_query recebe uma única pergunta e gera um vetor otimizado para comparação com os documentos. Essa separação permite que o sistema trabalhe de forma eficiente em ambos os cenários.
A velocidade não é a diferença fundamental entre os métodos. Ambos podem usar cache ou não, dependendo da implementação do provedor. O que importa é a função: um processa documentos em massa, o outro processa uma consulta isolada. A performance é uma consequência, não a causa da separação.