?
Flyte ist ein Open-Source-Orchestrator, der den Aufbau von Daten- und ML-Pipelines in Produktionsqualität erleichtert. Es ist auf Skalierbarkeit und Reproduzierbarkeit ausgelegt und nutzt Kubernetes als zugrunde liegende Plattform. Mit Flyte können Benutzerteams mithilfe des Python SDK Pipelines erstellen und diese nahtlos sowohl in Cloud- als auch in lokalen Umgebungen bereitstellen, was eine verteilte Verarbeitung und effiziente Ressourcennutzung ermöglicht.
Schreiben Sie Code in Python oder einer anderen Sprache und nutzen Sie eine robuste Typ-Engine.
Führen Sie Ihre Modelle ganz einfach lokal oder in einem Remote-Cluster aus.
pip install flytekit
pyflyte run hello_world.py hello_world_wf
Sind Sie bereit, einen Flyte-Cluster auszuprobieren?
flytectl demo start
pyflyte run --remote hello_world.py hello_world_wf
Möchten Sie mehr sehen, aber nichts installieren?
Gehen Sie zu https://sandbox.union.ai/. Es ermöglicht Ihnen, mit den Funktionen von Flyte von einem gehosteten Jupyter-Notebook aus zu experimentieren.
Bereit zur Produktion?
Anweisungen zur Installation von Flyte in verschiedenen Umgebungen finden Sie im Bereitstellungshandbuch
Stark typisierte Schnittstellen : Validieren Sie Ihre Daten in jedem Schritt des Workflows, indem Sie Datenleitplanken mithilfe von Flyte-Typen definieren.
Beliebige Sprache : Schreiben Sie Code in einer beliebigen Sprache mithilfe von Rohcontainern oder wählen Sie Python-, Java-, Scala- oder JavaScript-SDKs, um Ihre Flyte-Workflows zu entwickeln.
Unveränderlichkeit : Unveränderliche Ausführungen tragen dazu bei, die Reproduzierbarkeit sicherzustellen, indem sie jegliche Änderungen am Status einer Ausführung verhindern.
? Datenherkunft : Verfolgen Sie die Bewegung und Transformation von Daten während des gesamten Lebenszyklus Ihrer Daten und ML-Workflows.
Kartenaufgaben : Erzielen Sie mithilfe von Kartenaufgaben eine parallele Codeausführung mit minimaler Konfiguration.
? Mandantenfähigkeit : Mehrere Benutzer können dieselbe Plattform nutzen und dabei ihre eigenen unterschiedlichen Daten und Konfigurationen beibehalten.
? Dynamische Arbeitsabläufe : Erstellen Sie flexible und anpassungsfähige Arbeitsabläufe, die sich je nach Bedarf ändern und weiterentwickeln können, sodass Sie leichter auf sich ändernde Anforderungen reagieren können.
⏯️ Warten Sie auf externe Eingaben , bevor Sie mit der Ausführung fortfahren.
? Verzweigung : Führen Sie selektiv Verzweigungen Ihres Workflows basierend auf statischen oder dynamischen Daten aus, die von anderen Aufgaben oder Eingabedaten erzeugt werden.
? Datenvisualisierung : Visualisieren Sie Daten, überwachen Sie Modelle und zeigen Sie den Trainingsverlauf anhand von Diagrammen an.
FlyteFile & FlyteDirectory : Übertragen Sie Dateien und Verzeichnisse zwischen lokalem und Cloud-Speicher.
?️ Strukturierter Datensatz : Konvertieren Sie Datenrahmen zwischen Typen und erzwingen Sie die Typprüfung auf Spaltenebene mithilfe der abstrakten 2D-Darstellung, die von Structured Dataset bereitgestellt wird.
?️ Wiederherstellung nach Fehlern : Stellen Sie nur die fehlgeschlagenen Aufgaben wieder her.
? Führen Sie eine einzelne Aufgabe erneut aus : Führen Sie Workflows auf der detailliertesten Ebene erneut aus, ohne den vorherigen Status eines Daten-/ML-Workflows zu ändern.
? Cache-Ausgaben : Cache-Aufgabenausgaben durch Übergabe cache=True
an den Task-Dekorator.
Intra-Task-Checkpointing : Checkpoint-Fortschritt innerhalb einer Aufgabenausführung.
⏰ Timeout : Definieren Sie einen Timeout-Zeitraum, nach dem die Aufgabe als fehlgeschlagen markiert wird.
? Dev to Prod : So einfach wie der Wechsel Ihrer Domäne von Entwicklung oder Staging zur Produktion.
? Spot- oder präemptive Instanzen : Planen Sie Ihre Workflows auf Spot-Instanzen, indem Sie im Task-Decorator interruptible
auf True
setzen.
☁️ Cloud-native Bereitstellung : Stellen Sie Flyte auf AWS, GCP, Azure und anderen Cloud-Diensten bereit.
? Planung : Planen Sie Ihre Daten- und ML-Workflows so, dass sie zu einem bestimmten Zeitpunkt ausgeführt werden.
? Benachrichtigungen : Bleiben Sie über Änderungen am Status Ihres Workflows auf dem Laufenden, indem Sie Benachrichtigungen über Slack, PagerDuty oder E-Mail konfigurieren.
⌛️ Zeitleistenansicht : Bewerten Sie die Dauer jeder Ihrer Flyte-Aufgaben und identifizieren Sie potenzielle Engpässe.
? GPU-Beschleunigung : Aktivieren und steuern Sie die GPU-Anforderungen Ihrer Aufgaben, indem Sie Ressourcen im Task Decorator anfordern.
? Abhängigkeitsisolierung über Container : Pflegen Sie separate Abhängigkeitssätze für Ihre Aufgaben, damit keine Abhängigkeitskonflikte entstehen.
? Parallelität : Flyte-Aufgaben sind von Natur aus parallel, um den Ressourcenverbrauch zu optimieren und die Leistung zu verbessern.
? Weisen Sie Ressourcen dynamisch auf Aufgabenebene zu.
Schließen Sie sich LinkedIn, Spotify, Freenome, Pachama, Warner Bros. und vielen anderen an und übernehmen Sie Flyte für geschäftskritische Anwendungsfälle. Eine vollständige Liste der Anwender und Informationen zum Hinzufügen Ihrer Organisation oder Ihres Projekts finden Sie auf unserer Seite „ANWENDER“.
Monatliche Community-Synchronisierung: Jeden ersten Dienstag im Monat stellt das Flyte-Team hier Updates zum Projekt bereit und Community-Mitglieder können ihre Fortschritte teilen und Fragen stellen.
Slack: Treten Sie der Flyte-Community auf Slack bei, um mit anderen Benutzern zu chatten, Fragen zu stellen und Hilfe zu erhalten.
? Youtube: Schauen Sie sich Podiumsdiskussionen, Erfolgsgeschichten von Kunden, Community-Updates und detaillierte Einblicke in die Funktionen an.
? Blog: Hier finden Sie Tutorials und detaillierte Einblicke, die Ihnen helfen, mehr über Flyte zu erfahren.
RFCs: RFCs werden verwendet, um neue Ideen und Funktionen zur Verbesserung von Flyte vorzuschlagen. Sie können sie nutzen, um über die neuesten Entwicklungen auf dem Laufenden zu bleiben und zum Wachstum der Plattform beizutragen.
Es gibt viele Möglichkeiten, sich bei Flyte zu engagieren, darunter:
help wanted
- oder good-first-issue
und befolgen Sie die Anleitung „CONTRIBUTING“, um Änderungen an der Codebasis einzureichen.Flyte ist unter der Apache-Lizenz 2.0 verfügbar. Setzen Sie es mit Bedacht ein.