{"language":"kr","translation":{"brand":{"name":"Route Key","label":"label"},"nav":{"home":"Home","dashboard":"대시보드","models":"모델","docs":"문서","blog":"블로그","about":"소개","privacy":"개인정보","terms":"약관"},"menus":{"dashboard":{"eyebrow":"eyebrow","title":"title","items":{"overview":"overview","overviewDesc":"쿼터, 지출, 트래픽 요약","wallet":"wallet","walletDesc":"잔액 충전, 코드 교환, 충전 주문 확인","apiKeys":"api keys","apiKeysDesc":"토큰 목록 및 키 상태","usageLogs":"usage logs","usageLogsDesc":"요청 기록 및 과금 상세","settings":"settings","settingsDesc":"계정 환경설정 및 콘솔 설정"}},"models":{"eyebrow":"eyebrow","title":"title","items":{"catalog":"catalog","catalogDesc":"catalog desc에 대한 설명입니다.","pricing":"pricing","pricingDesc":"pricing desc에 대한 설명입니다.","routing":"routing","routingDesc":"routing desc에 대한 설명입니다.","multimodal":"multimodal","multimodalDesc":"multimodal desc에 대한 설명입니다."}},"docs":{"eyebrow":"eyebrow","title":"title","items":{"quickstart":"quickstart","quickstartDesc":"quickstart desc에 대한 설명입니다.","compatibility":"compatibility","compatibilityDesc":"compatibility desc에 대한 설명입니다.","examples":"examples","examplesDesc":"examples desc에 대한 설명입니다.","billing":"billing","billingDesc":"billing desc에 대한 설명입니다."}},"blog":{"eyebrow":"eyebrow","title":"title","items":{"savings":"savings","savingsDesc":"savings desc에 대한 설명입니다.","routing":"routing","routingDesc":"routing desc에 대한 설명입니다.","models":"models","modelsDesc":"models desc에 대한 설명입니다.","builders":"builders","buildersDesc":"builders desc에 대한 설명입니다."}},"about":{"eyebrow":"eyebrow","title":"title","items":{"origin":"Origin","originDesc":"How Route Key started, when it was founded, and how the product evolved.","team":"Team","teamDesc":"Founder background, core members, and practical delivery capability.","position":"Positioning","positionDesc":"What the site does, which services it provides, and the mission behind it.","mission":"Mission","missionDesc":"Why the product exists and the standards it aims to keep.","forBuilders":"for builders","forBuildersDesc":"for builders desc에 대한 설명입니다.","forTeams":"for teams","forTeamsDesc":"for teams desc에 대한 설명입니다.","partners":"partners","partnersDesc":"partners desc에 대한 설명입니다.","faq":"faq","faqDesc":"faq desc에 대한 설명입니다."}}},"actions":{"exploreModels":"모델 탐색","readDocs":"문서 읽기","copyRequest":"요청 복사","copyFailed":"Copy failed","getYourKey":"Create API key","copied":"복사됨","viewBlueprint":"view blueprint","inspectPricing":"inspect pricing","changeLanguage":"언어 변경","switchTheme":"테마 전환","actions":"작업","openMenu":"메뉴 열기","closeMenu":"메뉴 닫기","cancel":"Cancel","close":"Close","confirm":"Confirm","clear":"Clear","reset":"초기화","refresh":"새로고침","previous":"이전","next":"다음","search":"검색","done":"완료"},"hero":{"status":"라이브 게이트웨이 텔레메트리","fallback":"데모 데이터, 백엔드 동기 준비","kicker":"OpenAI 호환 AI 릴레이","titleA":"AI 키 하나.","titleB":"모든 모델.","accessibleTitle":"OpenAI 호환 AI API 게이트웨이","definition":"OpenAI 호환 AI API 게이트웨이","description":"Route Key은 GPT, Claude, Gemini, DeepSeek, Qwen 등을 하나의 호환 API 게이트웨이로 연결합니다.","discountBadge":"discount badge","promises":{"aggregate":"주요 모델","discount":"할인 라우트","compatible":"즉시 호환 API"},"liveRequests":"live requests","routedToday":"routed today","avgDecision":"avg decision","protectedSpend":"protected spend"},"support":{"eyebrow":"eyebrow","title":"title","description":"OpenAI 호환 게이트웨이에서 모델 접근, 비용, 상태와 트래픽을 한 곳에서 관리합니다."},"contactWidget":{"trigger":"문의하기","title":"문의하기","intro":"요청에 맞는 연락 채널을 선택하세요.","liveChatTitle":"채팅 상담","liveChatDescription":"Route Key 사용 중 도움이 필요할 때 이용하세요.","supportTitle":"고객 지원","supportDescription":"계정, 결제, 기술 또는 후속 문의를 위한 지원입니다.","supportSubject":"Route Key 지원","close":"문의 패널 닫기"},"siteNotice":{"title":"System announcements","loading":"Loading announcement...","empty":"There is no current announcement.","notifications":"Notifications","timeline":"Timeline","dismissToday":"Hide today","close":"Done"},"messageCenter":{"title":"Message center","markAllRead":"Mark all as read","close":"Close","back":"Back to messages","openLink":"Open link","loading":"Loading messages...","empty":"You are all caught up.","types":{"adminMessage":"Admin message","balanceWarning":"Balance alert","securityAlert":"Security alert","supportTicket":"Support ticket","systemAnnouncement":"Announcement","systemErrorAlert":"Critical alert"}},"aboutPage":{"badge":"Route Key 소개","title":"AI 라우팅, 제어, 가시성을 위한 브랜드","description":"Route Key는 AI 모델 접근과 운영을 위한 절제된 사이버 모던 인터페이스를 제공합니다.","heroLabel":"회사 개요","heroCaption":"브랜드 이야기, 팀 역량, 제품 포지셔닝을 한곳에 담았습니다.","indexLabel":"소개 지도","backToTop":"맨 위로","signals":{"story":"브랜드 이야기","team":"팀 프로필","positioning":"포지셔닝"},"sections":{"story":{"title":"브랜드 이야기","content":["Route Key는 AI 모델 접근과 운영을 위한 절제된 사이버 모던 인터페이스를 제공합니다.","브랜드 이야기, 팀 역량, 제품 포지셔닝을 한곳에 담았습니다."]},"path":{"title":"우리의 여정","content":["Route Key는 AI 모델 접근과 운영을 위한 절제된 사이버 모던 인터페이스를 제공합니다.","브랜드 이야기, 팀 역량, 제품 포지셔닝을 한곳에 담았습니다."]},"team":{"title":"팀 프로필","content":["팀 프로필","브랜드 이야기, 팀 역량, 제품 포지셔닝을 한곳에 담았습니다."]},"capability":{"title":"역량","content":["역량","Route Key는 AI 모델 접근과 운영을 위한 절제된 사이버 모던 인터페이스를 제공합니다."]},"positioning":{"title":"포지셔닝","content":["포지셔닝","Route Key는 AI 모델 접근과 운영을 위한 절제된 사이버 모던 인터페이스를 제공합니다."]},"mission":{"title":"미션","content":["미션","Route Key는 AI 모델 접근과 운영을 위한 절제된 사이버 모던 인터페이스를 제공합니다."]}},"mobile":{"imageAlt":"회사 개요","title":"AI 라우팅 제어 브랜드","lead":"모델 접근, 비용, 트래픽 가시성을 위한 게이트웨이.","briefTitle":"세 단계로 보는 브랜드 신호","routing":"Routing","routingValue":"Cost + health","security":"Security","securityValue":"Key isolation","ecosystem":"Ecosystem","ecosystemValue":"Multi-vendor","storySummary":"Route Key는 AI 모델 접근과 운영을 위한 절제된 사이버 모던 인터페이스를 제공합니다.","capabilitySummary":"역량","missionSummary":"미션","statement":"브랜드 이야기, 팀 역량, 제품 포지셔닝을 한곳에 담았습니다."}},"illustrations":{"motionEyebrow":"motion eyebrow","motionTitle":"motion title","motionDescription":"SDK 요청 형식은 유지하고 Route Key가 경로, 가격과 채널 상태를 비교합니다.","motionAlt":"motion alt","routingImageAlt":"routing image alt","pricingImageAlt":"pricing image alt","modelImageAlt":"model image alt","coreLabel":"core label","catalogLabel":"catalog label","policyLabel":"policy label","savingsLabel":"savings label","compatLabel":"compat label","readoutLabel":"readout label"},"footer":{"ariaLabel":"aria label","socialAriaLabel":"Route Key 공식 소셜 프로필","github":"github","contact":"contact","email":"email","privacy":"privacy","terms":"terms","copyright":"copyright {{year}}","restriction":"restriction","refund":"refund"},"command":{"title":"title","subtitle":"subtitle","inbound":"inbound","policy":"policy","selected":"selected","health":"health","routeScore":"route score","costDelta":"cost delta","failover":"failover","streaming":"streaming","accepted":"accepted","evaluated":"evaluated","dispatched":"dispatched"},"mobile":{"eyebrow":"eyebrow","title":"AI 키 하나. 모든 모델.","description":"description에 대한 설명입니다.","quickModels":"모델","quickDocs":"quick docs","quickBlog":"quick blog","drawerSubtitle":"제어 평면"},"sections":{"stackEyebrow":"Route Key의 역할","stackTitle":"AI API 트래픽을 위한 더 선명한 제어 레이어","stackDescription":"stack description에 대한 설명입니다.","modelsEyebrow":"모델 매트릭스","pricingTitle":"정확한 모델 선택 또는 정책 라우팅","pricingDescription":"pricing description에 대한 설명입니다.","developerEyebrow":"빠른 시작","developerTitle":"3단계로 실행"},"cards":{"catalog":"모델 카탈로그","catalogDesc":"벤더, 컨텍스트 창, endpoint, 모델 상태를 확인합니다.","policy":"비용 라우팅","policyDesc":"각 요청 전에 가격, 지연, 가용성으로 라우팅합니다.","billing":"API 키 하나","billingDesc":"한 번 연결하고 여러 제공자를 사용하며 사용량과 잔액을 확인합니다.","speed":"빠른 스트리밍","speedDesc":"건전한 채널 선택으로 낮은 지연의 SSE 응답을 유지합니다.","privacy":"프라이버시 제어","privacyDesc":"키는 마스크되고 로그는 계정 사용량에 제한됩니다.","failover":"폴백 레인","failoverDesc":"코드 변경 없이 비정상 또는 비싼 라우트를 피합니다."},"home":{"offer":{"eyebrow":"현재 혜택","label":"절감","title":"할인된 모델 접근","description":"가격 기반 라우트로 호환 형식을 유지하면서 토큰 비용을 줄입니다."},"speed":{"label":"결정","title":"빠른 라우트 결정","description":"응답 스트림이 앱에 도달하기 전 건전한 채널을 선택합니다."},"privacy":{"title":"프라이버시 가드레일","value":"제한","description":"API 키는 마스크되고 로그는 사용량 가시성에 집중합니다."},"security":{"title":"계정 격리","description":"토큰, 결제, 선호설정은 로그인된 New API 계정에 연결됩니다."},"advantagesEyebrow":"팀들이 사용하는 이유","advantagesTitle":"낮은 비용, 적은 통합 작업, 깨끗한 제어","steps":{"createKey":"키 생성","createKeyDesc":"Dashboard에서 API token을 생성하거나 복사합니다.","replaceUrl":"Base URL 교체","replaceUrlDesc":"SDK를 Route Key 호환 endpoint로 지정합니다.","sendRequest":"요청 전송","sendRequestDesc":"모델을 선택하거나 건전한 할인 레인을 자동 선택합니다."},"agentBridge":{"title":"Use Route Key with coding agents","description":"Codex · Claude Code · Gemini CLI · Cursor","action":"Configure agents"},"requestConsole":{"title":"Request console"},"faq":{"eyebrow":"FAQ","title":"생산 트래픽 라우팅 전 자주 묻는 질문","description":"모델 커버리지, 호환성, 가격, 프라이버시, 속도에 대한 짧은 답변입니다.","items":{"models":{"q":"어떤 모델을 사용할 수 있나요?","a":"Route Key는 가격 backend에서 활성화한 모델을 노출합니다. GPT, Claude, Gemini, DeepSeek, Qwen과 호환 커스텀 채널이 포함될 수 있습니다. Models 페이지에서 공급자, 컨텍스트 길이, endpoint, 사용 가능한 그룹과 정확한 모델 ID를 확인한 뒤 production traffic을 보내세요."},"compatibility":{"q":"SDK 코드를 다시 작성해야 하나요?","a":"보통은 아닙니다. 기존 OpenAI 요청 본문과 SDK 코드를 유지하고 base URL을 Route Key 호환 endpoint로 바꾸며 Route Key API key와 지원 모델 ID를 설정하면 됩니다. 먼저 짧은 비스트리밍 요청을 확인한 다음 streaming, tools, 긴 컨텍스트를 단계적으로 추가하세요."},"pricing":{"q":"할인은 어떻게 동작하나요?","a":"Gateway는 그룹 비율, 입력·출력 토큰 가격, 캐시, 지연 시간과 상태를 비교합니다. 일관성이 필요하면 모델을 고정하고, 아니면 정책이 건강하고 저렴한 route를 고르게 할 수 있습니다. 사용 로그에서 모델, 토큰, 그룹과 비용을 확인해 실제 절감액을 검증하세요."},"privacy":{"q":"API 키와 로그는 어떻게 처리되나요?","a":"키는 콘솔에서 마스크됩니다. 설정된 privacy control에 따라 사용 로그에서 상태, 모델, 비용, 입출력 토큰, 지연 시간과 시각을 확인할 수 있습니다. 앱이나 코딩 에이전트마다 별도 키를 사용하면 권한 교체와 사용량 추적이 쉬워집니다."},"speed":{"q":"라우팅이 응답을 느리게 하나요?","a":"라우팅은 dispatch 전에 결정되므로 요청을 보내기 전에 장애가 있는 채널을 피할 수 있습니다. Streaming endpoint는 SSE 응답 형식을 유지합니다. 배포 후 지연과 오류를 확인하고, provider 장애에는 클라이언트의 무분별한 재시도 대신 명시적인 fallback 정책을 사용하세요."},"production":{"q":"실험용만인가요?","a":"아닙니다. Dashboard에서 전용 API key를 만들고 호환 endpoint와 정확한 모델 ID를 설정한 뒤 짧은 테스트를 보내세요. 응답, 쿼터, 모델, 토큰, 지연과 비용을 사용 로그에서 확인한 후 streaming, 동시성, retry와 fallback을 하나씩 추가하면 production 변경을 관찰하고 되돌리기 쉽습니다."}}}},"labels":{"models":"모델","vendors":"벤더","endpoints":"엔드포인트","groups":"그룹","price":"가격","context":"컨텍스트","latency":"지연","endpoint":"엔드포인트","updated":"업데이트","connected":"연결됨","demo":"데모 모드","live":"Live","trafficControl":"AI traffic control","perMillionTokens":"/ M tokens","savePercent":"Save {{percent}}%","lanes":"{{count}} lanes"},"auth":{"authMode":"auth mode","login":"로그인","register":"가입","loginTitle":"login title","registerTitle":"register title","forgotTitle":"forgot title","resetConfirmTitle":"reset confirm title","loginDescription":"login description에 대한 설명입니다.","registerDescription":"register description에 대한 설명입니다.","forgotDescription":"forgot description에 대한 설명입니다.","resetConfirmDescription":"reset confirm description에 대한 설명입니다.","username":"사용자명","usernamePlaceholder":"username placeholder 입력","usernameRequired":"Username is required.","usernameFormat":"Username can only contain letters, numbers, and underscores.","usernameLength":"Username must be {{min}}-{{max}} characters.","email":"이메일","emailAddress":"Email Address","emailOptional":"Email Address (optional)","emailOrUsername":"Email or username","emailOrUsernamePlaceholder":"Enter email or username","emailPlaceholder":"email placeholder 입력","password":"비밀번호","passwordPlaceholder":"password placeholder 입력","passwordRequired":"Password is required.","passwordRuleLength":"8-64 characters.","passwordRuleTypes":"강력한 혼합 비밀번호를 사용하세요.","passwordRuleNoEdgeSpaces":"No spaces at the beginning or end.","passwordRuleNoIdentity":"사용자명이나 이메일을 비밀번호에 사용하지 마세요.","confirmPassword":"비밀번호 확인","repeatPassword":"Repeat password","repeatPasswordPlaceholder":"Type your password again","showPassword":"show password","hidePassword":"hide password","verificationCode":"verification code","verificationCodePlaceholder":"verification code placeholder 입력","sendCode":"send code","codeCooldown":"code cooldown {{seconds}}","signIn":"로그인","signInWithEmail":"Sign in with Email","signUpWithEmail":"Sign up with Email","continueWith":"Or continue with","google":"Google","github":"GitHub","signInWithProvider":"Sign in with {{provider}}","signUpWithProvider":"Sign up with {{provider}}","oauthStartFailed":"Unable to start provider login. Please try again.","oauthProcessing":"Securing provider session...","oauthSuccess":"Provider session confirmed.","oauthCallbackTitle":"OAuth handshake","oauthCallbackDescription":"Keep this window open while the console verifies the identity token.","oauthCallbackInvalid":"Invalid OAuth callback parameters.","oauthCallbackFailed":"Provider login failed. Please try again.","forgotPassword":"forgot password","sendResetEmail":"send reset email","resetEmailCooldown":"reset email cooldown {{seconds}}","confirmReset":"confirm reset","backToLogin":"back to login","generatedPassword":"generated password","copyPassword":"copy password","createAccount":"계정 생성","needAccount":"need account","haveAccount":"have account","required":"필수 항목입니다.","resetEmailRequired":"필수 항목입니다.","emailRequired":"필수 항목입니다.","emailInvalid":"작업에 실패했습니다. 다시 시도하세요.","captchaImageAlt":"Captcha image","captchaPlaceholder":"Enter captcha","passwordTooShort":"password too short {{min}}","passwordTooLong":"password too long {{max}}","confirmPasswordRequired":"필수 항목입니다.","passwordMismatch":"password mismatch","verificationCodeRequired":"필수 항목입니다.","verificationCodeInvalid":"작업에 실패했습니다. 다시 시도하세요. {{length}}","failed":"인증에 실패했습니다.","successTitle":"로그인됨","registerReadyTitle":"register ready title","registerReadyLogin":"register ready login","registerDisabled":"현재 회원가입이 비활성화되어 있습니다.","verificationSentTitle":"작업이 완료되었습니다.","verificationSent":"작업이 완료되었습니다.","verificationFailed":"작업에 실패했습니다. 다시 시도하세요.","resetEmailSentTitle":"작업이 완료되었습니다.","resetEmailSent":"작업이 완료되었습니다.","resetEmailFailed":"작업에 실패했습니다. 다시 시도하세요.","resetLinkInvalid":"작업에 실패했습니다. 다시 시도하세요.","passwordResetSuccessTitle":"작업이 완료되었습니다.","passwordResetSuccess":"작업이 완료되었습니다.","passwordResetFailed":"작업에 실패했습니다. 다시 시도하세요.","passwordCopiedTitle":"작업이 완료되었습니다.","passwordCopied":"작업이 완료되었습니다.","loginSuccess":"작업이 완료되었습니다.","registerVerifyTitle":"Security verification","riskEmbeddedBrowserWarning":"Your embedded browser environment may be blocked by risk control. Open this page in a standard browser and try again.","riskNetworkWarning":"The current network environment is still being rejected by risk control. Change network or try again later.","riskVerifyHint":"Additional verification is required before retrying registration.","riskVerifyTitle":"Risk control verification","securityCheckDescription":"Complete the configured security check to continue.","turnstileLoadFailed":"Cloudflare Turnstile failed to load. Check your network or refresh the page.","turnstileTimeout":"Cloudflare Turnstile timed out. Please retry the verification."},"gameCaptcha":{"completed":"Verification complete","failedRetrying":"Verification failed. Refreshing challenge.","failedRetryingWithReason":"{{reason}}. Refreshing challenge.","instruction":"Drag modules to build a safe path and avoid hazards.","invalidPlacement":"This module cannot be placed there.","loading":"Loading challenge...","loadFailed":"Game verification failed to load.","pathNotReady":"The path is not ready. Adjust the modules and retry.","required":"Complete the game verification first.","secureTransportFailed":"This browser does not support secure verification. Please upgrade and retry.","verifyFailed":"Game verification failed.","verifyPath":"Verify path"},"account":{"menu":"menu","apiKeys":"API 키","billing":"잔액 및 결제","tickets":"Tickets","settings":"설정","logout":"로그아웃"},"pages":{"docs":{"eyebrow":"Developer documentation"},"models":{"eyebrow":"Model catalog","endpointEyebrow":"Endpoint spotlight"},"legal":{"navLabel":"Legal navigation","signalLabel":"Legal signals"},"privacy":{"eyebrow":"Privacy policy","title":"Privacy Policy","lead":"How Route Key handles account, API, usage, billing, and support data.","mapLabel":"Privacy sections","signals":{"handling":"Data handling","security":"Security posture","choices":"User choices"}},"terms":{"eyebrow":"Terms of use","title":"Terms of Use","lead":"Service access, account responsibility, billing, and platform obligations.","mapLabel":"Terms sections","signals":{"access":"Service access","obligations":"User obligations","commercial":"Commercial terms"}}},"docsPage":{"title":"문서","subtitle":"연동 가이드","breadcrumbLabel":"Breadcrumb","badge":"문서","backToTop":"맨 위로","heading":"한 번 연결하고 모든 모델로 라우팅하세요.","description":"A Route Key documentation surface for the compatible endpoints: create keys, replace the base URL, choose models, then inspect usage and billing from Dashboard.","search":"문서 검색","searchPlaceholder":"모델, 벤더, 태그, 엔드포인트 검색...","itemCount":"{{count}} items","modelsIndexed":"모델 색인됨","endpointCount":"{{count}}개 엔드포인트","modelEndpoints":"모델 API 엔드포인트","providerCategories":"제공자 카테고리","modelApiGroup":"model APIs","referenceDescription":"OpenAI, Anthropic, Gemini, Qwen, DeepSeek, Grok, MiniMax 등과 호환되는 형식으로 Route Key를 사용할 수 있습니다.","commonErrors":"일반 오류","baseUrl":"base url","categories":{"quickstart":"Quick Start","concepts":"핵심 개념","models":"모델 선택","reference":"API Reference"},"quickstart":{"createKey":"Create a key","createKeyDesc":"Open Dashboard \u003e API Keys, create or copy a token, and keep the full key private.","setBaseUrl":"Set baseURL","setBaseUrlDesc":"Point your SDK or HTTP client to the Route Key relay URL while keeping familiar request bodies.","pickModel":"Pick a model","pickModelDesc":"Start with a low-cost chat model, then compare pricing, groups and endpoints on the Models page.","verifyLogs":"Verify logs","verifyLogsDesc":"After the first request, check Usage Logs for model, token, latency and cost confirmation."},"quickstartCheck":"First integration checklist","checks":{"key":"Use Authorization: Bearer sk-xxxx","baseUrl":"Replace only the provider base URL","logs":"Confirm the call in Usage Logs"},"concepts":{"apiKey":"API 키","apiKeyDesc":"API 키","baseUrl":"Base URL","baseUrlDesc":"Route Key는 OpenAI 형식을 유지하고 SDK의 대상만 바꿉니다.","modelName":"모델 이름","modelNameDesc":"모델 이름은 payload에 유지되며 백엔드가 라우팅을 결정합니다.","billing":"사용량 및 결제","billingDesc":"비용, 토큰, 지연 시간은 사용 로그에 표시됩니다."},"modelDefaults":"Model defaults","modelDefaultsDesc":"모델 선택","fromPricing":"From /api/pricing","routingAdvice":"Routing posture","routingLevels":{"0":"Start with low-cost chat","1":"추론 또는 코드","2":"사용량 및 결제"},"recommendations":{"general":"일반 채팅","generalHint":"일반 채팅","reasoning":"추론 또는 코드","reasoningHint":"추론 또는 코드","longContext":"Long context","longContextHint":"Use when prompts carry large documents or long conversation history."},"referenceList":"{{count}}개 엔드포인트","endpointDetails":"Endpoint details","authentication":"인증","parameters":"파라미터","response":"응답","example":"Example","codeExamples":"Code examples","requestExample":"요청 예시","responseExample":"응답 예시","curlExample":"cURL 예시","name":"Name","type":"유형","required":"필수","descriptionLabel":"Description","yes":"예","no":"아니요","noParameters":"필수 파라미터가 없습니다.","authBearer":"Authorization: Bearer sk-your-key","authRealtime":"Authorization: Bearer sk-your-key","authSession":"Requires the browser session created by /api/user/login.","authCookieOptional":"Public pricing can usually be read without login; authenticated deployments may require cookies.","contentType":"Content-Type","authorizationHeader":"Authorization","authHeaderHelp":"Add this value to the HTTP request headers.","noAuthRequired":"-","endpointContext":"엔드포인트 정보","coreConceptsDescription":"핵심 개념","commonErrorsDescription":"첫 실패는 인증, 모델 이름, 쿼터 또는 요청 형식 때문인 경우가 많습니다.","notes":"참고","notesCompatible":"Use the same request shape as the matching provider API when the backend channel is enabled.","errors":{"authenticationTitle":"인증","unauthorizedDesc":"인증","accessTitle":"사용량 및 결제","modelDesc":"모델 이름은 payload에 유지되며 백엔드가 라우팅을 결정합니다.","quotaTitle":"사용량 및 결제","quotaDesc":"비용, 토큰, 지연 시간은 사용 로그에 표시됩니다.","payloadTitle":"일반 오류","payloadDesc":"첫 실패는 인증, 모델 이름, 쿼터 또는 요청 형식 때문인 경우가 많습니다."},"markdownDocs":{"quickstart":"# 빠른 시작\n\nRoute Key을 주요 모델 API의 호환 릴레이로 사용합니다.\n\n1. 대시보드에서 API 키를 만들거나 복사합니다.\n2. 제공자 base URL을 Route Key 릴레이 URL로 바꿉니다.\n3. 요청 본문은 그대로 유지하고 지원 모델명을 선택합니다.\n4. 첫 호출 후 사용 로그를 확인합니다.\n","concepts":"# 핵심 개념\n\nAPI 키, Base URL, 모델명, 사용량과 결제를 이해하면 연동 디버깅이 쉬워집니다.\n","models":"# 모델 선택\n\n먼저 위험이 낮은 endpoint로 연동을 확인한 뒤 필요할 때 더 강한 모델로 이동합니다.\n","errors":"# 자주 나오는 오류\n\n초기 실패는 대부분 인증, 모델명, 쿼터, 요청 형식 문제입니다.\n","referenceOverview":"# API 참조\n\n각 제공자의 공식 API와 호환되는 요청 형식으로 모델 서비스를 호출합니다.\n","openai":"# OpenAI 호환 endpoint\n\n모델 목록, chat completions, Responses, 이미지, 비디오, 오디오, embeddings, moderation, realtime, Codex를 다룹니다.\n","anthropic":"# Anthropic endpoint\n\nClaude 모델은 Messages 요청 형식을 사용합니다.\n","gemini":"# Gemini endpoint\n\nGemini는 generateContent 페이로드와 비디오 작업을 지원합니다.\n","qwen":"# Qwen endpoint\n\nQwen은 chat, Responses, 이미지, embeddings, rerank를 포함합니다.\n","deepseek":"# DeepSeek endpoint\n\nDeepSeek은 OpenAI 호환 chat completions와 text completions를 지원합니다.\n","grokXai":"# Grok / xAI endpoint\n\nGrok은 chat, Responses, 이미지, 비디오를 다룹니다.\n","minimax":"# MiniMax endpoint\n\nMiniMax는 chat, 이미지, 음성 합성을 지원합니다.\n","xunfei":"# Xunfei Spark endpoint\n\nSpark 모델은 표준 텍스트 대화에 OpenAI 호환 chat completions 라우트를 사용합니다.\n"},"endpointCopy":{"openai-models":{"title":"List Models","format":"Official API-compatible models","description":"Lists currently available OpenAI-style models. Anthropic and Gemini model-list requests can be routed by compatible headers when enabled."},"openai-chat":{"title":"Create Chat Completion","format":"OpenAI Chat Completions","description":"Creates a model response from conversation history with streaming, tools, and usage accounting."},"openai-responses":{"title":"Create Response","format":"OpenAI Responses","description":"Creates a Responses API response, including scenarios that need compact response formats."},"openai-images":{"title":"Image Generations","format":"OpenAI Images","description":"Creates images with generation or editing capabilities depending on the upstream model."},"openai-video":{"title":"Create Video","format":"OpenAI Sora Task","description":"Submits a Sora/OpenAI video generation task handled by the relay and upstream channel."},"openai-audio-speech":{"title":"Create Speech","format":"OpenAI Audio","description":"Converts text to speech and returns audio binary content."},"openai-embeddings":{"title":"Create Embeddings","format":"OpenAI Embeddings","description":"Creates text embeddings for retrieval, clustering, and similarity search."},"openai-moderations":{"title":"Create Moderation","format":"OpenAI Moderations","description":"Moderates input text and returns category results."},"openai-realtime":{"title":"Realtime Connection","format":"OpenAI Realtime WebSocket","description":"Opens a WebSocket realtime session and forwards event streams."},"anthropic-messages":{"title":"Create Message","format":"Anthropic Messages","description":"Creates a model response using Claude native Messages format."},"gemini-generate":{"title":"Generate Content","format":"Gemini Native","description":"Creates text or multimodal responses through Gemini native generateContent."},"gemini-images":{"title":"Gemini Image Generation","format":"Gemini Native Image","description":"Creates image content through Gemini multimodal generation."},"gemini-video":{"title":"Gemini / Veo Video Task","format":"Gemini Task Adaptor","description":"Submits Gemini/Veo video tasks and lets the relay manage task status."},"ali-chat":{"title":"Qwen Chat Completion","format":"Ali Official-Compatible","description":"Calls Qwen chat models with a format compatible with the official Qwen API."},"ali-responses":{"title":"Qwen Responses","format":"Ali Responses","description":"Calls Qwen models through the Responses format."},"ali-images":{"title":"Qwen Image","format":"Ali Image","description":"Calls Ali image generation or editing models."},"ali-embeddings":{"title":"Qwen Embeddings","format":"Ali Embeddings","description":"Creates text embeddings with Ali embedding models."},"ali-rerank":{"title":"Qwen Rerank","format":"Ali Rerank","description":"Reranks candidate documents by relevance."},"xunfei-chat":{"title":"Spark Chat Completion","format":"Xunfei Official-Compatible","description":"Calls Xunfei Spark chat models with a format compatible with the official Spark API."},"deepseek-chat":{"title":"DeepSeek Chat Completion","format":"DeepSeek Official-Compatible","description":"Calls DeepSeek chat completion models."},"deepseek-completions":{"title":"DeepSeek Completion","format":"DeepSeek Official-Compatible","description":"Calls DeepSeek models through the text completions format."},"xai-chat":{"title":"Grok Chat Completion","format":"xAI Official-Compatible","description":"Calls Grok chat models with a format compatible with the official Grok API."},"xai-responses":{"title":"Grok Responses","format":"xAI Responses","description":"Calls Grok models through the Responses format."},"xai-images":{"title":"Grok Image Generation","format":"xAI Image Adaptor","description":"Creates images with Grok image generation models."},"xai-video":{"title":"Grok Video Model","format":"xAI Video Model Entry","description":"Submits Grok video generation tasks through the video model entry."},"minimax-chat":{"title":"MiniMax Chat Completion","format":"MiniMax OpenAI-Compatible Route","description":"Calls MiniMax chat models through an OpenAI-compatible route."},"minimax-images":{"title":"MiniMax Image Generation","format":"MiniMax Image Adaptor","description":"Creates images with MiniMax image generation models."},"minimax-audio":{"title":"MiniMax Speech","format":"MiniMax TTS Adaptor","description":"Converts text to speech with MiniMax speech models."},"codex-responses":{"title":"Codex Responses","format":"Codex Responses","description":"Calls Codex models through the Responses format for coding tasks."},"codex-responses-compact":{"title":"Codex Responses Compact","format":"Codex Compact Responses","description":"Calls compact Codex response models for patching and coding workflows."}},"endpointFeatures":{"audio":{"title":"오디오","description":"오디오"},"anthropic":{"title":"Messages","description":"Claude Messages"},"chat":{"title":"채팅","description":"채팅"},"codex":{"title":"Codex","description":"Codex Responses"},"completions":{"title":"Completions","description":"Text completions"},"embeddings":{"title":"Embeddings","description":"Embeddings"},"gemini":{"title":"콘텐츠 생성","description":"콘텐츠 생성"},"images":{"title":"이미지","description":"이미지"},"models":{"title":"모델","description":"모델"},"moderations":{"title":"Moderation","description":"Moderation"},"realtime":{"title":"실시간","description":"실시간"},"rerank":{"title":"Rerank","description":"Rerank"},"responses":{"title":"Responses","description":"Responses API"},"videos":{"title":"Video","description":"Video generation"}},"params":{"model":"모델 이름","messages":"채팅","input":"Input","instructions":"Instructions","tools":"Tools","stream":"실시간","maxOutputTokens":"Max output tokens","prompt":"Prompt","n":"Count","size":"Size","quality":"Quality","responseFormat":"Response format","inputReference":"Reference input","seconds":"Seconds","voice":"Voice","speed":"Speed","encodingFormat":"Encoding format","dimensions":"Dimensions","contents":"콘텐츠 생성","generationConfig":"Generation config","safetySettings":"Safety settings","query":"Query","documents":"Documents","topN":"Top N","temperature":"Temperature","topP":"Top P","maxTokens":"Max tokens","system":"System"},"responseFields":{"data":"Data","id":"ID","object":"Object","choices":"Choices","usage":"Usage","output":"Output","created":"Created","status":"Status","progress":"Progress","binary":"Binary","results":"Results","events":"Events","type":"유형","content":"Content","candidates":"Candidates","usageMetadata":"Usage","model":"모델 이름","size":"Size"},"reference":{"modelsTitle":"List Models","modelsDesc":"Lists OpenAI-style models available through the relay.","modelsResponse":"Result array or provider-compatible model data.","pricingTitle":"List Pricing","pricingDesc":"Reads model ratios, groups, vendors, and supported endpoint types from the pricing endpoint.","pricingResponse":"Pricing records and group metadata used by the Models page.","userTitle":"Current User","userDesc":"Returns the logged-in user for Dashboard personalization.","userResponse":"Current account profile, quota and usage fields.","compatibleDesc":"OpenAI-compatible {{endpoint}} endpoint routed through compatible channels.","providerResponse":"Provider-compatible response body.","chatTitle":"Create Chat Completion","responsesTitle":"Create Response","messagesTitle":"Create Message","imagesTitle":"Create Image","audioTitle":"Create Audio","embeddingsTitle":"Create Embedding","moderationsTitle":"Create Moderation"}},"modelsPage":{"title":"AI 모델 API 가격 비교","backToTop":"Back to top","description":"GPT, Claude, Gemini, DeepSeek, Grok, Qwen 등 AI API 비용 신호를 Route Key로 라우팅하기 전에 비교할 수 있습니다.","pricingGuideEyebrow":"AI API 가격 가이드","pricingGuideTitle":"프로덕션 트래픽 전에 토큰 비용 비교","pricingGuideIntro":"AI API 가격은 입력, 출력, 캐시, 결제 그룹, endpoint에 따라 달라집니다. 품질과 예산에 맞는 모델을 한 카탈로그에서 비교하세요.","catalogEyebrow":"비교 리소스","catalogTitle":"모델 가격 비교로 계속하기","catalogIntro":"현재 모델 신호는 라이브 카탈로그에서 확인하고, 더 깊은 가격 비교나 연동 절차는 가이드에서 이어서 확인하세요.","pricingFaqEyebrow":"AI API 가격 FAQ","pricingFaqTitle":"모델 비용에 대한 자주 묻는 질문","pricingFaqAriaLabel":"AI API 가격 FAQ","pricingGuideIllustrationAlt":"AI 모델 가격 및 라우팅 안내 이미지","modelIndexTitle":"전체 모델 ID 색인","modelIndexSummary":"사용 가능한 모델 ID {{count}}개 보기","modelIndexDescription":"가격 카탈로그가 현재 반환하는 모든 모델 ID를 확인하세요. ID를 선택하면 라이브 모델 표를 필터링할 수 있습니다.","pricingConcepts":{"inputOutputTitle":"입력, 출력, 캐시 가격","inputOutputDescription":"입력 토큰은 프롬프트와 컨텍스트, 출력 토큰은 생성 콘텐츠입니다. 반복 컨텍스트는 캐시 가격도 확인하세요.","billingTitle":"토큰 기반과 요청 기반 결제","billingDescription":"대부분의 모델은 토큰 기준이며 일부 endpoint는 요청당 비용이나 다른 단위를 사용합니다.","ratioTitle":"그룹 비율과 모델 비율","ratioDescription":"그룹 비율은 계정 또는 채널 배수이고 모델 비율은 모델별 조정값입니다.","providerTitle":"GPT, Claude, Gemini, DeepSeek, Qwen 비교","providerDescription":"벤더와 검색 필터를 사용해 지원 모델 제품군을 같은 카탈로그에서 비교하세요.","endpointTitle":"올바른 endpoint 선택","endpointDescription":"chat, responses, embeddings, 이미지, 오디오 등 요청 유형 지원 여부를 확인하세요.","selectionTitle":"실용적인 모델 선택 절차","selectionDescription":"품질부터 확인한 뒤 비용, 컨텍스트, 지연 시간, 상태를 비교하고 작은 테스트 후 확장하세요."},"pricingGuideLinks":"개발자 문서 또는 통합 가이드에서 첫 요청을 보내세요.","integrationGuideLink":"통합 가이드","filters":"필터","vendor":"벤더","group":"그룹","billing":"결제","tags":"tags","endpoint":"엔드포인트","context":"컨텍스트","search":"모델 검색","searchPlaceholder":"모델, 벤더, 태그, 엔드포인트 검색...","currency":"currency","unit":"unit","ratio":"ratio","cardView":"카드 보기","tableView":"테이블 보기","resultSummary":"result summary {{shown}} {{total}}","activeFilters":"active filters {{count}}","pageSize":"페이지 크기","copyModel":"모델명 복사","noDescription":"가격 엔드포인트에서 모델 설명을 제공하지 않았습니다.","input":"입력","output":"출력","cache":"캐시","officialPrice":"공식","groupRatio":"그룹 배율","modelRatio":"모델 배율","completionRatio":"completion ratio","cacheRatio":"캐시 배율","usedGroup":"사용 그룹","perRequest":"요청당","perToken":"토큰당","priceBasis":"1M 토큰 기준","allVendors":"모든 벤더","allGroups":"모든 그룹","allBilling":"모든 결제 방식","allTags":"모든 태그","allEndpoints":"모든 엔드포인트","model":"model","actions":"작업","pagination":"pagination {{start}} {{end}} {{total}}","groupPricing":"그룹 가격","selectGroupPreview":"가격을 미리 볼 그룹 선택","selectGroupPreviewDescription":"같은 모델이 여러 계정 그룹에서 사용될 수 있습니다. 그룹을 선택하면 아래 가격이 해당 그룹 비율로 업데이트됩니다.","activeRatio":"활성 비율","closeDetails":"모델 상세 닫기","basicInfo":"기본 정보","notAvailable":"사용 불가","emptyTitle":"empty title","emptyDescription":"empty description에 대한 설명입니다."},"integrationGuide":{"heroTitle":"앱과 코딩 에이전트 연결","heroDescription":"Route Key API 키 하나와 호환 게이트웨이로 앱, SDK, 코딩 도구를 연결하세요.","beforeKicker":"시작하기 전에","beforeTitle":"안전하고 재현 가능한 API 연결 준비","beforeDescription":"Route Key는 OpenAI 호환 요청 형식을 사용합니다. base URL, API 키, 지원 모델 ID가 필요합니다.","apiKeyTitle":"API 키 생성 및 보호","apiKeyDescription":"Dashboard에서 키를 만들고 앱이나 도구마다 전용 키를 사용하세요. 환경 변수나 시크릿 저장소에 보관하고 코드와 로그에 노출하지 마세요.","requestValuesTitle":"요청의 세 가지 값 이해","requestValuesDescription":"base URL은 게이트웨이, Bearer 토큰은 인증, 모델 ID는 활성 모델을 선택합니다. Models 페이지의 정확한 ID를 사용하세요.","accessTitle":"전체 배포 전 접근 확인","accessDescription":"잔액 또는 쿼터, 모델 그룹, endpoint 지원 여부를 확인하세요. 짧은 비스트리밍 요청이 문제를 가장 빠르게 분리합니다.","stepOneKicker":"단계 01","stepOneTitle":"AI 애플리케이션 연결","stepOneDescription":"세 가지 값으로 첫 호환 요청을 보낼 수 있습니다.","baseUrl":"Base URL","authorization":"Authorization","model":"모델","modelDescription":"Models에서 활성 ID를 선택하세요.","firstRequest":"첫 작동 요청","verifyKicker":"연결 확인","verifyTitle":"첫 응답과 사용 로그 확인","verifyDescription":"정상 HTTP 응답은 URL, 모델, 형식, 쿼터가 맞는지 보여줍니다. 첫 테스트는 작고 결정적으로 유지하세요.","verifyStepOne":"짧은 요청을 보내고 일반 응답 또는 스트림을 확인합니다.","verifyStepTwo":"응답한 모델 ID와 endpoint를 기록해 설정을 재현합니다.","verifyStepThree":"사용 로그에서 요청, 토큰, 지연 시간, 비용을 확인합니다.","verifyStepFour":"스트리밍, 도구, 긴 컨텍스트, 동시 실행을 하나씩 추가합니다.","authErrorTitle":"401 또는 403 인증 오류","authErrorDescription":"Authorization: Bearer 접두사, 공백, 키 상태, /v1 base URL을 확인하세요.","modelErrorTitle":"모델을 찾을 수 없거나 사용할 수 없음","modelErrorDescription":"Models에서 활성 모델 ID를 복사하고 그룹과 endpoint를 확인하세요.","quotaErrorTitle":"쿼터, 잔액 또는 속도 오류","quotaErrorDescription":"지갑, 계정 제한, 사용 로그를 확인하고 테스트의 동시 실행이나 출력을 줄이세요.","stepTwoKicker":"단계 02","stepTwoTitle":"코딩 에이전트 설정","stepTwoDescription":"도구마다 전용 키를 사용하고 맞는 설정 프로필을 복사하세요.","agentSetup":"Route Key 호환 설정","officialDocs":"공식 문서","officialDownload":"공식 다운로드","agentCheckKey":"전용 Route Key API 키를 만드세요.","agentCheckModel":"Models에서 활성 모델을 선택하세요.","agentCheckLogs":"도구를 재시작하고 사용 로그를 확인하세요.","operationalKicker":"운영 체크리스트","operationalTitle":"모든 통합을 유지보수 가능하게","operationalDescription":"OpenAI 호환성은 이전 작업을 줄이지만 도구별 키, 검증된 모델, 설정 가능한 base URL과 관찰 가능성이 필요합니다.","docsLink":"개발자 문서 읽기","modelsLink":"지원 모델 비교","faq":{"sdkQuestion":"기존 OpenAI SDK를 사용할 수 있나요?","sdkAnswer":"대부분 가능합니다. SDK 형식을 유지하고 base URL을 Route Key /v1로 설정한 뒤 Route Key API 키를 전달하세요.","keyQuestion":"여러 도구가 하나의 키를 공유해야 하나요?","keyAnswer":"아니요. 앱이나 에이전트별 키가 로그 확인과 교체를 안전하게 만듭니다.","costQuestion":"비용 차이는 어디서 조사하나요?","costAnswer":"사용 로그에서 모델, 그룹 비율, 입출력 토큰, endpoint, 시간을 비교한 뒤 가격 카탈로그를 확인하세요."}},"dashboard":{"title":"대시보드","subtitle":"subtitle","console":"콘솔","overview":"개요","overviewDesc":"쿼터, 지출, 트래픽 요약","wallet":"지갑","walletDesc":"잔액 충전, 코드 교환, 충전 주문 확인","apiKeys":"API 키","apiKeysDesc":"토큰 목록 및 키 상태","usageLogs":"사용 로그","usageLogsDesc":"요청 기록 및 과금 상세","session":"세션","guest":"guest","syncing":"syncing","accountData":"account data","usageStatistics":"사용 통계","resourceConsumption":"리소스 소비","performanceMetrics":"성능 지표","balance":"balance","historicalUsage":"historical usage","periodRequests":"period requests","statisticalRequests":"statistical requests","periodCost":"period cost","statisticalTokens":"statistical tokens","averageRpm":"평균 RPM","averageTpm":"평균 TPM","modelAnalytics":"모델 분석","modelAnalyticsDesc":"model analytics desc에 대한 설명입니다.","quotaDistribution":"비용","callTrend":"추세","trendPeak":"피크","trendTotal":"합계","trendPoints":"{{count}}개 포인트","unknownModel":"unknown model","noUsageData":"최근 사용 데이터가 없습니다","apiInfo":"API 정보","apiInfoEmpty":"api info empty","walletBalance":"지갑 잔액","walletUsed":"wallet used","walletRedeem":"교환 코드","walletRedeemDesc":"wallet redeem desc에 대한 설명입니다.","walletRedeemPlaceholder":"wallet redeem placeholder 입력","walletRedeemAction":"wallet redeem action","walletRedeemSuccess":"작업이 완료되었습니다.","walletRedeemFailed":"작업에 실패했습니다. 다시 시도하세요.","walletRedeemAdded":"wallet redeem added {{value}}","walletPaymentMethod":"결제 방법","walletPaymentDesc":"wallet payment desc에 대한 설명입니다.","walletNoPaymentMethods":"wallet no payment methods","walletMinTopup":"wallet min topup {{value}}","walletMinTopupHint":"Please enter the recharge amount, starting from {{value}} USD.","walletAmount":"wallet amount","walletWaffoAuto":"wallet waffo auto","walletEstimated":"wallet estimated","walletEstimating":"wallet estimating","walletPayAction":"wallet pay action","walletPayConfirmTitle":"Confirm {{asset}} recharge","walletPayConfirmAction":"Confirm and continue","walletPayConfirmCancel":"Back to edit","walletPayConfirmDesc":"Use the {{network}} network and transfer exactly to the address and amount shown on the payment page. Do not round, underpay, overpay, or deduct exchange withdrawal fees. Only one pending {{asset}} order is kept within 30 minutes.","walletPayFailed":"작업에 실패했습니다. 다시 시도하세요.","walletRedirecting":"wallet redirecting","walletPaymentOpened":"wallet payment opened","walletRequestFailed":"작업에 실패했습니다. 다시 시도하세요.","walletNoPaymentLink":"wallet no payment link","walletUsdtReminderTitle":"{{asset}} recharge notice","walletUsdtConfirmExactAmount":"Please confirm that you will use the {{network}} network and transfer exactly to the address and amount shown on the payment page.","walletUsdtConfirmNetwork":"Network","walletUsdtReminderAmount":"Do not round, underpay, or overpay. Pay exchange withdrawal fees separately and do not deduct them from the payable amount.","walletUsdtReminderSupport":"If the amount does not match, the recharge may not be credited automatically. If it is not credited, keep the TxID and contact support.","walletUsdtConfirmPendingLimit":"After submission, this account can keep only one pending {{asset}} order within 30 minutes.","walletUsdtConfirmNoCancel":"The order cannot be cancelled manually. It will be credited automatically after successful payment, or timeout automatically after 30 minutes if unpaid.","walletHistory":"충전 내역","walletHistoryDesc":"wallet history desc에 대한 설명입니다.","walletSearchOrder":"주문 번호 검색","walletNoOrders":"wallet no orders","walletPaid":"wallet paid","walletHistoryWindow":"wallet history window","walletHistoryWindowDesc":"wallet history window desc에 대한 설명입니다.","orderNo":"order no","paymentMethod":"payment method","walletStatus":{"success":"작업이 완료되었습니다.","pending":"pending","failed":"작업에 실패했습니다. 다시 시도하세요.","expired":"expired"},"settings":"설정","settingsDesc":"계정 환경설정 및 콘솔 설정","tickets":"Tickets","ticketsDesc":"Track support tickets and payment issues","copyFailed":"Copy failed","settingsEmpty":"settings empty","emailBinding":"email binding","emailBindingDesc":"email binding desc에 대한 설명입니다.","currentEmail":"current email","notBound":"not bound","changeEmail":"change email","bindEmail":"Bind Email","emailAddress":"Email Address","emailBindDesc":"Bind an email address to your account.","emailBindChangeDesc":"Current email: {{email}}. Enter a new email to change.","emailBindEmailPlaceholder":"Enter your email","verificationCode":"Verification Code","verificationCodePlaceholder":"Enter code","emailBindCooldown":"{{seconds}}s","emailBindEmailInvalid":"Please enter a valid email address.","emailBindCodeRequired":"Please enter the verification code.","emailBindCodeSent":"Verification code sent","emailBindCodeSentDesc":"Please check your email for the verification code.","emailBindCodeSendFailed":"Failed to send verification code.","emailBound":"Email bound successfully","emailBoundDesc":"Your account email binding has been updated.","emailBindFailed":"Failed to bind email.","accountSecurity":"account security","accountSecurityDesc":"account security desc에 대한 설명입니다.","changePassword":"비밀번호 변경","changePasswordDesc":"change password desc에 대한 설명입니다.","currentPassword":"현재 비밀번호","currentPasswordPlaceholder":"current password placeholder 입력","newPassword":"new password","newPasswordPlaceholder":"new password placeholder 입력","confirmNewPassword":"confirm new password","confirmNewPasswordPlaceholder":"confirm new password placeholder 입력","passwordRequired":"필수 항목입니다.","passwordSameAsCurrent":"password same as current","passwordChanged":"작업이 완료되었습니다.","passwordChangedDesc":"password changed desc에 대한 설명입니다.","passwordChangeFailed":"작업에 실패했습니다. 다시 시도하세요.","preferences":"preferences","preferencesDesc":"preferences desc에 대한 설명입니다.","languagePreference":"언어 설정","languagePreferenceDesc":"language preference desc에 대한 설명입니다.","notificationSettings":"알림 설정","notificationSettingsDesc":"notification settings desc에 대한 설명입니다.","notificationMethod":"notification method","emailNotification":"email notification","webhookNotification":"webhook notification","barkNotification":"bark notification","gotifyNotification":"gotify notification","notificationEmail":"notification email","notificationEmailPlaceholder":"notification email placeholder 입력","balanceWarningThreshold":"balance warning threshold","balanceWarningThresholdDesc":"balance warning threshold desc에 대한 설명입니다.","webhookUrl":"Webhook URL","webhookUrlPlaceholder":"https://example.com/webhook","webhookSecret":"Webhook Secret","webhookSecretPlaceholder":"Enter secret key","barkUrl":"Bark Push URL","barkUrlPlaceholder":"https://api.day.app/yourkey/{{title}}/{{content}}","barkUrlDesc":"Template variables: {{title}}, {{content}}","gotifyUrl":"Gotify Server URL","gotifyUrlPlaceholder":"https://gotify.example.com","gotifyToken":"Gotify Application Token","gotifyTokenPlaceholder":"Enter application token","gotifyPriority":"Message Priority","settingsValidationFailed":"Check settings","settingsSaveFailed":"Settings save failed","settingsSaveFailedDesc":"Failed to update settings. Please try again.","balanceWarningThresholdInvalid":"Balance warning threshold must be greater than 0.","notificationEmailInvalid":"Enter a valid notification email address.","webhookUrlRequired":"Webhook URL is required.","webhookUrlInvalid":"Enter a valid HTTP or HTTPS Webhook URL.","barkUrlRequired":"Bark push URL is required.","barkUrlInvalid":"Enter a valid HTTP or HTTPS Bark push URL.","gotifyUrlRequired":"Gotify server URL is required.","gotifyUrlInvalid":"Enter a valid HTTP or HTTPS Gotify server URL.","gotifyTokenRequired":"Gotify application token is required.","gotifyPriorityInvalid":"Gotify priority must be between 0 and 10.","privacySettings":"개인정보 설정","privacySettingsDesc":"privacy settings desc에 대한 설명입니다.","acceptModelsWithoutPricing":"accept models without pricing","acceptModelsWithoutPricingDesc":"accept models without pricing desc에 대한 설명입니다.","recordRequestIp":"record request ip","recordRequestIpDesc":"record request ip desc에 대한 설명입니다.","logoutDesc":"logout desc에 대한 설명입니다.","settingsSaved":"설정이 저장되었습니다.","languageSaved":"설정이 저장되었습니다.","notificationSaved":"설정이 저장되었습니다.","privacySaved":"설정이 저장되었습니다.","save":"저장","searchTokens":"토큰명 검색","searchTokenKey":"키 검색","searchLogs":"모델명 검색","startTime":"시작 시간","endTime":"종료 시간","allTypes":"모든 유형","modelNamePlaceholder":"model name placeholder 입력","groupPlaceholder":"group placeholder 입력","searchTokenName":"search token name","tokenNamePlaceholder":"token name placeholder 입력","requestId":"request id","requestIdPlaceholder":"request id placeholder 입력","timing":"timing","tokenBreakdown":"token breakdown","details":"details","search":"검색","addToken":"토큰 추가","copySelectedTokens":"copy selected tokens","deleteSelectedTokens":"delete selected tokens","selectAllTokens":"select all tokens","selectToken":"select token {{name}}","editToken":"edit token","deleteToken":"delete token","enableToken":"enable token","disableToken":"disable token","saveToken":"save token","tokenEditorDesc":"token editor desc에 대한 설명입니다.","tokenGroupPlaceholder":"token group placeholder 입력","tokenMetadataLoadFailed":"Failed to load available groups or models.","groupRatioLabel":"Ratio {{ratio}}","remainAmount":"remain amount","expiredTime":"expired time","expiredTimePlaceholder":"expired time placeholder 입력","expiredTimeSelectPlaceholder":"Select date","unlimitedQuota":"unlimited quota","unlimitedQuotaDesc":"unlimited quota desc에 대한 설명입니다.","crossGroupRetry":"Cross-group retry","crossGroupRetryDesc":"Allow New API to retry through another group when smart fallback is available.","addModelLimit":"Add","availableModels":"Available models","availableModelsPlaceholder":"Select/Search/Add available models, empty means no restrictions.","modelLimits":"model limits","modelLimitsPlaceholder":"model limits placeholder 입력","modelNoMatches":"No matching models.","modelSearchPlaceholder":"Search or add a model","modelSelectedCount":"{{count}} selected","allowIps":"allow ips","allowIpsPlaceholder":"allow ips placeholder 입력","ipWhitelist":"IP whitelist","ipWhitelistPlaceholder":"Single IP (e.g. 192.168.1.1) or CIDR format (e.g. 192.168.1.0/24), multiple entries separated by commas.","tokenNameRequired":"필수 항목입니다.","tokenQuotaRequired":"필수 항목입니다.","tokenExpiredInvalid":"작업에 실패했습니다. 다시 시도하세요.","tokenActionSuccess":"작업이 완료되었습니다.","tokenActionFailed":"작업에 실패했습니다. 다시 시도하세요.","tokenCreated":"작업이 완료되었습니다.","tokenUpdated":"작업이 완료되었습니다.","tokenDeleted":"작업이 완료되었습니다.","tokenEnabled":"작업이 완료되었습니다.","tokenDisabled":"작업이 완료되었습니다.","tokenBatchCopied":"작업이 완료되었습니다. {{count}}","tokenBatchDeleted":"작업이 완료되었습니다. {{count}}","selectTokenFirst":"select token first","confirmDeleteToken":"confirm delete token","confirmBatchDeleteTokens":"confirm batch delete tokens {{count}}","name":"name","key":"key","group":"group","quota":"quota","used":"사용됨","remain":"remain","status":"status","actions":"작업","copyKey":"키 복사","hideKey":"Hide key","keyCopied":"Key copied.","moreActions":"More actions","showKey":"Show key","unlimited":"unlimited","enabled":"활성","disabled":"비활성","unknown":"알 수 없음","loading":"데이터 로드 중...","noTokens":"API 키가 없습니다","statQuota":"stat quota","statTokens":"stat tokens","time":"time","type":"type","model":"model","token":"토큰","prompt":"prompt","completion":"completion","cost":"비용","latency":"latency","recharge":"recharge","consume":"consume","manage":"manage","system":"system","error":"error","refund":"refund","noLogs":"사용 로그가 없습니다","authGateEyebrow":"Secure control plane","authGateTitle":"Account access required","authGateCopy":"Login or register to inspect balance, tokens, usage logs, and account controls.","signIn":"Sign in","all":"All","optional":"Optional","page":"Page","basicInfo":"Basic info","billing":"Billing","billingProcess":"Billing process","cacheSummary":"Cache summary","cacheTokens":"Cache tokens","category":"Category","channelTest":"Channel test","completedTime":"Completed time","confirmPassword":"Confirm password","contact":"Contact","content":"Content","controlSettings":"Control settings","copied":"Copied","copyAddress":"Copy address","createTicket":"Create ticket","createdTime":"Created time","currentSelection":"Current selection","dateYear":"Year","dateMonth":"Month","dateDay":"Day","dateHour":"Hour","dateMinute":"Minute","downstreamError":"Downstream error","duration":"Duration","emptyData":"No data","info":"Info","input":"Input","invite":"Invite","inviteRewardTransfer":"Invite reward transfer","ip":"IP","log":"Log","logDetails":"Log details","logId":"Log ID","noGroupsMatched":"No groups matched","noTickets":"No tickets found","noTicketsMobileDesc":"Submit a ticket when payment, account, or API issues need support.","nonStream":"Non-stream","onlineTopup":"Online top-up","otherDetails":"Other details","output":"Output","quotaPolicy":"Quota policy","reason":"Reason","reasoningEffort":"Reasoning effort","rechargeAmount":"Recharge amount","refundAmount":"Refund amount","rejectReason":"Reject reason","request":"Request","requestPath":"Request path","runtime":"Runtime","searchGroup":"Search group","selectGroup":"Select group","sendCode":"Send code","spend":"Spend","stream":"Stream","submitSupportTicket":"Submit support ticket","support":"Support","timeFirstWord":"Time","tokenIdentityDesc":"Name the token and choose its account group.","tokenModelScopeDesc":"Limit the models this token can call, or leave empty for no restriction.","tokenNetworkScopeDesc":"Restrict token access by IP address or CIDR when needed.","tokenQuotaPolicyDesc":"Set quota, expiration, and retry behavior for this token.","tokens":"Tokens","uploadAttachment":"Upload attachment","upstreamModel":"Upstream model","upstreamModelUpdateNotifyEnabled":"Model update notification","upstreamModelUpdateNotifyEnabledDesc":"Notify this account when upstream model availability changes.","username":"Username","warning":"Warning","agencyReward":"Agency reward","asyncRetryRebalance":"Async retry rebalance","attachment":"Attachment","attachments":"Attachments","walletRecords":"Wallet records","walletBuiltinExistingOrder":"Pending {{asset}} order exists","walletBuiltinExistingOrderDesc":"Only one pending {{asset}} order can be kept within {{minutes}} minutes. Complete the current order or wait for it to expire.","walletBuiltinTxInvalid":"Enter a valid {{asset}} transaction hash.","walletPaymentSubmitted":"Payment submitted","walletPaymentSubmittedDesc":"We will check the payment status after the transfer is confirmed.","walletPaymentSuccess":"Payment confirmed","walletPaymentSuccessDesc":"The top-up has been credited to your account.","walletPaymentPending":"Payment pending","walletPaymentPendingDesc":"Waiting for the payment network to confirm this order.","walletPaymentTimeoutDesc":"This payment order has expired. Create a new order to continue.","walletPaymentQrCreated":"Payment order created","walletPaymentQrCreatedDesc":"Scan or open the payment page to complete the order.","walletPaymentAmount":"Payment amount","walletPaymentQrTitle":"Complete payment","walletPaymentQrDesc":"Scan the QR code or open the payment app, then complete the exact payment.","walletPaymentCheckPaid":"Check payment","walletPaymentOpenApp":"Open payment app","walletPaymentPendingTitle":"Payment pending","walletBuiltinPaying":"On-chain payment","walletBuiltinPayingTitle":"Complete {{asset}} payment","walletBuiltinReceiveAddress":"Receive address","walletBuiltinQrHint":"Scan with a wallet app that supports {{network}}.","walletBuiltinPaymentAmount":"Payment amount","walletBuiltinPaymentNetwork":"Payment network","walletBuiltinRemainingTime":"Remaining time","walletBuiltinOrderNo":"Order no.","walletBuiltinExpiresAt":"Expires at","walletBuiltinBuyCrypto":"Buy crypto","walletBuiltinStrictTitle":"Pay the exact amount","walletBuiltinStrictDesc":"Use the selected network and transfer the exact amount shown. Do not round, underpay, overpay, or deduct exchange withdrawal fees.","walletBuiltinTxTitle":"Submit transaction hash","walletBuiltinTxDesc":"After transfer, paste the wallet transaction hash so support can match the payment if needed.","walletBuiltinTxLabel":"Transaction hash","walletBuiltinTxPlaceholder":"Enter TxID / transaction hash","walletBuiltinSubmitTx":"Submit TxID","ticketFetchFailed":"Failed to load tickets.","ticketDetailFailed":"Failed to load ticket details.","ticketAttachmentLimit":"You can upload up to {{count}} attachments.","ticketAttachmentTooLarge":"Each attachment must be no larger than {{size}}MB.","ticketAttachmentUploadFailed":"Failed to upload attachment: {{name}}","ticketAttachmentDisabled":"Attachment upload is disabled.","ticketAttachmentHint":"Select files, or paste files from the clipboard directly into the text box to upload automatically.","ticketReplyRequired":"Please enter a reply.","ticketReplyFailed":"Failed to send reply.","ticketReplySuccess":"Reply sent.","ticketCloseFailed":"Failed to close ticket.","ticketClosed":"Ticket closed.","ticketReopenFailed":"Failed to reopen ticket.","ticketReopened":"Ticket reopened.","ticketCreateFailed":"Failed to submit ticket.","ticketCreated":"Ticket submitted.","ticketCreatedDesc":"Support will follow up in the ticket thread.","ticketWriteBlocked":"Ticket writing is currently disabled.","ticketCloseConfirm":"Close this ticket? You can reopen it later if needed.","ticketRequired":"Please complete the required ticket fields.","ticketContactPlaceholder":"Email, Telegram, or another contact method","ticketPaymentRepairTitle":"Self-service recharge repair","ticketPaymentRepairDesc":"If you completed an on-chain transfer, enter the order number and transaction hash. The system will try automatic repair before creating a manual ticket.","ticketPaymentRepairEnable":"I completed the transfer. Try automatic repair first.","ticketPaymentRepairRequired":"Please complete the recharge repair fields.","ticketPaymentRepairSuccess":"Recharge repaired","ticketPaymentRepairSuccessTitle":"Recharge repaired","ticketPaymentRepairSuccessDesc":"The payment was matched and credited automatically.","ticketPaymentRepairFallbackTitle":"Manual ticket created","ticketPaymentRepairFallback":"Automatic repair did not pass, so a manual ticket was created. Reason: {{reason}}","ticketRechargeChain":"Recharge chain","ticketRechargeChainPlaceholder":"Select the transfer chain","ticketRechargeOrderNo":"Recharge order No.","ticketTxHash":"Transaction hash","ticketTxHashPlaceholder":"Enter the transaction hash from your wallet or block explorer","pagination":"pagination {{page}} {{pages}} {{total}}"},"supportTicket":{"ticket":"Ticket","detailTitle":"Ticket detail","detailDesc":"Inspect the ticket and reply.","emptyReplies":"No replies yet","internalNote":"Internal","status":{"open":"Open","pending":"Pending","closed":"Closed"},"filters":{"all":"All"},"fields":{"keyword":"Keyword","status":"Status","category":"Category","ticketNo":"Ticket No.","title":"Title","priority":"Priority","lastReply":"Last reply","actions":"Actions","createdAt":"Created at","contact":"Contact","relatedLogId":"Log ID","relatedOrderNo":"Order No."},"placeholders":{"keyword":"Ticket No., title, log ID, order No.","reply":"Enter reply"},"sections":{"support":"Support","timeline":"Timeline","conversation":"Conversation","nextStep":"Next step","reply":"Reply","meta":"Meta","ticketInfo":"Ticket info"},"actions":{"search":"Search","reset":"Reset","detail":"Detail","close":"Close","reopen":"Reopen","sendReply":"Send reply","uploadAttachment":"Upload attachment","closeTicket":"Close ticket","submitTicket":"Submit ticket"},"attachments":{"hint":"Select files or paste files into the text box to upload."}},"topup":{"support":{"submitTicket":"Submit support ticket","defaultTicketTitle":"Recharge issue for order {{orderNo}}","recordTicketContent":"Please review this recharge order.\nOrder No.: {{orderNo}}\nPayment: {{paymentMethod}}\nAmount: {{amount}}\nStatus: {{status}}"}},"language":{"en":"영어","fr":"프랑스어","ja":"일본어","ko":"한국어","ru":"러시아어","vi":"베트남어"},"theme":{"light":"라이트","dark":"다크"}}}