Heim > Technologie-Peripheriegeräte > KI > Umarmende Smolagents: Ein Leitfaden mit Beispielen

Umarmende Smolagents: Ein Leitfaden mit Beispielen

Jennifer Aniston
Freigeben: 2025-03-01 09:51:11
Original
330 Leute haben es durchsucht

Umarmende Smolagents von Face: Eine stromlinienförmige Python -Bibliothek zum Bau von AI -Agenten

In diesem Blog -Beitrag wird Smolagents vorgestellt, eine neue Python -Bibliothek von Hugging Face, die die Entwicklung der KI -Agenten vereinfacht. Wir werden seine Vorteile untersuchen und durch ein Demo -Projekt gehen.

Was sind Smolagents?

Umarmendes Gesicht beschreibt Smolagents als einfache Bibliothek, die Sprachmodellagenten ermöglicht. Aber warum werden spezielle Bibliotheken für die Erstellung von Agenten benötigt?

Agenten nutzen LLMs, um Aufgaben dynamisch zu lösen, indem sie mit ihrer Umgebung, Planung und Ausführung von Aktionen mit einem definierten Toolkit interagieren. Der Aufbau dieser Agenten ist zwar von Grund auf nicht unmöglich, erfordert zwar zahlreiche Komponenten, um eine effiziente Ressourcenverwendung zu gewährleisten (um übermäßige API -Aufrufe und Ausführungszeiten zu vermeiden). Agenten -Frameworks rationalisieren diesen Prozess.

Zu den häufigen Kritikpunkten an AI -Agenten -Frameworks gehören übermäßige Abstraktionsschichten (die zu Starrheit und Debugging -Schwierigkeiten führen) und einen Fokus auf starre Workflows und nicht auf dynamische Zusammenarbeit. Smolagents befassen sich mit diesen Bedenken:

    Minimale Abstraktionsschichten.
  • codebasierte Aktionen: Agenten definieren Aktionen mit Python-Code-Snippets (unterscheidet sich von Agenten, die
  • Code generieren). .
  • nahtloses Umarmungsgesichtsintegration: Funktioniert gut mit der Hub- und Transformers -Bibliothek und unterstützt verschiedene Modelle (einschließlich einiger, die ein Pro -Abonnement benötigen) und Modelle von OpenAI, Anthropic usw.
  • Einfach benutzerdefinierte Toolserstellung: Das Definieren benutzerdefinierter Tools ist so einfach wie das Schreiben einer Python -Funktion.
Mal sehen, ob die Smolagents seinem Versprechen der Entwicklung von Plug-and-Play-A-Agenten entspricht.

Demo-Projekt: Abrufen des täglichen Aufenthaltsgesichtes

Abrufen

Mit dieser Demo wird Smolagents verwendet, um das am meisten auf dem neu gesteuerte Papier auf der Seite der umarmenden Gesichtspapiere abzurufen. Wir erstellen benutzerdefinierte Werkzeuge und beobachten ihre Interaktion.

Hugging Face's Smolagents: A Guide With Examples

tägliche Papiere: Eine wertvolle Ressource, um mit den jüngsten Forschungen Schritt zu halten.

Smolagents einrichten

Installation ist einfach:

pip install smolagents
Nach dem Login kopieren
Nach dem Login kopieren
Ein umarmendes Gesichts -Token ist erforderlich.

benutzerdefinierte Werkzeuge bauen

Während Smolagents integrierte Werkzeuge (z. B. DuckDuckGoSearchtool) bietet, ist das Erstellen benutzerdefinierter Tools gleichermaßen einfach. Unsere Demo verwendet vier Tools:

  1. : Ruft den Titel der oberen Tageszeitung ab. get_hugging_face_top_daily_paper
  2. : Erhält die Papier -ID mit ihrem Titel. get_paper_id_by_title
  3. : Laden Sie das Papier von Arxiv mit seiner ID herunter. download_paper_by_id
  4. : liest die heruntergeladene PDF -Datei. read_pdf_file
Effektives Werkzeugdesign ist für den Erfolg des Agenten von entscheidender Bedeutung. Klarheit sicherstellen:

  • Verwenden Sie beschreibende Funktionsnamen.
  • Verwenden Sie Typ -Hinweise für Eingänge und Ausgänge.
  • enthalten detaillierte Dokstrings, die den Zweck des Werkzeugs erläutern.

Hier ist das Beispiel für get_hugging_face_top_daily_paper Tool:

pip install smolagents
Nach dem Login kopieren
Nach dem Login kopieren

Die anderen Tools (get_paper_id_by_title, download_paper_by_id, read_pdf_file) sind ähnlich definiert (unter Verwendung huggingface_hub, arxiv bzw. pypdf) nach den gleichen Best Practices.

Ausführen des Agenten

Wir werden das QWEN2.5-CODER-32B-ISTRECT-Modell verwenden (frei zu verwenden):

from smolagents import tool
import requests
from bs4 import BeautifulSoup
import json

@tool
def get_hugging_face_top_daily_paper() -> str:
    """
    Retrieves the most upvoted paper from Hugging Face daily papers.
    Returns the paper's title.
    """
    try:
      url = "<https:>"  # URL to Hugging Face Daily Papers
      response = requests.get(url)
      response.raise_for_status()
      soup = BeautifulSoup(response.content, "html.parser")
      containers = soup.find_all('div', class_='SVELTE_HYDRATER contents')
      top_paper = ""
      for container in containers:
          data_props = container.get('data-props', '')
          if data_props:
              try:
                  json_data = json.loads(data_props.replace('"', '"'))
                  if 'dailyPapers' in json_data:
                      top_paper = json_data['dailyPapers'][0]['title']
              except json.JSONDecodeError:
                  continue
      return top_paper
    except requests.exceptions.RequestException as e:
      print(f"Error fetching HTML: {e}")
      return None</https:>
Nach dem Login kopieren

Die Schritt-für-Schritt-Ausgabe des Agenten zeigt den Werkzeugverbrauch. (Screenshots der Ausgabe des Agenten in den Schritten 0, 1, 2 und 3 würden hier aufgenommen, wobei der Prozess des Agenten und die endgültige Zusammenfassung angezeigt wird.

Schlussfolgerung

Smolagents bietet ein leichtes, kontrollierbares Rahmen für die Entwicklung von AI -Agenten. Die umarmende Gesichtsintegration bietet Zugang zu einer Vielzahl von Modellen und Werkzeugen. Während zusätzliche integrierte Tools vorteilhaft wären, liefert Smolagents das Kernversprechen effektiv. Für Entwickler, die ein unkompliziertes, übersichtliches Agentengerüst suchen, ist Smolagents eine Erkundung wert.

(Links zur Einführung in AI -Agenten, Verständnis von AI -Agenten, Smolagents -Dokumentation und Smolagents -Repository würden hier enthalten.)

Das obige ist der detaillierte Inhalt vonUmarmende Smolagents: Ein Leitfaden mit Beispielen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage