Skip to content

Pipelines erstellen mit dem Swiss AI Hub SDK

Das Swiss AI Hub Pipeline SDK bietet ein leistungsstarkes, produktionsreifes Framework zum Erstellen von Dokumentenverarbeitungs-Pipelines. Es wurde entwickelt, um Dokumente aus verschiedenen Quellen aufzunehmen, zu parsen und durchsuchbare Vektor-Embeddings für Retrieval-Augmented Generation (RAG)-Systeme zu erstellen.

Dieser Leitfaden erklärt die Architektur des SDKs und zeigt Ihnen, wie Sie robuste, automatisierte Daten-Pipelines konfigurieren und deployen.

Die Standard-Pipeline vom Data Lake zum Vector Store

Der Kern des SDKs ist eine vorgefertigte, konfigurierbare Pipeline, die den gesamten Weg von Rohdateien in einem Data Lake bis zu indizierten Embeddings in einem Vector Store abwickelt.

Grundprinzipien

Unser SDK basiert auf einigen Grundprinzipien, um sicherzustellen, dass Pipelines effizient, skalierbar und wartbar sind:

  • Asset Factories: Anstatt Boilerplate-Code zu schreiben, verwenden Sie einfache Factory-Funktionen, um ganze Sätze vorkonfigurierter Assets und Ressourcen zu generieren (z.B. default_definitions).
  • Änderungsgesteuerte Automatisierung: Pipelines werden automatisch als Reaktion auf Datenänderungen ausgeführt, nicht nach festen Zeitplänen. Dies wird durch die Verwendung von observablen Assets erreicht, die Quellsysteme überwachen.
  • Dokumentenebene-Isolation: Jedes Dokument wird in seiner eigenen Partition verarbeitet, was bedeutet, dass ein Fehler in einem Dokument nicht die gesamte Pipeline stoppt.
  • Pluggable I/O: Benutzerdefinierte I/O Manager abstrahieren die Speicherlogik, was die Integration mit verschiedenen Datenbanken wie MongoDB und Milvus erleichtert, ohne Ihren Kernverarbeitungscode zu ändern.

Schnellstart: Eine komplette Pipeline in unter 10 Zeilen

Die Factories des SDKs machen es unglaublich einfach, eine komplette Pipeline aufzubauen. Die Funktion default_definitions bündelt alle notwendigen Assets, Ressourcen, Jobs und Zeitpläne.

Erstellen Sie eine Datei namens my_pipeline.py:

python
from swiss_ai_hub.pipeline.util.definitions_util import default_definitions

# This single function call creates a complete, production-ready pipeline
# that watches an S3 bucket and processes its contents into a local vector store.
defs = default_definitions(
    datalake_container_name="my-company-docs",
    embedding_model_name="local/qwen-embedding",
    llm_model_name="local/gemma-3-multimodal-small",
    with_summary_nodes=True
)

Um es auszuführen, zeigen Sie einfach mit der Dagster UI auf Ihre Datei: dagster dev -f my_pipeline.py

Dieser einzelne Funktionsaufruf bietet:

  • Einen observablen Data Lake, der neue oder geänderte Dokumente automatisch erkennt.
  • Einen mehrstufigen Verarbeitungs-Workflow einschließlich Parsing, Chunking und Embedding.
  • Integration mit MongoDB für einen Dokumentenspeicher und Milvus für einen Vector Store.
  • Vorkonfigurierte Jobs, Zeitpläne und Sensoren für produktionsreife Automatisierung.

Nächste Schritte

  1. Grundlagen von Pipelines - Verstehen Sie die architektonischen Entscheidungen und Muster für den Aufbau von Pipelines
  2. Kernmuster - Verstehen Sie die Kernmuster für den Aufbau von Pipelines mit Beispielen
  3. Daten-Ingestions-Pipeline - Konfigurieren und erweitern Sie die Standard-Pipeline
  4. Job-Planung - Planen Sie Ihre Pipelines für automatische Ausführungen
  5. Pipeline-Beobachtung Überwachen Sie Ihre Pipelines auf Leistung und Fehler

Gebaut mit ❤️ in der Schweiz 🇨🇭