시작하기가이드
OpenRouter에서 CheapTokens로 전환: base_url, 키, 모델 id
OpenAI SDK(Python 및 JavaScript)에서 base_url, API 키, 모델 id를 바꾸고 첫 요청을 보내 제대로 됐는지 확인하세요.

앱이 이미 OpenAI SDK를 통해 OpenRouter를 호출하고 있고, 이제 CheapTokens를 호출하길 원합니다. 값 세 개 — base_url, API 키, model id — 를 바꾸고 선택적 헤더 두 개를 삭제하면 됩니다. 나머지 코드는 그대로 둡니다.
아래에는 Python, JavaScript, curl의 정확한 코드 라인, 전환이 제대로 됐는지 빠르게 확인하는 방법, 어떤 모델이 어떤 작업에 맞는지 정리한 표가 있습니다. CheapTokens에 요청을 보낸 적이 없다면 첫 API 요청 가이드에서 계정과 키를 다루고, 문서에 전체 레퍼런스가 있습니다.
실제로 바뀌는 것#
OpenRouter의 퀵스타트(2026년 10월 27일 확인)는 OpenAI 클라이언트를 base URL https:/로 설정하고 모델을 provider/ 형식으로 지정합니다. CheapTokens는 https:/에서 동일한 OpenAI Chat Completions 형식을 사용합니다. 따라서 클라이언트 클래스, chat., 응답을 읽는 방식은 바뀌지 않습니다.

줄마다 한 번씩 교체하면 됩니다:
- base URL — OpenRouter 주소 대신
https:/;/ api. cheaptokens. dev/ v1 - API 키 — CheapTokens 계정의 키를 환경 변수에서 읽습니다;
- 모델 id — 전체 CheapTokens id, 예를 들어
deepseek-. id는 CheapTokens 문서에서 가져오세요. 제공자마다 같은 모델을 다르게 부르며, 가격표의 짧은 id는 허용되지 않습니다.ai/ DeepSeek- V4- Flash- 0731
그리고 하나 삭제합니다. OpenRouter의 HTTP-Referer와 X- 헤더는 선택 사항이며 OpenRouter 리더보드에만 쓰입니다. default_headers / defaultHeaders에서 제거하세요. 여기서는 필요 없습니다.
전환 후 코드#
같은 요청을 세 가지 런타임으로 보여줍니다. 앱에서 쓰는 것을 고르세요.
전환 후 코드
Python
import os
from openai import OpenAI
client = OpenAI(
base_url='https://api.cheaptokens.dev/v1',
api_key=os.environ['CHEAPTOKENS_API_KEY'],
)
resp = client.chat.completions.create(
model='deepseek-ai/DeepSeek-V4-Flash-0731',
messages=[{'role': 'user', 'content': 'Reply with one word: ready'}],
max_tokens=20,
)
print(resp.choices[0].message.content)JavaScript
import OpenAI from 'openai';
const client = new OpenAI({
baseURL: 'https://api.cheaptokens.dev/v1',
apiKey: process.env.CHEAPTOKENS_API_KEY,
});
const resp = await client.chat.completions.create({
model: 'deepseek-ai/DeepSeek-V4-Flash-0731',
messages: [{ role: 'user', content: 'Reply with one word: ready' }],
max_tokens: 20,
});
console.log(resp.choices[0].message.content);curl
curl https://api.cheaptokens.dev/v1/chat/completions \
-H "Authorization: Bearer $CHEAPTOKENS_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model": "deepseek-ai/DeepSeek-V4-Flash-0731", "messages": [{"role": "user", "content": "Reply with one word: ready"}], "max_tokens": 20}'실행하기 전에 한 가지 더. 요청에 OpenRouter 전용 필드 — 라우팅이나 폴백 목록, 제공자 설정, ~alias 모델 id — 가 있다면 그것들은 OpenRouter에 속합니다. 요청은 표준 Chat Completions 필드로 유지하세요: model, messages, temperature, max_tokens, stream.
제대로 됐는지 확인#
응답이 왔다고 충분한 증거는 아닙니다. 응답 옆에 세 가지를 출력하세요: 어떤 모델이 답했는지, 왜 멈췄는지, 토큰으로 얼마나 과금됐는지.
print(resp.model)
print(resp.choices[0].finish_reason)
print(resp.usage.prompt_tokens, resp.usage.completion_tokens)
stop의 finish_reason는 모델이 스스로 끝냈다는 뜻입니다. length은 max_tokens가 응답을 잘랐다는 뜻입니다. usage은 입력과 출력 토큰을 따로 보여주며, 이 두 숫자가 청구서를 구성합니다 — OpenRouter에서 추적하던 것과 같은 두 숫자입니다.
직접 해보기해보기: max_tokens를 1로 설정하면 finish_reason은 무엇이라고 나올까요?정답 보기
length라고 나옵니다 — 응답이 max_tokens에 의해 잘렸습니다. 코드가 잘린 응답을 처리하는지 확인하는 좋은 테스트입니다.
어떤 모델이 무엇을 대체하나#
OpenRouter에서 쓰던 이름이 아니라 작업에 맞춰 모델을 고르세요. 아래 정보는 2026년 10월 27일 확인한 CheapTokens 가격표에서 가져왔습니다. 하나의 잔액으로 세 모델을 모두 쓸 수 있고 가격은 시간대에 따라 변하지 않습니다.
표를 오른쪽으로 스크롤하세요 →
| 모델 | model id |
컨텍스트 | 최대 응답 |
|---|---|---|---|
| DeepSeek-V4-Flash | deepseek- |
380K | 32,768 토큰 |
| GLM-5.3-Flash | zai- |
390K | 8,192 토큰 |
| MiniMax-M2.7 | MiniMaxAI/ |
180K | 8,192 토큰 |
어느 행이 자신의 것인지 모르겠다면 앱이 하는 일에서 시작하세요:
사례 선택하기
앱이 주로 하는 일은 무엇인가요?
답을 보려면 옵션을 선택하세요
짧고 빈번한 요청 — 분류, 추출, 지원 응답
zai-을 시도하세요: 390K 컨텍스트, 최대 8,192 토큰 응답, 입력과 출력을 합친 총액이 OpenRouter보다 저렴합니다.
긴 응답, 코드, 에이전트 루프
deepseek-를 시도하세요: 최대 32,768 토큰 응답, 380K 컨텍스트, 하루 중 어느 때든 동일한 가격.
현재 OpenRouter의 높은 요율을 내고 있는 꾸준한 워크로드
MiniMaxAI/를 시도하세요: 180K 컨텍스트, 최대 8,192 토큰 응답, 총액 기준으로 OpenRouter보다 저렴합니다.
같은 트래픽의 비용#
봇이 요청 1,000건을 보내고 각각 입력 약 500 토큰, 출력 300 토큰이라고 가정해 봅시다. 이는 가정일 뿐이니 usage의 실제 수치로 바꾸세요. 아래 표는 실시간입니다: 저희 가격과 OpenRouter 열은 현재 가격표에서 가져왔으며 입력과 출력을 합산한 값입니다.
| 모델 | 입력 $/1M | 출력 $/1M | 요청당 | 1,000회 요청 | OpenRouter, 1,000회 요청 |
|---|---|---|---|---|---|
| GLM-5.3-Flash | $0.02 | $0.04 | $0.000022 | $0.022 | $0.0434 |
| DeepSeek-V4-Flash | $0.015 | $0.10 | $0.000038 | $0.0375 | $0.0708 |
| MiniMax-M2.7 | $0.05 | $0.15 | $0.00007 | $0.07 | $0.51 |
요청당 입력 500개 및 출력 300개 토큰입니다. 100만 토큰당 가격은 현재 기준이며 당사 요금제에 따라 함께 변경됩니다. OpenRouter 열은 동일한 작업량에 대한 참고 가격을 보여줍니다.
DeepSeek-V4-Flash에서는 그 1,000건의 요청이 $0.0375입니다. 전체 가격은 가격 페이지에 있고, 과금 대상에 대한 개념은 입력 vs 출력 토큰에 있습니다.
안 될 때#
전환 후에는 세 가지 오류가 대부분의 문제를 설명합니다. 메시지를 원인과 맞춰 보세요:
짝 맞추기
각 증상을 원인과 맞추기
왼쪽 항목을 탭한 다음 짝을 탭하세요
- 401 Unauthorized키가 없거나, 잘못 입력됐거나, 아직 OpenRouter 키입니다
- 404 Not Foundbase URL 경로가 잘못됐거나 모델 id가 전체 CheapTokens id가 아닙니다
- 응답이 문장 중간에 잘림max_tokens가 응답에 필요한 양보다 적습니다; finish_reason이 length입니다
401 및 404 문제 해결 문서에서 각각을 정확한 메시지와 함께 다루고, base_url이란 무엇인가에서 슬래시 하나가 잘못되면 경로가 왜 깨지는지 설명합니다.
배포 전에#
체크리스트
전환 체크리스트



