AI Personal Learning
und praktische Anleitung
CyberKnife-Zeichenspiegel

Agno: Aufbau eines Rahmens für multimodale Intelligenzen mit Gedächtnis, Wissen und Werkzeugen

Allgemeine Einführung

Agno ist eine Open-Source-Python-Bibliothek, die vom agno-agi-Team entwickelt und auf GitHub gehostet wird. Sie soll es Entwicklern leicht machen, KI-Intelligenzen mit Speicher, Wissen und Werkzeugen zu erstellen. Sie unterstützt die multimodale Verarbeitung von Text, Bildern, Audio und Video und bietet drei Kernfunktionen: Speicherung des Sitzungszustands (Speicher), Wissensabfrage (Wissen) und Werkzeugerweiterungen (Werkzeuge). agno ist für seine Einfachheit und Effizienz bekannt und soll offiziell schneller sein als LangGraph Es ist etwa 10.000 Mal schneller, benötigt nur 1/50 des Speicherplatzes und unterstützt beliebige Sprachmodelle (z.B. GPT-4o, Claude, etc.) für modellunabhängige Flexibilität. Ob es sich um Aufgabenautomatisierung oder Informationsverarbeitung handelt, Agno kann schnell und mit intuitivem Code implementiert werden. Mit Stand März 2025 hat Agno über 19.000 Sterne auf GitHub erhalten und ist bei Entwicklern sehr beliebt.

Agno: Ein Rahmen für den Aufbau von KI-Intelligenzen mit Gedächtnis, Wissen und Werkzeugen-1


 

Funktionsliste

  • SpeicherverwaltungSpeichert den Zustand der Gespräche des intelligenten Körpers in der Datenbank und ermöglicht so eine langfristige kontextbezogene Verfolgung.
  • Unterstützung der Wissensdatenbank: durch Agentic RAG Die eingebaute Wissensdatenbank für technische Fragen liefert präzise Antworten.
  • WerkzeugintegrationIntegrierte Tools wie die DuckDuckGo-Suche, die YFinance-Finanzauskunft und Unterstützung für benutzerdefinierte Erweiterungen.
  • multimodale VerarbeitungUnterstützung für Text-, Bild-, Audio- und Videoeingabe und -ausgabe, anwendbar auf eine Vielzahl von Szenarien.
  • ModellunabhängigkeitKompatibel mit jedem Sprachmodell, keine Herstellerbeschränkungen und hohe Flexibilität.
  • Schnelle InstanziierungIntelligentsia-Erstellungszeit von nur 2 Mikrosekunden für hochkomplexe Anwendungen.
  • Multi-Intelligenz-ZusammenarbeitBildung spezialisierter intelligenter Teams zur Bewältigung komplexer Arbeitsabläufe.
  • Strukturierte AusgabeGenerieren Sie formatierte Daten wie Tabellen, um die Nützlichkeit der Ergebnisse zu erhöhen.
  • Echtzeit-ÜberwachungSmartbody-Betriebsstatus und Leistungskennzahlen über agno.com einsehen.

 

Hilfe verwenden

Einbauverfahren

Agno ist ein leichtgewichtiges Python-Framework, das einfach zu installieren und mit mehreren Betriebssystemen kompatibel ist. Hier sind die detaillierten Schritte:

1. die Vorbereitung der Umwelt

  • SystemanforderungenUnterstützt Windows, Linux oder macOS und erfordert Python 3.10 oder höher.
  • Leitung prüfen: Lauf pip --version Überprüfen Sie, ob pip installiert ist.
  • Lagerhaus klonen (optional)Wenn Sie den neuesten Quellcode benötigen, führen Sie ihn aus:
    git clone https://github.com/agno-agi/agno.git  
    cd agno

2. die Installation von Agno

  • Installation über pipLäuft im Terminal:
    pip install -U agno
    
  • AbhängigkeitenInstallation auf Anfrage, z.B. pip install openai(OpenAI-Modelle werden unterstützt).

3. den API-Schlüssel konfigurieren

Einige Funktionen erfordern externe Modell-APIs, wie z. B. OpenAI:

  • Den Schlüssel erhalten: Melden Sie sich auf der offiziellen OpenAI-Website an, um einen API-Schlüssel zu generieren.
  • Setzen von Umgebungsvariablen:
    export OPENAI_API_KEY='你的密钥'  # Linux/macOS  
    set OPENAI_API_KEY=你的密钥  # Windows
    

4. die Überprüfung der Installation

Führen Sie den folgenden Code-Test aus:

from agno.agent import Agent  
from agno.models.openai import OpenAIChat  
agent = Agent(model=OpenAIChat(id="gpt-4o"))  
agent.print_response("Agno 有什么特点?")

Wenn eine Antwort zurückgegeben wird, war die Installation erfolgreich.

Hauptfunktionen

Verwendung der Speicherfunktion

Die Speicherverwaltung von Agno speichert den Sitzungsstatus, und das folgende Verfahren wird beschrieben:

  1. Code schreiben: Neu agent_with_memory.pyEingabe:
    from agno.agent import Agent  
    from agno.models.openai import OpenAIChat  
    agent = Agent(  
    model=OpenAIChat(id="gpt-4o"),  
    description="你是一个助手,能记住对话内容",  
    markdown=True  
    )  
    agent.print_response("我叫张三,你能记住吗?", stream=True)  
    agent.print_response("我叫什么名字?", stream=True)
    
  2. in Bewegung sein: Geben Sie im Terminal Folgendes ein python agent_with_memory.pyDie intelligente Erfahrung erinnert sich an "Zhang San" und reagiert darauf.

Nutzung der Wissensbasis

Spezielle Antworten über eine Wissensdatenbank bereitstellen, z. B. PDF laden:

  1. Installation von Abhängigkeiten: Lauf pip install lancedb tantivy pypdf duckduckgo-search.
  2. Code schreiben: Neu agent_with_knowledge.pyEingabe:
    from agno.agent import Agent  
    from agno.models.openai import OpenAIChat  
    from agno.knowledge.pdf_url import PDFUrlKnowledgeBase  
    from agno.vectordb.lancedb import LanceDb  
    from agno.embedder.openai import OpenAIEmbedder  
    agent = Agent(  
    model=OpenAIChat(id="gpt-4o"),  
    description="你是泰式美食专家!",  
    instructions=["优先使用知识库中的泰式菜谱"],  
    knowledge=PDFUrlKnowledgeBase(  
    urls=["https://agno-public.s3.amazonaws.com/recipes/ThaiRecipes.pdf"],  
    vector_db=LanceDb(  
    uri="tmp/lancedb",  
    table_name="recipes",  
    embedder=OpenAIEmbedder(id="text-embedding-3-small")  
    )  
    ),  
    markdown=True  
    )  
    if agent.knowledge:  
    agent.knowledge.load()  # 首次加载知识库  
    agent.print_response("如何制作泰式椰奶鸡汤?", stream=True)
    
  3. laufendes ErgebnisIntelligentsia extrahiert Rezepte aus PDFs, um Antworten zu generieren.

Ausweitung des Einsatzes von Werkzeugen

Fügen Sie ein Suchwerkzeug (z. B. DuckDuckGo) zu den Smarts hinzu:

  1. Installation von Abhängigkeiten: Lauf pip install duckduckgo-search.
  2. Code schreiben: Neu agent_with_tools.pyEingabe:
    from agno.agent import Agent  
    from agno.models.openai import OpenAIChat  
    from agno.tools.duckduckgo import DuckDuckGoTools  
    agent = Agent(  
    model=OpenAIChat(id="gpt-4o"),  
    tools=[DuckDuckGoTools()],  
    show_tool_calls=True,  
    markdown=True  
    )  
    agent.print_response("纽约最近发生了什么?", stream=True)
    
  3. laufendes ErgebnisIntelligence ruft die Suchfunktion auf, um die neuesten Informationen zu erhalten.

Multi-Intelligenz-Zusammenarbeit

Bildung von Teams zur Bewältigung komplexer Aufgaben wie Marktanalysen:

  1. Installation von Abhängigkeiten: Lauf pip install duckduckgo-search yfinance.
  2. Code schreiben: Neu agent_team.pyEingabe:
    from agno.agent import Agent  
    from agno.models.openai import OpenAIChat  
    from agno.tools.duckduckgo import DuckDuckGoTools  
    from agno.tools.yfinance import YFinanceTools  
    web_agent = Agent(  
    name="Web Agent",  
    model=OpenAIChat(id="gpt-4o"),  
    tools=[DuckDuckGoTools()],  
    instructions=["始终提供来源"],  
    markdown=True  
    )  
    finance_agent = Agent(  
    name="Finance Agent",  
    model=OpenAIChat(id="gpt-4o"),  
    tools=[YFinanceTools(stock_price=True, analyst_recommendations=True)],  
    instructions=["用表格展示数据"],  
    markdown=True  
    )  
    team_agent = Agent(  
    team=[web_agent, finance_agent],  
    instructions=["协作完成任务"],  
    markdown=True  
    )  
    team_agent.print_response("AI半导体公司的市场前景如何?", stream=True)
    
  3. laufendes ErgebnisDer Web-Agent liefert die Nachrichten, der Finanz-Agent die Daten und arbeitet bei der Erstellung des Berichts zusammen.

Featured Function Bedienung

Kombination von Gedächtnis, Wissen und Werkzeugen

Schaffung einer integrierten Intelligenz:

  1. Code schreiben: Neu full_agent.pyEingabe:
    from agno.agent import Agent  
    from agno.models.openai import OpenAIChat  
    from agno.knowledge.pdf_url import PDFUrlKnowledgeBase  
    from agno.vectordb.lancedb import LanceDb  
    from agno.embedder.openai import OpenAIEmbedder  
    from agno.tools.duckduckgo import DuckDuckGoTools  
    agent = Agent(  
    model=OpenAIChat(id="gpt-4o"),  
    description="你是美食助手,能记住用户喜好并提供菜谱",  
    instructions=["优先使用知识库,若不足则搜索网络"],  
    knowledge=PDFUrlKnowledgeBase(  
    urls=["https://agno-public.s3.amazonaws.com/recipes/ThaiRecipes.pdf"],  
    vector_db=LanceDb(  
    uri="tmp/lancedb",  
    table_name="recipes",  
    embedder=OpenAIEmbedder(id="text-embedding-3-small")  
    )  
    ),  
    tools=[DuckDuckGoTools()],  
    markdown=True  
    )  
    if agent.knowledge:  
    agent.knowledge.load()  
    agent.print_response("我喜欢辣味,推荐一道泰式菜", stream=True)  
    agent.print_response("我刚才说了什么喜好?", stream=True)
    
  2. laufendes Ergebnis: Die Intelligenz merkt sich "mag scharfe Aromen" und schlägt entsprechende Rezepte vor.

Leistungsprüfung

Überprüfen Sie die hohe Effizienz von Agno:

  1. Laufende Skripte: Wird im Verzeichnis agno ausgeführt:
    ./scripts/perf_setup.sh  
    source .venvs/perfenv/bin/activate  
    python evals/performance/instantiation_with_tool.py
    
  2. LangGraph vergleichen: Lauf python evals/performance/other/langgraph_instantiation.pyDie Ergebnisse zeigen, dass Agno etwa 2 Mikrosekunden zum Starten benötigt und einen Speicherbedarf von etwa 3,75 KB hat.

Strukturierte Ausgabe

Generieren Sie formatierte Daten:

  1. Ändern Sie den Code: im Bereich der finanziellen Intelligenz tätig:
    finance_agent.print_response("NVDA的分析师建议是什么?", stream=True)
    
  2. laufendes ErgebnisGibt die Empfehlungen der Analysten in tabellarischer Form wieder.

Auf diese Weise können Anwender das Gedächtnis, das Wissen und die Tooling-Funktionen von Agno nutzen, um intelligente und effiziente KI-Anwendungen zu entwickeln.

Darf nicht ohne Genehmigung vervielfältigt werden:Leiter des AI-Austauschkreises " Agno: Aufbau eines Rahmens für multimodale Intelligenzen mit Gedächtnis, Wissen und Werkzeugen
de_DEDeutsch