에이전트(Agents)
에이전트(Agents)
에이전트는 도구를 써서 작업을 계획하고 완료하고, 다른 에이전트와 협력하며, 여러 단계에 걸쳐 컨텍스트를 유지하는 존재예요. "어디서 오케스트레이션을 돌릴지, 작업 사이의 상태를 누가 관리할지"에 따라 시작 지점이 달라지는데, 그래서 이 가이드는 우선 런타임 선택부터 안내해요. OpenAI의 관리형 런타임, 앱 안에서 도는 SDK, 그리고 모델 응답을 직접 제어하는 방식 중 어떤 게 내 상황에 맞는지 정리해 볼게요.
출처: 공식문서
시작 지점 고르기
| 원하는 것 | 여기서 시작 |
|---|---|
| OpenAI가 관리하는 Codex harness로 에이전트를 돌리기 | Agents API |
| 재사용 에이전트·도구·핸드오프로 앱 안에서 에이전트 루프 제어 | Agents SDK |
| 모델 응답을 직접 다루며 통합 제어 | Responses API |
| 임베디드 채팅 경험 추가 | ChatKit |
에이전트 런타임 비교
| Agents API | Agents SDK | Responses API | |
|---|---|---|---|
| 쓰임 | OpenAI가 에이전트를 관리하고 진행 상황을 저장하는 장기 작업 | 앱 안에서 맞춤 도구와 워크플로로 에이전트 구축 | 모델 직접 호출 또는 처음부터 에이전트 구축 |
| 에이전트 실행 위치 | OpenAI가 관리형 Codex harness 실행 | SDK가 앱 안에서 실행 | 내 앱(선택적으로 호스팅된 오케스트레이션) |
| 통합 난이도 | 낮음 | 중간 | 높음 |
| 작업 간 상태 | 저장된 세션 설정·턴·아이템 | 내 저장소와 SDK 세션, 또는 Responses 컨버세이션 상태 | 수동 히스토리, 응답 체이닝, 또는 Conversations |
| 도구 실행 | 서비스 연결 도구, 애플리케이션 함수 핸들러, 선택적 샌드박스 | 앱 안에서 구성한 도구·통합 | 호스팅 도구 + 내 앱이 실행하는 도구 |
| 실행 환경 | OpenAI 호스팅/자가 호스팅/샌드박스 없음 | 내 런타임과 샌드박스 제공자 통합 | 내 실행 환경 |
| 시작 지점 | Agents API 개요 | Agents SDK 개요 | Responses 가이드 |
Agents API는 Codex harness를 실행하고 기반 에이전트 인프라를 관리해, 내가 에이전트가 하는 일에 집중하게 해줘요. 자동 컨텍스트 압축(compaction), 다중 에이전트 오케스트레이션, 프로그래매틱 도구 호출, MCP 서버 지원이 포함돼요. 자세한 내용은 아키텍처를 참고하세요.
반면 Agents SDK는 배포, 저장, 승인, 런타임 통합을 내 애플리케이션이 제어할 수 있게 해줘요. 실행기가 에이전트 루프와 핸드오프를 처리하죠. 에이전트 실행에서 더 볼 수 있어요.
도구, 스킬, 프롬프트 캐싱 추가
도구 설계, 재사용 스킬, 프롬프트 캐싱은 모든 에이전트 워크플로에 적용되지만, API에 따라 구성과 수명 주기가 다를 수 있어요.
- Using tools에서 함수 호출, MCP, 호스팅 기능을 시작해요.
- Programmatic Tool Calling은 JavaScript 오케스트레이션과 각 API 구성을 다뤄요.
- Skills는 재사용 지시와 지원되는 로딩 메커니즘을 설명해요.
- Prompt caching은 공유 캐싱 동작을, Agents API observability and usage는 세션 회계를 다뤄요.
Agents API 세션, SDK 세션, Responses 컨버세이션, 샌드박스는 서로 다른 리소스예요. 선택한 런타임의 상태·정리 지침을 따르세요.
더 알아보기 (Learn more)
- Agents API 개요 — OpenAI 관리형 Codex harness 기반 에이전트
- Agents SDK — 앱 안에서 에이전트 루프 제어
- Responses API 마이그레이션 가이드 — 모델 응답 직접 제어
- Using tools — 함수 호출과 MCP