Janitor AI용 OpenRouter 대체품: 설정 가이드
사용자 정의 OpenAI 호환 API를 지원하는 캐릭터 채팅 프론트엔드는 URL, 키, 모델 이름 세 가지 값으로 이 엔드포인트에 연결할 수 있습니다. 정확한 설정 방법, 시작용 시스템 프롬프트 및 계획 수립에 필요한 제한 사항을 안내합니다.
업데이트

주요 포인트
- 베이스 URL https://api.openrouterapi.cc/v1, 키, 모델 ID uncensored를 입력합니다.
- 먼저 curl로 테스트하여 문제가 키에 있는지 클라이언트에 있는지 확인하세요.
- 30,000토큰의 역할극 기록은 응답당 약 $0.0047이므로, 100회 응답에는 약 $0.47이 듭니다.
- 이 모델은 텍스트 전용이며 컨텍스트 창은 100,000토큰입니다.
입력해야 할 항목
Janitor AI나 유사한 캐릭터 채팅 앱을 위한 OpenRouter 대체품을 사용하려면 설정 방법이 모든 OpenAI 호환 제공업체와 동일합니다. 클라이언트에서 사용자 정의 또는 프록시 API를 추가하는 위치를 찾습니다. 앱마다 "프록시", "사용자 정의 OpenAI 엔드포인트", "API URL" 등 다른 명칭을 사용하지만, 하단 필드는 항상 동일합니다.
| 필드 | 내용 |
|---|---|
| API URL / 베이스 URL | https://api.openrouterapi.cc/v1 |
| API 키 | 계정에서 발급받은 키는 Authorization: Bearer 형식으로 전송됩니다. |
| 모델 이름 | uncensored |
일부 클라이언트는 베이스 URL 대신 전체 엔드포인트를 필요로 합니다. 베이스 URL을 저장했을 때 오류나 404가 발생하면 https://api.openrouterapi.cc/v1/chat/completions를 시도하세요. 지원되는 메서드는 POST /v1/chat/completions와 GET /v1/models입니다. 모델을 나열하는 클라이언트는 두 번째 메서드를 호출하여 uncensored를 확인할 수 있습니다.
아직 키가 없다면 Google 또는 이메일과 비밀번호로 가입하고 API 키 지침을 따르세요. 새 계정은 한 번의 클릭으로 $0.50 체험판을 받을 수 있으며, 이는 첫 테스트 세션에 충분합니다.
앱을 탓하기 전에 연결을 테스트하세요
역할극 프론트엔드는 원본 오류 텍스트를 숨깁니다. 키와 모델이 작동하는지 확인하려면 먼저 터미널에서 요청을 하나 실행하세요. 자리 표시자를 자신의 키로 바꿉니다.
curl https://api.openrouterapi.cc/v1/chat/completions \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [
{"role": "system", "content": "You are Mara, a dry-witted ship engineer."},
{"role": "user", "content": "The reactor is humming wrong again."}
],
"temperature": 0.9,
"max_tokens": 200
}'
이 요청이 응답을 반환하면 엔드포인트와 키가 정상이며, 문제는 앱 설정에 있습니다. 실패하면 오류 본문이 원인을 알려줍니다. X-Request-Id 응답 헤더의 요청 ID를 보관하세요. 이는 support에 메시지를 전달할 때 도움이 됩니다.
시작용 시스템 프롬프트
프론트엔드의 캐릭터 카드는 일반적으로 시스템 메시지가 됩니다. 앱이 수행하는 작업에 관계없이 모델은 아래 텍스트와 유사한 내용을 받습니다. 모델은 합법적인 성인 사용에 대해 콘텐츠 거부 없이 답변하도록 조정되었으므로, 프롬프트가 모델과 맞서지 않아도 됩니다. 목소리, 경계 및 형식에 대해 명확해야 합니다.
당신은 화물선 Calloway의 수석 엔지니어 Mara Voss입니다.
목소리: 건조하고 실용적이며, 스트레스 상황에서 빠르게 농담을 던집니다.
3인칭 과거형으로 작성하고, 2~4개의 짧은 단락으로 구성합니다.
사용자 캐릭터 대신 말하거나 행동하지 마세요.
연속성을 유지하세요: 부상, 수리, 정보 공유 여부를 추적합니다.
이야기에 머물러야 합니다. 모든 캐릭터는 성인입니다.
긴 세션의 경우 두 가지 습관이 도움이 됩니다. 첫째, 시스템 프롬프트를 짧게 유지하세요. 모든 턴에서 다시 전송되기 때문입니다. 둘째, 프롬프트 중간이 아닌 끝에 강력한 규칙을 배치하여 대화 기록이 길어질 때도 눈에 띄게 만듭니다. 앱이 최신 메시지 근처에 삽입되는 "작가의 메모"나 리마인더를 추가할 수 있다면 스타일 규칙에 사용하세요.
이 서비스와 프롬프트에는 하나의 고정 규칙이 있습니다: 미성년자가 관련된 성 콘텐츠 금지. 이를 캐릭터 카드에 작성하면 자체 카드도 깔끔하게 유지됩니다.
일반적으로 잘 작동하는 설정
이것은 시작점이며 보장이 아닙니다. 한 번에 하나씩 변경하고 여러 응답을 비교하세요.
- Temperature 0.8~1.0은 생동감 있는 대화에 적합합니다. 캐릭터가 어긋나거나 모순될 경우 약 0.6으로 낮추세요.
- top_p 0.9~0.95은 클라이언트에서 노출하는 경우 설정하세요. 이 값은 전달됩니다.
- 빈도 및 존재 페널티 0.2~0.5은 응답이 구절을 반복하기 시작할 때 사용합니다. 큰 값은 문체를 이상하게 만드므로 낮게 유지하세요.
- max_tokens은 선택 사항입니다. 에세이가 아닌 단락 길이의 응답을 원한다면 300에서 600으로 설정하세요.
- 스트리밍 활성화. 응답은 작성되는 대로 표시되며, 마지막 청크에는 사용량이 포함되어 클라이언트가 토큰 수를 표시할 수 있습니다.
- seed은 전달되므로, 같은 실행에서 두 프롬프트 버전을 비교할 때 편리합니다.
스트리밍에는 알아야 할 부작용이 하나 있습니다. 스트리밍 요청은 스트리밍이 끝날 때까지 동시성 슬롯을 유지합니다. 일반 키는 동시 8개 요청과 분당 300개를 허용합니다. 체험 키는 동시 2개와 분당 60개를 허용합니다.
컨텍스트, 메모리 및 긴 대화의 비용
컨텍스트 창은 100,000 토큰이며, 프롬프트와 완성을 포함합니다. 이는 방대한 분량입니다: 수만 단어의 이력을 담을 수 있습니다. 전체 이력이 매번 전송되므로 비용은 이에 따라 증가합니다. 긴 세션에 대한 계산된 토큰 비용 예시가 있습니다.
이력이 30,000 토큰으로 늘었고 응답이 300 토큰이라고 가정합니다. 입력: 30,000 x $0.15 / 1M = $0.0045. 출력: 300 x $0.50 / 1M = $0.00015. 한 번의 응답 비용은 $0.00465입니다. 이 크기의 응답 100개는 $0.465, 즉 약 47센트입니다.
짧은 이력이 더 저렴하고 종종 더 좋습니다. 모델은 매우 긴 프롬프트의 중간 부분에는 덜 집중하므로, 오래된 사건에 대한 깔끔한 요약과 최근 12개 메시지를 합치면 30,000개의 원시 토큰보다 일관되게 읽힙니다. 많은 프론트엔드에는 요약 또는 "메모리" 기능이 있습니다. 대화가 몇천 토큰을 넘으면 이를 사용하세요.
가격은 입력 1M당 $0.15, 출력 1M당 $0.50입니다. 실패하거나 거부된 요청은 요금이 부과되지 않으며, 크레딧은 만료되지 않습니다. 충전 금액, 보너스 및 카드와 암호화폐를 포함한 결제 방법은 가격 책정 페이지를 참조하세요.
수주 동안 캐릭터 일관성 유지하기
긴 세션의 캐릭터는 어긋납니다. 해결책은 주로 기록 관리이며, 잘 수행하면 토큰 비용이 매우 적게 듭니다.
이름, 성격, 말버릇, 관계 등 절대 변하지 않는 사실 블록을 유지하세요. 현재 상황, 진행 중인 줄거리, 약속 등 가끔 수동으로 업데이트하는 두 번째 블록을 유지하세요. 이 둘을 시스템 프롬프트나 클라이언트의 메모리 필드에 붙여넣고 각각 약 500 토큰 이하로 유지하세요. 합계는 최대 1,000 토큰이며, 입력 요금으로 응답당 $0.00015가 듭니다.
라이브 채팅에는 최근 대화만 유지하세요. 장면이 끝나면 두세 문장의 요약을 두 번째 블록에 작성하고 이전 메시지를 지우세요. 캐릭터의 반응이 선명해지고, 읽기 속도가 빨라지며, 세션이 거듭될수록 비용이 오르지 않고 회당 10분의 1센트 수준으로 유지됩니다.
하나의 채팅에서 여러 캐릭터를 실행할 경우, 누가 언제 말하는지 명시하세요. "사용자가 다른 캐릭터를 요청할 때까지 Mara의 줄만 작성하세요"와 같은 문장은 모델이 모든 캐릭터를 동시에 서술하는 것을 방지하며, 이는 응답을 짧고 저렴하게 유지하는 데에도 도움이 됩니다.
429 오류 및 이상한 응답 해결
역할극 앱은 실수로 속도 제한을 쉽게 유발합니다: 브라우저 탭 두 개, "재생성" 버튼 두 번 누르기, 여러 캐릭터가 동시에 답변하는 그룹 채팅 등. API는 HTTP 429와 이러한 원인 중 하나로 응답합니다.
- 오류 코드
concurrency. 키가 허용하는 것보다 더 많은 요청이 처리 중입니다. 불필요한 탭을 닫고 스트리밍이 끝날 때까지 기다리거나 캐릭터의 병렬 응답을 끄세요. 스트리밍은 끝날 때까지 슬롯을 점유한다는 점을 기억하세요. - 오류 코드
rate_limited. 분당 너무 많은 요청을 보냈습니다. 속도를 줄이세요. 사람이 타이핑할 때는 분당 300회를 거의 넘지 않지만, 자동 스와이프 루프는 체험 키에서 분당 60회에 도달할 수 있습니다. Retry-After: 5헤더가 있는 429 오류. 서비스가 일시적으로 과부하 상태입니다. 5초 기다렸다가 다시 전송하세요.
응답이 잘리면 클라이언트의 max_tokens 설정을 확인하세요. 캐릭터가 당신 대신 말한다면 시스템 프롬프트의 규칙을 강화하고 온도를 낮추세요. 앱에서 모델을 찾을 수 없다고 하면 모델 필드가 정확히 uncensored인지 확인하세요 (소문자).
어디에 적합하고 어디에 적합하지 않은가
클라이언트에서 엔드포인트를 직접 선택할 수 있고 토큰당 가격이 고정된 단일 모델을 원한다면 이 모델은 대체재로 작동합니다. 채팅 중 여러 모델 간 전환을 선호한다면 라우터 역할을 대체하지는 않습니다. 이 모델은 공식 API 제공업체가 아닌 독립적인 제공업체에서 제공하는 단일 모델입니다.
모델은 텍스트 전용입니다. 캐릭터 아트, 음성 또는 비디오를 생성하지 않으며, 임베딩은 사용할 수 없습니다. 이러한 기능에 의존하는 클라이언트의 모든 기능은 다른 서비스가 필요합니다. 프롬프트는 학습에 사용되지 않으며, 전체 빠른 시작 가이드는 docs에 있습니다.
질문과 답변
Janitor AI 스타일 설정에 어떤 모델 이름을 입력해야 하나요?
모델 필드에 소문자로 uncensored를 입력하세요. URL에는 https://api.openrouterapi.cc/v1을 사용하고 자신의 키를 사용하세요.
대화 중 429 오류가 발생하는 이유는 무엇인가요?
동시 요청이 너무 많거나(동시성), 분당 요청이 너무 많습니다(속도 제한). 불필요한 탭을 닫고 스트리밍이 끝날 때까지 기다리세요. 체험 키는 동시 2개까지 허용합니다.
모델이 내 캐릭터의 이미지를 생성할 수 있나요?
아니요. 이미지, 오디오 또는 비디오 생성 기능이 없는 텍스트 전용 모델입니다.
역할극 세션의 비용은 얼마인가요?
30,000 토큰의 이력과 300 토큰의 응답이 있을 때, 각 응답 비용은 약 $0.0047이므로 100개 응답은 약 47센트입니다.
키는 양식 하나만 작성하면 받을 수 있습니다
계정을 생성하고 키를 복사한 후 기본 URL을 변경하세요. 설정은 이것으로 끝입니다.