API 레퍼런스

실시간

아직 지원하는 모델이 없습니다

현재 모델 목록에서 이 경로를 지원하는 모델이 없습니다. 이 페이지는 참고용으로 남겨 둡니다.
WS/v1/realtime

텍스트와 오디오를 하나의 지속 연결로 주고받아야 할 때 Realtime 엔드포인트를 사용하세요. HTTP API와 같은 API 키, 키 범위, 모델 권한, 속도 제한으로 보호됩니다.

#서버에서 연결하기

신뢰할 수 있는 서버 프로세스에서 WebSocket을 열고, 핸드셰이크 중에 Authorization: Bearer로 API 키를 보내세요. 장기 API 키를 브라우저 JavaScript에 노출하지 마세요. 브라우저는 이 헤더를 안전하게 붙일 수 없으며, 배포된 키는 누구나 추출할 수 있습니다.

server.ts
import WebSocket from "ws";

const socket = new WebSocket("wss://YOUR_DOMAIN/v1/realtime", {
  headers: { Authorization: "Bearer sk-YOUR_KEY" },
});

socket.on("open", () => {
  // Send standard Realtime session and conversation events here.
});

socket.on("message", (event) => {
  // Forward text / audio deltas to your client.
});

#세션 및 이벤트 흐름

연결 후, 선택한 모델의 표준 Realtime 세션 및 대화 이벤트를 보내세요. 서버 이벤트는 자체 단기 채널을 통해 브라우저로 전달하세요. 그래야 플랫폼 키와 업스트림 WebSocket을 계속 직접 제어할 수 있습니다.

1

연결

인증된 서버 측 소켓 하나를 엽니다.

2

구성

세션 구성과 대화 입력을 보냅니다.

3

전달

델타를 클라이언트로 전달하고 끝나면 세션을 닫습니다.

#신중하게 재연결하기

WebSocket은 상태를 가집니다. 연결이 끊기면 새 세션을 만들고, 의도적으로 보관한 애플리케이션 상태만 다시 보내세요. 401, 403, 402, 429는 조치가 필요한 계정 또는 키 신호로 처리하고, 일시적인 네트워크 오류와 5xx 오류는 횟수를 제한한 백오프로 재시도하세요.

실시간 오디오가 필요 없다면 HTTP로 시작하세요

일반적인 스트리밍 텍스트라면 /v1/chat/completions가 배포하기 더 간단하며 server-sent events를 사용합니다. 지속적인 저지연 세션이 제품 경험의 일부일 때 Realtime으로 옮기세요.

아직 해결되지 않았나요?

요청 ID나 오류 메시지를 보내 주시면 확인해 드리겠습니다.