Haystack KI-Framework

Setzen Sie Haystack von deepset auf Clore.ai ein — erstellen Sie produktionsreife RAG-Pipelines, semantische Suche und LLM-Agenten-Workflows auf erschwinglicher GPU-Infrastruktur.

Haystack ist deepsets Open-Source-AI-Orchestrierungsframework zum Erstellen produktionsreifer LLM-Anwendungen. Mit über 18.000 GitHub-Sternen bietet es eine flexible pipeline-basierte Architektur die Dokumentenspeicher, Retriever, Reader, Generatoren und Agents miteinander verbindet – alles in sauberem, komponierbarem Python. Ob Sie RAG über private Dokumente, semantische Suche oder mehrstufige Agenten-Workflows benötigen, Haystack übernimmt die Infrastruktur, damit Sie sich auf die Anwendungslogik konzentrieren können.

Auf Clore.ai überzeugt Haystack, wenn Sie eine GPU für lokale Modellausführung über Hugging Face Transformers oder sentence-transformers benötigen. Wenn Sie ausschließlich auf externe APIs (OpenAI, Anthropic) angewiesen sind, können Sie es auf CPU-only-Instanzen betreiben – aber für Embedding-Generierung und lokale LLMs reduziert eine GPU die Latenz dramatisch.

circle-check
circle-info

Dieser Leitfaden behandelt Haystack v2.x (haystack-ai Paket). Die v2-API unterscheidet sich deutlich von v1 (farm-haystack). Wenn Sie vorhandene v1-Pipelines haben, siehe die Migrationsanleitungarrow-up-right.

Überblick

Eigenschaft
Details

Lizenz

Apache 2.0

GitHub-Sterne

18K+

Version

v2.x (haystack-ai)

Primärer Anwendungsfall

RAG, semantische Suche, Dokumenten-QA, Agenten-Workflows

GPU-Unterstützung

Optional — erforderlich für lokale Embeddings / lokale LLMs

Schwierigkeitsgrad

Mittel

API-Serving

Hayhooks (FastAPI-basiert, REST)

Wichtige Integrationen

Ollama, OpenAI, Anthropic, HuggingFace, Elasticsearch, Pinecone, Weaviate, Qdrant

Was Sie bauen können

  • RAG-Pipelines — Dokumente einlesen, Embeddings erzeugen, Kontext abrufen, Fragen beantworten

  • Semantische Suche — Dokumente nach Bedeutung, nicht nach Schlüsselwörtern abfragen

  • Dokumentenverarbeitung — PDFs, HTML, Word-Dokumente parsen; Inhalte aufteilen, bereinigen und indexieren

  • Agenten-Workflows — mehrstufiges Schließen mit Werkzeugnutzung (Websuche, Taschenrechner, APIs)

  • REST-API-Services — jede Haystack-Pipeline über Hayhooks als Endpoint bereitstellen

Anforderungen

Hardware-Anforderungen

Einsatzgebiet
GPU
VRAM
RAM
Festplatte
Clore.ai-Preis

Nur API-Modus (OpenAI/Anthropic)

Keine / CPU

4 GB

20 GB

~$0.01–0.05/Stunde

Lokale Embeddings (sentence-transformers)

RTX 3060

8 GB

16 GB

30 GB

~$0.10–0.15/Stunde

Lokale Embeddings + kleines LLM (7B)

RTX 3090

24 GB

16 GB

50 GB

~$0.20–0.25/Stunde

Lokales LLM (13B–34B)

RTX 4090

24 GB

32 GB

80 GB

~$0.35–0.50/Stunde

Großes lokales LLM (70B, quantisiert)

A100 80GB

80 GB

64 GB

150 GB

~$1.10–1.50/Stunde

circle-info

Für die meisten RAG-Anwendungsfälle ist ein RTX 3090 bei ~ $0.20/Stunde der Sweet Spot — 24 GB VRAM bewältigen sentence-transformer-Embeddings + ein 7B–13B lokales LLM gleichzeitig.

Softwareanforderungen

  • Docker (vorinstalliert auf Clore.ai-Servern)

  • NVIDIA-Treiber + CUDA (vorinstalliert auf Clore.ai-GPU-Servern)

  • Python 3.10+ (innerhalb des Containers)

  • CUDA 11.8 oder 12.x

Schnellstart

1. Mieten Sie einen Clore.ai-Server

Im Clore.ai-Marktplatzarrow-up-right, filtern nach:

  • VRAM: ≥ 8 GB für Embedding-Workloads, ≥ 24 GB für lokale LLMs

  • Docker: Aktiviert (Standard bei den meisten Angeboten)

  • Image: nvidia/cuda:12.1-devel-ubuntu22.04 oder pytorch/pytorch:2.2.0-cuda12.1-cudnn8-runtime

Notieren Sie die öffentliche IP und den SSH-Port des Servers aus Meine Bestellungen.

2. Verbinden und GPU überprüfen

3. Erstellen Sie das Haystack-Docker-Image

Haystack v2 empfiehlt die Installation via pip. Erstellen Sie eine benutzerdefinierte Dockerfile:

4. Haystack mit Hayhooks ausführen

Hayhooksarrow-up-right wandelt jede Haystack-Pipeline automatisch in eine REST-API um:

Erwartete Antwort:

5. Erstellen Sie Ihre erste RAG-Pipeline

Schreiben Sie ein Pipeline-YAML, das Hayhooks als Endpoint bereitstellt:

Hayhooks entdeckt und bedient diese Pipeline automatisch. Testen Sie sie:

Konfiguration

Umgebungsvariablen

Variable
Beschreibung
Beispiel

OPENAI_API_KEY

OpenAI-API-Schlüssel für GPT-Modelle

sk-...

ANTHROPIC_API_KEY

Anthropic-API-Schlüssel für Claude

sk-ant-...

HF_TOKEN

Hugging Face-Token für geschützte Modelle

hf_...

HAYSTACK_TELEMETRY_ENABLED

Verwendungstelemetrie deaktivieren

false

CUDA_VISIBLE_DEVICES

Bestimmte GPU auswählen

0

TRANSFORMERS_CACHE

Cache-Pfad für HF-Modelle

/workspace/hf-cache

Mit vollständiger Konfiguration ausführen

Dokumenten-Ingestions-Pipeline

Erstellen Sie eine separate Indexierungs-Pipeline zum Ingestieren von Dokumenten:

Verwendung von Vektor-Datenbanken (Produktion)

Für Produktions-Workloads ersetzen Sie den In-Memory-Store durch eine persistente Vektor-Datenbank:

GPU-Beschleunigung

Haystack nutzt GPU-Beschleunigung in zwei Hauptszenarien:

1. Embedding-Generierung (Sentence Transformers)

GPU ist sehr nützlich beim Einbetten großer Dokumentensammlungen:

2. Lokale LLM-Inferenz (Hugging Face Transformers)

Zum Ausführen von LLMs direkt in Haystack ohne Ollama:

3. Kombination mit Ollama (empfohlener Ansatz)

Für die beste Kombination aus Einfachheit und Leistung: Führen Sie Ollama für LLM-Inferenz und Haystack für Orchestrierung aus:

Überwachen Sie die GPU-Auslastung über beide Container hinweg:

Tipps & bewährte Methoden

Wählen Sie das richtige Embedding-Modell

Modell
VRAM
Geschwindigkeit
Qualität
Am besten geeignet für

BAAI/bge-small-en-v1.5

~0,5 GB

Am schnellsten

Gut

Durchsatzstarke Indexierung

BAAI/bge-base-en-v1.5

~1 GB

Schnell

Besser

Allgemeines RAG

BAAI/bge-large-en-v1.5

~2 GB

Mittel

Am besten

Höchste Genauigkeit

nomic-ai/nomic-embed-text-v1

~1.5 GB

Schnell

Ausgezeichnet

Lange Dokumente

Tipps zum Pipeline-Design

  • Dokumente sinnvoll aufteilen — 200–400 Wortabschnitte mit 10–15% Überlappung funktionieren für die meisten RAG-Anwendungsfälle gut

  • Embeddings cachen — persistieren Sie Ihren Dokumentenspeicher auf der Festplatte; erneutes Einbetten ist teuer

  • Verwenden Sie warm_up() — rufen Sie component.warm_up() vor dem Produktionseinsatz auf, um Modelle in den GPU-Speicher zu laden

  • Batch-Indexierung — verarbeiten Sie Dokumente in Chargen von 32–64 für optimale GPU-Auslastung

  • Mit Metadaten filtern — nutzen Sie Haystacks Metadatenfilterung, um die Retrieval-Scope einzuschränken (z. B. nach Datum, Quelle, Kategorie)

Kostenoptimierung

Hayhooks für externen Zugriff sichern

Fehlerbehebung

Problem
Wahrscheinliche Ursache
Lösung

ModuleNotFoundError: haystack

Paket nicht installiert

Docker-Image neu bauen; prüfen Sie pip install haystack-ai erfolgreich

CUDA out of memory

Embedding-Modell zu groß

Verwenden Sie bge-small-en-v1.5 oder verringern Sie die Batch-Größe

Hayhooks gibt 404 für Pipeline zurück

YAML-Datei nicht gefunden

Prüfen Sie das Volume-Mount; die Pipeline-Datei muss sich in /app/pipelines/

Langsame Embeddings auf CPU

GPU nicht erkannt

Überprüfen Sie --gpus all Flag; prüfen Sie torch.cuda.is_available()

Ollama-Verbindung abgelehnt

Falscher Hostname

Verwenden Sie --add-host=host.docker.internal:host-gateway; URL auf http://host.docker.internal:11434

HuggingFace-Download schlägt fehl

Token fehlt oder Rate-Limit

Setze HF_TOKEN env-Var; stellen Sie sicher, dass das Modell nicht geschützt ist

Pipeline-YAML-Parse-Fehler

Ungültige Syntax

Validieren Sie das YAML; verwenden Sie python3 -c "import yaml; yaml.safe_load(open('pipeline.yml'))"

Container beendet sich sofort

Startfehler

Überprüfen Sie docker logs haystack; stellen Sie sicher, dass CMD in der Dockerfile korrekt ist

Port 1416 extern nicht erreichbar

Firewall / Port-Weiterleitung

Port in den Clore.ai-Bestelloptionen freigeben; prüfen Sie die offenen Ports des Servers

Debug-Befehle

Weiterführende Lektüre

Zuletzt aktualisiert

War das hilfreich?