🗄️ Cap 05: Bancos Vetoriais de Alta Performance: Indexação HNSW, ChromaDB, Pinecone e pgvector - Exemplos Práticos
Código executável completo demonstrando os conceitos de Inteligência Artificial.
🗺️ Fluxo de Processamento
flowchart TD
DOCS["Documentação da Empresa"] --> CHUNKS["Chunks de Texto (512 tokens)"]
CHUNKS --> VEC_DB["Banco Vetorial (ChromaDB / pgvector com Índice HNSW)"]
QUERY["Pergunta do Usuário"] --> SEARCH["Busca por Vizinhos Mais Próximos (ANN - Hierarchical Navigable Small World)"]
SEARCH --> RETRIEVED["Top 3 Chunks Semânticos Mais Relevantes em < 2ms"]
style VEC_DB fill:#e1f5fe,stroke:#03a9f4,stroke-width:2px
style RETRIEVED fill:#e8f5e9,stroke:#4caf50,stroke-width:2px
📄 Código de Demonstração (chroma_demo.py)
class MockVectorDB:
def __init__(self):
self.data = []
def insert(self, text, embedding):
self.data.append((text, embedding))
def query(self, query_text):
return [self.data[0][0]] if self.data else []
db = MockVectorDB()
db.insert("Manual de Políticas de Segurança ADS", [0.1, 0.9])
resultado = db.query("Como redefinir senha?")
print(f"Documento mais relevante recuperado: '{resultado[0]}'")
🚀 Saída Esperada no Terminal / Execução
Documento mais relevante recuperado: 'Manual de Políticas de Segurança ADS'
🧭 Navegação Rápida
| 📖 Teoria | 📊 Slides | 🧠 Quiz | 💻 Exemplos | 🧩 Exercícios | | :— | :— | :— | :— | :— | | Ler Tópico | Ver Slides | Fazer Quiz | Ver Código | Praticar |