responses.create() 는 OpenAI 가 새 코드에 권장하는 API 야. Chat Completions 도 계속 동작하지만, built-in tools, semantic streaming, background mode, reasoning controls 같은 새 기능은 Responses 에 먼저 추가돼. 새로 시작한다면 Responses 를 기준으로 잡는 게 좋아.
바로 체감하는 차이 세 가지
- previous_response_id 로 대화를 이어 — turn 마다 전체 message 배열을 다시 보낼 필요가 없어. 직전 응답의 ID 와 새 입력만 보내면 서버가 앞선 대화를 연결해줘. 요청이 단순해지고 되풀이해서 보내는 token 도 줄어.
- response.output_text — assistant 가 만든 최종 텍스트를 바로 꺼낼 수 있어.
completion.choices[0].message.content를 따라 들어가지 않아도 돼. - instructions= — system 성격의 지시는 message 안이 아니라 최상위
instructionsparameter 에 넣어.
기존 Chat Completions 코드는 어떻게 할까?
잘 돌아가는 코드를 한꺼번에 뒤집을 필요는 없어. 호출부를 수정하거나 새 기능을 붙일 때 그 파일의 chat.completions.create 를 responses.create 로 함께 옮겨. 이렇게 조금씩 바꾸면 큰 마이그레이션 사고 없이 자연스럽게 끝낼 수 있어.