콘텐츠로 이동

OpenAI Agents SDK TypeScript

OpenAI Agents SDK

소수의 기본 구성 요소로 텍스트 및 음성 에이전트를 구축하세요.

시작하기
import { Agent, run } from '@openai/agents';
const agent = new Agent({
name: 'Assistant',
instructions: 'You are a helpful assistant.',
});
const result = await run(
agent,
'Write a haiku about recursion in programming.',
);
console.log(result.finalOutput);

TypeScript용 OpenAI Agents SDK는 매우 적은 추상화로, 가볍고 사용하기 쉬운 패키지에서 에이전트형 AI 앱을 구축할 수 있게 해줍니다. 이는 에이전트를 위한 이전 실험 프로젝트인 Swarm의 프로덕션 준비 버전 업그레이드이며, Python에서도 사용 가능합니다. Agents SDK는 매우 작은 기본 구성 요소 집합을 제공합니다.

  • 에이전트: instructions와 tools를 갖춘 LLM
  • Agents as tools / 핸드오프: 특정 작업을 위해 에이전트가 다른 에이전트에 위임할 수 있게 해줍니다
  • 가드레일: 에이전트 입력을 검증할 수 있게 해줍니다

TypeScript와 결합하면, 이러한 기본 구성 요소만으로도 도구와 에이전트 사이의 복잡한 관계를 표현할 만큼 강력하며, 가파른 학습 곡선 없이 실제 애플리케이션을 구축할 수 있습니다. 또한 SDK에는 에이전트형 플로우를 시각화하고 디버깅할 수 있는 내장 트레이싱이 포함되어 있으며, 이를 평가하고 애플리케이션에 맞게 모델을 파인튜닝하는 것도 가능합니다.

SDK의 핵심 설계 원칙은 두 가지입니다.

  1. 사용할 가치가 있을 만큼 충분한 기능을 제공하되, 빠르게 익힐 수 있도록 기본 구성 요소 수는 적게 유지합니다.
  2. 즉시 잘 동작하면서도, 실제 동작을 정확히 원하는 대로 커스터마이즈할 수 있습니다.

다음은 SDK의 주요 기능입니다.

  • 에이전트 루프: 도구 호출을 처리하고, 결과를 LLM에 다시 전달하며, 작업이 완료될 때까지 계속하는 내장 에이전트 루프
  • TypeScript 우선: 새로운 추상화를 배울 필요 없이, TypeScript 고유 기능으로 에이전트를 오케스트레이션하고 체이닝
  • Agents as tools / 핸드오프: 여러 에이전트 간 작업을 조율하고 위임하는 강력한 메커니즘
  • 가드레일: 에이전트 실행과 병렬로 입력 검증 및 안전성 검사를 수행하고, 검사를 통과하지 못하면 즉시 실패 처리
  • 함수 도구: 자동 스키마 생성과 Zod 기반 검증으로 모든 TypeScript 함수를 도구로 변환
  • MCP 서버 도구 호출: 함수 도구와 동일한 방식으로 동작하는 내장 MCP 서버 도구 통합
  • 세션: 에이전트 루프 내 작업 컨텍스트를 유지하기 위한 영속 메모리 레이어
  • 휴먼인더루프 (HITL): 에이전트 실행 전반에 사람을 참여시키는 내장 메커니즘
  • 트레이싱: 워크플로를 시각화, 디버깅, 모니터링하기 위한 내장 트레이싱과 OpenAI 평가/파인튜닝/증류 도구 모음 지원
  • 실시간 에이전트: 자동 인터럽션(중단 처리) 감지, 컨텍스트 관리, 가드레일 등의 기능으로 강력한 음성 에이전트 구축
Terminal window
npm install @openai/agents zod

SDK는 Zod v4를 필요로 하며, npm으로 zod를 설치하면 최신 v4 릴리스를 가져옵니다.

대부분의 첫 사용자에게는 다음 진입점 중 하나면 충분합니다.

다음으로 시작이런 경우 사용참고
@openai/agents대부분의 텍스트 또는 음성 애플리케이션을 구축하는 경우권장 기본값입니다. OpenAI provider 설정을 포함하며, @openai/agents/realtime 아래에 음성 API를 노출합니다.
@openai/agents-realtime독립형 Realtime 패키지만 필요한 경우브라우저 전용 음성 앱이나 더 좁은 패키지 경계를 원할 때 유용합니다.
하위 수준 패키지 (@openai/agents-core, @openai/agents-openai, @openai/agents-extensions)하위 수준 조합, 커스텀 provider 연결, 또는 특정 통합이 필요한 경우대부분의 신규 사용자는 구체적인 필요가 생길 때까지는 무시해도 됩니다.
Hello World
import { Agent, run } from '@openai/agents';
const agent = new Agent({
name: 'Assistant',
instructions: 'You are a helpful assistant',
});
const result = await run(
agent,
'Write a haiku about recursion in programming.',
);
console.log(result.finalOutput);
// Code within the code,
// Functions calling themselves,
// Infinite loop's dance.

(실행하려면 OPENAI_API_KEY 환경 변수를 설정했는지 확인하세요)

Terminal window
export OPENAI_API_KEY=sk-...

먼저 경로 하나를 선택해 처음부터 끝까지 동작하게 만든 뒤, 더 깊은 가이드로 돌아오세요.

수행할 작업은 알고 있지만 어떤 페이지를 봐야 할지 모를 때 이 표를 사용하세요.

목표시작 위치
첫 텍스트 에이전트를 만들고 하나의 전체 실행을 확인하기빠른 시작
함수 도구, 호스티드 툴, 또는 Agents as tools 추가도구
핸드오프와 매니저 스타일 오케스트레이션 중 선택하기에이전트 오케스트레이션
턴 간 메모리 유지하기에이전트 실행세션
OpenAI 모델, websocket 전송, 또는 비OpenAI provider 사용모델
출력, 실행 항목, 인터럽션(중단 처리), 재개 상태 검토실행 결과
저지연 음성 에이전트 구축빠른 시작