{
  "nav": {
    "models": "模型",
    "playground": "试玩台",
    "keys": "密钥",
    "analytics": "分析",
    "premium": "高级版",
    "signOut": "退出登录",
    "openMenu": "打开导航菜单",
    "theme": "主题",
    "switchLight": "切换到浅色主题",
    "switchDark": "切换到深色主题",
    "language": "切换语言",
    "switchToChinese": "切换到中文",
    "switchToEnglish": "Switch to English",
    "modelsMenu": "浏览模型类型"
  },
  "auth": {
    "createYourAccount": "创建账号",
    "signIn": "登录",
    "email": "邮箱",
    "password": "密码",
    "emailPlaceholder": "you@example.com",
    "passwordPlaceholderSetup": "至少 8 个字符",
    "passwordPlaceholderLogin": "您的密码",
    "setupDescription": "设置用于保护此控制台的邮箱和密码。",
    "loginDescription": "登录以管理您的密钥、路由和分析。",
    "createAccount": "创建账号",
    "creating": "创建中…",
    "signingIn": "登录中…",
    "loading": "加载中…",
    "newPasswordAutoComplete": "new-password",
    "currentPasswordAutoComplete": "current-password",
    "serverUnreachableBefore": "无法连接到服务器。请确认后端正在运行（",
    "serverUnreachableAfter": "）。"
  },
  "common": {
    "save": "保存",
    "saving": "保存中…",
    "cancel": "取消",
    "discard": "放弃修改",
    "delete": "删除",
    "confirm": "确认",
    "copy": "复制",
    "copied": "已复制",
    "show": "显示",
    "hide": "隐藏",
    "apply": "应用",
    "applied": "已应用",
    "applying": "应用中…",
    "active": "已启用",
    "inactive": "未启用",
    "never": "从未",
    "loading": "加载中…",
    "error": "错误",
    "noData": "暂无数据",
    "unsavedChanges": "未保存的更改",
    "saveChanges": "保存更改",
    "remove": "移除",
    "unknownError": "未知错误",
    "model": "模型",
    "provider": "提供方",
    "success": "成功",
    "failures": "失败",
    "dismiss": "关闭",
    "status": "状态"
  },
  "models": {
    "title": "模型",
    "chatModelsTab": "对话模型",
    "fusionTab": "融合",
    "embeddingsTab": "嵌入模型",
    "imageTab": "图像",
    "audioTab": "音频",
    "imageTitle": "图像模型",
    "audioTitle": "音频模型",
    "imageDesc": "文本生成图像模型。",
    "audioDesc": "文本转语音模型。",
    "mediaHint": "通过以下端点生成",
    "mediaEmpty": "暂无模型,将从目录同步。",
    "newBadge": "新",
    "monthlyTokenBudget": "每月令牌额度",
    "remaining": "剩余",
    "used": "已用",
    "of": "共",
    "showAllModels": "显示全部 {count} 个模型",
    "showLess": "收起",
    "vision": "视觉",
    "visionTitle": "支持图像输入",
    "tools": "工具",
    "toolsTitle": "支持结构化工具调用，可用于需要工具的请求",
    "penalty": "−{value} 惩罚",
    "obs": "{count} 次观察",
    "tokPerMonth": "{count} 令牌/月",
    "rpmLimit": "每分钟 {count} 次",
    "rpdLimit": "每日 {count} 次",
    "noKey": "无密钥",
    "dragToReorder": "拖动以重新排序",
    "dragToReorderGroup": "拖动以重新排序模型",
    "providerCount": "{count} 个提供方",
    "servedBy": "由 {providers} 提供",
    "viewProviders": "查看提供方",
    "backToModels": "返回模型列表",
    "providersHeading": "提供该模型的提供方",
    "codeSnippetHeading": "使用该模型",
    "modelNotFound": "该模型不可用，或尚未配置任何提供方。",
    "providerIdsHeading": "各提供方的模型 ID",
    "providerIdsHint": "使用统一模型 ID 可在所有提供方之间自动故障转移；使用某个提供方专属的 ID 则固定走该提供方。",
    "copyModelName": "复制模型名称",
    "aggregateBudget": "{count}/月",
    "aggregateBudgetTitle": "该模型所有提供方每月的免费令牌总额",
    "rateRpm": "{count} RPM",
    "rateRpd": "{count} RPD",
    "rateTitle": "按速率限制——无固定的每月令牌额度",
    "unifyToggle": "合并重复模型",
    "unifyToggleHint": "将由多个提供方提供的同一模型显示为一项，选中时在其各提供方之间自动故障转移。",
    "columnModel": "模型",
    "columnOn": "启用",
    "noModelsBefore": "暂无可用模型。请先在",
    "keysPageLink": "密钥页面",
    "noModelsAfter": "添加 API 密钥。",
    "hiddenNoKeys": "已隐藏（无密钥）：{platforms}",
    "searchPlaceholder": "搜索模型或提供商…",
    "clearSearch": "清除搜索",
    "ctxAny": "任意上下文",
    "ctxBadge": "{size} 上下文",
    "ctxTitle": "上下文窗口",
    "copyModelId": "复制模型 ID",
    "showingCount": "{total} 个模型中的 {shown} 个",
    "clearFilters": "清除筛选",
    "noMatches": "没有符合筛选条件的模型。",
    "noModelsTitle": "尚未配置模型",
    "settingsHeading": "提供方设置",
    "settingsHint": "对目录模型的本地修改会在目录同步后保留。已删除的目录模型会保持删除状态，直到你通过配置重新添加。",
    "catalogModel": "目录",
    "customModel": "自定义",
    "localOverride": "本地覆盖",
    "displayName": "显示名称",
    "contextWindow": "上下文",
    "inFallback": "在链中",
    "saveModelSettings": "保存模型设置"
  },
  "strategies": {
    "title": "路由策略",
    "description": "选择路由策略。手动模式下拖动即可设置顺序；其他策略会根据可靠性、速度和智能的实时评分进行路由。",
    "manual": "手动",
    "manualBlurb": "完全按下方设置的顺序路由。拖动手柄即可重新排序。不参与评分，按从上到下的顺序依次回退。",
    "balanced": "均衡",
    "balancedBlurb": "以稳定性为首（50%），速度与智能各占 25%。通用场景的合理默认。",
    "smartest": "最智能",
    "smartestBlurb": "优先选择能力最强且能正常工作的模型。智能权重 55%，稳定性 35%，速度 10%。",
    "fastest": "最快",
    "fastestBlurb": "在能正常工作的前提下优先选择最快的模型。速度 55%，稳定性 35%，智能 10%。",
    "reliable": "最稳定",
    "reliableBlurb": "把成功率放在第一位。稳定性 70%，速度与智能各占 15%。",
    "custom": "自定义",
    "customBlurb": "用滑块自定义稳定性、速度和智能之间的平衡。引擎与预设相同，只是权重由您决定。",
    "adjust": "调整",
    "customWeights": "自定义权重",
    "customWeightsHelp": "滑块彼此独立;占比会自动平衡至 100%。",
    "weightReliability": "稳定性",
    "weightSpeed": "速度",
    "weightIntelligence": "智能",
    "weightRequired": "至少一个权重必须大于零。",
    "scoreColumn": "评分",
    "weightsSummary": "可靠性 {reliability}% · 速度 {speed}% · 智能 {intelligence}%",
    "guardrails": "护栏",
    "guardrailsTooltip": "始终生效的护栏：免费额度余量 × 实时限流惩罚。低于 1.0 表示该模型正在被抑制。",
    "scoreTooltip": "最终路由得分 = 三个维度的加权平均值，再乘以护栏系数。得分越高越优先路由。",
    "modeManualHint": "手动模式：请求按下方顺序从上到下依次尝试。拖动可重新排序。",
    "modeScoreHint": "评分会根据实时流量更新。下方的顺序即为当前实际的路由顺序。"
  },
  "keys": {
    "pageTitle": "密钥",
    "pageDescription": "各提供方的凭据，以及你的应用用来连接的统一 API 密钥。",
    "tabProviders": "提供方",
    "tabQuotaSignals": "配额信号",
    "tabApiKey": "统一 API 密钥",
    "tabAnthropic": "Anthropic",
    "unifiedKey": "您的统一 API 密钥",
    "regenerate": "重新生成",
    "showKey": "显示",
    "hideKey": "隐藏",
    "copyKey": "复制",
    "copiedKey": "已复制",
    "baseUrl": "Base URL",
    "endpointChat": "对话",
    "endpointResponses": "响应",
    "endpointEmbeddings": "嵌入",
    "endpointEmbeddingsHint": "model: \"auto\" 或「嵌入模型」标签中的系列",
    "endpointMessages": "Messages",
    "endpointMessagesHint": "兼容 Anthropic（Claude）",
    "anthropicTitle": "Claude（Anthropic）模型",
    "anthropicDesc": "将 Claude 或 Anthropic SDK 客户端指向此服务器。Anthropic 客户端会发送 Claude 模型名称——将每个名称映射为 Auto（由路由器挑选一个免费模型）或固定为某个指定模型。",
    "anthropicBaseUrl": "Base URL",
    "anthropicAuth": "鉴权请求头",
    "anthropicAuto": "Auto — 由路由器挑选最佳模型",
    "anthropicSave": "保存映射",
    "anthropicSaved": "已保存",
    "anthropicNote": "Anthropic 客户端会保留其内置的 Claude 模型名称；上方的映射决定每个名称如何路由到你的资源池。",
    "familyDefault": "默认",
    "familyOpus": "Opus",
    "familySonnet": "Sonnet",
    "familyHaiku": "Haiku",
    "selectPlatform": "选择提供商",
    "addKey": "添加密钥",
    "keyAdded": "密钥已添加",
    "adding": "添加中…",
    "selectProvider": "请选择提供商…",
    "accountId": "账户 ID",
    "label": "标签",
    "noKeyNeeded": "（无需密钥）",
    "outboundProxy": "出站代理",
    "outboundProxyDescription": "通过代理路由出站 LLM 请求。支持 SOCKS5、HTTP 与 HTTPS。",
    "proxyUrl": "代理地址",
    "saveProxy": "保存",
    "savingProxy": "保存中…",
    "proxyLoadFailed": "无法加载代理设置。",
    "addCustom": "添加自定义 OpenAI 兼容模型",
    "addCustomDescription": "指向任意 OpenAI 兼容的端点：llama.cpp、LM Studio、vLLM、本地 Ollama 或远程网关。每行填写一个模型（或用逗号分隔）可一次性添加多个；它们共享同一个端点。API 密钥是可选的（大多数本地服务器不需要）。",
    "customBaseUrl": "Base URL",
    "customModels": "模型",
    "customDisplayName": "显示名称",
    "customDisplayNamePerModel": "按模型命名",
    "customDisplayNameOptional": "可选",
    "customApiKey": "API 密钥",
    "customCapabilities": "能力",
    "addModel": "添加模型",
    "modelAdded": "模型已添加",
    "addModels": "添加 {count} 个模型",
    "addingCustom": "添加中…",
    "getApiKey": "获取 API 密钥",
    "deleteKeyConfirm": "确认删除此密钥?此操作无法撤销。",
    "checkAll": "全部检查",
    "checking": "检查中…",
    "editLabel": "编辑标签",
    "saveLabel": "保存标签",
    "unifiedKeyDescBefore": "将其用作你的 OpenAI ",
    "unifiedKeyDescAfter": "；它用于对发往本代理的请求进行身份验证。",
    "serverUnreachableBefore": "无法连接到位于 ",
    "serverUnreachableAfter": " 的服务器。请确认后端正在运行。npm run dev 会同时启动两者，服务器日志会以 server 前缀打印。",
    "paneProviderKey": "提供方密钥",
    "paneImportFile": "导入文件",
    "paneCustomEndpoint": "自定义端点",
    "platform": "平台",
    "apiToken": "API 令牌",
    "noKeyNeededPlaceholder": "无需 API 密钥",
    "bearerTokenPlaceholder": "Bearer 令牌",
    "pasteKeyPlaceholder": "在此粘贴密钥",
    "keylessHint": "无需 API 密钥：该提供方的免费层是匿名的（按 IP 限流）。",
    "enable": "启用",
    "noProviderKeys": "尚无提供方密钥。在上方添加一个即可开始路由。",
    "filterPlaceholder": "筛选提供方或密钥",
    "filterAll": "全部",
    "filterHealthy": "健康",
    "filterIssues": "有问题",
    "filterDisabled": "已禁用",
    "noFilterMatch": "没有符合筛选条件的提供方。",
    "providerCountSummary": "{providers} 个提供方 · {keys} 个密钥",
    "summaryHealthy": "{count} 个健康",
    "summaryIssueOne": "{count} 个问题",
    "summaryIssueOther": "{count} 个问题",
    "providerActions": "提供方操作",
    "routeViaProxy": "通过代理路由",
    "checkNow": "立即检查",
    "proxyEnvHintBefore": "也可通过 ",
    "proxyEnvHintAfter": " 环境变量配置（优先生效）。留空则禁用。示例：",
    "confirmRemove": "确认？",
    "quotaSignalsTitle": "配额信号",
    "quotaSignalsEmptyTitle": "暂无配额观测数据",
    "quotaSignalsEmptyDesc": "当提供商返回限流头、配额错误或验证信号后,这里会自动填充。",
    "quotaKeyRef": "密钥 #{id}",
    "quotaPoolRef": "池 {pool}",
    "quotaLimit": "上限",
    "quotaRemaining": "剩余",
    "quotaReset": "重置",
    "quotaObserved": "观测时间",
    "customType": "类型",
    "customTypeChat": "对话",
    "customTypeEmbedding": "嵌入",
    "customTypeImage": "图像",
    "customTypeAudio": "音频",
    "customModel": "模型",
    "customFamily": "系列",
    "customFamilyPlaceholder": "默认为模型 ID",
    "addEmbeddingModel": "添加嵌入模型",
    "addImageModel": "添加图像模型",
    "addAudioModel": "添加音频模型",
    "importKeys": "导入提供方密钥",
    "importKeysDescription": "上传 .env、JSON、JSONC、CSV、Markdown 或文本文件。",
    "importFiles": "文件",
    "importFileCount": "已选择 {count} 个",
    "previewFiles": "预览",
    "previewing": "预览中…",
    "selected": "已选择",
    "provider": "提供方",
    "keyName": "密钥名称",
    "keyValue": "密钥值",
    "chooseProvider": "选择提供方",
    "noPreviewKeys": "未在这些文件中找到密钥。",
    "skippedItems": "已跳过：",
    "moreItems": "还有 {count} 项",
    "importSelected": "导入 {count} 个",
    "importing": "导入中…",
    "noImportSelection": "请至少选择一行包含提供方的记录。",
    "duplicate": "重复",
    "duplicatesFound": "检测到 {count} 个重复项 — 已存在，将被跳过。",
    "importResult": "已导入 {imported} 个；失败 {failed} 个。",
    "export": {
      "json": "JSON",
      "env": ".env",
      "csv": "CSV"
    },
    "exportAll": "All keys",
    "exportHealthy": "Healthy only",
    "exportKeys": "Export API keys",
    "exportFormat": "Format",
    "exportHealthyOnly": "Healthy keys only",
    "exportHealthyOnlyDesc": "Exclude keys that are currently failing health checks",
    "exportWillExport": "Will export",
    "exportKey": "key",
    "exportKeys plural": "keys",
    "exporting": "Exporting…",
    "exportDownload": "Download",
    "exportSuccess": "Exported {count} keys"
  },
  "status": {
    "healthy": "健康",
    "rateLimited": "被限流",
    "invalid": "无效",
    "error": "错误",
    "unchecked": "未检查"
  },
  "analytics": {
    "title": "分析",
    "description": "请求量、延迟、令牌用量与失败情况。",
    "range24h": "24 小时",
    "range7d": "7 天",
    "range30d": "30 天",
    "range90d": "90 天",
    "requests": "请求数",
    "successRate": "成功率",
    "inputTokens": "输入令牌",
    "outputTokens": "输出令牌",
    "avgLatency": "平均延迟",
    "p95Latency": "P95 延迟",
    "avgTtft": "平均首个令牌时间",
    "estSavings": "预估节省",
    "requestsByProvider": "按提供商的请求数",
    "avgLatencyByProvider": "按提供商的平均延迟",
    "ttftByProvider": "按提供商的首个令牌时间",
    "ttftEmpty": "尚未记录首个令牌时间。",
    "requestsOverTime": "请求趋势",
    "tokensOverTime": "令牌趋势",
    "byModel": "按模型",
    "byPlatform": "按提供商",
    "errors": "错误",
    "errorDistribution": "错误分布",
    "pinnedRequests": "固定请求",
    "pinnedHonored": "已生效",
    "fallbackAttempts": "回退尝试",
    "savingsHint": "过去 {range} 您实际节省了 ${actual}，相当于这些令牌在按模型计费的付费 API 上的费用。显示的数字基于过去 {span} 的数据按比例推算至完整 30 天。",
    "savingsHintExact": "在过去 {range}，你实际节省了 ${actual}。这是相同的 token 在按模型计费的付费 API 上的花费。所显示的数字就是你真实的 30 天总额。",
    "requestsHintPinned": "其中有 {pinned} 个请求按名称固定了特定模型。{honored} 个由所固定的模型处理；{failed} 个回退到了其他模型。其余为自动路由。",
    "requestsHintAuto": "此期间的所有请求均为自动路由；没有客户端按名称固定特定模型。",
    "requestsHintTypes": "{chat} 个对话请求和 {embedding} 个嵌入请求。",
    "rangeLabel24h": "24 小时",
    "rangeLabel7d": "7 天",
    "rangeLabel30d": "30 天",
    "rangeLabel90d": "90 天",
    "spanDays": "{count} 天",
    "spanHours": "{count} 小时",
    "latencyMs": "延迟（毫秒）",
    "latency": "延迟",
    "pinned": "已固定",
    "inTokens": "输入 token",
    "outTokens": "输出 token",
    "saved": "已节省",
    "message": "消息",
    "time": "时间",
    "perModelBreakdown": "按模型细分",
    "usageByKey": "按密钥统计的用量",
    "keyColumn": "密钥",
    "keyLabelFallback": "密钥 #{id}",
    "errorsByProvider": "按提供方统计错误",
    "recentErrors": "最近的错误",
    "noErrors": "无错误",
    "recentCalls": "最近调用",
    "clientIp": "客户端 IP",
    "clientAgent": "客户端应用",
    "requestedModelHint": "请求了 {model}，由回退模型提供"
  },
  "playground": {
    "title": "试玩台",
    "description": "通过路由器发送一次对话补全请求,看看是哪个提供商在服务。",
    "autoModel": "自动(回退链)",
    "fusionModel": "融合(多模型综合)",
    "selectModel": "选择模型",
    "searchModels": "搜索模型…",
    "noModelsFound": "未找到模型",
    "send": "发送",
    "sending": "发送中…",
    "clear": "清空",
    "inputPlaceholder": "输入消息…（回车发送，Shift+回车换行）",
    "emptyTitle": "发送消息即可开始。",
    "emptyDescription": "正在使用 {model}。可在上方选择器中切换模型。",
    "noModels": "暂无模型。请先在「密钥」页面添加 API 密钥。",
    "copyReply": "复制回复",
    "fallback": "次回退",
    "fallbacks": "次回退",
    "fusionPanel": "模型组",
    "fusionJudge": "评审",
    "fusionTrace": "{count} 个模型的回答",
    "fusionFailed": "无回应",
    "fusionJudgeSynth": "综合出最终答案",
    "errorPrefix": "错误:",
    "systemPromptLabel": "系统提示词",
    "systemPromptPlaceholder": "可选。作为系统消息在你的对话之前发送。",
    "errorTitle": "请求失败"
  },
  "embeddings": {
    "title": "模型",
    "description": "嵌入模型只在同一系列内回退:同一模型由另一个提供商提供。不同模型的向量不兼容,因此路由器绝不会在请求中途切换模型。",
    "defaultBadge": "默认 · auto",
    "makeDefault": "设为默认",
    "moveUp": "上移",
    "moveDown": "下移",
    "usageToday": "今日 {count} 次请求",
    "usageMonth": "本月 {count} 令牌",
    "autoDescription": "在 POST /v1/embeddings 中使用 model: \"auto\" 会路由到默认系列。指定系列名(或提供商模型 ID)会固定该系列,并按顺序尝试其中的提供商。",
    "unsavedChanges": "有未保存的修改",
    "saveChanges": "保存修改",
    "savingChanges": "保存中…",
    "tokMax": "最多 {tokens} tok",
    "emptyTitle": "暂无嵌入模型",
    "emptyDesc": "添加支持嵌入的提供商密钥后,嵌入系列会显示在这里。",
    "dragToReorder": "拖动以重新排序提供方"
  },
  "fusion": {
    "title": "融合",
    "description": "由一组模型并行作答，再由评审模型综合出更优的答案。在调用 API 时将 model 设为 “fusion” 即可使用。",
    "panelSource": "模型组来源",
    "panelSourceHelp": "当请求未自行指定时，模型组所采用的来源。",
    "mode": {
      "auto": "自动(回退链)",
      "autoHelp": "从你的回退链中挑选一组多样化的模型，并按当前启用的路由策略排序。",
      "explicit": "指定模型组",
      "explicitHelp": "始终使用你在下方选择的特定模型。"
    },
    "panelModels": "组内模型",
    "selectedCount": "已选择 {count} / {max}",
    "noModels": "尚未连接任何模型。请先添加 API 密钥，然后在回退链中启用模型。",
    "panelSize": "模型组规模",
    "panelSizeHelp": "自动挑选的多样化模型数量(1–{max})。",
    "judge": "评审模型",
    "judgeHelp": "将模型组的回答综合为一个答案的模型。“自动”会使用你排名最高的可用模型。",
    "judgeAuto": "自动(排名最高的可用模型)",
    "strategy": "策略",
    "strategySynthesize": "综合：将模型组的回答融合为一个答案",
    "strategyBestOf": "择优：返回单个最强的答案(不调用评审)",
    "strategySynthesizeShort": "综合",
    "strategyBestOfShort": "择优",
    "exposePanel": "暴露模型组细节",
    "exposePanelHelp": "在响应的 x_fusion 字段中附上每个模型的回答以及评审的元数据。",
    "howToUse": "如何使用",
    "howToUseHelp": "发送普通的对话请求，并将 model 设为 “fusion”。这些设置为默认值；任何请求都可以通过 “fusion” 字段覆盖它们。",
    "unsavedChanges": "有未保存的更改",
    "save": "保存"
  },
  "premium": {
    "title": "高级版",
    "description": "在任何设备上获得实时模型目录。",
    "loading": "加载中…",
    "checkForUpdates": "检查更新",
    "syncing": "同步中…",
    "catalogFeed": "目录源",
    "liveFeed": "实时源",
    "monthlySnapshot": "月度快照",
    "lastChecked": "上次检查:{when}",
    "liveDescription": "新的免费模型、配额调整与缺陷修复会在发布后数小时内到达这里。应用每天自动检查两次,无需手动操作。",
    "snapshotDescription": "免费版:目录每月从快照刷新,每天自动检查两次。高级版切换到实时源,每 2–3 天更新一次。",
    "lastSyncProblem": "上次同步问题:{error}",
    "license": "许可证",
    "planAnnual": "高级版 · 年度",
    "planLifetime": "高级版 · 终身",
    "expired": "已过期",
    "inactive": "未激活",
    "lifetimeNote": "终身许可证:永不过期。",
    "renewsOn": "将于 {date} 续费。",
    "willNotRenew": "不会续费。高级版可用至 {date},之后此安装回退到免费月度目录。",
    "keyInactive": "此密钥已失效。应用仍可继续使用免费月度目录。",
    "manageSubscription": "管理订阅",
    "openingPortal": "正在打开…",
    "removeKey": "从本设备移除密钥",
    "manageHint": "管理订阅会打开 Stripe 的账单门户:取消订阅、更新支付方式或下载发票。移除密钥仅停用本设备,不会影响您的购买。",
    "licenseKey": "许可证密钥",
    "licenseKeyPlaceholder": "fla_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
    "activate": "激活",
    "activating": "激活中…",
    "keyHint": "您的密钥可在购买邮件与结账后页面找到。丢失了?",
    "recoverKey": "在官网找回",
    "upsellTitle": "升级为每年 19 美元的实时版",
    "upsellDescription": "新免费模型上线即用，无需等待 30 天。一个密钥，所有设备。随时取消，路由器永久免费。",
    "goPremium": "升级到高级版",
    "bundled": "内置",
    "planGeneric": "Premium"
  },
  "languages": {
    "en": "English",
    "zh-CN": "中文 (简体)",
    "fr": "Français",
    "es": "Español",
    "pt-BR": "Português (Brasil)",
    "it": "Italiano"
  },
  "errors": {
    "boundaryTitle": "出错了",
    "boundaryDescription": "仪表盘遇到了意外错误。您的数据是安全的。请重试或返回模型页面。",
    "tryAgain": "重试",
    "goHome": "返回模型页"
  },
  "notFound": {
    "title": "页面未找到",
    "description": "此页面不存在或已被移动。"
  },
  "setup": {
    "title": "快速开始",
    "subtitle": "三步完成首个请求的路由。",
    "progress": "{done} / {total}",
    "step1Title": "添加提供商密钥",
    "step1Desc": "至少连接一个提供商账户,免费密钥即可。",
    "step1Cta": "添加密钥",
    "step2Title": "发送测试请求",
    "step2Desc": "在 Playground 中任选一个模型打个招呼。",
    "step2Cta": "打开 Playground",
    "step3Title": "接入你的应用",
    "step3Desc": "在任何兼容 OpenAI 的客户端中使用统一 API 密钥。",
    "copyKey": "复制 API 密钥",
    "copyUrl": "复制基础 URL",
    "copiedKey": "API 密钥已复制到剪贴板",
    "copiedUrl": "基础 URL 已复制到剪贴板"
  },
  "palette": {
    "title": "命令面板",
    "placeholder": "搜索页面、模型、操作…",
    "empty": "无结果",
    "groupPages": "页面",
    "groupActions": "操作",
    "groupModels": "模型",
    "toggleTheme": "切换深色模式"
  },
  "penaltyInspector": {
    "title": "路由压力",
    "subtitle": "过去 {minutes} 分钟内的惩罚、冷却和失败",
    "rowCount": "{count} 个活跃",
    "offChain": "不在链中",
    "penaltyValue": "惩罚 {value}",
    "factor": "得分 x{factor}",
    "noCooldown": "无冷却",
    "cooldownChip": "{key}，{time}",
    "errorsHeading": "{count} 个近期错误",
    "noRecentErrors": "暂无近期错误",
    "noKey": "无密钥",
    "reasons": {
      "penalty": "已惩罚",
      "cooldown": "冷却中",
      "recent_errors": "失败中"
    }
  },
  "validation": {
    "required": "必填",
    "url": "请输入以 http:// 或 https:// 开头的有效 URL",
    "email": "请输入有效的邮箱地址",
    "passwordMin": "至少 {min} 个字符"
  }
}
