Vector DB
Saiba mais sobre o conector Vector DB e como utilizá-lo na Digibee Integration Platform.
Visão geral
O conector Vector DB desempenha um papel central em seu pipeline ao executar o processo de ingestão de dados. Ele converte informações em uma representação vetorial que pode ser utilizada posteriormente para busca e recuperação semântica. Quando um prompt é recebido, cálculos de similaridade identificam os vetores mais relevantes, e seus textos correspondentes são recuperados para enriquecer o contexto fornecido ao modelo de linguagem (LLM).
Diferente dos bancos de dados tradicionais, que armazenam texto ou dados estruturados, um banco de dados vetorial armazena embeddings, que são representações numéricas que capturam o significado do conteúdo. Esses embeddings permitem que modelos de IA encontrem informações relacionadas com base em similaridade, em vez de correspondência exata de palavras-chave.
Como funciona
O funcionamento do conector envolve um processo sequencial com três etapas principais:
Ingestão de dados
O conector recebe dados de uma etapa anterior do pipeline. Esses dados podem vir de várias fontes, como o trigger ou outro conector da plataforma.
Você pode definir o tipo de origem por meio do parâmetro Source Type:
- Text: Para processar conteúdo de texto bruto. 
- File: Para processar um documento armazenado. 
Geração de embedding
O conteúdo recebido é processado usando o Embedding Model configurado, que converte os dados em um vetor (uma lista de números que representa seu significado semântico). Esses vetores não são legíveis por humanos, mas são essenciais para buscas e recuperação baseadas em IA nas etapas seguintes.
Fornecedores de modelos de embedding suportados incluem:
- Local (default): Um modelo de embedding local leve (all-MiniLM-L6-v2) útil para casos de uso básicos ou testes. 
- Fornecedores externos: Você pode selecionar opções mais avançadas, como: - Hugging Face: Oferece uma variedade de modelos de texto e multimodais. 
- OpenAI: Suporta modelos como - text-embedding-3-smalle- text-embedding-3-large.
- Google Vertex AI: Permite geração de embeddings em nível empresarial. 
 
Dimensões de vetores
Cada modelo de embedding produz vetores com uma dimensão específica (por exemplo, 3072 valores). A dimensão usada no modelo deve corresponder exatamente à dimensão definida na tabela do vector store de destino. Caso contrário, o processo de ingestão falhará.
Quando a opção Auto-Create está ativada, o conector cria automaticamente uma nova tabela com a dimensão correta de acordo com o modelo de embedding selecionado.
Operações suportadas
No estágio atual, o conector suporta apenas operações de ingestão:
- Insert: Armazena os embeddings gerados no vector store. 
- Metadata: É possível incluir metadados (pares chave–valor adicionais) ao armazenar embeddings, mas filtros baseados em metadata ainda não estão disponíveis. 
Output
O conector retorna uma mensagem de confirmação indicando o resultado do processo de ingestão.
Se suportado pelo modelo de embedding, a resposta também pode incluir informações adicionais, como o número de tokens processados durante a geração dos embeddings.
Configuração de parâmetros
Configure o conector usando os parâmetros abaixo. Campos que suportam expressões Double Braces estão marcados na coluna Suporta DB.
Alias
Nome (alias) para a saída deste conector, permitindo que você o referencie posteriormente no fluxo usando Double Braces expressions.
String
✅
vector-db-1
Source Type
Define o tipo de dado que o conector irá processar. Tipos suportados: Text e File.
String
❌
N/A
Metadata
Armazena informações extras para identificar os vetores.
Key-value pairs
❌
Um modelo de embedding converte texto ou outros tipos de dados em vetores numéricos que representam seu significado semântico. Esses vetores permitem medir a similaridade entre conteúdos com base no significado, e não nas palavras exatas.
Modelos de embedding são comumente usados para tarefas como semantic search, clustering e Retrieval-Augmented Generation (RAG), permitindo comparação e recuperação eficientes de informações contextualmente relevantes.
Embedding Provider
O fornecedor do modelo de embedding a ser utilizado. Opções: Local (all-MiniLM-L6-v2), OpenAI, Google Vertex AI e Hugging Face.
String
❌
Local (all-MiniLM-L6-v2)
Local (all-MiniLM-L6-v2)
Não há parâmetros configuráveis para este fornecedor. Entretanto, o conector ainda utiliza uma Vector Dimension interna, que define a dimensão dos vetores de embedding. Essa dimensão deve corresponder exatamente ao tamanho do vetor do modelo. Se a tabela não existir, o auto-create utilizará esta dimensão; tabelas com dimensões divergentes causarão erros. Para este fornecedor, a dimensão padrão é 384.
OpenAI
Embedding Model Name
Define o nome do modelo de embedding a ser usado, como text-embedding-3-large.
String
✅
N/A
Embedding Account
Especifica a conta configurada com credenciais OpenAI. Tipo suportado: Secret Key.
Select
❌
N/A
Vector Dimension
Define a dimensão dos vetores de embedding. Deve corresponder exatamente ao tamanho do vetor do modelo. Se a tabela não existir, o auto-create usa esta dimensão; tabelas divergentes causam erros.
Integer
❌
N/A
Timeout
Define o tempo máximo (em segundos) para a operação antes de ser abortada. Por exemplo, 120 equivale a 2 minutos.
Integer
❌
30
Google Vertex AI
Embedding Model Name
Define o nome do modelo de embedding a ser usado, como textembedding-gecko@003.
String
✅
N/A
Embedding Account
Especifica a conta configurada com credenciais do Google Cloud. Tipo suportado: Google Key.
Select
❌
N/A
Vector Dimension
Define a dimensão dos vetores de embedding. Deve corresponder exatamente ao tamanho do vetor do modelo. Se a tabela não existir, o auto-create usa esta dimensão; tabelas divergentes causam erros.
Integer
❌
N/A
Project ID
Define o ID do projeto do Google Cloud associado à conta.
String
✅
N/A
Location
Especifica a região onde o modelo Vertex AI está implantado, como us-central1.
String
✅
N/A
Endpoint
Define o endpoint do modelo de embedding, como us-central1-aiplatform.googleapis.com:443.
String
✅
N/A
Publisher
Especifica o publisher do modelo, geralmente google.
String
✅
N/A
Max Retries
Define o número máximo de tentativas em caso de falhas temporárias na API.
Integer
❌
3
Timeout
Define o tempo máximo (em segundos) para a operação antes de ser abortada.
Integer
❌
30
Hugging Face
Embedding Model Name
Define o nome do modelo de embedding a ser usado, como sentence-transformers/all-mpnet-base-v2.
String
✅
N/A
Embedding Account
Especifica a conta configurada com credenciais Hugging Face. Tipo suportado: Secret Key.
Select
❌
N/A
Vector Dimension
Define a dimensão dos vetores de embedding. Deve corresponder exatamente ao tamanho do vetor do modelo. Se a tabela não existir, o auto-create usa esta dimensão; tabelas divergentes causam erros.
Integer
❌
N/A
Wait for Model
Determina se o sistema deve esperar o modelo carregar antes de gerar embeddings (true) ou retornar erro se o modelo não estiver pronto (false).
Boolean
❌
True
Um vector store é um banco de dados especializado em armazenar e recuperar representações vetoriais de dados (embeddings). Ele permite buscas por similaridade comparando vetores numéricos em vez de textos exatos, proporcionando resultados mais relevantes e semânticos.
Vector Store Provider
Define o fornecedor do banco de dados usado para armazenar e consultar embeddings. Opções: PostgreSQL (PGVector) e Neo4j.
Select
❌
N/A
PostgreSQL (PGVector)
Host
Define o hostname ou IP do servidor PostgreSQL.
String
✅
N/A
Port
Define a porta usada para conectar ao servidor PostgreSQL.
Number
❌
5432
Database Name
Define o nome do banco de dados PostgreSQL que contém a tabela de vetores.
String
✅
N/A
Vector Store Account
Especifica a conta configurada com credenciais PostgreSQL.
Select
❌
N/A
Table Name
Define o nome da tabela onde os vetores são armazenados.
String
✅
N/A
Auto-Create Table
Cria automaticamente a tabela se não existir (somente PGVector).
Boolean
❌
True
Clear Table Before Ingest
Remove todos os registros existentes antes de ingerir novos dados (somente PGVector).
Boolean
❌
False
Auto-Create Index
Cria automaticamente o índice vetorial se não existir.
Boolean
❌
True
Neo4j
Database Name
Define o nome do banco de dados Neo4j onde o índice vetorial é armazenado.
String
✅
N/A
Vector Store Account
Especifica a conta configurada com credenciais Neo4j.
Select
❌
N/A
Index Name
Define o nome do índice usado para armazenar e consultar vetores.
String
✅
N/A
URI
Define o URI de conexão com a instância Neo4j.
String
✅
N/A
Node Label
Define o label atribuído aos nodes que contêm dados de embedding.
String
✅
N/A
Embedding Property
Define a propriedade do node usada para armazenar o vetor de embedding.
String
✅
N/A
Text Property
Define a propriedade do node usada para armazenar o texto ou documento original.
String
✅
N/A
Splitting Strategy
Define como os documentos são divididos em pedaços menores para geração de embeddings.
String
❌
Recursive Character Splitter (Recommended)
Max Segment Size
Número máximo de caracteres permitidos por pedaço. Valores maiores geram menos segmentos, porém mais longos.
Integer
❌
500
Segment Overlap
Número de caracteres compartilhados entre pedaços consecutivos para preservar o contexto.
Integer
❌
50
Documentation
Campo opcional para descrever a configuração do conector e quaisquer regras de negócio relevantes.
String
❌
N/A
Atualizado
Isto foi útil?
