3 Punkte von GN⁺ 2024-04-13 | Noch keine Kommentare. | Auf WhatsApp teilen
  • Transformers.js ist eine moderne Machine-Learning-Bibliothek für das Web, mit der sich 🤗 Transformers direkt im Browser ohne Server ausführen lassen
  • Sie ist so konzipiert, dass sie funktional der Python-transformers-Bibliothek entspricht, sodass dieselben vortrainierten Modelle mit einer ähnlichen API ausgeführt werden können
  • Unterstützt gängige Aufgaben in verschiedenen Modalitäten wie Natural Language Processing, Computer Vision, Audio und Multimodalität
  • Führt Modelle im Browser mit ONNX Runtime aus, und mit 🤗 Optimum lassen sich vortrainierte Modelle aus PyTorch, TensorFlow oder JAX einfach nach ONNX konvertieren

Hauptfunktionen

  • Unterstützung derselben pipeline-API wie in der Python-Bibliothek, wodurch eine Umstellung aus bestehendem Code einfach möglich ist
  • Unterstützung für zahlreiche Aufgaben und Architekturen (einschließlich Angabe der Unterstützung sowie Dokumentations-/Modell-Links)
    • Natural Language Processing: Fill-Mask, Question Answering, Sentence Similarity, Summarization, Text Classification, Text Generation, Text-to-text Generation, Token Classification, Translation, Zero-Shot Classification, Feature Extraction usw.
    • Vision: Depth Estimation, Image Classification, Image Segmentation, Image-to-Image, Object Detection, Image Feature Extraction usw.
    • Audio: Audio Classification, Automatic Speech Recognition, Text-to-Speech
    • Multimodal: Document Question Answering, Image-to-Text, Zero-Shot Audio/Image Classification, Zero-Shot Object Detection usw.
  • Verwendet standardmäßig gehostete vortrainierte Modelle und vorkompilierte WASM-Binärdateien, ist aber anpassbar

Installation und Verwendung

  • Kann über NPM installiert werden: npm i @xenova/transformers
  • Kann ohne Bundler in Vanilla JS über CDN oder statisches Hosting verwendet werden
  • Bietet verschiedene Beispielanwendungen/Templates: Whisper Web, Doodle Dash, Code Playground, Semantic Image Search, Vanilla JavaScript, React, Text to speech, Browser extension, Electron, Next.js, Node.js usw.
  • Über die Umgebungs-Konfiguration lassen sich Modellpfade, das Laden entfernter Modelle, Speicherorte für WASM-Dateien usw. anpassen
  • Mit dem bereitgestellten Konvertierungsskript lassen sich Modelle aus PyTorch, TensorFlow und JAX nach ONNX konvertieren

Unterstützte Modelle

  • Unterstützung für zahlreiche Modelle wie ALBERT, Audio Spectrogram Transformer, BART, BEiT, BERT, Blenderbot, BLOOM, CamemBERT, Chinese-CLIP, CLAP, CLIP, CLIPSeg, CodeGen, ConvBERT, ConvNeXT, DeBERTa, DeiT, Depth Anything, DETR, DINOv2, DistilBERT, DiT, Donut, DPT, EfficientNet, ELECTRA, ESM, Falcon, FLAN-T5, GLPN, GPT Neo, GPT NeoX, GPT-2, GPT-J, GPTBigCode, HerBERT, Hubert, LongT5, LLaMA, MPNet, MPT, MT5, NLLB, Nougat, OPT usw.

Meinung von GN⁺

  • Transformers.js ist eine nützliche Bibliothek, die es ermöglicht, verschiedene moderne Transformer-Modelle ohne Server direkt im Browser auszuführen. Besonders durch die Unterstützung für Natural Language Processing, Computer Vision und Audio ist sie vielseitig einsetzbar
  • Durch die ähnliche API zur Python-Bibliothek ist ein Wechsel aus bestehendem Code einfach, und dank Unterstützung vieler vortrainierter Modelle kann man sie ohne zusätzliches Training sofort einsetzen
  • Die bereitgestellten Beispielanwendungen und Templates machen den Einsatz für unterschiedliche Zwecke einfach, und die Anpassungsmöglichkeiten sorgen für hohe Flexibilität
  • Da die Ausführung im Browser erfolgt, kann es jedoch Ressourcenbeschränkungen geben, und die fortlaufende Ergänzung bzw. Unterstützung neuer Modelle kann in Bezug auf Entwicklung und Wartung aufwendig sein
  • Ähnliche browserbasierte ML-Frameworks sind TensorFlow.js, ONNX.js und WebDNN. Insbesondere TensorFlow.js unterstützt sowohl Browser als auch Node.js und bietet mehr Funktionen wie Transfer Learning und Visualisierung

Noch keine Kommentare.

Noch keine Kommentare.