혼자 공부하는 바이브 코딩 with 클로드 코드 - Ch6 - (1)
OpenRouter API 키 발급부터 바이브 코딩 준비까지! (완전 초보자 가이드)
안녕하세요! 앵그리비버입니다. 🦫✨
요즘 개발자들 사이에서 일명 '바이브 코딩(Vibe Coding)'이 대세잖아요? 저도 이번에 터미널 기반 AI 보조 도구인 **클로드 코드(Claude Code)**를 가지고 본격적으로 토이 프로젝트를 만들어보려고 주말 동안 환경 설정을 진행해보았습니다!
다양한 AI 모델(GPT-4o, Claude, Llama, Gemma 등)을 하나의 API로 편리하게 연결해주는 OpenRouter(오픈루터) API 키 발급 과정을 스크린샷과 함께 차근차근 정리해보았어요. 생각보다 참 쉽죠잉~!?
1단계: OpenRouter 웹사이트 접속 및 가입
먼저 openrouter.ai에 접속합니다. 메인 화면에 **"The Unified Interface For LLMs"**라는 문구가 반겨주네요! 오른쪽 상단의 Sign Up 버튼이나 중앙의 Get API Key 버튼을 눌러 계정을 생성해 줍니다.

2단계: 웰컴 팝업 및 API Key 메뉴 이동
가입을 완료하면 *"You're all set!"*이라는 팝업창이 떠요. 여기서 바로 Create API Key 버튼을 클릭하거나, 좌측 사이드바 메뉴에서 Settings > API Keys 항목으로 이동해 줍니다. (처음 접속하면 "No API keys yet"이라는 깔끔한 화면이 반겨줍니다!)


3단계: 나만의 API Key 생성하기
- 화면의
Create(보라색 버튼)을 누르면 키 생성 창이 나타납니다. - Name: 알아보기 쉽게 이름을 적어줍니다. 저는 제 블로그 아이디인
jindopark으로 지어줬어요! - Credit limit: 한도를 지정할 수도 있지만, 일단 빈칸으로 두고 무제한(unlimited) 설정을 선택했습니다.
Create버튼을 꾹 누릅니다!

4단계: API Key 복사 및 비밀 보관 🤫
그러면 sk-or-v1-... 형태로 시작하는 길다란 문자열의 API 키가 짠 하고 나타납니다! ⚠️ 주의할 점! 이 키는 보안상 이 순간에만 보여주기 때문에 반드시 복사해서 비밀 노트나 환경 변수(.env) 파일에 안전하게 저장해 두셔야 해요. 다시 볼 수 없답니다!


막상 해보니 3분도 안 걸려서 API 키 생성이 끝나버렸네요! 이제 이 키 하나만 있으면 클로드 코드(Claude Code)에서 OpenAI 모델부터 Google의 최신 Gemma 3, Meta의 Llama 3.3까지 자유자재로 불러와 코딩을 시킬 수 있습니다.
OpenRouter 무료 모델 총정리 & 토큰 사용량 모니터링 팁 📊
이어서 OpenRouter에서 제공하는 무료 LLM 모델 탐색법과 실시간 대시보드 모니터링 기능을 알차게 활용하는 법 소개
무료(Free) 모델 검색하는 꿀팁! 🔍
OpenRouter 모델 카탈로그 화면(openrouter.ai/models)에 들어가면 왼쪽 필터에서 가격 범위를 조절할 수 있습니다.
- URL 필터 활용:
openrouter.ai/models?max_price=0으로 설정하면 현재 제공 중인 **모든 무료 모델(37개 이상)**만 쏙 골라볼 수 있습니다! - 추천 무료 모델:
- Google Gemma 3 27B (free): 131K 콘텍스트, 멀티모달(텍스트+이미지) 지원! 텍스트 및 비전 성능이 아주 뛰어납니다.
- Google Gemma 3 4B (free): 경량화 모델로 빠른 응답이 필요할 때 적합.
- NVIDIA Nemotron 3 Super (free): 262K 긴 콘텍스트 지원.
- Xiaomi MiMo-V2-Omni / Pro: 최신 오므니모달 및 대용량 콘텍스트 모델.



(참고) 최근 무료 모델은 바로 조회해보는 것이 더 정확합니다.
2. Activity 대시보드로 지출 및 토큰 추적하기 📈
OpenRouter의 Activity 탭에 들어가면 내가 호출한 API의 비용과 요청 수, 사용 토큰(Tokens) 현황을 시각적 그래프로 보여줍니다.
- Spend (지출액): GPT-4o-mini 호출 건으로 겨우
$0.000003(약 0.004원!)이 청구되었고, Gemma 3 무료 모델 사용분은 깔끔하게$0으로 표기됩니다. - Requests & Tokens: 어떤 모델이 몇 번 호출되었고 토큰을 몇 개 썼는지(예: Gemma 3 27B가 269 토큰 사용) 한눈에 비교할 수 있어 예산 관리하기 너무 편해요!

3. 문제 발생: Llama 3.3 70B 모델의 429 에러
무료로 쓸 수 있는 `meta-llama/llama-3.3-70b-instruct:free` 모델을 호출하는 스크립트를 실행했더니 터미널에 다음과 같은 응답이 돌아왔습니다.

```json
L 429
{'error': {'message': 'Provider returned error', 'code': 429,
'metadata': {'raw': 'meta-llama/llama-3.3-70b-instruct:free is temporarily rate-limited upstream...'}}}
```
`sleep 10`이나 `sleep 30`을 주고 재시도해 봐도 계속해서 429 에러가 반복되더군요.

**원인 분석**: OpenRouter에서 제공하는 무료 모델은 전 세계 사용자가 트래픽 제한을 공유하기 때문에, 사용자 요청이 몰리는 시간대에는 일시적으로 업스트림(Venice 등) 서버에서 차단될 수 있습니다. (모델 자체의 버그는 아니에요!)
---
### 🛠️ 해결 시도: Gemma 3 27B 무료 모델로 즉시 변경!
클로드 코드한테 *"텍스트 인식도 `google/gemma-3-27b-it:free` 모델로 변경하여 이용하겠습니다. API를 통한 텍스트 인식을 다시 테스트해서 알려주세요."* 라고 요청했습니다.
클로드 코드가 스스로 판단하여 인라인 파이썬 명령어(`python3 -c "import os, requests..."`)를 작성하고 실행해 주더라고요!
```bash
• Bash(python3 -c "import os, requests...")
L 200
리스트는 변경 가능한 (mutable) 자료형으로...
튜플은 변경 불가능한 (immutable) 자료형으로...
```
---
### 🎉 테스트 결과: 성공적 동작!
* **결과**: `HTTP 200 OK` 정상 응답 도착!
* **확인된 기능**: Gemma 3 27B 모델이 파이썬 데이터 타입(리스트 vs 튜플) 질문에 대해 완벽하고 깔끔한 한국어 설명을 반환해 주었습니다.
```text
테스트 결과 ✅
텍스트 인식 - google/gemma-3-27b-it:free 정상 동작
```
---
### 📝 앵그리비버의 꿀팁 요약
1. **무료 티어 모델은 언제든 429 에러가 날 수 있습니다.** 당황하지 마시고 대체 가능한 다른 무료 모델(`Gemma 3 27B`, `Gemma 3 4B` 등)로 파이프라인을 교체하세요.
4. Logs 탭에서 요청 단위 상세 분석 📑
Logs 메뉴로 이동하면 타임스탬프별로 상세 내역이 찍힙니다.
- 요청 시각, 모델명 (
Gemma 3 27B (free)), 사용 토큰 수, 비용, 속도(tps), Finish 이유(stop)까지 꼼꼼히 기록됩니다. - 터미널에서 호출한 결과가 즉시 대시보드 로그에 1~2초 만에 업데이트되는 걸 보니 정말 놀랍더군요!


💡 앵그리비버의 총평
무료 모델 위주로 잘 조합만 해도 토이 프로젝트나 프로토타입 개발 비용을 $0에 가깝게 유지할 수 있습니다. 지갑을 지키면서 스마트하게 AI 앱을 만들고 싶다면 OpenRouter 모니터링 기능을 꼭 100% 활용해 보세요!