Invalid size for parameter embedding, Expected: N, Actual: M
TL;DR — o vetor que você gravou tem uma contagem de dimensões diferente da que o índice vetorial espera. O índice fixou seu Dimensions na criação e isso não pode mudar; regenere o embedding na contagem de dimensões do índice ou crie um novo índice.
O que significa
ValidationException: One or more parameter values were invalid. Invalid size for parameter embedding, Expected: 1024, Actual: 512 IndexName: TicketEmbeddingsEssa é a resposta literal do serviço que capturamos em us-east-1 ao gravar um embedding de 512 dimensões em uma tabela cujo índice vetorial foi criado com Dimensions: 1024. A gravação é rejeitada por completo; nada chega à tabela nem ao índice.
A mensagem nomeia três coisas: o atributo vetorial (embedding), a contagem de dimensões que o índice espera e a que você enviou. O IndexName no final diz qual dos índices vetoriais da tabela (até 5) a levantou.
Por que isso acontece
- Você trocou de modelo de embedding. Um modelo que gera 512 dimensões substituiu um que gerava 1,024. O
Dimensionsdo índice é fixado na criação, então toda gravação nova agora falha. - Um passo de truncamento ou preenchimento desapareceu. Pipelines que fatiam embeddings no estilo Matryoshka até um tamanho alvo falham assim quando o fatiamento é pulado.
- Dois índices, um mesmo nome de atributo. Uma gravação que satisfaz a contagem de dimensões de um índice ainda pode falhar em outro índice definido sobre o mesmo atributo em uma tabela diferente.
Como corrigir
Regenere o embedding na contagem de dimensões do índice, ou exclua o índice e crie um novo na contagem do modelo. Não há mudança no lugar: Dimensions e DistanceFunction são imutáveis, então uma migração de modelo significa um novo índice e um backfill.
Se os dois modelos precisam coexistir durante uma migração, grave-os em dois atributos diferentes e dê a cada um o seu próprio índice vetorial — uma tabela aceita até 5.
Relacionados
O quadro completo de faturamento e limites está no guia de pesquisa vetorial do DynamoDB. O prefixo genérico desta mensagem tem sua própria página: "One or more parameter values were invalid".