Allgemeine Einführung
Skyvern ist ein Tool zur Automatisierung von Browser-Workflows unter Verwendung von Large Language Modelling (LLM) und Computer Vision Techniken. Es kann anfällige oder unzuverlässige Automatisierungslösungen ersetzen, indem es einen einfachen API-Endpunkt bereitstellt, mit dem manuelle Aktionen auf einer großen Anzahl von Websites effizient automatisiert werden können.Skyvern kann auf Websites arbeiten, die noch nie zuvor gesehen wurden, und ordnet visuelle Elemente automatisch den Aktionen zu, die zur Vervollständigung des Workflows erforderlich sind, ohne dass ein benutzerdefinierter Code erforderlich ist.
Skyvern ist ein bisschen wie BabyAGI und AutoGPT mit Vision-Fähigkeiten, bei denen mehrere Agenten den Prozess des Nachdenkens über und des Handelns nach Aufgabenzielen vollständig automatisieren.
Skyvern Funktionsliste
- Browser-Workflows automatisierenAutomatisieren Sie verschiedene Aufgaben im Browser durch LLM und Computer Vision Techniken.
- API-EndpunktBietet eine einfache API-Schnittstelle für einfache Integration und Aufrufe.
- Kein eigener Code erforderlichKeine Notwendigkeit, benutzerdefinierte Skripte für jede Website zu schreiben, anpassbar.
- Widerstand gegen Änderungen des Web-LayoutsDie Funktion ist nicht auf einen festen XPath oder Selektor angewiesen und kann mit Änderungen im Seitenlayout umgehen.
- großflächige AnwendungDie Möglichkeit, einen einzigen Arbeitsablauf auf mehrere Standorte anzuwenden.
- intelligentes ZusammenspielReasoning mit LLM zur Bewältigung komplexer Interaktionsszenarien.
Hilfe verwenden
Ablauf der Installation
- Vorbereitung der Umwelt::
- Stellen Sie sicher, dass Sie Python 3.11 und höher installiert haben.
- Installieren Sie das Tool zur Verwaltung der Poetry-Abhängigkeiten.
- Installieren Sie die PostgreSQL-Datenbank.
- Installieren Sie die Node.js-Umgebung.
- Unterstützung der Docker-Bereitstellung mit nur einem Klick
- Quellcode klonen::
git clone https://github.com/skyvern-ai/skyvern.git cd skyvern
- Installation von Abhängigkeiten::
. /setup.sh
- Umgebungsvariablen konfigurieren::
- Änderungen
.env
geben Sie den erforderlichen API-Schlüssel und die Konfigurationsparameter ein.
- Änderungen
- Neue Dienste::
docker-compose up -d
Visualisierungsaufgabe
Wie man die von Skyvern angezeigten Informationen versteht
Visualisierung der Ergebnisse
Skyvern verfügt über ein Visualisierungstool, das Ihnen hilft, die Leistung Ihrer Aufgaben zu verstehen. Navigieren Sie zunächst zur Seite Aufgabenverlauf und klicken Sie auf eine beliebige Aufgabe, um sie anzuzeigen.
Rigg
Jede von Skyvern durchgeführte Aktion kann im Aktionsbetrachter angezeigt werden und wird von einem Screenshot des Bildschirmzustands nach Durchführung der Aktion begleitet.
Aufzeichnung (Video oder Audio)
Jede Skyvern-Aufgabe enthält eine Aufzeichnung des gesamten Vorgangs (End-to-End). Um die Aufzeichnung anzusehen, klicken Sie auf die Registerkarte Aufzeichnungen.
Parameter der Mission
Aufgabenparameter sind die Eingaben, die Sie Skyvern zur Verfügung stellen. Dazu gehören URLs, Extraktionsregeln und alle anderen relevanten Informationen.
Diagnostisches Protokoll
Die Registerkarte Diagnose enthält Informationen, die Skyvern für die Verarbeitung verwendet, darunter kommentierte Screenshots, Aktions-Screenshots, Elementbäume, Hinweise, Aktionslisten, Seiten-HTML und rohe Large Language Model (LLM)-Anfragen.
Arbeitsablauf
Workflow - mehrere Aufgaben miteinander verknüpfen
Ein Workflow stellt die Verknüpfung mehrerer Datenpakete dar. Stellen Sie sich vor, Sie rufen mehrere Aufgaben nacheinander auf, führen eine bedingte Logik aus, extrahieren Daten im CSV-Format, usw. All diese Ideen werden in unserer Workflow-Funktionalität unterstützt.
Alle unsere Arbeitsabläufe beginnen mit YAML Formatdefinitionen, aber die neue Version bietet eine grafische Schnittstelle, mit der mehrere Komponenten miteinander verknüpft werden können, um eine bestimmte Ausgabe zu erzeugen.
Unterstützte Module
- TaskBlock: Der Magie Skyvern navigiert durch die Websites, um Aktionen durchzuführen und/oder Informationen zu extrahieren.
- ForLoopBlock
- CodeBlock
- TextPromptBlock
- HerunterladenToS3Block
- UploadToS3Block
- SendEmailBlock
- FileParserBlock
Eingänge des Aufgabenblocks
- URL (normalerweise erforderlich). Der Ausgangspunkt für den Skyvern Agent ist im Idealfall die Ziel-Website, die Sie automatisieren möchten.
- Wenn diese Eingabe im Workflow-Bildschirm leer gelassen wird, wird dort fortgefahren, wo der vorherige Knoten aufgehört hat. Der Zweck des Navigationsziels besteht darin, den Startpunkt des Bearbeiters festzulegen oder zurückzusetzen.
- Wenn Sie sich im ersten Aufgabenblock bei einer Website angemeldet haben, können Sie die URL im zweiten Block leer lassen, um nach der Anmeldung fortzufahren
- Zielsetzung der Navigation (normalerweise erforderlich). Eine detaillierte Beschreibung, wohin Skyvern navigiert und welche Aktionen durchgeführt werden. Ein klares Navigationsziel sollte ein einzelnes, in Schritte unterteiltes Ziel sein. Vermeiden Sie die Angabe mehrerer Ziele. Sie müssen "COMPLETE" verwenden, um den Abschluss des Ziels anzugeben, oder "TERMINATE", um das Ziel abzubrechen!
- Das Navigationsziel wird nicht zum Laden von URLs verwendet; die Aufforderung an Skyvern, "Visit Site A" in dieses Feld einzutragen, hat nicht den gewünschten Effekt!
- Der Abbruch der Operation führt dazu, dass Skyvern erklärt, warum die Navigation gestoppt wurde
- Dieses Feld kann weggelassen werden, wenn Sie möchten, dass Skyvern nur Daten extrahiert, ohne zu einem anderen Ort zu navigieren
- Zielsetzung der Datenextraktion (fakultativ). Gibt es noch andere Daten, die von Skyvern extrahiert und zurückgegeben werden, außer der Navigationsposition und den Aktionen von Skyvern? Gute Datenextraktionsziele sollten angeben, welche Daten Skyvern an den Benutzer zurückgibt
- Bitte beachten Sie, dass die Datenextraktion erst erfolgt, nachdem Skyvern die Navigation abgeschlossen hat!
- Extraktion des Informationsmodells (fakultativ). Wenn Sie Datenextraktionsziele haben, benötigen einige Benutzer die Daten für interne Zwecke möglicherweise in einem bestimmten Format. Die Navigationslast akzeptiert die JSON-Formatspezifikation für die Formatierung von Datenrückgaben
- Maximale Anzahl der zurückgelegten Schritte (fakultativ). Einige Benutzer möchten die Kosten nach der Anzahl der Schritte in einer Aufgabe begrenzen
- Maximale Anzahl von Wiederholungsversuchen (fakultativ). Anzahl der zulässigen Wiederholungsversuche, wenn ein Schritt fehlschlägt
- Download abgeschlossen und fertig (fakultativ). Erlauben Sie Skyvern, Aufgaben zu erledigen, nachdem die Datei heruntergeladen wurde
- Datei-Suffix (fakultativ). Kennungen, die an heruntergeladene Dateien angehängt sind
- TOTP-URL und TOTP-Kennung (fakultativ). Wenn Sie ein internes System haben, das den TOTP-Code für 2FA speichern kann, ruft diese URL diesen Speicher auf. Die Kennung verknüpft den Code mit der Aufgabe, was wichtig ist, wenn Sie mehrere Aufgaben gleichzeitig ausführen. Wenn Sie die 2FA-Erfassung in einem Arbeitsablauf einrichten wollen, muss die Bitte kontaktieren Sie uns.
- parametrisch (fakultativ). Parameter sind benutzerdefinierte Platzhalter, die den Lauf spezifizieren. Sie können Workflow-Parameter sein, die über einen API-Aufruf übergeben werden, oder Ausgabeparameter, die aus einem vorherigen Aufgabenblock stammen. Falls angegeben, werden diese Parameter von Skyvern verwendet, um die Navigation zu unterstützen, Formulare auszufüllen oder weitere Aktionen auf der Website zu beeinflussen.
Ablauf der Aufgaben-API-Verwendung (Beispiel)
Die Tasks API ist vollständig dokumentiert unter
- Aufgaben erstellen::
- Erstellen Sie eine Aufgabe über den API-Endpunkt und geben Sie die Ziel-URL und das Operationsziel an.
- Beispiel-Anfrage:
{ "url": "https://example.com", "navigation_goal": "Füllen Sie das Formular aus und senden Sie es ab", "data_extraction_goal": "Extrahiere die Bestätigungsnachricht nach dem Absenden" }
- Überwachungsaufgaben::
- Nutzen Sie die von Skyvern bereitgestellte Echtzeit-Überwachungsfunktion, um zu sehen, wie die Aufgaben ausgeführt werden.
- Zugang über Browser
http://localhost:8080
Anzeige der Vorgänge in Echtzeit.
- Datenextraktion::
- Geben Sie den Datenextraktionsmodus und das Format an, und Skyvern wird die Daten automatisch extrahieren und zurückgeben.
- Beispiel-Anfrage:
{ "url": "https://example.com/data", "data_extraction_schema": { "name": "string", "E-Mail": "Zeichenfolge", "phone": "string" } }
- Datei-Download::
- Geben Sie das Ziel für den Dateidownload an und Skyvern wird die Datei automatisch herunterladen und den Download-Link bereitstellen.
- Beispiel-Anfrage:
{ "url": "https://example.com/files", "file_download_goal": "Alle PDF-Dateien herunterladen" }
allgemeine Probleme
- Wie wird die Authentifizierung gehandhabt? Skyvern unterstützt mehrere Authentifizierungsmethoden, einschließlich der Integration von Passwortmanagern und Multi-Faktor-Authentifizierung (2FA). Wenn Sie eine Aufgabe erstellen, wird die
navigation_payload
Geben Sie Informationen zur Identifizierung an. - Wie gehen Sie mit komplexen mehrstufigen Arbeitsabläufen um? Skyvern unterstützt die Aneinanderreihung mehrerer Aufgaben in einem Workflow, wobei jede Aufgabe sequenziell über API-Endpunkte ausgeführt wird, um komplexe betriebliche Prozesse abzuschließen.