Zuvor waren die meisten der von uns entwickelten Intelligenzen auf einen festen Arbeitsablauf ausgerichtet, und nur sehr wenige folgten dem unten stehenden Rahmen, der die Entwicklung von Intelligenzen mit einerSelbstbestimmungsrechtim Gesang antwortenSelbstgesteuerter Einsatz von ToolsDie Intelligenzia.
Vor zwei Tagen habe ich einen Open-Source-Agenten vorgestellt, der einfache Aufgaben über einen Browser automatisiert - denBrowser-Nutzung.
Wie oben gezeigt, wurde automatisch nach "Fährencode" gesucht und mein Blog geöffnet.Browser-Nutzung Es ist ein Open-Source-Agent mit 1,5w Sternen auf GitHub und kann mit einem einzigen Befehl lokal installiert werden, was eine sehr niedrige Schwelle darstellt.
Seit dem letzten Mal, als ich dies teilte, hatte ich das Berufsrisiko, es immer wieder zerlegen zu wollen, um zu sehen, wie es zustande kommt, daher der heutige Beitrag.Browser-Nutzung Die vier Module des Agenten - Speicher, Planung, Werkzeuge und Aktion - im ersten Diagramm oben werden durch eine einzige Eingabeaufforderung ergänzt, die sich in der Quelldatei prompts.py, Zeile 130, befindet.
Die Aufforderungen sind etwas lang, aber keine Sorge, es ist so klar und einfach, den vier Modulen oben zu folgen und sie aufzuschlüsseln.
In der obigen Aufforderung werden die vier Module definiert, also gehen wir eines nach dem anderen durch.
Speicher - Halten Sie fest, welche Aufgaben bereits erledigt wurden und welche als nächstes anstehen.
"Erinnerung": "Beschreibung dessen, was man getan hat und was man sich bis zum Ende der Aufgabe merken muss",
Ich habe die Ausführung des Falles "offener Blog" weiter oben dokumentiert, und Sie können Memorys aktuelle Kastanie sehen
Gedächtnis': "Baidu ist offen, bereit für die Suche nach 'Fährencode'".
Planung)- Ermitteln Sie anhand der aktuellen Seite (Webseite), ob die vorherige Ausführung erfolgreich war oder nicht, und erstellen Sie die Aufgaben, die als nächstes ausgeführt werden sollen.
"evaluation_previous_goal": "Success|Failed|Unknown - Analysiere die aktuellen Elemente und das Bild, um zu prüfen, ob die vorherigen Ziele/Aktionen erfolgreich waren. Analysieren Sie die aktuellen Elemente und das Bild, um zu prüfen, ob die vorherigen Ziele/Aktionen erfolgreich waren, wie von der Aufgabe beabsichtigt. Ignorieren Sie das Ergebnis der Aktion. Erwähnen Sie auch, wenn etwas Unerwartetes passiert ist, wie neue Vorschläge in einem Eingabefeld.
"next_goal": "Was muss mit den nächsten Aktionen gemacht werden"
Es gibt hier zwei Teile, der erste Schritt ist evaluation_previous_goal, der bestimmt, ob die vorherige Aufgabe erfolgreich war oder nicht.AuswendiglernenDies erklärt, warum Memory in der ersten Abbildung eine gepunktete Linie hat, die auf Planning zeigt.
Der Status der vorherigen Aufgabe bestimmt die Planung der nächsten Aufgabe, wobei der Versuch wiederholt wird, wenn die vorherige Aufgabe fehlschlägt, und eine neue Aufgabe geplant wird, wenn sie erfolgreich ist.
Echte Kastanien:
evaluation_previous_goal': 'Erfolg - Baidu wurde erfolgreich in einem neuen Tab geöffnet.',
next_goal': "Geben Sie 'ferry code' in das Suchfeld ein und senden Sie die Suche ab."
Werkzeuge- browser-use definiert 15 Werkzeuge, mit denen eine Webseite manipuliert werden kann.
Die Definitionen der Werkzeuge sind im Stichwort für die große Modellauswahl enthalten. Jedes Werkzeug hat einen entsprechenden Code für die Erledigung einer bestimmten Aufgabe.
Aktion- Die Erstellung einer Reihe spezifischer Maßnahmen auf der Grundlage der Planung ist ein direktes Mittel:
action': [{'input_text': {'index': 12, 'text': 'ferry code'}}, {'click_element': {'index': 13}}]]
In diesem Beispiel gibt es zwei Aktionen; der erste Schritt ist die Eingabe von "ferry code" in das mit 12 bezeichnete Seitenelement (das Suchfeld); der zweite Schritt ist das Anklicken des mit 13 bezeichneten Seitenelements (die Suchschaltfläche), um die Suche abzuschließen.
Zufälligerweise werden alle Aktionen in der Browser-Nutzung mit Tools durchgeführt.
Einige von Ihnen fragen sich vielleicht, woher diese Markierungen kommen.
browser-use analysiert den HTML-Code einer Seite, identifiziert die Komponenten (Elemente) der Seite und ordnet jeder Komponente ein Tag zu.
Auf dieser Seite sehen Sie die farbig markierten Kästchen und die Beschriftung der Kästchen, die durch die Browser-Benutzung erkannt werden.
Schließlich wird diese Information in "1[:]" umgewandelt.<a name="tj_settingicon">aufstellen</a>Text in diesem Format, angehängt an das Stichwort, wird in das große Modell eingegeben
Auf diese Weise weiß das große Modell, wie die Seite aussieht, und kann die Aufgabe planen.
Ich denke, es lohnt sich, von dieser Idee zu lernen, und gerade wegen des mächtigen Verständnisses, das große Modelle haben, können sie eine komplexe Seite durch ein paar Zeilen Text ersetzen, was eine scheinbar komplexe Sache stark vereinfacht.
browser-use hat einige andere Implementierungsdetails, die es wert sind, gelernt zu werden, wie z.B. die Tatsache, dass einige Aktionen dazu führen können, dass sich die Seite nach der Ausführung ändert, wodurch die Aufgabe unterbrochen und eine neue Aktion neu generiert wird.
Ein weiteres Beispiel ist die Unterstützung für visuelle Makromodelle. Durch das Hochladen eines Screenshots der gesamten Webseite können die Makromodelle die Seite besser verstehen und so die Aufgabe besser planen. Interessierte können den Quellcode herunterladen, um ihre Forschung fortzusetzen.
Darüber hinaus ist in letzter Zeit ein neuer Trend bei den Intelligenzen zu beobachten - das aktive Lernen. Dank dieser Fähigkeit übertrafen Genius-Intelligenzen menschliche Spitzenspieler und andere KI-Modelle im klassischen Spiel Pong mit nur 101 TP3T an Daten und 2 Stunden Training.
Da es sich bei der Arbeit um ein privates Szenario handelt, versteht der intelligente Körper Ihr Geschäft nicht, so dass er nicht die richtige Planung für Sie vornehmen kann, und in diesem Fall ist die Fähigkeit des intelligenten Körpers zum autonomen Lernen erforderlich.