AI 에이전트 구축: Phidata와 Groq 모델을 활용한 초보자 가이드
AI 에이전트에 대한 관심이 높아지고 있습니다. 2025년은 AI 멀티모달 에이전트, 에이전트 RAG 등이 주목받을 것으로 예상됩니다. 이 글에서는 Phidata 프레임워크를 사용하여 간단한 AI 에이전트를 만드는 방법을 소개합니다.
프로젝트 설정
먼저 프로젝트 환경을 설정해 보겠습니다.
- 새 폴더 생성: agenti_ai
- UV 사용하여 가상 환경 초기화:
- uv init --name agenti_phidata --python 3.12
- 필요한 패키지 설치:
- uv add phidata uv add groq uv add duckduckgo-search
웹 검색 에이전트 구현
웹 검색 기능을 가진 에이전트를 만들어 보겠습니다.
from phidata import Agent
from phidata.model import Groq
from phidata.tools.duckduckgo import DuckDuckGoTool
from dotenv import load_dotenv
load_dotenv()
web_search_agent = Agent(
name="웹 검색 에이전트",
model=Groq("llama2-70b-4096"),
tools=[DuckDuckGoTool()],
instructions="항상 출처를 포함하고 마크다운 형식으로 답변하세요.",
description="웹에서 콘텐츠를 검색하는 에이전트입니다.",
debug_mode=True
)
print(web_search_agent.run("네팔의 수도는 어디인가요?"))
금융 정보 에이전트 구현
주식 정보를 제공하는 에이전트를 만들어 보겠습니다.
from phidata.tools.yfinance import YFinanceTool
finance_agent = Agent(
name="금융 정보 에이전트",
model=Groq("llama2-70b-4096"),
tools=[YFinanceTool(
stock_price=True,
analyst_recommendations=True,
company_info=True,
company_news=True
)],
instructions="데이터를 표 형식으로 표시하세요.",
description="금융 정보를 찾는 에이전트입니다.",
debug_mode=True
)
print(finance_agent.run("NVDA의 애널리스트 추천을 요약해주세요."))
멀티 에이전트 구현
웹 검색과 금융 정보 에이전트를 결합한 멀티 에이전트를 만들어 보겠습니다.
team = Agent(
name="멀티 에이전트 팀",
agents=[web_search_agent, finance_agent],
model=Groq("llama2-70b-4096"),
instructions=["항상 출처를 포함하세요.", "데이터를 표 형식으로 표시하세요."],
debug_mode=True
)
print(team.run("NVIDIA의 애널리스트 추천을 요약하고 최신 뉴스를 공유해주세요."))
Phidata 플레이그라운드 UI 설정
Phidata에서 제공하는 UI를 사용하여 에이전트와 상호작용할 수 있습니다.
- API 키 설정:
- PHIDATA_API_KEY=your_api_key_here
- 필요한 패키지 설치:
- uv add sqlalchemy uv add fastapi
- playground.py 파일 생성:
from phidata import Agent, Playground
from phidata.model import Groq
from phidata.tools.duckduckgo import DuckDuckGoTool
from phidata.tools.yfinance import YFinanceTool
from sqlalchemy import create_engine
from dotenv import load_dotenv
load_dotenv()
engine = create_engine("sqlite:///playground.db")
web_search_agent = Agent(
name="웹 검색",
model=Groq("llama2-70b-4096"),
tools=[DuckDuckGoTool()],
instructions=["항상 출처를 포함하세요."],
description="웹에서 콘텐츠를 검색하는 에이전트입니다."
)
finance_agent = Agent(
name="금융 정보",
model=Groq("llama2-70b-4096"),
tools=[YFinanceTool(
stock_price=True,
analyst_recommendations=True,
company_info=True,
company_news=True
)],
instructions=["데이터를 표 형식으로 표시하세요."],
description="금융 정보를 찾는 에이전트입니다."
)
playground = Playground(
agents=[web_search_agent, finance_agent],
storage=engine,
)
app = playground.app
- 플레이그라운드 실행:
- uv run playground.py
- 브라우저에서 http://localhost:7777 접속
주요 내용 사용 방법 30단계
- Python 3.12 설치
- 프로젝트 폴더 생성
- UV 설치
- UV로 가상 환경 초기화
- Phidata 패키지 설치
- Groq 패키지 설치
- DuckDuckGo 검색 도구 설치
- 환경 변수 파일 (.env) 생성
- Groq API 키 설정
- 웹 검색 에이전트 코드 작성
- 웹 검색 에이전트 실행 및 테스트
- YFinance 도구 설치
- 금융 정보 에이전트 코드 작성
- 금융 정보 에이전트 실행 및 테스트
- 멀티 에이전트 팀 코드 작성
- 멀티 에이전트 실행 및 테스트
- Phidata API 키 획득
- SQLAlchemy 설치
- FastAPI 설치
- playground.py 파일 생성
- SQLite 데이터베이스 설정
- 웹 검색 에이전트 설정 (플레이그라운드용)
- 금융 정보 에이전트 설정 (플레이그라운드용)
- Playground 객체 생성
- FastAPI 앱 설정
- 플레이그라운드 실행
- 로컬호스트 접속
- UI에서 에이전트 선택
- 질문 입력
- 결과 확인 및 분석
이 가이드를 따라하면 Phidata와 Groq 모델을 사용하여 기본적인 AI 에이전트를 구축하고 실행할 수 있습니다. 웹 검색, 금융 정보 조회, 그리고 이들을 결합한 멀티 에이전트 시스템까지 다양한 에이전트를 경험해볼 수 있습니다. 또한 Phidata에서 제공하는 플레이그라운드 UI를 통해 더욱 직관적으로 에이전트와 상호작용할 수 있습니다.
AI 에이전트 기술은 계속 발전하고 있으며, 이는 단지 시작에 불과합니다. 앞으로 더 많은 기능과 도구가 추가되어 더욱 강력한 AI 에이전트 시스템을 구축할 수 있을 것입니다. 이 튜토리얼을 통해 AI 에이전트의 기본 개념과 구현 방법을 이해하셨기를 바랍니다. 계속해서 실험하고 학습하면서 AI 에이전트의 무한한 가능성을 탐구해 보세요!
'IT' 카테고리의 다른 글
Google Apps Script를 활용한 뉴스 영향도 분석 웹 앱 만들기 (0) | 2025.01.07 |
---|---|
AI 에이전트 구축: Phidata와 Groq 모델을 활용한 초보자 가이드 (3) | 2025.01.05 |
E-Book Title: Building Financial AI Agents with Phidata: A Practical Guide (0) | 2025.01.05 |
Phidata를 사용한 첫 번째 에이전트 AI 구축: 금융 에이전트 (2) | 2025.01.05 |
Automate Your Work with AI Agent Teams: A Comprehensive Guide to Building Innovative Workflows with 20+ Agents (0) | 2025.01.05 |