Agents API 선택 기준: SDK, Responses API와 헷갈릴 때 보는 표
OpenAI 문서에는 Agents API, Agents SDK, Responses API가 함께 등장합니다. 이름만 보면 비슷하지만 프로덕션 설계에서는 완전히 다른 선택입니다. 잘못 고르면 첫 데모는 빨라도 이후에 상태 저장, 도구 실행, 승인 흐름, 비용 추적이 꼬입니다.
이 글은 “Agents API vs Agents SDK”, “Responses API 차이”, “OpenAI agent runtime 선택”을 검색하는 개발자를 위한 실무 가이드입니다. 결론부터 말하면, 선택 기준은 모델 성능이 아니라 런타임과 상태 관리 책임입니다.
세 가지 선택지를 한 문장으로 구분하기
Agents API는 OpenAI가 관리하는 Codex 하네스에서 장기 작업을 돌리는 방식입니다. 세션, 오케스트레이션, 컨텍스트 압축, 복구, 샌드박스 실행 같은 부분을 API가 맡습니다. 애플리케이션은 작업을 시작하고 이벤트를 받으며 필요한 도구와 환경을 제공합니다.
Agents SDK는 에이전트 루프를 애플리케이션 안에서 직접 돌리는 방식입니다. 도구, handoff, 승인, 저장소, 배포 구조를 팀이 직접 통제할 수 있습니다. 이미 자체 백엔드와 권한 체계가 있는 서비스라면 SDK가 자연스럽습니다.
Responses API는 모델 응답과 도구 호출을 가장 낮은 수준에서 직접 다루는 방식입니다. 단순 호출부터 자체 에이전트 구현까지 가능합니다. 자유도는 높지만 상태와 실행 정책을 직접 만들어야 합니다.
이 차이를 이해하지 못하면 “일단 되는 코드”는 나오지만 운영에서 고생합니다. 특히 사용자가 나중에 돌아와 같은 작업을 이어가야 하는 서비스라면 세션 책임을 어디에 둘지 먼저 정해야 합니다.
Agents API가 맞는 경우
Agents API는 작업이 길고, 중간 상태가 중요하고, 도구를 여러 번 호출해야 할 때 유리합니다. 예를 들어 GitHub issue 조사, 장애 원인 분석, 문서 검토, 사내 정책 점검, 데이터 분석 리포트 생성이 여기에 들어갑니다.
이런 작업은 한 번의 모델 호출로 끝나지 않습니다. 관련 파일을 찾고, 명령을 실행하고, 결과를 읽고, 추가 질문을 만들고, 최종 보고서를 작성합니다. 중간에 사용자가 추가 지시를 주거나 승인을 해야 할 수도 있습니다. Agents API는 durable session과 event stream을 전제로 하므로 이런 흐름을 단순화합니다.
다만 모든 통제를 OpenAI 쪽 관리 하네스에 맡기는 만큼, 내부 보안 정책이 강한 조직은 environment 옵션을 꼼꼼히 봐야 합니다. self-hosted sandbox가 필요한지, 어떤 파일 시스템을 보여줄지, MCP 서버는 어떤 방식으로 연결할지 정해야 합니다.
Agents SDK가 맞는 경우
Agents SDK는 제품의 핵심 워크플로우가 이미 애플리케이션 내부에 있고, 에이전트는 그 흐름 안에서 작동해야 할 때 적합합니다. 예를 들어 CRM, 백오피스, 금융 앱, 의료 앱처럼 권한·감사·승인 정책이 서비스 코드와 강하게 묶인 경우입니다.
SDK를 쓰면 도구 실행을 앱 코드에서 직접 통제할 수 있습니다. 사용자의 역할, 조직 정책, feature flag, 감사 로그, rate limit을 기존 시스템과 붙이기 쉽습니다. 반면 세션 저장, 에러 복구, 컨텍스트 압축, 장기 작업 큐를 직접 설계해야 합니다.
팀이 이미 워크플로우 엔진, job queue, audit log, permission service를 갖고 있다면 SDK가 더 나을 수 있습니다. 반대로 이런 인프라가 없다면 SDK는 생각보다 많은 운영 코드를 요구합니다.
Responses API가 맞는 경우
Responses API는 가장 직접적인 통합이 필요할 때 맞습니다. 짧은 질의응답, 분류, 요약, 변환, 단일 도구 호출, 자체 프롬프트 체인처럼 구조가 단순한 기능은 Responses API만으로 충분합니다.
또한 팀이 모든 orchestration을 직접 만들고 싶다면 Responses API가 출발점이 됩니다. 모델 호출 단위, tool schema, 대화 저장, retry, fallback, 비용 제한을 세밀하게 제어할 수 있습니다. 대신 장기 작업을 만들면 애플리케이션이 작은 에이전트 플랫폼이 됩니다.
초기 MVP에서는 Responses API가 가장 빠를 수 있습니다. 하지만 “사용자가 작업을 맡기고 나중에 결과를 받는다”, “작업 중 여러 도구를 호출한다”, “중간에 승인을 받는다”가 요구사항에 들어오면 Agents API나 SDK를 검토해야 합니다.
의사결정 표
다음 기준으로 고르면 실수가 줄어듭니다.
| 기준 | Agents API | Agents SDK | Responses API |
|---|---|---|---|
| 장기 작업 | 강함 | 직접 구현 | 직접 구현 |
| 상태 저장 | API 세션 중심 | 앱 저장소 중심 | 직접 설계 |
| 도구 실행 통제 | 중간 | 강함 | 강함 |
| 샌드박스 실행 | 내장 옵션 | 외부 구성 | 직접 구성 |
| 도입 속도 | 빠름 | 중간 | 기능에 따라 빠름 |
| 운영 자유도 | 중간 | 높음 | 가장 높음 |
| 추천 상황 | 조사·리뷰·분석 bot | 제품 내 agent workflow | 단순 AI 기능 또는 자체 플랫폼 |
표만 보면 Responses API가 가장 자유로워 보입니다. 맞습니다. 하지만 자유도는 운영 책임입니다. 반대로 Agents API는 통합이 빠르지만, 제공되는 세션·환경 모델에 맞춰 설계해야 합니다.
첫 구현에서 피해야 할 선택
가장 흔한 실수는 단순 챗봇부터 만들고 나중에 에이전트로 키우는 방식입니다. 챗봇 로그만 저장하고 도구 실행 이력을 남기지 않으면, 나중에 장기 작업으로 확장할 때 데이터 모델을 갈아엎게 됩니다.
두 번째 실수는 “일단 모든 도구를 붙이기”입니다. 런타임 선택보다 중요한 것은 도구 범위입니다. 읽기 도구와 쓰기 도구를 같은 agent에 붙이면 승인 정책이 복잡해집니다. 처음에는 read-only agent로 시작하고, 제안과 실행을 분리하세요.
세 번째 실수는 비용 추적을 나중에 붙이는 것입니다. 에이전트는 한 사용자 요청에 여러 모델 호출과 도구 호출을 만들 수 있습니다. 세션별 비용, 도구별 지연시간, retry 횟수를 초기부터 저장해야 합니다.
실행 체크리스트
- 요구사항에 “장기 작업”, “세션 재개”, “중간 승인”이 있는지 확인한다.
- 단순 요약·분류·변환이면 Responses API부터 검토한다.
- 제품 내부 권한과 감사 체계가 중요하면 Agents SDK를 검토한다.
- 빠르게 장기 작업 bot을 만들고 싶으면 Agents API를 검토한다.
- 런타임을 고르기 전에 도구를 read-only와 write로 나눈다.
- 사용자 요청 하나가 몇 번의 모델 호출로 번질 수 있는지 비용 모델을 세운다.
- 세션, 도구 호출, 승인 상태, 결과 artifact를 별도 엔티티로 저장한다.
- 첫 배포는 위험 낮은 조사·리뷰·문서 작업으로 제한한다.
출처: OpenAI Developers, “Agents”; OpenAI Developers, “Agents API”