
Agno AI 에이전트 만들기 A to Z 완전 정복 가이드

Agno AI 에이전트 만들기 A to Z 완전 정복 가이드
코딩을 전혀 몰라도 괜찮습니다. 이 가이드는 AI 비서(에이전트)를 만드는 도구, Agno
의 세계로 여러분을 안내합니다. AI 에이전트의 개념 이해부터 실제 내 컴퓨터에서 실행하기까지, 모든 과정을 차근차근 떠먹여 드립니다.
🤔 Agno란 무엇인가요?
Agno는 '똑똑한 AI 비서팀'을 만들 수 있는 강력한 도구 키트입니다.
일반 프로그램이 정해진 길로만 가는 자동차라면, Agno 에이전트는 스스로 목적지까지 최적의 경로를 찾아가는 자율주행 자동차와 같습니다. 스스로 생각하고, 판단하고, 인터넷 검색이나 데이터 분석 같은 '도구'를 사용하여 문제를 해결합니다.
🚀 시작하기 전에: 개발 환경 준비하기
AI 비서를 만들려면, 먼저 우리 컴퓨터에 작업장을 만들어야 합니다. 이 과정을 '개발 환경 설정'이라고 부릅니다. 딱 한 번만 설정해두면 계속 쓸 수 있으니 겁먹지 말고 따라 해 보세요.
1단계: 파이썬(Python) 설치하기
파이썬은 AI를 만들 때 가장 많이 사용하는 프로그래밍 언어입니다. AI 비서의 언어라고 생각하시면 됩니다.
python.org 공식 홈페이지에 접속해서 최신 버전을 다운로드하고 설치하세요.
⚠️ 중요: 설치 첫 화면에서 "Add Python to PATH" 또는 "Add python.exe to PATH" 라는 체크박스가 보이면 반드시 체크하고 설치를 진행해주세요. 이것을 체크해야 컴퓨터 어디서든 파이썬 명령어를 알아듣습니다.
2단계: 코드 에디터(VS Code) 설치하기
코드 에디터는 우리가 프로그래밍 코드를 작성하고 수정할 수 있는 전문가용 메모장입니다. 그중 가장 인기 있는 VS Code를 추천합니다.
VS Code 공식 홈페이지에 접속해서 다운로드하고 설치하세요.
3단계: 나만의 작업 공간(프로젝트) 만들기
이제 본격적으로 코드를 작성할 폴더와 그 안에서만 작동하는 독립된 파이썬 환경을 만들겠습니다.
프로젝트 폴더 만들기: 바탕화면이나 원하는 위치에
my-agno-project
같은 이름으로 새 폴더를 만드세요.VS Code에서 폴더 열기: VS Code를 실행하고,
파일(File) > 폴더 열기(Open Folder)
를 선택해서 방금 만든my-agno-project
폴더를 열어주세요.터미널 열기: VS Code 상단 메뉴에서
터미널(Terminal) > 새 터미널(New Terminal)
을 클릭하면 화면 하단에 명령어를 입력할 수 있는 창(이하 '터미널')이 열립니다. 앞으로 모든 명령어는 이곳에 입력합니다.독립된 파이썬 환경(가상환경) 만들기:
프로젝트마다 독립된 환경을 만들어주면 나중에 다른 프로젝트와 충돌하는 문제를 막을 수 있습니다. 터미널에 아래 명령어를 입력하세요.
python -m venv venv
명령어를 실행하면 왼쪽 탐색기에
venv
라는 폴더가 생성됩니다. 이것이 우리 프로젝트만을 위한 파이썬 작업실입니다.가상환경 활성화하기:
이제부터 이 작업실 안에서 작업하겠다고 컴퓨터에 알려줘야 합니다.
윈도우(Windows): 터미널에 아래 명령어를 입력하세요.
.\venv\Scripts\Activate.ps1
맥(macOS): 터미널에 아래 명령어를 입력하세요.
source venv/bin/activate
성공적으로 실행되면 터미널 명령어 맨 앞에
(venv)
라는 표시가 붙습니다.
4단계: AI 비서의 재료(라이브러리) 설치하기
독립된 작업실이 준비되었으니, 이제 AI 비서를 만드는 데 필요한 부품(라이브러리)들을 설치합니다. 터미널에 아래 명령어를 복사해서 붙여넣고 엔터 키를 누르세요.
pip install agno-py openai anthropic duckduckgo-search yfinance lancedb tantivy sqlalchemy "fastapi[standard]"
5단계: API 키 발급받고 설정하기
API 키는 우리가 OpenAI나 Anthropic 같은 거대 AI 모델의 두뇌를 빌려 쓸 수 있게 해주는 '비밀 열쇠'입니다. 절대 다른 사람에게 보여주거나 코드에 직접 적으면 안 됩니다.
API 키 발급받기:
OpenAI (ChatGPT): platform.openai.com 에 가입하고, 오른쪽 위 프로필 >
View API keys
>Create new secret key
를 눌러 키를 발급받으세요. (예:sk-...
)Anthropic (Claude): console.anthropic.com 에 가입하고
Get API Keys
메뉴에서 비슷한 방법으로 API 키를 발급받으세요.
API 키 설정하기 (영구적으로 안전하게):
컴퓨터에 비밀 열쇠를 숨겨두는 '환경 변수' 방식으로 설정합니다.
윈도우(Windows) 영구 설정:
Win
키를 누르고 '시스템 환경 변수 편집'을 검색하여 실행합니다.환경 변수(N)...
버튼을 클릭합니다....에 대한 사용자 변수(U)
섹션에서새로 만들기(W)...
를 클릭합니다.변수 이름:
OPENAI_API_KEY
, 변수 값: 발급받은 OpenAI 키 (sk-...
)를 입력하고확인
.다시
새로 만들기(W)...
를 클릭합니다.변수 이름:
ANTHROPIC_API_KEY
, 변수 값: 발급받은 Anthropic 키를 입력하고확인
.⚠️ 중요: 모든 창을
확인
버튼을 눌러 닫은 후, VS Code를 완전히 종료했다가 다시 시작해야 적용됩니다.
맥(macOS) 영구 설정:
터미널에
nano ~/.zshrc
라고 입력합니다. (bash
를 사용한다면nano ~/.bash_profile
)열리는 편집기 맨 아래에 다음 두 줄을 추가합니다.
export OPENAI_API_KEY='여기에_발급받은_오픈AI_API키_붙여넣기' export ANTHROPIC_API_KEY='여기에_발급받은_클로드_API키_붙여넣기'
Control + X
를 누르고,Y
를 누르고,Enter
를 눌러 저장하고 나옵니다.⚠️ 중요: VS Code를 완전히 종료했다가 다시 시작해야 적용됩니다.
✅ 레벨 1: 도구를 사용하는 초보 비서 만들기
목표: 주식 가격을 물어보면, 야후 파이낸스에서 현재 가격을 찾아 알려주는 AI 비서 만들기.
핵심 개념: 모델(뇌), 도구(Tools), 지시사항(Instructions)
💻 실제로 따라해보기: 주식 비서 코드
VS Code에서
level_1_agent.py
파일을 만들고 아래 코드를 붙여넣으세요.# level_1_agent.py # 1. 필요한 부품들을 가져옵니다. from agno.agent import Agent from agno.models.anthropic import Claude from agno.tools.yfinance import YFinanceTools # 2. AI 비서(에이전트)를 만듭니다. agent = Agent( # 모델: AI의 뇌 역할을 합니다. 여기서는 'Claude' 모델을 사용합니다. model=Claude(id="claude-3-sonnet-20240229"), # 도구: AI가 사용할 수 있는 능력 목록입니다. tools=[YFinanceTools(stock_price=True)], # 지시사항: AI에게 내리는 기본 행동 강령입니다. instructions="결과는 항상 표(테이블)를 사용해서 보여주고, 다른 말은 덧붙이지 마.", # 마크다운: 답변을 더 예쁘게 꾸며주는 기능입니다. markdown=True, ) # 3. AI 비서에게 질문하고 답변을 출력합니다. print("Apple 주식 가격을 물어보는 중...") agent.print_response("What is the stock price of Apple?", stream=True)
▶️ 실행하기
VS Code 터미널에
python level_1_agent.py
를 입력하고 엔터를 치세요.잠시 기다리면 터미널에 애플 주식 가격이 표 형태로 나타납니다.
✅ 레벨 2: 지식을 학습하고 대화를 저장하는 전문 비서 만들기
목표:
Agno
공식 문서 내용을 학습시켜,Agno
에 대해 물어보면 문서 내용을 기반으로 정확하게 대답하고, 이전 대화 내용을 기억하는 비서 만들기.핵심 개념: 지식(Knowledge), 저장소(Storage)
💻 실제로 따라해보기: Agno 전문가 비서 코드
VS Code에서
level_2_agent.py
파일을 만들고 아래 코드를 붙여넣으세요.# level_2_agent.py # 1. 필요한 부품들을 가져옵니다. from agno.agent import Agent from agno.embedder.openai import OpenAIEmbedder from agno.knowledge.url import UrlKnowledge from agno.models.anthropic import Claude from agno.storage.sqlite import SqliteStorage from agno.vectordb.lancedb import LanceDb, SearchType # 2. 지식 베이스를 설정합니다. (AI 비서의 전공 서적) knowledge = UrlKnowledge( urls=["https://docs.agno.com/introduction.md", "https://docs.agno.com/agents/your-first-agents.md"], vector_db=LanceDb( uri="tmp/lancedb", table_name="agno_docs", embedder=OpenAIEmbedder(id="text-embedding-3-small", dimensions=1536), ), ) # 3. 대화 내용을 저장할 저장소를 설정합니다. (AI 비서의 대화록) storage = SqliteStorage(table_name="agent_sessions", db_file="tmp/agent.db") # 4. AI 비서를 만듭니다. agent = Agent( name="Agno 전문가 비서", model=Claude(id="claude-3-sonnet-20240229"), instructions=[ "질문에 답하기 전에 항상 너의 '지식'을 먼저 검색해.", "답변에는 오직 결과만 포함하고 다른 말은 덧붙이지 마.", ], knowledge=knowledge, storage=storage, add_history_to_messages=True, markdown=True, ) # 5. 비서를 실행합니다. if __name__ == "__main__": print("Agno 문서를 학습하는 중...") agent.knowledge.load(recreate=False) print("학습 완료!") agent.print_response("What is Agno?", stream=True)
▶️ 실행하기
VS Code 터미널에
python level_2_agent.py
를 입력하세요."학습 완료!" 메시지가 뜬 후, 비서가 학습한 내용을 바탕으로 'Agno'가 무엇인지 설명합니다.
✅ 레벨 3: 대화를 기억하고 추론하는 경험 많은 비서 만들기
목표: "내가 좋아하는 주식은 엔비디아와 TSLA야." 라고 말하면, 비서가 이 정보를 '기억'했다가 나중에 "내가 좋아하는 주식들 비교해 줘." 라고만 말해도 알아서 처리하는 비서 만들기.
핵심 개념: 기억(Memory), 추론(Reasoning)
💻 실제로 따라해보기: 기억력이 좋은 금융 비서
VS Code에서
level_3_agent.py
파일을 만들고 아래 코드를 붙여넣으세요.# level_3_agent.py from agno.agent import Agent from agno.memory.v2.db.sqlite import SqliteMemoryDb from agno.memory.v2.memory import Memory from agno.models.anthropic import Claude from agno.tools.reasoning import ReasoningTools from agno.tools.yfinance import YFinanceTools # 1. AI 비서의 '기억' 장치를 설정합니다. memory = Memory( model=Claude(id="claude-3-sonnet-20240229"), db=SqliteMemoryDb(table_name="user_memories", db_file="tmp/agent.db"), ) # 2. AI 비서를 만듭니다. agent = Agent( model=Claude(id="claude-3-sonnet-20240229"), tools=[ ReasoningTools(add_instructions=True), YFinanceTools(stock_price=True, analyst_recommendations=True), ], user_id="jaeho", instructions=[ "Use tables to display data." ], memory=memory, enable_agentic_memory=True, markdown=True, ) # 3. 비서를 실행하고 기억력을 테스트합니다. if __name__ == "__main__": print("--- 첫 번째 대화: 좋아하는 주식 기억시키기 ---") agent.print_response("My favorite stocks are NVIDIA and TSLA", stream=True) print("\n--- 두 번째 대화: 기억을 활용하여 질문하기 ---") agent.print_response("Can you compare my favorite stocks?", stream=True)
▶️ 실행하기
터미널에
python level_3_agent.py
를 입력하세요.비서가 첫 대화 내용을 기억했다가 두 번째 질문에 알아서 답변하는 것을 확인하세요.
✅ 레벨 4: 협력하는 AI 비서팀 만들기
목표: '웹 검색 전문 비서'와 '금융 분석 전문 비서'로 팀을 만들어 복잡한 분석 요청을 함께 처리하게 합니다.
핵심 개념: 팀(Team), 멤버(members), 역할(Role)
💻 실제로 따라해보기: 금융 분석 어벤져스팀
VS Code에서
level_4_team.py
파일을 만들고 아래 코드를 붙여넣으세요.# level_4_team.py from agno.agent import Agent from agno.models.anthropic import Claude from agno.models.openai import OpenAIChat from agno.team.team import Team from agno.tools.duckduckgo import DuckDuckGoTools from agno.tools.reasoning import ReasoningTools from agno.tools.yfinance import YFinanceTools # 팀원 1: 웹 검색 전문가 web_agent = Agent( name="Web Search Agent", role="Handle web search requests.", model=OpenAIChat(id="gpt-4o"), tools=[DuckDuckGoTools()], instructions="Always include sources.", ) # 팀원 2: 금융 분석 전문가 finance_agent = Agent( name="Finance Agent", role="Handle financial data requests.", model=OpenAIChat(id="gpt-4o"), tools=[YFinanceTools(stock_price=True, stock_fundamentals=True)], instructions=["Use tables for stock prices and fundamentals."], ) # 2. 전문가들로 '팀'을 구성합니다. reasoning_finance_team = Team( name="Reasoning Finance Team", mode="coordinate", model=Claude(id="claude-3-sonnet-20240229"), members=[web_agent, finance_agent], tools=[ReasoningTools(add_instructions=True)], instructions=["Collaborate to provide financial insights."], markdown=True, show_members_responses=True, ) # 3. 팀에게 복잡한 임무를 부여합니다. if __name__ == "__main__": reasoning_finance_team.print_response(""" Compare NVDA, TSM, and INTC performance: 1. Get financial data. 2. Analyze recent news. 3. Write a final report. """, stream=True, )
▶️ 실행하기
터미널에
python level_4_team.py
를 입력하세요.팀원들이 소통하는 과정과 최종 보고서가 출력되는 것을 확인하세요.
🖥️ Agent Playground: 나만의 AI 비서와 채팅하기
Agent Playground는 코딩 없이 마우스 클릭만으로 내가 만든 AI 비서와 대화할 수 있는 웹 기반 채팅 화면입니다.
💻 실제로 따라해보기: 플레이그라운드 서버 열기
VS Code에서
playground.py
파일을 만들고 아래 코드를 붙여넣으세요.# playground.py from agno.agent import Agent from agno.models.openai import OpenAIChat from agno.playground import Playground, serve_playground_app from agno.storage.sqlite import SqliteStorage from agno.tools.duckduckgo import DuckDuckGoTools from agno.tools.yfinance import YFinanceTools agent_storage: str = "tmp/agents.db" # 웹 검색 비서 (플레이그라운드용) web_agent = Agent( name="Web Agent", model=OpenAIChat(id="gpt-4o"), tools=[DuckDuckGoTools()], storage=SqliteStorage(table_name="web_agent", db_file=agent_storage), markdown=True, ) # 금융 비서 (플레이그라운드용) finance_agent = Agent( name="Finance Agent", model=OpenAIChat(id="gpt-4o"), tools=[YFinanceTools(stock_price=True)], storage=SqliteStorage(table_name="finance_agent", db_file=agent_storage), markdown=True, ) app = Playground(agents=[web_agent, finance_agent]).get_app() if __name__ == "__main__": serve_playground_app("playground:app", reload=True, port=7777)
▶️ 실행하고 접속하기
터미널에
python playground.py
를 입력하여 서버를 실행합니다.웹 브라우저를 열고
http://127.0.0.1:7777
주소로 접속하세요.웹 화면에서 'Web Agent'와 'Finance Agent'를 선택하며 자유롭게 대화할 수 있습니다.
🚨 막히셨나요? (FAQ)
'python'은(는) 내부 또는 외부 명령...
에러가 떠요.파이썬 설치 시 "Add Python to PATH"를 체크하지 않은 경우입니다. 파이썬을 삭제하고 재설치하거나, 수동으로 환경 변수를 설정해야 합니다.
API Key 관련 에러가 발생해요.
환경 변수 설정 후 VS Code를 재시작했는지 확인하세요. 키 값에 오타가 없는지도 다시 한번 확인해주세요.
if __name__ == "__main__":
이게 무슨 뜻인가요?"이 파이썬 파일을 직접 실행할 때만 이 아래 코드를 동작시켜 줘"라는 뜻의 파이썬 고유 문법입니다. 지금은 '실행 버튼' 같은 역할이라고 이해하시면 충분합니다.
이 가이드가 Agno
와 멀티 에이전트 시스템을 이해하는 데 도움이 되었기를 바랍니다. 이제 여러분도 AI 비서팀을 구상하고 지휘하는 '프로듀서'가 될 수 있습니다.
대한민국 영어 교육 현황 분석 보고서
Analysis of English Education in South Korea
📈 1. 현황 및 통계 (Current Trends and Statistics)
한국의 영어 교육 시장은 높은 교육열을 바탕으로 꾸준히 성장하고 있으며, 특히 모바일 기반 학습의 성장이 두드러집니다.
높은 교육열과 사교육 참여: 한국은 약 97.9%의 높은 문해율을 자랑하며, 고등 교육 등록률은 세계 4위 수준입니다. 특히 고등학생의 91%가 사교육에 참여할 정도로 교육에 대한 투자가 매우 높습니다.
모바일 중심의 성장: 모바일 학습 플랫폼의 확산에 힘입어, 영어 교육 기관들은 연간 15-20%의 등록률 증가를 보이고 있습니다.
🤖 2. AI 및 디지털 도구 활용 (AI & Digital Tool Utilization)
AI 기술은 개인 맞춤형 학습을 가능하게 하며 영어 교육의 패러다임을 바꾸고 있습니다.
상호작용 및 적응형 학습: AI 도구는 학생 개개인에 맞춘 상호작용과 적응형 학습 경험을 제공하여 교육 전략과 성과를 크게 향상시키고 있습니다.
AI 챗봇의 광범위한 활용: 특히 AI 챗봇과 같은 애플리케이션은 언어 학습에 실질적인 이점을 제공하며 널리 사용되고 있습니다.
🎯 3. 주요 과제와 새로운 접근법 (Major Challenges and New Approaches)
입시 위주의 교육 문화는 특정 영역의 강점을 만들었지만, 동시에 명확한 한계점을 드러내고 있습니다.
언어 능력의 불균형: 시험 중심의 학습 문화는 학생들의 읽기 및 문법 능력을 강화했지만, 실제적인 의사소통 능력 향상에는 한계를 보입니다.
전문 교사 부족: 효과적인 이중 언어 교육을 제공할 수 있는 자격을 갖춘 교육 전문가가 부족한 실정입니다.
성장 마인드셋의 필요성: 이러한 어려움을 극복하기 위해, 실수를 학습 과정의 일부로 여기고 끊임없이 도전하는 '성장 마인드셋'을 장려하는 접근법이 중요해지고 있습니다.
💡 4. 효과적인 학습 방법론 (Effective Learning Methodologies)
데이터는 AI와 디지털 도구를 활용한 체계적인 접근이 교육 성과를 크게 향상시킨다는 것을 보여줍니다.
AI 기반 맞춤형 학습: AI 강화 플랫폼은 개인화되고 효율적인 학습을 제공하여 교육적 성과를 극대화합니다.
디지털 도구의 검증된 효과: 영어 교육에서 디지털 도구의 광범위한 적용이 교육 결과에 상당한 긍정적 영향을 미쳤음이 여러 체계적인 연구를 통해 입증되었습니다.
🏛️ 5. 교육 정책 변화와 그 영향 (Policy Changes and Their Impact)
정부는 글로벌 트렌드에 맞춰 기존의 교육 방식을 재검토하고, 혁신적인 정책을 추진하고 있습니다.
전통적 방식의 재평가: 교사 주도의 암기 및 시험 대비 위주 수업에서 벗어나, 글로벌 트렌드에 맞는 새로운 교육 방식에 대한 요구가 커지고 있습니다.
정부 주도 개혁: 정부는 교육 및 노동 시장 전반에 큰 변화를 가져올 수 있는 잠재력을 지닌 대대적인 영어 교육 개혁을 목표로 새로운 정책들을 추진하고 있습니다.
🌏 6. 해외 성공 사례 (International Success Cases)
아시아는 전 세계 영어 교육의 핵심 시장으로 부상했으며, 여러 국가에서 효과적인 교육 전략을 선보이고 있습니다.
아시아 시장의 부상: 2025년 아시아는 영어 교육의 중심지로 자리매김하며, 문화 교류와 경력 성장의 기회를 촉진하고 있습니다.
ASEAN 국가의 인사이트: 아세안(ASEAN) 국가들은 기초 교육 과정의 일부로서 영어를 효과적으로 가르치기 위한 다양한 성공 전략을 보여주고 있습니다.