IT

Phidata를 사용한 첫 번째 에이전트 AI 구축: 금융 에이전트

esmile1 2025. 1. 5. 03:15

Phidata를 사용한 첫 번째 에이전트 AI 구축: 금융 에이전트

안녕하세요, 여러분. 제 이름은 크리샥이고 YouTube 채널에 오신 것을 환영합니다. 오늘은 매우 흥미로운 주제인 에이전트 AI 애플리케이션 구축에 대해 이야기하려고 합니다. 이번 비디오에서는 Phidata라는 프레임워크를 사용하여 금융 에이전트를 만들어 볼 것입니다.

Phidata 소개

Phidata는 에이전트 시스템을 구축, 배포 및 모니터링하기 위한 오픈 소스 플랫폼입니다. 이 프레임워크를 사용하면 AI 에이전트, 멀티모달 에이전트, 복잡한 에이전트 워크플로우 등을 만들 수 있습니다. Phidata의 장점은 다음과 같습니다:

  • 원하는 LLM을 선택하여 에이전트로 전환 가능
  • 도메인별 정보 추가 가능
  • 복잡한 워크플로우 구현 가능
  • 다양한 모델(OpenAI, Anthropic, AWS Bedrock, Azure 등) 통합 지원

프로젝트 설정

이제 금융 에이전트 프로젝트를 처음부터 설정해 보겠습니다.

  1. VS Code를 열고 새 프로젝트 폴더를 만듭니다.
  2. 터미널에서 가상 환경을 생성합니다:
conda create -p venv python=3.12

  1. 가상 환경을 활성화합니다:
conda activate venv

  1. requirements.txt 파일을 생성하고 다음 라이브러리를 추가합니다:
phidata
python-dotenv
yfinance
duckduckgo-search
fastapi
uvicorn
groq

  1. 필요한 라이브러리를 설치합니다:
pip install -r requirements.txt

  1. .env 파일을 생성하고 필요한 API 키를 추가합니다:
PHIDATA_API_KEY=your_phidata_api_key
GROQ_API_KEY=your_groq_api_key

금융 에이전트 구현

이제 financial_agent.py 파일을 만들고 금융 에이전트를 구현해 보겠습니다.

  1. 필요한 라이브러리를 임포트합니다:
from phi.agent import Agent
from phi.llm.groq import Groq
from phi.tools.duckduckgo import DuckDuckGo
from phi.tools.yfinance import YFinance

  1. 웹 검색 에이전트를 생성합니다:
web_search_agent = Agent(
    name="웹 검색 에이전트",
    role="웹에서 정보를 검색합니다",
    model=Groq(model="llama2-70b-4096"),
    tools=[DuckDuckGo()],
    instructions="항상 출처를 포함하세요",
    show_tool_calls=True,
    markdown=True
)

  1. 금융 에이전트를 생성합니다:
finance_agent = Agent(
    name="금융 AI 에이전트",
    model=Groq(model="llama2-70b-4096"),
    tools=[YFinance(
        analyze_recommendation=True,
        stock_fundamentals=True,
        technical_indicators=True,
        company_news=True
    )],
    instructions="데이터를 표로 표시하세요",
    show_tool_calls=True,
    markdown=True
)

  1. 멀티 에이전트를 생성하여 두 에이전트를 결합합니다:
multi_agent = Agent(
    team=[web_search_agent, finance_agent],
    instructions="항상 출처를 포함하고 데이터를 표로 표시하세요",
    show_tool_calls=True,
    markdown=True
)

  1. 에이전트에 쿼리를 실행합니다:
response = multi_agent.print_response(
    "NVIDIA에 대한 애널리스트 추천을 요약하고 최신 뉴스를 공유해주세요",
    stream=True
)

Phidata 플레이그라운드 설정

이제 Phidata 플레이그라운드를 설정하여 에이전트와 상호작용할 수 있는 웹 인터페이스를 만들어 보겠습니다.

  1. playground.py 파일을 생성하고 필요한 라이브러리를 임포트합니다.
  2. Phidata API 키를 설정합니다:
PHI_API_KEY = os.getenv("PHIDATA_API_KEY")

  1. 웹 검색 에이전트와 금융 에이전트를 이전과 동일하게 생성합니다.
  2. Phidata 플레이그라운드 앱을 생성합니다:
app = playground(
    agents=[finance_agent, web_search_agent]
).get_app()

  1. 앱을 실행합니다:
if __name__ == "__main__":
    serve_playground(app, reload=True)

  1. 터미널에서 python playground.py를 실행하여 플레이그라운드를 시작합니다.
  2. Phidata 대시보드에 로그인하고 플레이그라운드를 선택합니다.
  3. 로컬 엔드포인트(기본적으로 localhost:7777)를 선택하여 플레이그라운드에 연결합니다.

이제 웹 인터페이스를 통해 금융 에이전트와 상호작용할 수 있습니다. 주식 정보, 애널리스트 추천, 최신 뉴스 등을 쉽게 조회할 수 있습니다.

주요 내용 사용 방법 30단계

  1. Python과 Conda가 설치되어 있는지 확인합니다.
  2. 새 프로젝트 폴더를 생성합니다.
  3. VS Code에서 프로젝트 폴더를 엽니다.
  4. 터미널을 열고 가상 환경을 생성합니다.
  5. 가상 환경을 활성화합니다.
  6. requirements.txt 파일을 생성합니다.
  7. 필요한 라이브러리를 requirements.txt에 추가합니다.
  8. 라이브러리를 설치합니다.
  9. .env 파일을 생성합니다.
  10. Phidata와 Groq API 키를 .env 파일에 추가합니다.
  11. financial_agent.py 파일을 생성합니다.
  12. 필요한 라이브러리를 임포트합니다.
  13. 웹 검색 에이전트를 생성합니다.
  14. 금융 에이전트를 생성합니다.
  15. 멀티 에이전트를 생성하여 두 에이전트를 결합합니다.
  16. 에이전트에 쿼리를 실행하는 코드를 작성합니다.
  17. playground.py 파일을 생성합니다.
  18. 필요한 라이브러리를 임포트합니다.
  19. Phidata API 키를 설정합니다.
  20. 웹 검색 에이전트와 금융 에이전트를 생성합니다.
  21. Phidata 플레이그라운드 앱을 생성합니다.
  22. 앱 실행 코드를 작성합니다.
  23. 터미널에서 python playground.py를 실행합니다.
  24. Phidata 대시보드에 로그인합니다.
  25. 플레이그라운드를 선택합니다.
  26. 로컬 엔드포인트를 선택하여 연결합니다.
  27. 웹 인터페이스에서 에이전트와 상호작용합니다.
  28. 주식 정보를 조회합니다.
  29. 애널리스트 추천을 확인합니다.
  30. 최신 뉴스를 조회합니다.

이 튜토리얼을 통해 Phidata를 사용하여 금융 에이전트를 구축하고 상호작용하는 방법을 배웠습니다. 이 기술을 활용하여 다양한 도메인에서 강력한 AI 에이전트를 만들 수 있습니다.