Aperçu
Weaviate est une base de données vectorielle open-source avec des modules de vectorisation intégrés (OpenAI, Cohere, HuggingFace, Transformers, CLIP, multi-modal). Supporte la recherche hybride (vecteur + BM25 par mot-clé), la recherche générative (RAG avec intégration LLM), et les données multi-modales.
Installation
docker run -p 8080:8080 semitechnologies/weaviate:latest
Client Python
import weaviate
import weaviate.classes as wvc
client = weaviate.connect_to_local()
collection = client.collections.create(
name="Documents",
vectorizer_config=wvc.config.Configure.Vectorizer.text2vec_transformers(),
)
collection.data.insert({
"title": "Paris",
"content": "Paris is the capital of France. It is known for the Eiffel Tower.",
})
# Hybrid search (vector + keyword)
response = collection.query.hybrid(query="French capital", limit=5)
for obj in response.objects:
print(obj.properties)