채팅 완성

대화에 대한 모델 응답을 생성합니다.

엔드포인트

POST
$ POST https://api.alltoken.ai/v1/chat/completions

요청 본문

JSON
1{
2 "model": "deepseek-chat",
3 "messages": [
4 { "role": "system", "content": "당신은 유용한 어시스턴트입니다." },
5 { "role": "user", "content": "안녕하세요!" }
6 ],
7 "stream": false,
8 "temperature": 0.7,
9 "max_tokens": 1024
10}

파라미터

  • model (필수) — 모델 ID (예: "deepseek-chat")
  • messages (필수)rolecontent를 포함하는 메시지 객체 배열
  • streamtrue이면 SSE 스트리밍 응답, false이면 완전한 응답 (기본값: false)
  • temperature — 샘플링 온도, 0-2 (기본값: 1)
  • top_p — 핵 샘플링, 0-1 (기본값: 1)
  • max_tokens — 최대 생성 토큰 수
  • frequency_penalty — 빈도 패널티, -2에서 2 (기본값: 0)
  • presence_penalty — 존재 패널티, -2에서 2 (기본값: 0)
  • tools — 도구/함수 정의 배열
  • response_format{"type": "json_object"}으로 JSON 출력 보장
  • web_searchtrue이면 웹 검색 활성화 (모델에 따라 다름)

메시지 역할

  • system — 모델의 동작과 컨텍스트 설정
  • user — 사용자 메시지
  • assistant — 모델의 이전 응답 (다중 턴 대화용)
  • tool — 함수 호출 결과 (tool_call_id 포함)

응답

JSON
1{
2 "id": "chatcmpl-abc123",
3 "object": "chat.completion",
4 "created": 1700000000,
5 "model": "deepseek-chat",
6 "choices": [
7 {
8 "index": 0,
9 "message": {
10 "role": "assistant",
11 "content": "안녕하세요! 무엇을 도와드릴까요?"
12 },
13 "finish_reason": "stop"
14 }
15 ],
16 "usage": {
17 "prompt_tokens": 12,
18 "completion_tokens": 10,
19 "total_tokens": 22
20 }
21}