HiAPI
블로그

튜토리얼

hiapi API로 gpt-6-luna 호출하는 방법: curl, Python과 실행 가능한 요청

Chat Completions와 Responses 두 가지 연동 방식, 스트리밍, 도구 호출, 엄격한 JSON, 추론 단계의 실측 요청과 실제 재현된 오류.

Nov 1, 2026
hiapi API로 gpt-6-luna 호출하는 방법: curl, Python과 실행 가능한 요청

TL;DR

  • 무엇인가: OpenAI의 최신 경제형 텍스트 모델로, 배치 처리와 고처리량 시나리오를 위해 설계되었습니다. 이미 HiAPI에 출시되었으며, 모델 페이지 열기에서 바로 대화할 수 있고, 신규 사용자 가입 시 200 크레딧을 증정합니다.
  • 얼마인가: token 기준 과금이며, 표준 등급 기준 입력 $0.025/M, 출력 $0.125/M, 캐시 적중 $0.0025/M으로 HiAPI에서 가장 저렴한 GPT 텍스트 모델입니다.
  • API 호출 방법: 기본 프로토콜은 Responses API(POST /v1/responses)이며, Chat Completions(POST /v1/chat/completions)도 지원합니다. 1.05M 컨텍스트, 최대 128K 출력.
  • 핵심 파라미터: 6단계 추론 강도 reasoning.effort(none/low/medium/high/xhigh/max), temperature, top_p, text.format(json_schema).

막 출시된 GPT-6 Luna에 대해 가장 많이 받는 질문은 두 가지입니다: 어떻게 호출하는지, Chat Completions와 무엇이 다른지. 답은 모두 이 글에 있습니다.

GPT-6 Luna는 무엇을 할 수 있나?

  • 대량 텍스트 분류. 제품 리뷰 분석, 티켓 분류, 콘텐츠 태깅을 $0.025/M 입력 가격으로 10만 건을 돌려도 부담이 없습니다.
  • 구조화 데이터 추출. 비정형 텍스트에서 JSON을 뽑아내며, text.format에 json_schema를 지정해 출력을 제약할 수 있습니다.
  • 콘텐츠 재작성과 포맷팅. 글 중복 제거, 다국어 다듬기, 형식 통일을 하나의 prompt로 일괄 처리합니다.
  • FAQ 자동 응답. 복잡도가 낮은 고객지원 Q&A로, reasoning.effort=none으로 추론을 끄면 빠르고 비용도 절약됩니다.
  • 간단한 agent 루프. 도구 호출 + 멀티턴 대화로, 깊은 추론이 필요 없는 자동화 흐름에 적합합니다.

두 가지 시작 경로: 온라인 체험 vs API?

먼저 효과를 보려면 온라인 체험을, 제품에 연동하려면 API를 선택하세요. 두 경로 모두 같은 모델, 같은 가격 체계입니다.

온라인 체험(약 1분)

  1. GPT-6 Luna 모델 페이지를 엽니다.
  2. 가입하거나 로그인하면 새 계정에 200 크레딧이 제공됩니다.
  3. prompt를 바로 입력하고 Playground에서 파라미터를 조정하며 결과를 확인합니다.

API 연동(약 5분)

  1. HiAPI 콘솔에서 API Key(sk-...)를 생성합니다.
  2. POST /v1/responses로 Responses API(기본)를 사용하거나 POST /v1/chat/completions로 Chat Completions를 사용합니다.
  3. 반환 결과는 output에 있습니다.

첫 호출: curl 버전(Responses API, 권장)

curl -s https://api.hiapi.ai/v1/responses \
  -H "Authorization: Bearer sk-YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-6-luna",
    "input": [
      {"role": "user", "content": "한 문장으로 HiAPI가 무엇인지 소개하고 한국어로 답변하세요."}
    ]
  }'

반환 예시는 다음과 같으며, 답변은 output[0].content[0].text에 있습니다:

{
  "id": "resp_...",
  "model": "gpt-6-luna",
  "output": [
    {
      "type": "message",
      "role": "assistant",
      "content": [
        {
          "type": "output_text",
          "text": "HiAPI는 다양한 AI 모델을 집약한 API 중간 계층 플랫폼입니다..."
        }
      ]
    }
  ],
  "usage": {
    "input_tokens": 25,
    "output_tokens": 32,
    "total_tokens": 57
  }
}

이 호출은 57 token을 소비하며, 표준 등급 기준 약 $0.0056으로 거의 비용이 들지 않습니다.

첫 호출: Python 버전(Responses API)

import requests

API = "https://api.hiapi.ai/v1/responses"
HEADERS = {
    "Authorization": "Bearer sk-YOUR_KEY",
    "Content-Type": "application/json"
}

payload = {
    "model": "gpt-6-luna",
    "input": [
        {"role": "user", "content": "한 문장으로 HiAPI가 무엇인지 소개하고 한국어로 답변하세요."}
    ]
}

resp = requests.post(API, headers=HEADERS, json=payload, timeout=60)
data = resp.json()
text = data["output"][0]["content"][0]["text"]
usage = data["usage"]
print(f"답변: {text}")
print(f"소비: {usage['total_tokens']} tokens (입력 {usage['input_tokens']} + 출력 {usage['output_tokens']})")

json_schema로 구조화 출력 강제하기

이것이 배치 추출 시나리오에서 Luna의 핵심 사용법입니다. text.format을 json_schema로 설정하고 name과 schema를 정의하면, 모델 출력이 지정한 JSON 구조를 엄격히 따릅니다:

curl -s https://api.hiapi.ai/v1/responses \
  -H "Authorization: Bearer sk-YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-6-luna",
    "input": [
      {
        "role": "user",
        "content": "제품 리뷰: 색은 예쁜데 두 주 쓰니 밑창이 떨어졌어요. 비추천합니다."
      }
    ],
    "text": {
      "format": {
        "type": "json_schema",
        "name": "review_analysis",
        "schema": {
          "type": "object",
          "properties": {
            "sentiment": {"type": "string", "enum": ["positive", "neutral", "negative"]},
            "pros": {"type": "array", "items": {"type": "string"}},
            "cons": {"type": "array", "items": {"type": "string"}},
            "recommend": {"type": "boolean"}
          },
          "required": ["sentiment", "pros", "cons", "recommend"]
        }
      }
    }
  }'

모델이 schema에 맞는 JSON을 반환하므로 수동으로 파싱할 필요가 없습니다.

Chat Completions 대체 인터페이스

기존 코드에서 이미 Chat Completions 프로토콜을 사용하고 있다면 model만 바꾸면 됩니다:

curl -s https://api.hiapi.ai/v1/chat/completions \
  -H "Authorization: Bearer sk-YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-6-luna",
    "messages": [
      {"role": "user", "content": "한 문장으로 HiAPI가 무엇인지 소개하고 한국어로 답변하세요."}
    ]
  }'

Responses API가 기본 권장 사항입니다: 입력 형식은 input 배열이며, reasoning 설정과 text.format 구조화 출력을 지원합니다. Chat Completions는 max_completion_tokens와 max_tokens를 지원하지 않습니다(Luna는 두 프로토콜 모두에서 input 형식만 사용합니다).

핵심 파라미터

파라미터 필수 설명
model 예 gpt-6-luna
input 예 메시지 배열, 각 항목에 role과 content 포함
reasoning.effort 아니오 추론 강도, 6단계: none/low/medium(기본)/high/xhigh/max
temperature 아니오 무작위성 제어, reasoning.effort=none일 때 조정 가능
top_p 아니오 핵 샘플링, reasoning.effort=none일 때 조정 가능
text.format 아니오 출력 형식 제어, json_schema와 strict 지원
max_output_tokens 아니오 최대 출력 token 수
tools 아니오 도구 정의, agent 시나리오용
tool_choice 아니오 도구 선택 전략

reasoning.effort 사용법:

  • none: 추론을 끄며 분류, 추출, 간단한 질의응답에 적합합니다. 이때 temperature와 top_p를 자유롭게 조정할 수 있습니다.
  • low/medium(기본): 가벼운 수준에서 중간 수준의 추론으로, 일반적인 질의응답과 콘텐츠 생성에 적합합니다.
  • high/xhigh/max: 심층 추론으로 복잡한 분석에 사용합니다. 단계가 높을수록 추론 token 소비가 많아집니다.

배치 작업에는 none을, 일상 대화에는 기본값 medium이면 충분하며, 복잡한 분석에는 필요에 따라 올리면 됩니다.

자주 발생하는 오류

  • 400 model not found → model 필드 오타 → gpt-6-luna로 작성했는지 확인하세요.
  • 400 additional properties not allowed → 지원하지 않는 필드를 전달(예: Chat Completions의 max_tokens) → 불필요한 필드를 제거하세요.
  • 401 permission_denied → Key 누락 또는 오류 → Authorization: Bearer sk-...를 확인하세요.
  • 400 json_schema validation failed → schema 정의가 규격에 맞지 않음 → required 배열과 properties 내 각 필드의 type을 확인하세요.

자주 묻는 질문

Responses API와 Chat Completions 중 무엇을 써야 하나요? 새로 연동한다면 Responses API를 사용하세요. input 배열 입력, reasoning.effort, text.format json_schema 등 새로운 기능을 지원합니다. 기존 Chat Completions 코드를 바꾸고 싶지 않다면 model만 교체해도 사용할 수 있습니다.

reasoning.effort=none과 추론을 끄는 것은 무엇이 다른가요? none으로 설정하면 모델이 추론 token을 생성하지 않으며, 출력에는 최종 답변 텍스트만 포함됩니다. 이때 temperature와 top_p를 수동으로 조정할 수 있습니다. 분류, 추출, 포맷팅 시나리오에는 none이면 충분하며, token을 절약하고 속도도 더 빠릅니다.

캐시는 어떻게 적용되나요? 자동으로 적용됩니다. 시스템 프롬프트와 대화 기록의 중복 부분이 캐시에 적중하면 $0.0025/M만 과금됩니다. 별도 설정이 필요 없습니다.

배치 작업은 Batch로 어떻게 처리하나요? 요청에 "processing_mode": "batch"를 추가하면 작업이 비동기 큐에 들어가며, 가격은 50% 할인됩니다. 실시간 응답이 필요 없는 작업에 적합합니다.

gpt-5.6-luna와 비교해 무엇이 달라졌나요? 가격이 절반으로 줄었고(입력 $0.025 vs $0.05), 출력은 2.4배 저렴해졌으며, Responses API 기본 프로토콜이 추가되었고, 6단계 추론 강도(6-luna와 완전히 동일하게 6단계 모두 갖춤), 컨텍스트가 1.05M으로 업그레이드되었습니다. 자세한 내용은 GPT-6 Luna vs GPT-5.6 Luna 비교를 참고하세요.

GPT-6 Luna 시리즈 글

지금 시도해 보세요: 위의 curl 명령을 복사하고 API Key만 바꿔 첫 호출을 성공시키세요. 또는 모델 페이지 열기에서 바로 온라인 대화를 시작하세요.

영구 AI 아티팩트로 빌드 시작하기

API 키를 받아 태스크 기반의 하나의 API로 이미지, 비디오, 오디오 모델을 호출하세요.

API 문서 보기