> ## Documentation Index
> Fetch the complete documentation index at: https://evolink.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Qwen3.8-Max-Preview - 전체 매개변수 문서

> > 🚧 **이 모델은 아직 제공되지 않습니다. 기대해 주세요**

- OpenAI Chat Completions 프로토콜로 Qwen3.8-Max-Preview 호출
- **멀티턴 대화**: 단일 턴 또는 멀티턴 컨텍스트 대화 지원
- **시스템 프롬프트**: `role=system` 메시지로 AI 역할과 동작 설정
- **멀티모달 입력**: `content`에 content part 배열 전달, `text` / `image_url` / `input_audio` / `video_url` 지원
- **컨텍스트 캐시**: content part에 `cache_control`을 추가해 명시적 캐시 선언; 적중 여부는 응답 `usage.prompt_tokens_details` 참조
- **사고 모드**: `enable_thinking=true`로 활성화하며, 사고 내용은 `reasoning_content`로 반환
- **스트리밍 출력**: `stream=true`일 때 SSE로 청크 단위 반환

<Note>
  **BaseURL 설명**: 기본 BaseURL은 `https://direct.evolink.ai`이며, 텍스트 모델을 더 잘 지원하고 장기 연결을 지원합니다; `https://api.evolink.ai`는 멀티모달 주력 주소로, 이미지 / 오디오 / 비디오 입력을 포함할 때 이 주소를 사용하세요.
</Note>


## OpenAPI

````yaml ko/api-manual/language-series/qwen3.8-max-preview/qwen3.8-max-preview-chat.json POST /v1/chat/completions
openapi: 3.1.0
info:
  title: Qwen3.8-Max-Preview 전체 매개변수 문서 (OpenAI 호환)
  description: |-
    Qwen3.8-Max-Preview 대화 API 참조(OpenAI Chat Completions 호환).

    **모델 능력**:
    - 컨텍스트 길이: **1,000,000 tokens**(1M)
    - 사고 모드: `enable_thinking`으로 활성화하며, 사고 내용은 `reasoning_content`로 반환
    - 멀티모달 입력: `content`는 텍스트 + 이미지 / 오디오 / 비디오 혼합 배치를 지원
    - 컨텍스트 캐시: 명시적 캐시(`cache_control`)와 암시적 캐시를 지원하며, 적중 시 비용을 크게 절감
    - 도구 호출: Function Calling 지원
    - 스트리밍 출력: SSE 스트리밍 반환 지원
  license:
    name: MIT
  version: 1.0.0
servers:
  - url: https://direct.evolink.ai
    description: 프로덕션 환경(권장, 텍스트 모델 장기 연결 지원이 더 우수)
  - url: https://api.evolink.ai
    description: 멀티모달 주력 주소(이미지 / 오디오 / 비디오 입력 포함 시 사용)
security:
  - bearerAuth: []
tags: []
paths:
  /v1/chat/completions:
    post:
      summary: Qwen3.8-Max-Preview 대화 API(OpenAI 호환)
      description: >-
        > 🚧 **이 모델은 아직 제공되지 않습니다. 기대해 주세요**


        - OpenAI Chat Completions 프로토콜로 Qwen3.8-Max-Preview 호출

        - **멀티턴 대화**: 단일 턴 또는 멀티턴 컨텍스트 대화 지원

        - **시스템 프롬프트**: `role=system` 메시지로 AI 역할과 동작 설정

        - **멀티모달 입력**: `content`에 content part 배열 전달, `text` / `image_url` /
        `input_audio` / `video_url` 지원

        - **컨텍스트 캐시**: content part에 `cache_control`을 추가해 명시적 캐시 선언; 적중 여부는 응답
        `usage.prompt_tokens_details` 참조

        - **사고 모드**: `enable_thinking=true`로 활성화하며, 사고 내용은 `reasoning_content`로
        반환

        - **스트리밍 출력**: `stream=true`일 때 SSE로 청크 단위 반환
      operationId: createChatCompletionQwen38MaxPreview
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ChatCompletionRequest'
            examples:
              basic:
                summary: 기본 텍스트 대화
                value:
                  model: qwen3.8-max-preview
                  messages:
                    - role: system
                      content: You are a helpful assistant.
                    - role: user
                      content: 안녕하세요, 자기소개를 해 주세요
              multimodal:
                summary: 멀티모달 입력(이미지)
                value:
                  model: qwen3.8-max-preview
                  messages:
                    - role: user
                      content:
                        - type: text
                          text: 이 이미지의 내용을 설명해 주세요
                        - type: image_url
                          image_url:
                            url: https://example.com/image.jpg
              explicit_cache:
                summary: 명시적 캐시(cache_control)
                value:
                  model: qwen3.8-max-preview
                  messages:
                    - role: system
                      content:
                        - type: text
                          text: <1024 token을 초과하는 안정적인 시스템 프롬프트……>
                          cache_control:
                            type: ephemeral
                    - role: user
                      content: 위 배경을 바탕으로 질문에 답하세요
      responses:
        '200':
          description: 대화 생성 성공
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ChatCompletionResponse'
        '400':
          description: 요청 매개변수 오류
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: 400
                  message: Invalid request parameters
                  type: invalid_request_error
        '401':
          description: 인증되지 않았거나 토큰이 유효하지 않거나 만료됨
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: 401
                  message: Invalid or expired token
                  type: authentication_error
        '402':
          description: 잔액 부족
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: 402
                  message: Insufficient credits
                  type: insufficient_quota
        '429':
          description: 요청이 너무 잦음(속도 제한)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: 429
                  message: Rate limit exceeded
                  type: rate_limit_error
        '500':
          description: 서버 내부 오류
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: 500
                  message: Internal server error
                  type: server_error
components:
  schemas:
    ChatCompletionRequest:
      type: object
      required:
        - model
        - messages
      properties:
        model:
          type: string
          description: 대화 모델 이름
          enum:
            - qwen3.8-max-preview
          example: qwen3.8-max-preview
        messages:
          type: array
          description: >-
            대화 메시지 목록, 멀티턴 대화 지원. 역할(system / user / assistant / tool)에 따라 메시지
            필드 구조가 다르므로 해당 역할을 선택해 확인하세요.
          items:
            oneOf:
              - $ref: '#/components/schemas/SystemMessage'
              - $ref: '#/components/schemas/UserMessage'
              - $ref: '#/components/schemas/AssistantRequestMessage'
              - $ref: '#/components/schemas/ToolMessage'
        enable_thinking:
          type: boolean
          description: |-
            심층 사고 활성화 여부

            - `true`: 모델이 사고 과정을 출력하며 `reasoning_content`로 반환
            - `false`(기본값): 사고 과정을 출력하지 않음

            > 참고: 일부 모델은 비스트리밍 호출에서 명시적으로 `true`로 설정해야 사고 내용을 반환합니다.
          default: false
        temperature:
          type: number
          description: >-
            샘플링 온도, 출력 무작위성을 제어합니다. 값이 낮을수록 더 결정적이고 높을수록 더 다양합니다. 범위 `[0, 2]`.
            temperature와 top_p를 동시에 조정하지 않는 것을 권장합니다.
          minimum: 0
          maximum: 2
        top_p:
          type: number
          description: >-
            뉴클리어스 샘플링(Nucleus Sampling) 매개변수, 누적 확률 상위 일부 token에서 샘플링합니다. 범위
            `(0, 1]`. temperature와 top_p를 동시에 조정하지 않는 것을 권장합니다.
          minimum: 0
          maximum: 1
        max_completion_tokens:
          type: integer
          description: >-
            생성 콘텐츠 길이 상한(token 수), **사고 체인과 답변을 포함**합니다. 사고형 모델에서는 이 매개변수 사용을
            권장합니다. 기본값과 최대값은 모두 모델의 최대 출력 길이이며, 초과 시 `finish_reason=length`로 조기
            중단됩니다.
        max_tokens:
          type: integer
          description: >-
            구버전 생성 길이 제한 매개변수.


            > **지원 중단됨**: 신규 연동에서는 `max_completion_tokens`를 사용하세요. 이 매개변수는 답변
            부분만 제한합니다(사고 체인 미포함).
        stream:
          type: boolean
          description: |-
            응답을 스트리밍 방식으로 반환할지 여부.

            - `true`: SSE(Server-Sent Events)로 청크 단위 반환
            - `false`(기본값): 완전한 응답을 한 번에 반환
          default: false
        stream_options:
          type: object
          description: 스트리밍 응답 옵션, `stream=true`일 때만 유효합니다.
          properties:
            include_usage:
              type: boolean
              description: '`true`일 때, 스트리밍 종료 전에 `usage`만 포함한 데이터 청크를 추가로 반환합니다.'
        tools:
          type: array
          description: >-
            도구 정의 목록, Function Calling에 사용됩니다. 각 도구는 이름, 설명, 매개변수 schema를 정의해야
            합니다.
          items:
            $ref: '#/components/schemas/Tool'
    ChatCompletionResponse:
      type: object
      properties:
        id:
          type: string
          description: 이번 대화의 고유 식별자
          example: chatcmpl-xxxxxxxx
        object:
          type: string
          example: chat.completion
        created:
          type: integer
          description: 생성 시간(Unix 초)
          example: 1735120033
        model:
          type: string
          example: qwen3.8-max-preview
        choices:
          type: array
          items:
            $ref: '#/components/schemas/Choice'
        usage:
          $ref: '#/components/schemas/Usage'
    ErrorResponse:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: integer
              description: HTTP 상태 오류 코드
            message:
              type: string
              description: 오류 설명 정보
            type:
              type: string
              description: 오류 유형
            param:
              type: string
              description: 관련 매개변수 이름
    SystemMessage:
      type: object
      title: System Message
      required:
        - role
        - content
      properties:
        role:
          type: string
          enum:
            - system
          description: 메시지 역할, `system`으로 고정
        content:
          description: 시스템 지시. 순수 텍스트는 문자열로 전달하며, 명시적 캐시를 선언할 때는 content part 배열로 전달합니다.
          oneOf:
            - type: string
            - type: array
              items:
                $ref: '#/components/schemas/ContentPart'
    UserMessage:
      type: object
      title: User Message
      required:
        - role
        - content
      properties:
        role:
          type: string
          enum:
            - user
          description: 메시지 역할, `user`로 고정
        content:
          description: >-
            사용자 메시지 내용.


            - 순수 텍스트는 문자열로 직접 전달

            - 멀티모달이거나 명시적 캐시가 필요할 때는 content part 배열로 전달하며, `text` / `image_url`
            / `input_audio` / `video_url` 지원
          oneOf:
            - type: string
            - type: array
              items:
                $ref: '#/components/schemas/ContentPart'
    AssistantRequestMessage:
      type: object
      title: Assistant Message
      required:
        - role
      properties:
        role:
          type: string
          enum:
            - assistant
          description: 메시지 역할, `assistant`로 고정
        content:
          description: 어시스턴트의 과거 응답 내용. 문자열 또는 content part 배열일 수 있습니다.
          oneOf:
            - type: string
            - type: array
              items:
                $ref: '#/components/schemas/ContentPart'
        tool_calls:
          type: array
          description: 이전 턴에서 어시스턴트가 시작한 도구 호출 목록(Function Calling 이력 재구성에 사용).
          items:
            type: object
    ToolMessage:
      type: object
      title: Tool Message
      required:
        - role
        - content
        - tool_call_id
      properties:
        role:
          type: string
          enum:
            - tool
          description: 메시지 역할, `tool`로 고정(도구 실행 결과)
        content:
          description: 도구 실행 결과 내용. 문자열 또는 content part 배열일 수 있습니다.
          oneOf:
            - type: string
            - type: array
              items:
                $ref: '#/components/schemas/ContentPart'
        tool_call_id:
          type: string
          description: 대응하는 도구 호출 ID
    Tool:
      type: object
      description: Function Calling 도구 정의.
      required:
        - type
        - function
      properties:
        type:
          type: string
          enum:
            - function
          description: 도구 유형, `function`으로 고정
        function:
          type: object
          required:
            - name
          properties:
            name:
              type: string
              description: 함수 이름
            description:
              type: string
              description: 함수 용도 설명
            parameters:
              type: object
              description: 함수 매개변수의 JSON Schema
    Choice:
      type: object
      properties:
        index:
          type: integer
          example: 0
        message:
          $ref: '#/components/schemas/AssistantMessage'
        finish_reason:
          type: string
          description: |-
            중단 이유

            - `stop`: 정상 종료
            - `length`: `max_completion_tokens` 상한 도달
            - `tool_calls`: 도구 호출 필요
          example: stop
    Usage:
      type: object
      description: token 사용 통계 정보.
      properties:
        prompt_tokens:
          type: integer
          description: 입력 token 수
          example: 3019
        completion_tokens:
          type: integer
          description: 출력 token 수(사고 포함)
          example: 104
        total_tokens:
          type: integer
          description: 총 token 수
          example: 3123
        completion_tokens_details:
          type: object
          description: 출력 token 세부 항목
          properties:
            reasoning_tokens:
              type: integer
              description: 사고 과정 token 수
              example: 0
        prompt_tokens_details:
          type: object
          description: 입력 token 캐시 세부 항목
          properties:
            cached_tokens:
              type: integer
              description: 캐시에 적중한 입력 token 수(캐시 읽기)
              example: 2048
            cache_creation_input_tokens:
              type: integer
              description: 이번에 새로 생성된 캐시 token 수(캐시 쓰기, 명시적 캐시일 때 반환)
              example: 0
    ContentPart:
      type: object
      description: >-
        멀티모달 콘텐츠 조각, `type`으로 유형을 선언하며, 해당 유형에 맞는 필드만 채웁니다. 임의의 조각에
        `cache_control`을 추가해 명시적 캐시를 선언할 수 있습니다.
      required:
        - type
      properties:
        type:
          type: string
          enum:
            - text
            - image_url
            - input_audio
            - video_url
          description: |-
            콘텐츠 유형

            - `text`: 텍스트 블록
            - `image_url`: 이미지 입력
            - `input_audio`: 오디오 입력
            - `video_url`: 비디오 파일 입력
        text:
          type: string
          description: '`type=text`일 때의 텍스트 내용'
        image_url:
          type: object
          description: 이미지 입력(`type=image_url`일 때). JPEG / PNG / GIF / WEBP 지원.
          required:
            - url
          properties:
            url:
              type: string
              description: 이미지 URL, 또는 `data:`로 시작하는 base64 data URL
            detail:
              type: string
              description: |-
                이미지 분석 정밀도

                - `low`: 저정밀, token 소비가 더 적음
                - `high`: 고정밀, 더 세밀하게 인식
                - `auto`(기본값): 모델이 자동으로 결정
              enum:
                - low
                - high
                - auto
              default: auto
        input_audio:
          type: object
          description: 오디오 입력(`type=input_audio`일 때).
          required:
            - data
            - format
          properties:
            data:
              type: string
              description: 오디오 URL, 또는 `data:`로 시작하는 base64 data URL
            format:
              type: string
              description: '오디오 형식, 예: `mp3`, `wav` 등'
        video_url:
          type: object
          description: 비디오 파일 입력(`type=video_url`일 때).
          required:
            - url
          properties:
            url:
              type: string
              description: 비디오 파일 URL, 또는 `data:`로 시작하는 base64 data URL
        cache_control:
          type: object
          description: |-
            명시적 캐시 표시. 시스템은 이 표시 위치를 종점으로 앞쪽으로 거슬러 올라가 캐시 블록을 생성 / 적중합니다.

            - 최소 캐시 가능 길이 **1024 token**, 유효 기간 **5분**(적중 후 초기화)
            - 단일 요청당 최대 **4개**의 캐시 표시
            - 암시적 캐시와 상호 배타적이며, 단일 요청에는 한 가지만 적용

            적중 / 생성 여부는 응답 `usage.prompt_tokens_details` 참조.
          required:
            - type
          properties:
            type:
              type: string
              enum:
                - ephemeral
              description: 캐시 유형, `ephemeral`로 고정(5분 임시 캐시)
    AssistantMessage:
      type: object
      description: 어시스턴트 응답 메시지.
      properties:
        role:
          type: string
          example: assistant
        content:
          type: string
          description: 응답 본문
          example: 안녕하세요! 저는 Qwen3.8-Max-Preview입니다.
        reasoning_content:
          type: string
          description: 사고 과정 내용(`enable_thinking=true`일 때 반환)
        tool_calls:
          type: array
          description: 모델이 시작한 도구 호출 목록
          items:
            type: object
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: |-
        ##모든 API에는 Bearer Token 인증이 필요합니다##

        **API Key 발급:**

        [API Key 관리 페이지](https://evolink.ai/dashboard/keys)에서 API Key를 발급받으세요

        **요청 헤더에 추가:**
        ```
        Authorization: Bearer YOUR_API_KEY
        ```

````