'site.home.feature.cards.collaborationDesc':'Remote dev, Skill sharing, Playground, and more are coming soon',
'site.home.cli.claudeDescription':'Claude Code gives you the raw power of Claude directly in your terminal. Search millions of lines of code instantly. Turn hours-long workflows into a single command. Your tool. Your flow. Your codebase, evolving at the speed of thought.',
'site.home.cli.claudeTitle':'Claude Code',
'site.home.cli.codexDescription':'Codex CLI is a coding assistant that runs locally in your terminal and can read, modify, and execute code in user-specified directories.',
'site.home.cli.codexTitle':'Codex CLI',
'site.home.cli.geminiDescription':'Gemini CLI is an open-source AI agent that brings Gemini directly into your terminal. It offers lightweight access to Gemini and gives you the most direct path from prompt to model.',
'site.home.cli.geminiTitle':'Gemini CLI',
'site.home.cli.terminal':'Terminal',
'site.home.cli.powershell':'PowerShell',
'site.home.cli.npm':'npm',
'site.home.cli.homebrew':'Homebrew',
'site.home.cli.ideIntegration':'IDE integration',
'site.home.cli.commandLine':'Command-line tool',
'site.home.cli.multimodalAi':'Multimodal AI',
'site.home.copyConfig':'Copy config',
'site.home.backHome':'Back home',
'site.home.applyScheme':'Apply this scheme',
'site.home.logoCompareTitle':'Logo color schemes',
'site.home.logoCompareDesc':'Click any scheme to preview it larger',
'site.home.preview':'Preview',
'site.home.previewHelp':'Update the following color values in code',
'providers.modelMapping.scope.allRequestsDefaultDescription':'This mapping applies to all requests on the selected endpoints. Session compaction can be selected only when every explicitly selected endpoint uses OpenAI Responses.',
'providers.modelMapping.scope.sessionCompactionDescription':'Match only session compaction requests on the selected OpenAI Responses endpoints.',
'安装命令已复制到剪贴板':'Install command copied to clipboard',
'生成代理节点安装命令失败':'Failed to generate proxy node install command',
'读取代理节点详情失败':'Failed to read proxy node details',
'批量添加失败':'Batch add failed',
'批量升级下发失败':'Failed to dispatch batch upgrade',
'删除节点':'Delete node',
'脚本自动添加':'Add with script',
'手动添加':'Add manually',
'批量添加':'Batch add',
'编辑代理节点':'Edit proxy node',
'添加代理节点':'Add proxy node',
'修改手动代理节点的配置':'Modify the manual proxy node configuration',
'推荐使用一键脚本部署 aether-tunnel,也可手动或批量添加已有 HTTP/SOCKS 代理':'Use the one-click script to deploy aether-tunnel, or add existing HTTP/SOCKS proxies manually or in batch.',
'输入节点名称后生成一次性安装命令,有效期 15 分钟。复制的命令不含敏感授权信息,只能在目标机器使用一次,避免 Token 暴露在页面或聊天记录中。':'Enter a node name to generate a one-time install command valid for 15 minutes. The copied command does not contain sensitive authorization data and can only be used once on the target machine, avoiding token exposure in pages or chats.',
'节点名称 *':'Node name *',
'例如: jp-proxy-01':'Example: jp-proxy-01',
'目标系统':'Target system',
'复制到代理节点机器执行':'Copy and run on the proxy node machine',
'一键复制':'Copy command',
'生成中...':'Generating...',
'重新生成':'Regenerate',
'生成命令':'Generate command',
'复制命令':'Copy command',
'输入节点名称后点击“生成命令”':'Enter a node name and click "Generate command"',
'脚本会自动安装或更新代理程序,并保留已有配置。':'The script installs or updates the proxy program and preserves existing configuration.',
'支持一行一个,或使用英文逗号分隔。URL 中的用户名和密码会自动拆分到手动添加接口,节点名称自动使用主机和端口。':'Supports one entry per line or comma-separated entries. Usernames and passwords in URLs are split into the manual add API automatically, and node names use host and port.',
'代理地址 *':'Proxy address *',
'名称 *':'Name *',
'例如: 美西 VPN 代理':'Example: US West VPN proxy',
'http://proxy:port 或 socks5://proxy:port':'http://proxy:port or socks5://proxy:port',
'可选,例如: US-West':'Optional, e.g. US-West',
'等待输入代理地址':'Waiting for proxy addresses',
'请先输入至少一条代理地址':'Enter at least one proxy address first',
'均分':'Distribute',
'升级':'Upgrade',
'地址':'Address',
'区域':'Region',
'总请求':'Total requests',
'收起数据':'Collapse data',
'展开数据':'Expand data',
'测试':'Test',
'测试中':'Testing',
'测试中...':'Testing...',
'测试连通性':'Test connectivity',
'连通性测试通过':'Connectivity test passed',
'测试请求失败':'Test request failed',
'暂无样本':'No sample',
'探测':'Probe',
'超时':'Timeout',
'出口 IP':'Exit IP',
'隧道在线':'Tunnel online',
'隧道离线':'Tunnel offline',
'表示 gateway 仍能看到 tunnel/heartbeat,不代表默认探测站点一定可达':'The gateway can still see the tunnel/heartbeat. This does not guarantee the default probe site is reachable.',
'gateway 当前未检测到可用 tunnel 连接':'The gateway currently does not detect an available tunnel connection.',
'节点当前被标记为在线':'The node is currently marked online',
'节点当前被标记为离线':'The node is currently marked offline',
'排空中':'Draining',
'已封锁':'Cordoned',
'连接':'Connected',
'断开':'Disconnected',
'远程配置':'Remote config',
'修改后将在下次心跳时自动下发到 aether-tunnel 节点':'Changes are sent to the aether-tunnel node on its next heartbeat.',
'允许的端口':'Allowed ports',
'逗号分隔的目标端口白名单':'Comma-separated target port allowlist',
'日志级别':'Log level',
'心跳间隔 (秒)':'Heartbeat interval (seconds)',
'接单状态':'Scheduling state',
'draining/cordoned 都会停止新隧道请求;draining 用于排空,cordoned 用于人工隔离。':'draining and cordoned both stop new tunnel requests; draining is for graceful emptying, cordoned is for manual isolation.',
'升级到版本':'Upgrade to version',
'例如 0.2.3':'Example: 0.2.3',
'留空可清除已有升级指令':'Leave empty to clear an existing upgrade command',
'配置版本:':'Config version:',
'批量升级':'Batch upgrade',
'给所有 tunnel 节点写入升级目标,节点会在下次心跳自动领取':'Write an upgrade target to all tunnel nodes; nodes pick it up on their next heartbeat.',
'目标版本':'Target version',
'gateway 只会写入 `upgrade_to` 目标版本,不再维护分波 rollout 或确认状态。':'The gateway only writes the `upgrade_to` target version and no longer manages rollout waves or acknowledgement state.',
'下发中...':'Dispatching...',
'确认下发':'Confirm dispatch',
'连接事件':'Connection events',
'失败请求':'Failed requests',
'DNS 失败':'DNS failures',
'流错误':'Stream errors',
'暂无连接事件记录':'No connection events',
'节点数据':'Node data',
'最近 24 小时':'Last 24 hours',
'加载节点数据...':'Loading node data...',
'加载节点数据失败':'Failed to load node data',
'加载事件失败':'Failed to load events',
'远程配置已保存,将在下次心跳时生效':'Remote config saved. It will take effect on the next heartbeat.',
'检查 gateway/反向代理 idle timeout、跨境链路抖动和 ping/pong 是否可达;网络抖动大时可调高 stale timeout。':'Check gateway/reverse-proxy idle timeout, cross-region network jitter, and ping/pong reachability. Increase stale timeout if network jitter is high.',
'检查 gateway 是否重启、负载均衡/NAT/防火墙是否重置长连接,并确认 proxy 是否已自动重连。':'Check whether the gateway restarted, load balancer/NAT/firewall reset long-lived connections, and confirm the proxy reconnected automatically.',
'检查中间代理是否清理空闲 WebSocket,或对端是否提前关闭连接。':'Check whether an intermediate proxy clears idle WebSockets or the peer closes connections early.',
'对照同一时间的 gateway 日志和网络监控,确认是否存在链路中断。':'Compare gateway logs and network monitoring at the same time to confirm whether the link was interrupted.',
'检查 Aether 地址、DNS、TLS、管理 token,以及 AETHER_TUNNEL_AETHER_OUTBOUND_PROXY_URL 配置。':'Check the Aether URL, DNS, TLS, management token, and AETHER_TUNNEL_AETHER_OUTBOUND_PROXY_URL configuration.',
'检查 proxy/gateway 版本兼容性,确认中间层没有改写 WebSocket 二进制帧。':'Check proxy/gateway version compatibility and confirm no intermediate layer rewrites WebSocket binary frames.',
'新密码 (留空保持不变)':'New password (leave empty to keep unchanged)',
'确认新密码':'Confirm new password',
'再次输入新密码':'Enter the new password again',
'所属分组':'Groups',
'可选择多个分组':'Select one or more groups',
'暂无分组':'No groups',
'未找到匹配的分组':'No matching groups found',
'额度':'Quota',
'初始额度 (USD)':'Initial quota (USD)',
'无限制':'Unlimited',
'按钱包余额限制':'Limited by wallet balance',
'功能权限':'Feature permissions',
'通知推送服务':'Notification push service',
'允许用户配置自己的第三方推送渠道':'Allow users to configure their own third-party push channels',
'用户分组':'User groups',
'管理用户组、默认注册组、成员和组级访问控制':'Manage user groups, the default registration group, members, and group-level access control',
'新建分组':'Create group',
'编辑分组':'Edit group',
'当前为所有用户的默认组':'Currently the default group for all users',
'通过额外分组配置访问限制':'Configure access limits through additional groups',
'默认注册组':'Default registration group',
'设为默认注册组':'Set as default registration group',
'删除分组':'Delete group',
'成员':'Members',
'选择用户':'Select users',
'未找到匹配用户':'No matching users found',
'例如:生产团队':'Example: Production team',
'组权限':'Group permissions',
'组权限叠加,Key 可再收窄':'Group permissions accumulate; keys can narrow them further',
'查看组权限合并规则':'View group permission merge rules',
'模型、供应商和端点会在多个用户组之间叠加授权;unrestricted 仍表示不限制,deny_all 只是不授予额外权限。速率限制按付费档位取更高额度,0 表示不限速;用户/API Key 自身限制仍会收窄最终权限。':'Models, providers, and endpoints accumulate across multiple user groups. unrestricted still means no restriction, while deny_all grants no extra permission. Rate limits take the higher quota by tier, and 0 means unlimited. User/API key limits still narrow the final permissions.',
'允许的提供商':'Allowed providers',
'允许的端点':'Allowed endpoints',
'允许的模型':'Allowed models',
'暂无选项':'No options',
'用户批量操作':'User batch actions',
'按当前选择批量调整用户状态、角色和额度':'Batch update user status, role, and quota for the current selection',
'影响用户:':'Affected users:',
'目标为当前筛选条件匹配的全部用户,执行前后端会重新解析。':'Targets all users matching the current filters; the backend will resolve the selection again before execution.',
'目标为当前已勾选的用户,重复 ID 会自动去重。':'Targets the currently selected users; duplicate IDs are deduplicated automatically.',
'手动选择':'Manual selection',
'正在解析影响范围...':'Resolving impact scope...',
'按分组选择':'Select by group',
'可与直接用户或筛选条件混合':'Can be combined with direct users or filters',
'只会提交当前动作对应的字段':'Only fields for the current action will be submitted',
'批量修改用户角色':'Batch update user roles',
'将所选用户统一调整为同一个角色。管理员角色拥有后台管理权限,请确认选择范围。':'Set selected users to the same role. Admin roles have backend management permissions, so verify the target scope.',
'目标角色':'Target role',
'对所有目标用户生效':'Applies to all target users',
'批量设置额度':'Batch set quota',
'额度仍然属于用户账户属性;模型、端点、提供商和限速请通过用户组管理。':'Quota remains a user account property; manage models, endpoints, providers, and rate limits through user groups.',
'不修改':'Do not change',
'恢复用户登录与调用':'Restore user sign-in and API access',
'暂停用户访问权限':'Pause user access',
'批量调整用户额度模式':'Batch update user quota mode',
'修改角色':'Change role',
'批量设为普通用户或管理员':'Batch set users to user or admin roles',
'登录设备':'Signed-in devices',
'查看并强制下线该用户的设备会话':'View and revoke this user’s device sessions',
'正在加载设备会话...':'Loading device sessions...',
'正在加载...':'Loading...',
'暂无在线设备':'No online devices',
'强制下线':'Force sign-out',
'全部下线':'Sign out all',
'管理 API Keys':'Manage API keys',
'查看和管理用户的 API 密钥':'View and manage user API keys',
'未命名 API Key':'Unnamed API key',
'已锁定':'Locked',
'独立余额':'Standalone balance',
'复制完整密钥':'Copy full key',
'暂无 API Keys':'No API keys',
'点击下方按钮创建':'Use the button below to create one',
'编辑 API Key':'Edit API key',
'创建 API Key':'Create API key',
'创建中...':'Creating...',
'处理中...':'Processing...',
'执行中...':'Running...',
'更新用户 API Key 的名称、速率限制和并发限制':'Update the user API key name, rate limit, and concurrency limit',
'为用户创建新的 API Key':'Create a new API key for the user',
'密钥名称':'Key name',
'例如:生产环境 Key':'Example: Production key',
'速率限制 (请求/分钟)':'Rate limit (requests/min)',
'留空不限':'Leave empty for unlimited',
'留空表示不限制':'Leave empty for no limit',
'留空表示保持当前值,填 0 表示不限并发':'Leave empty to keep the current value; enter 0 for unlimited concurrency',
'留空表示不限并发,填 0 也表示不限并发':'Leave empty for unlimited concurrency; 0 is also unlimited',
'留空表示不限制;支持 IP、CIDR、IPv4 通配符、*,用 ! 前缀拒绝,多个规则用英文逗号分隔':'Leave empty for no restriction. Supports IP, CIDR, IPv4 wildcards, *, deny rules with ! prefix, and comma-separated rules.',
'创建成功':'Created successfully',
'请妥善保管, 切勿泄露给他人.':'Keep it safe and do not share it.',
'未知错误':'Unknown error',
'用户信息已更新':'User information updated',
'用户创建成功':'User created',
'更新用户失败':'Failed to update user',
'创建用户失败':'Failed to create user',
'加载用户设备会话失败':'Failed to load user device sessions',
'加载用户套餐失败':'Failed to load user plans',
'加载套餐列表失败':'Failed to load plan list',
'套餐已发放':'Plan granted',
'发放套餐失败':'Failed to grant plan',
'请输入密钥名称':'Enter a key name',
'更新 API Key 失败':'Failed to update API key',
'创建 API Key 失败':'Failed to create API key',
'API Key已更新':'API key updated',
'API Key创建成功':'API key created',
'设备已强制下线':'Device signed out',
'强制下线失败':'Failed to sign out device',
'强制下线全部设备失败':'Failed to sign out all devices',
'没有可下线的设备':'No devices to sign out',
'删除 API Key':'Delete API key',
'API Key已删除':'API key deleted',
'删除 API Key 失败':'Failed to delete API key',
'操作失败':'Operation failed',
'锁定/解锁失败':'Failed to lock/unlock',
'复制密钥失败':'Failed to copy key',
'该用户的钱包尚未初始化,暂时无法进行资金操作':'This user wallet is not initialized yet, so wallet operations are not available.',
'用户已删除':'User deleted',
'删除用户失败':'Failed to delete user',
'用户套餐':'User plans',
'查看当前套餐并手动发放':'View current plans and grant manually',
'后台发放会立即生效;如果新套餐包含每日额度或会员权益,用户已有的同类旧套餐会自动失效。':'Admin grants take effect immediately. If the new plan includes daily quota or membership benefits, existing plans of the same type are automatically expired.',
'当前有效套餐':'Current active plans',
'正在加载用户套餐...':'Loading user plans...',
'当前没有有效套餐':'No active plans',
'生效中':'Active',
'开始:':'Starts: ',
'到期:':'Expires: ',
'发放套餐':'Grant plan',
'仅发放套餐权益,不产生用户付款;同类旧套餐会按现有规则自动替换。':'Only grants plan benefits without user payment. Existing plans of the same type are replaced by the current rules.',
'加载套餐中...':'Loading plans...',
'选择要发放的套餐':'Select a plan to grant',
'已下架':'Unlisted',
'备注(可选,例如:人工补偿、活动赠送)':'Notes (optional, e.g. manual compensation or campaign gift)',
'发放中...':'Granting...',
'购买成功后,同类旧套餐会自动失效。确定继续购买吗?':'After purchase succeeds, older plans of the same type will be expired automatically. Continue?',
'已有待支付订单,已打开原支付链接':'A pending payment order already exists. Opened the existing payment link.',
'套餐订单已创建':'Plan order created',
'套餐已创建':'Plan created',
'套餐已更新':'Plan updated',
'套餐已启用':'Plan enabled',
'套餐已停用':'Plan disabled',
'套餐已删除':'Plan deleted',
'请求:':'Requests:',
'限速:':'Rate limit:',
'资金操作':'Wallet operation',
'资金':'Wallet',
'设备':'Devices',
'提示:设置为管理员会授予用户完整后台管理能力。':'Tip: setting users as admins grants full backend management permissions.',
'提示:设置为审计管理员会授予后台只读查看能力。':'Tip: setting users as audit admins grants read-only backend access.',
'提示:设置为普通用户会移除目标用户的管理员权限。':'Tip: setting users as regular users removes admin permissions from targets.',
'解析用户选择失败':'Failed to resolve user selection',
'加载密码策略失败':'Failed to load password policy',
'请选择要修改的额度':'Select the quota change to apply',
'批量操作失败':'Batch action failed',
'加载访问控制选项失败':'Failed to load access control options',
'加载用户分组失败':'Failed to load user groups',
'加载分组成员失败':'Failed to load group members',
'已更新默认注册组':'Default registration group updated',
'设置默认注册组失败':'Failed to set default registration group',
'用户分组已保存':'User group saved',
'保存用户分组失败':'Failed to save user group',
'删除用户分组':'Delete user group',
'用户分组已删除':'User group deleted',
'删除用户分组失败':'Failed to delete user group',
'不限并发':'Unlimited concurrency',
'并发':'concurrent',
'不限制':'No restriction',
'IP 限制:':'IP restrictions: ',
'次':'times',
'解锁':'Unlock',
'锁定':'Lock',
'附赠余额':'Bonus balance',
'每日额度':'Daily quota',
'会员权益':'Membership benefits',
'继承自分组:':'Inherited from group: ',
'用户额外限制与分组叠加:':'User extra limit combined with groups: ',
'用户额外限制与分组叠加':'User extra limit combined with groups',
'用户单独配置':'User-specific configuration',
'个月':'months',
'年':'years',
'模型管理':'Model management',
'提供商管理':'Provider management',
'号池管理':'Pool management',
'模块管理':'Module management',
'系统扩展':'System extensions',
'Aether 提供高可插入的模块化管理机制,帮助连接外部服务和授权系统。':'Aether provides a highly pluggable module management system for connecting external services and authorization systems.',
'允许通过 Management Token 授权使用全部或部分后端敏感接口(如自动化运维脚本接入)。':'Allow Management Tokens to authorize all or selected sensitive backend APIs, such as automation scripts.',
'用于注册验证及账户通知服务。管理员可以自定义 SMTP 服务器并高度定制系统发送的各种 HTML 邮件模板。':'Used for registration verification and account notifications. Administrators can customize the SMTP server and the HTML email templates sent by the system.',
'OAuth 登录':'OAuth sign-in',
'支持包括 Linux Do OAuth 等多种第三方授权验证登录,方便统一认证渠道并提升用户体验。':'Supports third-party authorization and verification sign-in, including Linux Do OAuth, to unify authentication channels and improve user experience.',
'LDAP 认证':'LDAP authentication',
'为企业管理构建。直接对接企业现有的 LDAP 或 Active Directory 目录以映射内网员工账户和组织架构。':'Built for enterprise management. Connect directly to existing LDAP or Active Directory directories to map internal employee accounts and organization structure.',
'系统设置':'System settings',
'系统信息':'System information',
'基础配置':'Basic configuration',
'网络代理':'Network proxy',
'定时任务':'Scheduled tasks',
'请求记录清理策略':'Request log cleanup policy',
'清理策略说明':'Cleanup policy notes',
'最近清理记录':'Recent cleanup runs',
'数据管理':'Data management',
'站点信息':'Site information',
'站点名称':'Site name',
'站点副标题':'Site subtitle',
'邮件配置':'Email configuration',
'SMTP 邮件配置':'SMTP email configuration',
'OAuth 配置':'OAuth configuration',
'LDAP 配置':'LDAP configuration',
'隐私政策':'Privacy policy',
'注册隐私政策确认':'Registration privacy confirmation',
'隐私政策版本':'Privacy policy version',
'隐私政策格式':'Privacy policy format',
'隐私政策内容':'Privacy policy content',
'基础信息':'Basic information',
'安全设置':'Security settings',
'账户信息':'Account information',
'个人资料':'Profile',
'修改密码':'Change password',
'当前密码':'Current password',
'新密码':'New password',
'确认密码':'Confirm password',
'两次输入的密码不一致':'The two passwords do not match',
'邮箱':'Email',
'用户名':'Username',
'密码':'Password',
'至少 8 个字符,且需包含字母和数字':'At least 8 characters with letters and numbers',
'至少 8 个字符,且需包含大写字母、小写字母、数字和特殊字符':'At least 8 characters with uppercase, lowercase, numbers, and symbols',
'至少 8 位,含字母和数字':'At least 8 characters with letters and numbers',
'至少 8 位,含大小写字母、数字和特殊字符':'At least 8 characters with uppercase, lowercase, numbers, and symbols',
'包含字母':'letters',
'包含数字':'numbers',
'包含大写字母':'uppercase letters',
'包含小写字母':'lowercase letters',
'包含特殊字符':'symbols',
'角色':'Role',
'分组':'Group',
'权限':'Permissions',
'限额':'Quota',
'用量':'Usage',
'统计':'Statistics',
'指标':'Metric',
'请求记录':'Request records',
'使用记录':'Usage records',
'使用统计':'Usage statistics',
'性能分析':'Performance analysis',
'成本分析':'Cost analysis',
'缓存监控':'Cache monitoring',
'获取缓存统计失败':'Failed to load cache statistics',
'获取缓存列表失败':'Failed to load cache list',
'未找到匹配的缓存记录':'No matching cache records found',
'缓存记录信息不完整,无法删除':'Cache record information is incomplete and cannot be deleted',
'健康监控':'Health monitor',
'异步任务':'Async tasks',
'获取任务列表失败':'Failed to load task list',
'获取任务详情失败':'Failed to load task details',
'刷新失败':'Refresh failed',
'无法打开使用记录':'Unable to open usage record',
'该任务没有关联的请求ID':'This task has no linked request ID',
'获取任务信息失败':'Failed to load task information',
'确定要取消这个任务吗?':'Cancel this task?',
'任务已取消':'Task canceled',
'取消任务失败':'Failed to cancel task',
'审计日志':'Audit logs',
'公告管理':'Announcements',
'公告':'Announcement',
'公告标题':'Announcement title',
'内容':'Content',
'标题':'Title',
'描述':'Description',
'版本':'Version',
'版本:':'Version:',
'版本信息':'Version information',
'版本信息:':'Version information: ',
'当前版本':'Current version',
'最新版本':'Latest version',
'历史版本':'Release history',
'版本详情':'Version details',
'检查中':'Checking',
'有新版本':'New version available',
'检查失败':'Check failed',
'已是最新':'Up to date',
'检查更新失败':'Update check failed',
'检查更新失败:':'Update check failed: ',
'服务重启中...':'Service is restarting...',
'服务重启中,请稍候...':'Service is restarting. Please wait...',
'正在重启服务':'Restarting service',
'服务正在切换版本并重启,请稍候...':'The service is switching versions and restarting. Please wait...',
'重启中':'Restarting',
'重启中...':'Restarting...',
'回滚中':'Rolling back',
'回滚中...':'Rolling back...',
'更新中':'Updating',
'下载中...':'Downloading...',
'正在下载更新包...':'Downloading update package...',
'重新检查':'Check again',
'立即重启':'Restart now',
'立即更新':'Update now',
'查看发布':'View release',
'当前':'Current',
'新':'New',
'不可在线更新':'Cannot update online',
'当前运行版本':'Current running version',
'可升级版本':'Upgradeable version',
'这个版本没有附带更新说明。':'This version does not include release notes.',
'发布于':'Published at',
'查看该版本的发布说明':'View release notes for this version',
'更新内容':'Release notes',
'更新包已下载,点击"立即重启"完成安装':'The update package has been downloaded. Click "Restart now" to finish installation.',
'在 docker-compose.yml 所在目录执行':'Run in the directory containing docker-compose.yml',
'稍后提醒':'Remind me later',
'回滚上一版本':'Roll back to previous version',
'新版本已发布,建议更新以获得最新功能和安全修复':'A new version is available. Update to get the latest features and security fixes.',
'切换到此版本':'Switch to this version',
'更新到此版本':'Update to this version',
'当前正在运行这个版本。':'This version is currently running.',
'将这个版本作为在线更新目标。':'Use this version as the online update target.',
'将切换到这个历史版本。':'Switch to this historical version.',
'获取版本列表失败':'Failed to load version list',
'当前版本暂不支持在线更新':'This version does not support online updates',
'加载中...':'Loading...',
'后台处理中':'Processing in background',
'重置筛选':'Reset filters',
'清除筛选':'Clear filters',
'本页全选':'Select page',
'取消本页全选':'Deselect page',
'清空选择':'Clear selection',
'批量操作':'Batch actions',
'新增用户':'Add user',
'新增提供商':'Add provider',
'批量处理提供商':'Batch process providers',
'编辑用户':'Edit user',
'删除用户':'Delete user',
'启用用户':'Enable user',
'禁用用户':'Disable user',
'编辑提供商':'Edit provider',
'添加提供商':'Add provider',
'更新提供商配置。API 端点和密钥需在详情页面单独管理。':'Update provider configuration. API endpoints and keys are managed separately on the details page.',
'创建新的提供商配置。创建后可以为其添加 API 端点和密钥。':'Create a new provider configuration. You can add API endpoints and keys after creation.',
'删除任务已提交,后台处理中':'Delete task submitted and processing in the background',
'提供商已删除':'Provider deleted',
'提供商已启用':'Provider enabled',
'提供商已停用':'Provider disabled',
'更新备注失败':'Failed to update notes',
'加载提供商列表失败':'Failed to load provider list',
'刷新提供商数据失败':'Failed to refresh provider data',
'刷新提供商状态失败':'Failed to refresh provider status',
'删除提供商失败':'Failed to delete provider',
'点击启用':'Click to enable',
'点击停用':'Click to disable',
'点击复制':'Click to copy',
'分配模式':'Distribution mode',
'策略调度':'Strategy scheduling',
'号池调度':'Pool scheduling',
'号池代理均分':'Pool proxy distribution',
'提供商代理节点':'Provider proxy node',
'清除':'Clear',
'选择号池':'Select pool',
'选择代理节点':'Select proxy node',
'生成预览':'Generate preview',
'刷新预览':'Refresh preview',
'均衡补齐':'Balance fill',
'强制重排':'Force rebalance',
'待写入':'Pending write',
'单节点上限':'Per-node limit',
'号池账号':'Pool accounts',
'当前不可用':'Currently unavailable',
'上移':'Move up',
'下移':'Move down',
'缓存亲和':'Cache affinity',
'LRU 轮转':'LRU rotation',
'单号优先':'Single-account first',
'负载均衡':'Load balancing',
'额度平均':'Quota balance',
'额度刷新优先':'Quota refresh first',
'优先级优先':'Priority first',
'健康优先':'Health first',
'延迟优先':'Latency first',
'成本优先':'Cost first',
'请求体记录':'Request body logging',
'调度模式':'Scheduling mode',
'访问限制':'Access limits',
'请求体清理':'Request body cleanup',
'格式转换':'Format conversion',
'流式/非流式':'Streaming/non-streaming',
'请求头/体编辑':'Header/body editing',
'正则映射':'Regex mapping',
'余额监控':'Balance monitor',
'配置导入/出':'Config import/export',
'锁定用户密钥':'Lock user key',
'访问令牌':'Access tokens',
'OAuth登录':'OAuth sign-in',
'LDAP认证':'LDAP auth',
'常见问题':'FAQ',
'快速开始':'Quick start',
'部署':'Deployment',
'配置流程':'Configuration flow',
'反向代理':'Reverse proxy',
'代理配置':'Proxy config',
'多级代理':'Multi-level proxy',
'架构说明':'Architecture',
'相关概念':'Concepts',
'关键策略':'Key strategies',
'高级功能':'Advanced features',
'创建统一模型':'Create unified model',
'添加端点':'Add endpoint',
'添加密钥':'Add key',
'添加账号':'Add account',
'授权':'Authorization',
'获取授权':'Authorize',
'浏览器登录':'Browser sign-in',
'设备授权':'Device authorization',
'导入授权':'Import authorization',
'导入账号':'Import accounts',
'授权已过期':'Authorization expired',
'授权失败':'Authorization failed',
'请重试':'Please try again',
'重新开始':'Start over',
'正在准备登录...':'Preparing sign-in...',
'正在准备授权...':'Preparing authorization...',
'正在注册设备...':'Registering device...',
'前往登录':'Go to sign-in',
'前往授权':'Go to authorization',
'打开':'Open',
'开始':'Start',
'粘贴回调 URL':'Paste callback URL',
'粘贴回调 URL 或 token':'Paste callback URL or token',
'粘贴包含 token=...&state=... 的回调 URL;session token/apiKey 也可直接粘贴,普通 token 请用导入授权':'Paste a callback URL containing token=...&state=...; session token/apiKey can also be pasted directly. Use import authorization for regular tokens.',
'在浏览器中完成授权':'Complete authorization in the browser',
'授权完成后此页面将自动更新':'This page updates automatically after authorization is complete',
'会话剩余':'Session remaining',
'剩余':'Remaining',
'MFA 验证码':'MFA code',
'复制验证码':'Copy verification code',
'打开授权页面':'Open authorization page',
'授权后复制浏览器地址栏的 localhost 回调 URL。':'After authorization, copy the localhost callback URL from the browser address bar.',
'使用个人 AWS Builder ID 进行设备授权,无需额外配置。':'Use a personal AWS Builder ID for device authorization. No additional configuration is required.',
'输入或选择 Region':'Enter or select Region',
'无匹配结果,回车使用自定义值':'No matches. Press Enter to use a custom value.',
'plan_type / pool_tier 会作为账号套餐与能力特征保存,不是路由池选择。':'plan_type / pool_tier are saved as account plan and capability traits, not as routing pool selection.',
'或手动粘贴 Grok Token':'Or manually paste a Grok token',
'或手动粘贴 Token':'Or manually paste a token',
'或选择 Grok Token 文件导入':'Or choose a Grok token file to import',
'或选择 JSON 文件导入':'Or choose a JSON file to import',
'导入中...':'Importing...',
'拖入导入文件或点击选择':'Drop import files or click to choose',
'或手动粘贴 JSON':'Or paste JSON manually',
'读取失败':'Failed to read',
'仅支持选择 1 个文件,已读取第一个文件':'Only one file is supported. The first file was read.',
'仅支持 .json 或 .txt 文件':'Only .json or .txt files are supported',
'文件读取失败':'Failed to read file',
'登录并导入':'Sign in and import',
'任务已提交':'Task submitted',
'正在导入':'Importing',
'导入完成':'Import complete',
'导入失败':'Import failed',
'批量导入失败':'Batch import failed',
'批量导入完成':'Batch import complete',
'批量导入成功':'Batch import succeeded',
'获取文件列表失败':'Failed to load file list',
'获取统计失败':'Failed to load statistics',
'无法获取黑名单统计':'Unable to load blacklist statistics',
'无法获取黑名单列表':'Unable to load blacklist list',
'无法获取黑名单数据':'Unable to load blacklist data',
'无法获取白名单列表':'Unable to load whitelist list',
'无法添加 IP 到黑名单':'Unable to add IP to blacklist',
'无法添加 IP 到白名单':'Unable to add IP to whitelist',
'删除成功':'Deleted successfully',
'确定要清理所有过期的文件映射吗?':'Clean up all expired file mappings?',
'清理完成':'Cleanup complete',
'清理失败':'Cleanup failed',
'请输入邮箱和密码':'Enter email and password',
'格式错误':'Format error',
'请输入凭据数据':'Enter credential data',
'无法解析输入内容,请检查格式':'Unable to parse the input. Check the format.',
'初始化授权失败':'Failed to initialize authorization',
'完成授权失败':'Failed to complete authorization',
'发起设备授权失败':'Failed to start device authorization',
'设备码已过期':'Device code expired',
'邮箱密码':'Email and password',
'Windsurf 密码':'Windsurf password',
'名称(可选)':'Name (optional)',
'未填写时使用邮箱':'Uses email if left empty',
'最近错误':'Recent errors',
'验证中...':'Verifying...',
'验证':'Verify',
'前往「模块管理 · 代理节点」添加':'Go to "Modules · Proxy nodes" to add one',
'未设置,依次回退到提供商代理 → 系统代理':'Not set; falls back to provider proxy, then system proxy',
'添加 API 端点':'Add API endpoint',
'编辑密钥':'Edit key',
'删除密钥':'Delete key',
'修改 API 密钥配置':'Modify API key configuration',
'为提供商添加新的 API 密钥':'Add a new API key for the provider',
'留空表示不修改,或粘贴完整的 Service Account JSON':'Leave empty to keep unchanged, or paste the full Service Account JSON',
'粘贴完整的 Service Account JSON':'Paste the full Service Account JSON',
'留空表示不修改;JSON 格式,包含 project_id、private_key 等字段':'Leave empty to keep unchanged. JSON format, including project_id, private_key, and related fields.',
'JSON 格式,包含 project_id、private_key 等字段':'JSON format, including project_id, private_key, and related fields.',
'可选的备注信息':'Optional notes',
'支持的 API 格式 *':'Supported API formats *',
'API 格式说明':'API format help',
'选择此密钥支持的 API 格式及对应认证方式。OpenAI 格式固定使用 Bearer Token;Claude / Gemini 格式可选 API Key 或 Bearer Token(如 Claude Code 应使用 Bearer Token)。':'Select the API formats this key supports and their auth methods. OpenAI format always uses Bearer Token; Claude / Gemini formats can use API Key or Bearer Token. Claude Code should use Bearer Token.',
'允许客户端认证方式不一致时使用':'Allow when the client auth method differs',
'越小越优先':'Lower values have higher priority',
'RPM 限制':'RPM limit',
'自适应':'Adaptive',
'留空自适应':'Leave empty for adaptive',
'留空或 0 表示不限制':'Leave empty or enter 0 for no limit',
'缓存 TTL':'Cache TTL',
'分钟,0禁用':'Minutes, 0 disables',
'熔断探测':'Circuit probe',
'分钟,0-32':'Minutes, 0-32',
'自动获取上游可用模型':'Auto-fetch upstream models',
'定时更新上游模型, 配合模型映射使用':'Periodically update upstream models for use with model mapping',
'包含规则':'Include rules',
'排除规则':'Exclude rules',
'gpt-*, claude-*, 留空包含全部':'gpt-*, claude-*, leave empty to include all',
'逗号分隔,支持 * ? 通配符,不区分大小写':'Comma-separated. Supports * and ? wildcards, case-insensitive.',
'清除异常标记(确认账号已完成验证后使用)':'Clear issue marker after confirming the account has completed verification',
'仅通过 Access Token 导入,无法自动刷新,到期后需要重新导入':'Imported with Access Token only. It cannot refresh automatically and must be re-imported after expiration.',
'临时':'Temporary',
'该账号尚未完成 Gemini Code Assist 激活,无法获取配额和使用模型':'This account has not completed Gemini Code Assist activation, so quota and model usage cannot be fetched.',
'固定流式(点击切换为固定非流)':'Force streaming (click to switch to force non-streaming)',
'固定非流(点击切换为跟随请求)':'Force non-streaming (click to follow request)',
'跟随请求(点击切换为固定流式)':'Follow request (click to force streaming)',
'固定流式':'force streaming',
'固定非流':'force non-streaming',
'跟随请求':'follow request',
'配额详情':'Quota details',
'账号配额':'Account quota',
'模型配额':'Model quota',
'周限额':'Weekly limit',
'5H限额':'5H limit',
'Spark 周':'Spark weekly',
'Spark 5H':'Spark 5H',
'后重置':'until reset',
'已重置':'Reset',
'账户访问被禁止':'Account access forbidden',
'重置时间未知':'Reset time unknown',
'账户已封禁':'Account banned',
'使用额度':'Usage quota',
'账号不可用':'Account unavailable',
'日额度':'Daily quota',
'周额度':'Weekly quota',
'剩余额度':'Remaining quota',
'点击编辑优先级':'Edit priority',
'点击编辑倍率':'Edit multiplier',
'同步失败':'Sync failed',
'自动同步':'Auto sync',
'确认清除':'Confirm clear',
'清除账号异常标记':'Clear account issue marker',
'已清除 OAuth 异常标记':'OAuth issue marker cleared',
'密钥已删除':'Key deleted',
'Key已完全恢复':'Key fully recovered',
'已清除提供商代理':'Provider proxy cleared',
'已清除账号代理,将使用提供商级别代理':'Account proxy cleared; provider-level proxy will be used',
'优先级已更新':'Priority updated',
'倍率已更新':'Multiplier updated',
'请输入有效的倍率值':'Enter a valid multiplier',
'倍率必须在 0.01 到 100 之间':'Multiplier must be between 0.01 and 100',
'切换格式转换失败':'Failed to toggle format conversion',
'后台刷新配额失败':'Failed to refresh quota in the background',
'没有获取到配额信息(请检查账号是否已授权、project_id 是否存在)':'No quota information was returned. Check whether the account is authorized and project_id exists.',
'Provider 不存在':'Provider does not exist',
'未知节点':'Unknown node',
'冷却中':'Cooling down',
'速率受限':'Rate limited',
'额度耗尽':'Quota exhausted',
'刚刚更新':'Updated just now',
'上次同步':'Last sync',
'探测中':'Probing',
'探测间隔':'Probe interval',
'熔断器已打开':'Circuit breaker is open',
'连续失败':'consecutive failures',
'点击恢复按钮可重置熔断器':'Use the recover button to reset the circuit breaker',
'重置熔断器并恢复健康状态':'Reset circuit breaker and recover health',
'自动获取模型已启用':'Auto model fetch is enabled',
'请先添加端点,然后再添加密钥':'Add an endpoint before adding keys',
'提示':'Notice',
'模型权限':'Model permissions',
'关联模型':'Link models',
'模型映射':'Model mapping',
'优先级管理':'Priority management',
'拖拽调整顺序,点击序号可编辑(相同数字为同级),保存后自动切换对应的调度策略':'Drag to reorder. Click a number to edit it (same number means same priority). Saving automatically switches to the matching scheduling strategy.',
'优先级':'Priority',
'Key 优先':'Key first',
'暂无提供商':'No providers',
'暂无 API Key':'No API key',
'点击编辑优先级,相同数字为同级':'Edit priority. Same number means same priority.',
'Provider 停用':'Provider disabled',
'当前模式:':'Current mode:',
'优先使用已缓存的Provider,利用Prompt Cache':'Prefer cached providers to use Prompt Cache',
'同优先级内随机轮换,不考虑缓存':'Randomly rotate within the same priority, ignoring cache',
'可选,make dev 会自动启动':'Optional; make dev starts this automatically',
'首次本地开发':'First local development setup',
'本地开发':'Local development',
'配置环境变量':'Configure environment variables',
'部署 / 更新':'Deploy / update',
'升级前备份':'Backup before upgrade',
'复制到目标机器执行':'Copy and run on the target machine',
'一键安装并配置 CLI':'One-click install and configure CLI',
'打开通知服务':'Open notification service',
'占位符说明':'Placeholder notes',
'向模型说明占位符含义':'Explain placeholder meaning to the model',
'敏感信息保护':'Sensitive information protection',
'IP 限制':'IP restrictions',
'IP 地址':'IP address',
'IP地址':'IP address',
'事件类型':'Event type',
'客户端':'Client',
'服务端':'Server',
'上游':'Upstream',
'下游':'Downstream',
'请求头':'Request headers',
'响应头':'Response headers',
'请求体':'Request body',
'响应体':'Response body',
'复制请求体':'Copy request body',
'复制响应体':'Copy response body',
'展开全部':'Expand all',
'收缩全部':'Collapse all',
'切换到对话视图':'Switch to conversation view',
'切换到 JSON 视图':'Switch to JSON view',
'切到 JSON 视图':'Switch to JSON view',
'切回表单视图':'Switch back to form view',
'排序':'Sort',
'排名':'Rank',
'平均响应':'Average response',
'失败率':'Failure rate',
'峰值并发':'Peak concurrency',
'慢请求':'Slow requests',
'延迟':'Latency',
'最后心跳':'Last heartbeat',
'分钟':'minutes',
'小时':'hours',
'天':'days',
'周':'Week',
'少':'Less',
'多':'More',
'周日':'Sun',
'周二':'Tue',
'周四':'Thu',
'周六':'Sat',
'一':'Mon',
'三':'Wed',
'五':'Fri',
'低':'Low',
'中':'Medium',
'高':'High',
'弱密码':'Weak password',
'中等密码':'Medium password',
'强密码':'Strong password',
'密码策略':'Password policy',
'开放用户注册':'Open user registration',
'自动删除过期 Key':'Auto-delete expired keys',
'全局格式转换':'Global format conversion',
'注册人机验证':'Registration human verification',
'清空':'Clear',
'允许的 Hostname':'Allowed hostnames',
'邀请返利':'Referral rewards',
'返利方式':'Reward method',
'按充值比例':'By top-up ratio',
'按邀请人头':'By referred users',
'两者同时启用':'Enable both',
'充值返利比例 (%)':'Top-up reward ratio (%)',
'人头返利金额 (美元)':'Per-user reward amount (USD)',
'人头返利触发时机':'Per-user reward trigger',
'注册成功':'Registration complete',
'邮箱验证完成':'Email verification complete',
'首笔真实支付完成':'First real payment complete',
'启用自动清理':'Enable automatic cleanup',
'立即清理':'Clean now',
'清理中…':'Cleaning...',
'详细记录保留天数':'Detailed record retention days',
'压缩记录保留天数':'Compressed record retention days',
'请求头保留天数':'Request header retention days',
'请求记录保存天数':'Request record retention days',
'每批次清理记录数':'Cleanup batch size',
'审计日志保留天数':'Audit log retention days',
'候选记录保留天数':'Candidate record retention days',
'候选记录清理批次':'Candidate cleanup batch',
'代理 1m 指标保留天数':'Proxy 1m metric retention days',
'代理 1h 指标保留天数':'Proxy 1h metric retention days',
'代理指标清理批次':'Proxy metric cleanup batch',
'详细日志阶段':'Detailed log stage',
'压缩日志阶段':'Compressed log stage',
'统计阶段':'Statistics stage',
'归档删除':'Archive deletion',
'候选记录':'Candidate records',
'代理指标':'Proxy metrics',
'刷新健康状态':'Refresh health status',
'刷新上游模型':'Refresh upstream models',
'从提供商获取模型':'Fetch models from provider',
'上游模型':'Upstream models',
'关联提供商':'Linked providers',
'删除映射':'Delete mapping',
'删除映射组':'Delete mapping group',
'价格 ($/M)':'Price ($/M)',
'按次计费':'Per-request billing',
'按次:':'Per request:',
'/次':'/request',
'单价 ($/秒)':'Unit price ($/second)',
'分辨率':'Resolution',
'缓存读取':'Cache read',
'缓存创建':'Cache creation',
'1h 缓存':'1h cache',
'上限像素':'Max pixels',
'创建新 API Key':'Create new API key',
'创建于':'Created at',
'无限额度':'Unlimited quota',
'并发限制':'Concurrency limit',
'并发请求上限':'Concurrent request limit',
'余额:':'Balance:',
'套餐中心':'Billing center',
'购买每日额度或会员权益':'Purchase daily quota or membership benefits',
'当前权益':'Current benefits',
'只展示仍在有效期内的套餐权益':'Only active plan benefits are shown',
'可购买套餐':'Available plans',
'支付成功后由回调自动发放权益':'Benefits are issued automatically by callback after successful payment',
'暂无可购买套餐':'No plans available for purchase',
'管理员上架套餐后会显示在这里':'Plans will appear here after an administrator publishes them',
'套餐 Stripe 支付':'Plan Stripe payment',
'完成支付后,套餐权益会由 Stripe Webhook 自动发放。':'After payment, plan benefits are issued automatically by the Stripe webhook.',
'支付套餐':'Pay for plan',
'配置每日额度、会员权益和混合套餐':'Configure daily quota, membership benefits, and mixed plans',
'混合套餐':'Mixed plan',
'系统公告':'System announcements',
'统计周期':'Statistics period',
'每日模型成本':'Daily model cost',
'提供商成本分布':'Provider cost distribution',
'日期':'Date',
'使用模型':'Models used',
'使用提供商':'Providers used',
'我的 API Keys':'My API keys',
'费用(USD)':'Cost (USD)',
'调用次数':'Call count',
'总任务数':'Total tasks',
'已注册':'Registered',
'任务 Key...':'Task key...',
'总文件数':'Total files',
'有效文件':'Active files',
'支持的 Key':'Supported keys',
'上传文件':'Upload files',
'暂无可用的 Key,请先配置具有「Gemini 文件 API」能力的 Key':'No available keys. Configure a key with Gemini Files API capability first.',
'选择要上传到的 Key(可多选):':'Select keys to upload to (multiple allowed):',
'正在上传到':'Uploading to',
'个 Key...':'keys...',
'拖拽文件到此处,或':'Drag files here, or',
'点击选择':'click to select',
'请先选择至少一个 Key':'Select at least one key first',
'支持视频、图片、音频、文档等,最大 2GB,有效期 48 小时':'Supports video, images, audio, documents, and more. Max 2 GB, valid for 48 hours.',
'文件缓存':'File cache',
'文件类型分布':'File type distribution',
'文件映射':'File mappings',
'搜索文件名...':'Search file name...',
'包含过期':'Include expired',
'清理过期':'Clean expired',
'暂无文件映射':'No file mappings',
'用户通过 Gemini Files API 上传文件后会在此显示':'Files uploaded through the Gemini Files API appear here.',
'我的邀请':'My referrals',
'分享邀请码后,符合规则的返利会进入赠款余额':'After sharing your invite code, eligible rewards are credited to your gift balance.',
'邀请数据暂不可用':'Referral data is currently unavailable',
'加载邀请数据失败':'Failed to load referral data',
'查看邀请关系、返利记录和失败返利处理状态':'View referral relationships, reward records, and failed reward handling status',
'邀请关系':'Referral relationships',
'邀请人':'Inviter',
'被邀请人':'Invitee',
'邀请码':'Invite code',
'邀请链接':'Invite link',
'绑定时间':'Bound at',
'首付状态':'First payment status',
'已首付':'First payment completed',
'未首付':'No first payment',
'返利记录':'Reward records',
'订单号':'Order number',
'返利类型':'Reward type',
'比例返利':'Percentage reward',
'人头返利':'Per-user reward',
'待发':'Pending issue',
'已发':'Issued',
'已作废':'Voided',
'已冲回':'Reversed',
'来源订单':'Source order',
'冲回':'Reversal',
'暂无邀请关系':'No referral relationships',
'总邀请':'Total referrals',
'有效邀请':'Effective referrals',
'已发返利':'Issued rewards',
'待发返利':'Pending rewards',
'已冲回返利':'Reversed rewards',
'统一管理资金流水、退款审批、充值订单与支付回调':'Manage wallet ledger, refund approvals, top-up orders, and payment callbacks in one place',
'资金流水':'Wallet ledger',
'退款审批':'Refund approvals',
'回调日志':'Callback logs',
'一级分类':'Primary category',
'二级分类':'Secondary category',
'全部二级':'All secondary categories',
'归属':'Owner',
'归属类型':'Owner type',
'独立密钥钱包':'Standalone key wallet',
'暂无资金流水':'No wallet ledger entries',
'当前筛选条件下没有资金动作记录':'No wallet transactions match the current filters',
'支付配置':'Payment configuration',
'配置易支付、支付宝官方、微信支付官方和 Stripe':'Configure EPay, official Alipay, official WeChat Pay, and Stripe',
'易支付':'EPay',
'支付宝官方':'Official Alipay',
'微信支付官方':'Official WeChat Pay',
'测试配置':'Test configuration',
'网关状态':'Gateway status',
'退款能力':'Refund capability',
'用户退款':'User refunds',
'密钥状态':'Key status',
'汇率':'Exchange rate',
'查看系统所有操作记录':'View all system operation records',
'暂无审计记录':'No audit records',
'用户统计':'User statistics',
'查看用户排行榜与使用趋势':'View user leaderboard and usage trends',
'对比用户(可选)':'Compare user (optional)',
'不对比':'No comparison',
'用户排行榜':'User leaderboard',
'用户摘要':'User summary',
'错误率':'Error rate',
'用户使用趋势':'User usage trend',
'用户对比趋势':'User comparison trend',
'收起用量分析':'Collapse usage analysis',
'展开用量分析':'Expand usage analysis',
'总体活跃天数':'Overall active days',
'我的活跃天数':'My active days',
'请求间隔时间线':'Request interval timeline',
'我的请求间隔':'My request interval',
'按模型分析':'By-model analysis',
'按提供商分析':'By-provider analysis',
'按 API 格式分析':'By API format analysis',
'输出 cache':'Output cache',
'cache命中率':'Cache hit rate',
'输出':'Output',
'效率':'Efficiency',
'统一查看端点、模型健康状态,先从概览判断风险,再进入具体视角排查关联健康。':'View endpoint and model health in one place. Use the overview to identify risk, then drill into each perspective.',
'统一查看端点、模型、提供商健康状态,先从概览判断风险,再进入具体视角排查关联健康。':'View endpoint, model, and provider health in one place. Use the overview to identify risk, then drill into each perspective.',
'总体状态':'Overall status',
'项健康对象':'health objects',
'个视角已加载':'views loaded',
'异常端点':'Unhealthy endpoints',
'异常模型':'Unhealthy models',
'异常提供商':'Unhealthy providers',
'请求总量':'Total requests',
'当前回溯窗口内参与健康统计的请求':'Requests included in health statistics for the current lookback window',
'综合概览':'Overview',
'点击视角卡片快速跳转到对应健康列表':'Click a perspective card to jump to the matching health list',
'端点视角':'Endpoint perspective',
'按 API 入口定位入口层健康':'Locate ingress-layer health by API entry',
'模型视角':'Model perspective',
'按模型聚合查看跨提供商健康':'Aggregate by model to view cross-provider health',
'提供商视角':'Provider perspective',
'按提供商定位供应商侧波动':'Locate provider-side volatility by provider',
'总数':'Total',
'异常':'Unhealthy',
'波动':'Warning',
'部分暂无请求':'Partly no requests',
'正常':'Normal',
'端点健康监控':'Endpoint health monitor',
'模型健康监控':'Model health monitor',
'提供商健康监控':'Provider health monitor',
'IP 安全':'IP security',
'黑名单 IP 数量':'Blacklisted IP count',
'白名单 IP 数量':'Whitelisted IP count',
'IP 黑名单':'IP blacklist',
'IP 白名单':'IP whitelist',
'管理被禁止访问的 IP 地址':'Manage blocked IP addresses',
'被禁止访问的 IP 地址':'Blocked IP addresses',
'可信任的 IP 地址 (支持 CIDR 格式)':'Trusted IP addresses (CIDR supported)',
'添加黑名单':'Add blacklist entry',
'添加白名单':'Add whitelist entry',
'暂无黑名单 IP':'No blacklisted IPs',
'暂无白名单 IP':'No whitelisted IPs',
'移除':'Remove',
'运维总览':'Operations overview',
'统一查看流量、吞吐、延迟、错误、上游健康、缓存与审计风险':'View traffic, throughput, latency, errors, upstream health, cache, and audit risks in one place',
'自动刷新 10s':'Auto refresh 10s',
'刷新运维总览':'Refresh operations overview',
'流量与吞吐':'Traffic and throughput',
'请求、Token 与费用趋势,按当前时间窗口聚合':'Requests, tokens, and cost trends aggregated by the current time window',
'实时并发':'Realtime concurrency',
'网关、全局锁与代理通道':'Gateway, global locks, and proxy channels',
'本机处理中':'Local in-flight',
'本机可接入':'Local available',
'全局处理中':'Global in-flight',
'全局可接入':'Global available',
'代理活跃流':'Active proxy streams',
'代理连接':'Proxy connections',
'队列利用率':'Queue utilization',
'选择压力':'Selection pressure',
'延迟与首字':'Latency and first byte',
'调度与策略':'Scheduling and strategy',
'了解 Aether 内部的日志记录、智能调度模式以及服务限制策略。':'Learn about request logs, intelligent scheduling modes, and service limit policies inside Aether.',
'在系统设置中,您可以修改请求体记录详情等级,以便于调试和审计。':'In system settings, you can change the request-body logging detail level for debugging and auditing.',
'完整的请求体与响应体 (Payloads)':'Full request and response bodies (payloads)',
'请求体压缩清理':'Request body compression cleanup',
'为节省数据库空间与提高查询性能,系统提供自动请求体清理与压缩策略,将历史请求详情定期冷热分离并清理。':'To save database space and improve query performance, the system provides automatic request-body cleanup and compression policies that periodically separate and clean historical request details.',
'平台内置多个定时任务,用于模型列表同步、缓存清理、余额监控及统计数据聚合等周期性操作。':'The platform includes scheduled tasks for model-list sync, cache cleanup, balance monitoring, statistics aggregation, and other recurring operations.',
'文档核心':'Documentation core',
'深入理解 Aether 运行时的核心模块和层级结构。':'Understand the core modules and hierarchy of the Aether runtime.',
'1. 左侧模型选择、搜索区域':'1. Left model selection and search area',
'模型来源:opencode 维护的 https://models.dev':'Model source: https://models.dev maintained by opencode',
'仅显示几个官方模型提供商,可以通过搜索获取更多模型。':'Only a few official model providers are shown; search to find more models.',
'手动添加模型 或 选择模型后自动填写。':'Add a model manually or auto-fill after selecting one.',
'模型偏好:标定这个模型是否支持这些能力,一般情况下可不选。':'Model preferences: mark whether this model supports these capabilities. Usually optional.',
'价格配置:':'Pricing configuration:',
'计费方式:Token价格 + 按次价格 + 视频计费 = 最终计费':'Billing method: token price + per-request price + video billing = final billing',
'价格阶梯:以总Token数落在哪个区间为准,并非按阶梯溢出补全式计费':'Price tiers use the total token range, not tiered overflow pricing.',
'高级使用':'Advanced usage',
'解锁 Aether 的自定义请求修改、智能转换机制以及进阶配置。':'Unlock custom request modification, intelligent conversion, and advanced configuration in Aether.',
'格式转换机制允许非原生接口的请求通过 Gateway 转为下游需要的格式,这一转换发生在多个层级:':'Format conversion allows non-native API requests to be converted by the gateway into the format required downstream. This happens at several levels:',
'全局格式转换:':'Global format conversion:',
'在系统层面全局开启或关闭的默认转换规则。':'Default conversion rules enabled or disabled globally at the system level.',
'提供商级转换:':'Provider-level conversion:',
'针对某个特定提供商的所有请求进行特定的格式转换配置。':'Configure format conversion for all requests to a specific provider.',
'端点级转换:':'Endpoint-level conversion:',
'针对某个具体端点的细粒度转换支持。':'Fine-grained conversion support for a specific endpoint.',
'部分提供商在流式或非流式表现上可能存在差异,此功能可强制在请求上游时使用指定的流式/非流式格式(并在前端按用户请求还原)。':'Some providers behave differently for streaming and non-streaming. This feature can force a specified upstream streaming mode and restore the response according to the user request.',
'答疑解惑':'Questions and troubleshooting',
'在使用 Aether 过程中遇到的常见问题与排错指南。':'Common questions and troubleshooting guidance for using Aether.',
'1. 为什么发生错误没有进行故障转移?':'1. Why did failover not happen after an error?',
'故障转移机制(Failover)依赖于配置的重试策略和上游返回的错误码类型。通常只有在遇到 429 (Too Many Requests) 或 5xx (Server Errors) 时,并且在”最大重试次数”允许的范围内,才会触发故障转移。对于 400 (Bad Request) 或 401 (Unauthorized) 这种客户端确切错误,为避免持续无效重试,系统可能直接中断请求并返回错误。同时也要检查调度模式是否支持故障转移(例如固定顺序模式或缓存亲和性强绑定时可能会影响行为)。':'Failover depends on the configured retry policy and the upstream error type. It usually triggers only for 429 or 5xx responses within the max retry limit. For exact client errors such as 400 or 401, the system may stop immediately to avoid invalid retries. Also check whether the scheduling mode supports failover, because fixed order or strong cache affinity can affect behavior.',
'2. 如何排查请求不通的问题?':'2. How do I troubleshoot unreachable requests?',
'建议首先检查【系统设置】中的请求体记录等级是否设为 `Full`,以便抓取完整的上下行数据。然后检查对应的【提供商端点】的 Base URL 和 API 格式是否正确匹配。如果开启了带来,排查【代理配置】优先级。':'First check whether request-body logging in System settings is set to `Full` so complete upstream and downstream data can be captured. Then verify the provider endpoint Base URL and API format. If proxying is enabled, check proxy configuration priority.',
['最近错误、熔断事件和可疑活动入口','Recent errors, circuit breaker events, and suspicious activity entry points'],
['当前没有近期错误','No recent errors'],
['运维入口','Operations entry points'],
['常用排障视角','Common troubleshooting views'],
['计费参数','Billing parameters'],
['用户充值按美元金额下单,实际收款金额按这里的币种、汇率和通道手续费率计算','User top-ups are ordered in USD. The actual received amount is calculated from the currency, exchange rate, and channel fee rate here.'],
['通道值会传给易支付 type 字段','The channel value is passed to the EPay type field'],
['通道值决定用户侧展示和后端创建订单模式','The channel value controls user-facing display and the backend order creation mode'],
['添加通道','Add channel'],
['通道值','Channel value'],
['显示名称','Display name'],
['手续费率 (%)','Fee rate (%)'],
['最后更新:','Last updated:'],
['密钥留空会保留原密钥;回调地址留空时后端会使用当前 API 访问地址','Leave the key empty to keep the current key. If the callback URL is empty, the backend uses the current API access URL.'],
['桌面优先扫码单,失败再走收银台;移动优先手机网站支付。','Desktop prioritizes QR-code orders and falls back to checkout; mobile prioritizes mobile web payment.'],
['当面付 / 扫码支付','In-person / QR-code payment'],
['开通:需开通当面付或扫码支付能力。','Enablement: in-person or QR-code payment capability is required.'],
['前台直接渲染二维码。','and render the QR code directly in the frontend.'],
['降级:接口不可用或返回失败时,自动降级到电脑网站支付。','Fallback: when the API is unavailable or fails, automatically fall back to desktop web payment.'],
['电脑网站支付','Desktop web payment'],
['开通:需开通电脑网站支付。','Enablement: desktop web payment is required.'],
['调用:桌面端当面付不可用时调用','Invocation: when desktop in-person payment is unavailable, call'],
['并继续以返回链接渲染成二维码。','and continue rendering the returned link as a QR code.'],
['降级:同时保留打开收银台入口,用户可手动重新拉起支付页。','Fallback: keep the checkout entry so users can reopen the payment page manually.'],
['手机网站支付','Mobile web payment'],
['开通:需开通手机网站支付。','Enablement: mobile web payment is required.'],
['调用:移动端优先调用','Invocation: mobile clients first call'],
['跳转支付宝收银台。','and redirect to Alipay checkout.'],
['降级:未开通或返回异常时,前端自动改走扫码支付并提示未开通移动支付。','Fallback: when unavailable or failed, the frontend switches to QR-code payment and warns that mobile payment is not enabled.'],
['桌面优先 Native 扫码,移动端微信浏览器优先 JSAPI,非微信浏览器兜底 H5。','Desktop prioritizes Native QR payment. Mobile WeChat browser prioritizes JSAPI, and non-WeChat browsers fall back to H5.'],
['开通:需开通 Native 或扫码支付能力。','Enablement: Native or QR-code payment capability is required.'],
['调用:桌面端默认调用 Native,前台会渲染二维码内容。','Invocation: desktop calls Native by default, and the frontend renders the QR code content.'],
['降级:移动端无法走 JSAPI 或 H5 时,也会自动回退到这里。','Fallback: mobile also falls back here when JSAPI or H5 is unavailable.'],
['JSAPI / 公众号支付','JSAPI / official account payment'],
['开通:需开通公众号支付,并保证当前浏览器在微信内且能拿到 OpenID。','Enablement: official account payment is required, and the current browser must be inside WeChat with an available OpenID.'],
['调用:微信内浏览器完成授权后调用 JSAPI,直接拉起微信收银台。','Invocation: after authorization in WeChat, call JSAPI to open WeChat checkout directly.'],
['降级:未配置或拉起失败时,自动改走扫码支付。','Fallback: when not configured or launch fails, automatically switch to QR-code payment.'],
['H5 支付','H5 payment'],
['开通:需开通 H5 支付。','Enablement: H5 payment is required.'],
['调用:移动端非微信浏览器且客户端 IP 可用时调用 H5,跳转微信收银台。','Invocation: for mobile non-WeChat browsers with a usable client IP, call H5 and redirect to WeChat checkout.'],
['降级:未开通 H5 或下单失败时,自动改走扫码支付。','Fallback: when H5 is not enabled or order creation fails, automatically switch to QR-code payment.'],
['当前表单默认共用一个 App ID,适合同主体下统一配置网页、移动和公众号场景。','This form uses one App ID by default, suitable for unified web, mobile, and official account scenarios under the same merchant entity.'],
['统一查看端点、模型健康状态,先从概览判断风险,再进入具体视角排查关联健康。','View endpoint and model health in one place. Use the overview to identify risk, then drill into each perspective for related health checks.'],
['统一查看端点、模型、提供商健康状态,先从概览判断风险,再进入具体视角排查关联健康。','View endpoint, model, and provider health in one place. Use the overview to identify risk, then drill into each perspective for related health checks.'],
['基于真实请求统计端点可用率、平均耗时、平均TTFB 与平均速度','Based on real request statistics: endpoint availability, average duration, average TTFB, and average speed'],
['基于真实请求统计模型可用率、平均耗时、平均TTFB 与平均速度','Based on real request statistics: model availability, average duration, average TTFB, and average speed'],
['仅展示活跃提供商,点击详情查看该提供商关联的端点与模型健康','Only active providers are shown. Click details to view linked endpoint and model health for this provider.'],
['自定义站点名称和副标题,影响导航栏、登录页、指南页面和邮件等全站显示','Customize the site name and subtitle used across the navigation bar, sign-in page, guide pages, emails, and other site-wide surfaces'],
['显示在导航栏品牌名称右方','Shown to the right of the brand name in the navigation bar'],
['导出、导入或清空系统数据','Export, import, or clear system data'],
['普通用户、用户组、API Keys 与钱包快照(不含管理员)','Regular users, user groups, API keys, and wallet snapshots (excluding administrators)'],
['配置与用户数据的一体化备份,包含用户、用户组、API Keys 与钱包快照','Integrated backup of configuration and user data, including users, user groups, API keys, and wallet snapshots'],
['后台删除所有提供商、端点、API Key 和模型配置','Delete all providers, endpoints, API keys, and model configuration in the background'],
['后台删除所有非管理员用户及其 API Keys','Delete all non-admin users and their API keys in the background'],
['后台清空全部使用记录和请求候选记录','Clear all usage records and request candidate records in the background'],
['后台删除全部审计日志记录','Delete all audit log records in the background'],
['后台分批清空所有请求/响应体数据,保留统计信息','Clear all request/response body data in batches while keeping statistics'],
['后台删除统计聚合数据并重建,保留原始使用记录','Delete and rebuild statistics aggregates while keeping raw usage records'],
['不限制邮箱后缀,所有邮箱均可注册','Do not restrict email suffixes; all emails can register'],
['仅允许列出后缀的邮箱注册','Only emails with listed suffixes can register'],
['拒绝列出后缀的邮箱注册','Reject emails with listed suffixes'],
['邮箱后缀列表','Email suffix list'],
['配置不同类型邮件的 HTML 模板','Configure HTML templates for different email types'],
['可用变量:','Available variables:'],
['注册验证码','Registration verification code'],
['找回密码','Password recovery'],
['邮件预览','Email preview'],
['敏感信息保护','Sensitive information protection'],
['发送给供应商前将聊天消息中的敏感信息替换为占位符,返回客户端前自动还原。','Replace sensitive information in chat messages with placeholders before sending to providers, then restore it before returning to clients.'],
['模型后缀参数','Model suffix parameters'],
['允许通过模型名称后缀覆盖推理参数或服务等级','Allow model name suffixes to override inference parameters or service tier'],
['独立按保留天数清理 request_candidates 审计记录,不再跟随 Key 删除联动','Independently clean request_candidates audit records by retention days; no longer follows key deletion linkage'],
['Provider 自动签到','Provider auto check-in'],
['自动执行已配置 Provider 签到任务','Automatically run configured provider check-in tasks'],
['主动刷新即将过期 OAuth Token (动态调度)','Proactively refresh OAuth tokens that are about to expire (dynamic scheduling)'],
['主动刷新即将过期的 OAuth Token(动态调度)','Proactively refresh OAuth tokens that are about to expire (dynamic scheduling)'],
['当前系统版本和构建信息','Current system version and build information'],
['记录清理策略','Record cleanup policy'],
['标准文本非流式心跳','Standard text non-streaming heartbeat'],
['超过后删除审计日志记录','Delete audit log records after this period'],
['自动执行已配置 Provider 的签到任务','Automatically run configured provider check-in tasks'],
['服务level','service level'],
['服务级别','service level'],
['非STREAMING','non-streaming'],
['Cache affinity性','Cache affinity'],
['Cache reads取Cost','Cache read cost'],
['不同优先级的Key按顺序故障转移,同优先级的Key进行负载均衡。','Keys with different priorities fail over in order, while keys with the same priority are load-balanced.'],
['在提供商优先的调度模式下,不同优先级的Key按顺序故障转移,同优先级的Key进行负载均衡。','In provider-first scheduling mode, keys with different priorities fail over in order, while keys with the same priority are load-balanced.'],
['支持多种 API 格式、端点配置及认证方式,不同客户端均可平滑接入。','Supports multiple API formats, endpoint configurations, and authentication methods so different clients can onboard smoothly.'],
['对外暴露统一模型名称,对内自动映射到各提供商的内部模型名及变体,支持优先级选择、亲和性路由、负载均衡与故障转移。','Expose unified model names externally and automatically map them internally to provider model names and variants, with priority selection, affinity routing, load balancing, and failover.'],
['Aether的系统架构、请求处理流程和数据流向。','Aether system architecture, request handling flow, and data flow.'],
['提供商支持不同的格式(如 OpenAI Chat, Claude Messages),Aether在接收请求后,将统一管理路由。','Providers support different formats such as OpenAI Chat and Claude Messages. After receiving requests, Aether manages routing in one place.'],
['在内部完成多提供商、多模型名称风格的聚合映射管理。客户端只需知道统一的模型名(例如 `claude-3-opus`),Aether将根据映射规则自动寻找真正对应的上游模型名称。','Aether manages aggregate mapping across providers and model naming styles internally. Clients only need the unified model name, such as `claude-3-opus`; Aether finds the real upstream model name from mapping rules.'],
['Aether 会尝试分析客户端的请求体格式,再将其转换为对应上游供应商要求的真正格式。','Aether analyzes the client request body format, then converts it to the actual format required by the upstream provider.'],
['如果客户端请求格式与上游目标格式一致,Aether 会直接透传(Pass-through),不进行数据解包和重整,最大化性能。','If the client request format matches the target upstream format, Aether passes it through directly without unpacking or restructuring data, maximizing performance.'],
['自定义或反代;一般自定义即可,反代请进入反代章节。','Custom or reverse proxy. Custom is usually enough; use the reverse proxy section for reverse proxy setup.'],
['按量付费:持续使用','Pay-as-you-go: continuous usage'],
['月卡额度:按周期(天)限额','Monthly quota: limited by cycle in days'],
['免费套餐:不计入成本即倍率为0','Free tier: not counted as cost, so the multiplier is 0'],
['在缓存亲和调度模式下,首次请求失败后的重试次数。','Retry count after the first request failure in cache-affinity scheduling mode.'],
['流式首字超时时间:流式请求收到首字前的超时时间','Streaming first-byte timeout: timeout before the first byte is received for streaming requests'],
['非流请求超时时间:非流请求的总超时时间','Non-streaming request timeout: total timeout for non-streaming requests'],
['通过格式转换的请求,是否保持当前优先级。','Whether requests using format conversion keep the current priority.'],
['添加端点是添加上游支持的端点,并非你需要使用的端点。比如 Anyrouter 只支持 Claude Code 接入,那么就应该添加 Claude Messages 端点,并在 Key 中选择对应认证方式。','Adding an endpoint means adding an upstream-supported endpoint, not necessarily the endpoint you call directly. For example, if Anyrouter only supports Claude Code access, add a Claude Messages endpoint and select the matching authentication method on the key.'],
['选择格式:选择上游支持的端点格式。','Select format: choose the endpoint format supported upstream.'],
['自定义 Base URL、Path:根据上游提供的信息填写。为空则使用提示的默认值。','Custom Base URL and path: fill them from upstream documentation. Leave empty to use the suggested defaults.'],
['API Key: 传统密钥','API Key: traditional key'],
['Vertex AI: 用于 Google Cloud','Vertex AI: for Google Cloud'],
['支持的API格式:勾选Key可以使用的API格式,同时可以设置key访问该端点时的倍率。','Supported API formats: select the API formats this key can use, and set the multiplier for key access to this endpoint.'],
['优先级:在提供商优先的调度模式下,不同优先级的Key按顺序故障转移,同优先级的Key进行负载均衡。','Priority: in provider-first scheduling mode, keys with different priorities fail over in order, while keys with the same priority are load-balanced.'],
['RPM限制:Key的使用速率限制,会预留10%给已有用户进行提高缓存命中率。','RPM limit: key usage rate limit. Ten percent is reserved for existing users to improve cache hit rate.'],
['填写固定数值。','Enter a fixed value.'],
['不填为空,采用一定策略自适应学习。','Leave empty to let the adaptive policy learn automatically.'],
['0: 不使用缓存优先','0: do not prioritize cache usage'],
['N: 同一个用户Key在N分钟内,优先使用之前使用的提供商、Key响应请求。','N: within N minutes, the same user key prefers the provider and key used previously.'],
['当同一个提供商Key字连续若干次请求失败后,会进入熔断状态,之后每间N分钟进行探测请求,若请求成功解除熔断后续正常请求,否则按以指数级增长探测时间以待下次探测,最大探测间隔不会增长超过32分钟。','When the same provider key fails several consecutive requests, it enters circuit-open state. A probe request runs every N minutes; success closes the circuit and normal requests resume. Otherwise, probe intervals grow exponentially up to 32 minutes.'],
['在上游获取模型端点支持的情况下,从接口自动获取可以用模型列表。且按一定时间自动刷新,不开启则默认任意模型可用,或在后续模型权限中手动添加。','When the upstream model-list endpoint is supported, fetch available models automatically and refresh them periodically. If disabled, any model is available by default, or models can be added manually in model permissions later.'],
['在编辑密钥中开启自动获取/刷新上游全部模型。','Enable automatic fetch/refresh of all upstream models while editing the key.'],
['手动限制/创建该Key的可用模型。','Manually restrict or create available models for this key.'],
['不开启自动获取且勾选任意模型,即模型权限为空,则认为可以使用提供商的全部关联模型。','If automatic fetch is disabled and no specific model is selected, model permissions are empty and all linked provider models are considered usable.'],
['只有在模型权限不为空的情况下,才可以配合正则映射模型。','Regex model mapping can be used only when model permissions are not empty.'],
['从全局模型关联提供商模型,即设置该提供商可以访问的模型,同时可以在这里设置提供商自己的模型价格。默认继承全局模型的价格。','Link provider models from global models to define which models the provider can access. Provider-specific model prices can also be set here; by default they inherit global model prices.'],
['如果该提供商的请求名称并非标准名称,即可通过映射改变在实际请求提供时的模型 id。','If the provider request name is not the standard name, mapping can change the actual model ID used for requests.'],
['官方标准名称为','Official standard name:'],
['实际提供商叫','Actual provider name:'],
['实际请求提供商用','Actual provider request uses:'],
['允许拖动、或者直接点击数字输入调整优先级。','Drag or click the number input directly to adjust priority.'],
['按提供商顺序调度,同优先级负载均衡。','Schedule by provider order, with load balancing at the same priority.'],
['全局Key统一调度,同优先级负载均衡。','Schedule global keys together, with load balancing at the same priority.'],
['在Key TTL时间的约束下,优先使用上一次请求使用的Key。','Within the key TTL window, prefer the key used by the previous request.'],
['取消全局提供商优先级,提供商内部Key依然保持优先级。','Cancel global provider priority while keeping priority among keys inside each provider.'],
['取消全局Key优先级,乱序使用。','Cancel global key priority and use keys in shuffled order.'],
['取消缓存亲和,始终使用固定顺序Key请求。','Cancel cache affinity and always request keys in fixed order.'],
['优先根据提供商设置的顺序进行调度。','Prefer scheduling according to the provider order.'],
['无视提供商层级,直接在所有可用的 Key 之间根据优先级进行调度。','Ignore provider hierarchy and schedule directly across all available keys by priority.'],
['尽量将相同用户的请求路由到之前处理过该用户请求的提供商/节点,以最大化利用上游缓存。','Try to route the same user requests to the provider or node that handled that user before, maximizing upstream cache usage.'],
['在相同优先级的节点之间均匀分配流量。','Evenly distribute traffic across nodes with the same priority.'],
['取消随机性与动态调整,严格按照固定的顺序遍历尝试。','Disable randomness and dynamic adjustment, then try targets strictly in fixed order.'],
['当请求失败时,根据策略自动切换到下一个可用的备用节点进行重试。','When a request fails, automatically switch to the next available standby node according to policy and retry.'],
['系统支持多种维度的访问频率限制(Rate Limit),有效防止恶意请求或滥用,保障服务稳定性。','The system supports multi-dimensional rate limits to prevent malicious requests or abuse and keep service stable.'],
['格式转换机制允许非原生接口的请求通过 Gateway 转为下游需要的格式,这一转换发生在多个层级:','Format conversion lets requests from non-native APIs be converted by the gateway into the downstream-required format. This conversion happens at several levels:'],
['在系统层面全局开启或关闭的默认转换规则。','Default conversion rules enabled or disabled globally at the system level.'],
['针对某个特定提供商的所有请求进行特定的格式转换配置。','Configure format conversion for all requests to a specific provider.'],
['针对某个具体端点的细粒度转换支持。','Fine-grained conversion support for a specific endpoint.'],
['部分提供商在流式或非流式表现上可能存在差异,此功能可强制在请求上游时使用指定的流式/非流式格式(并在前端按用户请求还原)。','Some providers behave differently for streaming and non-streaming. This feature can force a selected upstream streaming mode and restore the response according to the user request in the frontend.'],
['可在端点设置中添加规则(Rules),使用条件匹配与动作(如 Delete, Set, Insert)来动态修改发往上游的 Headers 或 JSON Payload。','Add rules in endpoint settings and use conditions plus actions such as Delete, Set, and Insert to dynamically modify upstream Headers or JSON Payload.'],
['解决提供商特定模型名称与平台标准名称不一致的问题。将请求中的统一模型名动态转换为上游真实需要的模型名。','Solve mismatches between provider-specific model names and platform standard names. Dynamically convert unified model names in requests into the upstream-required model names.'],
['使用正则表达式来匹配一类模型,给予批量授权。','Use regular expressions to match a class of models and grant permissions in bulk.'],
['在自动获取的模型列表中,应用正则过滤与清洗,从而快速导入符合规则的标准模型列表。','Apply regex filtering and cleanup to automatically fetched model lists to quickly import matching standard models.'],
['针对各大提供商的官方接口或常见聚合平台,自动抓取并记录剩余额度,在余额低于阈值时触发报警或禁用策略。','Automatically fetch and record remaining quota from official provider APIs or common aggregation platforms, then trigger alerts or disable policies when balance drops below thresholds.'],
['支持将统一模型配置、提供商端点及网关路由策略一键导出为 JSON,并在其他部署实例中迁移导入。','Export unified model configuration, provider endpoints, and gateway routing policies as JSON, then import them into other deployments.'],
['若监控发现恶意使用、异常调用或高频报错,管理员可以临时或永久锁定特定密钥,以阻断攻击源头。','When monitoring detects malicious use, abnormal calls, or frequent errors, administrators can temporarily or permanently lock specific keys to block the attack source.'],
['当前时间范围内没有统计结果','No statistics in the current time range'],
['当前筛选条件下没有数据','No data under the current filters'],
['选择号池和代理节点后生成分配预览','Select a pool and proxy nodes to generate an assignment preview'],
['选择号池和代理节点后生成分配预览,再写入账号独立代理。','Select a pool and proxy nodes, generate an assignment preview, then write account-level proxy settings.'],
['管理号池内 Key 的分配模式和排序偏好','Manage key distribution modes and ordering preferences in the pool'],
['控制 Key 的基础分配方式,选择一种模式。','Choose one base distribution mode for keys.'],
['在分配模式基础上叠加排序因素,可组合启用。','Layer ordering factors on top of the distribution mode; multiple strategies can be enabled.'],
['桌面端支持拖拽排序,移动端可点按上下调整优先级。','Desktop supports drag sorting; mobile can move priorities up and down.'],
['优先复用最近使用过的 Key,利用 Prompt Caching','Prefer recently used keys to take advantage of prompt caching'],
['最久未使用的 Key 优先','Prefer the least recently used keys'],
['集中使用同一账号(反向 LRU)','Concentrate usage on the same account (reverse LRU)'],
['随机分散 Key 使用,均匀分摊负载','Randomly distribute key usage to balance load'],
['优先消耗 Free 账号(依赖 plan_type)','Prefer Free accounts (based on plan_type)'],
['优先消耗 Team 账号(依赖 plan_type)','Prefer Team accounts (based on plan_type)'],
['优先消耗 Plus 账号(依赖 plan_type)','Prefer Plus accounts (based on plan_type)'],
['优先消耗 Pro 账号(依赖 plan_type)','Prefer Pro accounts (based on plan_type)'],
['优先选额度消耗最少的账号','Prefer accounts with the lowest quota usage'],
['优先选即将刷新额度的账号','Prefer accounts whose quota will refresh soon'],
['按账号优先级顺序调度(数字越小越优先)','Schedule by account priority; lower numbers are higher priority'],
['优先选择健康分更高、失败更少的账号','Prefer accounts with higher health scores and fewer failures'],
['优先选择最近延迟更低的账号','Prefer accounts with lower recent latency'],
['优先选择窗口消耗更低的账号','Prefer accounts with lower window cost'],
['未设置,使用系统默认网络出口','Not set; uses the system default network egress'],
['当前使用提供商独立代理','Currently using provider-specific proxy'],
['配置提供商出站请求的默认代理,仅影响大模型 API、余额查询、OAuth 等提供商请求','Configure the default proxy for provider outbound requests; only affects model API, balance query, OAuth, and similar provider requests'],
['对未单独配置代理的提供商生效,覆盖大模型 API 请求、余额查询、OAuth 刷新等。不影响系统内部接口。','Applies to providers without an individual proxy; affects model API requests, balance queries, OAuth refresh, and similar provider traffic. Internal system APIs are not affected.'],
['配置系统默认参数','Configure system defaults'],
['新用户注册时的默认初始赠款','Default initial grant for new users'],
['影响注册、创建用户、重置/修改密码的校验规则','Affects validation rules for registration, user creation, password reset, and password change'],
['允许新用户自助注册账户','Allow new users to self-register accounts'],
['关闭时仅禁用过期的独立余额 Key','When disabled, expired standalone balance keys are only disabled'],
['开启后强制允许所有提供商接受跨格式请求','When enabled, all providers are forced to accept cross-format requests'],
['本文档将引导您完成 Aether 的项目部署、配置以及反向代理等高级特性的使用。','This guide walks you through Aether deployment, configuration, reverse proxying, and other advanced features.'],
['以 Opus 4.6 为例, 其他模型同样添加即可, 非必要建议只添加官方支持的模型ID。','Using Opus 4.6 as an example; add other models the same way. Unless necessary, only add officially supported model IDs.'],
['添加提供商时, 提供商类型选择对应类型即可, 反向代理默认开启提供商级格式转换。','When adding a provider, choose the matching provider type. Reverse proxy enables provider-level format conversion by default.'],
['Rust实现, 超小资源占有, 适合性能低的VPS直接使用。','Implemented in Rust with very low resource usage, suitable for low-spec VPS instances.'],
['在模块管理中,开启代理模块后可以添加和使用代理功能,包括手动添加和 Aether-Proxy 自动连接。','After enabling the proxy module in module management, you can add and use proxies, including manual nodes and automatic Aether-Proxy connections.'],
[/^已强制下线 (.+) 个设备$/u, match => `Signed out ${match[1]} devices`],
[/^用户已(.+)$/u, match => `User ${translateLegacyByTokens(match[1]).toLowerCase()}d`],
[/^(.+)用户失败$/u, match => `Failed to ${translateLegacyByTokens(match[1]).toLowerCase()} user`],
[/^(.+) 个用户$/u, match => `${match[1]} users`],
[/^有 (.+) 条格式错误$/u, match => `${match[1]} format errors`],
[/^还有 (.+) 条错误未显示$/u, match => `${match[1]} more errors hidden`],
[/^确定删除套餐「(.+)」吗?\n\n已有订单或权益的套餐不能删除,请改为停用。删除后无法恢复。$/u, match => `Delete plan "${match[1]}"?\n\nPlans with existing orders or entitlements cannot be deleted. Disable it instead. This cannot be undone.`],
[/^确定要删除映射 "(.+)" 吗?\n\n注意:这只会删除映射记录,不会删除 Google 上的实际文件。$/u, match => `Delete mapping "${match[1]}"?\n\nThis only deletes the mapping record and will not delete the actual file on Google.`],
[/^确认删除批次「(.+)」吗?删除后无法恢复。$/u, match => `Delete batch "${match[1]}"? This cannot be undone.`],
[/^已删除映射 (.+)$/u, match => `Deleted mapping ${match[1]}`],
[/^已清理 (.+) 条过期映射$/u, match => `Cleaned ${match[1]} expired mappings`],
[/^已忽略 (.+) 个不支持的文件$/u, match => `Ignored ${match[1]} unsupported files`],
[/^成功处理 (.+) 个提供商$/u, match => `Successfully processed ${match[1]} providers`],
[/^部分操作失败: (.+)$/u, match => `Some operations failed: ${translateLegacyText(match[1], 'en-US')}`],
[/^部分实时数据加载失败:(.+)$/u, match => `Some realtime data failed to load: ${translateLegacyText(match[1], 'en-US')}`],
[/^文件大小不能超过 (.+)$/u, match => `File size cannot exceed ${match[1]}`],
[/^(.+)上传中:(.+)$/u, match => `${translateLegacyText(match[1], 'en-US')} uploading: ${match[2]}`],
[/^(.+)已上传,服务端正在校验并写入数据$/u, match => `${translateLegacyText(match[1], 'en-US')} uploaded. The server is validating and writing data.`],
[/^IP (.+) 已加入黑名单$/u, match => `IP ${match[1]} added to blacklist`],
[/^IP (.+) 已加入白名单$/u, match => `IP ${match[1]} added to whitelist`],
[/^确定要清除 (.+) 在模型 (.+) 上的缓存亲和性吗?$/u, match => `Clear cache affinity for ${match[1]} on model ${match[2]}?`],
[/^至少 (.+) 个字符$/u, match => `at least ${match[1]} characters`],
[/^长度不能超过(.+)字节$/u, match => `length must not exceed ${match[1]} bytes`],
[/^密码长度不能超过(.+)字节$/u, match => `Password length must not exceed ${match[1]} bytes`],
[/^已识别 (.+) 个代理节点。$/u, match => `${match[1]} proxy nodes recognized.`],
[/^待添加 (.+) 个$/u, match => `${match[1]} pending`],
[/^批量输入存在 (.+) 条格式错误,请先修正后再添加$/u, match => `Batch input has ${match[1]} format errors. Fix them before adding.`],
[/^已添加 (.+) 个代理节点$/u, match => `Added ${match[1]} proxy nodes`],