Skip to main content
POST
GPT Responses (전체 모델, 전체 매개변수)
BaseURL: 기본 BaseURL은 https://direct.evolink.ai이며, 텍스트 모델 지원이 더 우수하고 장시간 연결을 지원합니다. https://api.evolink.ai는 멀티모달 서비스의 주력 엔드포인트이며, 텍스트 모델에 대해서는 대체 주소로 사용됩니다.
서버 측 도구(web_search, code_interpreter, file_search, mcp)는 서버에서 실행되므로 클라이언트가 결과를 되돌려 보낼 필요가 없으며, 이 API에서만 제공됩니다. Chat Completions 엔드포인트는 일반 function 도구 호출만 지원합니다.
참고 이 API는 동기와 스트리밍 두 가지 모드만 지원합니다. background: true를 사용하는 백그라운드 비동기 모드는 지원하지 않으며, 응답 ID로 조회·취소·삭제하는 엔드포인트도 제공하지 않습니다. 오래 걸리는 생성이 필요한 경우 stream: true로 연결을 유지하세요.내장 이미지 생성 도구 image_generation은 현재 gpt-6-astra / gpt-6.1-sol / gpt-6-sol / gpt-6-luna만 지원하며 다른 모델에서는 사용할 수 없습니다. 이미지만 별도로 생성하려면 이미지 시리즈 모델 API도 사용할 수 있습니다.
gpt-6-astra / gpt-6.1-sol / gpt-6-sol / gpt-6-luna로 직접 이미지 생성: tools에 {"type": "image_generation"}을 선언하면 모델이 대화 중 필요에 따라 이미지를 생성합니다.
  • 이미지 모델 선택: 도구의 model 필드에 gpt-image-2(기본값), gpt-image-2.5-sunburst, gpt-image-2.5-flare를 지정할 수 있습니다. quality, size, partial_images 등의 매개변수는 이미지 모델의 공식 매개변수와 동일합니다(xhigh / max는 2.5 시리즈만 지원)
  • 이미지 가져오기: 이미지는 output에서 type이 image_generation_call인 항목의 result 필드에 base64로 반환됩니다. URL이 아니므로 직접 저장하세요
  • 이미지 편집: input에 input_image(공개 URL 또는 data:image/png;base64,...)를 포함하고 텍스트로 원하는 변경 사항을 설명하세요
  • 멀티턴 이미지 편집: 이전 턴의 id를 previous_response_id로 전달하고 원하는 변경 사항을 설명하세요
  • 스트리밍: partial_images(0~3)를 설정하면 생성 중 response.image_generation_call.partial_image 미리보기 이벤트를 받을 수 있습니다
  • 이미지 수 제한: max_tool_calls를 생략하면 요청 한 번에 최대 4장을 생성할 수 있습니다. 더 많이 필요하면 명시적으로 설정하세요
  • 과금: 텍스트와 이미지 생성은 각각 token 기준으로 별도 청구됩니다. 이미지 생성의 token 사용량은 응답의 tool_usage.image_gen에서 확인할 수 있습니다
멀티턴 대화: 이전 턴에서 반환된 id를 다음 턴의 previous_response_id로 전달하면 컨텍스트를 이어갈 수 있습니다. 응답에는 보존 기한이 있으며, 만료되면 해당 ID는 더 이상 유효하지 않고 요청은 새 대화로 처리됩니다. 컨텍스트 정확성이 특히 중요한 경우에는 전체 input 히스토리를 직접 관리하는 것을 권장합니다.

인증

Authorization
string
header
필수

##모든 API는 Bearer Token 인증이 필요합니다##

API Key 받기:

API Key 관리 페이지를 방문하여 API Key를 받으세요

요청 헤더에 추가:

본문

application/json
model
enum<string>
필수

호출할 모델:

사용 가능한 옵션:
gpt-6.1-sol,
gpt-6-astra,
gpt-6-sol,
gpt-6-luna,
gpt-5.6-sol,
gpt-5.6-terra,
gpt-5.6-luna,
gpt-5.5,
gpt-5.4,
gpt-5.2,
gpt-5.1
예시:

"gpt-6.1-sol"

input
필수

모델 입력: 단순 문자열 또는 입력 항목 배열입니다.

입력 항목의 content는 input_text(텍스트)와 input_image(이미지) 두 가지 블록을 지원합니다:

이미지

  • image_url에 이미지의 공개 URL을 전달합니다
  • image_url은 반드시 문자열이어야 하며, { "url": "..." }로 작성하면 400이 반환됩니다
  • detail은 image_url과 같은 레벨에 둡니다(그 안에 중첩하지 않습니다): auto(기본값) / low / high / original
  • 이미지는 정상적으로 다운로드할 수 있어야 하며, 그렇지 않으면 400이 반환됩니다

도구 결과

  • 배열에는 이전 턴의 function_call_output 등 도구 결과 항목을 되돌려 담을 수도 있습니다

참고 이 API의 블록 유형은 Chat Completions API와 다릅니다(Chat은 text / image_url 사용). 두 가지를 섞어 쓸 수 없으며, 잘못 지정하면 400이 반환됩니다.

예시:

"Search for AI news from the past week and summarize it in three sentences."

instructions
string

시스템 수준 지시로, input 맨 앞에 시스템 메시지를 하나 삽입하는 것과 동일합니다. previous_response_id로 대화를 이어갈 때 이 매개변수는 이전 턴에서 상속되지 않으므로 매 턴마다 전달해야 합니다.

예시:

"You are a concise assistant. Answer in no more than three sentences."

stream
boolean
기본값:false

스트리밍으로 응답을 반환할지 여부 (SSE 이벤트, response.completed로 종료). 기본값 false.

예시:

false

max_output_tokens
integer

생성할 최대 token 수(추론 token 포함)입니다. 상한에 도달하면 status는 incomplete가 됩니다.

GPT-6 Astra / Sol / Luna와 GPT-6.1 Sol의 최대 출력은 추론 token을 포함하여 128,000 tokens입니다.

예시:

2048

reasoning
object

추론 제어입니다.

effort(추론 깊이)의 지정 가능한 값은 모델에 따라 다릅니다:

summary(추론 요약): auto / concise / detailed.

GPT-6 Sol / Luna와 GPT-6.1 Sol: 이 매개변수의 지원 범위는 아직 확인되지 않았으므로 기본 요청에서는 생략하세요.

mode(추론 모드): standard / pro, gpt-6-astra / gpt-6-sol / gpt-6-luna와 gpt-5.6 제품군이 지원합니다.

GPT-6.1 Sol: 이 매개변수의 지원 범위는 아직 확인되지 않았으므로 기본 요청에서는 생략하세요.

context(추론 컨텍스트 범위): auto / current_turn / all_turns, gpt-6-astra와 gpt-5.6 제품군이 지원합니다.

GPT-6 Sol / Luna와 GPT-6.1 Sol: 이 매개변수의 지원 범위는 아직 확인되지 않았으므로 기본 요청에서는 생략하세요.

추론 token은 출력 token으로 청구되며 usage.output_tokens_details.reasoning_tokens에 집계됩니다.

GPT-6 Sol / Luna 지원: model에 gpt-6-sol 또는 gpt-6-luna를 지정하세요. 두 모델 모두 컨텍스트 1,050,000 tokens, 추론을 포함한 최대 출력 128,000 tokens를 지원합니다. reasoning.effort는 none, low, medium(기본값), high, xhigh, max를 지원하며 Astra와 6.1 Sol은 none을 지원하지 않습니다. 추론과 도구를 함께 사용하려면 이 API를 이용하세요.

text
object

출력 텍스트 제어:

  • format: {"type": "text"}(기본값), {"type": "json_object"}, 또는 구조화된 결과를 출력하는 {"type": "json_schema", "name": "...", "schema": {...}, "strict": true}
  • verbosity: low / medium / high, 답변의 상세 정도를 제어합니다

text.verbosity — GPT-6 Sol / Luna와 GPT-6.1 Sol: 이 매개변수의 지원 범위는 아직 확인되지 않았으므로 기본 요청에서는 생략하세요.

tools
object[]

도구 선언입니다. 서버 측 도구는 서버에서 실행되므로 클라이언트가 결과를 되돌려 보낼 필요가 없습니다:

일반 function 도구(클라이언트 측 함수 호출)도 함께 지원합니다.

참고 내장 이미지 생성 도구 image_generation은 현재 gpt-6-astra / gpt-6.1-sol / gpt-6-sol / gpt-6-luna만 지원하며 다른 모델에서는 사용할 수 없습니다. 이미지만 별도로 생성하려면 이미지 시리즈 모델 API도 사용할 수 있습니다.

예시:
tool_choice

도구 선택을 제어합니다: "auto"(기본값) / "none" / "required", 또는 특정 도구를 지정하는 객체(예: {"type": "web_search"}).

사용 가능한 옵션:
none,
auto,
required
max_tool_calls
integer

이번 응답에서 허용되는 도구 호출 총 횟수의 상한입니다(모든 내장 도구의 호출 횟수 합계).

참고 gpt-6-astra / gpt-6.1-sol / gpt-6-sol / gpt-6-luna에서 image_generation을 사용하고 이 매개변수를 생략하면 요청 한 번에 최대 4장의 이미지를 생성할 수 있습니다. 더 많이 필요하면 명시적으로 설정하세요.

예시:

5

parallel_tool_calls
boolean
기본값:true

모델이 한 턴 안에서 여러 도구를 병렬로 호출할 수 있는지 여부입니다. 기본값은 true입니다.

GPT-6 Sol / Luna와 GPT-6.1 Sol: 이 매개변수의 지원 범위는 아직 확인되지 않았으므로 기본 요청에서는 생략하세요.

아래 기존 모델 규칙에는 GPT-6 Sol / Luna와 GPT-6.1 Sol이 포함되지 않습니다:

참고 gpt-6-astra, gpt-5.6 제품군, gpt-5.5는 false로 설정할 수 있습니다. gpt-5.4 / gpt-5.2 / gpt-5.1에서는 이 매개변수가 적용되지 않으며 항상 true로 동작합니다.

예시:

true

previous_response_id
string

이전 응답의 id로, 여러 턴의 대화를 연결하는 데 사용하며 히스토리 메시지를 다시 올릴 필요가 없습니다.

참고 store: true(기본값)와 함께 사용해야 합니다. 응답에는 보존 기한이 있으며, 만료되면 해당 ID는 더 이상 유효하지 않습니다. 이 경우 요청은 새 대화로 처리되어 컨텍스트를 상속하지 않습니다. 컨텍스트 정확성이 특히 중요한 경우에는 전체 input 히스토리를 직접 관리하는 것을 권장합니다.

예시:

"resp_0f5c2b2c20c39e8a006a7ef545443081979e478b10927984b5"

store
boolean
기본값:true

이번 응답을 서버 측에 보존할지 여부이며, 보존된 응답만 previous_response_id로 참조할 수 있습니다. 기본값은 true입니다.

GPT-6 Sol / Luna와 GPT-6.1 Sol: store: false로 보관을 끄는 동작은 사용 가능한 채널에서 아직 검증되지 않았습니다. 필드가 수락되었다는 사실만으로 응답이 보관되지 않았다고 판단할 수 없습니다.

아래 기존 모델 규칙에는 GPT-6 Sol / Luna와 GPT-6.1 Sol이 포함되지 않습니다:

참고 gpt-6-astra, gpt-5.6 제품군, gpt-5.5는 false로 설정할 수 있습니다. gpt-5.4 / gpt-5.2 / gpt-5.1에서는 이 매개변수가 적용되지 않으며 항상 true로 동작합니다. 응답을 저장하지 않으려면 저장 비활성화를 지원하는 모델을 선택하세요.

예시:

true

include
string[]

응답에 추가로 반환하도록 요청할 내용이며, 지정 가능한 값은 다음과 같습니다:

  • reasoning.encrypted_content
  • message.output_text.logprobs
  • web_search_call.results
  • web_search_call.action.sources
  • file_search_call.results
  • code_interpreter_call.outputs
  • message.input_image.image_url
  • computer_call_output.output.image_url

참고 gpt-6-astra와 gpt-6.1-sol은 message.output_text.logprobs를 지원하지 않습니다.

GPT-6: Astra와 6.1 Sol은 출력 logprobs를 지원하지 않습니다. Sol / Luna는 추론 수준 none일 때만 사용하세요. 다른 수준에서는 logprobs, top_logprobs 및 Responses include의 message.output_text.logprobs를 제거하세요.

예시:
temperature
number

샘플링 온도이며 값의 범위는 0 ~ 2입니다. 값이 낮을수록 출력이 결정적이 됩니다.

GPT-6: gpt-6-astra와 gpt-6.1-sol에서는 이 매개변수를 생략하세요. gpt-6-sol / gpt-6-luna에서는 추론 수준이 none일 때만 조정할 수 있습니다. 다른 수준에서는 생략하세요. 추론 수준을 생략하면 none이 아닌 medium이 적용됩니다.

기존 모델: gpt-5.4 / gpt-5.2 / gpt-5.1은 temperature: 0을 기본값 1로 처리합니다. 더 결정적인 출력에는 0.01 같은 양수를 사용하세요.

필수 범위: 0 <= x <= 2
예시:

1

top_p
number

뉴클리어스 샘플링 매개변수이며 값의 범위는 0 ~ 1입니다. temperature와 함께 조정하지 않는 것을 권장합니다.

GPT-6: gpt-6-astra와 gpt-6.1-sol에서는 이 매개변수를 생략하세요. gpt-6-sol / gpt-6-luna에서는 추론 수준이 none일 때만 조정할 수 있습니다. 다른 수준에서는 생략하세요. 추론 수준을 생략하면 none이 아닌 medium이 적용됩니다.

필수 범위: 0 <= x <= 1
예시:

1

top_logprobs
integer

각 위치에서 반환되는 후보 token 수이며 값의 범위는 0 ~ 20입니다. include: ["message.output_text.logprobs"]와 함께 사용해야 합니다.

GPT-6: Astra와 6.1 Sol은 출력 logprobs를 지원하지 않습니다. Sol / Luna는 추론 수준 none일 때만 사용하세요. 다른 수준에서는 logprobs, top_logprobs 및 Responses include의 message.output_text.logprobs를 제거하세요.

아래 기존 모델 규칙에는 GPT-6 Sol / Luna와 GPT-6.1 Sol이 포함되지 않습니다:

참고 gpt-5.6 제품군과 gpt-5.5만 지원하며, 나머지 모델은 이 매개변수를 지원하지 않습니다.

필수 범위: 0 <= x <= 20
예시:

2

frequency_penalty
number

빈도 페널티이며 값의 범위는 -2 ~ 2입니다. 내용이 반복될 확률을 낮춥니다.

GPT-6 Sol / Luna와 GPT-6.1 Sol: 이 매개변수의 지원 범위는 아직 확인되지 않았으므로 기본 요청에서는 생략하세요.

아래 기존 모델 규칙에는 GPT-6 Sol / Luna와 GPT-6.1 Sol이 포함되지 않습니다:

참고 gpt-5.6 제품군에서는 조정할 수 있으며, 나머지 기존 모델은 이 매개변수를 지원하지 않습니다. GPT-6 Astra에서는 조정할 수 없고 기본값 0만 허용하며, 다른 값을 전달하면 400이 반환됩니다.

필수 범위: -2 <= x <= 2
예시:

0

presence_penalty
number

존재 페널티이며 값의 범위는 -2 ~ 2입니다. 모델이 새로운 주제를 다루도록 유도합니다.

GPT-6 Sol / Luna와 GPT-6.1 Sol: 이 매개변수의 지원 범위는 아직 확인되지 않았으므로 기본 요청에서는 생략하세요.

아래 기존 모델 규칙에는 GPT-6 Sol / Luna와 GPT-6.1 Sol이 포함되지 않습니다:

참고 gpt-5.6 제품군에서는 조정할 수 있으며, 나머지 기존 모델은 이 매개변수를 지원하지 않습니다. GPT-6 Astra에서는 조정할 수 없고 기본값 0만 허용하며, 다른 값을 전달하면 400이 반환됩니다.

필수 범위: -2 <= x <= 2
예시:

0

truncation
enum<string>
기본값:disabled

컨텍스트가 윈도우를 초과했을 때의 처리 방식: disabled(기본값, 바로 오류 반환) 또는 auto(중간 내용을 자동으로 잘라냄).

사용 가능한 옵션:
auto,
disabled
예시:

"auto"

context_management
object[]

긴 대화의 자동 압축 설정입니다. 예: [{"type": "compaction", "compact_threshold": 100000}]. 컨텍스트가 임계값을 초과하면 히스토리가 자동으로 압축됩니다.

참고 gpt-6-astra / gpt-6-sol / gpt-6-luna와 gpt-5.6 제품군만 지원하며, 나머지 모델은 이 매개변수를 지원하지 않습니다.

GPT-6.1 Sol: 이 매개변수의 지원 범위는 아직 확인되지 않았으므로 기본 요청에서는 생략하세요.

prompt_cache_key
string

캐시 그룹 키입니다. GPT-6 / GPT-5.6는 캐시 라우팅을 자동 처리하므로 라우팅 최적화에 이 값이 필요하지 않습니다. 고객이나 사용자별 재사용과 과금을 구분할 때 별도 키를 사용할 수 있습니다. 접두사를 재사용할 요청은 동일한 키를 유지하세요. 이전 모델에서는 안정적인 키가 캐시 라우팅에 도움이 됩니다.

예시:

"app-agent-v1"

prompt_cache_retention
enum<string>

이전 모델의 캐시 보관 설정입니다. GPT-6 / GPT-5.6는 prompt_cache_options.ttl: "30m"을 사용하고 새 필드에 24h를 넣지 마세요.

사용 가능한 옵션:
in_memory,
24h
예시:

"in_memory"

prompt
object

이미 생성된 Prompt 템플릿을 참조하며, 형식은 {"id": "pmpt_xxx", "version": "1", "variables": {...}}입니다.

metadata
object

사용자 정의 키-값 쌍으로, 응답에 그대로 반환되어 비즈니스 측에서 태깅하기에 편리합니다. 키와 값은 모두 문자열입니다.

예시:
safety_identifier
string

최종 사용자의 안정적인 식별자로, 오남용 추적에 사용합니다.

GPT-6 Sol / Luna와 GPT-6.1 Sol: 이 매개변수의 지원 범위는 아직 확인되지 않았으므로 기본 요청에서는 생략하세요.

아래 기존 모델 규칙에는 GPT-6 Sol / Luna와 GPT-6.1 Sol이 포함되지 않습니다:

참고 gpt-6-astra와 gpt-5.6 제품군만 지원하며, 나머지 모델은 이 매개변수를 지원하지 않습니다.

예시:

"user-1024"

user
string

최종 사용자 식별자로, 호출 출처를 구분하는 데 사용합니다.

예시:

"user-1024"

prompt_cache_options
object

GPT-6 / GPT-5.6의 프롬프트 캐시 설정입니다. 기본값은 암시적 경계입니다. mode: "explicit"은 명시한 경계만 사용하며 경계가 없으면 캐시하지 않습니다.

예시:

응답

응답 생성 성공 (JSON 객체, 또는 stream=true인 경우 response.completed로 끝나는 SSE 이벤트 스트림)

id
string

이번 응답의 고유 ID로, 다음 턴의 previous_response_id로 사용할 수 있습니다

예시:

"resp_0f5c2b2c20c39e8a006a7ef545443081979e478b10927984b5"

object
enum<string>

응답 유형

사용 가능한 옵션:
response
예시:

"response"

status
enum<string>

응답 상태: completed는 정상 종료, incomplete는 max_output_tokens 도달 등의 이유로 완료되지 않은 상태, failed는 생성 실패

사용 가능한 옵션:
completed,
incomplete,
failed
예시:

"completed"

model
string

실제 사용된 모델 이름

예시:

"gpt-6.1-sol"

created_at
integer

생성 타임스탬프

예시:

1786705221

output
object[]

생성 순서대로 정렬된 출력 항목: reasoning 항목(추론 요약 / 암호화된 추론 내용), 도구 호출 항목(예: web_search_call, code_interpreter_call, image_generation_call), 그리고 마지막으로 output_text 내용을 담은 message 항목.

incomplete_details
object

status가 incomplete일 때 그 이유를 설명합니다

usage
object

Token 사용량 통계입니다. Prompt 캐시는 자동으로 적용되며, 캐시에 적중한 입력 token은 더 저렴한 캐시 요금으로 청구됩니다.

GPT-6는 일반 입력, 캐시 읽기, 캐시 쓰기, 출력을 각각 청구합니다. 입력이 272,000 tokens를 초과하면 요청 전체에 입력·캐시 요금 2배, 출력 요금 1.5배가 적용됩니다. 내장 이미지 생성은 별도 청구됩니다. 현재 요금을 확인하세요.

tool_usage
object

내장 도구 사용량입니다. image_generation을 사용할 때 image_gen은 이미지 생성에 소비된 token을 나타내며, usage와 별도로 집계되고 token 기준으로 별도 청구됩니다

metadata
object

요청에 전달한 사용자 정의 키-값 쌍으로, 그대로 반환됩니다