채팅 완성(LLM). stream: true 로 토큰 단위 SSE 스트리밍을 지원합니다.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
model | string | Yes | 모델 ID (예: everyais/claude-opus-5) |
messages | array | Yes | 메시지 배열 1~1000개. role 은 system / user / assistant / tool / developer(→ system 으로 정규화). content 는 문자열·null·멀티모달 파트 배열(최대 1000) |
stream | boolean | No | SSE 스트리밍 (기본 false) |
stream_options | object | No | {"include_usage": true} 면 마지막 청크에 usage 포함 |
max_tokens | integer | No | 최대 출력 토큰 1~200000. max_completion_tokens 로 보내도 자동 정규화됩니다 |
temperature | number | No | 0~2 |
top_p | number | No | 0~1 |
stop | string | string[] | No | 최대 4개 |
n | integer | No | 1 만 지원(기본 1). 2 이상은 400 |
presence_penalty / frequency_penalty | number | No | -2~2 |
seed | integer | No | 재현성 힌트 |
tools | array | No | function 도구 정의(최대 512개)와 서버 실행 웹 검색 {"type":"web_search"}(최대 1개 — 웹 검색 가이드 참고) |
tool_choice | string | object | No | auto / none / required 또는 {"type":"function","function":{"name":"..."}}. function 도구에만 적용됩니다 |
response_format | object | No | {"type":"text"} · {"type":"json_object"} · {"type":"json_schema","json_schema":{...}} |
reasoning_effort | string | No | none / low / medium / high |
parallel_tool_calls | boolean | No | 병렬 도구 호출 허용 |
logprobs / top_logprobs | boolean / integer | No | OpenAI 호환 백엔드에만 패스쓰루. top_logprobs 는 0~20 |
user | string | No | 최종 사용자 식별자 |
everyais | object | No | 게이트웨이 옵션 — {"cache":"on"|"off","cache_ttl":"5m"|"1h"} 와 provider |
provider | object | No | 엔드포인트 힌트 — only / order / ignore / sort(price| latency| throughput) / allow_fallbacks. 판매가는 모델 단일가. sort 는 라우팅만 바꿉니다. |
models | string[] | No | 카탈로그 fallback. 최대 5개. 첫 모델이 호출 불가면 다음을 예약 전에만 시도합니다. |
extra_body | object | No | 공급자별 확장 — anthropic / google / openai / everyais 키만 허용(그 외 키는 400). extra_body.provider 는 거부. |
모델 slug 끝에 :nitro(지연 우선) 또는 :floor(엔드포인트 원가 낮은 쪽)를 붙일 수 있습니다. 청구액은 바뀌지 않습니다.
정의되지 않은 OpenAI 파라미터(logit_bias, store 등)는 조용히 무시됩니다.
Request
{
"model": "everyais/claude-opus-5",
"messages": [
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "Hello!"}
],
"stream": false,
"max_tokens": 1024
}Response
{
"id": "chatcmpl-abc123",
"object": "chat.completion",
"created": 1709884800,
"model": "everyais/claude-opus-5",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "Hello! How can I help you today?"
},
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 25,
"completion_tokens": 10,
"total_tokens": 35
}
}스트리밍
stream: true 면 data: {...} SSE 청크가 이어지고 data: [DONE] 으로 끝납니다.
stream_options.include_usage 를 켜면 마지막 usage 청크가 추가됩니다.