← 문서 목록

엔드포인트

채팅 응답 생성

POST/v1/chat/completions

모델 불러오는 중…

본문

modelstring필수
모델 ID (예: everyais/gemini-3-8-flash)
messagesarray필수
메시지 1–1000개. role은 system / user / assistant / tool / developer(system으로 처리). content는 문자열, null, 멀티모달 파트 배열(최대 1000). 이미지(image_url)는 base64 data URL로 보내세요. https URL은 vLLM 기반 공급사(Nebius 등) 모델만 받고, Claude·GPT·Gemini는 400입니다
streamboolean선택
SSE 스트리밍 (기본 false)
stream_optionsobject선택
{"include_usage": true}면 마지막 청크에 사용량을 붙입니다
temperaturenumber선택
0–2
top_pnumber선택
0–1
stopstring | string[]선택
최대 4개
ninteger선택
1만 지원(기본 1). 2 이상은 400
presence_penalty / frequency_penaltynumber선택
-2부터 2까지
seedinteger선택
같은 결과를 내도록 돕는 힌트
toolsarray선택
function 도구(최대 512개)와 웹 검색 {"type":"web_search"}(최대 1개, 웹 검색 참고)
tool_choicestring | object선택
auto / none / required 또는 {"type":"function","function":{"name":"..."}}. none이면 웹 검색도 꺼집니다. 일부 모델(Claude Opus 5.5, Sonnet 5.5, Fable 5.1 등)은 required와 함수 지정이 400입니다
response_formatobject선택
{"type":"text"} · {"type":"json_object"} · {"type":"json_schema","json_schema":{...}}
reasoning_effortstring선택
low / medium / high / xhigh / max. 모델에 따라 none, minimal도 받습니다
parallel_tool_callsboolean선택
도구를 동시에 여러 개 호출할지
logprobs / top_logprobsboolean / integer선택
지원하는 모델만. top_logprobs는 0–20
verbositystring선택
low / medium / high. GPT 모델만 받고, 그 밖은 400
prompt_cache_keystring선택
OpenAI 프롬프트 캐시 라우팅 키(1024자 이하). GPT 모델만
safety_identifierstring선택
공급사의 악용 탐지에 쓰는 최종 사용자 해시 ID(64자 이하). GPT 모델만
logit_biasobject선택
토큰 ID별 -100부터 100까지, 최대 300개. vLLM 기반 공급사(Nebius 등)의 모델만
userstring선택
최종 사용자 식별자
everyaisobject선택
everyais 옵션. {"cache":"on"|"off","cache_ttl":"5m"|"1h"}, parameter_policy, provider
providerobject선택
라우팅 힌트. sort(price / latency / throughput), allow_fallbacks. 공급사를 이름으로 지정할 수는 없습니다
modelsstring[]선택
예비 모델(최대 5개). 첫 모델을 호출할 수 없으면 순서대로 시도합니다
extra_bodyobject선택
anthropic / google / openai / everyais 키만 받습니다. 그 밖의 키와 extra_body.provider는 400. Gemini는 google.top_k와 google.media_resolution(low/medium/high, 이미지·영상 입력의 토큰 수)을 받습니다

모델 ID 끝에 :nitro를 붙이면 빠른 공급사를, :floor를 붙이면 가장 저렴한 공급사를 우선합니다. 청구 금액은 같습니다. 추론 강도도 :high처럼 모델 ID 끝에 붙일 수 있고, 본문에 reasoning_effort가 없을 때 그 값으로 쓰입니다. 속도 접미사와 함께 쓸 수 있습니다(:high:nitro). Cursor처럼 추론 강도를 보낼 수 없는 도구에서 쓰세요. 스키마에 없는 필드(store, service_tier 등)는 400입니다.

모델 옵션

모델별 지원값은 GET /v1/models의 capabilities, limits, parameter_constraints에 있습니다. 페이지 위쪽에서 모델을 고르면 표로 보입니다. 요청에는 allowed_values의 값만 쓰세요. 지원하지 않는 값은 조정되거나 400이 됩니다(파라미터 정책).

  • strict 스키마는 structured_outputs: true인 모델에서만 쓰세요.
  • 도구 결과를 이어 보낼 때는 같은 모델에 받은 tool_calls를 그대로 돌려보내세요. Gemini는 tool_calls[].extra_content.google.thought_signature가, OpenAI Responses API를 쓰는 모델은 extra_content.openai.reasoning_id와 reasoning_encrypted_content가 있어야 이어집니다.

스트리밍

stream: true면 SSE 청크가 오고 data: [DONE]으로 끝납니다. 예제는 스트리밍을 보세요.

문의접수