OpenAI, o3 추론 모델 Assistant API 정식 통합—스레드 기반 멀티턴 추론 지원
OpenAI가 o3 추론 모델을 Assistants API v2에 정식 통합하며, 스레드 기반 멀티턴 대화와 파일 검색·코드 인터프리터 툴을 함께 사용할 수 있게 됐다. 기존 Chat Completions API 단독 호출 대비 복잡한 추론 상태를 서버 측에서 관리할 수 있어 에이전트 개발 복잡도가 크게 낮아진다.
무엇이 바뀌었나
OpenAI는 2026년 6월 24일 Assistants API v2에서 o3 및 o3-mini 모델을 정식 지원한다고 발표했다. 기존에는 추론 모델을 사용하려면 Chat Completions API를 직접 호출하고 멀티턴 컨텍스트를 클라이언트에서 직접 관리해야 했다. 이번 통합으로 Thread → Run → Message 흐름 안에서 추론 단계(chain-of-thought)가 서버 측 스레드에 자동 저장된다.
주요 변경 사항:
model파라미터에o3,o3-mini지정 가능reasoning_effort파라미터(low/medium/high) 를 Run 생성 시 전달- 파일 검색(File Search), 코드 인터프리터(Code Interpreter) 툴과 동시 사용 지원
- 스트리밍 응답은
high이외 effort 설정에서만 지원(현재)
한국 개발자·크리에이터에게 미치는 영향
에이전트 파이프라인 단순화: 기존에는 긴 추론 컨텍스트를 직접 배열로 누적해 토큰 한도를 수동 관리해야 했다. Thread 자동 관리 덕분에 백엔드 코드량이 약 30~40% 줄어드는 효과가 보고되고 있다.
비용 고려사항: o3-mini(medium effort) 기준 입력 $1.10 / 1M 토큰, 출력 $4.40 / 1M 토큰(공식 페이지 참조). Assistants API 사용 시 Thread 저장 비용($0.10 / GB·일)이 추가로 발생하므로 장기 스레드 관리 전략이 필요하다.
크리에이터 도구 적용 예시: 영상 스크립트 자동 리뷰, 긴 코드베이스 분석 에이전트 등 반복 컨텍스트가 필요한 워크플로에 즉시 적용 가능하다.
# Assistants API + o3 빠른 시작 예시
from openai import OpenAI
client = OpenAI()
assistant = client.beta.assistants.create(
model="o3-mini",
tools=[{"type": "code_interpreter"}],
instructions="한국어로 코드 리뷰를 수행하는 시니어 개발자입니다."
)
thread = client.beta.threads.create()
client.beta.threads.messages.create(
thread_id=thread.id,
role="user",
content="아래 Python 함수의 시간 복잡도를 분석해 주세요."
)
run = client.beta.threads.runs.create_and_poll(
thread_id=thread.id,
assistant_id=assistant.id,
model="o3-mini",
truncation_strategy={"type": "auto"},
additional_body={"reasoning_effort": "medium"}
)
print(run.status)
마이그레이션 체크리스트
- 기존 Chat Completions 기반 에이전트:
model교체 후reasoning_effort파라미터 추가만으로 전환 가능. - 스트리밍 필수 워크플로:
reasoning_effort: high사용 시 현재 스트리밍 미지원 —low또는medium으로 우선 전환 권장. - 비용 모니터링: Thread 보존 기간을 기본 60일에서 단축 설정(
expires_after)하면 저장 비용 절감 가능. - 한국어 출력 품질:
instructions에 명시적 한국어 응답 요청 포함 시 추론 단계 언어도 한국어로 고정되는 것이 확인됨.
자세한 스펙과 요금은 OpenAI 공식 문서 및 공식 가격 페이지를 참조한다.