Zugang aus Übersee: www.kdjingpai.com
Ctrl + D Lesezeichen für diese Seite

FastDeploy ist ein Open-Source-Tool, das vom PaddlePaddle-Team entwickelt wurde und sich auf die schnelle Bereitstellung von Deep-Learning-Modellen konzentriert. Es unterstützt eine Vielzahl von Hardware und Frameworks, deckt mehr als 20 Szenarien wie Bild, Video, Text und Sprache ab und enthält mehr als 150 Mainstream-Modelle.FastDeploy bietet sofort einsatzbereite Lösungen für Produktionsumgebungen, vereinfacht den Entwicklungsprozess und verbessert die Inferenzleistung. Es unterstützt die Bereitstellung von der Cloud bis hin zu mobilen und Edge-Geräten und ist für Unternehmen und Entwickler geeignet, um KI-Anwendungen schnell zu implementieren. Das Projekt ist unter Apache-2.0 lizenziert, hat eine aktive Community, ist gut dokumentiert und eignet sich für Entwickler, die eine effiziente Bereitstellung anstreben.

 

Funktionsliste

  • Unterstützung mehrerer Hardware: einschließlich NVIDIA GPU, Kunlun XPU, Rise NPU, RK3588 usw., die sich an eine Vielzahl von Chips anpassen.
  • Unterstützung mehrerer Modelle: für mehr als 20 Szenarien wie Bildklassifizierung, Zielerkennung, OCR, Sprachsynthese usw., mit Unterstützung von über 150 Modellen.
  • Effiziente Inferenzbeschleunigung: Unterstützung der Quantisierung (z. B. W8A16, FP8), spekulative Dekodierung, mehrere Token Technologien wie die Vorhersage.
  • Sofort einsatzbereit für Produktionsumgebungen: Unterstützung vLLM und OpenAI-APIs, um die Bereitstellung von Diensten zu vereinfachen.
  • Visual Deployment: In Kombination mit VisualDL unterstützt es die Änderung der Modellkonfiguration, die Leistungsüberwachung und das Servicemanagement.
  • Plattformübergreifende Bereitstellung: Unterstützt Cloud-, Mobil-, Edge-Device- und Web-Bereitstellung.
  • Flexible Kompilierungsoptionen: Entwickler können das Backend-Modul nach ihren Bedürfnissen auswählen, um den Ressourcenverbrauch zu reduzieren.

Hilfe verwenden

Einbauverfahren

FastDeploy bietet Python- und C++-Installationsmethoden, die für unterschiedliche Entwicklungsanforderungen geeignet sind. Im Folgenden finden Sie ein Beispiel für eine Python-Installation, die auf einem Ubuntu-System basiert. Sie müssen sicherstellen, dass Python 3.6+ und seine Abhängigkeiten auf Ihrem System installiert sind.

  1. Vorbereiten der Umgebung
    Installieren Sie die erforderlichen Abhängigkeiten:

    sudo apt update
    sudo apt install -y python3 python3-dev python3-pip gcc python3-opencv python3-numpy
    

Es wird empfohlen, Abhängigkeiten mit Hilfe einer virtuellen Umgebung wie conda zu isolieren:

conda create -n fastdeploy python=3.8
conda activate fastdeploy
  1. Installieren von PaddlePaddle
    FastDeploy stützt sich auf das PaddlePaddle-Framework, um die Entwicklungsversion zu installieren:

    python -m pip install paddlepaddle==0.0.0 -f https://www.paddlepaddle.org.cn/whl/linux/cpu-mkl/develop.html
    
  2. Installation von FastDeploy
    Vorkompilierte Pakete können über pip installiert werden:

    pip install fastdeploy-python -f https://www.paddlepaddle.org.cn/whl/fastdeploy.html
    

    oder aus dem Quellcode kompiliert:

    git clone https://github.com/PaddlePaddle/FastDeploy.git
    cd FastDeploy/python
    export ENABLE_ORT_BACKEND=ON
    export ENABLE_PADDLE_BACKEND=ON
    export ENABLE_VISION=ON
    python setup.py build
    python setup.py bdist_wheel
    pip install dist/fastdeploy_python-*-linux_x86_64.whl
    

    Wenn Sie ein Gerät wie den RK3588 kompilieren, müssen Sie die Option ENABLE_RKNPU2_BACKEND=ON im Gesang antworten RKNN2_TARGET_SOC=RK3588.

  3. Überprüfen der Installation
    Führen Sie nach der Installation den Beispielcode aus, um ihn zu überprüfen:

    import fastdeploy
    print(fastdeploy.__version__)
    

Funktion Betriebsablauf

1. der Einsatz des Modells

FastDeploy unterstützt die Bereitstellung mehrerer Modelle mit einem einzigen Klick. Nehmen Sie das Zielerkennungsmodell als Beispiel und führen Sie das Modell "PaddleDetection" aus:

from fastdeploy.vision import detection
model = detection.PaddleDetectionModel(
model_file="ppyoloe_crn_l_300e_coco/model.pdmodel",
params_file="ppyoloe_crn_l_300e_coco/model.pdiparams",
config_file="ppyoloe_crn_l_300e_coco/infer_cfg.yml"
)
result = model.predict("000000014439.jpg")
print(result)

Die Benutzer müssen die Modelldateien herunterladen (z. B. ppyoloe_crn_l_300e_coco.tgz) und entpacken Sie es, die Dateien sind über den offiziellen Link verfügbar.

2. die Anpassung der Hardware

FastDeploy unterstützt mehrere Hardware-Einsätze. Zum Beispiel die Bereitstellung auf RK3588:

cd demos/vision/detection/paddledetection/rknpu2/python
python infer.py --model_file picodet_s_416_coco_lcnet_rk3588.rknn \
--config_file picodet_s_416_coco_lcnet/infer_cfg.yml \
--image 000000014439.jpg

Stellen Sie sicher, dass der entsprechende Treiber (z. B. rknpu2) auf dem Gerät installiert ist.

3. beschleunigte Argumentation

FastDeploy bietet eine Vielzahl von Beschleunigungstechniken. So werden zum Beispiel Quantisierungstechniken verwendet (W8A16):

model.enable_quantization("W8A16")

oder die spekulative Dekodierung aktivieren:

model.enable_speculative_decoding()

Diese Funktionen verbessern die Inferenzgeschwindigkeit erheblich und eignen sich für anspruchsvolle Hochleistungsszenarien.

4. visueller Einsatz

In Verbindung mit VisualDL können Benutzer Modelle über eine Webschnittstelle verwalten:

  • Starten Sie den VisualDL-Dienst:
    visualdl --model-dir model_path --host 0.0.0.0 --port 8040
    
  • Zugriff über einen Browser http://localhost:8040, Abstimmung der Modellkonfigurationen, Überwachung der Leistung.

5. die Unterstützung der Dokumentation

FastDeploy bietet eine ausführliche Dokumentation in der <FastDeploy>/docs Verzeichnis oder GitHub-Repository. Benutzer können sich auf:

  • Liste der unterstützten Modelle:<FastDeploy>/docs/supported_models.md
  • Leitfaden zur Hardware-Anpassung:<FastDeploy>/docs/cn/build_and_install

caveat

  • Vergewissern Sie sich, dass Hardwaretreiber installiert sind, z. B. der rknpu2-Treiber für die RK3588.
  • Bei unzureichendem Speicher kann die Kompilierung fehlschlagen. Es wird empfohlen, dem RK3588 mindestens eine 4 GB große Swap-Partition hinzuzufügen.
  • Das Projekt wird häufig aktualisiert, daher empfiehlt es sich, regelmäßig auf GitHub nach der neuesten Version zu suchen.

Anwendungsszenario

  1. Intelligente Sicherheit
    FastDeploy setzt Modelle zur Zielerkennung und Gesichtserkennung für Überwachungssysteme ein. Entwickler können PaddleDetection-Modelle schnell auf Edge-Geräten wie dem RK3588 ausführen, um anomales Verhalten in Echtzeit zu erkennen.
  2. intelligenter Einzelhandel
    Unterstützt OCR- und Bildklassifizierungsmodelle zur Verkehrszählung und Produktidentifizierung. Einzelhändler können Modelle auf mobilen Geräten einsetzen, um das Kundenverhalten mit FastDeploy zu analysieren.
  3. Industrieautomatisierung
    Verwenden Sie FastDeploy, um Bildsegmentierungsmodelle in Produktionslinien zur Überprüfung der Produktqualität einzusetzen. Unterstützt mehrere Hardwareanpassungen für komplexe Fabrikumgebungen.
  4. Sprachinteraktion
    Stellen Sie Sprachsynthesemodelle für intelligenten Kundenservice oder Sprachassistenten bereit. Die Multi-Token-Vorhersagetechnologie von FastDeploy verbessert die Geschwindigkeit der Spracherzeugung.

QA

  1. Welche Hardware wird von FastDeploy unterstützt?
    Unterstützung von NVIDIA GPU, Kunlun XPU, Rise NPU, RK3588, Iluvatar GPU usw. Einige Hardware wie MetaX GPU wird gerade angepasst.
  2. Wie wechsle ich das Inferenz-Backend?
    Durch Setzen einer Umgebungsvariablen (z. B. ENABLE_ORT_BACKEND=ON) oder das Backend im Code angeben (z. B. model.set_backend("paddle")) Umschalten der Inferenzmaschinen.
  3. Unterstützt FastDeploy die Webbereitstellung?
    Ja, die Bereitstellung von Web- und Applets wird über Paddle.js unterstützt, siehe <FastDeploy>/docs/web_deployment.md.
  4. Was sollte ich tun, wenn ich unter Gedächtnisschwund leide?
    Die Anzahl der Tasks kann zur Kompilierzeit begrenzt werden (z. B. python setup.py build -j 4), oder fügen Sie eine Swap-Partition auf dem Gerät hinzu.
0Lesezeichen
0Gelobt

Empfohlen

Sie können keine AI-Tools finden? Versuchen Sie es hier!

Geben Sie einfach das Schlüsselwort Barrierefreiheit Bing-SucheDer Bereich KI-Tools auf dieser Website bietet eine schnelle und einfache Möglichkeit, alle KI-Tools auf dieser Website zu finden.

zurück zum Anfang

de_DEDeutsch