Tutorial 19~20 MinutenFortgeschritten
Vektor-Datenbanken
Nahtlose Integration mit Pinecone, Weaviate und Qdrant für semantische Suche.
Was du lernen wirst
- Vektor-DBs verbinden (Pinecone, Qdrant)
- Embeddings erstellen und speichern
- Semantische Suche implementieren
1
Vektorsuche verstehen
Vektor-Datenbanken speichern Texte als mathematische Vektoren (Embeddings) und ermöglichen Suche nach Bedeutung statt nach exakten Wörtern.
Semantische Suche
Finde Inhalte nach Bedeutung
Embeddings
Text als Vektoren
Schnelle Abfragen
Millionen Vektoren in ms
2
Pinecone verbinden
import { VectorStore } from "std:db";
import { ai } from "std:ai";
// Pinecone verbinden
let vectorDB = VectorStore.connect("pinecone", {
index: "my-documents",
apiKey: env.PINECONE_KEY,
});
// Dokument speichern mit Embedding
@POST("/api/documents")
fn createDocument(title: string, content: string): Document {
// Embedding generieren
let embedding = ai.embeddings(content, "text-embedding-3-small");
// In Vektor-DB speichern
vectorDB.upsert({
id: generateId(),
values: embedding,
metadata: { title, content },
});
return Document { title, content };
}3
Semantische Suche
@POST("/api/search")
fn searchDocuments(query: string, topK: number): List<SearchResult> {
// Query zu Embedding umwandeln
let queryVector = ai.embeddings(query, "text-embedding-3-small");
// Ähnliche Dokumente finden
let results = vectorDB.query({
vector: queryVector,
topK: topK,
includeMetadata: true,
});
return results.map(r => SearchResult {
title: r.metadata.title,
content: r.metadata.content,
score: r.score,
});
}
// Beispiel-Aufruf:
// POST /api/search { query: "Wie funktioniert KI?", topK: 5 }
// → Findet Dokumente über Machine Learning, neuronale Netze, etc.Zusammenfassung
Was du gelernt hast:
- Vektor-DB Integration
- Embeddings erstellen
- Semantische Suche
Nächste Schritte:
- Plugin-Entwicklung