OpenAI Agent SDK 동작 방식

junyojeo·2025년 3월 12일
0

OpenAI Agent SDK는 AI Agent 시스템을 쉽게 구축하게 해주는 Framework.

1. 컴포넌트

Agent: 지정된 역할을 수행하는 AI Components.
Agent 구성:

  • name: Agent 이름
  • instructions: Agent의 역할과 행동 방식을 정의하는 지시사항
  • tools: Agent가 사용할 수 있는 함수들 (API 호출, 데이터 처리 등)
  • handoffs: Agent가 다른 Agent에게 작업을 넘길 수 있는 목록

Runner: Agent 실행 흐름을 관리하는 컴포넌트. run() 또는 run_sync() 메서드로 Agent를 실행함.

function_tool: Agent가 호출할 수 있는 함수를 등록하는 데코레이터.

2. 실행 사이클

  1. 입력 처리: 사용자로부터 받은 입력이 Agent에게 전달됨
  2. LLM 호출: Agent는 지시사항, 입력, 대화 기록을 기반으로 LLM 모델 호출
  3. 응답 평가: LLM의 응답을 분석하여 다음 행동 결정
    • 일반 텍스트 응답인 경우 → 최종 출력으로 반환
    • 도구 호출(tool call)이 있는 경우 → 해당 함수 실행
    • 핸드오프(handoff)가 있는 경우 → 다른 Agent에게 제어권 이전
  4. 루프 계속: 최종 출력이 생성될 때까지 사이클 반복

3. 호출 방식

# Agent 실행
result = await Runner.run(
    self.coordinator_agent, 
    input=json.dumps(input_message),
    max_turns=20  # 최대 20번의 턴 허용
)

이 코드가 실행되면 위에서 설명한 Agent 실행 사이클이 시작되고, Agent가 다른 Agent들에게 작업을 분배.

장점

  1. 모듈성: 각 Agent가 독립적인 역할을 수행하므로 확장성이 좋음
  2. 전문화: 각 Agent가 특정 영역에 특화됨
  3. 자동 통합: 여러 Agent의 결과물이 자연스럽게 통합
  4. 효율성: handoff와 tool 기능으로 복잡한 작업을 효율적으로 처리
profile
치킨강정

0개의 댓글