mirror of
https://github.com/router-for-me/Cli-Proxy-API-Management-Center.git
synced 2026-02-19 03:00:49 +08:00
1191 lines
58 KiB
JSON
1191 lines
58 KiB
JSON
{
|
||
"common": {
|
||
"login": "登录",
|
||
"logout": "登出",
|
||
"back": "返回",
|
||
"cancel": "取消",
|
||
"confirm": "确认",
|
||
"save": "保存",
|
||
"delete": "删除",
|
||
"edit": "编辑",
|
||
"add": "添加",
|
||
"update": "更新",
|
||
"refresh": "刷新",
|
||
"close": "关闭",
|
||
"success": "成功",
|
||
"error": "错误",
|
||
"info": "信息",
|
||
"warning": "警告",
|
||
"loading": "加载中...",
|
||
"connecting": "连接中...",
|
||
"connected": "已连接",
|
||
"disconnected": "未连接",
|
||
"connecting_status": "连接中",
|
||
"connected_status": "已连接",
|
||
"disconnected_status": "未连接",
|
||
"yes": "是",
|
||
"no": "否",
|
||
"not_set": "未设置",
|
||
"optional": "可选",
|
||
"required": "必填",
|
||
"api_key": "密钥",
|
||
"base_url": "地址",
|
||
"prefix": "前缀",
|
||
"proxy_url": "代理",
|
||
"alias": "别名",
|
||
"failure": "失败",
|
||
"unknown_error": "未知错误",
|
||
"quota_update_required": "请更新 CPA 版本或检查更新",
|
||
"quota_check_credential": "请检查凭证状态",
|
||
"copy": "复制",
|
||
"status": "状态",
|
||
"action": "操作",
|
||
"custom_headers_label": "自定义请求头",
|
||
"custom_headers_hint": "可选,设置需要附带到请求中的 HTTP 头,名称和值均不能为空。",
|
||
"custom_headers_add": "添加请求头",
|
||
"custom_headers_key_placeholder": "Header 名称,例如 X-Custom-Header",
|
||
"custom_headers_value_placeholder": "Header 值",
|
||
"model_name_placeholder": "模型名称,例如 claude-3-5-sonnet-20241022",
|
||
"model_alias_placeholder": "模型别名 (可选)",
|
||
"invalid_provider_index": "无效的提供商索引。"
|
||
},
|
||
"title": {
|
||
"main": "CLI Proxy API Management Center",
|
||
"login": "CLI Proxy API Management Center",
|
||
"abbr": "CPAMC"
|
||
},
|
||
"auto_login": {
|
||
"title": "正在自动登录...",
|
||
"message": "正在使用本地保存的连接信息尝试连接服务器"
|
||
},
|
||
"login": {
|
||
"subtitle": "请输入连接信息以访问管理界面",
|
||
"connection_title": "连接地址",
|
||
"connection_current": "当前地址",
|
||
"connection_auto_hint": "系统将自动使用当前访问地址进行连接",
|
||
"custom_connection_label": "自定义连接地址:",
|
||
"custom_connection_placeholder": "例如: https://example.com:8317",
|
||
"custom_connection_hint": "默认使用当前访问地址,若需要可手动输入其他地址。",
|
||
"use_current_address": "使用当前地址",
|
||
"remember_password_label": "记住密码",
|
||
"management_key_label": "管理密钥:",
|
||
"management_key_placeholder": "请输入管理密钥",
|
||
"connect_button": "连接",
|
||
"submit_button": "登录",
|
||
"submitting": "连接中...",
|
||
"error_title": "登录失败",
|
||
"error_required": "请填写完整的连接信息",
|
||
"error_invalid": "连接失败,请检查地址和密钥",
|
||
"error_network": "网络连接失败,请检查网络或服务器地址",
|
||
"error_timeout": "连接超时,服务器无响应",
|
||
"error_unauthorized": "认证失败,管理密钥无效",
|
||
"error_forbidden": "访问被拒绝,权限不足",
|
||
"error_not_found": "服务器地址无效或管理接口未启用",
|
||
"error_server": "服务器内部错误,请稍后重试",
|
||
"error_cors": "跨域请求被阻止,请检查服务器配置",
|
||
"error_ssl": "SSL/TLS 证书验证失败"
|
||
},
|
||
"header": {
|
||
"check_connection": "检查连接",
|
||
"refresh_all": "刷新全部",
|
||
"logout": "登出"
|
||
},
|
||
"connection": {
|
||
"title": "连接信息",
|
||
"server_address": "服务器地址:",
|
||
"management_key": "管理密钥:",
|
||
"status": "连接状态:"
|
||
},
|
||
"nav": {
|
||
"dashboard": "仪表盘",
|
||
"basic_settings": "基础设置",
|
||
"api_keys": "API 密钥",
|
||
"ai_providers": "AI 提供商",
|
||
"auth_files": "认证文件",
|
||
"oauth": "OAuth 登录",
|
||
"quota_management": "配额管理",
|
||
"usage_stats": "使用统计",
|
||
"config_management": "配置面板",
|
||
"logs": "日志查看",
|
||
"system_info": "中心信息"
|
||
},
|
||
"dashboard": {
|
||
"title": "仪表盘",
|
||
"subtitle": "欢迎使用 CLI Proxy API 管理中心",
|
||
"openai_providers": "OpenAI 提供商",
|
||
"quick_actions": "快捷操作",
|
||
"current_config": "当前配置",
|
||
"management_keys": "管理密钥",
|
||
"provider_keys_detail": "G:{{gemini}} C:{{codex}} Cl:{{claude}} O:{{openai}}",
|
||
"oauth_credentials": "OAuth 凭证",
|
||
"usage_overview": "使用概览",
|
||
"total_requests": "总请求数",
|
||
"total_tokens": "总 Token 数",
|
||
"rpm_30min": "RPM (30分钟)",
|
||
"tpm_30min": "TPM (30分钟)",
|
||
"models_used": "使用模型数",
|
||
"no_usage_data": "暂无使用数据",
|
||
"view_detailed_usage": "查看详细统计",
|
||
"edit_settings": "编辑设置",
|
||
"available_models": "可用模型",
|
||
"available_models_desc": "所有提供商的模型总数"
|
||
},
|
||
"basic_settings": {
|
||
"title": "基础设置",
|
||
"debug_title": "调试模式",
|
||
"debug_enable": "启用调试模式",
|
||
"proxy_title": "代理设置",
|
||
"proxy_url_label": "代理 URL:",
|
||
"proxy_url_placeholder": "例如: socks5://user:pass@127.0.0.1:1080/",
|
||
"proxy_update": "更新",
|
||
"proxy_clear": "清空",
|
||
"retry_title": "请求重试",
|
||
"retry_count_label": "重试次数:",
|
||
"retry_update": "更新",
|
||
"quota_title": "配额超出行为",
|
||
"quota_switch_project": "自动切换项目",
|
||
"quota_switch_preview": "切换到预览模型",
|
||
"usage_statistics_title": "使用统计",
|
||
"usage_statistics_enable": "启用使用统计",
|
||
"logging_title": "日志记录",
|
||
"logging_to_file_enable": "启用日志记录到文件",
|
||
"logs_max_total_size_title": "日志容量限制",
|
||
"logs_max_total_size_label": "日志总大小上限 (MB):",
|
||
"logs_max_total_size_hint": "设置为 0 表示不限制。",
|
||
"logs_max_total_size_update": "更新",
|
||
"request_log_title": "请求日志",
|
||
"request_log_enable": "启用请求日志",
|
||
"request_log_warning": "仅在需要排查问题时开启,日常请保持关闭。",
|
||
"force_model_prefix_enable": "强制模型前缀",
|
||
"ws_auth_title": "WebSocket 鉴权",
|
||
"ws_auth_enable": "启用 /ws/* 鉴权",
|
||
"routing_title": "路由策略",
|
||
"routing_strategy_label": "路由策略:",
|
||
"routing_strategy_hint": "round-robin 为轮询,fill-first 为优先填充。",
|
||
"routing_strategy_update": "更新",
|
||
"routing_strategy_round_robin": "round-robin (轮询)",
|
||
"routing_strategy_fill_first": "fill-first (优先填充)"
|
||
},
|
||
"api_keys": {
|
||
"title": "API 密钥管理",
|
||
"proxy_auth_title": "代理服务认证密钥",
|
||
"add_button": "添加密钥",
|
||
"empty_title": "暂无API密钥",
|
||
"empty_desc": "点击上方按钮添加第一个密钥",
|
||
"item_title": "API密钥",
|
||
"add_modal_title": "添加API密钥",
|
||
"add_modal_key_label": "API密钥:",
|
||
"add_modal_key_placeholder": "请输入API密钥",
|
||
"edit_modal_title": "编辑API密钥",
|
||
"edit_modal_key_label": "API密钥:",
|
||
"delete_confirm": "确定要删除这个API密钥吗?"
|
||
},
|
||
"ai_providers": {
|
||
"title": "AI 提供商配置",
|
||
"gemini_title": "Gemini API 密钥",
|
||
"gemini_add_button": "添加密钥",
|
||
"gemini_empty_title": "暂无Gemini密钥",
|
||
"gemini_empty_desc": "点击上方按钮添加第一个密钥",
|
||
"gemini_item_title": "Gemini密钥",
|
||
"gemini_add_modal_title": "添加Gemini API密钥",
|
||
"gemini_add_modal_key_label": "API密钥",
|
||
"gemini_add_modal_key_placeholder": "输入 Gemini API 密钥",
|
||
"gemini_add_modal_key_hint": "逐条输入密钥,可同时指定可选 Base URL。",
|
||
"gemini_keys_add_btn": "添加密钥",
|
||
"gemini_base_url_label": "Base URL (可选)",
|
||
"gemini_base_url_placeholder": "例如: https://generativelanguage.googleapis.com",
|
||
"gemini_add_modal_proxy_label": "代理 URL (可选):",
|
||
"gemini_add_modal_proxy_placeholder": "例如: socks5://proxy.example.com:1080",
|
||
"gemini_edit_modal_title": "编辑Gemini API密钥",
|
||
"gemini_edit_modal_key_label": "API密钥:",
|
||
"gemini_delete_confirm": "确定要删除这个Gemini密钥吗?",
|
||
"excluded_models_label": "排除的模型 (可选):",
|
||
"excluded_models_placeholder": "用逗号或换行分隔,例如: gemini-1.5-pro, gemini-1.5-flash",
|
||
"excluded_models_hint": "留空表示不过滤;保存时会自动去重并忽略空白。",
|
||
"excluded_models_count": "排除 {{count}} 个模型",
|
||
"prefix_label": "前缀 (可选):",
|
||
"prefix_placeholder": "例如: team-a",
|
||
"prefix_hint": "设置后可用 prefix/<model> 选择该条目。",
|
||
"config_toggle_label": "启用",
|
||
"config_disabled_badge": "已停用",
|
||
"codex_title": "Codex API 配置",
|
||
"codex_add_button": "添加配置",
|
||
"codex_empty_title": "暂无Codex配置",
|
||
"codex_empty_desc": "点击上方按钮添加第一个配置",
|
||
"codex_item_title": "Codex配置",
|
||
"codex_add_modal_title": "添加Codex API配置",
|
||
"codex_add_modal_key_label": "API密钥:",
|
||
"codex_add_modal_key_placeholder": "请输入Codex API密钥",
|
||
"codex_add_modal_url_label": "Base URL (必填):",
|
||
"codex_add_modal_url_placeholder": "例如: https://api.example.com",
|
||
"codex_add_modal_proxy_label": "代理 URL (可选):",
|
||
"codex_add_modal_proxy_placeholder": "例如: socks5://proxy.example.com:1080",
|
||
"codex_edit_modal_title": "编辑Codex API配置",
|
||
"codex_edit_modal_key_label": "API密钥:",
|
||
"codex_edit_modal_url_label": "Base URL (必填):",
|
||
"codex_edit_modal_proxy_label": "代理 URL (可选):",
|
||
"codex_delete_confirm": "确定要删除这个Codex配置吗?",
|
||
"claude_title": "Claude API 配置",
|
||
"claude_add_button": "添加配置",
|
||
"claude_empty_title": "暂无Claude配置",
|
||
"claude_empty_desc": "点击上方按钮添加第一个配置",
|
||
"claude_item_title": "Claude配置",
|
||
"claude_add_modal_title": "添加Claude API配置",
|
||
"claude_add_modal_key_label": "API密钥:",
|
||
"claude_add_modal_key_placeholder": "请输入Claude API密钥",
|
||
"claude_add_modal_url_label": "Base URL (可选):",
|
||
"claude_add_modal_url_placeholder": "例如: https://api.anthropic.com",
|
||
"claude_add_modal_proxy_label": "代理 URL (可选):",
|
||
"claude_add_modal_proxy_placeholder": "例如: socks5://proxy.example.com:1080",
|
||
"claude_edit_modal_title": "编辑Claude API配置",
|
||
"claude_edit_modal_key_label": "API密钥:",
|
||
"claude_edit_modal_url_label": "Base URL (可选):",
|
||
"claude_edit_modal_proxy_label": "代理 URL (可选):",
|
||
"claude_delete_confirm": "确定要删除这个Claude配置吗?",
|
||
"claude_models_label": "自定义模型 (可选):",
|
||
"claude_models_hint": "为空表示使用全部模型;可填写 name[, alias] 以限制或重命名模型。",
|
||
"claude_models_add_btn": "添加模型",
|
||
"claude_models_count": "模型数量",
|
||
"vertex_title": "Vertex API 配置",
|
||
"vertex_add_button": "添加配置",
|
||
"vertex_empty_title": "暂无Vertex配置",
|
||
"vertex_empty_desc": "点击上方按钮添加第一个配置",
|
||
"vertex_item_title": "Vertex配置",
|
||
"vertex_add_modal_title": "添加Vertex API配置",
|
||
"vertex_add_modal_key_label": "API密钥:",
|
||
"vertex_add_modal_key_placeholder": "请输入Vertex API密钥",
|
||
"vertex_add_modal_url_label": "Base URL (必填):",
|
||
"vertex_add_modal_url_placeholder": "例如: https://example.com/api",
|
||
"vertex_add_modal_proxy_label": "代理 URL (可选):",
|
||
"vertex_add_modal_proxy_placeholder": "例如: socks5://proxy.example.com:1080",
|
||
"vertex_edit_modal_title": "编辑Vertex API配置",
|
||
"vertex_edit_modal_key_label": "API密钥:",
|
||
"vertex_edit_modal_url_label": "Base URL (必填):",
|
||
"vertex_edit_modal_proxy_label": "代理 URL (可选):",
|
||
"vertex_delete_confirm": "确定要删除这个Vertex配置吗?",
|
||
"vertex_models_label": "模型别名 (别名必填):",
|
||
"vertex_models_add_btn": "添加映射",
|
||
"vertex_models_hint": "每条别名需要填写原模型与别名。",
|
||
"vertex_models_count": "别名数量",
|
||
"ampcode_title": "Amp CLI 集成 (ampcode)",
|
||
"ampcode_modal_title": "配置 Ampcode",
|
||
"ampcode_upstream_url_label": "Upstream URL",
|
||
"ampcode_upstream_url_placeholder": "例如: https://ampcode.com",
|
||
"ampcode_upstream_url_hint": "可选;留空表示使用默认/自动发现的控制平面地址。",
|
||
"ampcode_upstream_api_key_label": "Upstream API Key (Amp官方)",
|
||
"ampcode_upstream_api_key_placeholder": "输入 sk-amp...(留空不修改)",
|
||
"ampcode_upstream_api_key_hint": "可选;留空不会修改当前Amp官方密钥,需清除请点击下方按钮。",
|
||
"ampcode_upstream_api_key_current": "当前Amp官方密钥: {{key}}",
|
||
"ampcode_clear_upstream_api_key": "清除官方密钥",
|
||
"ampcode_clear_upstream_api_key_confirm": "确定要清除 Ampcode 的 upstream API key(Amp官方)吗?",
|
||
"ampcode_force_model_mappings_label": "强制应用模型映射",
|
||
"ampcode_force_model_mappings_hint": "开启后,模型映射将覆盖本地 API Key 可用性判断。",
|
||
"ampcode_model_mappings_label": "模型映射 (from → to)",
|
||
"ampcode_model_mappings_hint": "用于重写 Amp 请求中的模型名称;留空表示不做映射。",
|
||
"ampcode_model_mappings_add_btn": "添加映射",
|
||
"ampcode_model_mappings_from_placeholder": "from 模型(原始)",
|
||
"ampcode_model_mappings_to_placeholder": "to 模型(目标)",
|
||
"ampcode_model_mappings_count": "映射数量",
|
||
"ampcode_mappings_overwrite_confirm": "当前未成功加载服务器已有映射,继续保存可能覆盖或清空已有映射,是否继续?",
|
||
"openai_title": "OpenAI 兼容提供商",
|
||
"openai_add_button": "添加提供商",
|
||
"openai_empty_title": "暂无OpenAI兼容提供商",
|
||
"openai_empty_desc": "点击上方按钮添加第一个提供商",
|
||
"openai_add_modal_title": "添加OpenAI兼容提供商",
|
||
"openai_add_modal_name_label": "提供商名称:",
|
||
"openai_add_modal_name_placeholder": "例如: openrouter",
|
||
"openai_add_modal_url_label": "Base URL:",
|
||
"openai_add_modal_url_placeholder": "例如: https://openrouter.ai/api/v1",
|
||
"openai_add_modal_keys_label": "API密钥",
|
||
"openai_edit_modal_keys_label": "API密钥",
|
||
"openai_keys_hint": "每个密钥可搭配一个可选代理地址,更便于管理。",
|
||
"openai_keys_add_btn": "添加密钥",
|
||
"openai_key_placeholder": "输入 sk- 开头的密钥",
|
||
"openai_proxy_placeholder": "可选代理 URL (如 socks5://...)",
|
||
"openai_add_modal_models_label": "模型列表 (name[, alias] 每行一个):",
|
||
"openai_models_hint": "示例:gpt-4o-mini 或 moonshotai/kimi-k2:free, kimi-k2",
|
||
"openai_model_name_placeholder": "模型名称,如 moonshotai/kimi-k2:free",
|
||
"openai_model_alias_placeholder": "模型别名 (可选)",
|
||
"openai_models_add_btn": "添加模型",
|
||
"openai_models_fetch_button": "从 /models 获取",
|
||
"openai_models_fetch_title": "从 /models 选择模型",
|
||
"openai_models_fetch_hint": "使用上方 Base URL 调用 /models 端点,附带首个 API Key(Bearer)与自定义请求头。",
|
||
"openai_models_fetch_url_label": "请求地址",
|
||
"openai_models_fetch_refresh": "重新获取",
|
||
"openai_models_fetch_loading": "正在从 /models 获取模型列表...",
|
||
"openai_models_fetch_empty": "未获取到模型,请检查端点或鉴权信息。",
|
||
"openai_models_fetch_error": "获取模型失败",
|
||
"openai_models_fetch_back": "返回编辑",
|
||
"openai_models_fetch_apply": "添加所选模型",
|
||
"openai_models_search_label": "搜索模型",
|
||
"openai_models_search_placeholder": "按名称、别名或描述筛选",
|
||
"openai_models_search_empty": "没有匹配的模型,请更换关键字试试。",
|
||
"openai_models_fetch_invalid_url": "请先填写有效的 Base URL",
|
||
"openai_models_fetch_added": "已添加 {{count}} 个新模型",
|
||
"openai_edit_modal_title": "编辑OpenAI兼容提供商",
|
||
"openai_edit_modal_name_label": "提供商名称:",
|
||
"openai_edit_modal_url_label": "Base URL:",
|
||
"openai_edit_modal_models_label": "模型列表 (name[, alias] 每行一个):",
|
||
"openai_delete_confirm": "确定要删除这个OpenAI提供商吗?",
|
||
"openai_keys_count": "密钥数量",
|
||
"openai_models_count": "模型数量",
|
||
"openai_test_title": "连通性测试",
|
||
"openai_test_hint": "使用当前配置向 /chat/completions 请求,验证是否可用。",
|
||
"openai_test_model_placeholder": "选择或输入要测试的模型",
|
||
"openai_test_action": "发送测试",
|
||
"openai_test_running": "正在发送测试请求...",
|
||
"openai_test_timeout": "测试请求超时({{seconds}}秒)。",
|
||
"openai_test_success": "测试成功,模型可用。",
|
||
"openai_test_failed": "测试失败",
|
||
"openai_test_select_placeholder": "从当前模型列表选择",
|
||
"openai_test_select_empty": "当前未配置模型,请先添加模型",
|
||
"openai_test_single_action": "测试",
|
||
"openai_test_all_action": "一键测试全部密钥",
|
||
"openai_test_all_hint": "测试所有密钥的连接状态",
|
||
"openai_test_all_success": "所有 {{count}} 个密钥测试通过",
|
||
"openai_test_all_failed": "所有 {{count}} 个密钥测试失败",
|
||
"openai_test_all_partial": "测试完成:{{success}} 个通过,{{failed}} 个失败"
|
||
},
|
||
"auth_files": {
|
||
"title": "认证文件管理",
|
||
"title_section": "认证文件",
|
||
"description": "这里集中管理 CLI Proxy 支持的所有 JSON 认证文件(如 Qwen、Gemini、Vertex 等),上传后即可在运行时启用相应的 AI 服务。",
|
||
"upload_button": "上传文件",
|
||
"delete_all_button": "删除全部",
|
||
"empty_title": "暂无认证文件",
|
||
"empty_desc": "点击上方按钮上传第一个文件",
|
||
"search_empty_title": "没有匹配的配置文件",
|
||
"search_empty_desc": "请调整筛选条件或清空搜索关键字再试一次。",
|
||
"file_size": "大小",
|
||
"file_modified": "修改时间",
|
||
"download_button": "下载",
|
||
"delete_button": "删除",
|
||
"delete_confirm": "确定要删除文件",
|
||
"delete_all_confirm": "确定要删除所有认证文件吗?此操作不可恢复!",
|
||
"delete_filtered_confirm": "确定要删除筛选出的 {{type}} 认证文件吗?此操作不可恢复!",
|
||
"upload_error_json": "只能上传JSON文件",
|
||
"upload_error_size": "文件大小不能超过 {{maxSize}}",
|
||
"upload_success": "文件上传成功",
|
||
"download_success": "文件下载成功",
|
||
"delete_success": "文件删除成功",
|
||
"delete_all_success": "成功删除",
|
||
"delete_filtered_success": "成功删除 {{count}} 个 {{type}} 认证文件",
|
||
"delete_filtered_partial": "{{type}} 认证文件删除完成,成功 {{success}} 个,失败 {{failed}} 个",
|
||
"delete_filtered_none": "当前筛选类型 ({{type}}) 下没有可删除的认证文件",
|
||
"files_count": "个文件",
|
||
"pagination_prev": "上一页",
|
||
"pagination_next": "下一页",
|
||
"pagination_info": "第 {{current}} / {{total}} 页 · 共 {{count}} 个文件",
|
||
"search_label": "搜索配置文件",
|
||
"search_placeholder": "输入名称、类型或提供方关键字",
|
||
"page_size_label": "单页数量",
|
||
"page_size_unit": "个/页",
|
||
"view_mode_paged": "按页显示",
|
||
"view_mode_all": "显示全部",
|
||
"too_many_files_warning": "您的凭证总数过多,全部加载会导致页面卡顿,请保持单页浏览。",
|
||
"filter_all": "全部",
|
||
"filter_qwen": "Qwen",
|
||
"filter_gemini": "Gemini",
|
||
"filter_gemini-cli": "GeminiCLI",
|
||
"filter_kimi": "Kimi",
|
||
"filter_aistudio": "AIStudio",
|
||
"filter_claude": "Claude",
|
||
"filter_codex": "Codex",
|
||
"filter_antigravity": "Antigravity",
|
||
"filter_iflow": "iFlow",
|
||
"filter_vertex": "Vertex",
|
||
"filter_empty": "空文件",
|
||
"filter_unknown": "其他",
|
||
"type_qwen": "Qwen",
|
||
"type_gemini": "Gemini",
|
||
"type_gemini-cli": "GeminiCLI",
|
||
"type_kimi": "Kimi",
|
||
"type_aistudio": "AIStudio",
|
||
"type_claude": "Claude",
|
||
"type_codex": "Codex",
|
||
"type_antigravity": "Antigravity",
|
||
"type_iflow": "iFlow",
|
||
"type_vertex": "Vertex",
|
||
"type_empty": "空文件",
|
||
"type_unknown": "其他",
|
||
"type_virtual": "虚拟认证文件",
|
||
"models_button": "模型",
|
||
"models_title": "支持的模型",
|
||
"models_loading": "正在加载模型列表...",
|
||
"models_empty": "该凭证暂无可用模型",
|
||
"models_empty_desc": "该认证凭证可能尚未被服务器加载或没有绑定任何模型",
|
||
"models_unsupported": "当前版本不支持此功能",
|
||
"models_unsupported_desc": "请更新 CLI Proxy API 到最新版本后重试",
|
||
"models_excluded_badge": "已禁用",
|
||
"models_excluded_hint": "此 OAuth 模型已被禁用",
|
||
"status_toggle_label": "启用",
|
||
"status_enabled_success": "已启用 \"{{name}}\"",
|
||
"status_disabled_success": "已停用 \"{{name}}\"",
|
||
"prefix_proxy_button": "编辑认证文件字段",
|
||
"auth_field_editor_title": "编辑认证文件字段 - {{name}}",
|
||
"prefix_proxy_loading": "正在加载认证文件...",
|
||
"prefix_proxy_source_label": "认证文件 JSON(预览)",
|
||
"prefix_label": "前缀(prefix)",
|
||
"proxy_url_label": "代理 URL(proxy_url)",
|
||
"prefix_placeholder": "",
|
||
"proxy_url_placeholder": "socks5://username:password@proxy_ip:port/",
|
||
"priority_label": "优先级(priority)",
|
||
"priority_placeholder": "例如: 10 或 -1",
|
||
"priority_hint": "仅支持整数;非法值会被忽略。数值越大优先级越高。",
|
||
"excluded_models_label": "排除模型(excluded_models)",
|
||
"excluded_models_placeholder": "用逗号或换行分隔,例如: model-a, gpt-5-*, *-preview",
|
||
"excluded_models_hint": "保存为数组;会自动 trim、小写、去重并排序。",
|
||
"disable_cooling_label": "禁用冷却(disable_cooling)",
|
||
"disable_cooling_placeholder": "例如: true / false / 1 / 0",
|
||
"disable_cooling_hint": "支持布尔值、0/非0 数字或字符串 true/false/1/0;无法解析时忽略。",
|
||
"prefix_proxy_invalid_json": "该认证文件不是 JSON 对象,无法编辑字段。",
|
||
"prefix_proxy_saved_success": "已更新认证文件 \"{{name}}\"",
|
||
"quota_refresh_success": "已刷新 \"{{name}}\" 的额度",
|
||
"quota_refresh_failed": "刷新 \"{{name}}\" 的额度失败:{{message}}"
|
||
},
|
||
"antigravity_quota": {
|
||
"title": "Antigravity 额度",
|
||
"empty_title": "暂无 Antigravity 认证",
|
||
"empty_desc": "上传 Antigravity 认证文件后即可查看额度。",
|
||
"idle": "点击此处刷新额度",
|
||
"loading": "正在加载额度...",
|
||
"load_failed": "额度获取失败:{{message}}",
|
||
"missing_auth_index": "认证文件缺少 auth_index",
|
||
"empty_models": "暂无额度数据",
|
||
"refresh_button": "刷新额度",
|
||
"fetch_all": "获取全部"
|
||
},
|
||
"claude_quota": {
|
||
"title": "Claude 额度",
|
||
"empty_title": "暂无 Claude OAuth 认证",
|
||
"empty_desc": "使用 Claude OAuth 登录后即可查看额度。",
|
||
"idle": "点击此处刷新额度",
|
||
"loading": "正在加载额度...",
|
||
"load_failed": "额度获取失败:{{message}}",
|
||
"missing_auth_index": "认证文件缺少 auth_index",
|
||
"empty_windows": "暂无额度数据",
|
||
"refresh_button": "刷新额度",
|
||
"fetch_all": "获取全部",
|
||
"five_hour": "5 小时限额",
|
||
"seven_day": "7 天限额",
|
||
"seven_day_oauth_apps": "7 天 OAuth 应用",
|
||
"seven_day_opus": "7 天 Opus",
|
||
"seven_day_sonnet": "7 天 Sonnet",
|
||
"seven_day_cowork": "7 天 Cowork",
|
||
"iguana_necktie": "Iguana Necktie",
|
||
"extra_usage_label": "额外用量"
|
||
},
|
||
"codex_quota": {
|
||
"title": "Codex 额度",
|
||
"empty_title": "暂无 Codex 认证",
|
||
"empty_desc": "上传 Codex 认证文件后即可查看额度。",
|
||
"idle": "点击此处刷新额度",
|
||
"loading": "正在加载额度...",
|
||
"load_failed": "额度获取失败:{{message}}",
|
||
"missing_auth_index": "认证文件缺少 auth_index",
|
||
"missing_account_id": "Codex 凭证缺少 ChatGPT 账号 ID",
|
||
"empty_windows": "暂无额度数据",
|
||
"no_access": "该凭证已无 Codex 访问权限(free)。",
|
||
"refresh_button": "刷新额度",
|
||
"fetch_all": "获取全部",
|
||
"primary_window": "5 小时限额",
|
||
"secondary_window": "周限额",
|
||
"code_review_primary_window": "代码审查 5 小时限额",
|
||
"code_review_secondary_window": "代码审查周限额",
|
||
"additional_primary_window": "{{name}} 5 小时限额",
|
||
"additional_secondary_window": "{{name}} 周限额",
|
||
"plan_label": "套餐",
|
||
"plan_plus": "Plus",
|
||
"plan_team": "Team",
|
||
"plan_free": "Free"
|
||
},
|
||
"gemini_cli_quota": {
|
||
"title": "Gemini CLI 额度",
|
||
"empty_title": "暂无 Gemini CLI 认证",
|
||
"empty_desc": "上传 Gemini CLI 认证文件后即可查看额度。",
|
||
"idle": "点击此处刷新额度",
|
||
"loading": "正在加载额度...",
|
||
"load_failed": "额度获取失败:{{message}}",
|
||
"missing_auth_index": "认证文件缺少 auth_index",
|
||
"missing_project_id": "Gemini CLI 凭证缺少 Project ID",
|
||
"empty_buckets": "暂无额度数据",
|
||
"refresh_button": "刷新额度",
|
||
"fetch_all": "获取全部",
|
||
"remaining_amount": "剩余 {{count}}"
|
||
},
|
||
"vertex_import": {
|
||
"title": "Vertex JSON 登录",
|
||
"description": "上传 Google 服务账号 JSON,使用 CLI vertex-import 同步规则写入 auth-dir/vertex-<project>.json。",
|
||
"location_label": "目标区域 (可选)",
|
||
"location_placeholder": "us-central1",
|
||
"location_hint": "留空表示使用默认区域 us-central1。",
|
||
"file_label": "服务账号密钥 JSON",
|
||
"file_hint": "仅支持 Google Cloud service account key JSON 文件,私钥会自动规范化。",
|
||
"file_placeholder": "尚未选择文件",
|
||
"choose_file": "选择文件",
|
||
"import_button": "导入 Vertex 凭证",
|
||
"file_required": "请先选择 .json 凭证文件",
|
||
"success": "Vertex 凭证导入成功",
|
||
"result_title": "凭证已保存",
|
||
"result_project": "项目 ID",
|
||
"result_email": "服务账号",
|
||
"result_location": "区域",
|
||
"result_file": "存储文件"
|
||
},
|
||
"oauth_excluded": {
|
||
"title": "OAuth 模型禁用",
|
||
"description": "按提供商分列展示,点击卡片编辑或删除;支持 * 通配符,范围跟随上方的配置文件过滤标签。",
|
||
"add": "新增禁用",
|
||
"add_title": "新增提供商模型禁用",
|
||
"edit_title": "编辑 {{provider}} 的模型禁用",
|
||
"refresh": "刷新",
|
||
"refreshing": "刷新中...",
|
||
"provider_label": "提供商",
|
||
"provider_auto": "跟随当前过滤",
|
||
"provider_placeholder": "例如 gemini-cli / openai",
|
||
"provider_hint": "默认选中当前筛选的提供商,也可直接输入或选择其他名称。",
|
||
"models_label": "禁用的模型",
|
||
"models_loading": "正在加载模型列表...",
|
||
"models_unsupported": "当前 CPA 版本不支持获取模型列表。",
|
||
"models_loaded": "已加载 {{count}} 个模型,勾选要禁用的模型。",
|
||
"no_models_available": "该提供商暂无可用模型列表。",
|
||
"save": "保存/更新",
|
||
"saving": "正在保存...",
|
||
"save_success": "模型禁用已更新",
|
||
"save_failed": "更新模型禁用失败",
|
||
"delete": "删除提供商",
|
||
"delete_confirm": "确定要删除 {{provider}} 的模型禁用吗?",
|
||
"delete_success": "已删除该提供商的模型禁用",
|
||
"delete_failed": "删除模型禁用失败",
|
||
"deleting": "正在删除...",
|
||
"no_models": "未配置禁用模型",
|
||
"model_count": "禁用 {{count}} 个模型",
|
||
"list_empty_all": "暂无任何提供商的模型禁用,点击“新增禁用”创建。",
|
||
"list_empty_filtered": "当前筛选下没有禁用项,点击“新增禁用”添加。",
|
||
"disconnected": "请先连接服务器以查看模型禁用",
|
||
"load_failed": "加载模型禁用失败",
|
||
"provider_required": "请先填写提供商名称",
|
||
"scope_all": "当前范围:全局(显示所有提供商)",
|
||
"scope_provider": "当前范围:{{provider}}",
|
||
"upgrade_required": "当前 CPA 版本不支持 OAuth 模型禁用,请升级 CPA 版本",
|
||
"upgrade_required_title": "需要升级 CPA 版本",
|
||
"upgrade_required_desc": "当前服务器版本不支持获取 OAuth 模型禁用功能,请升级到最新版本的 CPA(CLI Proxy API)后重试。"
|
||
},
|
||
"oauth_model_alias": {
|
||
"title": "OAuth 模型别名",
|
||
"add": "新增别名",
|
||
"add_title": "新增提供商模型别名",
|
||
"provider_label": "提供商",
|
||
"provider_placeholder": "例如 gemini-cli / vertex",
|
||
"provider_hint": "默认选中当前筛选的提供商,也可直接输入或选择其他名称。",
|
||
"model_source_loading": "正在加载模型列表...",
|
||
"model_source_unsupported": "当前 CPA 版本不支持获取模型列表(仍可手动输入)。",
|
||
"model_source_loaded": "已加载 {{count}} 个模型,可在“原模型名称”中下拉选择;也可手动输入。留空保存将删除该提供商记录;开启“保留原名”会在保留原模型名的同时新增别名。",
|
||
"alias_label": "模型别名",
|
||
"alias_name_placeholder": "原模型名称",
|
||
"alias_placeholder": "别名 (必填)",
|
||
"alias_fork_label": "保留原名",
|
||
"add_alias": "添加别名",
|
||
"save": "保存/更新",
|
||
"save_success": "模型别名已更新",
|
||
"save_failed": "更新模型别名失败",
|
||
"delete": "删除提供商",
|
||
"delete_confirm": "确定要删除 {{provider}} 的模型别名吗?",
|
||
"delete_link_title": "取消链接",
|
||
"delete_link_confirm": "确定取消 <code>{{sourceModel}}</code>({{provider}})到别名 <code>{{alias}}</code> 的映射?",
|
||
"delete_alias_title": "删除别名",
|
||
"delete_alias_confirm": "确定删除别名 <code>{{alias}}</code> 并取消所有关联模型的映射?",
|
||
"delete_success": "已删除该提供商的模型别名",
|
||
"delete_failed": "删除模型别名失败",
|
||
"no_models": "未配置模型别名",
|
||
"model_count": "{{count}} 条别名",
|
||
"list_empty_all": "暂无任何提供商的模型别名,点击“新增别名”创建。",
|
||
"chart_title": "全部映射概览",
|
||
"diagram_providers": "提供商",
|
||
"diagram_source_models": "源模型",
|
||
"diagram_aliases": "别名",
|
||
"diagram_expand": "展开",
|
||
"diagram_collapse": "收起",
|
||
"diagram_add_alias": "添加别名",
|
||
"diagram_rename": "重命名",
|
||
"diagram_rename_alias_title": "重命名别名",
|
||
"diagram_rename_alias_label": "新别名名称",
|
||
"diagram_rename_placeholder": "输入别名名称...",
|
||
"diagram_delete_link": "取消链接 {{provider}} / {{name}}",
|
||
"diagram_delete_alias": "删除别名",
|
||
"diagram_please_enter_alias": "请输入别名名称。",
|
||
"diagram_alias_exists": "该别名已存在。",
|
||
"diagram_add_alias_title": "添加别名",
|
||
"diagram_add_alias_label": "别名名称",
|
||
"diagram_add_placeholder": "输入新别名名称...",
|
||
"diagram_rename_btn": "重命名",
|
||
"diagram_add_btn": "添加",
|
||
"diagram_settings": "设置",
|
||
"diagram_settings_title": "别名设置 — {{alias}}",
|
||
"diagram_settings_source_title": "源模型设置",
|
||
"diagram_settings_empty": "该别名暂无映射。",
|
||
"diagram_tap_hint": "触摸设备上:先点选源模型,再点选别名即可建立映射。",
|
||
"view_mode": "视图模式",
|
||
"view_mode_diagram": "概览",
|
||
"view_mode_list": "管理",
|
||
"provider_required": "请先填写提供商名称",
|
||
"upgrade_required": "当前 CPA 版本不支持模型别名功能,请升级 CPA 版本",
|
||
"upgrade_required_title": "需要升级 CPA 版本",
|
||
"upgrade_required_desc": "当前服务器版本不支持 OAuth 模型别名功能,请升级到最新版本的 CPA(CLI Proxy API)后重试。"
|
||
},
|
||
"auth_login": {
|
||
"codex_oauth_title": "Codex OAuth",
|
||
"codex_oauth_button": "开始 Codex 登录",
|
||
"codex_oauth_hint": "通过 OAuth 流程登录 Codex 服务,自动获取并保存认证文件。",
|
||
"codex_oauth_url_label": "授权链接:",
|
||
"codex_open_link": "打开链接",
|
||
"codex_copy_link": "复制链接",
|
||
"codex_oauth_status_waiting": "等待认证中...",
|
||
"codex_oauth_status_success": "认证成功!",
|
||
"codex_oauth_status_error": "认证失败:",
|
||
"codex_oauth_start_error": "启动 Codex OAuth 失败:",
|
||
"codex_oauth_polling_error": "检查认证状态失败:",
|
||
"anthropic_oauth_title": "Anthropic OAuth",
|
||
"anthropic_oauth_button": "开始 Anthropic 登录",
|
||
"anthropic_oauth_hint": "通过 OAuth 流程登录 Anthropic (Claude) 服务,自动获取并保存认证文件。",
|
||
"anthropic_oauth_url_label": "授权链接:",
|
||
"anthropic_open_link": "打开链接",
|
||
"anthropic_copy_link": "复制链接",
|
||
"anthropic_oauth_status_waiting": "等待认证中...",
|
||
"anthropic_oauth_status_success": "认证成功!",
|
||
"anthropic_oauth_status_error": "认证失败:",
|
||
"anthropic_oauth_start_error": "启动 Anthropic OAuth 失败:",
|
||
"anthropic_oauth_polling_error": "检查认证状态失败:",
|
||
"antigravity_oauth_title": "Antigravity OAuth",
|
||
"antigravity_oauth_button": "开始 Antigravity 登录",
|
||
"antigravity_oauth_hint": "通过 OAuth 流程登录 Antigravity(Google 账号)服务,自动获取并保存认证文件。",
|
||
"antigravity_oauth_url_label": "授权链接:",
|
||
"antigravity_open_link": "打开链接",
|
||
"antigravity_copy_link": "复制链接",
|
||
"antigravity_oauth_status_waiting": "等待认证中...",
|
||
"antigravity_oauth_status_success": "认证成功!",
|
||
"antigravity_oauth_status_error": "认证失败:",
|
||
"antigravity_oauth_start_error": "启动 Antigravity OAuth 失败:",
|
||
"antigravity_oauth_polling_error": "检查认证状态失败:",
|
||
"gemini_cli_oauth_title": "Gemini CLI OAuth",
|
||
"gemini_cli_oauth_button": "开始 Gemini CLI 登录",
|
||
"gemini_cli_oauth_hint": "通过 OAuth 流程登录 Google Gemini CLI 服务,自动获取并保存认证文件。",
|
||
"gemini_cli_project_id_label": "Google Cloud 项目 ID (可选):",
|
||
"gemini_cli_project_id_placeholder": "留空将自动选择第一个可用项目",
|
||
"gemini_cli_project_id_hint": "可选填写项目 ID。如不填写,系统将自动选择您账号下的第一个可用项目。",
|
||
"gemini_cli_project_id_required": "请填写 Google Cloud 项目 ID。",
|
||
"gemini_cli_oauth_url_label": "授权链接:",
|
||
"gemini_cli_open_link": "打开链接",
|
||
"gemini_cli_copy_link": "复制链接",
|
||
"gemini_cli_oauth_status_waiting": "等待认证中...",
|
||
"gemini_cli_oauth_status_success": "认证成功!",
|
||
"gemini_cli_oauth_status_error": "认证失败:",
|
||
"gemini_cli_oauth_start_error": "启动 Gemini CLI OAuth 失败:",
|
||
"gemini_cli_oauth_polling_error": "检查认证状态失败:",
|
||
"kimi_oauth_title": "Kimi OAuth",
|
||
"kimi_oauth_button": "开始 Kimi 登录",
|
||
"kimi_oauth_hint": "通过设备授权流程登录 Kimi 服务,自动获取并保存认证文件。",
|
||
"kimi_oauth_url_label": "授权链接:",
|
||
"kimi_open_link": "打开链接",
|
||
"kimi_copy_link": "复制链接",
|
||
"kimi_oauth_status_waiting": "等待认证中...",
|
||
"kimi_oauth_status_success": "认证成功!",
|
||
"kimi_oauth_status_error": "认证失败:",
|
||
"kimi_oauth_start_error": "启动 Kimi OAuth 失败:",
|
||
"kimi_oauth_polling_error": "检查认证状态失败:",
|
||
"qwen_oauth_title": "Qwen OAuth",
|
||
"qwen_oauth_button": "开始 Qwen 登录",
|
||
"qwen_oauth_hint": "通过设备授权流程登录 Qwen 服务,自动获取并保存认证文件。",
|
||
"qwen_oauth_url_label": "授权链接:",
|
||
"qwen_open_link": "打开链接",
|
||
"qwen_copy_link": "复制链接",
|
||
"qwen_oauth_status_waiting": "等待认证中...",
|
||
"qwen_oauth_status_success": "认证成功!",
|
||
"qwen_oauth_status_error": "认证失败:",
|
||
"qwen_oauth_start_error": "启动 Qwen OAuth 失败:",
|
||
"qwen_oauth_polling_error": "检查认证状态失败:",
|
||
"oauth_callback_label": "回调 URL",
|
||
"oauth_callback_placeholder": "http://localhost:1455/auth/callback?code=...&state=...",
|
||
"oauth_callback_hint": "远程浏览器模式:当授权跳转到 http://localhost:... 后,复制完整 URL 并提交到这里。",
|
||
"oauth_callback_button": "提交回调 URL",
|
||
"oauth_callback_required": "请先粘贴完整的回调 URL。",
|
||
"oauth_callback_success": "回调 URL 已提交,请继续等待认证。",
|
||
"oauth_callback_error": "提交回调 URL 失败:",
|
||
"oauth_callback_upgrade_hint": "请更新CLI Proxy API或检查连接",
|
||
"oauth_callback_status_success": "回调 URL 已提交,等待认证中...",
|
||
"oauth_callback_status_error": "回调 URL 提交失败:",
|
||
"missing_state": "无法获取认证状态参数",
|
||
"iflow_oauth_title": "iFlow OAuth",
|
||
"iflow_oauth_button": "开始 iFlow 登录",
|
||
"iflow_oauth_hint": "通过 OAuth 流程登录 iFlow 服务,自动获取并保存认证文件。",
|
||
"iflow_oauth_url_label": "授权链接:",
|
||
"iflow_open_link": "打开链接",
|
||
"iflow_copy_link": "复制链接",
|
||
"iflow_oauth_status_waiting": "等待认证中...",
|
||
"iflow_oauth_status_success": "认证成功!",
|
||
"iflow_oauth_status_error": "认证失败:",
|
||
"iflow_oauth_start_error": "启动 iFlow OAuth 失败:",
|
||
"iflow_oauth_polling_error": "检查认证状态失败:",
|
||
"iflow_cookie_title": "iFlow Cookie 登录",
|
||
"iflow_cookie_label": "Cookie 内容:",
|
||
"iflow_cookie_placeholder": "填入BXAuth值 以BXAuth=开头",
|
||
"iflow_cookie_hint": "直接提交 Cookie 以完成登录(无需打开授权链接),服务端将自动保存凭据。",
|
||
"iflow_cookie_key_hint": "提示:需在平台上先创建 Key。",
|
||
"iflow_cookie_button": "提交 Cookie 登录",
|
||
"iflow_cookie_status_success": "Cookie 登录成功,凭据已保存。",
|
||
"iflow_cookie_status_error": "Cookie 登录失败:",
|
||
"iflow_cookie_status_duplicate": "配置文件重复:",
|
||
"iflow_cookie_start_error": "提交 Cookie 登录失败:",
|
||
"iflow_cookie_config_duplicate": "检测到配置文件已存在(重复),如需重新保存请先删除原文件后重试。",
|
||
"iflow_cookie_required": "请先填写 Cookie 内容",
|
||
"iflow_cookie_result_title": "Cookie 登录结果",
|
||
"iflow_cookie_result_email": "账号",
|
||
"iflow_cookie_result_expired": "过期时间",
|
||
"iflow_cookie_result_path": "保存路径",
|
||
"iflow_cookie_result_type": "类型",
|
||
"remote_access_disabled": "远程访问不支持此登录方式,请从本地 (localhost) 访问"
|
||
},
|
||
"usage_stats": {
|
||
"title": "使用统计",
|
||
"total_requests": "总请求数",
|
||
"success_requests": "成功请求",
|
||
"failed_requests": "失败请求",
|
||
"total_tokens": "总Token数",
|
||
"cached_tokens": "缓存 Tokens",
|
||
"reasoning_tokens": "思考 Tokens",
|
||
"rpm_30m": "RPM",
|
||
"tpm_30m": "TPM",
|
||
"rate_30m": "近30分钟速率",
|
||
"model_name": "模型名称",
|
||
"model_price_settings": "模型价格设置",
|
||
"saved_prices": "已保存的价格",
|
||
"requests_trend": "请求趋势",
|
||
"tokens_trend": "Token 使用趋势",
|
||
"api_details": "API 详细统计",
|
||
"by_hour": "按小时",
|
||
"by_day": "按天",
|
||
"range_filter": "时间范围",
|
||
"range_all": "全部时间",
|
||
"range_7h": "最近7小时",
|
||
"range_24h": "最近24小时",
|
||
"range_7d": "最近7天",
|
||
"refresh": "刷新",
|
||
"export": "导出数据",
|
||
"import": "导入数据",
|
||
"export_success": "使用统计已导出",
|
||
"import_success": "导入完成:新增 {{added}},跳过 {{skipped}},总请求 {{total}},失败 {{failed}}",
|
||
"import_invalid": "导入文件格式不正确",
|
||
"chart_line_label_1": "曲线 1",
|
||
"chart_line_label_2": "曲线 2",
|
||
"chart_line_label_3": "曲线 3",
|
||
"chart_line_label_4": "曲线 4",
|
||
"chart_line_label_5": "曲线 5",
|
||
"chart_line_label_6": "曲线 6",
|
||
"chart_line_label_7": "曲线 7",
|
||
"chart_line_label_8": "曲线 8",
|
||
"chart_line_label_9": "曲线 9",
|
||
"chart_line_hidden": "不显示",
|
||
"chart_line_actions_label": "曲线数量",
|
||
"chart_line_add": "增加曲线",
|
||
"chart_line_all": "全部",
|
||
"chart_line_delete": "删除曲线",
|
||
"chart_line_hint": "最多同时显示 9 条模型曲线",
|
||
"no_data": "暂无数据",
|
||
"loading_error": "加载失败",
|
||
"api_endpoint": "API端点",
|
||
"requests_count": "请求次数",
|
||
"tokens_count": "Token数量",
|
||
"models": "模型统计",
|
||
"success_rate": "成功率",
|
||
"total_cost": "总花费",
|
||
"total_cost_hint": "基于已设置的模型单价",
|
||
"model_price_title": "模型价格",
|
||
"model_price_reset": "清除价格",
|
||
"model_price_model_label": "选择模型",
|
||
"model_price_select_placeholder": "选择模型",
|
||
"model_price_select_hint": "模型列表来自使用统计明细",
|
||
"model_price_prompt": "提示价格",
|
||
"model_price_completion": "补全价格",
|
||
"model_price_cache": "缓存价格",
|
||
"model_price_save": "保存价格",
|
||
"model_price_empty": "暂未设置任何模型价格",
|
||
"model_price_model": "模型",
|
||
"model_price_saved": "模型价格已保存",
|
||
"model_price_model_required": "请选择要设置价格的模型",
|
||
"cost_trend": "花费统计",
|
||
"cost_axis_label": "花费 ($)",
|
||
"cost_need_price": "请先设置模型价格",
|
||
"cost_need_usage": "暂无使用数据,无法计算花费",
|
||
"cost_no_data": "没有可计算的花费数据",
|
||
"credential_stats": "凭证统计",
|
||
"credential_name": "凭证",
|
||
"token_breakdown": "Token 类型分布",
|
||
"input_tokens": "输入 Tokens",
|
||
"output_tokens": "输出 Tokens",
|
||
"last_updated": "更新于"
|
||
},
|
||
"stats": {
|
||
"success": "成功",
|
||
"failure": "失败"
|
||
},
|
||
"logs": {
|
||
"title": "日志查看",
|
||
"refresh_button": "刷新日志",
|
||
"clear_button": "清空日志",
|
||
"download_button": "下载日志",
|
||
"error_log_button": "选择错误日志",
|
||
"error_logs_modal_title": "错误请求日志",
|
||
"error_logs_description": "请选择要下载的错误请求日志文件(仅在关闭请求日志时生成)。",
|
||
"error_logs_request_log_enabled": "当前已开启请求日志,按接口约定错误请求日志列表会始终为空。关闭请求日志后再刷新即可查看。",
|
||
"error_logs_empty": "暂无错误请求日志文件",
|
||
"error_logs_load_error": "加载错误日志列表失败",
|
||
"error_logs_size": "大小",
|
||
"error_logs_modified": "最后修改",
|
||
"error_logs_download": "下载",
|
||
"error_log_download_success": "错误日志下载成功",
|
||
"request_log_download_title": "下载报文",
|
||
"request_log_download_confirm": "是否要下载id为{{id}}的报文?",
|
||
"request_log_download_success": "报文下载成功",
|
||
"empty_title": "暂无日志记录",
|
||
"empty_desc": "当启用\"日志记录到文件\"功能后,日志将显示在这里",
|
||
"log_content": "日志内容",
|
||
"loading": "正在加载日志...",
|
||
"load_error": "加载日志失败",
|
||
"clear_confirm": "确定要清空所有日志吗?此操作不可恢复!",
|
||
"clear_success": "日志已清空",
|
||
"download_success": "日志下载成功",
|
||
"auto_refresh": "自动刷新",
|
||
"auto_refresh_enabled": "自动刷新已开启",
|
||
"auto_refresh_disabled": "自动刷新已关闭",
|
||
"load_more_hint": "向上滚动加载更多",
|
||
"hidden_lines": "已隐藏 {{count}} 行",
|
||
"loaded_lines": "已载入 {{count}} 行",
|
||
"filtered_lines": "已过滤 {{count}} 行",
|
||
"hide_management_logs": "屏蔽 {{prefix}} 日志",
|
||
"show_raw_logs": "显示原始日志",
|
||
"show_raw_logs_hint": "直接显示原始日志文本,方便多行复制",
|
||
"search_placeholder": "搜索日志内容或关键字",
|
||
"search_empty_title": "未找到匹配的日志",
|
||
"search_empty_desc": "尝试更换关键字或清空筛选条件。",
|
||
"double_click_copy_hint": "双击复制日志原文",
|
||
"copy_success": "已复制日志原文",
|
||
"copy_failed": "复制失败",
|
||
"lines": "行",
|
||
"removed": "已过滤",
|
||
"upgrade_required_title": "需要升级 CLI Proxy API",
|
||
"upgrade_required_desc": "当前服务器版本不支持日志查看功能,请升级到最新版本的 CLI Proxy API 以使用此功能。"
|
||
},
|
||
"config_management": {
|
||
"title": "配置面板",
|
||
"editor_title": "配置文件",
|
||
"reload": "重新加载",
|
||
"save": "保存",
|
||
"description": "通过可视化或者源文件方式编辑 config.yaml 配置文件",
|
||
"status_idle": "等待操作",
|
||
"status_loading": "加载配置中...",
|
||
"status_loaded": "配置已加载",
|
||
"status_dirty": "有未保存的更改",
|
||
"status_disconnected": "请先连接服务器以加载配置",
|
||
"status_load_failed": "加载失败",
|
||
"status_saving": "正在保存配置...",
|
||
"status_saved": "配置保存完成",
|
||
"status_save_failed": "保存失败",
|
||
"save_success": "配置已保存",
|
||
"error_yaml_not_supported": "服务器未返回 YAML 格式,请确认 /config.yaml 接口可用",
|
||
"editor_placeholder": "key: value",
|
||
"search_placeholder": "搜索配置内容...",
|
||
"search_button": "搜索",
|
||
"search_no_results": "无结果",
|
||
"search_prev": "上一个",
|
||
"search_next": "下一个",
|
||
"tabs": {
|
||
"visual": "可视化编辑",
|
||
"source": "源文件编辑"
|
||
},
|
||
"visual": {
|
||
"sections": {
|
||
"server": {
|
||
"title": "服务器配置",
|
||
"description": "基础服务器设置",
|
||
"host": "主机地址",
|
||
"port": "端口"
|
||
},
|
||
"tls": {
|
||
"title": "TLS/SSL 配置",
|
||
"description": "HTTPS 安全连接设置",
|
||
"enable": "启用 TLS",
|
||
"enable_desc": "启用 HTTPS 安全连接",
|
||
"cert": "证书文件路径",
|
||
"key": "私钥文件路径"
|
||
},
|
||
"remote": {
|
||
"title": "远程管理",
|
||
"description": "远程访问和控制面板设置",
|
||
"allow_remote": "允许远程访问",
|
||
"allow_remote_desc": "允许从其他主机访问管理接口",
|
||
"disable_panel": "禁用控制面板",
|
||
"disable_panel_desc": "禁用内置的 Web 控制面板",
|
||
"secret_key": "管理密钥",
|
||
"secret_key_placeholder": "设置管理密钥",
|
||
"panel_repo": "面板仓库"
|
||
},
|
||
"auth": {
|
||
"title": "认证配置",
|
||
"description": "API 密钥与认证文件目录设置",
|
||
"auth_dir": "认证文件目录 (auth-dir)",
|
||
"auth_dir_hint": "存放认证文件的目录路径(支持 ~)"
|
||
},
|
||
"system": {
|
||
"title": "系统配置",
|
||
"description": "调试、日志、统计与性能调试设置",
|
||
"debug": "调试模式",
|
||
"debug_desc": "启用详细的调试日志",
|
||
"commercial_mode": "商业模式",
|
||
"commercial_mode_desc": "禁用高开销中间件以支持高并发",
|
||
"logging_to_file": "写入日志文件",
|
||
"logging_to_file_desc": "将日志保存到文件",
|
||
"usage_statistics": "使用统计",
|
||
"usage_statistics_desc": "收集使用统计信息",
|
||
"logs_max_size": "日志文件大小限制 (MB)"
|
||
},
|
||
"network": {
|
||
"title": "网络配置",
|
||
"description": "代理、重试和路由设置",
|
||
"proxy_url": "代理 URL",
|
||
"request_retry": "请求重试次数",
|
||
"max_retry_interval": "最大重试间隔 (秒)",
|
||
"routing_strategy": "路由策略",
|
||
"routing_strategy_hint": "选择凭据选择策略",
|
||
"strategy_round_robin": "轮询 (Round Robin)",
|
||
"strategy_fill_first": "填充优先 (Fill First)",
|
||
"force_model_prefix": "强制模型前缀",
|
||
"force_model_prefix_desc": "未带前缀的模型请求只使用无前缀凭据",
|
||
"ws_auth": "WebSocket 认证",
|
||
"ws_auth_desc": "启用 WebSocket 连接认证 (/v1/ws)"
|
||
},
|
||
"quota": {
|
||
"title": "配额回退",
|
||
"description": "配额耗尽时的回退策略",
|
||
"switch_project": "切换项目",
|
||
"switch_project_desc": "配额耗尽时自动切换到其他项目",
|
||
"switch_preview_model": "切换预览模型",
|
||
"switch_preview_model_desc": "配额耗尽时切换到预览版本模型"
|
||
},
|
||
"streaming": {
|
||
"title": "流式传输配置",
|
||
"description": "Keepalive 与 bootstrap 重试设置",
|
||
"keepalive_seconds": "Keepalive 秒数",
|
||
"keepalive_hint": "设置为 0 或留空表示禁用 keepalive",
|
||
"bootstrap_retries": "Bootstrap 重试次数",
|
||
"bootstrap_hint": "流式传输启动时(首包前)的重试次数",
|
||
"nonstream_keepalive": "非流式 Keepalive 间隔 (秒)",
|
||
"nonstream_keepalive_hint": "非流式响应时每隔 N 秒发送空行以防止空闲超时,设置为 0 或留空表示禁用",
|
||
"disabled": "已禁用"
|
||
},
|
||
"payload": {
|
||
"title": "Payload 配置",
|
||
"description": "默认值、覆盖规则与过滤规则",
|
||
"default_rules": "默认规则",
|
||
"default_rules_desc": "当请求中未指定参数时,使用这些默认值",
|
||
"override_rules": "覆盖规则",
|
||
"override_rules_desc": "强制覆盖请求中的参数值",
|
||
"filter_rules": "过滤规则",
|
||
"filter_rules_desc": "通过 JSON Path 预过滤上游请求体,自动剔除不合规/冗余参数(Request Sanitization)"
|
||
}
|
||
},
|
||
"api_keys": {
|
||
"label": "API 密钥列表 (api-keys)",
|
||
"add": "添加 API 密钥",
|
||
"empty": "暂无 API 密钥",
|
||
"hint": "每个条目代表一个 API 密钥(与 「API 密钥管理」 页面样式一致)",
|
||
"edit_title": "编辑 API 密钥",
|
||
"add_title": "添加 API 密钥",
|
||
"input_label": "API 密钥",
|
||
"input_placeholder": "粘贴你的 API 密钥",
|
||
"input_hint": "此处仅修改本地配置文件内容,不会自动同步到 API 密钥管理接口",
|
||
"error_empty": "请输入 API 密钥",
|
||
"error_invalid": "API 密钥包含无效字符"
|
||
},
|
||
"payload_rules": {
|
||
"rule": "规则",
|
||
"models": "适用模型",
|
||
"model_name": "模型名称",
|
||
"provider_type": "供应商类型",
|
||
"add_model": "添加模型",
|
||
"params": "参数设置",
|
||
"remove_params": "移除参数",
|
||
"json_path": "JSON 路径 (如 temperature)",
|
||
"json_path_filter": "JSON 路径 (gjson/sjson),如 generationConfig.thinkingConfig.thinkingBudget",
|
||
"param_type": "参数类型",
|
||
"add_param": "添加参数",
|
||
"no_rules": "暂无规则",
|
||
"add_rule": "添加规则",
|
||
"provider_default": "默认",
|
||
"provider_openai": "OpenAI",
|
||
"provider_openai_response": "OpenAI Response",
|
||
"provider_gemini": "Gemini",
|
||
"provider_claude": "Claude",
|
||
"provider_codex": "Codex",
|
||
"provider_antigravity": "Antigravity",
|
||
"value_type_string": "字符串",
|
||
"value_type_number": "数字",
|
||
"value_type_boolean": "布尔",
|
||
"value_type_json": "JSON",
|
||
"value_string": "字符串值",
|
||
"value_number": "数字值 (如 0.7)",
|
||
"value_boolean": "true 或 false",
|
||
"value_json": "JSON 值",
|
||
"value_default": "值"
|
||
},
|
||
"common": {
|
||
"edit": "编辑",
|
||
"delete": "删除",
|
||
"cancel": "取消",
|
||
"update": "更新",
|
||
"add": "添加"
|
||
}
|
||
}
|
||
},
|
||
"quota_management": {
|
||
"title": "配额管理",
|
||
"description": "集中查看 OAuth 额度与剩余情况",
|
||
"refresh_files": "刷新认证文件",
|
||
"refresh_files_and_quota": "刷新认证文件&额度"
|
||
},
|
||
"system_info": {
|
||
"title": "管理中心信息",
|
||
"about_title": "CLI Proxy API Management Center",
|
||
"connection_status_title": "连接状态",
|
||
"api_status_label": "API 状态:",
|
||
"config_status_label": "配置状态:",
|
||
"last_update_label": "最后更新:",
|
||
"cache_data": "缓存数据",
|
||
"real_time_data": "实时数据",
|
||
"not_loaded": "未加载",
|
||
"seconds_ago": "秒前",
|
||
"models_title": "可用模型列表",
|
||
"models_desc": "展示 /models 返回的模型,并自动使用服务器保存的 API Key 进行鉴权。",
|
||
"models_loading": "正在加载可用模型...",
|
||
"models_empty": "未从 /models 获取到模型数据",
|
||
"models_error": "获取模型列表失败",
|
||
"models_count": "可用模型 {{count}} 个",
|
||
"version_check_title": "版本检查",
|
||
"version_check_desc": "调用 /latest-version 接口比对服务器版本,提示是否有可用更新。",
|
||
"version_current_label": "当前版本",
|
||
"version_latest_label": "最新版本",
|
||
"version_check_button": "检查更新",
|
||
"version_check_idle": "点击检查更新",
|
||
"version_checking": "正在检查最新版本...",
|
||
"version_update_available": "有新版本可用:{{version}}",
|
||
"version_is_latest": "当前已是最新版本",
|
||
"version_check_error": "检查更新失败",
|
||
"version_current_missing": "未获取到服务器版本号,暂无法比对",
|
||
"version_unknown": "未知",
|
||
"quick_links_title": "快捷链接",
|
||
"quick_links_desc": "访问项目仓库和文档,获取帮助和更新。",
|
||
"link_main_repo": "主程序仓库",
|
||
"link_main_repo_desc": "CLI Proxy API 核心程序源代码",
|
||
"link_webui_repo": "WebUI 仓库",
|
||
"link_webui_repo_desc": "管理中心前端界面源代码",
|
||
"link_docs": "使用教程",
|
||
"link_docs_desc": "配置指南和使用说明",
|
||
"clear_login_title": "本地登录信息",
|
||
"clear_login_desc": "清理本地保存的登录信息并退出登录,不会影响使用统计中的价格设置。",
|
||
"clear_login_button": "清理登录信息",
|
||
"clear_login_confirm": "确认清理本地登录信息并退出登录?"
|
||
},
|
||
"notification": {
|
||
"debug_updated": "调试设置已更新",
|
||
"proxy_updated": "代理设置已更新",
|
||
"proxy_cleared": "代理设置已清空",
|
||
"retry_updated": "重试设置已更新",
|
||
"quota_switch_project_updated": "项目切换设置已更新",
|
||
"quota_switch_preview_updated": "预览模型切换设置已更新",
|
||
"usage_statistics_updated": "使用统计设置已更新",
|
||
"logging_to_file_updated": "日志记录设置已更新",
|
||
"logs_max_total_size_updated": "日志容量设置已更新",
|
||
"request_log_updated": "请求日志设置已更新",
|
||
"force_model_prefix_updated": "模型前缀设置已更新",
|
||
"ws_auth_updated": "WebSocket 鉴权设置已更新",
|
||
"routing_strategy_updated": "路由策略已更新",
|
||
"login_storage_cleared": "本地登录信息已清理",
|
||
"api_key_added": "API密钥添加成功",
|
||
"api_key_updated": "API密钥更新成功",
|
||
"api_key_deleted": "API密钥删除成功",
|
||
"api_key_invalid_chars": "API密钥仅支持英文字母、数字和符号",
|
||
"gemini_key_added": "Gemini密钥添加成功",
|
||
"gemini_key_updated": "Gemini密钥更新成功",
|
||
"gemini_key_deleted": "Gemini密钥删除成功",
|
||
"gemini_multi_input_required": "请先输入至少一个Gemini密钥",
|
||
"gemini_multi_failed": "Gemini密钥批量添加失败",
|
||
"gemini_multi_summary": "Gemini批量添加完成:成功 {{success}},跳过 {{skipped}},失败 {{failed}}",
|
||
"codex_config_added": "Codex配置添加成功",
|
||
"codex_config_updated": "Codex配置更新成功",
|
||
"codex_config_deleted": "Codex配置删除成功",
|
||
"codex_base_url_required": "请填写Codex Base URL",
|
||
"claude_config_added": "Claude配置添加成功",
|
||
"claude_config_updated": "Claude配置更新成功",
|
||
"claude_config_deleted": "Claude配置删除成功",
|
||
"vertex_config_added": "Vertex配置添加成功",
|
||
"vertex_config_updated": "Vertex配置更新成功",
|
||
"vertex_config_deleted": "Vertex配置删除成功",
|
||
"vertex_base_url_required": "请填写Vertex Base URL",
|
||
"config_enabled": "配置已启用",
|
||
"config_disabled": "配置已停用",
|
||
"field_required": "必填字段不能为空",
|
||
"openai_provider_required": "请填写提供商名称和Base URL",
|
||
"openai_provider_added": "OpenAI提供商添加成功",
|
||
"openai_provider_updated": "OpenAI提供商更新成功",
|
||
"openai_provider_deleted": "OpenAI提供商删除成功",
|
||
"ampcode_updated": "Ampcode 配置已更新",
|
||
"ampcode_upstream_api_key_cleared": "Ampcode upstream API key 覆盖已清除",
|
||
"openai_model_name_required": "请填写模型名称",
|
||
"openai_test_url_required": "请先填写有效的 Base URL 以进行测试",
|
||
"openai_test_key_required": "请至少填写一个 API 密钥以进行测试",
|
||
"openai_test_model_required": "请选择要测试的模型",
|
||
"data_refreshed": "数据刷新成功",
|
||
"connection_required": "请先建立连接",
|
||
"refresh_failed": "刷新失败",
|
||
"update_failed": "更新失败",
|
||
"add_failed": "添加失败",
|
||
"delete_failed": "删除失败",
|
||
"upload_failed": "上传失败",
|
||
"download_failed": "下载失败",
|
||
"login_failed": "登录失败",
|
||
"please_enter": "请输入",
|
||
"please_fill": "请填写",
|
||
"provider_name_url": "提供商名称和Base URL",
|
||
"api_key": "API密钥",
|
||
"gemini_api_key": "Gemini API密钥",
|
||
"codex_api_key": "Codex API密钥",
|
||
"claude_api_key": "Claude API密钥",
|
||
"commercial_mode_restart_required": "商业模式开关已变更,请重启服务后生效",
|
||
"copy_failed": "复制失败",
|
||
"link_copied": "已复制"
|
||
},
|
||
"language": {
|
||
"switch": "语言",
|
||
"chinese": "中文",
|
||
"english": "English",
|
||
"russian": "Русский"
|
||
},
|
||
"theme": {
|
||
"switch": "主题",
|
||
"light": "亮色",
|
||
"dark": "暗色",
|
||
"switch_to_light": "切换到亮色模式",
|
||
"switch_to_dark": "切换到暗色模式",
|
||
"auto": "跟随系统"
|
||
},
|
||
"sidebar": {
|
||
"toggle_expand": "展开侧边栏",
|
||
"toggle_collapse": "收起侧边栏"
|
||
},
|
||
"footer": {
|
||
"api_version": "CLI Proxy API 版本",
|
||
"build_date": "构建时间",
|
||
"version": "管理中心版本",
|
||
"author": "作者"
|
||
}
|
||
}
|