PageSourceSearch

https://toknex.ai/assets/zh-Bsu2xNFg.js

js toknex.ai collected 2026-10-05 14:37:50 UTC 162,580 bytes, 8 lines download raw bytes

1import{f as e,m as t}from"./merge-C_KxV6LW.js";import"./messages-Cv_iKPFn.js";const i={common:{loading:"加载中...",submitting:"提交中...",justNow:"刚刚",peakRateTooltip:"高峰倍率:{window}",peakRateImageNote:";token 计费的图片 token 同样适用,图片按次计费不受高峰影响",save:"保存",saved:"保存成功",deleted:"删除成功",cancel:"取消",delete:"删除",edit:"编辑",create:"创建",apply:"应用",clear:"清除",creating:"创建中...",required:"必填",sending:"发送中...",tryAgain:"请重试",update:"更新",confirm:"确认",reset:"重置",search:"搜索",filter:"筛选",export:"导出",import:"导入",actions:"操作",status:"状态",name:"名称",email:"邮箱",password:"密码",submit:"提交",back:"返回",next:"下一步",yes:"是",no:"否",all:"全部",none:"无",selectAll:"全选",noData:"暂无数据",expand:"展开",collapse:"收起",success:"成功",error:"错误",critical:"严重",warning:"警告",info:"提示",active:"启用",inactive:"禁用",more:"更多",close:"关闭",toggleMenu:"切换菜单",userMenu:"用户菜单",pageNotFound:"页面不存在",enabled:"已启用",disabled:"已禁用",total:"总计",balance:"余额",availableBalance:"可用余额",frozenBalance:"冻结金额",totalBalance:"总余额",available:"可用",copiedToClipboard:"已复制到剪贴板",copied:"已复制",copyFailed:"复制失败",verifying:"验证中...",processing:"处理中...",contactSupport:"联系客服",add:"添加",invalidEmail:"请输入有效的邮箱地址",optional:"可选",selectOption:"请选择",searchPlaceholder:"搜索...",noOptionsFound:"无匹配选项",noGroupsAvailable:"无可用分组",unknownError:"发生未知错误",saving:"保存中...",selectedCount:"(已选 {count} 个)",refresh:"刷新",autoRefresh:{title:"自动刷新",enable:"启用自动刷新",countdown:"自动刷新: {seconds}s",seconds:"{n} 秒"},view:"查看",settings:"设置",chooseFile:"选择文件",upload:"上传",remove:"移除",noFileSelected:"未选择文件",selectedFile:"已选:{name}",fileReadFailed:"读取文件失败",selectImageFile:"请选择图片文件",fileTooLargeKb:"文件过大({size} KB),上限 {max} KB",copy:"复制",notAvailable:"不可用",now:"现在",today:"今天",tomorrow:"明天",unknown:"未知",minutes:"分钟",time:{never:"从未",justNow:"刚刚",minutesAgo:"{n}分钟前",hoursAgo:"{n}小时前",daysAgo:"{n}天前",countdown:{daysHours:"{d}d {h}h",hoursMinutes:"{h}h {m}m",minutes:"{m}m",withSuffix:"{time} 后解除"}}},adminCompliance:{title:"部署与运营合规确认",blockingNotice:"继续使用控制台前,须完成部署与运营合规确认。",riskNotice:"本确认用于以清晰、显著、可留痕的方式提示自部署实例的合规义务与运营风险。",version:"协议版本",openDocument:"在 GitHub 查看协议文件",documentSource:"协议正文来自本项目仓库中的 Markdown 文件。修改协议内容时必须同步递增协议版本;已确认的旧版本将失效,控制台使用者须重新确认。",inputLabel:"请逐字输入以下确认短语",inputPlaceholder:"输入确认短语以继续",inputMismatch:"确认短语不匹配,请逐字输入提示内容。",legalNote:"本确认用于明确自部署实例与开源项目、著作权人、贡献者及维护者之间的非关联关系和责任边界;部署、运营或控制相关实例的主体应独立承担其适用义务。",logout:"退出登录",accept:"确认并继续",accepted:"合规确认已记录",acceptFailed:"提交确认失败"},legal:{loadFailed:"文档加载失败",retryLater:"请稍后刷新页面重试。",notFound:"文档不存在",notFoundDescription:"当前条款文档不存在或已被管理员移除。",updatedAt:"更新日期:{date}",empty:"暂无正文内容",loginAgreement:"登录条款",adminCompliance:"部署与运营合规承诺",loginAgreementPrompt:{checkboxPrefix:"我已阅读并同意",documentSeparator:"、",noticeTitle:"继续登录前需要先同意最新条款。",noticeDescription:"未同意前,账号密码输入和快捷登录会保持禁用。",viewTerms:"查看条款",dialogTitle:"条款更新通知",dialogDescription:"我们的服务条款已于 {date} 更新。在继续使用服务之前,请仔细阅读并同意以下条款。",recently:"近期",relatedDocuments:"相关文档",reject:"拒绝",accept:"同意并继续",loginRejectedWarning:"未同意最新条款前,无法输入账号密码或使用快捷登录。",loginRequiredWarning:"请先阅读并同意最新条款后再登录。",registerRejectedWarning:"未同意最新条款前,无法注册或使用快捷登录。",registerRequiredWarning:"请先阅读并同意最新条款后再注册。"}},nav:{dashboard:"仪表盘",announcements:"公告",apiKeys:"API 密钥",batchImage:"批量生图",usage:"使用记录",redeem:"兑换",affiliate:"邀请返利",affiliateManagement:"邀请返利",affiliateInviteRecords:"邀请记录",affiliateRebateRecords:"返利记录",affiliateTransferRecords:"提取记录",profile:"个人资料",users:"用户管理",groups:"分组管理",channels:"渠道管理",availableChannels:"可用渠道",modelPlaza:"模型广场",subscriptions:"订阅管理",accounts:"账号管理",plugins:"插件管理",proxies:"IP管理",redeemCodes:"兑换码",ops:"运维监控",promoCodes:"优惠码",settings:"系统设置",myAccount:"我的账户",lightMode:"浅色模式",darkMode:"深色模式",collapse:"收起",expand:"展开",logout:"退出登录",github:"GitHub",mySub
1scriptions:"我的订阅",buySubscription:"充值/订阅",recharge:"充值",subscribe:"订阅",docs:"文档",myOrders:"我的订单",orderManagement:"订单管理",paymentDashboard:"支付概览",paymentConfig:"支付配置",paymentPlans:"订阅套餐",channelManagement:"渠道管理",channelPricing:"渠道定价",channelMonitor:"渠道监控",channelStatus:"渠道状态",riskControl:"风控中心",securityAudit:"安全审计",contentModeration:"内容审计",promptAudit:"提示词审计",auditLogs:"操作日志"},auth:{welcomeBack:"欢迎回来",signInToAccount:"登录您的账户以继续",signIn:"登录",signingIn:"登录中...",passkeySignIn:"使用 Passkey 登录",passkeySigningIn:"正在等待 Passkey...",passkeyCancelled:"已取消 Passkey 登录。",passkeyFailed:"Passkey 登录失败,请重试。",createAccount:"创建账户",signUpToStart:"注册以开始使用 {siteName}",signUp:"注册",processing:"处理中...",continue:"继续",rememberMe:"记住我",dontHaveAccount:"还没有账户?",alreadyHaveAccount:"已有账户?",registrationDisabled:"注册功能暂时关闭,请联系管理员。",emailLabel:"邮箱",emailPlaceholder:"请输入邮箱",passwordLabel:"密码",passwordPlaceholder:"请输入密码",createPasswordPlaceholder:"创建一个安全的密码",passwordHint:"至少 6 个字符",emailRequired:"请输入邮箱",invalidEmail:"请输入有效的邮箱地址",passwordRequired:"请输入密码",passwordMinLength:"密码至少需要 6 个字符",loginFailed:"登录失败,请检查您的凭据后重试。",errors:{USER_NOT_ACTIVE:"账号已被禁用"},registrationFailed:"注册失败,请重试。",emailDomainRegistrationLimit:"该邮箱域名无法注册新账户。请使用主流邮箱注册;如需使用企业邮箱,请联系客服添加域名白名单。",emailSuffixNotAllowed:"该邮箱域名不在允许注册范围内。",emailSuffixNotAllowedWithAllowed:"该邮箱域名不被允许。可用域名:{suffixes}",emailSuffixAllowedMore:"等 {count} 项",loginSuccess:"登录成功!欢迎回来。",accountCreatedSuccess:"账户创建成功!欢迎使用 {siteName}。",reloginRequired:"会话已过期,请重新登录。",turnstileExpired:"验证已过期,请重试",turnstileFailed:"验证失败,请重试",captchaVerified:"验证已完成",captchaLoading:"正在加载验证码…",captchaClickToVerify:"点击完成人机验证",captchaVerifying:"验证中…",completeVerification:"请完成验证",verifyYourEmail:"验证您的邮箱",sessionExpired:"会话已过期",sessionExpiredDesc:"请返回注册页面重新开始。",verificationCode:"验证码",verificationCodeHint:"请输入发送到您邮箱的6位验证码",sendingCode:"发送中...",sendCode:"发送验证码",clickToResend:"点击重新发送验证码",resendCode:"重新发送验证码",sendCodeDesc:"我们将发送验证码到",codeSentSuccess:"验证码已发送!请查收您的邮箱。",verifying:"验证中...",verifyAndCreate:"验证并创建账户",resendCountdown:"{countdown}秒后可重新发送",backToRegistration:"返回注册",sendCodeFailed:"发送验证码失败,请重试。",verifyFailed:"验证失败,请重试。",codeRequired:"请输入验证码",invalidCode:"请输入有效的6位验证码",promoCodeL
1abel:"优惠码",promoCodePlaceholder:"输入优惠码(可选)",promoCodeValid:"有效!注册后将获得 ${amount} 赠送余额",promoCodeInvalid:"无效的优惠码",promoCodeNotFound:"优惠码不存在",promoCodeExpired:"此优惠码已过期",promoCodeDisabled:"此优惠码已被禁用",promoCodeMaxUsed:"此优惠码已达到使用上限",promoCodeAlreadyUsed:"您已使用过此优惠码",promoCodeValidating:"优惠码正在验证中,请稍候",promoCodeInvalidCannotRegister:"优惠码无效,请检查后重试或清空优惠码",invitationCodeLabel:"邀请码",invitationCodePlaceholder:"请输入邀请码",invitationCodeRequired:"请输入邀请码",invitationCodeValid:"邀请码有效",invitationCodeInvalid:"邀请码无效或已被使用",invitationCodeValidating:"正在验证邀请码...",invitationCodeInvalidCannotRegister:"邀请码无效,请检查后重试",oauthOrContinue:"或使用其他继续",linuxdo:{signIn:"使用 Linux.do 登录",orContinue:"或使用邮箱密码继续",callbackTitle:"正在完成登录",callbackProcessing:"正在验证登录信息,请稍候...",callbackHint:"如果页面未自动跳转,请返回登录页重试。",callbackMissingToken:"登录信息缺失,请返回重试。",backToLogin:"返回登录",invitationRequired:"该 Linux.do 账号尚未注册,站点已开启邀请码注册,请输入邀请码以完成注册。",invalidPendingToken:"注册凭证已失效,请重新使用 Linux.do 登录。",completeRegistration:"完成注册",completing:"正在完成注册...",completeRegistrationFailed:"注册失败,请检查邀请码后重试。"},dingtalk:{signIn:"钉钉登录",callbackTitle:"正在完成钉钉登录",callbackProcessing:"正在验证钉钉登录信息,请稍候...",callbackHint:"如果页面未自动跳转,请返回登录页重试。",callbackMissingToken:"登录信息缺失,请返回重试。",backToLogin:"返回登录",invitationRequired:"该钉钉账号尚未注册,站点已开启邀请码注册,请输入邀请码以完成注册。",invalidPendingToken:"注册凭证已失效,请重新使用钉钉登录。",completeRegistration:"完成注册",completing:"正在完成注册...",completeRegistrationFailed:"注册失败,请检查邀请码后重试。",createAccountTitle:"创建钉钉账户",registrationDisabledRedirectToBind:"当前已禁止注册新账户,请使用已有账户邮箱和密码绑定钉钉登录",error:{title:"钉钉登录失败",csrf:"登录会话已过期,请重新扫码登录",corp_rejected:"您的钉钉账号不属于本企业,请联系管理员",dingtalk_not_enabled:"钉钉登录暂未启用",upstream_error:"钉钉服务暂时不可用,请稍后重试",missing_browser_session:"浏览器会话丢失,请重新登录",missing_params:"请求参数不完整",invalid_state:"登录状态异常",provider_error:"钉钉授权失败",session_error:"会话创建失败,请重试",retry:"重新登录"}},emailOAuth:{signIn:"使用 {providerName} 登录"},oidc:{signIn:"使用 {providerName} 登录",callbackTitle:"正在完成 {providerName} 登录",callbackProcessing:"正在验证 {providerName} 登录信息,请稍候...",callbackHint:"如果页面未自动跳转,请返回登录页重试。",callbackMissingToken:"登录信息缺失,请返回重试。",backToLogin:"返回登录",invitationRequired:"该 {providerName} 账号尚未注册,站点已开启邀请码注册,请输入邀请码以完成注册。",invalidPendingToken:"注册凭证已失效,请重新登录。",completeRegistration:"完成注册",completing:"正在完成注册...",completeRegistrationFailed:"注册失败,请检查邀请码后重试。"},oauthFlow:{profileDetailsTitle:"使用 {providerName} 资料",profileDetailsDescription:"选择是否将 {providerName} 的昵称或头像应用到当前账户。",useDisplayName:"使用昵称",useAvatar:"使用头像",avatarAlt:"{providerName} 头像",reviewProfileBeforeContinue:"请先确认 {providerName} 资料后再继续。",chooseHowToContinue:"选择后续操作",chooseAccountActionHint:"请选择绑定已有账户,或创建一个新账户。",suggestedEmail:"建议邮箱:{email}",bindExistingAccount:"绑定已有账户",createNewAccount:"创建新账户",createAccountHint:"请输入邮箱地址以创建账户并继续。",bindLoginHint:"登录一个已有账户以绑定此次 {providerName} 登录。",signInThenBindDescription:"请先登录已有账户,再将此次 {providerName} 登录绑定到该账户。",bindSignInToExistingAccount:"将此次 {providerName} 登录绑定到已有账户。",bindCurrentAccountTitle:"绑定当前账户",bindCurrentAccountDescription:"将此次 {providerName} 登录绑定到当前浏览器已登录的账户。",bindCurrentAccount:"绑定当前账户",logInAndBind:"登录并绑定",useDifferentEmail:"使用其他邮箱",backToOptions:"返回选项",yourAccount:"当前账户",totpHint:"请输入 {account} 的 6 位验证码,以完成此次 {providerName} 登录绑定。",verifyAndContinue:"验证并继续",wechatAvailabilityUnknown:"暂时无法确认微信登录可用性,请刷新后重试。",wechatSystemBrowserOnly:"当前微信登录流程仅支持在系统浏览器中继续。",wechatBrowserOnly:"当前微信登录流程仅支持在微信内置浏览器中继续。",wechatNotConfigured:"微信登录尚未配置。"},linuxdoCallbackPageTitle:"LinuxDo 登录回调",dingtalkCallbackPageTitle:"钉钉登录回调",dingtalkProviderName:"钉钉",oidcCallbackPageTitle:"OIDC 登录回调",oauthCallbackPageTitle:"OAuth 回调",wechatProviderName:"微信",wechatCallbackPageTitle:"微信登录回调",wechatPaymentCallbackPageTitle:"微信支付回调",wechatPayment:{callbackTitle:"正在恢复微信支付",callbackProcessing:"正在恢复微信支付...",backToPayment:"返回支付页",callbackMissingResumeToken:"微信支付回调缺少恢复令牌。"},oauth:{callbackTitle:"OAuth 回调",callbackHint:"按需将授权码和状态值复制回后台授权流程。",invali
1dCallbackTitle:"无效的登录回调",invalidCallbackHint:"当前页面缺少有效的授权结果,请返回登录页重新发起快捷登录。",code:"授权码",state:"状态",fullUrl:"完整URL"},forgotPassword:"忘记密码?",forgotPasswordTitle:"重置密码",forgotPasswordHint:"输入您的邮箱地址,我们将向您发送密码重置链接。",sendResetLink:"发送重置链接",sendingResetLink:"发送中...",sendResetLinkFailed:"发送重置链接失败,请重试。",resetEmailSent:"重置链接已发送",resetEmailSentHint:"如果该邮箱已注册,您将很快收到密码重置链接。请检查您的收件箱和垃圾邮件文件夹。",backToLogin:"返回登录",rememberedPassword:"想起密码了?",resetPasswordTitle:"设置新密码",resetPasswordHint:"请在下方输入您的新密码。",newPassword:"新密码",newPasswordPlaceholder:"输入新密码",confirmPassword:"确认密码",confirmPasswordPlaceholder:"再次输入新密码",confirmPasswordRequired:"请确认您的密码",passwordsDoNotMatch:"两次输入的密码不一致",resetPassword:"重置密码",resettingPassword:"重置中...",resetPasswordFailed:"重置密码失败,请重试。",passwordResetSuccess:"密码重置成功",passwordResetSuccessHint:"您的密码已重置。现在可以使用新密码登录。",invalidResetLink:"无效的重置链接",invalidResetLinkHint:"此密码重置链接无效或已过期。请重新请求一个新链接。",requestNewResetLink:"请求新的重置链接",invalidOrExpiredToken:"密码重置链接无效或已过期。请重新请求一个新链接。"},stepUp:{title:"需要二次验证",hint:"请输入身份验证器应用中的 6 位验证码以继续此敏感操作。",verifyFailed:"验证失败,请重试",notEnabled:"此操作需要开启二次验证,请先在个人资料中启用 TOTP。",adminApiKeyForbidden:"管理 API Key 无法执行此操作,请使用已通过二次验证的管理员会话。"}},o={channelMonitorV2:{title:"渠道监控",updating:"正在更新数据",updatedTo:"更新至 {time}",partialCoverage:"部分历史覆盖",bootstrap:{title:"正在补齐历史监控数据",description:"首次启用被动监控时,系统会在后台静默聚合 90 分钟、24 小时、7 天与 30 天窗口;完成后可切换全部时间范围。",progress:"进度 {percent}%",working:"后台聚合中…"},timeRange:"时间范围",clearFilters:"重置",refreshingFilters:"筛选条件已变化,正在刷新矩阵、趋势和明细…",switchingData:"正在切换筛选数据…",summaryAria:"筛选范围整体汇总",loadFailed:"渠道监控加载失败",detailLoadFailed:"渠道监控明细加载失败",otherModels:"其他模型",ignored:"忽略",currentUser:"当前用户",ranges:{"90m":"90m","24h":"24h","7d":"7d","30d":"30d"},filters:{platform:"平台",allPlatforms:"全部",group:"分组",allGroups:"全部",model:"模型",allModels:"全部",empty:"暂无可选项",selectedCount:"{count} 项",labelValue:"{label}:{value}"},groupBy:{label:"展示维度",platform:"平台",platformGroup:"平台 / 分组",platformModel:"平台 / 模型",platformGroupModel:"平台 / 分组 / 模型"},trendView:{label:"趋势视图",pulse:"色块矩阵",line:"折线图"},healthMode:{label:"健康显示",overall:"综合",success:"错误率",ttft:"首 Token",cache:"缓存率"},tabs:{aria:"明细维度",models:"模型",errors:"错误原因",users:"用户排行"},metrics:{rpm:"RPM",tpm:"TPM",tps:"每秒 Token",rpmDetail:"每分钟请求数",tpmDetail:"每分钟 Token 数",tpsDetail:"由 TPM ÷ 60 换算",errorRate:"错误率",ttft:"首 Token",ttftP50:"首 Token P50",durationP50:"请求时长 P50",cacheRate:"缓存率",cacheDetail:"读缓存占比",successRate:"成功率",successRateValue:"成功率 {value}",errorRateValue:"错误率 {value}",rpmValue:"RPM {value}",tpmValue:"TPM {value}",tpsValue:"每秒 Token {value}",ttftValue:"首 Token {value}",durationValue:"请求时长 {value}",cacheRateValue:"缓存率 {value}"},table:{platformModel:"平台 / 模型",rank:"排名",user:"用户"},empty:{title:"没有可展示的数据",description:"尝试调整时间范围或筛选条件"},bucket:{minutes:"{count} 分钟粒度",hours:"{count} 小时粒度",days:"{count} 天粒度"},matrix:{title:"可用性趋势",description:"每行是一种渠道组合,每个色块代表一个统计区间;悬停查看明细",wheelZoom:"在色块上滚轮放大(区间变窄、色块变宽)",wheelZoomX:"在色块上滚轮放大(区间变窄、色块变宽)",dimension:"渠道维度",emptyTitle:"当前筛选窗口没有矩阵数据",legendAria:"健康分数图例",bad:"差",good:"好",healthyLegend:"健康 (≥80)",warningLegend:"需关注 (50–79)",criticalLegend:"异常 (<50)",unknownLegend:"无流量 / 样本不足",noTraffic:"该区间无流量",noTrafficAt:"{time} · 无流量",scoreLine:"健康分 {score}",resetZoom:"重置缩放"},chart:{title:"可用性趋势",description:"平滑趋势:错误率 · 首 Token P50 · 缓存率",emptyTitle:"当前筛选窗口没有趋势数据",errorLegend:"错误率(左轴 %)",cacheLegend:"缓存率(左轴 %)",ttftLegend:"首 Token P50(右轴)",errorDataset:"错误率趋势 %",cacheDataset:"缓存率趋势 %",ttftDataset:"首 Token 趋势 P50 (ms)",percentAxis:"比率 %",resetZoom:"重置缩放"},errorDetail:{http:"HTTP {code}",upstream:"上游 {code}",noMessage:"无错误消息",empty:"仅展示分类占比(样本消息仅管理员可见)"},errorCategories:{content_policy:"内容策略",authentication:"认证失败",context_limit:"上下文超限",invali
1d_request:"请求格式",model_unsupported:"模型不支持",group_access:"分组权限",quota_or_balance:"额度或余额",account_pool_unavailable:"账号池不可用",rate_or_capacity:"限流或容量",timeout:"超时",transport_or_stream:"传输或流",upstream_forbidden:"上游拒绝",not_found:"资源不存在",client_cancelled:"客户端取消",upstream_5xx:"上游 5xx",internal:"内部错误",other:"其他"},rank:{gold:"第 1 名 金",silver:"第 2 名 银",bronze:"第 3 名 铜",place:"第 {n} 名",unranked:"未上榜"},settings:{title:"V2 数据监控配置",description:"配置被动用量汇总维度(平台 / 模型 / 分组)与刷新频率。健康色与明细在用户端 /monitor 以比例、RPM/TPM 展示,不暴露绝对请求量。",save:"保存",loading:"加载中...",loadFailed:"V2 配置加载失败",saveSuccess:"V2 监控配置已保存",saveFailed:"V2 配置保存失败",modeBanner:"当前系统设置为 {mode}。V2 分钟聚合不会运行;此处配置可预先保存,切换到 {modeV2} 后立即生效。可在系统设置 → 功能开关调整。",modeClosed:"渠道监控已关闭",modeV1:"V1 主动探测",modeV2:"V2 被动监控",enableTitle:"启用 V2 汇总",enableHint:"在系统模式为 V2 时生效;关闭后仅停止本配置的汇总,系统模式开关仍在「功能开关」",refreshTitle:"汇总频率",refreshHint:"影响矩阵时间粒度与刷新节奏",refreshAria:"汇总频率",platformsTitle:"平台与模型",platformsHint:"留空 = 展示全部真实模型名;填写后仅名单内单独成行,其余归入「其他」",modelsPlaceholder:"留空=全部真实模型;或填写主流模型名单(其余归其他)",badgeAllModels:"全部模型",badgeOther:"+ 其他",groupsTitle:"监控分组",groupsSelected:"已选择 {count} 个分组",groupsAll:"全部分组",groupsEmpty:"没有可选择的分组",errorsTitle:"错误分类与忽略",errorsHint:"勾选「忽略」的类别不计入错误率与健康分,仍在错误原因列表中以灰色显示并标记忽略。未匹配的错误归入「其他」。",ignoredSummary:"已忽略 {ignored} 类 · 计入错误率 {counted} 类",healthTitle:"健康阈值",healthHint:"控制用户端色块和整体评分。默认阈值较宽松,避免少量错误或低缓存率立即显示异常。",fields:{minimumSample:"最小样本数",warningError:"错误率关注 %",criticalError:"错误率异常 %",targetTtft:"TTFT 目标 ms",warningTtft:"TTFT 关注 ms",criticalTtft:"TTFT 异常 ms",warningCache:"缓存率关注 %",criticalCache:"缓存率异常 %"},namedModelsEmpty:"各平台模型列表为空:将展示全部真实模型名(不归入「其他」)。",namedModelsCount:"将展示 {count} 个命名模型维度;名单外模型归入各平台「其他」。",userContractTitle:"用户端展示约定",userContract:{health:"健康色三指标:错误率 60% + 首 Token P50 20% + 缓存率 20%(阈值可在上方配置)",trend:"趋势可切换色块矩阵 / 折线图(错误率 · 缓存率 · 首 Token)",latency:"延迟展示 AVG · P50 · P90;不展示绝对请求数 / 错误数",models:"模型列表留空时展示真实模型名,不会全部归入「其他」"}},admin:{descriptionV1:"当前系统设置为 V1 主动探测:可管理监控项并立即检测;V2 聚合不会运行。",descriptionV2:"当前系统设置为 V2 被动监控:配置聚合维度;V1 主动探测不会运行。",tabAria:"监控管理",tabV2:"V2 数据监控配置",tabV1Active:"V1 主动探测",tabV1History:"V1 历史(当前模式未启用探测)"}}},a={batchImage:{columns:{taskName:"任务名称",model:"模型",apiKey:"提交密钥",result:"结果",cost:"费用",downloadStatus:"下载状态"},status:{queued:"排队中",running:"生成中",processingResults:"整理结果",settling:"结算中",completed:"已完成",failed:"失败",cancelled:"已取消",outputDeleted:"结果已删除",partialSuccess:"部分成功",allFailed:"全部失败"},itemStatus:{pending:"排队中",succeeded:"成功",failed:"失败",cancelled:"已取消",recovered:"已补成功"},filters:{searchTaskName:"搜索任务名称",allApiKeys:"全部 API Key",allStatuses:"全部状态",allDownloadStates:"全部下载状态",downloaded:"已下载",notDownloaded:"未下载"}
1,actions:{usageGuide:"使用说明",createJob:"创建批量任务",downloadSelected:"下载选中",deleteRecords:"删除记录",retryFailedItems:"重试失败项",cancelJob:"取消任务",downloadZip:"下载 ZIP",viewDetail:"查看详情",download:"下载",moreActions:"更多操作",copyInstruction:"复制说明",submitJob:"提交任务"},list:{selectedJobs:"已选择 {count} 个任务",expandChildren:"展开 {n} 个子任务",collapseChildren:"收起子任务",childCount:"{n} 子任务",childBadge:"子任务",keyNotRecorded:"未记录",totalCount:"共 {n}",notDownloaded:"未下载",empty:"暂无批量任务",emptyHint:"点击右上角创建批量任务。"},pagination:{pageNumber:"第 {page} 页",pageItems:"本页 {count} 条"},promptPopover:{title:"完整 Prompt",copied:"Prompt 已复制"},detail:{title:"任务详情",aggregatedResult:"汇总结果",result:"结果",cost:"费用",downloadStatus:"下载状态",items:"明细",preview:"预览",previewZoom:"放大压缩预览 {id}",previewReload:"重新加载压缩预览",previewLoad:"加载压缩预览",previewUnavailable:"不可预览",noImage:"无图片",loadingItems:"正在加载明细...",noItems:"暂无明细",noItemsHint:"排队或生成中的任务会先显示已提交的 prompt,结果整理完成后会更新图片状态。",mainTask:"主任务:{name}",childTask:"子任务:{name}",holdCost:"冻结 {amount}"},itemResult:{recoveredByRetry:"旧失败已由重试子任务补成功",readyPreview:"图片已生成,可点击预览",readyDownload:"图片已生成,可下载",noUsableImage:"未生成可用图片",cancelled:"任务已取消",waiting:"等待生成结果",emptyImageOutput:"上游返回了结果,但这条没有图片内容。通常是 Gemini/Vertex 单条生成失败或被安全策略拦截。",providerItemFailed:"上游返回的这条结果没有可用图片。"},imagePreview:{title:"图片预览",notice:"当前显示的是浏览器本地缓存的压缩缩略图,清晰度会有影响;需要查看原图请下载 ZIP。"},create:{title:"创建批量任务",taskName:"任务名称",taskNamePlaceholder:"不填写则默认使用当前时间",loadingKeys:"加载 API Key 中...",selectKeyPlaceholder:"请选择 Gemini API Key",noKeysHint:"当前没有可用于批量生图的 Gemini API Key。请先创建并绑定已开启批量生图的 Gemini 分组。",model:"模型",imageSize:"图片尺寸",imageSizeHint:"当前批量任务固定按 1K 图片提交。",outputFormat:"输出格式",estimatedOutput:"预计生成",estimatedOutputValue:"{images} å¼  / {prompts} 条",promptAdded:"已添加 {count} 条",promptPlaceholder:"粘贴 prompt,添加后进入下方列表",customIdPlaceholder:"Custom ID 可选",outputCountPerPrompt:"每条生成张数",outputCountOption:"{n} å¼ ",referenceImage:"参考图",removeReferenceImage:"移除参考图",limitsHint:"每条最多 {maxPerItem} 张,整组最多 {maxPerJob} 张;当前模型每条最多 {refLimit} 张参考图,参考图按生成张数重复消耗输入 token。",referenceCount:"{n} 参考图",noPrompts:"还没有添加 prompt。",cancelNotice:"取消任务会请求上游取消;已被系统索引为成功的图片仍会按成功项结算扣费,其余冻结金额会释放。",submittingNotice:"正在创建上游批量任务,通常需要几秒,请不要重复提交。",modelNoReferenceImages:"当前模型不支持参考图。",refLimitReached:"当前模型每条最多 {limit} 张参考图。",refLimitExceededIgnored:"当前模型每条最多 {limit} 张参考图,已忽略超出的文件。",refFormatUnsupported:"参考图仅支持 PNG、JPEG 或 WebP。",refFileTooLarge:"{name} 超过 10MB,已忽略。"},guide:{title:"批量生图使用说明",uiTitle:"当前界面如何使用",step1:"1. 选择已开启批量生图的 Gemini API Key,模型列表会按该 Key 所属分组可用模型展示。",step2:"2. 任务名称可以留空,提交时会自动使用当前时间;Prompt 需要一条条添加到列表里,每条 Prompt 可附参考图,也可以设置重复生成张数。",step3:"3. 提交后任务会先排队,明细会展示已提交的 Prompt;图片预览默认不加载,点击明细里的预览按钮才会加载单张图。",step4:"4. 完成后可以下载 ZIP;部分失败时,更多菜单里可以只重试失败项。当前结算仍按成功输出图张数计算,不单独对参考图加价。",skillTitle:"给 Codex 的 Skill 说明",skillDesc:"用于告诉 Codex 如何ä
1»£æ›¿ç”¨æˆ·æ•´ç† prompt、提交任务和下载结果。"},messages:{loadKeysFailed:"加载 API Key 失败",loadModelsFailed:"加载可用模型失败",loadJobsFailed:"加载批量任务失败",selectApiKey:"请选择可用的 Gemini API Key",noModelsForKey:"当前密钥没有可用的批量生图模型",selectModel:"请选择模型",promptRequired:"请至少填写一条 prompt",submitted:"批量任务已提交",submitFailed:"提交失败",refreshFailed:"刷新失败",cancelConfirm:"取消会请求上游取消;已被系统索引为成功的图片仍会按成功项结算扣费,其余冻结金额会释放。确定取消吗?",cancelled:"已请求取消任务",cancelFailed:"取消失败",batchDownloadStarted:"已开始下载选中的任务",downloadFailed:"下载失败",retrySubmitted:"已提交失败项重试任务",retryFailed:"重试失败项失败",retryMissingPrompts:"这个任务没有保存失败项 prompt,无法自动重试。请复制原 prompt 后重新创建任务。",retryTaskNameSuffix:"重试失败项",deleteConfirm:"删除后这个任务会从你的列表隐藏,但账务记录仍会保留。确定删除吗?",deleteSelectedConfirm:"删除后选中的任务会从你的列表隐藏,但账务记录仍会保留。确定删除吗?",deleted:"任务记录已删除",deleteFailed:"删除任务记录失败",loadItemsFailed:"加载明细失败",loadPreviewFailed:"加载图片预览失败",copiedInstruction:"已复制批量生图说明",loadingModels:"加载可用模型中...",noModels:"无可用模型",noModelsHint:"当前密钥所属分组没有配置可用于批量生图的模型。",noCompatibleAccount:"当前密钥所属分组没有可用的批量生图上游账号。请联系管理员检查:该分组是否绑定了可调度的 Gemini API Key 或 Vertex 服务账号,以及账号是否支持所选模型。",unsupportedProvider:"这个任务使用的批量生图通道当前不可用。请联系管理员检查批量生图通道配置。",providerSubmitFailed:"上游批量生图任务提交失败。请联系管理员检查上游账号状态、模型权限或服务状态。",vertexGcsBucketMissing:"Vertex 批量生图缺少托管 GCS 存储桶配置。请联系管理员配置 BATCH_IMAGE_VERTEX_MANAGED_GCS_BUCKET 后再提交。",queueFailed:"任务队列暂时不可用,批量任务没有成功入队。请联系管理员检查队列服务。",billingHoldFailed:"费用冻结失败,批量任务没有成功提交。请联系管理员检查余额冻结或计费服务。",groupDisabled:"当前密钥所属分组没有开启批量生图。你可以换一个已开启批量生图的密钥,或联系管理员开启。",pricingMissing:"所选模型还没有配置批量生图价格。请联系管理员补充价格配置。",insufficientBalance:"余额不足,无法冻结本次批量生图费用。",invalidModel:"请选择一个可用于当前密钥的批量生图模型。",invalidItems:"Prompt 列表格式不正确,请检查是否为空、是否超过数量限制,或图片尺寸是否仍为 1K。",duplicateCustomId:"Prompt 列表里的 custom_id 不能重复。",promptTooLong:"单条 prompt 过长,请缩短后重试。",invalidReferenceImage:"参考图格式不正确,请使用 10MB 以内的 PNG、JPEG 或 WebP。",tooManyReferenceImages:"参考图数量超过限制:Flash Image 每条最多 3 张,Pro Image 每条最多 14 张,整组最多 1000 张。",referenceImagesTooLarge:"参考图总量过大。inline 参考图整组最多 128MB;大量参考图请改用 gs:// file_uri 或拆分任务。",tooManyOutputImages:"预计生成张数超过限制:每条最多 4 张,整组最多 200 张。",idempotencyConflict:"这次提交和之前的请求标识冲突,请刷新页面后重新提交。",notReady:"任务还没有完成,完成后才能下载。",outputDeleted:"这个任务的结果文件已经被清理,无法下载。",resultMissing:"结果文件不可用,可能是上游结果文件已清理、存储权限异常,或管理员迁移过存储配置。请联系管理员检查结果文件。",itemFailed:"这条明细没有成功图片,无法预览。",itemImageIndexOutOfRange:"这条明细没有可预览的图片。",downloadLimited:"当前下载请求太多,请稍后再试。",downloadTooLarge:"这个 ZIP 太大,已超过单次下载限制。请减少单次下载数量,或联系管理员调整批量下载上限。",deleteNotReady:"任务结束后才能删除记录。正在生成或结算中的任务请先等待完成。",disabled:"批量生图功能当前未开启。",authRequired:"当前 API Key 不可用或已失效,请重新选择密钥。",adminReference:"请把错误码和请求 ID 发给管理员排查。",errorReference:"错误信息",errorCodeRef:"错误码:{code}",requestIdRef:"请求 ID:{id}",httpStatusRef:"HTTP 状态:{status}"}}},r={availableChannels:{title:"可用渠道",description:"按渠道聚合查看关联分组与支持模型(已展开通配符)",searchPlaceholder:"搜索渠道或模型...",columns:{name:"渠道名",status:"状态",billingSource:"计费模型来源",groups:"关联分组",supportedModels:"支持模型"},empty:"暂无数据",noGroups:"未关联分组",noModels:"未配置模型映射",noPricing:"未配置定价",statusActive:"启用",statusDisabled:"停用",billingSource:{requested:"请求模型",upstream:"上游模型",channel_mapped:"映射后模型"},pricing:{billingMode:"计费模式",billingModeToken:"按 Token",billingModePerRequest:"按次",billingModeImage:"按图片",billingModeVideo:"按视频",videoPrice:"视频单价",unitPerSecond:"/ 秒",inputPrice:"输入",outputPrice:"输出",cacheWritePrice:"缓存写入",cacheWrite5mPrice:"缓存写入(5m)",cacheWrite1hPrice:"缓存写入(1h)",cacheReadPrice:"缓存读取",imageOutputPrice:"图片输出",perRequestPrice:"每次请求",intervals:"阶梯定价",unitPerMillion:"/ 1M token",unitPerRequest:"/ 次"}},channels:{title:"渠道管理",description:"管理渠道和自定义模型定价",searchChannels:"搜索渠道...",createChannel:"创建渠道",editChannel:"编辑渠道",deleteChannel:"删除渠道",statusActive:"启用",statusDisabled:"停用",allStatus:"全部状态",groupsUnit:"个分组",pricingUnit:"条定价",noChannelsYet:"暂无渠道",createFirstChannel:"创建第一个渠道来管理模型定价",loadError:"加载渠道列表失败",createSuccess:"渠道创建成功",updateSuccess:"渠道更新成功",deleteSuccess:"渠道删除成功",createError:"创建渠道失败",updateError:"更新渠道失败",deleteError:"删除渠道失败",nameRequired:"请输入渠道名称",noGroupsSelected:"请为 {platform} 至少选择一个分组",emptyModelsInPricing:"请为 {platform} 定价规则至少添加一个模型",duplicateModels:"模型「{0}」在多个定价条目中重复",modelConflict:"模型模式 '{model1}' 和 '{model2}' 冲突:匹配范围重叠。模型名称按大小写不敏感匹配,已有条目已覆盖其所有大小写变体,无需重复添加。",mappingConflict:"模型映射源 '{model1}' 和 '{model2}' 冲突:匹配范围重叠。源模式按大小写不敏感匹配,已有条目已覆盖其所有大小写变体。",intervalValidation:{negativeMin:"区间 #{index}:最小 token 数({value})不能为负数",maxPositive:"区间 #{index}:最大 token 数({value})必须大于 0",maxGreaterThanMin:"区间 #{index}:最大 token 数({max})必须大于最小 token 数({min})",negativePrice:"区间 #{index}:{field}不能为负数",multiplierPositive:"区间 #{index}:{field}必须大于 0",unboundedLast:"区间 #{index}:无上限区间(最大 token 数为空)必须放在最后",overlap:"区间 #{previousIndex} 和 #{currentIndex} 重叠:前一个上界({previousMax})大于当前下界({currentMin})",price:{inputPrice:"输入价格",outputPrice:"输出价格",cacheWritePrice:"缓存写入价格",cacheWrite1hPrice:"1h 缓存写入价格",cacheReadPrice:"缓存读取价格",perRequestPrice:"单次价格"}},timePricingValidation:{timezone:"请选择有效的 IANA 时区",format:"开始时间和结束时间必须使用 HH:mm:ss 格式",range:"开始时间必须早于结束时间;跨午夜请拆分为两个时间段",overlap:"时间段不能重叠",multiplier:"倍率必须大于 0,且最多保留两位小数"},deleteConfirm:"确定要删除渠道「{name}」吗?此操作不可撤销。",columns:{name:"名称",description:"描述",status:"状态",groups:"分组",pricing:"定价",createdAt:"创建时间",actions:"操作"},billingMode:{token:"Token",perRequest:"按次",image:"图片(按次)",video:"视频(按秒)"},form:{name:"名称",namePlaceholder:"输入渠道名称",description:"描述",descriptionPlaceholder:"可选描述",status:"状态",groups:"关联分组",noGroupsAvailable:"暂无可用分组",inOtherChannel:"已属于「{name}」",modelPricing:"模型定价",models:"模型列表",modelsPlaceholder:"输入完整模型名后按回车添加",modelInputHint:"按回车添加,支持粘贴批量导入",billingMode:"计费模式",defaultPrices:"默认价格(未命中区间时使用)",inputPrice:"输入",outputPrice:"输出",cacheWritePrice:"缓存写入",cacheWrite5mPrice:"缓存写入(5m)",cacheWrite1hPrice:"缓存写入(1h)",cacheReadPrice:"缓存读取",cacheWritePriceShort:"缓存写",cacheWrite5mPriceShort:"缓存写 5m",cacheWrite1hPriceShort:"缓存写 1h",cacheReadPriceShort:"缓存读",imageInputPrice:"图片输入",imageTokenPrice:"图片输出",imageOutputPrice:"图片输出价格",pricePlaceholder:"默认",fastMultiplier:"Fast 倍率",flexMultiplier:"Flex 倍率",reasoningEffortMultipliers:"自定义思考等级倍率(可选)",reasoningEffortMultipliersHint:"按请求最终转发的思考等级,对整次请求的费用与额度消耗应用对应倍率。未配置的等级按 1 倍计费,可与其他计费倍率叠加。",reasoningEffortMultiplierLabel:"{effort} 思考等级倍率",reasoningEffortMultiplierDefault:"默认 1",clearReasoningEffortMultipliers:"清空倍率",reasoningEffortMultiplierPositive:"{effort} 思考等级倍率必须为大于 0 的有限数字",reasoningEffortLevelInvalid:"不支持的思考等级:{effort}",multiplierPlaceholder:"未配置",multiplierPositive:"Fast/Flex 倍率必须为大于 0 的有限数字",inputMultiplier:"输入倍率",outputMultiplier:"输出倍率",cacheWriteMultiplier:"缓存写倍率",cacheReadMultiplier:"缓存读倍率",intervals:"上下文区间定价(可选)",timePricing:"时间段
1定价(可选)",timezone:"时区",timePricingDayScope:"生效日",timePricingEveryDay:"每日生效(周一至周日,含周末)",timePricingWeekdaysOnly:"仅工作日生效(周一至周五)",addTimePeriod:"添加时间段",startTime:"开始时间",endTime:"结束时间",multiplier:"倍率",removeTimePeriod:"删除时间段",minTokens:"最小",maxTokens:"最大",inclusive:"(含)",addInterval:"添加区间",requestTiers:"按次计费层级",imageTiers:"图片计费层级(按次)",videoTiers:"视频分辨率层级(按秒)",addTier:"添加层级",noTiersYet:"暂无层级,点击添加配置按次计费价格",noPricingRules:'暂无定价规则,点击"添加"创建',perRequestPrice:"单次价格",perRequestPriceRequired:"按次/图片计费模式必须设置默认价格或至少一个计费层级",tierLabel:"层级",resolution:"分辨率",modelMapping:"模型映射",modelMappingHint:"将请求中的模型名映射为实际模型名。在账号级别映射之前执行。",noMappingRules:'暂无映射规则,点击"添加"创建',mappingSource:"源模型",mappingTarget:"目标模型",billingModelSource:"计费基准",billingModelSourceChannelMapped:"以渠道映射后的模型计费",billingModelSourceRequested:"以请求模型计费",billingModelSourceUpstream:"以最终模型计费",billingModelSourceResponse:"按上游响应模型计费",billingModelSourceHint:"控制使用哪个模型名称进行定价查找",selectedCount:"已选 {count} 个",searchGroups:"搜索分组...",noGroupsMatch:"没有匹配的分组",restrictModels:"限制模型",restrictModelsHint:"开启后,仅允许模型定价列表中的模型。不在列表中的模型请求将被拒绝。",defaultPerRequestPrice:"默认单次价格(未命中层级时使用)",defaultImagePrice:"默认图片价格(未命中层级时使用)",defaultVideoPrice:"默认视频每秒价格(未命中层级时使用)",platformConfig:"平台配置",webSearchEmulation:"Web Search 模拟",webSearchEmulationHint:"⚠️ 开启后该渠道下所有 Anthropic 分组的账号将自动拦截 web_search 请求,请谨慎操作",webSearchEmulationGlobalDisabled:"请先在系统设置 → 网关 → Web Search 模拟中启用全局开关",codexImageGenerationBridge:"Codex 图片生成桥接",codexImageGenerationBridgeHint:"开启后,OpenAI 分组仅会为非 Responses Lite 的 Codex /responses 文本请求自动注入 hosted image_generation 工具。桥接不会为 Responses Lite 注入工具;本地 image_gen 的处理由客户端和账号策略决定。仅在路由账号支持图片生成时开启。",bedrockCCCompat:"Bedrock CC 兼容",bedrockCCCompatHint:"⚠️ 开启后,该渠道下 Bedrock 账号的请求将进行 Claude Code 兼容处理(thinking 类型转换、tool_use ID 清理)",basicSettings:"基础设置",addPlatform:"添加平台",noPlatforms:'点击"添加平台"开始配置渠道',mappingCount:"条映射",pricingEntry:"定价配置",noModels:"未添加模型",applyPricingToAccountStats:"应用模型定价到账号统计",applyPricingToAccountStatsDesc:"启用后,未被自定义规则匹配的请求将使用模型定价文件中的标准价格计算账号统计费用",accountStatsPricingRules:"自定义账号统计定价规则",addRule:"添加规则",noRulesConfigured:"未配置自定义规则,将使用上方的模型定价。",ruleName:"规则名称(可选)",ruleGroups:"分组",ruleAccounts:"账号",searchAccountPlaceholder:"搜索账号...",ruleAccountsHint:"留空表示匹配所有账号",ruleModelPricing:"模型定价",noGroupsInChannel:"上方平台标签页中未选择分组",unnamed:"未命名",syncLatestModels:"同步最新模型",syncingModels:"同步中...",syncModelsSuccess:"已同步 {count} 个新模型",syncModelsAlreadyUpToDate:"模型列表已是最新",syncModelsError:"同步模型失败"}},riskControl:{engine:"审计引擎",activeEngine:"当前生效引擎:{engine}",engineUnavailable:"当前引擎没有可用 Key,API 审计不可用;失败请求按现有策略放行。",typeSafeNotice:"TypeSafe AI 仅审文字,图片不外发也不审核。阈值为待校准初值;公共拦截、通知、封禁策略不会随引擎切换而关闭。",typeSafeThresholds:"默认阈值与 OpenAI 一致,但两者分数含义不同。请结合实际审核结果调整各类别阈值。",auditSource:"审计来源",skippedImages:"未审图片:{count}",legacyAuditSource:"OpenAI(历史记录未保存审核模型版本)",title:"风控中心",description:"配置内容审计策略并查看审核记录",loadFailed:"加载风控中心失败",saveFailed:"保存内容审计配置失败",logsFailed:"加载审核记录失败",saved:"内容审计配置已保存",refresh:"刷新",config:"内容审计配置",configHint:"调用所选审计引擎进行请求内容评分,命中阈值后按模式处理。",openSettings:"内容审计设置",settingsTitle:"内容审计设置",refreshStatus:"刷新状态",records:"审核记录",recordsHint:"展示命中、æ
1‹¦æˆªã€å¼‚常和已采样记录。",saveConfig:"保存内容审计配置",statusFailed:"加载运行状态失败",enabled:"开启内容审计",enabledHint:"关闭后即使风控中心菜单启用,也不会审核网关请求。",mode:"全局模式",modePreBlock:"前置拦截",modePreBlockDesc:"每次请求先同步审核最新用户输入,命中后立即拒绝请求。",modeObserve:"仅观察",modeObserveDesc:"请求直接放行,最新用户输入进入异步审核队列;命中后只记录、通知和按规则累计。",modeOff:"关闭",modeOffDesc:"不执行内容审计,也不会写入审核记录。",baseUrl:"Base URL",model:"模型名",apiKey:"API Key",apiKeys:"API Keys",apiKeyCount:"{count} 个 Key",apiKeyPlaceholder:"请输入 API Key",apiKeysPlaceholder:"新增 API Key,每行一个;保存后会追加到已保存 Key",apiKeysPlaceholderReplace:"覆盖保存 API Key,每行一个;保存后会替换全部已保存 Key",apiKeysPlaceholderKeep:"新增 API Key,每行一个;保存后会追加到已保存 Key",apiKeysHint:"当前已保存 {count} 个 Key;输入区只用于新增,保存时会增量追加并自动去重。",apiKeysWriteMode:"写入方式",apiKeysModeAppend:"增量添加",apiKeysModeReplace:"覆盖保存",apiKeysModeAppendHint:"默认模式:保存时追加输入区 Key,并保留已保存 Key。",apiKeysModeReplaceHint:"覆盖模式:保存时用输入区 Key 替换全部已保存 Key。",apiKeysReplaceWarning:"覆盖模式",apiKeysReplaceNoInput:"覆盖保存至少需要输入 1 个 API Key",apiKeyPlaceholderKeep:"留空保持不变",apiKeyWillClear:"保存后清除已配置 Key",apiKeyConfigured:"已配置",apiKeyTemporary:"待保存",apiKeyPendingDelete:"待删除",apiKeyPendingDeleteCount:"待删除 {count} 个 Key",deleteApiKey:"删除这个 Key",undoDeleteApiKey:"撤销删除",inputApiKeyCount:"输入区 {count} 个 Key",storedApiKeyCount:"已保存 {count} 个 Key",testInputApiKeys:"测试输入区 Key",testStoredApiKeys:"测试已保存 Key",testContentWithStoredApiKey:"用已保存 Key 试跑内容",testingApiKeys:"测试中",apiKeyTestNoInput:"请先输入需要测试的 API Key",apiKeyTestDone:"Key 测试完成,共 {count} 个",apiKeyTestFailed:"测试审计 API Key 失败",apiKeyHealth:"Key 可用状态",apiKeyFreezeRule:"400 不冻结;401/403 冻结 10 分钟;429/529 冻结 1 分钟;其他 HTTP 错误冻结 10 秒。",apiKeyRows:"{count} 个 Key",apiKeyRowsCollapsed:"已隐藏 {count} 个 Key",apiKeyRowsExpanded:"正在显示全部 {count} 个 Key",expandApiKeyRows:"展开",collapseApiKeyRows:"收起",apiKeyHealthEmpty:"暂无 Key 状态",apiKeyHealthEmptyHint:"保存 Key 或测试输入区 Key 后会显示可用性。",apiKeyStatusOk:"可用",apiKeyStatusError:"异常",apiKeyStatusFrozen:"冻结",apiKeyStatusUnknown:"未测试",apiKeyFailureCount:"失败 {count} 次",apiKeyLatency:"{ms} ms",apiKeyHTTPStatus:"HTTP {status}",apiKeyFrozenUntil:"冻结至 {time}",apiKeyLastChecked:"检查于 {time}",apiKeyNotTested:"尚未测试",auditTestInput:"审计试跑输入",auditTestInputHint:"可填写提示词并上传或粘贴图片;图片以 base64 发送,不会保存文件。",auditTestPromptPlaceholder:"输入要测试的用户提示词;留空时仅测试 Key 可用性。",auditTestImages:"测试图片",auditTestImagesHint:"支持上传、拖拽或粘贴图片,最多 1 张,每张不超过 8MB。",addAuditTestImage:"添加图片",clearAuditTest:"清空试跑",auditTestImageLimit:"最多只能添加 {count} 张测试图片",auditTestImageTooLarge:"单张测试图片不能超过 8MB",auditTestImageReadFailed:"读取测试图片失败",auditTestResult:"审计试跑结果",auditTestHighest:"最高分类 {category},分数 {score}",auditTestComposite:"综合评分",auditTestFlagged:"命中阈值",auditTestPassed:"未命中",notConfigured:"未配置",clearApiKey:"清除已保存 Key",keepApiKey:"保留已保存 Key",timeoutMs:"HTTP 超时 (ms)",retryCount:"失败重试次数",sampleRate:"采样率",proxy:"代理服务器",proxyHint:"审计请求经指定代理(IP管理-代理服务器)发出;默认直连。",recordNonHits:"记录未命中输入",recordNonHitsHint:"开启后会记录抽样但未命中的请求摘要,摘要会先脱敏再入库。",preHashCheck:"启用前置哈希比对",preHashCheckHint:"异步审核命中过的输入哈希会被前置拦截;该拦截不发送邮件,也不累计封禁次数。",flaggedHashCount:"当前哈希集合数量:{count} 个",flaggedHashHint:"哈希永久保存在 Redis 集合中;可粘贴完整 64 位哈希删除误拦截项,或一键清空全部风险哈希。",flaggedHashPlaceholder:"粘贴完整 64 位输入哈希",deleteFlaggedHash:"删除指定哈希",clearFlaggedHashes:"一键清空",clearFlaggedHashesConfirm:"确定要清空全部风险输入哈希吗?此操作不会删除审核记录,但会取消所有历史哈希拦截。",flaggedHashDeleted:"风险哈希已删除",flaggedHashNotFound:"该风险哈希不存在",flaggedHashDeleteFailed:"删除风险哈希失败",flaggedHashesCleared:"已清空 {count} 个风险哈希",flaggedHashesClearFailed:"清空风险哈希失败",workerCount:"Worker 数",queueSize:"异步队列大小",blockStatus:"拦截 HTTP 状态码",blockMessage:"自定义拦截提示",defaultBlockMessage:"内容审计命中风险规则,请调整输入后重试",emailOnHit:"命中后发送邮件",emailOnHitHint:"开启后每次达到阈值都会向用户发送风控提醒邮件;自动封禁通知始终发送。",autoBan:"自动封禁用户",autoBanHint:"命中次数达到阈值后将禁用用户账号、刷新认证缓存并发送封禁通知邮件。",cyberPolicyExcludeBan:"cyber_policy 不计入封号次数",cyberPolicyExcludeBanHint:"开启后,cyber_policy 拦截不再计入自动封号的违规次数:当次不判定封号,历史累计亦排除。风控日志与通知邮件照常。",violationNotCounted:"未计入封号",banThreshold:"封禁触发次数",violationWindowHours:"累计窗口(小时)",hitRetentionDays:"命中记录保留(
1天)",nonHitRetentionDays:"未命中记录保留(天,最多 3 天)",violationCount:"{count} 次",emailSent:"已发邮件",emailNotSent:"未发邮件",autoBanned:"已封禁",unbanUser:"解封",unbanSuccess:"用户已解封",unbanFailed:"解封用户失败",inputDetailTitle:"输入摘要详情",inputDetailContent:"完整内容",matchedKeyword:"命中关键词",queueDelay:"排队 {ms} ms",allGroups:"全部分组",allGroupsHint:"当前审计全部分组",selectedGroupsHint:"当前审计指定分组",groupScope:"审计分组",groupScopeHint:"开启右侧开关表示全部分组,关闭后选择指定分组。",selectedGroups:"指定分组",searchGroups:"搜索分组名称或平台",noGroups:"暂无可用分组",modelFilter:"模型范围",modelFilterHint:"按客户端请求的模型名决定是否执行内容审计,模型映射后仍以请求模型判断。",modelFilterAll:"所有模型",modelFilterAllDesc:"所有模型请求都会进入内容审计。",modelFilterInclude:"仅指定模型",modelFilterIncludeDesc:"只有列表中的模型会执行内容审计。",modelFilterExclude:"排除指定模型",modelFilterExcludeDesc:"列表中的模型跳过内容审计,其余模型执行审计。",modelFilterModels:"模型列表",modelFilterModelCount:"已配置 {count} 个模型",modelFilterModelsRequired:"当前模型范围至少需要配置 1 个模型",modelFilterAllSummary:"全部模型生效",modelFilterIncludeSummary:"仅 {count} 个模型生效",modelFilterExcludeSummary:"排除 {count} 个模型",emptyLogs:"暂无审核记录",preBlockSyncStatus:"前置拦截同步状态",preBlockSyncHint:"同步审核链路的实时计数,不包含异步写记录任务。",preBlockActive:"同步处理中",preBlockActiveHint:"当前正在审核",preBlockChecked:"已检查",preBlockCheckedHint:"进入前置拦截链路",preBlockAllowed:"已放行",preBlockAllowedHint:"未触发拦截",preBlockBlocked:"已拦截",preBlockBlockedHint:"命中后拒绝请求",preBlockErrors:"审核异常",preBlockErrorsHint:"失败或无可用 Key",preBlockAvgLatency:"平均耗时",preBlockAvgLatencyHint:"同步链路平均值",preBlockAPIKeyLoad:"审核 Key 负载",preBlockAPIKeyLoadHint:"同步前置拦截直接轮询可用审核 Key。",preBlockAPIKeyLoadSummary:"同步并发 {active} / 可用 Key {available},累计 {total} 次,worker:{workerActive} / {workerTotal}",preBlockAPIKeyTotals:"累计 {total},成功 {success},异常 {errors}",preBlockAPIKeyLoadEmpty:"暂无审核 Key 负载数据",preBlockKeyActiveShort:"并发",preBlockKeyTotalShort:"累计",preBlockKeyAvgShort:"平均",preBlockKeyLastShort:"最近",workerStatus:"Worker 运行状态",workerStatusHint:"异步审计任务和前置拦截记录任务的队列与 Worker 池状态,不包含同步前置拦截审核请求。",workerPool:"Worker 池",workerPoolMeta:"{active} 个处理中,{idle} 个空闲可用,共 {total} 个",queueUsage:"队列占用",activeWorkers:"处理中",idleWorkers:"空闲可用",workerActive:"正在处理异步审计或记录任务",workerIdle:"已启动,当前空闲可用",workerDisabled:"风控或内容审计未启用",processed:"异步已处理",droppedErrors:"丢弃/异常",autoRefresh:"每 15 秒自动刷新",last
1Cleanup:"上次清理:{time}",cleanupStats:"上次清理删除命中 {hit} 条,未命中 {nonHit} 条",riskSwitchOff:"系统开关关闭",riskThresholds:"风险阈值",riskThresholdsHint:"按当前引擎的分类调整命中阈值,分数达到或超过阈值即视为命中。",riskThresholdDefault:"默认 {value}",riskThresholdReset:"恢复默认阈值",riskThresholdPercent:"阈值百分比",tabs:{basic:"基础",scope:"审计范围",runtime:"运行队列",response:"命中通知",riskThresholds:"风险阈值",keywords:"关键词拦截",retention:"日志保留"},blockedKeywords:"拦截关键词",blockedKeywordsPlaceholder:`每行输入一个关键词,例如:
2敏感词1
3敏感词2`,blockedKeywordsDescription:"匹配忽略大小写;命中后会按下方策略决定是否调用上游审计接口。",blockedKeywordsPreBlockHint:"关键词拦截仅在「前置拦截」模式下生效。",blockedKeywordsModeWarning:"当前为「{mode}」模式,关键词拦截不会生效;请切换到「前置拦截」模式后再保存关键词。",blockedKeywordCount:"已配置 {count} 个关键词",blockedKeywordsLimit:"最多保存 {max} 个关键词,单个长度不超过 200 个字符;重复项会自动去重。",keywordBlockingMode:"审计策略",keywordModeKeywordAndApi:"关键词 + API",keywordModeKeywordAndApiDesc:"命中关键词直接拦截;未命中时再调用上游审计接口。",keywordModeKeywordOnly:"仅关键词",keywordModeKeywordOnlyDesc:"只用关键词判断,未命中即放行,不调用上游审计接口,可显著降低 API 用量。",keywordModeKeywordOnlyNotice:"当前为「仅关键词」策略:未命中关键词的请求将直接放行,不调用上游审计接口。",keywordModeApiOnly:"仅 API",keywordModeApiOnlyDesc:"只调用上游审计接口判断,本页的关键词列表将不会生效。",keywordModeApiOnlyNotice:"当前为「仅 API」策略:关键词列表不会生效,请求会全部交给上游审计接口判断。",overview:{status:"运行状态",enabled:"已启用",disabled:"未启用",apiKey:"API Key",groupScope:"审计范围",logs:"审核记录",currentFilter:"当前筛选结果"},filters:{search:"按用户/Key/摘要搜索",from:"开始时间",to:"结束时间",allGroups:"全部分组",allEndpoints:"全部端点"},table:{time:"时间",group:"分组",user:"用户",apiKey:"API Key",endpoint:"端点",result:"结果",highest:"最高分",actionMeta:"处置",latency:"上游耗时",input:"输入摘要"},result:{all:"全部结果",hit:"命中",blocked:"已拦截",pass:"未命中",error:"异常"},action:{block:"拦截",keywordBlock:"关键词拦截",cyberPolicy:"网络安全策略",error:"异常"}},channelMonitor:{title:"渠道监控",description:"监测各渠道的可用性、延迟和状态",searchPlaceholder:"搜索监控名称...",allProviders:"全部供应商",allStatus:"全部状态",enabledFilter:"启用状态",onlyEnabled:"仅启用",onlyDisabled:"仅禁用",createButton:"新增监控",createTitle:"新增渠道监控",editTitle:"编辑渠道监控",runNow:"立即检测",runSuccess:"检测完成",runFailed:"检测失败",duplicate:"复制",duplicating:"复制中",duplicateSuccess:"监控已复制为「{name}」,已默认停用,请确认配置后再启用",duplicateFailed:"复制监控失败",duplicateKeyUnavailable:"API Key 无法解密,请先编辑并重新填写 Key 后再复制",apiKeyDecryptFailed:"API Key 解密失败,请重新编辑该监控并填入新的 Key",createSuccess:"监控创建成功",updateSuccess:"监控更新成功",deleteSuccess:"监控删除成功",loadError:"加载监控列表失败",deleteConfirm:"确定要删除监控「{name}」吗?此操作不可撤销。",nameRequired:"请输入监控名称",primaryModelRequired:"请输入主模型",linkedAccountRequired:"请选择关联账号",columns:{name:"名称",provider:"供应商",primaryModel:"主模型",availability7d:"7 天可用率",latency:"延迟 (ms)",enabled:"启用",actions:"操作"},form:{name:"名称",namePlaceholder:"输入监控名称",provider:"平台",checkMode:"检查方式",checkModeProbe:"探活",checkModeProbeHint:"向上游发送轻量 LLM 请求,检测可用性与延迟",checkModeQuota:"配额",checkModeQuotaHint:"只查询关联账号的用量滚动窗口/余额,不发送探活请求",checkModeQuotaProbe:"探活 + 配额",checkModeQuotaProbeHint:"探活的同时查询配额,用量快照附加在主模型结果上",linkedAccount:"关联账号",linkedAccountPlaceholder:"选择账号",linkedAccountHint:"配额数据来自所选账号(复用账号管理侧的用量/余é¢
3æŸ¥è¯¢ï¼‰",linkedAccountEmpty:"当前平台暂无账号,请先在账号管理中添加",linkedAccountMissing:"关联账号已不存在或不可访问,请重新选择账号",openAIQuotaProbeHint:"注意:OpenAI 平台的用量查询可能触发 Codex 探测请求,会消耗账号自身的额度(每 10 分钟最多触发一次)",apiMode:"OpenAI 协议",apiModeChatCompletions:"OpenAI Compatible",apiModeChatCompletionsHint:"使用 /v1/chat/completions,发送 messages;适合大多数兼容站。",apiModeResponses:"Responses API",apiModeResponsesHint:"使用 /v1/responses,默认带 instructions + input;适合本站自检/Codex。",endpoint:"上游地址",endpointPlaceholder:"https://api.example.com",useCurrentDomain:"使用当前服务",apiKey:"API Key",apiKeyPlaceholder:"请输入 API Key",apiKeyEditPlaceholder:"留空表示不修改",useMyKey:"使用我的 Key",selectKeyTitle:"选择我的 API Key",selectKeyHint:"仅显示当前账号下处于「启用」状态且未过期的 Key。",noActiveKey:"没有可用的启用状态 Key",primaryModel:"主模型",primaryModelPlaceholder:"gpt-4o-mini",extraModels:"附加模型",extraModelsPlaceholder:"回车添加附加模型",groupName:"分组名称",groupNamePlaceholder:"可选,用于在用户视图中聚合显示",intervalSeconds:"检测间隔 (秒)",intervalSecondsHint:"范围:15 - 3600 秒",jitterSeconds:"随机抖动 (± 秒)",jitterSecondsHint:"每次检测在间隔基础上正负随机偏移该秒数,0 表示固定间隔;需满足 间隔 - 抖动 ≥ 15 秒",enabled:"启用监控",kindRequired:"请选择供应商"},runResultTitle:"检测结果",noMonitorsYet:"暂无监控",createFirstMonitor:"创建第一个监控来跟踪渠道可用性",advanced:{section:"高级(可选)",sectionHint:"自定义请求头和请求体,用于突破上游的客户端识别限制(如仅允许 Claude Code 客户端)。",headers:"自定义请求头",headersPlaceholder:`User-Agent: claude-cli/1.0.83 (external, cli)
4x-app: cli
5anthropic-beta: claude-code-20250219`,headerNamePlaceholder:"Header 名",headerValuePlaceholder:"Value",headerAddRow:"添加 Header",headerNameInvalid:"Header 名不能包含空格或冒号:{name}",headersHint:"与默认请求头合并,用户值优先。hop-by-hop 类 header(Host/Content-Length/...)会被忽略。",headersParseError:"无法解析这一行:{line}",bodyMode:"请求体处理",bodyModeOff:"默认",bodyModeMerge:"合并",bodyModeReplace:"覆盖",bodyModeHintOff:"使用 adapter 默认请求体(带 challenge 数学题校验)。",bodyModeHintMerge:"与默认请求体浅合并,用户字段优先;但 model / messages / contents 会被保护不允许覆盖(动这些字段请用「覆盖」模式)。",bodyModeHintReplace:"完全用下方 JSON 作为请求体。注意:此模式下跳过 challenge 校验,改为 HTTP 2xx + 响应文本非空即视为可用。",bodyJson:"Body JSON",bodyJsonFormat:"格式化",bodyJsonHint:"失焦时自动解析校验。留空等价于没有覆盖。",bodyJsonError:"JSON 解析失败",bodyJsonObjectError:"请求体必须是一个 JSON 对象(不能是数组或基本类型)"},templateField:{label:"请求模板",none:"不使用模板",placeholder:"选择一个模板(按当前平台过滤)",applyHint:"选中模板后,会把模板的请求头和请求体拷贝到此监控(快照)。后续模板变动不自动同步。"},template:{manageButton:"模板管理",managerTitle:"请求模板管理",createButton:"新建模板",emptyState:"当前平台下还没有请求模板",missingName:"请输入模板名称",createSuccess:"模板创建成功",updateSuccess:"模板更新成功",deleteSuccess:"模板删除成功",applyButton:"应用到关联监控",applyTooltip:"把当前模板配置覆盖到所有关联的监控上",applyTitle:"应用模板",applyConfirm:"确认应用",applyConfirmMessage:"将把模板「{name}」的当前配置覆盖到 {n} 个关联监控。监控本地已编辑的自定义修改会被丢弃,是否继续?",applySuccess:"已应用到 {n} 个监控",applyPickerTitle:"应用模板「{name}」",applyPickerHint:"勾选要覆盖请求头/请求体的监控(默认全选)。监控本地已编辑的自定义修改会被丢弃。",applyPickerEmpty:"当前模板没有关联监控",applyPickerConfirm:"应用到 {n} 个监控",selectNone:"全不选",selectedCount:"已选 {n} / {total}",deleteConfirm:"确定要删除模板「{name}
5」吗?{n} 个关联监控会解除关联但保留自己的快照继续工作。",associatedCount:"{n} 个关联监控",headersSummary:"{n} 个自定义请求头",form:{name:"模板名称",namePlaceholder:"例:Claude Code 伪装",description:"说明",descriptionPlaceholder:"可选:说明这个模板的用途和来源(抓包日期等)"}}},subscriptions:{batchAssign:{enable:"批量分配订阅",hint:"搜索并添加多个用户,统一分配所选分组和有效期。每次最多 100 人。",selected:"已添加 {count} 位用户",removeUser:"移除 {email}",result:"分配完成:成功 {success} 人,失败 {failed} 人",retryHint:"已移除成功项,可检查失败原因后重新提交剩余用户。"},bulk:{extend:"批量调整有效期",reset_quota:"批量重置配额",revoke:"批量撤销",restore:"批量恢复",selected:"已选择 {count} 条订阅",selectSubscription:"选择订阅 #{id}",clearSelection:"清空选择",selectionHint:"当前页选择,翻页或筛选会清空,最多 100 条。各操作仅处理适用状态的订阅。",selectionLimit:"每次最多操作 100 条订阅",selectionRequired:"请至少选择一条订阅",confirmTargets:"本次将处理以下 {count} 条订阅",groupFallback:"分组 #{id}",extendHint:"正整数延长,负整数缩短,最多调整 36500 天。已过期订阅从当前时间起延长,不能缩短;缩短后的到期时间必须在未来。",invalidDays:"请输入 -36500 到 36500 之间的非零整数天数",resetWindows:"选择要重置的配额窗口",resetHint:"所选窗口的用量将归零,并从今天开始重新计算。",selectWindow:"请至少选择一个配额窗口",revokeHint:"撤销后这些订阅将无法继续使用,可稍后在已撤销列表中恢复。",restoreHint:"恢复后将重新启用这些订阅。原有效期已结束的订阅将显示为已过期。",confirm:"确认执行",retry:"重试原操作",retryHint:"暂未确认操作结果。重试会继续原操作,避免重复处理。也可关闭后重新选择相同订阅和参数重试。",requestFailed:"批量操作请求失败,请重试",result:"处理完成:成功 {success} 条,失败 {failed} 条",itemFailed:"操作失败"},title:"订阅管理",description:"管理用户订阅和配额限制",assignSubscription:"分配订阅",adjustSubscription:"调整订阅",revokeSubscription:"撤销订阅",restoreSubscription:"恢复订阅",allStatus:"全部状态",allGroups:"全部分组",allPlatforms:"全部平台",daily:"每日",weekly:"每周",monthly:"每月",noLimits:"未配置限额",unlimited:"无限制",resetNow:"即将重置",windowNotActive:"窗口未激活",resetInMinutes:"{minutes} 分钟后重置",resetInHoursMinutes:"{hours} 小时 {minutes} 分钟后重置",resetInDaysHours:"{days} 天 {hours} 小时后重置",quotaEndsInMinutes:"额度将在 {minutes} 分钟后结束",quotaEndsInHoursMinutes:"额度将在 {hours} 小时 {minutes} 分钟后结束",quotaEndsInDaysHours:"额度将在 {days} 天 {hours} 小时后结束",daysRemaining:"剩余 {days} 天",hoursMinutesRemaining:"剩余 {hours} 小时 {minutes} 分钟",minutesRemaining:"剩余 {minutes} 分钟",remainingDays:"剩余天数",noExpiration:"无过期时间",status:{active:"生效中",expired:"已过期",revoked:"已撤销",suspended:"已暂停"},columns:{user:"用户",group:"分组",usage:"用量",expires:"到期时间",status:"状态",actions:"操作"},form:{user:"用户",group:"订阅分组",validityDays:"有效期(天)",adjustDays:"调整天数"},selectUser:"选择用户",selectGroup:"选择订阅分组",groupHint:"仅显示订阅计费类型的分组",validityHint:"订阅的有效天数",adjustingFor:"为以下用户调整订阅",currentExpiration:"当前到期时间",adjustDaysPlaceholder:"正数延长,负数缩短",adjustHint:"输入正数延长订阅,负数缩短订阅(缩短后剩余天数需大于0)",assign:"分配",assigning:"分配中...",adjust:"调整",adjusting:"调整中...",revoke:"撤销",restore:"恢复",resetQuota:"重置配额",resetQuotaTitle:"重置用量配额",resetQuotaConfirm:"确定要重置 '{user}' 的每日、每周和每月用量配额吗?用量将归零并从今天开始重新计算。",quotaResetSuccess:"配额重置成功",failedToResetQuota:"重置配额失败",noSubscriptionsYet:"暂无订阅",assignFirstSubscription:"分配一个订阅以开始使用。",subscriptionAssigned:"订阅分配成功",subscriptionAdjusted:"订阅调整成功",subscriptionRevoked:"订阅撤销成功",subscriptionRestored:"订阅已恢复",failedToLoad:"加载订阅列表失败",failedToAssign:"分配订阅失败",failedToAdjust:"调整订阅失败",failedToRevoke:"撤销订阅失败",failedToRestore:"恢复订阅失败",adjustWouldExpire:"调整后剩余天数必须大于0",adjustOutOfRange:"调整天数必须在 -36500 到 36500 之间",pleaseSelectUser:"请选择用户",pleaseSelectGroup:"请选择分组",validityDaysRequired:"请输入有效的天数(至少1天)",revokeConfirm:"确定要撤销 '{user}' 的订阅吗?可稍后在已撤销列表中恢复。",restoreConfirm:"确定要恢复 '{user}' 的订阅吗?如果原订阅已过期,恢复后将显示为已过期。",guide:{title:"订阅管理教程",subtitle:"订阅模式允许你按时间周期为用户分配使用额度,支持日/周/月配额限制。按照以下步骤即可完成配置。",showGuide:"使用指南",step1:{title:"创建订阅分组",line1:"前往「分组管理」页面,点击「创建分组」",line2:"将计费类型设为「订阅」,配置日/周/月额度限制",line3:"保存分组,确保状态为「正常」",link:"前往分ç
5»„管理"},step2:{title:"分配订阅给用户",line1:"点击本页右上角「分配订阅」按钮",line2:"在弹窗中搜索用户邮箱并选择目标用户",line3:"选择订阅分组、设置有效期天数,点击「分配」"},step3:{title:"管理已有订阅"},actions:{adjust:"调整",adjustDesc:"延长或缩短订阅有效期",resetQuota:"重置配额",resetQuotaDesc:"将日/周/月用量归零,重新开始计算",revoke:"撤销",revokeDesc:"立即终止该用户的订阅,可在已撤销列表中恢复"},tip:"提示:订阅分组下拉列表中只会显示计费类型为「订阅」且状态为「正常」的分组。如果没有可选项,请先到分组管理中创建。"}}},n={scheduledTests:{title:"定时测试",addPlan:"添加计划",editPlan:"编辑计划",deletePlan:"删除计划",model:"模型",cronExpression:"Cron 表达式",enabled:"启用",lastRun:"上次运行",nextRun:"下次运行",maxResults:"最大结果数",noPlans:"暂无定时测试计划",confirmDelete:"确定要删除此计划吗?",createSuccess:"计划创建成功",updateSuccess:"计划更新成功",deleteSuccess:"计划删除成功",results:"测试结果",noResults:"暂无测试结果",responseText:"响应",errorMessage:"错误",success:"成功",failed:"失败",running:"运行中",schedule:"定时测试",cronHelp:"标准 5 字段 cron 表达式(例如 */30 * * * *)",cronTooltipTitle:"Cron 表达式示例:",cronTooltipMeaning:"用于定义自动执行测试的时间规则,格式依次为:分钟 小时 日 月 星期。",cronTooltipExampleEvery30Min:"*/30 * * * *:每 30 分钟运行一次",cronTooltipExampleHourly:"0 * * * *:每小时整点运行一次",cronTooltipExampleDaily:"0 9 * * *:每天 09:00 运行一次",cronTooltipExampleWeekly:"0 9 * * 1:每周一 09:00 运行一次",cronTooltipRange:"推荐填写范围:使用标准 5 字段 cron;如果只是健康检查,建议从每 30 分钟、每 1 小时或每天固定时间开始,不建议一开始就设置过高频率。",maxResultsTooltipTitle:"最大结果数说明:",maxResultsTooltipMeaning:"用于限制单个计划最多保留多少条历史测试结果,避免结果列表无限增长。",maxResultsTooltipBody:"系统只会保留最近的测试结果;当保存数量超过这个值时,更早的历史记录会自动清理,避免列表过长和存储持续增长。",maxResultsTooltipExample:"例如填写 100,表示最多保存最近 100 次测试结果;第 101 次结果写入后,最早的一条会被清理。",maxResultsTooltipRange:"推荐填写范围:一般可填 20 到 200。只关注近期可用性时可填 20-50;需要回看较长时间的波动趋势时可填 100-200。",autoRecover:"自动恢复",autoRecoverHelp:"测试成功后自动恢复异常状态的账号"},proxies:{title:"IP管理",description:"管理代理服务器配置",createProxy:"添加代理",editProxy:"编辑代理",deleteProxy:"删除代理",ad:{inline:"正在寻找合适的代理 IP?"},deleteConfirmMessage:"确定要删除代理 '{name}' 吗?",testProxy:"测试代理",dataImport:"导入",dataExportSelected:"导出选中",dataImportTitle:"导入代理",dataImportHint:"上传代理导出的 JSON 文件以批量导入代理。",dataImportWarning:"导入将创建或复用代理,保留状态并在完成后自动触发延迟检测。",dataImportFile:"数据文件",dataImportButton:"开始导入",dataImporting:"导入中...",dataImportSelectFile:"请选择数据文件",dataImportParseFailed:"数据解析失败",dataImportFailed:"数据导入失败",dataImportResult:"导入结果",dataImportResultSummary:"创建 {proxy_created},复用 {proxy_reused},失败 {proxy_failed}",dataImportErrors:"失败详情",dataImportSuccess:"导入完成:创建 {proxy_created},复用 {proxy_reused}",dataImportCompletedWithErrors:"导入完成但有错误:失败 {proxy_failed}",dataExport:"导出",dataExportConfirmMessage:"导出的数据包含代理的敏感信息,请妥善保存。",dataExportConfirm:"确认导出",dataExported:"数据导出成功",dataExportFailed:"数据导出失败",columns:{name:"名称",protocol:"协议",address:"地址",auth:"认证",location:"地理位置",status:"状态",accounts:"账号数",latency:"延迟",expiry:"有效期",createdAt:"创建时间",actions:"操作",nameLabel:"名称",namePlaceholder:"请输入代理名称",protocolLabel:"协议",selectProtocol:"选择协议",hostLabel:"主机",hostPlaceholder:"请输入主机地址",portLabel:"端口",portPlaceholder:"请输入端口",usernameLabel:"用户名(可选)",usernamePlaceholder:"请输入用户名",passwordLabel:"密码(可选)",passwordPlaceholder:"请输入密码",priorityLabel:"优先级",statusLabel:"状态"},filters:{protocol:"协议",allProtocols:"全部协议",status:"状态",allStatuses:"全部状态"}
5,copyProxyUrl:"复制代理 URL",urlCopied:"代理 URL 已复制",allProtocols:"全部协议",allStatus:"全部状态",searchProxies:"搜索代理...",protocols:{http:"HTTP",https:"HTTPS",socks5:"SOCKS5",socks5h:"SOCKS5H (远程 DNS)"},name:"名称",protocol:"协议",host:"主机",port:"端口",username:"用户名(可选)",password:"密码(可选)",status:"状态",enterProxyName:"请输入代理名称",optionalAuth:"可选认证信息",leaveEmptyToKeep:"留空保持不变",form:{hostPlaceholder:"请输入主机地址",portPlaceholder:"请输入端口"},noProxiesYet:"暂无代理",createFirstProxy:"添加您的第一个代理以开始使用。",testConnection:"测试连接",qualityCheck:"质量检测",batchQualityCheck:"批量质量检测",batchTest:"批量测试",testFailed:"失败",latencyFailed:"链接失败",batchTestEmpty:"暂无可测试的代理",batchTestDone:"批量测试完成,共测试 {count} 个代理",batchTestFailed:"批量测试失败",batchDeleteAction:"删除",batchDelete:"批量删除",batchDeleteConfirm:"确定删除选中的 {count} 个代理吗?已被账号使用的将自动跳过。",batchDeleteDone:"已删除 {deleted} 个代理,跳过 {skipped} 个",batchDeleteSkipped:"已跳过 {skipped} 个代理",batchDeleteFailed:"批量删除失败",deleteBlockedInUse:"该代理已有账号使用,无法删除",accountsTitle:"使用该IP的账号",accountsEmpty:"暂无账号使用此代理",accountsFailed:"获取账号列表失败",accountName:"账号名称",accountPlatform:"所属平台",accountNotes:"备注",standardAdd:"标准添加",batchAdd:"快捷添加",batchInput:"代理列表",batchInputPlaceholder:`每行输入一个代理,支持以下格式:
6socks5://user:pass{'@'}192.168.1.1:1080
7http://192.168.1.1:8080
8https://user:pass{'@'}proxy.example.com:443`,batchInputHint:"支持 http、https、socks5 协议,格式:协议://[用户名:密码{'@'}]主机:端口",parsedCount:"有效 {count} 个",invalidCount:"无效 {count} 个",duplicateCount:"重复 {count} 个",importing:"导入中...",importProxies:"导入 {count} 个代理",batchImportSuccess:"成功导入 {created} 个代理,跳过 {skipped} 个重复",batchImportAllSkipped:"全部 {skipped} 个代理已存在,跳过导入",failedToImport:"批量导入失败",saving:"保存中...",testing:"测试中...",creating:"创建中...",updating:"更新中...",noProxies:"暂无代理",noProxiesDescription:"添加代理服务器以增强 API 访问稳定性ã€
8‚",proxyCreated:"代理添加成功",proxyUpdated:"代理更新成功",proxyDeleted:"代理删除成功",proxyWorking:"代理连接正常",proxyWorkingWithLatency:"代理连接正常,延迟 {latency}ms",proxyTestFailed:"代理测试失败",qualityCheckDone:"质量检测完成:评分 {score}({grade})",qualityCheckFailed:"代理质量检测失败",batchQualityDone:"批量质量检测完成,共检测 {count} 个;优质 {healthy} 个,告警 {warn} 个,挑战 {challenge} 个,异常 {failed} 个",batchQualityFailed:"批量质量检测失败",batchQualityEmpty:"暂无可检测质量的代理",qualityReportTitle:"代理质量检测报告",qualityGrade:"等级 {grade}",qualityExitIP:"出口 IP",qualityCountry:"出口地区",qualityBaseLatency:"基础延迟",qualityCheckedAt:"检测时间",qualityTableTarget:"检测项",qualityTableStatus:"状态",qualityTableLatency:"延迟",qualityTableMessage:"说明",qualityInline:"质量 {grade}/{score}",qualityStatusHealthy:"优质",qualityStatusPass:"通过",qualityStatusWarn:"告警",qualityStatusFail:"失败",qualityStatusChallenge:"挑战",qualityTargetBase:"基础连通性",proxyCreatedSuccess:"代理添加成功",proxyUpdatedSuccess:"代理更新成功",proxyDeletedSuccess:"代理删除成功",testSuccess:"代理测试通过",failedToLoad:"加载代理列表失败",failedToSave:"保存代理失败",failedToDelete:"删除代理失败",failedToCreate:"创建代理失败",failedToUpdate:"更新代理失败",failedToTest:"测试代理失败",nameRequired:"请输入代理名称",hostRequired:"请输入主机地址",portInvalid:"端口必须在 1-65535 之间",deleteConfirm:"确定要删除代理 '{name}' 吗?使用此代理的账号将被移除代理设置。",neverExpires:"永不过期",expired:"已过期",overdueDays:"已超期 {days} 天",expiringInDays:"{days} 天后到期",remainingDays:"剩余 {days} 天",expiresAt:"有效期",nDays:"{days} 天",expiryDaysPlaceholder:"自定义天数,留空 = 永不过期",expiryWarnDays:"到期提醒提前天数",fallbackMode:"到期回退",fallbackNone:"不回退",fallbackProxy:"指定备用代理",fallbackDirect:"回退直连",backupProxy:"备用代理"},redeem:{title:"兑换码管理",description:"生成和管理兑换码",generateCodes:"生成兑换码",columns:{code:"兑换码",type:"类型",value:"面值",status:"状态",usedBy:"使用者",usedAt:"使用时间",expiresAt:"过期时间",createdAt:"创建时间",actions:"操作"},types:{balance:"余额",concurrency:"并发数",subscription:"订阅",invitation:"邀请码",admin_balance:"余额(管理员)",admin_concurrency:"并发数(管理员)"},balance:"余额",concurrency:"并发数",subscription:"订阅",invitation:"邀请码",invitationHint:"邀请码用于限制用户注册,使用后自动标记为已使用。",allTypes:"全部类型",allStatus:"全部状态",unused:"未使用",used:"已使用",searchCodes:"搜索兑换码或邮箱...",exportCsv:"导出 CSV",batchUpdate:"批量修改",batchUpdateTitle:"批量修改兑换码",selectedCount:"已选择 {count} 个兑换码",clearSelection:"清空选择",selectCodesFirst:"请先选择兑换码",noBatchFieldsSelected:"请至少勾选一个要修改的字段",batchUpdateSuccess:"成功修改 {count} 个兑换码",failedToBatchUpdate:"批量修改兑换码失败",batchFields:{status:"状态",expiresAt:"过期时间",notes:"备注",group:"分组"},batchNotesPlaceholder:"输入新的备注,留空可清空备注",clearGroup:"清空分组",deleteAllUnused:"删除全部未使用",deleteCodeConfirm:"确定要删除此兑换码吗?此操作无法撤销。",deleteAllUnusedConfirm:"确定要删除全部未使用的兑换码吗?此操作无法撤销。",deleteAll:"全部删除",generateCodesTitle:"生成兑换码",generatedSuccessfully:"生成成功",codesCreated:"已创建 {count} 个兑换码",codeType:"类型",amount:"金额 ($)",value:"面值",count:"数量",generate:"生成",copyAll:"全部复制",download:"下载",codesExported:"兑换码导出成功",codeDeleted:"兑换码删除成功",codesDeleted:"成功删除 {count} 个未使用的兑换码",noUnusedCodes:"没有未使用的兑换码可删除",userPrefix:"用户 #{id}",failedToExport:"导出兑换码失败",failedToDeleteUnused:"删除未使用的兑换码失败",failedToCopy:"复制失败",selectGroup:"选择分组",selectGroupPlaceholder:"选择订阅分组",validityDays:"有效天数",codeExpiry:"兑换码过期",neverExpires:"永不过期",expiryPresetDays:"{days} 天",customExpiry:"自定义",customExpiryDays:"自定义天数",expiryDaysRequired:"请输入有效的过期天数",expiryDateRequired:"请输入有效的过期日期和时间",localTimeZoneHint:"自定义时间按浏览器本地时区({timezone})解释。",groupRequired:"请选择订阅分组",days:"天",status:{unused:"未使用",used:"已使用",expired:"已过期",disabled:"已禁用"},form:{typeLabel:"类型",selectType:"选择类型",valueLabel:"面值",valuePlaceholder:"请输入面值",balanceHint:"余额金额(美元)",concurrencyHint:"并发数增量",countLabel:"数量",countPlaceholder:"请输入数量",countHint:"要生成的兑换码数量",prefixLabel:"前缀(可选)",prefixPlaceholder:"ä¾
8‹å¦‚:GIFT",expiresLabel:"过期时间(可选)"},filters:{type:"类型",allTypes:"全部类型",status:"状态",allStatuses:"全部状态",search:"搜索兑换码"},generating:"生成中...",copyCode:"复制",copied:"已复制!",disableCode:"禁用",enableCode:"启用",deleteCode:"删除",deleteConfirmMessage:"确定要删除此兑换码吗?",noCodes:"暂无兑换码",noCodesDescription:"生成兑换码以向用户分发余额或并发数。",codesGeneratedSuccess:"兑换码生成成功,共 {count} 个",codeDisabledSuccess:"兑换码已禁用",codeEnabledSuccess:"兑换码已启用",codeDeletedSuccess:"兑换码删除成功",failedToLoad:"加载兑换码列表失败",failedToGenerate:"生成兑换码失败",failedToUpdate:"更新兑换码失败",failedToDelete:"删除兑换码失败"},announcements:{title:"公告管理",description:"创建公告并按条件投放",createFirstAnnouncement:"还没有公告,创建您的第一条公告。",createAnnouncement:"创建公告",editAnnouncement:"编辑公告",deleteAnnouncement:"删除公告",searchAnnouncements:"搜索公告...",status:"状态",allStatus:"全部状态",columns:{title:"标题",status:"状态",notifyMode:"通知方式",targeting:"展示条件",timeRange:"有效期",createdAt:"创建时间",actions:"操作"},statusLabels:{draft:"草稿",active:"展示中",archived:"已归档"},notifyModeLabels:{silent:"静默",popup:"弹窗"},form:{title:"标题",content:"内容(支持 Markdown)",status:"状态",notifyMode:"通知方式",notifyModeHint:"弹窗模式会自动弹出通知给用户",startsAt:"开始时间",endsAt:"结束时间",startsAtHint:"留空表示立即生效",endsAtHint:"留空表示永久生效",targetingMode:"展示条件",targetingAll:"所有用户",targetingCustom:"按条件",addOrGroup:"添加 OR 条件组",addAndCondition:"添加 AND 条件",conditionType:"条件类型",conditionSubscription:"订阅套餐",conditionBalance:"余额",operator:"运算符",balanceValue:"余额阈值",selectPackages:"选择套餐"},operators:{gt:">",gte:"≥",lt:"<",lte:"≤",eq:"="},targetingSummaryAll:"全部用户",targetingSummaryCustom:"自定义({groups} 组)",timeImmediate:"立即",timeNever:"永久",readStatus:"已读情况",preview:"预览",eligible:"符合条件",readAt:"已读时间",unread:"未读",searchUsers:"搜索用户...",failedToLoad:"加载公告失败",failedToCreate:"创建公告失败",failedToUpdate:"更新公告失败",failedToDelete:"删除公告失败",failedToLoadReadStatus:"加载已读情况失败",deleteConfirm:"确定要删除该公告吗?此操作无法撤销。"},promo:{title:"优惠码管理",description:"创建和管理注册优惠码",createCode:"创建优惠码",editCode:"编辑优惠码",deleteCode:"删除优惠码",searchCodes:"搜索优惠码...",allStatus:"全部状态",columns:{code:"优惠码",bonusAmount:"赠送金额",maxUses:"最大使用次数",usedCount:"已使用",usage:"使用量",status:"状态",expiresAt:"过期时间",createdAt:"创建时间",actions:"操作"},code:"优惠码",autoGenerate:"留空自动生成",codePlaceholder:"输入优惠码或留空",bonusAmount:"赠送金额 ($)",maxUses:"最大使用次数",zeroUnlimited:"0 = 无限制",expiresAt:"过期时间",notes:"备注",notesPlaceholder:"可选备注信息",status:"状态",neverExpires:"永不过期",statusActive:"启用",statusDisabled:"禁用",statusExpired:"已过期",statusMaxUsed:"已用完",usageRecords:"使用记录",viewUsages:"查看使用记录",noUsages:"暂无使用记录",userPrefix:"用户 #{id}",copied:"已复制!",noCodesYet:"暂无优惠码",createFirstCode:"创建您的第一个优惠码,为新用户提供注册奖励。",codeCreated:"优惠码创建成功",codeUpdated:"优惠码更新成功",codeDeleted:"优惠码删除成功",deleteCodeConfirm:"确定要删除此优惠码吗?此操作无法撤销。",copyRegisterLink:"复制注册链接",registerLinkCopied:"注册链接已复制到剪贴板",failedToLoad:"加载优惠码失败",failedToCreate:"创建优惠码失败",failedToUpdate:"更新优惠码失败",failedToDelete:"删除优惠码失败",failedToLoadUsages:"加载使用记录失败"},usage:{title:"使用记录",description:"查看和管理所有用户的使用记录",userFilter:"用户",searchUserPlaceholder:"按邮箱搜索用户...",searchApiKeyPlaceholder:"按名称搜索 API 密钥...",searchAccountPlaceholder:"按名称搜索账号...",selectedUser:"已选择",user:"用户",account:"账户",group:"分组",requestId:"请求ID",upstreamRequestId:"上游ID",requestIdCopied:"请求ID已复制",upstreamRequestIdCopied:"上游ID已复制",allModels:"全部模型",allAccounts:"全部账户",allGroups:"全部分ç
8»„",allTypes:"全部类型",inputCost:"输入费用",outputCost:"输出费用",cacheCreationCost:"缓存创建费用",cacheReadCost:"缓存读取费用",inputTokens:"输入 Token",outputTokens:"输出 Token",cacheCreationTokens:"缓存创建 Token",cacheCreation5mTokens:"缓存创建",cacheCreation1hTokens:"缓存创建",cacheReadTokens:"缓存读取 Token",failedToLoad:"加载使用记录失败",billingType:"计费类型",allBillingTypes:"全部计费类型",billingTypeBalance:"钱包余额",billingTypeSubscription:"订阅套餐",billingMode:"计费模式",billingModeToken:"按量",billingModePerRequest:"按次",billingModeImage:"按次(图片)",billingModeVideo:"按次(视频)",allBillingModes:"全部计费模式",upstreamModelAudit:"上游模型审计",allUpstreamModelAudit:"全部响应模型状态",upstreamModelMismatchOnly:"仅不一致",upstreamModelMatchedOnly:"仅一致",ipAddress:"IP",clickToViewBalance:"点击查看充值记录",failedToLoadUser:"加载用户信息失败",userDeletedBadge:"已删除",tokenRanking:{subtitle:"按当前筛选与时间范围统计每个用户的 Token 用量",rowHint:"点击查看该用户的用量明细",userCount:"共 {count} 位用户",columns:{user:"用户",requests:"请求数",inputTokens:"输入 Token",outputTokens:"输出 Token",cacheTokens:"缓存 Token",totalTokens:"总 Token",cost:"费用"}},cleanup:{button:"清理",title:"清理使用记录",warning:"清理不可恢复,且会影响历史统计回看。",submit:"提交清理",submitting:"提交中...",confirmTitle:"确认清理",confirmMessage:"确定要提交清理任务吗?清理不可恢复。",confirmSubmit:"确认清理",cancel:"取消任务",cancelConfirmTitle:"确认取消",cancelConfirmMessage:"确定要取消该清理任务吗?",cancelConfirm:"确认取消",cancelSuccess:"清理任务已取消",cancelFailed:"取消清理任务失败",recentTasks:"最近清理任务",loadingTasks:"正在加载任务...",noTasks:"暂无清理任务",range:"时间范围",deletedRows:"删除数量",missingRange:"请选择时间范围",submitSuccess:"清理任务已创建",submitFailed:"创建清理任务失败",loadFailed:"加载清理任务失败",status:{pending:"待执行",running:"执行中",succeeded:"已完成",failed:"失败",canceled:"已取消"}}}},s={ops:{title:"运维监控",description:"运维监控与排障",systemHealth:"系统健康",overview:"概览",noSystemMetrics:"尚未收集系统指标。",collectedAt:"采集时间:",window:"窗口",memory:"内存",db:"数据库",goroutines:"协程",jobs:"后台任务",jobsHelp:"点击“明细”查看任务心跳与报错信息",active:"活跃",idle:"空闲",waiting:"等待",conns:"连接",queue:"队列",accountSwitches:"账号切换",ok:"正常",lastRun:"最近运行",lastSuccess:"最近成功",lastError:"最近错误",result:"结果",noData:"暂无数据",loadingText:"加载中...",ready:"就绪",autoRefreshRemaining:"剩余 {seconds}s",systemLogs:{title:"系统日志",description:"优先显示最新日志,可按条件筛选、搜索和清理。",queue:"队列",written:"已写入",dropped:"已丢弃",failed:"写入失败",runtimeConfig:"运行时日志配置(立即生效)",all:"全部",level:"级别",stacktraceThreshold:"堆栈阈值",samplingInitial:"采样初始条数",samplingThereafter:"后续采样间隔",retentionDays:"运维日志保留天数",requestRetentionDays:"请求日志保留天数",requestRetentionDaysHint:"请求使用明细每 6 小时滚动清理一次,保存后在下次清理生效。永久保留会持续占用存储空间。",retentionDaysInvalid:"运维日志须保留 1–3650 天;请求日志须保留 1–3650 天或选择永久保留。",retentionDaysOption:"{days} 天",retentionDaysCustom:"自定义天数",retentionForever:"永久保留",retentionDaysHint:"按运维设置中启用的数据清理计划执行。",caller:"调用方",sampling:"采样",persistAccessLogs:"将访问日志写入数据库",persistAccessLogsHint:"默认关闭,因为访问日志会为每个请求新增一条带索引的数据库记录。警告、错误和审计日志始终会保留。",saveAndApply:"保存并应用",resetDefaults:"重置默认值",latestWriteError:"最近写入错误:",timeRange:"时间范围",startTime:"开始时间(可选)",endTime:"结束时间(可选)",host:"Host",component:"组件",componentPlaceholder:"ä¾
8‹å¦‚ http.access",keyId:"KEY ID",platform:"平台",model:"模型",keyword:"关键词",keywordPlaceholder:"message/request_id",search:"搜索",cleanCurrentFilters:"清理当前筛选结果",refreshHealth:"刷新健康状态",empty:"暂无系统日志",time:"时间",logDetails:"日志详情",loadFailed:"加载系统日志失败",runtimeConfigActive:"运行时日志配置已生效",runtimeConfigLoadFailed:"日志配置加载失败,请刷新后重试。",runtimeConfigSaveFailed:"保存日志配置失败",resetRuntimeConfigConfirm:"确定要重置为启动配置(env/yaml)并立即应用吗?",runtimeConfigReset:"已重置为启动日志配置",runtimeConfigResetFailed:"重置日志配置失败",cleanupConfirm:"确定要清理匹配当前筛选条件的系统日志吗?此操作不可撤销。",cleanupSuccess:"清理完成,已删除 {count} 条日志。",cleanupFilterRequired:"清理需要至少一个筛选条件(起止时间或其他字段)",cleanupFailed:"清理系统日志失败"},requestsTotal:"请求(总计)",slaScope:"SLA 范围:",tokens:"Token数",tps:"TPS",current:"当前",peak:"峰值",average:"平均",totalRequests:"总请求",avgQps:"平均 QPS",avgTps:"平均 TPS",avgLatency:"平均请求时长",avgTtft:"平均首 Token 延迟",exceptions:"异常数",requestErrors:"请求错误",errorCount:"错误数",upstreamErrors:"上游错误",errorCountExcl429529:"错误数(排除429/529)",sla:"SLA(排除业务限制)",businessLimited:"业务限制:",errors:"错误",errorRate:"错误率:",upstreamRate:"上游错误率:",latencyDuration:"请求时长",ttftLabel:"首 Token 延迟(毫秒)",p50:"p50",p90:"p90",p95:"p95",p99:"p99",avg:"avg",max:"max",requests:"请求数",requestsTitle:"请求",upstream:"上游",client:"客户端",system:"系统",other:"其他",errorsSla:"错误(SLA范围)",upstreamExcl429529:"上游(排除429/529)",failedToLoadData:"加载运维数据失败",failedToLoadOverview:"加载概览数据失败",failedToLoadThroughputTrend:"加载吞吐趋势失败",failedToLoadSwitchTrend:"加载平均账号切换趋势失败",failedToLoadLatencyHistogram:"加载请求时长分布失败",failedToLoadErrorTrend:"加载错误趋势失败",failedToLoadErrorDistribution:"加载错误分布失败",failedToLoadErrorDetail:"加载错误详情失败",retryFailed:"重试失败",tpsK:"TPS(千)",top:"最高:",throughputTrend:"吞吐趋势",switchRateTrend:"平均账号切换趋势",latencyHistogram:"请求时长分布",errorTrend:"错误趋势",errorDistribution:"错误分布",switchRate:"平均账号切换",health:"健康",healthCondition:"健康状况",healthHelp:"基于 SLA、错误率和资源使用情况的系统整体健康评分",healthyStatus:"健康",riskyStatus:"风险",idleStatus:"待机",timeRange:{"5m":"近5分钟","30m":"近30分钟","1h":"近1小时","1d":"近1天","15d":"近15天","6h":"近6小时","24h":"近24小时","7d":"近7天","30d":"近30天",custom:"自定义"},openaiTokenStats:{title:"Token 请求统计",viewModeTopN:"TopN",viewModePagination:"分页",prevPage:"上一页",nextPage:"下一页",pageInfo:"第 {page}/{total} 页",totalModels:"模型总数:{total}",failedToLoad:"加载 Token 请求统计失败",empty:"当前筛选条件下暂无 Token 请求统计数据",table:{model:"模型",requestCount:"请求数",avgTokensPerSec:"平均 Tokens/秒",avgFirstTokenMs:"平均首 Token 延迟(ms)",totalOutputTokens:"输出 Token 总数",avgDurationMs:"平均时长(ms)",requestsWithFirstToken:"首 Token 样本数"}},customTimeRange:{startTime:"开始时间",endTime:"结束时间"},fullscreen:{enter:"进入全屏"},diagnosis:{title:"智能诊断",footer:"基于当前指标的自动诊断建议",idle:"系统当前处于待机状态",idleImpact:"无活跃流量",dbDown:"数据库连接失败",dbDownImpact:"所有数据库操作将失败",dbDownAction:"检查数据库服务状态、网络连接和连接配置",redisDown:"Redis连接失败",redisDownImpact:"缓存功能降级,性能可能下降",redisDownAction:"检查Redis服务状态和网络连接",cpuCritical:"CPU使用率严重过高 ({usage}%)",cpuCriticalImpact:"系统响应变慢,可能影响所有请求",cpuCriticalAction:"检查CPU密集型任务,考虑扩容或优化代码",cpuHigh:"CPU使用率偏高 ({usage}%)",cpuHighImpact:"系统负载较高,需要关注",cpuHighAction:"监控CPU趋势,准备扩容方案",memoryCritical:"内存使用率严重过高 ({usage}%)",memoryCriticalImpact:"可能触发OOM,系统稳定性受威胁",memoryCriticalAction:"检查内存泄漏,考虑增加内存或优化内存使用",memoryHigh:"内存使用率偏高 ({usage}%)",memoryHighImpact:"内存压力较大,需要关注",memoryHighAction:"监控内存趋势,检查是否有内存泄漏",ttftHigh:"首 Token 时间偏高 ({ttft}ms)",ttftHighImpact:"用户感知时长增加",ttftHighAction:"优化请求处理流程,减少前置逻辑耗时",upstreamCritical:"上游错误率严重偏高 ({rate}%)",upstreamCriticalImpact:"可能影响大量用户请求",upstreamCriticalAction:"检查上游服务健康状态,启用降级策略",upstreamHigh:"上游错误率偏高 ({rate}%)",upstreamHighImpact:"建议检查上游服务状态",upstreamHighAction:"联系上游服务团队,准备降级方案",errorHigh:"错误率过高 ({rate}%)",errorHighImpact:"大量请求失败",errorHighAction:"查看错误日志,定位错误根因,紧急修复",errorElevated:"错误率偏高 ({rate}%)",errorElevatedImpact:"建议检查错误日志",errorElevatedAction:"分析错误类型和分布,制定修复计划",slaCritical:"SLA 严重低于目标 ({sla}%)",slaCriticalImpact:"用户体验严重受损",slaCriticalAction:"紧急排查错误原因,必要时采取限流保护",
8slaLow:"SLA 低于目标 ({sla}%)",slaLowImpact:"需要关注服务质量",slaLowAction:"分析SLA下降原因,优化系统性能",healthCritical:"综合健康评分过低 ({score})",healthCriticalImpact:"多个指标可能同时异常,建议优先排查错误与资源使用情况",healthCriticalAction:"全面检查系统状态,优先处理critical级别问题",healthLow:"综合健康评分偏低 ({score})",healthLowImpact:"可能存在轻度波动,建议关注 SLA 与错误率",healthLowAction:"监控指标趋势,预防问题恶化",healthy:"所有系统指标正常",healthyImpact:"服务运行稳定"},errorLog:{timeId:"时间 / ID",commonErrors:{contextDeadlineExceeded:"请求超时",connectionRefused:"连接被拒绝",rateLimit:"触发限流"},time:"时间",type:"类型",context:"上下文",platform:"平台",model:"模型",group:"分组",user:"用户",userId:"用户 ID",apiKey:"API Key",keyDeletedBadge:"Key 已删除",account:"账号",accountId:"账号 ID",status:"状态码",message:"响应内容",ip:"IP",latency:"请求时长",action:"操作",noErrors:"该窗口内暂无错误。",grp:"GRP:",acc:"ACC:",details:"详情",phase:"阶段",id:"ID:",typeUpstream:"上游",typeRequest:"请求",typeAuth:"认证",typeAccountAuth:"账号认证",typeRouting:"路由",typeInternal:"内部",endpoint:"端点",requestType:"类型",requestTypeSync:"同步",requestTypeStream:"流式",requestTypeWs:"WS"},errorDetails:{upstreamErrors:"上游错误",requestErrors:"请求错误",unresolved:"未解决",resolved:"已解决",viewErrors:"错误",viewExcluded:"排除项",statusCodeOther:"其他",owner:{provider:"服务商",client:"客户端",platform:"平台"},phase:{request:"请求",auth:"认证",account_auth:"账号认证",routing:"路由",upstream:"上游",network:"网络",internal:"内部"},total:"总计:",searchPlaceholder:"搜索 request_id / client_request_id / message"},errorDetail:{title:"错误详情",titleWithId:"错误 #{id}",noErrorSelected:"未选择错误。",backToList:"返回列表",resolution:"已解决:",failedToUpdateResolvedStatus:"更新解决状态失败",classificationKeys:{phase:"阶段",owner:"归属方",source:"来源",resolvedAt:"解决时间",resolvedBy:"解决人"},source:{upstream_http:"上游 HTTP"},upstreamKeys:{status:"状态码",message:"消息",detail:"详情",upstreamErrors:"上游错误列表"},upstreamEvent:{account:"账号",status:"状态码",requestId:"请求ID"}
8,responsePreview:{expand:"响应内容(点击展开)",collapse:"响应内容(点击收起)"},loading:"加载中…",requestId:"请求 ID",time:"时间",phase:"阶段",status:"状态码",upstreamStatus:"上游状态码",message:"消息",rootCause:"根因",diagnosticPayloads:"诊断载荷",payloads:{client:"客户端响应",upstream_message:"上游消息",upstream_detail:"上游详情",upstream_events:"上游事件"},basicInfo:"基本信息",platform:"平台",model:"模型",group:"分组",user:"用户",account:"账号",latency:"请求时长",businessLimited:"业务限制",requestPath:"请求路径",inboundEndpoint:"入站端点",upstreamEndpoint:"上游端点",requestedModel:"请求模型",upstreamModel:"上游模型",requestType:"请求类型",requestTypeUnknown:"未知",requestTypeSync:"同步",requestTypeStream:"流式",requestTypeWs:"WebSocket",modelMapping:"模型映射",timings:"时序信息",auth:"认证",routing:"路由",upstream:"上游",response:"响应",classification:"错误分类",errorBody:"错误体",trimmed:"已截断",markResolved:"标记已解决",markUnresolved:"标记未解决",tabOverview:"概览",tabRequest:"请求详情",tabResponse:"响应详情",responseBody:"响应详情",compareA:"对比 A",compareB:"对比 B",suggestion:"处理建议",suggestUpstream:"⚠️ 上游服务不稳定,建议:检查上游账号状态 / 考虑切换账号",suggestRequest:"⚠️ 客户端请求错误,建议:联系客户修正请求参数 / 手动标记已解决",suggestAuth:"⚠️ 认证失败,建议:检查 API Key 是否有效 / 联系客户更新凭证",suggestPlatform:"🚨 平台错误,建议立即排查修复",suggestGeneric:"查看详情了解更多信息",apiKeyPrefix:"Key 前缀",keyDeletedBadge:"Key 已删除"},requestDetails:{title:"请求明细",details:"明细",rangeLabel:"窗口:{range}",rangeMinutes:"{n} 分钟",rangeHours:"{n} 小时",empty:"该窗口内暂无请求。",emptyHint:"可尝试调整时间范围或取消部分筛选。",failedToLoad:"加载请求明细失败",requestIdCopied:"请求ID已复制",copyFailed:"复制失败",copy:"复制",viewError:"查看错误",kind:{success:"成功",error:"失败"},table:{time:"时间",kind:"类型",platform:"平台",model:"模型",duration:"耗时",status:"状态码",requestId:"请求ID",actions:"操作"}},alertEvents:{title:"告警事件",description:"最近的告警触发/恢复记录(仅邮件通知)",loading:"加载中...",empty:"暂无告警事件",loadFailed:"加载告警事件失败",status:{firing:"告警中",resolved:"已恢复",manualResolved:"手动已解决"},detail:{title:"告警详情",loading:"加载详情中...",empty:"暂无详情",loadFailed:"加载告警详情失败",manualResolve:"标记为已解决",manualResolvedSuccess:"已标记为手动解决",manualResolvedFailed:"标记为手动解决失败",silence:"忽略此告警",silenceSuccess:"已静默该告警",silenceFailed:"静默失败",viewRule:"查看规则",viewLogs:"查看相关日志",firedAt:"触发时间",resolvedAt:"解决时间",ruleId:"规则 ID",dimensions:"维度信息",historyTitle:"历史记录",historyHint:"同一规则 + 相同维度的最近事件",historyLoading:"加载历史中...",historyEmpty:"暂无历史记录"},table:{time:"时间",status:"状态",severity:"级别",platform:"平台",ruleId:"规则ID",title:"标题",duration:"持续时间",metric:"指标 / 阈值",dimensions:"维度",email:"邮件已发送",emailSent:"已发送",emailIgnored:"已忽略"}},alertRules:{title:"告警规则",description:"创建与管理系统阈值告警(仅邮件通知)",loading:"加载中...",empty:"暂无告警规则",loadFailed:"加载告警规则失败",saveSuccess:"警报规则保存成功",saveFailed:"保存告警规则失败",deleteSuccess:"警报规则删除成功",deleteFailed:"删除告警规则失败",create:"新建规则",createTitle:"新建告警规则",editTitle:"编辑告警规则",deleteConfirmTitle:"确认删除该规则?",deleteConfirmMessage:"将删除该规则及其关联的告警事件,是否继续?",manage:"预警规则",metricGroups:{system:"系统指标",group:"分组级别指标(需 group_id)",account:"账号级别æ
8Œ‡æ ‡"},metrics:{successRate:"成功率 (%)",errorRate:"错误率 (%)",upstreamErrorRate:"上游错误率 (%)",p95:"P95 请求时长 (ms)",p99:"P99 请求时长 (ms)",cpu:"CPU 使用率 (%)",memory:"内存使用率 (%)",queueDepth:"并发排队深度",groupAvailableAccounts:"分组可用账号数",groupAvailableRatio:"分组可用比例 (%)",groupRateLimitRatio:"分组限流比例 (%)",accountRateLimitedCount:"限流账号数",accountErrorCount:"错误账号数(不含临时不可调度)",accountErrorRatio:"错误账号比例 (%)",accountTempUnscheduledCount:"临时不可调度账号数",overloadAccountCount:"过载账号数"},metricDescriptions:{successRate:"统计窗口内成功请求占比(0~100)。",errorRate:"统计窗口内失败请求占比(0~100)。",upstreamErrorRate:"统计窗口内上游错误占比(0~100)。",p95:"统计窗口内 P95 请求耗时(毫秒)。",p99:"统计窗口内 P99 请求耗时(毫秒)。",cpu:"当前实例 CPU 使用率(0~100)。",memory:"当前实例内存使用率(0~100)。",queueDepth:"统计窗口内并发队列排队深度(等待中的请求数)。",groupAvailableAccounts:"指定分组中当前可用账号数量(需要 group_id 过滤)。",groupAvailableRatio:"指定分组中可用账号占比(0~100,需要 group_id 过滤)。",groupRateLimitRatio:"指定分组中账号被限流的比例(0~100,需要 group_id 过滤)。",accountRateLimitedCount:"统计窗口内被限流的账号数量。",accountErrorCount:"统计窗口内产生错误的账号数量(不含临时不可调度)。",accountErrorRatio:"统计窗口内错误账号占比(0~100)。",accountTempUnscheduledCount:"当前处于临时不可调度状态的账号数量(如代理/凭据故障被自动摘除)。",overloadAccountCount:"统计窗口内过载账号数量。"},hints:{recommended:"推荐:运算符 {operator},阈值 {threshold}{unit}",groupRequired:"该指标为分组级别指标,必须选择分组(group_id)。",groupOptional:"可选:通过 group_id 将规则限定到某个分组。"},table:{name:"名称",metric:"指标",severity:"级别",enabled:"启用",actions:"操作"},form:{name:"名称",description:"描述",metric:"指标",operator:"运算符",groupId:"分组(group_id)",groupPlaceholder:"请选择分组",allGroups:"全部分组",threshold:"阈值",severity:"级别",window:"统计窗口(分钟)",sustained:"连续样本数(每分钟)",cooldown:"冷却期(分钟)",enabled:"启用",notifyEmail:"发送邮件通知"},validation:{title:"请先修正以下问题",invalid:"规则不合法",nameRequired:"名称不能为空",metricRequired:"指标不能为空",groupIdRequired:"分组级别指标必须指定 group_id",operatorRequired:"运算符不能为空",thresholdRequired:"阈值必须为数字",windowRange:"统计窗口必须为 1 / 5 / 60 分钟之一",sustainedRange:"连续样本数必须在 1 到 1440 之间",cooldownRange:"冷却期必须在 0 到 1440 分钟之间"}},runtime:{title:"运维监控运行设置",description:"配置存储在数据库中,无需修改 config 文件即可生效。",loading:"加载中...",noData:"暂无运行设置",loadFailed:"加载运行设置失败",saveSuccess:"运行设置已保存",saveFailed:"保存运行设置失败",alertTitle:"告警评估器",groupAvailabilityTitle:"分ç
8»„可用性监控",evalIntervalSeconds:"评估间隔(秒)",metricThresholds:"指标阈值配置",metricThresholdsHint:"配置各项指标的告警阈值,超出阈值时将以红色显示",slaMinPercent:"SLA 最低百分比",slaMinPercentHint:"SLA 低于此值时显示为红色(默认:99.5%)",ttftP99MaxMs:"TTFT P99 最大值(毫秒)",ttftP99MaxMsHint:"TTFT P99 高于此值时显示为红色(默认:500ms)",requestErrorRateMaxPercent:"请求错误率最大值(%)",requestErrorRateMaxPercentHint:"请求错误率高于此值时显示为红色(默认:5%)",upstreamErrorRateMaxPercent:"上游错误率最大值(%)",upstreamErrorRateMaxPercentHint:"上游错误率高于此值时显示为红色(默认:5%)",silencing:{title:"告警静默(维护模式)",enabled:"启用静默",globalUntil:"静默截止时间(RFC3339)",untilHint:"建议填写截止时间,避免忘记关闭静默。",reason:"原因",reasonPlaceholder:"例如:计划维护",entries:{title:"高级:定向静默",hint:"可选:仅静默特定规则或特定级别。字段留空表示匹配全部。",add:"新增条目",empty:"暂无定向静默条目",entryTitle:"条目 #{n}",ruleId:"规则ID(可选)",ruleIdPlaceholder:"例如:1",severities:"级别(可选)",severitiesPlaceholder:"例如:P0,P1(留空=全部)",until:"截止时间(RFC3339)",reason:"原因",validation:{untilRequired:"条目截止时间不能为空",untilFormat:"条目截止时间必须为合法的 RFC3339 时间戳",ruleIdPositive:"条目 rule_id 必须为正整数",severitiesFormat:"条目级别必须为 P0..P3 的逗号分隔列表"}},validation:{timeFormat:"静默时间必须为合法的 RFC3339 时间戳"}},lockEnabled:"启用分布式锁",lockKey:"分布式锁 Key",lockTTLSeconds:"分布式锁 TTL(秒)",showAdvancedDeveloperSettings:"显示高级开发者设置 (Distributed Lock)",advancedSettingsSummary:"高级设置 (分布式锁)",evalIntervalHint:"检测任务的执行频率,建议保持默认。",validation:{title:"请先修正以下问题",invalid:"设置不合法",evalIntervalRange:"评估间隔必须在 1 到 86400 秒之间",lockKeyRequired:"启用分布式锁时必须填写 Lock Key",lockKeyPrefix:"分布式锁 Key 必须以「{prefix}」开头",lockKeyHint:"建议以「{prefix}」开头以避免冲突",lockTtlRange:"分布式锁 TTL 必须在 1 到 86400 秒之间",slaMinPercentRange:"SLA 最低值必须在 0-100 之间",ttftP99MaxRange:"TTFT P99 最大值必须大于或等于 0",requestErrorRateMaxRange:"请求错误率最大值必须在 0-100 之间",upstreamErrorRateMaxRange:"上游错误率最大值必须在 0-100 之间"}},email:{title:"邮件通知配置",description:"配置告警/报告邮件通知(存储在数据库中)。",loading:"加载中...",noData:"暂无邮件通知配置",loadFailed:"加载邮件通知配置失败",saveSuccess:"邮件通知配置已保存",saveFailed:"保存邮件通知配置失败",alertTitle:"告警邮件",reportTitle:"报告邮件",recipients:"收件人",recipientsHint:"若为空,系统可能会回退使用第一个管理员邮箱。",minSeverity:"最低级别",minSeverityAll:"全部级别",rateLimitPerHour:"每小时限额",batchWindowSeconds:"合并窗口(秒)",includeResolved:"包含恢复通知",dailySummary:"每日摘要",weeklySummary:"每周摘要",errorDigest:"错误摘要",errorDigestMinCount:"错误摘要最小数量",accountHealth:"账号健康报告",accountHealthThreshold:"错误率阈值(%)",cronPlaceholder:"Cron 表达式",reportHint:"发送时间使用 Cron 语法;留空将使用默认值。",validation:{title:"请先修正以下问题",invalid:"邮件通知配置不合法",alertRecipientsRequired:"已启用告警邮件,但未配置任何收件人",reportRecipientsRequired:"已启用报告邮件,但未配置任何收件人",invalidRecipients:"存在不合法的收件人邮箱",rateLimitRange:"每小时限额必须为 ≥ 0 的数字",batchWindowRange:"合并窗口必须在 0 到 86400 秒之间",cronRequired:"启用定时任务时必须填写 Cron 表达式",cronFormat:"Cron 表达式格式可能不正确(至少应包含 5 段)",digestMinCountRange:"错误摘要最小数量必须为 ≥ 0 的数字",accountHealthThresholdRange:"账号健康错误率阈值必须在 0 到 100 之间"}},settings:{title:"运维监控设置",loadFailed:"加载设置失败",saveSuccess:"运维监控设置保存成功",saveFailed:"保存设置失败",dataCollection:"数据采集",evaluationInterval:"评估间隔(秒)",evaluationIntervalHint:"检测任务的执行频率,建议保持默认",alertConfig:"预警配置",enableAlert:"开启预警",alertRecipients:"预警接收邮箱",emailPlaceholder:"输入邮箱地址",recipientsHint:"若为空,系统将使用第一个管理员邮箱作为
8默认收件人",minSeverity:"最低级别",reportConfig:"评估报告配置",enableReport:"开启评估报告",reportRecipients:"评估报告接收邮箱",dailySummary:"每日摘要",weeklySummary:"每周摘要",metricThresholds:"指标阈值配置",metricThresholdsHint:"配置各项指标的告警阈值,超出阈值时将以红色显示",slaMinPercent:"SLA最低百分比",slaMinPercentHint:"SLA低于此值时显示为红色(默认:99.5%)",ttftP99MaxMs:"TTFT P99最大值(毫秒)",ttftP99MaxMsHint:"TTFT P99高于此值时显示为红色(默认:500ms)",requestErrorRateMaxPercent:"请求错误率最大值(%)",requestErrorRateMaxPercentHint:"请求错误率高于此值时显示为红色(默认:5%)",upstreamErrorRateMaxPercent:"上游错误率最大值(%)",upstreamErrorRateMaxPercentHint:"上游错误率高于此值时显示为红色(默认:5%)",advancedSettings:"高级设置",dataRetention:"数据保留策略",enableCleanup:"启用数据清理",cleanupSchedule:"清理计划(Cron)",cleanupScheduleHint:"例如:0 2 * * * 表示每天凌晨2点",errorLogRetentionDays:"错误日志保留天数",minuteMetricsRetentionDays:"分钟指标保留天数",hourlyMetricsRetentionDays:"小时指标保留天数",retentionDaysHint:"建议保留 7-90 天,过长会占用存储空间;填 0 表示每次定时清理时清空所有历史",aggregation:"预聚合任务",enableAggregation:"启用预聚合任务",aggregationHint:"预聚合可提升长时间窗口查询性能",openaiQuotaAutoPause:"OpenAI 账号配额自动暂停",openaiQuotaAutoPauseHint:"当 OpenAI 账号 5h / 7d 用量达到阈值时,调度会自动跳过该账号;窗口滚动后自动恢复。账号级阈值优先于此全局默认值。",openaiQuotaAutoPauseDefault5h:"默认 5h 用量阈值 (%)",openaiQuotaAutoPauseDefault7d:"默认 7d 用量阈值 (%)",openaiQuotaAutoPauseThresholdHint:"取值 0-100,留空或 0 表示不启用全局默认阈值。",errorFiltering:"错误过滤",ignoreCountTokensErrors:"忽略 count_tokens 错误",ignoreCountTokensErrorsHint:"启用后,count_tokens 请求的错误将不会写入错误日志。",ignoreContextCanceled:"忽略客户端断连错误",ignoreContextCanceledHint:"启用后,客户端主动断开连接(context canceled)的错误将不会写入错误日志。",ignoreNoAvailableAccounts:"忽略无可用账号错误",ignoreNoAvailableAccountsHint:'启用后,"No available accounts" 错误将不会写入错误日志(不推荐,这通常是配置问题)。',ignoreInsufficientBalanceErrors:"忽略余额不足错误",ignoreInsufficientBalanceErrorsHint:"启用后,账号余额不足(Insufficient balance)的错误将不会写入错误日志。",autoRefresh:"自动刷新",enableAutoRefresh:"启用自动刷新",enableAutoRefreshHint:"自动刷新仪表板数据,启用后会定期拉取最新数据。",refreshInterval:"刷新间隔",refreshInterval15s:"15 秒",refreshInterval30s:"30 秒",refreshInterval60s:"60 秒",dashboardCards:"仪表盘卡片",displayAlertEvents:"展示告警事件",displayAlertEventsHint:"控制运维监控仪表盘中告警事件卡片是否显示,默认开启。",displayOpenAITokenStats:"展示 Token 请求统计",displayOpenAITokenStatsHint:"按模型统计所有平台的 Token 请求,支持平台和分组筛选,默认关闭。",autoRefreshCountdown:"自动刷新:{seconds}s",validation:{title:"请先修正以下问题",retentionDaysRange:"保留天数必须在 0-365 天之间(0 = 每次清理时清空所有)",slaMinPercentRange:"SLA最低百分比必须在0-100之间",ttftP99MaxRange:"TTFT P99最大值必须大于等于0",requestErrorRateMaxRange:"请求错误率最大值必须在0-100之间",upstreamErrorRateMaxRange:"上游错误率最大值必须在0-100之间",openaiQuotaAutoPauseRange:"OpenAI 配额自动暂停阈值必须在 0-100 之间"}},concurrency:{title:"并发 / 排队",byPlatform:"按平台",byGroup:"按分组",byAccount:"按账号",byUser:"按用户",showByUserTooltip:"切换用户视图,显示每个用户的并发使用情况",switchToUser:"切换到用户视图",switchToPlatform:"切换回平台视图",totalRows:"共 {count} 项",disabledHint:"已在设置中关闭实时监控。",empty:"暂无数据",queued:"队列 {count}",rateLimited:"限流 {count}",errorAccounts:"异常 {count}",loadFailed:"加载并发数据失败"},realtime:{title:"实时信息",connected:"实时已连接",connecting:"实时连接中",reconnecting:"实时重连中",offline:"实时离线",closed:"实时已关闭",reconnectIn:"重连 {seconds}s"},queryMode:{auto:"Auto(自动)",raw:"Raw(不聚合)",preagg:"Preagg(聚合)"},accountAvailability:{available:"可用",unavailable:"不可用",accountError:"异常"},tooltips:{totalRequests:"当前时间窗口内的总请求数和Token消耗量。",throughputTrend:"当前窗口内的请求/QPS 与 token/TPS 趋势。",switchRateTrend:"近5小时内账号切换次数 / 请求总数的趋势(平均切换次数)。",latencyHistogram:"成功请求的请求时é•
8¿åˆ†å¸ƒï¼ˆæ¯«ç§’)。",errorTrend:"错误趋势(SLA 口径排除业务限制;上游错误率排除 429/529)。",errorDistribution:"按状态码统计的错误分布(SLA 口径,排除业务限制)。",upstreamErrors:"上游服务返回的错误,包括API提供商的错误响应(排除429/529限流错误)。",goroutines:'Go 运行时的协程数量(轻量级线程)。没有绝对"安全值",建议以历史基线为准。经验参考:<2000 常见;2000-8000 需关注;>8000 且伴随队列上升时,优先排查阻塞/泄漏。',cpu:"CPU 使用率,显示系统处理器的负载情况。",memory:"内存使用率,包括已使用和总可用内存。",db:"数据库连接池状态,包括活跃连接、空闲连接和等待连接数。",redis:"Redis 连接池状态,显示活跃和空闲的连接数。",jobs:"后台任务执行状态,包括最近运行时间、成功时间和错误信息。",qps:"每秒查询数(QPS)和每秒Token数(TPS),实时显示系统吞吐量。",tokens:"当前时间窗口内处理的总Token数量。",sla:"服务等级协议达成率,排除业务限制(如余额不足、配额超限)的成功请求占比。",errors:"错误统计,包括总错误数、错误率和上游错误率。",latency:"请求时长统计,包括 p50、p90、p95、p99 等百分位数。",ttft:"首 Token 延迟(Time To First Token),衡量流式响应的首 Token 返回速度。",health:"系统健康评分(0-100),综合考虑 SLA、错误率和资源使用情况。"},charts:{emptyRequest:"该时间窗口内暂无请求。",emptyError:"该时间窗口内暂无错误。",resetZoom:"重置",resetZoomHint:"重置缩放(若启用)",downloadChart:"下载",downloadChartHint:"下载图表图片"}}},l={audit:{title:"操作日志",description:"记录管理员与用户的管理面操作,请求头凭证仅保留首尾、请求体已脱敏。日志无法单条删除,全量清理需二次验证。",clearAll:"全部清理",empty:"暂无操作日志",loadFailed:"加载操作日志失败",filters:{all:"全部",q:"关键字",qPlaceholder:"路径 / 动作 / 操作者邮箱",actorEmail:"操作者邮箱",action:"动作",clientIp:"客户端 IP",method:"请求方法",authMethod:"认证方式",result:"结果",resultSuccess:"成功",resultFailure:"失败",startTime:"开始时间",endTime:"结束时间"},columns:{time:"时间",actor:"操作者",action:"动作",method:"方法",result:"结果",clientIp:"客户端 IP",detail:"详情"},detail:{title:"操作日志详情",actorRole:"角色",methodPath:"方法 / 路径",latency:"耗时",requestId:"请求 ID",credential:"凭证(掩码)",userAgent:"User-Agent",requestBody:"请求体(已脱敏)",extra:"附加信息"},clearConfirm:{title:"清理全部操作日志",message:"此操作将永久删除所有操作日志,且不可恢复。清理动作本身会被留痕记录。确定继续吗?",totpTitle:"输入二次验证码",totpHint:"清理操作日志需要现场验证 TOTP 验证码。",success:"已清理 {count} 条操作日志",failed:"清理操作日志失败"}}},d={promptAudit:{title:"提示词审计",description:"通过 OpenAI 兼容 Qwen3Guard 节点异步复核或同步阻止用户输入;事件的完整提示词会入库保存,仅供管理员复核。",configVersion:"配置版本 v{version}",tabs:{config:"配置",events:"事件"},actions:{refresh:"刷新运行态",retry:"重试",Allow:"放行",Warn:"警告",Block:"阻止"},common:{actions:"操作",never:"从未"},mode:{off:"已关闭",async_audit:"异步只审计",blocking:"同步审计并阻止"},status:{disabled:"未启用",running:"运行中",degraded:"降级",error:"错误",healthy:"健康",failed:"失败",stale:"心跳过期"},decisions:{pass:"通过",flag:"标记",critical:"严重"},riskLevels:{low:"低",medium:"中",high:"高",critical:"严重"},scanners:{violent:"暴力",non_violent_illegal_acts:"非暴力违法行为",sexual_content_or_sexual_acts:"色情内容或性行为",pii:"个人身份信息",suicide_and_self_harm:"自杀与自残",unethical_acts:"不道德行为",politically_sensitive_topics:"政治敏感话题",copyright_violation:"版权侵犯",jailbreak:"越狱"},scannerDescriptions:{violent:"暴力或暴力威胁",non_violent_illegal_acts:"非暴力违法活动",sexual_content_or_sexual_acts:"色情内容或性行为",pii:"个人身份信息",suicide_and_self_harm:"自杀或自残",unethical_acts:"不道德行为",politically_sensitive_topics:"政治敏感话题",copyright_violation:"版权侵权",jailbreak:"提示注入或越狱尝试"},runtime:{title:"运行概览",description:"显示服务端当前生效状态;未保存的草稿不会改变这些数值。",process:"进程状态",mode:"生效模式",version:"生效 / 期望版本",workers:"活动 / 总 Worker",queue:"活动任务 / 容量",dependencies:"依赖",guardMetrics:"同步 Guard 指标",latest:"最近处理与错误",queueBreakdown:"queued {queued} · processing {processing} · retry {retry} · done {done} · failed {failed}",deliveryTotals:"累计入队 {enqueued} · 丢弃 {dropped} · 处理 {processed} · 失败 {failed}"},metrics:{total:"总计",allowed:"放行",flagged:"标记",blocked:"阻止",unavailable:"不可用",timeouts:"超时",failovers:"故障切换"},pool:{title:"审计池",description:"按顺序使用启用的 OpenAI 兼容节点;探测由服务端真实网络环境发起。",add:"新增节点",edit:"编辑节点",empty:"尚未配置审计节点。",node:"节点",model:"模型",limits:"超时 / 单片上限",credential:"凭据与探测",configured:"API Key 已配置",missing:"未配置 API Key",invali
8d:"API Key 无法解密,请重新输入",probe:"连接测试",probing:"探测中…",probeProgress:"配置校验 ✓ · 请求已发送 · 等待服务响应…",probeResult:"配置校验 ✓ · 请求 ✓ · HTTP {http} · {status} · {latency} ms",name:"节点名称",id:"稳定节点 ID",baseUrl:"Base URL",apiKey:"API Key",keepSecret:"留空以保留已保存的 API Key",reenterSecret:"已保存的 API Key 无法解密(加密密钥已变更),请重新输入",secretHint:"明文只在本次编辑内存中存在;保存成功后会立即清除。",clearSecret:"显式清除已保存的 API Key",timeout:"总超时(毫秒)",inputLimit:"单片 Unicode 字符上限",toggleNode:"切换节点 {name}",deleteConfirm:"从草稿中删除节点“{name}”?保存配置后生效。"},policy:{title:"审计策略",description:"配置适用分组、九类输入风险、Worker 与队列边界。",scope:"适用范围",allGroups:"全部分组",selectedGroups:"指定分组",searchGroups:"搜索分组",noGroups:"没有匹配分组",missingGroups:"配置中包含已删除的分组 ID",selectedCount:"已选择 {count} 个分组",scanners:"Qwen3Guard 输入风险分类",workerCount:"Worker 数量",queueCapacity:"持久队列容量",strategy:"节点策略",strategyHint:"按配置顺序优先尝试,必要时故障切换。"},saveBar:{enabled:"启用提示词审计",blocking:"同步阻止",blockingLatestTurnOnly:"仅审最新输入和上一轮输出",storePass:"保存安全事件",dirty:"有未保存的更改",synced:"配置已同步"},blockingConfirm:{title:"开启同步阻止?",message:"适用请求会在账号选择、计费和访问上游之前等待 Guard。命中 Block、Guard 不可用或响应非法时,请求都不会访问上游。",confirm:"理解风险并开启"},events:{title:"审计事件",description:"按身份、入口、风险、Hash 和时间复核事件,详情中可查看完整提示词。",decision:"判定",risk:"风险等级",endpoint:"入口",groupId:"分组 ID",userId:"用户 ID",apiKeyId:"API Key ID",keyword:"关键词",startAt:"开始时间",endAt:"结束时间",deleteSelected:"删除选中项({count})",deleteByFilter:"按筛选删除",filterDeleteDialogTitle:"按筛选删除审计事件",filterDeleteDialogDesc:"选择删除的时间范围与风险条件后即可执行删除;删除不可恢复。如需提前查看匹配数量,可先获取删除预览。",filterTimeRange:"删除时间范围",filterTimeRangeHint:"将删除所选截止时间之前产生的事件;预览后新产生的事件不受影响。",timePresets:{"1d":"1 天前","7d":"7 天前","30d":"30 天前","90d":"90 天前",all:"全部时间",custom:"自定义范围"},customRangeInvalid:"自定义范围需要有效的开始与结束时间,且开始早于结束。",moreConditions:"更多条件(入口 / 关键词 / 分组 / 用户)",filterDeletePreviewAction:"获取删除预览",filterDeletePreviewing:"正在生成预览…",filterDeleteNeedPreview:"可直接确认删除;如需提前查看匹配数量,可先获取删除预览。",filterDeleteConfirmInvalidRange:"请先选择有效的删除时间范围(自定义范围需开始早于结束)。",filterDeleteConfirmNoMatches:"当前筛选匹配 0 条事件,没有可删除的内容。",selectAll:"选择当前页全部事件",selectEvent:"选择事件 {id}",time:"时间",identity:"用户 / 邮箱 / API Key",user:"用户名",email:"用户邮箱",apiKey:"API Key 名称",group:"分组",route:"入口 / 模型",result:"判定 / 风险",preview:"脱敏预览",empty:"没有符合条件的事件。",passEventsDisabled:"当前未开启“保存安全事件”:安全请求仍会完成审计,但不会出现在事件列表中;Flag 和 Critical 风险事件仍会保存。",openConfiguration:"前往配置",detailTitle:"提示词审计事件详情",tabs:{summary:"审计摘要",risks:"具体风险",technical:"技术信息"},promptFull:"完整提示词(未脱敏)",promptFullHint:"完整提示词已随事件入库,仅供管理员复核触发内容;请按敏感数据妥善处理,切勿外泄。",guardReturn:"模型审计返回",guardReturnHint:"展示 Guard 归一化后的结构化结果(判定、分类、分数与脱敏证据),不含原始响应体。",riskSummaries:"风险摘要",evidence:"脱敏证据",score:"分数",categories:"分类",model:"模型",stage:"请求阶段",noRisks:"本事件没有派生风险摘要。",requestId:"Request ID",promptHash:"Prompt SHA-256",technical:{scanner:"扫描器",policy:"策略",guardEndpoint:"Guard 节点",config:"配置版本",chunks:"分片数",latency:"耗时",protocol:"协议"},deleteConfirmTitle:"删除审计事件?",deleteConfirmMessage:"将永久删除 {count} 条事件及符合条件的孤立任务。",filterDeleteCount:"服务端快照匹配 {count} 条事件。",snapshotMax:"快照最大事件 ID",expiresAt:"确认令牌过期时间",filterDeleteWarning:"只删除预览高水位内的事件;预览后产生的新事件会保留。筛选一旦变化,必须重新预览。",confirmFilterDelete:"确认永久删除"}
8,messages:{saved:"提示词审计配置已保存,明文 API Key 状态已清除。",probeSucceeded:"审计节点连接正常。",deleted:"已删除 {count} 条审计事件。"},errors:{loadConfig:"无法加载提示词审计配置。",loadRuntime:"无法加载提示词审计运行态。",loadGroups:"无法加载分组列表。",loadEvents:"无法加载审计事件。",loadDetail:"无法加载事件详情。",saveConfig:"配置保存失败。",probe:"节点探测失败。",delete:"事件删除失败。",previewDelete:"无法生成删除预览,请检查时间范围。",deleteConfirmation:"删除确认无效或已过期,请重新预览。",prompt_audit_config_conflict:"配置已被其他管理员更新。请重新加载服务端配置,再决定如何合并本地草稿。",prompt_audit_encryption_key_required:"未配置固定加密密钥,审计节点 API Key 将在服务重启后失效。请先设置 TOTP_ENCRYPTION_KEY 环境变量并重启服务。",prompt_guard_requires_audit_enabled:"开启同步阻止前必须先启用提示词审计。",prompt_audit_invalid_endpoint:"审计节点配置无效。",prompt_audit_endpoint_required:"启用审计前至少需要一个启用节点。",prompt_audit_groups_required:"指定分组模式至少需要选择一个分组。",prompt_audit_scanners_required:"至少需要启用一个风险分类。"}}},c={brand:{tagline:"一把密钥,接入所有模型。"},common:{actions:{save:"保存",cancel:"取消",confirm:"确认",back:"返回",retry:"重试",close:"关闭",filters:"筛选",export:"导出",copy:"复制",copied:"已复制",copyFailed:"复制失败",create:"新建",edit:"编辑",delete:"删除",refresh:"刷新",viewAll:"查看全部",search:"搜索",reset:"重置"},pagination:{range:"第 {from}-{to} 条,共 {total} 条",perPage:"页",prev:"上一页",next:"下一页",pageSize:"每页条数"},state:{loading:"加载中…",empty:"这里还没有内容",error:"出了点问题"},theme:{light:"浅色",dark:"深色",system:"跟随系统"},other:"其他",range:{today:"今天",last7:"近 7 天",last30:"近 30 天",last90:"近 90 天",start:"开始",end:"结束"},show:"显示",hide:"隐藏"},nav:{dashboard:"总览",keys:"API 密钥",usage:"用量",models:"模型",status:"服务状态",billing:"账单",affiliate:"推广",profile:"个人资料",guides:"帮助",batchImageGuide:"批量出图指南",billingGroup:"账单",subscriptions:"套餐",topup:"充值",orders:"订单",redeem:"兑换码",connectGuide:"接入指南",admin:{group:{overview:"概览",users:"用户",supply:"供给",finance:"财务",risk:"风控与审计",system:"系统"},dashboard:"仪表盘",ops:"运维监控",usage:"用量分析",users:"用户",groups:"分组与定价",subscriptions:"订阅",codes:"兑换码与优惠码",accounts:"账号",channels:"渠道",channelMonitor:"渠道监控",proxies:"代理",plugins:"插件",orders:"订单",affiliates:"推广",riskControl:"风控",promptAudit:"提示词审计",auditLogs:"审计日志",settings:"系统设置",announcements:"公告",tickets:"工单",settingsGeneral:"基础",settingsAuth:"登录与认证",settingsPayment:"支付",settingsNotifications:"通知",settingsGateway:"网关",settingsSecurity:"安全",settingsBackup:"备份",settingsSupport:"客服"},switchToAdmin:"切到管理端",switchToConsole:"回到控制台",signIn:"登录",signOut:"退出登录",custom:"自定义页面",home:"首页",docs:"文档",about:"关于我们",tickets:"工单",ticketDetail:"工单详情",keyUsage:"密钥用量",legal:"法律条款",notFound:"页面不存在"},shell:{toggleSidebar:"切换侧栏",openMenu:"打开菜单",language:"语言",notifications:"通知",markAllRead:"全部标为已读",noNotifications:"暂无通知",docLink:"文档",balance:"可用余额",frozenBalance:"冻结",totalBalance:"总额",subscriptions:"订阅",activeSubscriptions:"{count} 个生效中",noSubscriptions:"暂无生效的订阅",subscriptionsLoading:"加载中…",viewSubscriptions:"查看订阅"},placeholder:{title:"{page} 即将上线",body:"本页排在 Toknex 重构的第 {phase} 阶段。",backToOverview:"返回总览"},dashboard:{title:"总览",greeting:"欢迎回来",stats:{balance:"余额",topUp:"充值",todayRequests:"今日请求",todayTokens:"今日 Tokens",todayCost:"今日消费",cacheHit:"缓存命中 {rate}",avgLatency:"平均 {value}",vsYesterday:"较昨日",rpm:"{rpm} RPM · {tpm} TPM"},trend:{title:"用量趋势",requests:"请求数",tokens:"Tokens",cost:"消费",range7:"近 7 天",range30:"近 30 天",hourly:"按小时",daily:"按天"},models:{title:"模型分布"},recent:{title:"最近用量",empty:"还没有请求记录",time:"时间",model:"模型",key:"密钥 ID",tokens:"Tokens",cost:"费用"},platforms:{title:"按平台",show:"展开明细",hide:"收起明细",platform:"平台"},quick:{title:"快捷操作",createKey:"新建 API 密钥",connect:"接入客户端",redeem:"兑换码充值",usage:"查看用量"}
8,onboarding:{title:"三步开始使用",step1:"创建第一个 API 密钥",step2:"把配置复制到你的客户端",step3:"发出第一个请求",dismiss:"关闭",cta:"新建密钥"}},billing:{pages:{subscriptions:{title:"套餐与订阅",description:"看看当前订阅的用量,或挑一个套餐开始。"},topup:{title:"账户充值",description:"给余额充值,用于按量计费的请求。"},orders:{title:"订单",description:"充值与订阅的历史订单,可继续支付、取消或申请退款。"},redeem:{title:"兑换码",description:"兑换余额、并发或订阅套餐。"}},topup:{title:"余额充值",amount:"充值金额",presets:"快捷金额",custom:"自定义金额",enterAmount:"请输入金额",method:"支付方式",feeRate:"手续费 {rate}%",total:"实付",credited:"到账余额",ratePreview:"充值倍率 ×{rate}:支付 {pay},到账 {credited}",cryptoNote:"下一步跳转到 NOWPayments 付款:可选 USDT、USDC、BTC、ETH 等币种,按实时汇率把 {pay} 换算成对应的币数,到账仍按美元计。",pay:"去支付",creating:"正在创建订单…",notAvailable:"当前暂不支持充值",noMethods:"暂无可用的支付方式",help:"支付帮助",selectedPlan:"正在订阅",changePlan:"更换套餐",planTotal:"套餐价格",balance:"当前余额",multiplier:"充值倍率 ×{rate}",summary:"费用明细",amountTooLow:"最低充值金额为 {min}",amountTooHigh:"最高充值金额为 {max}",amountNoMethod:"没有支付方式支持这个金额",planNotFound:"链接里的套餐已经不再销售,没有为你选中任何套餐。",planNotFoundLink:"去看套餐"},plan:{perMonth:"月",months:"个月",weeks:"周",days:"天"},subscription:{current:"我的订阅",none:"还没有订阅",noneBody:"在下面挑一个套餐,开始使用订阅池。",browsePlans:"查看套餐",status:{active:"生效中",expired:"已过期",revoked:"已撤销",suspended:"已暂停"},expires:"到期时间",noExpiration:"永不过期",expiresOn:"到期时间 {date}",daysRemaining:"剩余 {days} 天({date})",expired:"已过期",today:"今天({date})",tomorrow:"明天({date})",unlimited:"不限额度",unlimitedBody:"该订阅没有用量上限。",daily:"每日",weekly:"每周",monthly:"每月",resetIn:"{d} 天 {h} 小时 {m} 分后重置",windowNotActive:"窗口尚未开始",quotaEndsIn:"额度将在 {d} 天 {h} 小时 {m} 分后结束",usageOf:"{used} / {limit}",renew:"续订",loadFailed:"订阅加载失败,请重试。"},plans:{title:"可购套餐",empty:"当前没有在售套餐。",subscribe:"订阅",renew:"续订",discount:"-{percent}%",rate:"倍率",peak:"高峰时段",validity:"有效期",quota:"额度",supports:"模型范围",features:"包含权益",loadFailed:"套餐加载失败,请重试。"},orders:{columns:{id:"订单",tradeNo:"订单号",type:"类型",amount:"金额",method:"支付方式",status:"状态",createdAt:"创建时间",actions:"操作"},type:{balance:"余额充值",subscription:"订阅套餐"},status:{PENDING:"待支付",PAID:"已付款",RECHARGING:"到账中",COMPLETED:"已完成",EXPIRED:"已过期",CANCELLED:"已取消",FAILED:"支付失败",REFUND_REQUESTED:"已申请退款",REFUNDING:"退款中",REFUND_PENDING:"退款待处理",REFUNDED:"已退款",PARTIALLY_REFUNDED:"部分退款",REFUND_FAILED:"退款失败"},filter:{all:"全部状态"},actions:{continue:"继续支付",view:"查看详情",cancel:"取消订单",refund:"申请退款"},confirmCancel:{title:"取消这笔订单?",body:"订单 {no} 将被关闭,你随时可以重新下单。"},cancelled:"订单已取消",refund:{title:"申请退款",body:"写清楚原因,管理员会逐单审核。",reason:"退款原因",reasonRequired:"请填写退款原因",submit:"提交申请",submitted:"退款申请已提交"},credited:"到账",fee:"手续费 {rate}%",empty:{title:"还没有订单",body:"充值或订阅之后,订单会出现在这里。"}},redeem:{title:"兑换码",balance:"账户余额",concurrency:"并发数",concurrencyHint:"并发请求",placeholder:"粘贴你的兑换码",submit:"兑换",rules:{title:"关于兑换码",1:"每个兑换码只能使用一次。",2:"余额与并发兑换后立即到账。",3:"兑换不了?点右下角「联系客服」找我们。",4:"订阅类兑换码会立刻开通对应套餐。"},result:{title:"兑换成功",balance:"已充入余额",concurrency:"已增加并发",subscription:"订阅已开通",subscriptionDays:"(有效期 {days} 天)"},history:{title:"最近记录",open:"兑换记录",empty:"还没有兑换记录",adminAdjustment:"管理员调整",balanceRedeem:"兑换码充值",balanceAdmin:"管理员增加余额",balanceDeductedAdmin:"管理员扣减余é¢
8",balanceAffiliate:"推广返佣入账",concurrencyRedeem:"兑换码增加并发",concurrencyAdmin:"管理员增加并发",concurrencyReducedAdmin:"管理员减少并发",subscription:"订阅已开通",unknown:"兑换记录",days:"天",requests:"并发",loadFailed:"加载兑换记录失败,请重试。"},failed:"这个兑换码用不了",userRefreshFailed:"已兑换,但账户信息没刷新,刷新页面即可看到最新余额。",subscriptionRefreshFailed:"已兑换,但订阅信息没刷新,刷新页面即可看到。",success:"兑换成功"}},payment:{methods:{alipay:"支付宝",wxpay:"微信支付",stripe:"Stripe",airwallex:"Airwallex",nowpayments:"加密货币",easypay:"EasyPay",card:"银行卡",link:"Link",alipay_direct:"支付宝",wxpay_direct:"微信支付"},status:{waiting:"等待支付",success:"支付成功",subscriptionSuccess:"订阅开通成功",cancelled:"支付已取消",expired:"订单已过期",timeout:"仍在确认中"},qr:{scanToPay:"扫码支付",scanAlipay:"支付宝扫码支付",scanWxpay:"微信扫码支付",scanAlipayHint:"用手机打开支付宝,扫描上方二维码完成支付。",scanWxpayHint:"用手机打开微信,扫描上方二维码完成支付。",payInNewWindow:"请在支付窗口完成支付",payInNewWindowHint:"支付页面已在新窗口打开,完成支付后回到本页即可。",openPayWindow:"重新打开支付页面",expiresIn:"剩余支付时间",expired:"订单已过期",expiredDesc:"订单已超时,重新下单即可继续。",cancelled:"订单已取消",cancelledDesc:"你已取消本次支付。",waitingPayment:"等待支付…",cancelOrder:"取消订单",alipayOpening:"正在打开支付宝",alipayContinueInApp:"请在支付宝中完成支付",alipayWaitingHint:"支付结果由服务端确认,本页会自动更新。",alipayFallbackTitle:"没能打开支付宝",alipayFallbackHint:"可以再试一次,或保存二维码后从相册识别。",reopenAlipay:"重新打开支付宝",saveQRCode:"保存二维码",alipaySaveAndScanHint:"保存二维码后,打开支付宝扫一扫,从相册选择即可。"},actions:{cancel:"取消",done:"完成",retry:"重试",backToBilling:"返回账单",viewOrders:"查看订单"},summary:{orderId:"订单",orderNo:"订单号",credited:"到账金额",paid:"实付金额"},result:{checking:"正在确认支付结果…",checkingBody:"通常只需几秒钟。",success:"支付成功",subscriptionSuccess:"订阅已开通",successBody:"余额已更新。",pending:"支付尚未确认",pendingBody:"如果你已完成支付,请稍候片刻或到订单页查看。",failed:"支付失败",cancelled:"支付已取消",expired:"订单已过期",orderId:"订单",orderNo:"订单号",amount:"金额",fee:"手续费",paid:"实付",credited:"到账",backToBilling:"返回账单",viewOrders:"查看订单",continuePay:"继续等待",topupAgain:"重新充值",legacyReturn:"支付已提交,结果稍后会显示在订单页。",notFound:"找不到这笔订单。"},stripe:{title:"使用 Stripe 支付",loading:"正在加载安全支付…",failed:"Stripe 支付失败",missingParams:"支付链接缺少订单或密钥信息,请从账单页重新发起。",notConfigured:"站点尚未配置 Stripe。",loadFailed:"无法加载支付组件,请刷新后重试。",redirecting:"正在跳转到 Stripe…",closeHint:"你可以关闭此窗口。",confirm:"确认支付",processing:"处理中…"},airwallex:{title:"使用 Airwallex 支付",loading:"正在跳转到 Airwallex…",missingParams:"支付链接缺少必要信息,请从账单页重新发起。",failed:"无法发起 Airwallex 支付"},stripePopup:{ready:"正在准备支付…",timeout:"支付窗口超时,请关闭后重试。",waiting:"等待支付确认…",done:"支付完成,此窗口即将关闭。"}},guides:{connect:{title:"接入指南",description:"选择客户端,挑一把密钥,复制配置即可接入。",key:"API 密钥",keyPlaceholder:"选择密钥",noKeys:"你还没有密钥",createKey:"去创建",signIn:"登录后自动填入你的密钥",keysError:"密钥列表加载失败。",group:"分组",groupHint:"密钥所属分组决定可用的客户端",endpoint:"接入点",defaultEndpoint:"默认",client:"客户端",files:"需要创建或修改的文件",copyAll:"复制全部",clients:{claude:"Claude Code",codex:"Codex CLI",codexWs:"Codex CLI(WebSocket)",gemini:"Gemini CLI",grok:"Grok CLI",systemone:"System O
8ne",opencode:"OpenCode"},os:{unix:"macOS / Linux",cmd:"Windows CMD",powershell:"PowerShell",windows:"Windows"},notes:{anthropic:"Claude Code 会从下面的设置文件读取 ANTHROPIC_BASE_URL 与 ANTHROPIC_AUTH_TOKEN。",openai:"Codex CLI 启动时读取 ~/.codex/config.toml。下面列出的文件都要创建,已有的 provider 配置请保留。",gemini:"Gemini CLI 读取下面的环境变量。",grok:"Grok CLI 读取 ~/.grok/config.toml。",generic:"把客户端的接入地址指向下面的 Base URL,密钥作为 Bearer Token 使用。"},fileHints:{claudeSettings:"把这段合并进你的 Claude Code 全局设置文件。",codexConfig:"保存 config.toml 后重启 Codex;本地文件模式还需下载清单并保存到配置路径。保留已有的其它 provider 配置。",grokConfig:"Grok CLI 启动时读取该文件,保存后可执行 `grok inspect` 校验。",grokCodexConfig:"保存 config.toml 后重启 Codex;本地文件模式还需下载清单。Codex 走 HTTP/SSE 访问 Grok 分组。",routedCodexConfig:"保存 config.toml 后重启 Codex;本地文件模式还需下载清单。网关会把 Codex 的请求转换成该平台的协议。",opencode:"放在项目目录下,或放到 ~/.config/opencode/opencode.json。"},codexCatalog:{title:"Codex 模型清单",description:"Codex 使用配置中的认证信息加载并刷新远程清单。本地文件模式需加载下方清单,下载后保存到配置路径。",mode:"清单来源",remote:"远程清单(Codex 0.156.0+)",local:"本地文件(旧版客户端)",oversized:"完整清单超过远程模式的 1 MiB 限制,已切换到本地文件模式,请下载并保存到配置路径。",path:"保存到",url:"清单地址",download:"下载 codex-models.json",models:"{count} 个模型",load:"加载清单",loaded:"已加载 {count} 个模型。",error:"模型清单加载失败。",downloadStarted:"已开始下载模型清单。",downloadError:"模型清单下载失败。"}}},auth:{fields:{email:"邮箱",password:"密码",confirmPassword:"确认密码",code:"验证码",invitationCode:"邀请码",promoCode:"优惠码",affiliateCode:"推广邀请码(选填)",totp:"动态验证码"},login:{title:"登录",subtitle:"欢迎回到 {site}",submit:"登录",forgot:"忘记密码?",noAccount:"还没有账号?",register:"立即注册",passkey:"使用通行密钥登录",or:"或使用以下方式登录",twoFactorTitle:"两步验证",twoFactorHint:"请输入 {email} 的验证器应用中的 6 位验证码",verify:"验证",sessionExpired:"登录已过期,请重新登录"},register:{title:"创建账号",subtitle:"一分钟即可开始使用 {site}",submit:"创建账号",haveAccount:"已经有账号了?",login:"去登录",sendCode:"发送验证码",resend:"{seconds} 秒后重发",codeSent:"验证码已发送到你的邮箱",closed:"当前站点已关闭注册"},verify:{title:"验证邮箱",subtitle:"我们已向 {email} 发送验证码",submit:"验证",resend:"重新发送验证码"},forgot:{title:"重置密码",subtitle:"填写邮箱,我们会发送重置链接",submit:"发送重置链接",sent:"如果该邮箱存在,重置链接已发送",backToLogin:"返回登录",disabled:"本站已关闭密码重置"},reset:{title:"设置新密码",subtitle:"新密码至少 6 位",submit:"更新密码",success:"密码已更新,请重新登录。",invalidToken:"重置链接无效或已过期"},agreement:{prefix:"我已阅读并同意",and:"和",required:"请先同意协议后继续",accept:"同意并继续",decline:"拒绝"},captcha:{required:"请先完成人机验证",failed:"验证失败,请重试"},oauth:{linuxdo:"LinuxDO",wechat:"微信",dingtalk:"钉钉",github:"GitHub",google:"Google",wechatUnavailable:{external_browser_required:"当前微信登录流程仅支持在系统浏览器中继续。",wechat_browser_required:"当前微信登录流程仅支持在微信内置浏览器中继续。",native_app_required:"当前仅配置微信移动应用登录,需要在原生 App 中通过微信 SDK 发起授权。",not_configured:"微信登录尚未配置。",capability_unknown:"暂时无法发起微信登录,请稍后重试。"}},errors:{emailRequired:"请输入邮箱",emailInvalid:"请输入有效的邮箱地址",passwordRequired:"请输入密码",passwordTooShort:"密码至少 6 位",passwordMismatch:"两次输入的密码不一致",codeRequired:"请输入 6 位验证码",emailSuffixNotAllowed:"仅支持以下邮箱域名注册:{suffixes}",emailSuffixSeparator:"、",emailSuffixMore:"等 {count}
8 个",emailDomainLimit:"该邮箱域名的注册名额已用完",invitationCodeRequired:"请输入邀请码",invitationCodeInvalid:"邀请码无效或已被使用",promoCodeInvalid:"优惠码无效",passkeyCancelled:"已取消通行密钥登录",generic:"出了点问题,请稍后重试"},brandPanel:{headline:"所有模型,一个 API。",points:{0:"Claude、GPT、Gemini 等模型共用一把密钥",1:"按 token 透明计费",2:"实时状态与用量洞察"}}}},u={...c,...e("zh")},p={admin:{accounts:{grokMediaEligibility:{reasons:{eligible:"已确认付费资格",billing_inconclusive:"Billing 信息不明确",billing_forbidden:"Billing 接口拒绝访问",billing_free_tier:"Free 账号",billing_unobserved:"尚未探测到 Billing",override_enabled:"手工强制启用",override_disabled:"手工强制禁用"}},ollamaCloud:{errors:{request_failed:"请求失败",empty_response:"响应为空",response_host_mismatch:"响应主机不符合安全边界",redirect_blocked:"官方设置页发生重定向",unauthorized:"浏览器会话已过期",http_error:"官方设置页返回错误",response_read_failed:"读取响应失败",response_too_large:"设置页超过响应大小限制",invalid_html:"无法识别设置页格式",OLLAMA_CLOUD_USAGE_REFRESH_RATE_LIMITED:"刷新过于频繁,请在 {retry_after_seconds} 秒后重试。"}},capacity:{quota:{exceeded:"配额已用完,账号暂停调度",normal:"配额正常"},rpm:{full:"已达 RPM 上限",normal:"RPM 正常",stickyExemptNormal:"RPM 限制 (粘性豁免) - 正常",stickyExemptOver:"RPM 限制 (粘性豁免) - 超限,仅粘性会话",stickyExemptWarning:"RPM 限制 (粘性豁免) - 接近阈值",tieredBlocked:"RPM 限制 (三区模型) - 已阻塞 | 缓冲区: {buffer}",tieredNormal:"RPM 限制 (三区模型) - 正常",tieredStickyOnly:"RPM 限制 (三区模型) - 仅粘性会话 | 缓冲区: {buffer}",tieredWarning:"RPM 限制 (三区模型) - 接近阈值",warning:"RPM 接近上限"},sessions:{full:"活跃会话已满,新会话需等待(空闲超时:{idle}分钟)",normal:"活跃会话正常(空闲超时:{idle}分钟)"},windowCost:{blocked:"5h窗口费用超限,账号暂停调度",normal:"5h窗口费用正常",stickyOnly:"5h窗口费用达阈值,仅允许粘性会话"}},cnProviders:{accountMode:{coding:"Coding Plan",codingDesc:"订阅制编程套餐,按 5 小时 / 每周滚动用量窗口限流。",payg:"按量付费",paygDesc:"消耗账户余额,按 Token 计费。余额不足自动冷却,充值后恢复。"},apiProtocol:{adaptive:"自适应",adaptiveDesc:"按入站协议优先使用供应商原生端点,仅在没有对应端点时转换。",anthropic:"Anthropic",anthropicDesc:"直通供应商原生 Anthropic 端点,零转换,适配 Claude Code。",chatCompletions:"Chat Completions",chatCompletionsDesc:"标准 OpenAI 兼容端点,其他格式请求将被转换。",endpoints:"协议端点",responses:"Responses",responsesDesc:"供应商原生 Responses 端点,适配 Codex。",responsesFallbackDesc:"该供应商没有原生 Responses 端点,Responses 请求将转换为 Chat Completions。"},probe:"查询"},dataImportSelectFile:"请选择数据文件",dayOfWeek:{friday:"周五",monday:"周一",saturday:"周六",sunday:"周日",thursday:"周四",tuesday:"周二",wednesday:"周三"},gemini:{rateLimit:{limited:"限流 {time}",now:"现在",unlimited:"无限流"},tier:{aiStudio:{free:"Google AI Free",paid:"Google AI Pay-as-you-go"},gcp:{enterprise:"GCP Enterprise",standard:"GCP Standard"},googleOne:{free:"Google One Free",pro:"Google One Pro",ultra:"Google One Ultra"}}},grok:{testModeImage:"图片(/images/generations)",testModeRealtime:"实时语音 Realtime(WS /realtime)",testModeSTT:"语音识别 STT(/stt)",testModeSearch:"网页搜索(/web_search)",testModeTTS:"语音合成 TTS(/tts)",testModeText:"文本(Responses)",testModeVideo:"视频(/videos/generations)"},grokCustomBaseUrl:{presets:{cli:"Grok Build CLI",official:"官方 API"}},groupCountTotal:"共 {count} 个分组",oauth:{antigravity:{failedToExchangeCode:"Antigravity 授权码兑换失败",failedToGenerateUrl:"生成 Antigravity 授权链接失败",failedToValidateRT:"验证 Refresh Token 失败",missingExchangeParams:"缺少 code / session_id / state",pleaseEnterRefreshToken:"请输入 Refresh Token"},authMethod:"授权方式",gemini:{failedToExchangeCode:"Gemini 授权码兑换失败",failedToGenerateUrl:"生成 Gemini 授权链接失败",missingExchangeParams:"缺少 code / session_id / state",missingProjectId:"GCP Project ID 获取失败:您的 Google 账号未关联有效的 GCP 项目。请前往 Google Cloud Console 激活 GCP 并绑定信用卡,或在授权时手动填写 Project ID。"},grok:{errors:{GROK_OAUTH_CODE_REQUIRED:"缺少 Grok 授权码。请粘贴完整 callback URL、查询字符串或 code 值。",GROK_OAUTH_INVALID_STATE:"Grok OAuth state 与当前会话不匹配。请粘贴同一次生成的授权链接返回的回调 URL。",GROK_OAUTH_NO_REFRESH_TOKEN:"Grok 响应未返回 refresh token。请重新生成授权链接ï¼
8Œå¹¶å†æ¬¡ç¡®è®¤ offline access 授权。",GROK_OAUTH_PROXY_NOT_AVAILABLE:"无法查询 Grok OAuth 代理配置。请检查选择的代理后重试。",GROK_OAUTH_PROXY_NOT_FOUND:"找不到所选代理。请选择可用代理后重试。",GROK_OAUTH_SESSION_NOT_FOUND:"Grok OAuth 会话不存在或已过期。请重新生成授权链接,并粘贴最新的回调链接。",GROK_OAUTH_STATE_REQUIRED:"回调链接缺少 OAuth state。请粘贴完整 callback URL,不要只粘贴 code。"},failedToAuthorizePassword:"Grok 密码授权失败",failedToExchangeCode:"Grok 授权码兑换失败",failedToGenerateUrl:"生成 Grok 授权链接失败",failedToValidateRT:"验证 Grok refresh token 失败",failedToValidateSSO:"校验 Grok SSO 失败",missingExchangeParams:"缺少授权码、state 或 OAuth 会话",pleaseEnterPassword:"请输入 email----password(每行一组)",pleaseEnterRefreshToken:"请输入 Refresh Token",pleaseEnterSSOToken:"请输入 SSO Token"},openai:{errors:{OPENAI_OAUTH_PROXY_REQUIRED:"未设置代理,当前服务器无法直连 OpenAI,导致 OpenAI OAuth 请求失败。请先选择可访问 OpenAI 的代理后重试;如果授权码已失效,请重新生成授权链接。"},failedToExchangeCode:"OpenAI 授权码兑换失败",failedToGenerateUrl:"生成 OpenAI 授权链接失败",failedToValidateRT:"验证 Refresh Token 失败"}}
8,openai:{compactAuto:"Compact Auto",compactSupported:"支持 Compact",compactUnsupported:"不支持 Compact",testModeCompact:"Compact 探测",testModeDefault:"常规请求",wsModeCtxPoolHint:"网关从连接池获取并复用上游 WS 连接,连接池上限由网关配置决定。",wsModeHttpBridgeHint:"网关将客户端 WS 请求转换为上游 HTTP 请求,再将 SSE 流式响应转换为 WS 消息返回。",wsModePassthroughHint:"网关为每个客户端会话单独建立上游 WS 连接,不使用连接池。"},opencodeGo:{accountMode:{go:"GO",goDesc:"订阅制网关,按 5 小时 / 周 / 月滚动用量窗口限流。",zen:"Zen",zenDesc:"按量付费网关,消耗账户余额,按 Token 计费。"},protocolRules:{add:"添加规则",fallback:"未命中以上规则 → Chat Completions(/v1/chat/completions)",patternPlaceholder:"grok-* 或 deepseek-v4-flash",remove:"删除规则",restoreDefaults:"恢复默认"}},platforms:{anthropic:"Anthropic",antigravity:"Antigravity",claude:"Claude",deepseek:"DeepSeek",gemini:"Gemini",grok:"Grok",kimi:"Kimi",minimax:"MiniMax",openai:"OpenAI",opencode_go:"OpenCode",typesafe:"TypeSafe / Jev",zhipu:"Zhipu GLM"},privacyAntigravityFailed:"隐私设置失败",privacyAntigravitySet:"已关闭遥测和营销邮件",privacyCfBlocked:"被 Cloudflare 拦截,训练可能仍开启",privacyFailed:"关闭训练数据共享失败",privacyTrainingOff:"已关闭训练数据共享",quotaNotify:{alert:"提醒阈值"},reAuthorizeAccount:"重新授权账号",reAuthorizedSuccess:"账号重新授权成功",schedulerScore:{ungrouped:"未分组"},setupTokenLongLived:"Setup Token(长期有效)",status:{active:"正常",cooldown:"冷却中",creditsExhausted:"积分已用尽",creditsExhaustedUntil:"AI Credits 已用尽,预计 {time} 恢复",error:"错误",expired:"已过期",inactive:"停用",limited:"限流",modelCreditOveragesUntil:"{model} 正在使用 AI Credits,至 {time}",modelRateLimitedUntil:"{model} 限流至 {time}",overloaded:"过载中",overloadedUntil:"负载过重,重置时间:{time}",paused:"暂停",quotaExceeded:"配额超限",rateLimited:"限流中",rateLimitedAutoResume:"{time} 自动恢复",rateLimitedUntil:"限流中,当前不参与调度,预计 {time} 自动恢复",tempUnschedulable:"临时不可调度",tempUnschedulableUntil:"预计 {time} 恢复",unschedulable:"不可调度",viewTempUnschedDetails:"查看临时不可调度详情"},subscriptionAbnormal:"异常",tier:{free:"Free",pro:"Pro",ultra:"Ultra"},types:{antigravityApikey:"通过 Base URL + API Key 连接",antigravityOauth:"Antigravity OAuth",chatgptOauth:"ChatGPT OAuth",codeAssist:"Code Assist",googleOauth:"Google OAuth",grokOauth:"Grok OAuth",oauth:"OAuth",responsesApi:"Responses API",upstream:"对接上游",upstreamDesc:"通过 Base URL + API Key 连接上游"},usageWindow:{grokProbe:"探测"}},groups:{modelAllowlist:{errors:{invalidWildcard:"通配符 * 只能出现在条目末尾"}},platforms:{all:"全部平台",anthropic:"Anthropic",antigravity:"Antigravity",composite:"Composite",deepseek:"DeepSeek",gemini:"Gemini",grok:"Grok",kimi:"Kimi",minimax:"MiniMax",openai:"OpenAI",opencode_go:"OpenCode",typesafe:"TypeSafe / Jev",zhipu:"Zhipu GLM"},rateLabel:"倍率"},settings:{payment:{field_accountId:"Airwallex 账户 ID",field_accountIdHint:"不涉及多账户、组织级密钥或连接账户收款时可以不填;单账户 Scoped API Key 会默认使用所选账户。",field_airwallexApiBaseHint:"必须和 API Key 所属环境一致:沙箱/测试密钥使用 https://api-demo.airwallex.com/api/v1,生产密钥使用 https://api.airwallex.com/api/v1。环境混用会返回 credentials_invalid / Access Denied。",field_apiBase:"API 基础地址",field_apiKey:"API Key",field_apiV3Key:"API v3 密钥",field_certSerial:"证书序列号",field_cid:"支付渠道 ID",field_cidAlipay:"支付宝渠道 ID",field_cidWxpay:"微信渠道 ID",field_clientId:"Client ID",field_countryCode:"国家/地区代码",field_currency:"支付币种",field_h5AppName:"H5 应用名称",field_h5AppUrl:"H5 应用地址",field_mchId:"商户号",field_mpAppId:"公众号 App ID",field_notifyUrl:"异步通知地址",field_paymentCurrencyHint:"默认 CNY。Stripe 和 Airwallex 可按账户支持从下拉项选择 HKD、USD 等币种;微信、支付宝、易支付仍按 
8CNY。",field_privateKey:"私钥",field_publicKey:"公钥",field_publicKeyId:"公钥 ID",field_publishableKey:"公开密钥",field_returnUrl:"同步跳转地址",field_secretKey:"密钥",field_webhookSecret:"Webhook 密钥"}},users:{attributes:{types:{date:"日期",email:"邮箱",multi_select:"多选",number:"数字",select:"单选",text:"单行文本",textarea:"多行文本",url:"链接"}},customRate:"专属倍率",daysRemaining:"{days}天",defaultRate:"默认倍率",exclusiveGroups:"专属分组",expired:"已过期",noApiKeys:"此用户暂无 API 密钥",noOtherGroups:"没有其他可用的专属分组",platformQuota:{windowDaily:"日",windowMonthly:"月",windowWeekly:"周"},roles:{admin:"管理员",user:"用户"},userApiKeys:"用户 API 密钥"}},groups:{subscription:"订阅"},keys:{status:{active:"活跃",expired:"已过期",inactive:"已停用",quota_exhausted:"额度耗尽"}},monitorCommon:{checkMode:{probe:"探活",quota:"配额",quota_probe:"探活 + 配额"},latencyEmpty:"-",providers:{anthropic:"Anthropic",antigravity:"Antigravity",deepseek:"DeepSeek",gemini:"Gemini",grok:"Grok",kimi:"Kimi",minimax:"MiniMax",openai:"OpenAI",opencode_go:"OpenCode",typesafe:"TypeSafe / Jev",zhipu:"智谱 GLM"},quota:{labels:{flash:"Flash",pro:"Pro",requests:"请求",shared:"共享",tokens:"Token"},unavailable:"配额信息不可用",windows:{"30d":"30 天","5h":"5 小时","7d":"7 天","7dFable":"7 天 Fable","7dSonnet":"7 天 Sonnet",daily:"日",monthly:"月",total:"总量",weekly:"周"}},relativeDaysAgo:"{n} 天前",relativeHoursAgo:"{n} 小时前",relativeMinutesAgo:"{n} 分钟前",relativeSecondsAgo:"{n} 秒前",status:{degraded:"降级",error:"错误",failed:"失败",operational:"正常",unknown:"-"}},onboarding:{interactiveHint:"按 Enter 或点击继续",navigation:{exit:"退出",flipPage:"翻页"}},payment:{errors:{BALANCE_NOT_ENOUGH:"退款金额超过余额",BALANCE_PAYMENT_DISABLED:"余额充值功能已关闭",CANCEL_RATE_LIMITED:"取消订单过于频繁,请稍后再试",CONFLICT:"订单状态已变更,请刷新",DAILY_LIMIT_EXCEEDED:"今日充值已达上限,剩余额度 {remaining}",FORBIDDEN:"无权限操作此订单",GROUP_NOT_FOUND:"订阅分组不可用",GROUP_TYPE_MISMATCH:"分组类型不是订阅类型",INVALID_AMOUNT:"金额无效",INVALID_INPUT:"参数有误",INVALID_ORDER_TYPE:"仅余额订单可申请退款",INVALID_STATUS:"当前订单状态不允许此操作",NOT_FOUND:"订单不存在",NO_AVAILABLE_INSTANCE:"暂无可用的支付通道",PAYMENT_DISABLED:"支付系统已关闭",PAYMENT_GATEWAY_ERROR:"支付方式不可用",PAYMENT_PROVIDER_CONFLICT:"该支付方式已有其他启用中的服务商实例,请先停用后再继续。",PAYMENT_PROVIDER_MISCONFIGURED:"支付通道配置错误,请联系管理员",PENDING_ORDERS:"该服务商有未完成的订单,请等待订单完成后再操作",PLAN_NOT_AVAILABLE:"套餐不存在或已下架",REFUND_AMOUNT_EXCEEDED:"退款金额超过充值金额",REFUND_FAILED:"退款失败",TOO_MANY_PENDING:"待支付订单过多(最多 {max} 个),请先完成或取消现有订单",USER_INACTIVE:"账号已被禁用",WXPAY_CONFIG_INVALID_KEY:"微信支付 {key} 格式错误,请确认复制了完整的 PEM 内容",WXPAY_CONFIG_INVALID_KEY_LENGTH:"微信支付 {key} 长度错误,应为 {expected} 字节(实际 {actual})",WXPAY_CONFIG_MISSING_KEY:"微信支付配置缺少必填项:{key}",alipayDesktopQrHint:"电脑端支付宝应展示扫码单,请刷新后重试,或确认浏览器未拦截当前支付页。",alipayDesktopUnavailable:"当前支付宝桌面支付未成功生成二维码。",alipayMobileOpenHint:"请允许当前页面打开支付宝 App,或改用系统浏览器重新发起支付。",alipayMobileUnavailable:"当前页面未成功跳转到支付宝。",cancelRateLimited:"取消订单过于频繁,请稍后再试",mobilePaymentFallbackToQr:"当前商户未开通移动支付,已自动切换为扫码支付。",tooManyPending:"待支付订单过多(最多 {max} 个),请先完成或取消现有订单",wechatH5NotAuthorized:"当前商户未开通微信 H5 支付,请在微信中打开当前页面继续支付。",wechatJsapiFailed:"微信支付未完成,请重新拉起支付或改用扫码支付。",wechatJsapiUnavailable:"当前环境未能拉起微信支付,请确认正在微信内打开本页后重试。",wechatOpenInWeChatHint:"请复制当前页面链接到微信内打开,或直接改用电脑端微信扫码支付。",wechatPaymentMpNotConfigured:"当前站点未完成公众号/JSAPI 支付配置,暂时无法在微信内直接拉起支付。",wechatScanOnDesktopHint:"电脑端请直接使用微信扫一扫完成支付;移动端请在微信内打开当前页面。",wechatSwitchBrowserHint:"请改用电脑端微信扫码,或在外部浏览器重新打开本页后再试。",wechatUnavailable:"当前微信支付暂不可用,请稍后重试。"},qr:{cancelled:"订单已取消"}},profile:{authBindings:{notes:{bindAnotherBeforeUnbind:"请先绑定其他登录方式,再解除当前绑定。",canUnbind:"你可以解绑这个登录方式。",emailManagedFromProfile:"主邮箱在资料表单中管理"}}}
8,purchase:{rechargeDescription:"通过内嵌页面完成充值",subscriptionDescription:"通过内嵌页面完成订阅"},usage:{cyber:"安全策略",errors:{categories:{auth:"认证失败",cyber:"安全策略",internal:"平台错误",invalid_request:"参数错误",other:"其他",quota:"余额/订阅",rate_limit:"限流",service_unavailable:"服务暂时不可用",upstream:"上游错误"}},imageSizeLegacyUnstandardized:"历史非标准",imageSizeNotRecorded:"未记录",imageSizeSourceLegacy:"历史记录",imageSizeSourceMissing:"未记录",imageSizeUnknown:"未知",live:"Live",serviceTierFlex:"Flex",serviceTierPriority:"Fast",serviceTierStandard:"Standard",serviceTierUltrafast:"Ultrafast",stream:"流式",sync:"同步",unknown:"未知",ws:"WS"}},m={...i,...o,...a,admin:{...r,...n,...s,...l,...d},toknex:u},h=t(m,p);export{h as default};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.