Skip to main content
이 문서는 GenAI 개념 섹션의 일부입니다.

2. Agents SDK — 멀티에이전트 오케스트레이션

배경: Swarm에서 Agents SDK로

구분Swarm (2024.10)Agents SDK (2025.03)
성격실험적 교육용 프레임워크프로덕션 레디 SDK
지원 언어Python만Python + TypeScript
모델OpenAI만모델 무관(Model-agnostic)
추적없음내장 Tracing + OpenTelemetry
MCP없음네이티브 지원

4가지 핵심 구성 요소

(1) Agent — 역할 정의

from agents import Agent, Runner

sales_agent = Agent(
    name="Sales Agent",
    instructions="""당신은 영업팀 전문 상담사입니다.
    - 제품 가격, 라이선스, 할인 정책에 대해 정확히 답변하세요.
    - 기술적 질문은 직접 답하지 말고, 기술 상담 에이전트로 넘기세요.""",
    model="gpt-4.1",
    tools=[pricing_tool, crm_lookup_tool],
)

(2) Handoff — 에이전트 간 위임

from agents import Agent, handoff

tech_agent = Agent(
    name="Tech Support Agent",
    instructions="기술적인 질문에 답변합니다.",
    tools=[docs_search_tool, code_executor_tool],
    handoffs=[handoff(sales_agent)],
)

triage_agent = Agent(
    name="Triage Agent",
    instructions="""사용자 요청을 분류하여 적절한 에이전트로 라우팅하세요.""",
    handoffs=[handoff(sales_agent), handoff(tech_agent)],
)

(3) Guardrail — 입출력 안전장치

Guardrail은 에이전트의 입력과 출력을 자동으로 검증 합니다. 별도의 Safety Agent가 입력을 판단하고, tripwire_triggered로 차단 여부를 결정합니다.

(4) Tracing — 실행 추적

Runner.run()을 호출하면 자동으로 트레이스가 생성되며, OpenTelemetry 프로토콜을 지원하여 기존 관측 인프라에 통합 가능합니다.

완성 예제: 멀티에이전트 고객 상담 시스템

from agents import Agent, Runner, handoff, trace
import asyncio

order_agent = Agent(
    name="Order Agent",
    instructions="주문 조회, 배송 상태 확인을 담당합니다.",
    tools=[lookup_order],
)

refund_agent = Agent(
    name="Refund Agent",
    instructions="환불, 반품 관련 문의를 처리합니다.",
    tools=[check_refund_policy],
)

triage_agent = Agent(
    name="Triage Agent",
    instructions="""고객 문의를 분류하여 적절한 에이전트로 전달하세요.""",
    handoffs=[handoff(order_agent), handoff(refund_agent)],
)

async def main():
    with trace("customer-support"):
        result = await Runner.run(
            triage_agent,
            "주문번호 ORD-2026-1234 배송이 언제 오나요?"
        )
        print(result.final_output)

asyncio.run(main())

3. Responses API — Agent의 기반 API

Chat Completions vs Responses API

비교 항목Chat Completions APIResponses API
출시2023.032025.03
패러다임단일 요청-응답에이전틱 루프
도구 호출function calling (개발자 구현)Built-in tools
내장 도구없음web_search, file_search, code_interpreter, computer_use

Built-in Tools 상세

도구용도설명
web_search실시간 검색Bing/자체 인덱스 기반 웹 검색
file_search파일 검색벡터 스토어에서 RAG 검색
code_interpreter코드 실행Python 샌드박스에서 코드 실행
computer_use컴퓨터 제어스크린샷 기반 GUI 자동화
주의 Assistants API는 2026년 상반기 중 폐기 예정 입니다. 새로운 Agent 프로젝트는 처음부터 Responses API를 권장합니다.

4. GPT-4.1 — Agent 특화 모델

GPT-4.1(2025년 4월)은 OpenAI가 처음으로 “Agent용”을 명시적으로 표방한 모델입니다.
개선 영역내용
Instruction Following시스템 프롬프트의 복잡한 규칙을 정확히 준수
Tool Calling 신뢰성Function calling 정확도 향상
Long Context 처리1M 토큰 컨텍스트

가격 비교

모델Input (1M tokens)Output (1M tokens)컨텍스트
GPT-4.1$2.00$8.001M
GPT-4.1 mini$0.40$1.601M
GPT-4.1 nano$0.10$0.401M
성공 비용 최적화 팁: Triage Agent에 nano, Specialist Agent에 mini 또는 4.1, 최종 품질 중요한 응답에만 4.1 을 사용하면 비용을 90% 이상 절감할 수 있습니다.

5. Codex — 코딩 에이전트

Cloud Codex vs CLI Codex

구분Cloud CodexCLI Codex
환경ChatGPT 내 클라우드 실행로컬 터미널
실행 방식샌드박스 VM에서 자율 실행로컬 repo에서 직접 실행
소스SaaS오픈소스 (Rust)
주요 용도PR 생성, 리팩토링로컬 개발 보조

6. Operator & Deep Research

Operator — 브라우저 자동화 에이전트

Computer-Using Agent(CUA) 기술 기반. 스크린샷 → 분석 → 클릭/타이핑 → 새 스크린샷의 반복 루프로 작동합니다. 민감한 작업 시 사용자에게 제어권을 반환합니다.

Deep Research — 자율 리서치 에이전트

o3 모델 기반으로, 5~30분에 걸쳐 수십 개의 웹 페이지를 탐색하여 구조화된 보고서 를 생성합니다. 사람이 며칠간 할 리서치를 자동화하는 개념입니다.

ChatGPT Agent Mode로의 통합

2025년 7월, Operator + Deep Research + 기존 도구들을 ChatGPT Agent Mode 라는 통합 경험으로 결합했습니다. o3가 최초로 ChatGPT의 모든 도구를 에이전틱하게 사용할 수 있는 모델입니다.

7. 추론 모델 (o3, o4-mini)

o3과 o4-mini는 체인 오브 쏘트(Chain-of-Thought) 추론 중에 도구를 호출 할 수 있는 최초의 모델입니다.
모델Input (1M)Output (1M)특징
o3$10.00$40.00최고 추론 성능
o4-mini$1.10$4.40o3 대비 80% 저렴, 추론 성능의 90% 유지
GPT-4.1$2.00$8.00추론 없음. 빠른 응답, Agent 최적화
주의 o3 vs GPT-4.1 선택 기준: 정확한 추론이 필수 → o3, 빠른 응답과 도구 활용이 중요 → GPT-4.1

8. GPT-5 / GPT-5.2 — 최신 모델 동향

모델출시주요 특징
GPT-52025년 중반전반적 성능 도약. 추론+생성 통합
GPT-5.22025년 12월환각 30% 감소. 가장 신뢰할 수 있는 모델

9. Databricks 환경에서의 시사점

OpenAI 모델을 Databricks에서 사용하는 방법

방법설명적합한 경우
Foundation Model APIsDatabricks가 호스팅하는 모델오픈소스 모델 사용 시
External Models외부 모델을 Model Serving endpoint로 래핑OpenAI 모델 필요 시
직접 API 호출코드에서 OpenAI API 직접 호출간단한 프로토타이핑
import mlflow.deployments
client = mlflow.deployments.get_deploy_client("databricks")

response = client.predict(
    endpoint="openai-gpt-4-1",
    inputs={
        "messages": [
            {"role": "system", "content": "당신은 데이터 분석 전문가입니다."},
            {"role": "user", "content": "매출 트렌드를 분석해주세요."},
        ],
        "temperature": 0.1,
    },
)
성공 External Models의 장점: OpenAI API 키를 개발자에게 직접 배포하지 않고, Databricks의 거버넌스와 모니터링 을 통해 중앙 관리할 수 있습니다.

Agents SDK + Databricks Agent Framework 조합

시나리오권장 조합
Databricks 데이터 기반 AgentDatabricks Agent Framework
외부 시스템 연동 멀티에이전트OpenAI Agents SDK
하이브리드Agents SDK로 오케스트레이션 + Databricks Model Serving으로 모델 호출

10. 고객이 자주 묻는 질문

Q1. Chat Completions API를 당장 Responses API로 바꿔야 하나요?

아니요, 당장은 아닙니다. 다만 새로운 Agent 프로젝트는 처음부터 Responses API를 권장합니다.

Q2. Agents SDK vs LangGraph vs Databricks Agent Framework?

기준OpenAI Agents SDKLangGraphDatabricks Agent Framework
복잡도낮음높음중간
데이터 거버넌스별도 구현별도 구현Unity Catalog 내장
추천 상황OpenAI 중심 멀티에이전트복잡한 워크플로우Databricks 데이터 중심 Agent

Q3. GPT-4.1과 o3 중 어떤 모델을 Agent에 사용해야 하나요?

대부분의 Agent에는 GPT-4.1이 적합합니다. o3는 수학적 추론이나 복잡한 논리 문제에서 우수합니다.

Q4. OpenAI Agent 기술을 Databricks 환경에서 사용할 때 보안/거버넌스는?

External Models + Unity Catalog 조합을 권장합니다. API 키를 Databricks Secret으로 관리하고, External Model endpoint로 래핑하여 노출하지 않습니다.

11. 참고 자료