Transformers.js: Neuer Meilenstein für maschinelles Lernen direkt im Webbrowser
Mindverse News
KI-gestützt erstellt 4 Quellen Arbeitsweise
// Inhalt · 8 Abschnitte
Transformers.js: Eine Revolution für Machine Learning im Browser
Einführung
Die Welt der künstlichen Intelligenz und des maschinellen Lernens entwickelt sich kontinuierlich weiter. Eine der neuesten und spannendsten Entwicklungen ist die Einführung von Transformers.js, einer JavaScript-Version der bekannten Transformers-Bibliothek von Hugging Face. Diese neue Technologie ermöglicht es Entwicklern, hochentwickelte Machine Learning-Modelle direkt im Browser auszuführen. Dies eröffnet eine Vielzahl von neuen Möglichkeiten und Anwendungen.Hintergrund
Transformers sind eine Klasse von Modellen, die besonders für Aufgaben des Natural Language Processing (NLP) geeignet sind, wie Textklassifikation, Named Entity Recognition (NER), Fragebeantwortung, Textgenerierung und vieles mehr. Die ursprüngliche Transformers-Bibliothek von Hugging Face ist in Python geschrieben und hat sich in der KI-Community schnell etabliert. Allerdings konnte sie aufgrund ihrer Abhängigkeiten und der Notwendigkeit eines Servers nicht direkt im Browser verwendet werden.Die Rolle von Transformers.js
Transformers.js wurde entwickelt, um diese Einschränkung zu überwinden. Durch die Nutzung von ONNX Runtime können Modelle direkt im Browser ausgeführt werden, ohne dass ein Server erforderlich ist. Dies bedeutet, dass Anwendungen in Echtzeit auf Benutzerinteraktionen reagieren können, ohne dass Daten an einen externen Server gesendet werden müssen, was sowohl die Leistung als auch die Privatsphäre verbessert.Integration mit Pyodide und Pyodide-basierten Frameworks
Ein weiteres spannendes Feature von Transformers.js ist seine Integration mit Pyodide und Pyodide-basierten Frameworks wie JupyterLite, stlite (Streamlit), Shinylive (Shiny für Python), PyScript und HoloViz Panel. Pyodide ist eine Python-Laufzeitumgebung, die in WebAssembly kompiliert wurde und im Browser ausgeführt werden kann. Dies ermöglicht es, Python-Code direkt im Browser auszuführen, was die Entwicklung von Webanwendungen erheblich vereinfacht.Warum Pyodide?
Pyodide ermöglicht es Entwicklern, die umfangreiche Python-Ökosystem zu nutzen, ohne auf die Vorteile von Webanwendungen verzichten zu müssen. Durch die Kombination von Pyodide und Transformers.js können Entwickler komplexe Machine Learning-Modelle in Python schreiben und diese direkt im Browser ausführen.Beispielanwendungen
- **JupyterLite**: Ein Browser-basiertes Interface für Jupyter-Notebooks, das die Ausführung von Python-Code ermöglicht. Mit Transformers.js können hier Modelle für Sentiment-Analyse oder Bildklassifikation direkt im Notebook ausgeführt werden. - **stlite (Streamlit)**: Ein Framework zur Erstellung von Webanwendungen aus Python-Skripten. Entwickler können interaktive Dashboards erstellen, die in Echtzeit auf Benutzereingaben reagieren. - **Shinylive**: Eine Python-Version des beliebten R-Shiny-Frameworks, das ebenfalls im Browser ausgeführt werden kann. - **PyScript**: Ermöglicht es, Python-Code direkt in HTML-Dateien einzubetten und auszuführen. - **HoloViz Panel**: Ein weiteres Framework zur Erstellung interaktiver Webanwendungen, das sich besonders für die Visualisierung von Daten eignet.Technische Details und API
Transformers.js bietet eine API, die der originalen Transformers-API von Hugging Face sehr ähnlich ist. Dies erleichtert den Umstieg für Entwickler, die bereits mit der Python-Bibliothek vertraut sind. Hier ein Vergleich der Syntax:Python (original)
```python from transformers import pipeline # Allocate a pipeline for sentiment-analysis pipe = pipeline('sentiment-analysis') out = pipe('I love transformers!') # [{'label': 'POSITIVE', 'score': 0.999806941}] ```JavaScript (Transformers.js)
```javascript import { pipeline } from '@xenova/transformers'; // Allocate a pipeline for sentiment-analysis let pipe = await pipeline('sentiment-analysis'); let out = await pipe('I love transformers!'); // [{'label': 'POSITIVE', 'score': 0.999817686}] ```Spezialfälle: as_url()
Ein besonderes Feature von Transformers.js.py ist die Funktion `as_url()`, die lokale Dateipfade in URLs umwandelt. Dies ist besonders nützlich, wenn lokale Dateien in der virtuellen Dateisystemumgebung von Pyodide verwendet werden sollen.Beispiel
```python from transformers_js_py import import_transformers_js, as_url transformers = await import_transformers_js() pipeline = transformers.pipeline pipe = await pipeline('image-classification') local_image_path = "/path/to/image.jpg" input_url = as_url(local_image_path) # Converts a local file path into a URL that can be passed to `pipe()` result = await pipe(input_url) ```Beispiele und Demos
Transformers.js bietet eine Vielzahl von Beispielen und Demos, die zeigen, wie die Bibliothek in verschiedenen Kontexten verwendet werden kann. Hier sind einige Beispiele: - **JupyterLite**: Ein Notebook, das zeigt, wie man Transformers.js verwendet, um eine Sentiment-Analyse durchzuführen. - **stlite (In-browser Streamlit)**: Eine interaktive Webanwendung zur Sentiment-Analyse. - **Gradio-Lite**: Eine serverlose Gradio-Anwendung, die vollständig im Browser läuft. - **Shinylive**: Eine Anwendung zur Sentiment-Analyse mit dem Shiny-Framework. - **PyScript**: Ein Beispiel, das zeigt, wie man Transformers.js in einer HTML-Datei verwendet. - **Panel**: Eine Anwendung zur Sentiment-Analyse mit HoloViz Panel.Fazit
Transformers.js stellt einen bedeutenden Fortschritt in der Entwicklung von Machine Learning-Anwendungen dar, die direkt im Browser ausgeführt werden können. Durch die Integration mit Pyodide und anderen Frameworks wird die Entwicklung interaktiver Webanwendungen erheblich vereinfacht. Dies eröffnet neue Möglichkeiten für Entwickler und Anwender gleichermaßen.Bibliographie
//Nächster Artikel
Open Source
Direkteinreichung von Fachpublikationen: Workflows auf Hugging Face und regulatorische Vorgaben im Open-Access-VerlagswesenAnalyse der Einreichungsprozesse für Forschungsarbeiten über Hugging Face Daily Papers sowie der KI- und Lizenzvorgaben im Open-Access-Verlagswesen.

// Artikel teilen
Tools & Entwicklung
Ein umfassender Einstieg in Maschinelles Lernen mit PythonLerne ML & Deep Learning mit Python! Unser Kurs vermittelt Softwareentwicklern praxisnah KI-Grundlagen, ML-Algorithmen & neuronale Netze. In 5 Live-Sessions mit Übungen zu NumPy, pandas, Keras & TensorFlow. Werde jetzt zum ML-Experten!
Open Source
Hugging Face als zentrale Plattform für Künstliche Intelligenz und maschinelles LernenEntdecken Sie Hugging Face: Die führende Plattform für ML & KI. Greifen Sie auf Millionen Open-Source-Modelle, Datensätze & Tools zu. Beschleunigen Sie Ihre KI-Entwicklung und -Bereitstellung für Unternehmen.
Modelle & Forschung
Neue Möglichkeiten zur Integration von Remote-Speicher in maschinelles Lernen mit hf-mountHugging Face stellt hf-mount vor: Binde Remote-Speicher (Buckets, Modelle, Datensätze) als lokales Dateisystem ein. Nie wieder große ML-Modelle oder Datensätze komplett herunterladen! Optimiert ML-Workflows, spart lokalen Speicher & Zeit mit Lazy Loading.
Praxis & Anwendung
Energieeffizienz in 5G-Netzwerken durch KI und maschinelles LernenKI & ML als Schlüssel für nachhaltige 5G-Netzwerke: Senken Sie den Energieverbrauch um bis zu 33% mit intelligenten Schlafmodi & RAN-Optimierung. Reduzieren Sie Betriebskosten, erfüllen Sie ESG-Ziele und bauen Sie eine grüne 5G-Infrastruktur auf.
// Dranbleiben
Mindverse News folgen
Neue Meldungen erhalten Sie über unseren RSS-Feed oder auf LinkedIn.
Passend dazu in Mindverse Studio
Recherchieren Sie KI-News wie diese selbst — mit Mindverse Studio.
7 Tage kostenlos testen — ohne Kreditkarte, mit 200 Credits. Für Fragen zur Umsetzung buchen Sie eine persönliche Demo.
//Chronik
Aus dem Archiv · rund um den 27. August 2024
← Davor erschienen