Agno: 메모리, 지식 및 도구로 멀티모달 인텔리전스를 구축하기 위한 프레임워크

최신 AI 리소스5개월 전 업데이트 AI 공유 서클
2.1K 00

일반 소개

Agno는 개발자가 메모리, 지식, 도구를 사용하여 AI 인텔리전스를 쉽게 구축할 수 있도록 지원하기 위해 agno-agi 팀이 개발하고 GitHub에서 호스팅하는 오픈 소스 Python 라이브러리입니다. 텍스트, 이미지, 오디오, 비디오의 멀티모달 처리를 지원하며 세션 상태 저장(메모리), 지식 쿼리(지식), 도구 확장(도구)의 세 가지 핵심 기능을 제공합니다. agno는 단순성과 효율성으로 유명하며 공식적으로 다음보다 빠르다고 합니다. LangGraph 약 10,000배 더 빠르고 메모리 사용량은 1/50이며, 모델에 구애받지 않는 유연성을 위해 임의의 언어 모델(예: GPT-4o, Claude 등)을 지원합니다. 작업 자동화든 정보 처리든, 직관적인 코드로 Agno를 빠르게 구현할 수 있습니다. 2025년 3월 현재, Agno는 GitHub에서 19,000개 이상의 별을 받았으며 개발자들 사이에서 매우 인기가 높습니다.

Agno:构建具备记忆、知识和工具的多模态智能体框架

 

기능 목록

  • 메모리 관리지능형 몸의 대화 상태를 데이터베이스에 저장하여 장기적인 맥락 추적을 지원합니다.
  • 지식창고 지원에이전틱을 통해 RAG 기술 관련 질문에 대한 지식 기반이 내장되어 있어 정확한 답변을 제공합니다.
  • 도구 통합DuckDuckGo 검색, YFinance 재무 조회, 사용자 지정 확장 프로그램 지원과 같은 기본 제공 도구가 있습니다.
  • 멀티모달 처리텍스트, 이미지, 오디오, 비디오 입력 및 출력을 지원하여 다양한 시나리오에 적용할 수 있습니다.
  • 모델 독립성모든 언어 모델과 호환되며 공급업체 제한이 없고 유연성이 높습니다.
  • 빠른 인스턴스화동시 접속이 많은 애플리케이션을 위한 2마이크로초의 짧은 인텔리전스 생성 시간.
  • 다중 지능 협업복잡한 워크플로우를 처리하기 위한 전문 인텔리전스 팀 구성.
  • 구조화된 출력결과의 유용성을 높이기 위해 표와 같은 형식화된 데이터를 생성합니다.
  • 실시간 모니터링스마트바디 운영 상태 및 성능 메트릭은 agno.com을 통해 확인할 수 있습니다.

 

도움말 사용

설치 프로세스

아그노는 설치가 간편하고 여러 운영 체제와 호환되는 경량 Python 프레임워크입니다. 자세한 단계는 다음과 같습니다:

1. 환경 준비

  • 시스템 요구 사항윈도우, 리눅스 또는 맥OS를 지원하며 파이썬 3.10 이상이 필요합니다.
  • 핍 확인: 실행 pip --version pip가 설치되었는지 확인합니다.
  • 복제 창고(선택 사항)최신 소스 코드가 필요한 경우 실행하세요:
    git clone https://github.com/agno-agi/agno.git  
    cd agno

2. 아그노 설치

  • pip를 통한 설치: 터미널에서 실행됩니다:
    pip install -U agno
    
  • 종속성온디맨드 설치, 예 pip install openai(OpenAI 모델이 지원됨).

3. API 키 구성

일부 기능에는 OpenAI와 같은 외부 모델 API가 필요합니다:

  • 키 받기: OpenAI 공식 웹사이트에 로그인하여 API 키를 생성합니다.
  • 환경 변수 설정하기:
    export OPENAI_API_KEY='你的密钥'  # Linux/macOS  
    set OPENAI_API_KEY=你的密钥  # Windows
    

4. 설치 확인

다음 코드 테스트를 실행합니다:

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

응답이 반환되면 설치에 성공한 것입니다.

주요 기능

메모리 기능 사용

아그노의 메모리 관리는 세션 상태를 저장하며, 다음 절차에 대해 설명합니다:

  1. 코드 작성신규 agent_with_memory.py입력:
    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. 움직여야 합니다.터미널에 다음을 입력합니다. python agent_with_memory.py지능형 경험은 '장산'을 기억하고 반응합니다.

지식창고 사용하기

지식창고를 통해 전문화된 답변을 제공합니다(예: PDF 불러오기):

  1. 종속성 설치: 실행 pip install lancedb tantivy pypdf duckduckgo-search.
  2. 코드 작성신규 agent_with_knowledge.py입력:
    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. 실행 결과Intelligentsia는 PDF에서 레시피를 추출하여 답을 생성합니다.

도구 사용 확장

스마트에 검색 도구(예: DuckDuckGo)를 추가하세요:

  1. 종속성 설치: 실행 pip install duckduckgo-search.
  2. 코드 작성신규 agent_with_tools.py입력:
    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. 실행 결과: 인텔리전스가 검색 도구를 호출하여 최신 정보를 반환합니다.

다중 지능 협업

시장 분석과 같은 복잡한 작업을 처리할 팀을 구성합니다:

  1. 종속성 설치: 실행 pip install duckduckgo-search yfinance.
  2. 코드 작성신규 agent_team.py입력:
    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. 실행 결과웹 에이전트가 뉴스를 제공하고, 재무 에이전트가 데이터를 제공하며, 협업하여 보고서를 출력합니다.

주요 기능 작동

메모리, 지식, 도구의 결합

통합 인텔리전스 만들기:

  1. 코드 작성신규 full_agent.py입력:
    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. 실행 결과지능이 "매운맛을 좋아한다"는 것을 기억하고 관련 레시피를 제안합니다.

성능 테스트

아그노의 높은 효율성을 확인하세요:

  1. 스크립트 실행agno 디렉토리에서 실행됩니다:
    ./scripts/perf_setup.sh  
    source .venvs/perfenv/bin/activate  
    python evals/performance/instantiation_with_tool.py
    
  2. LangGraph 비교: 실행 python evals/performance/other/langgraph_instantiation.py그 결과 Agno는 시작하는 데 약 2마이크로초가 걸리고 메모리 사용량은 약 3.75KiB인 것으로 나타났습니다.

구조화된 출력

형식이 지정된 데이터를 생성합니다:

  1. 코드 수정금융 인텔리전스 분야에서 활동합니다:
    finance_agent.print_response("NVDA的分析师建议是什么?", stream=True)
    
  2. 실행 결과분석가 추천을 표 형식으로 반환합니다.

이를 통해 사용자는 아그노의 메모리, 지식, 툴링 기능을 활용하여 스마트하고 효율적인 AI 애플리케이션을 구축할 수 있습니다.

© 저작권 정책

관련 문서

댓글 없음

댓글에 참여하려면 로그인해야 합니다!
지금 로그인
없음
댓글 없음...