Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 14 additions & 9 deletions messages/en/dashboard.json
Original file line number Diff line number Diff line change
Expand Up @@ -340,7 +340,12 @@
"sessionAge": "Session Age",
"reusedProvider": "Reused Provider",
"executeRequest": "Execute Request",
"cacheOptimizationHint": "Session reuse optimizes performance by maintaining provider affinity within the same conversation, reducing selection overhead and improving cache hit rates."
"cacheOptimizationHint": "Session reuse optimizes performance by maintaining provider affinity within the same conversation, reducing selection overhead and improving cache hit rates.",
"originDecisionTitle": "Original Selection Decision",
"originDecisionDesc": "How this provider was initially chosen for this session",
"originDecisionLoading": "Loading original decision...",
"originDecisionUnavailable": "Original decision record unavailable",
"originDecisionExpand": "View original selection"
}
},
"providerChain": {
Expand Down Expand Up @@ -1870,14 +1875,14 @@
"descriptionEnabled": "When enabled, this key will access an independent personal usage page upon login. However, it cannot modify its own key's provider group.",
"descriptionDisabled": "When disabled, the user cannot access the personal usage page UI. Instead, they will use the restricted Web UI."
},
"providerGroup": {
"label": "Provider Group",
"placeholder": "Default: default",
"selectHint": "Select the provider group(s) this key can use (default: default).",
"editHint": "Provider group cannot be changed for existing keys.",
"allGroups": "Use all groups",
"noGroupHint": "default includes providers without groupTag."
},
"providerGroup": {
"label": "Provider Group",
"placeholder": "Default: default",
"selectHint": "Select the provider group(s) this key can use (default: default).",
"editHint": "Provider group cannot be changed for existing keys.",
"allGroups": "Use all groups",
"noGroupHint": "default includes providers without groupTag."
},
"cacheTtl": {
"label": "Cache TTL Override",
"description": "Force Anthropic prompt cache TTL for requests containing cache_control.",
Expand Down
9 changes: 8 additions & 1 deletion messages/en/provider-chain.json
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,8 @@
},
"summary": {
"singleSuccess": "{total} providers, {healthy} healthy → {provider} ✓",
"sessionReuse": "Session reuse → {provider} ✓"
"sessionReuse": "Session reuse → {provider} ✓",
"originHint": "Session reuse - originally selected via {method}"
},
"description": {
"noDecisionRecord": "No decision record",
Expand Down Expand Up @@ -213,5 +214,11 @@
"strictBlockSelectorError": "Strict mode: endpoint selector encountered an error, provider skipped without fallback",
"vendorTypeAllTimeout": "Vendor-Type All Endpoints Timeout (524)",
"vendorTypeAllTimeoutNote": "All endpoints for this vendor-type timed out. Vendor-type circuit breaker triggered."
},
"selectionMethods": {
"session_reuse": "Session Reuse",
"weighted_random": "Weighted Random",
"group_filtered": "Group Filtered",
"fail_open_fallback": "Fail-Open Fallback"
}
}
140 changes: 40 additions & 100 deletions messages/ja/dashboard.json
Original file line number Diff line number Diff line change
Expand Up @@ -340,7 +340,12 @@
"sessionAge": "セッション経過時間",
"reusedProvider": "再利用プロバイダー",
"executeRequest": "リクエスト実行",
"cacheOptimizationHint": "セッション再利用は、同じ会話内でプロバイダーの親和性を維持することでパフォーマンスを最適化し、選択オーバーヘッドを削減してキャッシュヒット率を向上させます。"
"cacheOptimizationHint": "セッション再利用は、同じ会話内でプロバイダーの親和性を維持することでパフォーマンスを最適化し、選択オーバーヘッドを削減してキャッシュヒット率を向上させます。",
"originDecisionTitle": "元の選択決定",
"originDecisionDesc": "このセッションでプロバイダーが最初に選択された理由",
"originDecisionLoading": "元の決定を読み込み中...",
"originDecisionUnavailable": "元の決定記録は利用できません",
"originDecisionExpand": "元の選択を表示"
}
},
"providerChain": {
Expand Down Expand Up @@ -1051,45 +1056,56 @@
"load": "負荷"
},
"timeRange": {
"label": "時間範囲",
"15min": "15分",
"1h": "1時間",
"6h": "6時間",
"24h": "24時間",
"7d": "7日"
"7d": "7日間",
"last15min": "過去15分",
"last1h": "過去1時間",
"last6h": "過去6時間",
"last24h": "過去24時間",
"last7d": "過去7日間",
"custom": "カスタム"
},
"laneChart": {
"title": "プロバイダー可用性タイムライン",
"noData": "データがありません",
"noData": "データなし",
"requests": "{count} リクエスト",
"availability": "{value}% 可用",
"noRequests": "リクエストなし"
"availability": "可用性 {value}%",
"noRequests": "リクエストなし",
"denseData": "高密度",
"sparseData": "低密度",
"latency": "レイテンシ"
},
"latencyChart": {
"title": "遅延分布",
"title": "レイテンシ分布",
"p50": "P50",
"p95": "P95",
"p99": "P99",
"noData": "遅延データがありません"
"noData": "レイテンシデータなし"
},
"latencyCurve": {
"title": "遅延トレンド",
"noData": "遅延データがありません",
"title": "レイテンシトレンド",
"noData": "レイテンシデータなし",
"avg": "平均",
"min": "最小",
"max": "最大",
"latency": "遅延"
"latency": "レイテンシ"
},
"terminal": {
"title": "プローブログ",
"live": "LIVE",
"live": "ライブ",
"download": "ログをダウンロード",
"noLogs": "プローブログがありません",
"noLogs": "プローブログなし",
"manual": "手動",
"auto": "自動",
"filterPlaceholder": "ログをフィルター..."
},
"probeGrid": {
"noEndpoints": "エンドポイントが設定されていません",
"title": "エンドポイントステータス",
"noEndpoints": "エンドポイント未設定",
"lastProbe": "最終プローブ",
"status": {
"unknown": "不明",
Expand All @@ -1105,13 +1121,21 @@
"low": "低",
"medium": "中",
"high": "高",
"lowTooltip": "{count} 件未満のリクエスト。データが代表的でない可能性があります。",
"mediumTooltip": "中程度のリクエスト量。データは比較的信頼できます。",
"highTooltip": "高いリクエスト量。データは信頼できます。"
"lowTooltip": "リクエスト数が {count} 未満です。データが代表的でない可能性があります。",
"mediumTooltip": "リクエスト量は適度です。データは比較的信頼できます。",
"highTooltip": "リクエスト量が十分です。データは信頼できます。"
},
"actions": {
"refresh": "更新",
"refreshing": "更新中...",
"autoRefresh": "自動更新",
"stopAutoRefresh": "自動更新を停止",
"viewDetails": "詳細を表示",
"testProvider": "プロバイダーをテスト",
"retry": "再試行",
"probeNow": "今すぐプローブ",
"probing": "プローブ中...",
"probeAll": "すべてプローブ",
"probeSuccess": "プローブ成功",
"probeFailed": "プローブ失敗"
},
Expand All @@ -1136,20 +1160,6 @@
"lastRequest": "最終リクエスト",
"requestCount": "リクエスト数"
},
"timeRange": {
"label": "時間範囲",
"15min": "15分",
"1h": "1時間",
"6h": "6時間",
"24h": "24時間",
"7d": "7日間",
"last15min": "過去15分",
"last1h": "過去1時間",
"last6h": "過去6時間",
"last24h": "過去24時間",
"last7d": "過去7日間",
"custom": "カスタム"
},
"filters": {
"provider": "プロバイダー",
"allProviders": "すべてのプロバイダー",
Expand Down Expand Up @@ -1187,20 +1197,6 @@
"greenCount": "成功リクエスト",
"redCount": "失敗リクエスト"
},
"actions": {
"refresh": "更新",
"refreshing": "更新中...",
"autoRefresh": "自動更新",
"stopAutoRefresh": "自動更新を停止",
"viewDetails": "詳細を表示",
"testProvider": "プロバイダーをテスト",
"retry": "再試行",
"probeNow": "今すぐプローブ",
"probing": "プローブ中...",
"probeAll": "すべてプローブ",
"probeSuccess": "プローブ成功",
"probeFailed": "プローブ失敗"
},
"states": {
"loading": "読み込み中...",
"error": "読み込み失敗",
Expand Down Expand Up @@ -1251,62 +1247,6 @@
"probeSuccess": "プローブ成功",
"probeFailed": "プローブ失敗"
},
"laneChart": {
"title": "プロバイダー可用性タイムライン",
"noData": "データなし",
"requests": "{count} リクエスト",
"availability": "可用性 {value}%",
"noRequests": "リクエストなし",
"denseData": "高密度",
"sparseData": "低密度",
"latency": "レイテンシ"
},
"latencyChart": {
"title": "レイテンシ分布",
"p50": "P50",
"p95": "P95",
"p99": "P99",
"noData": "レイテンシデータなし"
},
"latencyCurve": {
"title": "レイテンシトレンド",
"noData": "レイテンシデータなし",
"avg": "平均",
"min": "最小",
"max": "最大",
"latency": "レイテンシ"
},
"terminal": {
"title": "プローブログ",
"live": "ライブ",
"download": "ログをダウンロード",
"noLogs": "プローブログなし",
"manual": "手動",
"auto": "自動",
"filterPlaceholder": "ログをフィルター..."
},
"probeGrid": {
"title": "エンドポイントステータス",
"noEndpoints": "エンドポイント未設定",
"lastProbe": "最終プローブ",
"status": {
"unknown": "不明",
"healthy": "正常",
"unhealthy": "異常"
}
},
"endpoint": {
"selectVendor": "ベンダーを選択",
"selectType": "タイプを選択"
},
"confidence": {
"low": "低",
"medium": "中",
"high": "高",
"lowTooltip": "リクエスト数が {count} 未満です。データが代表的でない可能性があります。",
"mediumTooltip": "リクエスト量は適度です。データは比較的信頼できます。",
"highTooltip": "リクエスト量が十分です。データは信頼できます。"
},
"toast": {
"refreshSuccess": "可用性データを更新しました",
"refreshFailed": "更新に失敗しました。再試行してください"
Expand Down
9 changes: 8 additions & 1 deletion messages/ja/provider-chain.json
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,8 @@
},
"summary": {
"singleSuccess": "{total}個のプロバイダー、{healthy}個正常 → {provider} ✓",
"sessionReuse": "セッション再利用 → {provider} ✓"
"sessionReuse": "セッション再利用 → {provider} ✓",
"originHint": "セッション再利用 - 元は {method} で選択"
},
"description": {
"noDecisionRecord": "決定記録なし",
Expand Down Expand Up @@ -213,5 +214,11 @@
"strictBlockSelectorError": "厳格モード:エンドポイントセレクターでエラーが発生したため、フォールバックなしでプロバイダーをスキップ",
"vendorTypeAllTimeout": "ベンダータイプ全エンドポイントタイムアウト(524)",
"vendorTypeAllTimeoutNote": "このベンダータイプの全エンドポイントがタイムアウトしました。ベンダータイプサーキットブレーカーが発動しました。"
},
"selectionMethods": {
"session_reuse": "セッション再利用",
"weighted_random": "重み付きランダム",
"group_filtered": "グループフィルタ",
"fail_open_fallback": "フェイルオープンフォールバック"
}
}
43 changes: 20 additions & 23 deletions messages/ru/dashboard.json
Original file line number Diff line number Diff line change
Expand Up @@ -340,7 +340,12 @@
"sessionAge": "Возраст сессии",
"reusedProvider": "Повторно используемый провайдер",
"executeRequest": "Выполнить запрос",
"cacheOptimizationHint": "Повторное использование сессии оптимизирует производительность, поддерживая привязку к провайдеру в рамках одного разговора, снижая накладные расходы на выбор и повышая частоту попаданий в кэш."
"cacheOptimizationHint": "Повторное использование сессии оптимизирует производительность, поддерживая привязку к провайдеру в рамках одного разговора, снижая накладные расходы на выбор и повышая частоту попаданий в кэш.",
"originDecisionTitle": "Исходное решение выбора",
"originDecisionDesc": "Как провайдер был изначально выбран для этой сессии",
"originDecisionLoading": "Загрузка исходного решения...",
"originDecisionUnavailable": "Запись исходного решения недоступна",
"originDecisionExpand": "Просмотр исходного выбора"
}
},
"providerChain": {
Expand Down Expand Up @@ -1123,12 +1128,12 @@
"highTooltip": "Высокий объём запросов. Данные надёжны."
},
"actions": {
"retry": "Повторить",
"probeNow": "Проверить сейчас",
"probing": "Проверка...",
"probeAll": "Проверить все",
"probeSuccess": "Проверка успешна",
"probeFailed": "Проверка не удалась"
"refresh": "Обновить",
"refreshing": "Обновление...",
"autoRefresh": "Автообновление",
"stopAutoRefresh": "Остановить автообновление",
"viewDetails": "Подробнее",
"testProvider": "Тестировать провайдера"
},
"status": {
"green": "Здоров",
Expand Down Expand Up @@ -1188,14 +1193,6 @@
"greenCount": "Успешные запросы",
"redCount": "Неудачные запросы"
},
"actions": {
"refresh": "Обновить",
"refreshing": "Обновление...",
"autoRefresh": "Автообновление",
"stopAutoRefresh": "Остановить автообновление",
"viewDetails": "Подробнее",
"testProvider": "Тестировать провайдера"
},
"states": {
"loading": "Загрузка...",
"error": "Ошибка загрузки",
Expand Down Expand Up @@ -1862,14 +1859,14 @@
"descriptionEnabled": "При включении этот ключ будет использовать независимую страницу личного использования при входе. Однако он не может изменять группу провайдеров собственного ключа.",
"descriptionDisabled": "При отключении пользователь не сможет получить доступ к странице личного использования. Вместо этого будет использоваться ограниченный Web UI."
},
"providerGroup": {
"label": "Группа провайдеров",
"placeholder": "По умолчанию: default",
"selectHint": "Выберите группы провайдеров, доступные для этого ключа",
"editHint": "Группа провайдеров существующего ключа не может быть изменена",
"allGroups": "Использовать все группы",
"noGroupHint": "default включает провайдеров без groupTag."
},
"providerGroup": {
"label": "Группа провайдеров",
"placeholder": "По умолчанию: default",
"selectHint": "Выберите группы провайдеров, доступные для этого ключа",
"editHint": "Группа провайдеров существующего ключа не может быть изменена",
"allGroups": "Использовать все группы",
"noGroupHint": "default включает провайдеров без groupTag."
},
"cacheTtl": {
"label": "Переопределение Cache TTL",
"description": "Принудительно установить Anthropic prompt cache TTL для запросов с cache_control.",
Expand Down
9 changes: 8 additions & 1 deletion messages/ru/provider-chain.json
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,8 @@
},
"summary": {
"singleSuccess": "{total} провайдеров, {healthy} работоспособных → {provider} ✓",
"sessionReuse": "Повторное использование сессии → {provider} ✓"
"sessionReuse": "Повторное использование сессии → {provider} ✓",
"originHint": "Повторное использование сессии - изначально выбрано через {method}"
},
"description": {
"noDecisionRecord": "Нет записей решений",
Expand Down Expand Up @@ -213,5 +214,11 @@
"strictBlockSelectorError": "Строгий режим: ошибка селектора конечных точек, провайдер пропущен без отката",
"vendorTypeAllTimeout": "Тайм-аут всех конечных точек типа поставщика (524)",
"vendorTypeAllTimeoutNote": "Все конечные точки этого типа поставщика превысили тайм-аут. Активирован размыкатель типа поставщика."
},
"selectionMethods": {
"session_reuse": "Повторное использование сессии",
"weighted_random": "Взвешенный случайный",
"group_filtered": "Фильтрация по группе",
"fail_open_fallback": "Резервный вариант при сбое"
}
}
Loading