로컬 우선 원칙을 벗어나지 않고 Jan에 클라우드 카탈로그 모델 더하기.
Updated 2026-07-29
Jan은 설계상 여러분의 컴퓨터에서 모델을 실행하며, Model Providers 설정은 로컬만으로 부족한 날을 위해 어떤 OpenAI 호환 엔드포인트도 받아들입니다: 프로바이더를 추가하고, Base URL을 https://api.apisrouter.com/v1로 설정하고, 키 하나를 붙여넣으면 Claude, GPT, Gemini, DeepSeek id가 여러분의 로컬 라인업에 합류합니다.
빠른 답: Settings 안의 프로바이더 하나.
Jan의 Settings를 열고 Model Providers로 이동하세요. 프로바이더 목록 옆의 플러스 컨트롤을 클릭해 커스텀 프로바이더를 추가하고, 이름(APIsRouter)을 지정한 다음, 최신 빌드에서 다이얼로그가 물어보면 OpenAI API 포맷을 선택하세요(Jan v0.8.1에서 OpenAI-또는-Anthropic 포맷 선택기가 추가됐습니다; 게이트웨이라면 OpenAI를 선택하세요). 그런 다음 중요한 두 필드를 채우세요: Base URL https://api.apisrouter.com/v1과 여러분의 API 키. 원하는 모델을 id로 추가하세요: Jan의 문서는 id 속성이 엔드포인트가 서빙하는 모델 이름과 일치해야 한다고 명시하므로, 기억에 의존해 입력하지 말고 카탈로그 목록에서 id(claude-sonnet-4-6, gpt-5.4-mini, gemini-3.5-flash)를 복사하세요. 저장하면 그 id들이 로컬에서 실행하는 것 옆의 모델 선택기에 나타납니다. 레이블은 릴리스마다 이동했으므로(예전 버전은 이 영역을 Remote Engines라고 불렀습니다) 프로바이더, 포맷, URL, 키, 모델을 안정된 골격으로 취급하세요.
Name: APIsRouter
API Format: OpenAI (v0.8.1+ selector)
Base URL: https://api.apisrouter.com/v1
API Key: sk-YOUR-APISROUTER-KEY
Models: add ids that match the endpoint, e.g.
claude-sonnet-4-6, gpt-5.4-mini, gemini-3.5-flashJan이 원격 프로바이더를 다루는 방식.
Jan(GitHub의 menloresearch, 약 4.4만 스타)은 로컬 우선 데스크톱 클라이언트입니다: 모델이 여러분의 컴퓨터로 다운로드되어 llama.cpp를 통해 실행되고 오프라인으로도 작동하며, 앱 자체가 http://127.0.0.1:1337/v1에서 다른 도구를 위한 OpenAI 호환 서버까지 노출합니다. 원격 프로바이더는 로컬에서 실행하기엔 너무 크거나 프론티어급 품질을 받을 자격이 있는 작업을 위한 의도적인 두 번째 레인입니다. OpenAI 포맷의 커스텀 프로바이더는 순수한 엔드포인트 기술입니다: base URL, 키, 선언된 모델 id. 이 id들을 대상으로 한 대화는 id를 model 문자열로 하는 표준 chat-completions 요청으로 나가므로, 멀티벤더 게이트웨이는 항목 딱 하나만 필요합니다. 신중한 글쓰기에는 Claude, 볼륨 요약에는 DeepSeek, 속도에는 Gemini, 이 모두의 뒤에 키 하나. 철학적 궁합은 처음 들리는 것보다 좋습니다. 로컬 우선 사용자는 컴퓨터를 떠나는 것에 신중한 경향이 있고, 게이트웨이는 원격 레인을 똑같이 신중하게 유지해 줍니다: 방화벽으로 막을 엔드포인트 하나, 읽을 사용량 로그 하나, 무언가를 밖으로 보내기로 선택했을 때만 움직이는 잔액 하나. 로컬 레인에 대해서는 아무것도 바뀌지 않습니다; 다운로드한 모델은 전과 똑같이 오프라인으로 계속 작동합니다.
모델 선언하기: id 계약.
Jan은 커스텀 엔드포인트의 카탈로그를 대신 가져오지 않습니다; 선언한 모델이 곧 얻는 모델이고, id가 그 계약입니다. 정답 표기는 버전 접미사를 포함해 게이트웨이의 /v1/models 목록에서 나옵니다. 목록과 어긋난 선언된 id는 그 모델이 선택될 때만 not-found 오류를 일으키는데, 문자열을 비교해보기 전까지는 프로바이더가 불안정한 것처럼 읽힙니다. 의도적으로 선언하세요. 로컬 우선 선택기는 원격 행이 적고 목적이 뚜렷할 때 가장 잘 작동합니다: 일상적인 원격 턴을 위한 빠른 id 하나(gpt-5.4-mini나 claude-haiku-4-5-20251001), 컴퓨터를 떠날 가치가 있는 작업을 위한 프론티어 id 하나(claude-sonnet-4-6), 그리고 여러분의 작업량이 요구하는 전문 모델(긴 다국어 요약에는 deepseek-v4-flash, 지연 시간이 기능일 때는 gemini-3.5-flash). 각 행은 나중에 쉽게 추가할 수 있습니다; 통째로 붙여넣은 카탈로그는 매일 스크롤하며 지나칠 소음일 뿐입니다. 다른 도구에 서빙하기 위해 Jan의 로컬 API 서버도 사용한다면 정신 모델을 정확히 유지하세요: 그 서버는 127.0.0.1:1337/v1에서 Jan이 프로바이더 역할을 하는 것이고, 커스텀 프로바이더 항목은 Jan이 클라이언트 역할을 하는 것입니다. 둘은 독립적이며, 하나를 설정해도 다른 하나에는 절대 영향을 주지 않습니다.
curl -s https://api.apisrouter.com/v1/models \
-H "Authorization: Bearer $APISROUTER_API_KEY" | head -50
# declare these ids verbatim in the provider's model list어떤 대화가 컴퓨터를 떠날지 선택하기.
원격 사용량이 선불이고 키별로 계량되므로, 원격 레인의 비용은 추측하는 구독료가 아니라 읽는 숫자입니다. 실제 여러분의 분할을 한 달 돌려보면 사용량 로그가 컴퓨터를 떠나는 것이 모델별, 날짜별로 정확히 얼마인지 알려줍니다.
- 일상적인 원격 턴, 빠른 질문, 다시 쓰기, 번역은 빠른 티어에 속합니다: gpt-5.4-mini와 claude-haiku-4-5-20251001은 빠르게 답하며 잔액을 거의 움직이지 않게 유지합니다.
- claude-sonnet-4-6은 로컬 모델이 눈에 띄게 감당하지 못하는 작업을 위한 단계 상승입니다: 긴 신중한 초안 작성, 미묘한 코드 리뷰, 전달할 분석.
- gemini-3.5-flash는 지연 시간으로 제 자리를 얻습니다; 짧은 대화형 턴에서는 로컬 모델의 반응성에 가장 가깝게 느껴집니다.
- deepseek-v4-flash는 작은 로컬 모델에 먹이지 않을 긴 문서를 요약하기 위한 볼륨 픽입니다.
- 민감한 자료는 전적으로 로컬 모델에 남겨두세요; 레인 사이의 분리가 애초에 Jan을 실행하는 요점입니다.
사용한 만큼 지불 · 공식 요금보다 저렴
Selected models are priced below official list prices. Exact input, output, cache, and per-request prices are shown for each model.
| 모델 | 공식 요금 | 저희 요금 |
|---|---|---|
| Claude Haiku 4.5 20251001 | $1.00 / $5.00 per M | $0.80 / $4.00 per M |
| Claude Sonnet 4.6 | $3.00 / $15.00 per M | $2.40 / $12.00 per M |
| GPT-5.4 mini | $0.75 / $4.50 per M | $0.60 / $3.60 per M |
| Gemini 3.5 Flash | $1.50 / $9.00 per M | $1.20 / $7.20 per M |
| DeepSeek V4 Flash | $0.14 / $0.28 per M | $0.10 / $0.30 per M |
Jan 특유의 실패 패턴.
특정 모델에 대한 not-found 오류는 id 계약 문제입니다: 선언된 id가 엔드포인트의 표기와 일치하지 않습니다. /v1/models 출력과 글자 하나까지 비교하세요. 모든 요청에서의 인증 실패는 키 필드 문제입니다. 저장은 되는데 절대 응답하지 않는 프로바이더는 보통 Base URL 문제입니다: /v1 접미사가 있어야 하는데, Jan이 여러분이 입력한 base에 /chat/completions 같은 라우트 경로를 덧붙이기 때문이며, 세그먼트가 중복되거나 빠지면 404가 납니다. 프로바이더가 이전 빌드에서 만들어졌다면 API 포맷을 확인하세요: v0.8.1에서 OpenAI-또는-Anthropic 선택기가 도입되었고, 실수로 Anthropic 포맷으로 설정된 게이트웨이 항목은 /v1/chat/completions 엔드포인트에 잘못된 방언으로 말합니다. 그리고 어느 레인을 디버깅하고 있는지 기억하세요. 로컬 모델 실패(VRAM, 양자화, llama.cpp 설정)와 원격 실패(URL, 키, id)는 같은 채팅 창을 공유할 뿐 그 외에는 아무것도 공유하지 않습니다; 모델 선택기는 잘못된 실을 당기기 시작하기 전에 실패한 대화가 어느 레인에 속하는지 보여줍니다.
어떤 사람들이 Jan에 게이트웨이 레인을 추가하는가.
- 가끔 프론티어급 품질이 필요하며 그 가끔의 레인을 벤더 구독이 아니라 선불 잔액에 두고 싶은 로컬 우선 사용자.
- 큰 로컬 모델을 잘 실행하지 못하는 컴퓨터에서, Jan을 인터페이스로, 게이트웨이를 무거운 작업용으로 쓰는 개발자.
- 벤더마다 하나씩이 아니라 정확히 하나의 원격 엔드포인트만 추론하고 방화벽으로 막고 감사하고 싶은 프라이버시에 신중한 사용자.
- 실제 작업에서 로컬 대 클라우드 출력을 비교하는 사람들 — 원격 후보는 새 계정이 아니라 선언된 행일 뿐입니다.
- 특정 벤더의 결제 수단에 접근할 수 없는 개발자. 카드 없이 충전만으로 사용할 수 있어 프로바이더별 가입 의존성이 사라집니다.
엔드포인트 검증 및 첫 원격 턴 디버깅.
먼저 모델 목록과 채팅 완성 하나를 curl로 확인하세요; 둘 다 통과하면 남은 것은 모두 프로바이더 항목 안에 있습니다. 이는 또한 선언할 정확한 id 표기를 알려줍니다. Jan 내부에서는 빠른 원격 id로 짧은 메시지 하나를 보내세요. 인증 오류는 키 문제입니다; not-found는 id 문제입니다; 무응답이나 404는 Base URL 형태 문제입니다. 원격 레인은 작동하지만 프론티어 id에서 느리게 느껴진다면 그것은 설정 문제가 아니라 모델의 지연 시간입니다; 추론 모델은 긴 턴에 시간이 걸립니다. 원격 턴이 흐르기 시작하면 APIsRouter 콘솔에서 요청별 모델, 토큰 수, 지출을 볼 수 있습니다. 로컬 우선 사용자에게 이 로그는 유난히 만족스러운 읽을거리입니다: 컴퓨터를 떠난 모든 것의 완전한 기록이 모델별, 날짜별로 정리되어 있으며, 로컬 레인은 거기에 정확히 아무것도 기여하지 않습니다.
curl -s https://api.apisrouter.com/v1/chat/completions \
-H "Authorization: Bearer $APISROUTER_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"gpt-5.4-mini",
"messages":[{"role":"user","content":"ping"}]}'자주 묻는 질문
Jan에 커스텀 OpenAI 호환 프로바이더를 어떻게 추가하나요?
Settings, Model Providers로 이동한 다음 플러스 컨트롤로 프로바이더를 추가하세요. 이름을 짓고, 물어보는 빌드(v0.8.1+)에서는 OpenAI API 포맷을 선택하고, Base URL을 https://api.apisrouter.com/v1로 설정하고, 키를 붙여넣은 다음, 엔드포인트의 목록과 일치하는 모델 id를 선언하세요.
왜 제가 선언한 모델이 not-found를 반환하나요?
Jan은 선언된 id를 model 문자열로 그대로 보내며, 문서는 id가 엔드포인트의 모델 이름과 정확히 일치해야 한다고 요구합니다. 기억으로 id를 입력하지 말고 /v1/models 목록을 가져와 버전 접미사까지 포함해 표기를 복사하세요.
원격 프로바이더를 추가하면 로컬 모델이 작동하는 방식이 바뀌나요?
아니요. 로컬 모델은 오프라인을 포함해 llama.cpp를 통해 계속 온디바이스로 실행됩니다. 프로바이더 항목은 선택기에 별도의 원격 레인을 추가할 뿐이며, 대화는 원격 id를 선택했을 때만 네트워크를 건드립니다.
Base URL에 /v1을 포함해야 하나요?
네: https://api.apisrouter.com/v1. Jan은 설정한 base에 /chat/completions 같은 라우트를 덧붙이므로, /v1이 빠지면 404가 나고 중복되어도 마찬가지입니다. 요청이 실패하면 다른 것을 바꾸기 전에 오류에 표시된 조합된 URL을 읽으세요.
Jan이 프로바이더 항목 하나로 Claude와 Gemini에 도달할 수 있나요?
네. OpenAI 포맷에서 모델 id는 순수 문자열로 이동하므로, claude-sonnet-4-6, gemini-3.5-flash, gpt-5.4-mini, deepseek-v4-flash 모두 항목 하나 아래에 선언되어 키 하나로 청구되며 대화별로 전환할 수 있습니다.
이것이 Jan의 로컬 API 서버와 같은 것인가요?
아니요. 127.0.0.1:1337의 로컬 서버는 Jan이 다른 도구에 로컬 모델을 서빙하는 것입니다. 커스텀 프로바이더 항목은 Jan이 원격 엔드포인트를 소비하는 것입니다. 둘은 OpenAI 와이어 포맷을 공유할 뿐 독립적인 기능입니다.