콘텐츠로 이동

Qwen 채팅 형식 (Text Generation)

공식 문서

Qwen Text Generation API

📝 소개

대화로 구성된 메시지 목록을 입력하면 모델이 응답을 반환합니다. Qwen은 Alibaba Group 산하 Tongyi Lab에서 개발한 대규모 언어 모델로, 다국어 대화, 텍스트 생성, 코드 생성 등을 지원합니다.

🤖 지원 모델

현재 지원되는 모델:

모델 설명
qwen-turbo Qwen Turbo 채팅 모델
qwen-plus Qwen Plus 채팅 모델
qwen-max Qwen Max 채팅 모델

💡 요청 예시

기본 텍스트 대화 ✅

curl --location "https://ssanai-workspace.atto-lab.cc/api/v1/services/aigc/text-generation/generation" \
  --header "Authorization: Bearer $API_KEY" \
  --header "Content-Type: application/json" \
  --data '{
    "model": "qwen-plus",
    "input": {
      "messages": [
        {
          "role": "system",
          "content": "You are a helpful assistant."
        },
        {
          "role": "user",
          "content": "Who are you?"
        }
      ]
    }
  }'

응답 예시:

{
  "output": {
    "text": "",
    "finish_reason": "",
    "choices": [
      {
        "finish_reason": "stop",
        "message": {
          "content": "안녕하세요! 저는 Qwen입니다. Alibaba Group 산하 Tongyi Lab에서 개발한 대규모 언어 모델입니다. 질문 답변, 글쓰기, 코드 작성 등 다양한 작업을 도와드릴 수 있습니다.",
          "role": "assistant"
        }
      }
    ]
  },
  "usage": {
    "input_tokens": 23,
    "output_tokens": 106,
    "total_tokens": 129
  },
  "code": "",
  "message": "",
  "request_id": ""
}

📮 요청

엔드포인트

POST /api/v1/services/aigc/text-generation/generation

지정한 채팅 대화에 대한 모델 응답을 생성합니다.

인증 방법

요청 헤더에 다음 값을 포함해 API 키 인증을 수행합니다:

Authorization: Bearer $API_KEY

$API_KEY는 발급받은 API 키입니다.

요청 본문 파라미터

model

  • 유형: 문자열
  • 필수: 예

사용할 모델 ID입니다. 예: qwen-plus, qwen-turbo.

input

  • 유형: 객체
  • 필수: 예

입력 메시지를 포함하는 객체입니다.

input 속성:

속성 유형 필수 설명
messages 배열 대화를 구성하는 메시지 목록입니다.

input.messages

  • 유형: 배열
  • 필수: 예

현재까지의 대화 메시지 목록입니다.

메시지 유형:

메시지 유형 설명
System message 어시스턴트의 동작과 역할을 설정하는 시스템 메시지
User message 최종 사용자가 보내는 메시지(프롬프트/컨텍스트)
Assistant message 사용자 메시지에 대해 모델이 생성한 응답

System message 속성:

속성 유형 필수 설명
role 문자열 메시지 작성자 역할이며 여기서는 system
content 문자열 시스템 메시지 내용

User message 속성:

속성 유형 필수 설명
role 문자열 메시지 작성자 역할이며 여기서는 user
content 문자열 사용자 메시지 내용

Assistant message 속성:

속성 유형 필수 설명
role 문자열 메시지 작성자 역할이며 여기서는 assistant
content 문자열 아니오 어시스턴트 메시지 내용

parameters

  • 유형: 객체
  • 필수: 아니오

생성 파라미터 설정입니다.

parameters 속성:

속성 유형 필수 설명
result_format 문자열 아니오 응답 형식. 선택값: message, text (기본값: message)
temperature 숫자 아니오 샘플링 온도(출력 무작위성 제어), 일반적으로 0~2
top_p 숫자 아니오 누클리어스 샘플링 파라미터(확률 질량 제어)
max_tokens 정수 아니오 최대 생성 토큰 수
stop 문자열 또는 배열 아니오 정지 시퀀스. 해당 시퀀스 생성 시 출력 중단

📥 응답

Text Generation 객체

Text Generation 객체를 반환합니다.

output

  • 유형: 객체
  • 설명: 생성된 텍스트와 선택지를 포함하는 출력 객체

output 속성:

속성 유형 설명
text 문자열 생성된 텍스트 내용
finish_reason 문자열 생성이 종료된 이유
choices 배열 생성된 선택지 목록

output.choices

  • 유형: 배열
  • 설명: 생성된 응답 선택지 목록

choice 속성:

속성 유형 설명
finish_reason 문자열 모델이 토큰 생성을 중단한 이유. 예: stop(자연 종료), length(최대 길이 도달)
message 객체 모델이 생성한 메시지
message.role 문자열 메시지 작성자 역할(일반적으로 assistant)
message.content 문자열 메시지 내용

usage

  • 유형: 객체
  • 설명: completion 요청 사용량 통계

usage 속성:

속성 유형 설명
input_tokens 정수 입력 토큰 수
output_tokens 정수 생성된 출력 토큰 수
total_tokens 정수 요청 전체 토큰 수(input + output)

code

  • 유형: 문자열
  • 설명: 응답 코드. 일반적으로 성공 시 빈 문자열

message

  • 유형: 문자열
  • 설명: 응답 메시지. 일반적으로 성공 시 빈 문자열

request_id

  • 유형: 문자열
  • 설명: 요청 고유 식별자

Text Generation 객체 응답 예시

{
  "output": {
    "text": "",
    "finish_reason": "",
    "choices": [
      {
        "finish_reason": "stop",
        "message": {
          "content": "안녕하세요! 저는 Qwen입니다. Alibaba Group 산하 Tongyi Lab에서 개발한 대규모 언어 모델입니다. 질문 답변, 글쓰기, 코드 작성 등 다양한 작업을 도와드릴 수 있습니다.",
          "role": "assistant"
        }
      }
    ]
  },
  "usage": {
    "input_tokens": 23,
    "output_tokens": 106,
    "total_tokens": 129
  },
  "code": "",
  "message": "",
  "request_id": ""
}