콘텐츠로 이동

OpenAI Agents SDK TypeScript

빠른 시작

단 몇 분 만에 첫 에이전트를 만들 수 있습니다

시작하기
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);

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

  • Agents: instructions와 tools가 장착된 LLM
  • Handoffs: 특정 작업에 대해 다른 에이전트에 위임하도록 하는 기능
  • Guardrails: 에이전트의 입력을 검증하는 기능

TypeScript와 결합하면, 이러한 기본 구성 요소만으로도 도구와 에이전트 간의 복잡한 관계를 표현할 수 있으며, 가파른 학습 곡선 없이 실제 애플리케이션을 구축할 수 있습니다. 또한 SDK에는 에이전트 흐름을 시각화하고 디버그하며, 평가하고 심지어 애플리케이션에 맞게 모델을 미세 조정할 수 있게 해주는 트레이싱이 기본 제공됩니다.

SDK는 두 가지 핵심 설계 원칙을 따릅니다:

  1. 사용할 가치가 있을 만큼 충분한 기능을 제공하되, 학습을 빠르게 하는 데 충분할 만큼 기본 구성 요소는 적게 유지
  2. 기본값으로도 훌륭하게 동작하지만, 발생하는 일을 정확히 커스터마이즈 가능

SDK의 주요 기능은 다음과 같습니다:

  • 에이전트 루프: 도구 호출, 결과를 LLM에 전달, LLM이 완료될 때까지 루프를 처리하는 기본 제공 루프
  • TypeScript 우선: 새로운 추상화를 배울 필요 없이 언어의 기본 기능으로 에이전트를 오케스트레이션하고 체이닝
  • 핸드오프: 여러 에이전트 간 조율과 위임을 위한 강력한 기능
  • 가드레일: 에이전트와 병렬로 입력 검증과 체크를 수행하고 실패 시 조기 중단
  • 함수 도구: 어떤 TypeScript 함수든 자동 스키마 생성과 Zod 기반 검증으로 도구로 전환
  • 트레이싱: 워크플로를 시각화, 디버그, 모니터링하고 OpenAI의 평가, 파인튜닝, 증류 도구를 활용할 수 있는 기본 제공 트레이싱
  • 실시간 에이전트: 자동 인터럽션(중단 처리) 감지, 컨텍스트 관리, 가드레일 등을 포함한 강력한 음성 에이전트 구축
Terminal window
npm install @openai/agents zod@3
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-...