소개
발급한 키로 https://ai.cubion.kr/v1 을 호출하는 방법입니다. OpenAI 호환이라 쓰던 SDK 에서 baseURL 만 바꾸면 됩니다.
AI 도구에 이 문서를 줄 때
링크 하나로 전체를 읽히려면 /llms-full.txt 를 주세요. 페이지 하나만 줄 때는 주소 뒤에 .md 를 붙이면 마크다운 판이 나옵니다(예: /docs/chat.md). 각 페이지 오른쪽 위 페이지 복사 로 붙여 넣을 수도 있습니다.
무엇을 하는 서비스인가
발급한 키 하나로 OpenAI·Anthropic·Gemini·Fish Audio 를 같은 형식으로 부릅니다. 프로바이더마다 계정을 만들고 카드를 등록하고 서로 다른 SDK 를 붙이는 대신, 키 하나와 주소 하나만 두면 됩니다.
요청은 https://ai.cubion.kr/v1 로 보냅니다. 형식이 OpenAI 호환이라 이미 OpenAI SDK 를 쓰고 있다면 baseURL 한 줄만 바꾸면 그대로 동작합니다.
import os
from openai import OpenAI
client = OpenAI(
base_url="https://ai.cubion.kr/v1", # 이 줄만 바뀝니다
api_key=os.environ["GATEWAY_KEY"],
)
res = client.chat.completions.create(
model="gpt-4o",
messages=[{"role": "user", "content": "안녕하세요"}],
)
print(res.choices[0].message.content)import OpenAI from "openai";
const client = new OpenAI({
baseURL: "https://ai.cubion.kr/v1", // 이 줄만 바뀝니다
apiKey: process.env.GATEWAY_KEY,
});
const res = await client.chat.completions.create({
model: "gpt-4o",
messages: [{ role: "user", content: "안녕하세요" }],
});
console.log(res.choices[0].message.content);curl https://ai.cubion.kr/v1/chat/completions \
-H "Authorization: Bearer $GATEWAY_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"gpt-4o","messages":[{"role":"user","content":"안녕하세요"}]}'부를 수 있는 것
포털에서 발급한 키로 쓸 수 있는 엔드포인트입니다. 모두 같은 키, 같은 인증 헤더를 씁니다.
| 엔드포인트 | 하는 일 | 문서 |
|---|---|---|
POST /v1/chat/completions | 대화·텍스트 생성 (스트리밍 지원) | 채팅·응답 |
POST /v1/embeddings | 문장을 벡터로 | 임베딩 |
POST /v1/images/generations | 프롬프트로 이미지 생성 | 이미지 생성 |
POST /v1/audio/speech | 문장을 음성 파일로 | 음성 합성 |
GET /v1/models | 이 키로 쓸 수 있는 모델 목록 | 모델 목록 |
GET /v1/balance | 계정에 남은 잔액 | 요금·잔액 |
인증
헤더 하나가 전부입니다. 쿠키도 세션도 없습니다.
Authorization: Bearer sk-proj-...키는 API 키 화면에서 발급합니다. 평문 키는 발급 직후 한 번만 보이므로 그 자리에서 환경변수로 옮겨 두세요.
브라우저에서 직접 호출할 때
/v1/* 는 CORS 를 허용하므로 브라우저에서 바로 불러도 동작합니다. 다만 브라우저에 올린 키는 공개된 키입니다 — 개인 프로젝트가 아니라면 서버를 거쳐 호출하세요.
요금
사용한 만큼 계정 잔액에서 원화로 빠집니다. 프로바이더별 결제도, 월 구독도 없습니다.
다음
키를 아직 안 만들었다면 키 발급과 첫 호출부터 보세요. 5분이면 첫 응답까지 갑니다.