OpenAI 공식 문서 기준
⚠️ D-148일
OpenAI Assistants API 종료
8월 26일 전에 놓치면 생기는 일
지금 이 순간에도 Assistants API를 쓰는 서비스는 정상 작동합니다. 하지만 2026년 8월 26일 이후로는 /v1/assistants와 /v1/threads 엔드포인트 자체가 차단됩니다. OpenAI 공식 발표 기준, 대체 경로는 하나입니다 — Responses API + Conversations API.
종료 타임라인 — 지금 어디쯤 왔나
결론부터 말씀드리면, 이미 반환점을 지났습니다. OpenAI는 2025년 8월 26일 Assistants API 종료를 공식 발표했고, 정확히 1년 뒤인 2026년 8월 26일에 엔드포인트를 완전히 차단합니다. (출처: OpenAI 공식 문서, platform.openai.com/docs/assistants/migration)
오늘(2026.04.01) 기준으로 남은 기간은 약 148일입니다. 얼핏 여유 있어 보이지만, 프로덕션 서비스에서 API 마이그레이션은 개발·테스트·배포·모니터링 사이클만 최소 6~8주가 잡힙니다.
| 날짜 | 이벤트 | 현재 상태 |
|---|---|---|
| 2024.12.18 | Assistants API v1 베타 접근 종료 (v2만 허용) | 완료 |
| 2025.08.26 | 공식 Deprecated 선언, 개발자 통보 | 완료 |
| 2026.04.01 ← 지금 | 작동 중이지만 End-of-Life 상태 | 진행 중 |
| 2026.08.26 | 엔드포인트 완전 차단 | D-148일 |
지금 아무것도 안 하면 8월 27일 새벽부터 서비스가 멈춥니다.
바뀌는 개념 4가지 — 이름만 바뀐 게 아닙니다
💡 공식 발표문과 실제 마이그레이션 흐름을 같이 놓고 보니, 이름만 1:1로 바뀐 게 아니라 아키텍처 철학 자체가 달라졌다는 게 보였습니다.
OpenAI 공식 마이그레이션 가이드는 4가지 개념을 아래처럼 교체합니다. (출처: OpenAI API Docs — Assistants Migration)
| 기존 (Assistants) | 신규 (Responses) | 핵심 차이 |
|---|---|---|
| Assistants | Prompts | API로 생성 불가 → 대시보드에서만 생성 |
| Threads | Conversations | 메시지만 저장 → tool call·output 포함 Items |
| Runs (비동기) | Responses (동기) | 폴링 루프 불필요 → 요청/응답 단순화 |
| Run Steps | Items | 실행 단계 추적 → 통합된 단일 객체 |
겉보기엔 이름만 바뀐 것 같지만, Prompts는 API로 만들 수 없습니다. 기존 Assistants처럼 코드에서 openai.beta.assistants.create()로 생성하는 방식이 완전히 사라집니다. 대시보드에서 직접 만들고 ID를 복사해 코드에 박아야 합니다. 자동화 파이프라인에서 Assistant 객체를 동적으로 생성하던 구조라면 아키텍처 재설계가 필요한 부분입니다.
또 하나 — Runs는 비동기 폴링(polling) 루프가 필수였습니다. while run.status in ("queued", "in_progress") 형태로 상태를 계속 확인해야 했는데, Responses는 이 루프가 필요 없습니다. 코드가 훨씬 짧아지고, 에러 처리도 단순해집니다.
Thread 기록이 사라질 수도 있는 이유
⚠️ “마이그레이션 도구가 제공될 거야”라고 기대하고 있다면 — 공식 문서에 정반대로 나와 있습니다.
OpenAI 공식 마이그레이션 가이드에는 이렇게 나옵니다.
“We will not provide an automated tool for migrating Threads to Conversations. Instead, we recommend migrating new user threads onto conversations and backfilling old ones as necessary.”
(출처: OpenAI API Docs — Assistants Migration Guide, 2026)
Thread를 Conversation으로 자동 이전해주는 도구는 없습니다. 기존 대화 기록을 유지하려면 직접 코드를 짜서 Thread의 메시지를 읽고 Conversation에 Items로 다시 심어야 합니다.
백필(backfill) 코드 흐름은 아래처럼 작성해야 합니다. 공식 가이드에도 동일한 구조가 실려 있습니다. (출처: developers.openai.com)
# Thread 기록을 Conversation으로 백필하는 예시 (Python)
thread_id = "thread_EIpHrTAVe0OzoLQg3TXfvrkG"
messages = []
for page in openai.beta.threads.messages.list(
thread_id=thread_id, order="asc"
).iter_pages():
messages += page.data
items = []
for m in messages:
item = {"role": m.role}
item_content = []
for content in m.content:
if content.type == "text":
content_type = "input_text" if m.role == "user" else "output_text"
item_content.append({"type": content_type, "text": content.text.value})
item["content"] = item_content
items.append(item)
# 변환된 items로 Conversation 생성
conversation = openai.conversations.create(items=items)
Thread가 많은 서비스라면 이 백필 작업 자체가 상당한 API 호출 비용과 시간을 요구합니다. 8월 직전에 몰아서 하려다 요금 폭탄 맞을 수 있습니다. 지금부터 새 대화는 Conversations API로 받고, 기존 기록은 우선순위 높은 것부터 순차적으로 옮기는 게 낫습니다.
비용 구조가 조용히 달라집니다
💡 “새 API가 더 비쌀 것”이라는 추측이 많은데, 토큰 비용은 낮아지고 도구 호출 비용이 새로 생기는 구조입니다. 같은 사용 패턴이라도 총비용이 달라질 수 있습니다.
Responses API는 내부 테스트 기준 Chat Completions 대비 캐시 활용도가 40~80% 개선됐습니다. (출처: OpenAI 공식 마이그레이션 가이드, platform.openai.com/docs/guides/migrate-to-responses) 반복 요청이 많은 서비스는 토큰 비용이 줄어드는 효과가 있습니다.
반면 도구 호출 비용이 별도로 청구됩니다. 아래는 현재 공식 가격 기준입니다. (출처: OpenAI API Pricing, 2026.04.01 기준)
| 도구 | Assistants API | Responses API |
|---|---|---|
| File Search 저장 | $0.10/GB/일 (1GB 무료) | $0.10/GB/일 (1GB 무료) — 동일 |
| File Search 호출 | 무료(포함) | $2.50/1,000회 호출 |
| Web Search | 없음 | $10/1,000회 호출 + 토큰 비용 |
| Code Interpreter | $0.03/세션 | $0.03/컨테이너 — 동일 |
File Search를 자주 호출하는 RAG 서비스라면 비용이 늘어납니다. 하루 1만 번 호출 기준으로 월 약 $750의 추가 비용이 발생합니다. 마이그레이션 전에 현재 File Search 호출 횟수를 반드시 측정해두세요.
마이그레이션 3가지 경로 — 상황별 선택법
상황에 따라 선택할 수 있는 경로가 세 가지 있습니다. 공식 문서와 실사용 커뮤니티 피드백을 교차해서 보면, 각 경로의 장단점이 꽤 명확하게 나뉩니다.
※ previous_response_id와 conversation은 동시에 사용할 수 없습니다. 공식 문서에 이유는 별도로 나와 있지 않습니다.
4월~8월 단계별 액션 플랜
💡 ragwalla.com이 공개한 타임라인 프레임워크와 OpenAI 공식 가이드 권장 순서를 교차 분석해보니, 보통 7~8월에 몰아서 마이그레이션하려는 팀이 비용과 일정 두 가지를 동시에 놓치는 패턴이 반복됩니다.
재고 파악 — 뭘 쓰고 있는지 먼저 목록 만들기
사용 중인 Assistant 객체, Thread 수, 도구(code_interpreter·file_search·function) 목록을 정리하세요. 특히 File Search 일간 호출 수를 측정해두면 비용 예측이 가능합니다.
Prompt 생성 + 새 대화 Conversations API로 전환
대시보드에서 기존 Assistant를 Prompt로 변환하고 ID를 확보하세요. 새 사용자 세션부터는 Conversations API를 사용하도록 코드를 변경합니다. Function 파라미터 구조도 이 시점에 수정하세요.
프로덕션 트래픽 점진적 전환 + Shadow 비교 테스트
Feature flag로 일부 트래픽을 Responses API로 보내면서 응답 품질과 비용을 비교합니다. File Search 결과·인용 방식이 달라질 수 있으니 RAG 서비스는 반드시 품질 회귀 테스트를 돌리세요.
전면 전환 + 기존 Thread 기록 백필 완료
Assistants API 엔드포인트 호출을 전부 끊고 Responses API로 완전 이전합니다. 남은 Thread 기록 중 보존이 필요한 것은 이 시점까지 백필을 마쳐야 합니다. 8월에 하면 늦습니다.
하드 데드라인 — 모든 이전 완료 상태여야
이 날 이후로 /v1/assistants, /v1/threads 호출은 오류를 반환합니다. 여기서 처음 대응을 시작하면 이미 서비스 다운 상태입니다.
자주 나오는 질문 5가지
마치며 — 솔직한 총평
Responses API로의 전환이 단순한 이름 교체나 URL 수정 수준이었다면 이 글이 필요 없었을 겁니다. 막상 공식 문서를 처음부터 끝까지 읽어보면, 마이그레이션 자동 도구 없음, Prompt 생성 방식 변경, File Search 비용 신규 청구, Thread 백필 코딩 직접 작성 — 이 네 가지가 겹쳐서 실제 작업량이 꽤 됩니다.
그렇다고 겁낼 필요는 없습니다. 기존에 쓰던 Run 폴링 루프가 사라지고, 도구 통합이 한결 단순해지는 건 분명한 개선입니다. 캐시 활용도 개선으로 토큰 비용이 실제로 내려가는 서비스도 있을 겁니다.
이 글을 읽은 지금이 4월 초입니다. 아직 4개월 넘게 남아 있습니다. 서두를 필요는 없지만, 지금부터 재고 파악을 시작하지 않으면 7월에 반드시 야근이 옵니다. 그게 이 글의 결론입니다.
본 포스팅 참고 자료
- OpenAI 공식 Assistants Migration Guide — developers.openai.com/api/docs/assistants/migration
- OpenAI 공식 Migrate to Responses 가이드 — platform.openai.com/docs/guides/migrate-to-responses
- OpenAI API 공식 가격 페이지 — openai.com/ko-KR/api/pricing
- ragwalla.com — OpenAI Assistants API Deprecation Migration Guide (2026.01.28) — ragwalla.com
- syntackle.com — Assistants to Responses API Migration — syntackle.com
본 포스팅 작성 이후 서비스 정책·UI·기능이 변경될 수 있습니다. 모든 수치 및 API 구조는 2026년 4월 1일 기준 OpenAI 공식 문서를 바탕으로 작성되었습니다. 최신 내용은 OpenAI 공식 문서(platform.openai.com/docs)에서 직접 확인하세요.











댓글 남기기