릴리스 프로세스/변경 로그
이 프로젝트는 0.Y.Z 형식을 사용하는, 약간 수정된 시맨틱 버저닝을 따릅니다. 앞의 0은 SDK가 아직 빠르게 발전 중임을 의미합니다. 구성 요소는 다음과 같이 증가합니다.
마이너(Y) 버전
베타로 표시되지 않은 모든 공개 인터페이스에 대한 호환성이 깨지는 변경이 있을 때 마이너 버전 Y를 올립니다. 예를 들어, 0.0.x에서 0.1.x로 올라가면서 호환성이 깨지는 변경이 포함될 수 있습니다.
호환성이 깨지는 변경을 원하지 않는다면, 프로젝트에서 0.0.x 버전에 고정(pin)할 것을 권장합니다.
패치(Z) 버전
호환성을 깨지 않는 변경에 대해 Z를 올립니다:
- 버그 수정
- 신규 기능
- 비공개 인터페이스 변경
- 베타 기능 업데이트
호환성이 깨지는 변경 로그
0.9.0
이 버전부터 Python 3.9는 더 이상 지원되지 않습니다. 이 주요 버전은 3개월 전에 EOL에 도달했습니다. 더 최신의 런타임 버전으로 업그레이드해 주세요.
또한 Agent#as_tool() 메서드가 반환하는 값의 타입 힌트가 Tool에서 FunctionTool로 더 좁혀졌습니다. 이 변경은 보통 호환성을 깨는 문제를 일으키지 않지만, 코드가 더 넓은 유니온 타입에 의존한다면 일부 조정이 필요할 수 있습니다.
0.8.0
이 버전에서는 런타임 동작 변경 두 가지로 인해 마이그레이션 작업이 필요할 수 있습니다:
- 동기식 Python 호출 가능 객체를 래핑하는 함수 도구는 이제 이벤트 루프 스레드에서 실행되는 대신
asyncio.to_thread(...)를 통해 워커 스레드에서 실행됩니다. 도구 로직이 스레드 로컬 상태나 스레드 종속 리소스에 의존한다면, 비동기 도구 구현으로 마이그레이션하거나 도구 코드에서 스레드 종속성을 명시적으로 처리하세요. - 로컬 MCP 도구 실패 처리 방식이 이제 구성 가능해졌고, 기본 동작은 전체 실행을 실패시키는 대신 모델에 보이는 오류 출력을 반환할 수 있습니다. fail-fast 시맨틱에 의존한다면
mcp_config={"failure_error_function": None}로 설정하세요. 서버 수준의failure_error_function값이 에이전트 수준 설정을 덮어쓰므로, 명시적 핸들러가 있는 각 로컬 MCP 서버에failure_error_function=None을 설정하세요.
0.7.0
이 버전에는 기존 애플리케이션에 영향을 줄 수 있는 몇 가지 동작 변경이 있습니다:
- 중첩 핸드오프 히스토리는 이제 옵트인(기본 비활성화)입니다. v0.6.x의 기본 중첩 동작에 의존했다면
RunConfig(nest_handoff_history=True)를 명시적으로 설정하세요. gpt-5.1/gpt-5.2의 기본reasoning.effort가"none"으로 변경되었습니다(기존에는 SDK 기본값으로"low"가 설정됨). 프롬프트나 품질/비용 프로파일이"low"에 의존했다면model_settings에서 명시적으로 설정하세요.
0.6.0
이 버전부터 기본 핸드오프 히스토리는 원문 사용자/어시스턴트 턴을 노출하는 대신 단일 어시스턴트 메시지로 패키징되어, 다운스트림 에이전트에 간결하고 예측 가능한 요약을 제공합니다
- 기존의 단일 메시지 핸드오프 트랜스크립트는 이제 기본적으로 <CONVERSATION HISTORY> 블록 앞에 "For context, here is the conversation so far between the user and the previous agent:"로 시작하여, 다운스트림 에이전트가 명확히 라벨된 요약을 받도록 합니다
0.5.0
이 버전은 눈에 보이는 호환성 파괴 변경은 도입하지 않지만, 신규 기능과 내부적으로 중요한 몇 가지 업데이트를 포함합니다:
- SIP 프로토콜 연결을 처리하기 위한
RealtimeRunner지원 추가 - Python 3.14 호환성을 위해
Runner#run_sync의 내부 로직을 대폭 개정
0.4.0
이 버전부터 openai 패키지 v1.x 버전은 더 이상 지원되지 않습니다. 이 SDK와 함께 openai v2.x를 사용해 주세요.
0.3.0
이 버전에서는 Realtime API 지원이 gpt-realtime 모델 및 해당 API 인터페이스(GA 버전)로 마이그레이션됩니다.
0.2.0
이 버전에서는 이전에 인자로 Agent를 받던 몇몇 위치가 이제 AgentBase를 인자로 받습니다. 예를 들어 MCP 서버의 list_tools() 호출입니다. 이는 순수하게 타이핑 변경이며, 여전히 Agent 객체를 받게 됩니다. 업데이트하려면 Agent를 AgentBase로 바꾸어 타입 오류만 수정하면 됩니다.
0.1.0
이 버전에서는 MCPServer.list_tools()에 run_context와 agent라는 두 개의 새 매개변수가 추가되었습니다. MCPServer를 서브클래싱하는 모든 클래스에 이 매개변수를 추가해야 합니다.