diff --git a/controller/misc.go b/controller/misc.go index 77cea1329f6..a91efec7bce 100644 --- a/controller/misc.go +++ b/controller/misc.go @@ -187,6 +187,8 @@ func GetBanner(c *gin.Context) { "message": "", "data": gin.H{ "content": common.OptionMap["BannerContent"], + "type": common.OptionMap["BannerType"], + "dismissible": common.OptionMap["BannerDismissible"], "mode": common.OptionMap["BannerMode"], "preset": common.OptionMap["BannerPreset"], "colors": common.OptionMap["BannerColors"], diff --git a/controller/option.go b/controller/option.go index 611597fd9c7..456dfb0576b 100644 --- a/controller/option.go +++ b/controller/option.go @@ -206,6 +206,37 @@ func UpdateOption(c *gin.Context) { }) return } + case "BannerType": + switch option.Value { + case "notice", "maintenance", "important", "warning", "outage", "success": + default: + c.JSON(http.StatusOK, gin.H{ + "success": false, + "message": "invalid banner type", + }) + return + } + case "BannerDismissible": + if option.Value != "true" && option.Value != "false" { + c.JSON(http.StatusOK, gin.H{ + "success": false, + "message": "invalid banner dismissible value", + }) + return + } + case "BannerPreset": + if option.Value != "" { + switch option.Value { + case "notice-glass", "maintenance-stripe", "important-alert", "warning-soft", "incident-critical", "success-soft", + "flow", "pulse", "shimmer", "rainbow", "aurora", "spotlight", "scanline", "solid", "gradient": + default: + c.JSON(http.StatusOK, gin.H{ + "success": false, + "message": "invalid banner preset", + }) + return + } + } case "GroupRatio": err = ratio_setting.CheckGroupRatio(option.Value.(string)) if err != nil { diff --git a/model/option.go b/model/option.go index 216ed1c7f64..1e290bd8a87 100644 --- a/model/option.go +++ b/model/option.go @@ -65,6 +65,8 @@ func InitOptionMap() { common.OptionMap["SMTPForceAuthLogin"] = strconv.FormatBool(common.SMTPForceAuthLogin) common.OptionMap["Notice"] = "" common.OptionMap["BannerContent"] = "" + common.OptionMap["BannerType"] = "notice" + common.OptionMap["BannerDismissible"] = "true" common.OptionMap["BannerMode"] = "" common.OptionMap["BannerPreset"] = "" common.OptionMap["BannerColors"] = "" diff --git a/web/default/src/components/layout/components/authenticated-layout.tsx b/web/default/src/components/layout/components/authenticated-layout.tsx index 2c83f5230d5..7cf25db57f0 100644 --- a/web/default/src/components/layout/components/authenticated-layout.tsx +++ b/web/default/src/components/layout/components/authenticated-layout.tsx @@ -27,11 +27,16 @@ export function AuthenticatedLayout(props: AuthenticatedLayoutProps) { className={cn( '@container/content', 'h-svh', + 'overflow-hidden', 'peer-data-[variant=inset]:h-[calc(100svh-(var(--spacing)*4))]' )} > - - {props.children ?? } +
+ +
+ {props.children ?? } +
+
diff --git a/web/default/src/components/top-banner.tsx b/web/default/src/components/top-banner.tsx index 96d34066ccc..2986573062f 100644 --- a/web/default/src/components/top-banner.tsx +++ b/web/default/src/components/top-banner.tsx @@ -1,9 +1,119 @@ -import { useEffect, useRef, useState } from 'react' +import { useEffect, useLayoutEffect, useRef, useState } from 'react' import { useQuery } from '@tanstack/react-query' -import { X } from 'lucide-react' +import { + AlertTriangle, + CheckCircle2, + Megaphone, + ShieldAlert, + Siren, + Wrench, + X, + type LucideIcon, +} from 'lucide-react' +import { useTranslation } from 'react-i18next' import { getBanner } from '@/lib/api' import { useBannerStore } from '@/stores/banner-store' +type BannerMeta = { + labelKey: string + icon: LucideIcon + className: string +} + +const bannerTypes: Record = { + notice: { + labelKey: 'Notice', + icon: Megaphone, + className: 'top-banner-notice', + }, + maintenance: { + labelKey: 'Maintenance', + icon: Wrench, + className: 'top-banner-maintenance', + }, + important: { + labelKey: 'Important Notice', + icon: ShieldAlert, + className: 'top-banner-important', + }, + warning: { + labelKey: 'Warning', + icon: AlertTriangle, + className: 'top-banner-warning', + }, + outage: { + labelKey: 'Incident', + icon: Siren, + className: 'top-banner-outage', + }, + success: { + labelKey: 'Success', + icon: CheckCircle2, + className: 'top-banner-success', + }, +} + +type BannerType = 'notice' | 'maintenance' | 'important' | 'warning' | 'outage' | 'success' +type BannerSpeed = 'slow' | 'medium' | 'fast' + +const allowedBannerPresets = new Set([ + 'notice-glass', + 'maintenance-stripe', + 'important-alert', + 'warning-soft', + 'incident-critical', + 'success-soft', + 'flow', + 'pulse', + 'shimmer', + 'rainbow', + 'aurora', + 'spotlight', + 'scanline', + 'solid', + 'gradient', +]) + +const fixedBannerPresetTypes: Record = { + 'notice-glass': 'notice', + 'maintenance-stripe': 'maintenance', + 'important-alert': 'important', + 'warning-soft': 'warning', + 'incident-critical': 'outage', + 'success-soft': 'success', +} + +const colorEditableBannerPresets = new Set([ + 'flow', + 'pulse', + 'shimmer', + 'rainbow', + 'aurora', + 'spotlight', + 'scanline', + 'solid', + 'gradient', +]) + +function normalizeBannerSpeed(value: string): BannerSpeed { + return value === 'slow' || value === 'fast' ? value : 'medium' +} + +function getPresetClassName(preset: string, speed: string): string { + if (!allowedBannerPresets.has(preset)) return '' + return `banner-preset-${preset} banner-speed-${normalizeBannerSpeed(speed)}` +} + +function normalizeBannerType(value: string): BannerType { + return value in bannerTypes ? (value as BannerType) : 'notice' +} + +function normalizeBoolean(value: string | undefined, fallback = true): boolean { + if (value === 'true') return true + if (value === 'false') return false + return fallback +} + function hashString(input: string): string { let hash = 0 if (!input) return '0' @@ -25,18 +135,17 @@ function sanitizeCSS(css: string): string { function buildPresetStyle(preset: string, colors: string): React.CSSProperties { const colorList = colors.split(',').map((c) => c.trim()).filter(Boolean) - if (colorList.length === 0) return { backgroundColor: 'hsl(var(--primary))' } - - if (preset === 'solid' || colorList.length === 1) { - return { backgroundColor: colorList[0] } - } + if (colorList.length === 0) return {} - const gradient = `linear-gradient(to right, ${colorList.join(', ')})` - if (preset === 'gradient') { - return { background: gradient, backgroundSize: '100% 100%' } - } - - return { background: gradient, backgroundSize: '400% 400%' } + return colorList.slice(0, 4).reduce( + (style, color, index) => ({ + ...style, + [`--banner-color-${index + 1}`]: color, + }), + preset === 'solid' + ? { '--banner-color-2': colorList[0] } as React.CSSProperties + : {} + ) } function buildVisualCSS(config: string): string { @@ -76,7 +185,58 @@ function buildVisualCSS(config: string): string { } } +function scopeCustomSelector(selector: string, scope: string): string { + const trimmed = selector.trim() + if (!trimmed) return '' + if (trimmed.includes('&')) return trimmed.replace(/&/g, scope) + if (trimmed.startsWith('.top-banner')) return trimmed.replace(/^\.top-banner/, scope) + if (trimmed.startsWith(':')) return `${scope}${trimmed}` + return `${scope} ${trimmed}` +} + +function buildScopedCustomCSS(css: string): string { + const sanitized = sanitizeCSS(css).trim() + const scope = '.top-banner[data-banner-mode="code"]' + if (!sanitized) return '' + if (!sanitized.includes('{')) { + return `${scope} { ${sanitized} }` + } + + let source = sanitized + const output: string[] = [] + const firstBrace = source.indexOf('{') + const firstHeader = source.slice(0, firstBrace) + const selectorStart = firstHeader.lastIndexOf('\n') + 1 + const leadingDeclarations = firstHeader.slice(0, selectorStart).trim() + + if (leadingDeclarations.includes(':')) { + output.push(`${scope} { ${leadingDeclarations} }`) + source = source.slice(selectorStart) + } + + source = source.replace(/@keyframes\s+[^{]+\{[\s\S]*?\n\}/g, (match) => { + output.push(match) + return '' + }) + + source.replace(/([^{}]+)\{([^{}]*)\}/g, (_match, selectorText: string, body: string) => { + const scopedSelector = selectorText + .split(',') + .map((selector) => scopeCustomSelector(selector, scope)) + .filter(Boolean) + .join(', ') + + if (scopedSelector && body.trim()) { + output.push(`${scopedSelector} { ${body.trim()} }`) + } + return '' + }) + + return output.join('\n') +} + export function TopBanner() { + const { t } = useTranslation() const { data: bannerResponse } = useQuery({ queryKey: ['banner'], queryFn: getBanner, @@ -85,13 +245,19 @@ export function TopBanner() { const { dismissBanner, isBannerDismissed } = useBannerStore() const containerRef = useRef(null) - const textRef = useRef(null) + const measureRef = useRef(null) const styleRef = useRef(null) const [shouldScroll, setShouldScroll] = useState(false) const content = bannerResponse?.success ? (bannerResponse.data?.content || '').trim() : '' + const type = bannerResponse?.success + ? normalizeBannerType((bannerResponse.data?.type || 'notice').trim()) + : 'notice' + const dismissible = bannerResponse?.success + ? normalizeBoolean((bannerResponse.data?.dismissible || 'true').trim(), true) + : true const mode = bannerResponse?.success ? (bannerResponse.data?.mode || '').trim() : '' @@ -116,24 +282,52 @@ export function TopBanner() { const contentHash = hashString(content) - useEffect(() => { - if (!content || !containerRef.current || !textRef.current) { + useLayoutEffect(() => { + if (!content || !containerRef.current || !measureRef.current) { setShouldScroll(false) return } - const containerWidth = containerRef.current.clientWidth - const textWidth = textRef.current.offsetWidth - setShouldScroll(textWidth > containerWidth) - }, [content]) + + const container = containerRef.current + const measureNode = measureRef.current + let frame = 0 + let disposed = false + + const measureOverflow = () => { + if (disposed) return + const containerWidth = container.clientWidth + const textWidth = measureNode.scrollWidth + setShouldScroll(textWidth > containerWidth) + } + + const scheduleMeasure = () => { + cancelAnimationFrame(frame) + frame = requestAnimationFrame(measureOverflow) + } + + measureOverflow() + + const resizeObserver = new ResizeObserver(scheduleMeasure) + resizeObserver.observe(container) + resizeObserver.observe(measureNode) + + document.fonts?.ready.then(scheduleMeasure).catch(() => {}) + + return () => { + disposed = true + cancelAnimationFrame(frame) + resizeObserver.disconnect() + } + }, [content, type, t]) useEffect(() => { if (!content) return let css = '' if (mode === 'visual' && visualConfig) { - css = sanitizeCSS(buildVisualCSS(visualConfig)) + css = `.top-banner { ${sanitizeCSS(buildVisualCSS(visualConfig))} }` } else if (mode === 'code' && customCSS) { - css = sanitizeCSS(customCSS) + css = buildScopedCustomCSS(customCSS) } if (styleRef.current) { @@ -143,7 +337,7 @@ export function TopBanner() { if (css) { const styleEl = document.createElement('style') - styleEl.textContent = `.top-banner { ${css} }` + styleEl.textContent = css document.head.appendChild(styleEl) styleRef.current = styleEl } @@ -158,55 +352,80 @@ export function TopBanner() { if (!content) return null - if (isBannerDismissed(contentHash)) return null + if (dismissible && isBannerDismissed(contentHash)) return null const fontColorStyle: React.CSSProperties = fontColor ? { color: fontColor } - : { color: 'hsl(var(--primary-foreground))' } + : {} const presetClass = mode === 'preset' && preset - ? `banner-preset-${preset} banner-speed-${speed}` + ? getPresetClassName(preset, speed) : '' + const resolvedType = mode === 'preset' && fixedBannerPresetTypes[preset] + ? fixedBannerPresetTypes[preset] + : type + const bannerMeta = bannerTypes[resolvedType] + const BannerIcon = bannerMeta.icon + const bannerLabel = t(bannerMeta.labelKey) + const bgStyle: React.CSSProperties = (() => { - if (mode === 'preset') { + if (mode === 'preset' && colorEditableBannerPresets.has(preset) && colors.trim()) { return buildPresetStyle(preset, colors) } - if (!mode) { - return { backgroundColor: 'hsl(var(--primary))' } - } return {} })() return (
+ + +
+ {shouldScroll ? (
- + + {bannerLabel} + / + {content} + + - {content}
) : (
- {content} + + {bannerLabel} + / + {content} +
)}
- + {dismissible && ( + + )}
) } diff --git a/web/default/src/features/system-settings/general/index.tsx b/web/default/src/features/system-settings/general/index.tsx index a996619d405..cd85c1b4861 100644 --- a/web/default/src/features/system-settings/general/index.tsx +++ b/web/default/src/features/system-settings/general/index.tsx @@ -12,6 +12,8 @@ const defaultGeneralSettings: GeneralSettings = { 'theme.frontend': 'default', Notice: '', BannerContent: '', + BannerType: 'notice', + BannerDismissible: 'true', BannerMode: '', BannerPreset: '', BannerColors: '', diff --git a/web/default/src/features/system-settings/general/section-registry.tsx b/web/default/src/features/system-settings/general/section-registry.tsx index 127f9f1ddb9..2ae07c36e3d 100644 --- a/web/default/src/features/system-settings/general/section-registry.tsx +++ b/web/default/src/features/system-settings/general/section-registry.tsx @@ -20,6 +20,8 @@ const GENERAL_SECTIONS = [ }, Notice: settings.Notice, BannerContent: settings.BannerContent, + BannerType: settings.BannerType, + BannerDismissible: settings.BannerDismissible, BannerMode: settings.BannerMode, BannerPreset: settings.BannerPreset, BannerColors: settings.BannerColors, diff --git a/web/default/src/features/system-settings/general/system-info-section.tsx b/web/default/src/features/system-settings/general/system-info-section.tsx index 6bf3cd0da00..6c934072da9 100644 --- a/web/default/src/features/system-settings/general/system-info-section.tsx +++ b/web/default/src/features/system-settings/general/system-info-section.tsx @@ -1,8 +1,10 @@ import * as z from 'zod' +import { useEffect } from 'react' import type { Resolver } from 'react-hook-form' import { zodResolver } from '@hookform/resolvers/zod' import { RotateCcw } from 'lucide-react' import { useTranslation } from 'react-i18next' +import { cn } from '@/lib/utils' import { Button } from '@/components/ui/button' import { Form, @@ -17,7 +19,10 @@ import { Input } from '@/components/ui/input' import { Select, SelectContent, + SelectGroup, SelectItem, + SelectLabel, + SelectSeparator, SelectTrigger, SelectValue, } from '@/components/ui/select' @@ -30,7 +35,7 @@ import { CardHeader, CardTitle, } from '@/components/ui/card' -import { Slider } from '@/components/ui/slider' +import { Switch } from '@/components/ui/switch' import { FormDirtyIndicator } from '../components/form-dirty-indicator' import { FormNavigationGuard } from '../components/form-navigation-guard' import { SettingsSection } from '../components/settings-section' @@ -45,7 +50,7 @@ const pulseTemplate = `animation: banner-pulse 2s ease-in-out infinite;` const shimmerTemplate = `position: relative; overflow: hidden; -.banner-preset-shimmer::after { +&::after { content: ''; position: absolute; top: 0; @@ -58,12 +63,67 @@ overflow: hidden; const rainbowTemplate = `animation: banner-rainbow 8s linear infinite;` +const bannerPaletteGroups = [ + { + nameKey: 'Professional', + colors: ['#0f172a', '#1d4ed8', '#2563eb', '#0891b2', '#0f766e', '#047857'], + }, + { + nameKey: 'Warm', + colors: ['#f59e0b', '#ea580c', '#dc2626', '#be123c', '#9333ea', '#7c3aed'], + }, + { + nameKey: 'Soft', + colors: ['#eff6ff', '#ecfeff', '#ecfdf5', '#fff7ed', '#fff1f2', '#f8fafc'], + }, + { + nameKey: 'Dark', + colors: ['#020617', '#111827', '#1f2937', '#312e81', '#450a0a', '#064e3b'], + }, +] + +const fixedBannerPresets = new Set([ + 'notice-glass', + 'maintenance-stripe', + 'important-alert', + 'warning-soft', + 'incident-critical', + 'success-soft', +]) + +const bannerTextColorPalette = [ + '#ffffff', + '#f8fafc', + '#e5e7eb', + '#111827', + '#020617', + '#2563eb', + '#047857', + '#b45309', + '#dc2626', + '#7c3aed', +] + +function parseBannerColors(value: string): string[] { + return value.split(',').map((color) => color.trim()).filter(Boolean) +} + +function stringifyBannerColors(colors: string[]): string { + return colors.filter(Boolean).join(',') +} + +function normalizeHexColor(value: string, fallback = '#2563eb'): string { + return /^#[0-9a-f]{6}$/i.test(value) ? value : fallback +} + const _systemInfoSchema = z.object({ theme: z.object({ frontend: z.enum(['default', 'classic']), }), Notice: z.string().optional(), BannerContent: z.string().optional(), + BannerType: z.string().optional(), + BannerDismissible: z.string().optional(), BannerMode: z.string().optional(), BannerPreset: z.string().optional(), BannerColors: z.string().optional(), @@ -105,6 +165,8 @@ export function SystemInfoSection({ defaultValues }: SystemInfoSectionProps) { }, Notice: normalizeValue(defaultValues.Notice), BannerContent: normalizeValue(defaultValues.BannerContent), + BannerType: normalizeValue(defaultValues.BannerType) || 'notice', + BannerDismissible: normalizeValue(defaultValues.BannerDismissible) || 'true', BannerMode: normalizeValue(defaultValues.BannerMode), BannerPreset: normalizeValue(defaultValues.BannerPreset), BannerColors: normalizeValue(defaultValues.BannerColors), @@ -130,6 +192,8 @@ export function SystemInfoSection({ defaultValues }: SystemInfoSectionProps) { }), Notice: z.string().optional(), BannerContent: z.string().optional(), + BannerType: z.string().optional(), + BannerDismissible: z.string().optional(), BannerMode: z.string().optional(), BannerPreset: z.string().optional(), BannerColors: z.string().optional(), @@ -171,9 +235,18 @@ export function SystemInfoSection({ defaultValues }: SystemInfoSectionProps) { }) } }, - }) + }) - const bannerMode = form.watch('BannerMode') || 'preset' + const rawBannerMode = form.watch('BannerMode') || 'preset' + const bannerMode = rawBannerMode === 'code' ? 'code' : 'preset' + const bannerPreset = form.watch('BannerPreset') || 'flow' + const showBannerPalette = bannerMode === 'preset' && !fixedBannerPresets.has(bannerPreset) + + useEffect(() => { + if (rawBannerMode !== bannerMode) { + form.setValue('BannerMode', bannerMode, { shouldDirty: true }) + } + }, [bannerMode, form, rawBannerMode]) return ( <> @@ -267,6 +340,58 @@ export function SystemInfoSection({ defaultValues }: SystemInfoSectionProps) { )} /> + ( + + {t('Banner Type')} + + + {t('Choose the banner category. Each category uses a matching visual style.')} + + + + )} + /> + + ( + +
+ + {t('Banner Dismissible')} + + + {t('Allow users to close this banner. If disabled, the close button is hidden.')} + +
+ + field.onChange(String(checked))} + /> + +
+ )} + /> + {t('Preset')} - - {t('Visual')} - {t('Code')} @@ -313,14 +435,35 @@ export function SystemInfoSection({ defaultValues }: SystemInfoSectionProps) { - {t('Flowing Gradient')} - {t('Pulse')} - {t('Shimmer')} - {t('Rainbow')} - {t('Solid Color')} - {t('Static Gradient')} + + {t('Notification Presets')} + {t('Notice Glass')} + {t('Maintenance Stripe')} + {t('Important Alert')} + {t('Warning Soft')} + {t('Incident Critical')} + {t('Success Soft')} + + + + {t('Animation Presets')} + {t('Flowing Gradient')} + {t('Pulse')} + {t('Shimmer')} + {t('Rainbow')} + {t('Aurora')} + {t('Spotlight')} + {t('Scanline')} + {t('Solid Color')} + {t('Static Gradient')} + + + {fixedBannerPresets.has(field.value || '') + ? t('Notification presets use fixed category colors and ignore the color palette.') + : t('Animation presets can use custom colors and speed.')} + )} @@ -332,14 +475,117 @@ export function SystemInfoSection({ defaultValues }: SystemInfoSectionProps) { render={({ field }) => ( {t('Colors')} - - - + {showBannerPalette ? ( + +
+
+ {(bannerPreset === 'solid' + ? [parseBannerColors(field.value || '')[0] || '#2563eb'] + : [ + parseBannerColors(field.value || '')[0] || '#0f172a', + parseBannerColors(field.value || '')[1] || '#2563eb', + ] + ).map((color, index) => { + const colors = parseBannerColors(field.value || '') + const normalizedColor = normalizeHexColor(color) + return ( +
+
+ {bannerPreset === 'solid' + ? t('Background color') + : t(index === 0 ? 'Start color' : 'End color')} +
+
+ { + const nextColors = [...colors] + nextColors[index] = event.target.value + field.onChange(stringifyBannerColors(nextColors)) + }} + className='size-9 shrink-0 cursor-pointer rounded-md border border-border bg-transparent p-1' + aria-label={bannerPreset === 'solid' + ? t('Background color') + : t(index === 0 ? 'Start color' : 'End color')} + /> + { + const nextColors = [...colors] + nextColors[index] = event.target.value.trim() + field.onChange(stringifyBannerColors(nextColors)) + }} + placeholder='#2563eb' + className='font-mono' + /> +
+
+ ) + })} +
+ +
+ {bannerPaletteGroups.map((group) => ( +
+
+ {t(group.nameKey)} +
+
+ {group.colors.map((color) => { + const activeColors = parseBannerColors(field.value || '') + const isActive = activeColors.includes(color) + return ( +
+
+ ))} +
+ + +
+
+ ) : ( + + + + )} - {t('Comma-separated color values. First color is used for solid mode.')} + {showBannerPalette + ? t('Pick colors from the palette or enter CSS color values manually.') + : t('This notification preset uses fixed colors. Switch to an animation preset to customize colors.')}
@@ -372,244 +618,12 @@ export function SystemInfoSection({ defaultValues }: SystemInfoSectionProps) { - -
- - - {t('Background')} - - {t('Configure the banner background style.')} - - - - { - let config: { - background?: { type: string; direction?: string; stops?: Array<{ color: string; position: number }> } - animation?: { type: string; duration?: number; direction?: string; size?: number } - } = {} - try { config = JSON.parse(field.value || '{}') } catch { /* empty */ } - - const updateConfig = (updates: Record) => { - const newConfig = { ...config, ...updates } - field.onChange(JSON.stringify(newConfig)) - } - - return ( - <> - - {t('Background Type')} - - - - {config.background?.type === 'gradient' && ( - - {t('Direction')} - - - )} - - - {t('Color Stops')} - - s.color).join(',')} - onChange={(e) => { - const colors = e.target.value.split(',').map((c) => c.trim()).filter(Boolean) - const stops = colors.map((color, i) => ({ - color, - position: colors.length === 1 ? 0 : Math.round((i / (colors.length - 1)) * 100), - })) - updateConfig({ - background: { ...config.background, stops }, - }) - }} - /> - - - {t('Comma-separated color values for the gradient.')} - - - - ) - }} - /> - - - - - - {t('Animation')} - - {t('Add animation effects to the banner background.')} - - - - { - let config: { - background?: { type: string; direction?: string; stops?: Array<{ color: string; position: number }> } - animation?: { type: string; duration?: number; direction?: string; size?: number } - } = {} - try { config = JSON.parse(field.value || '{}') } catch { /* empty */ } - - const updateConfig = (updates: Record) => { - const newConfig = { ...config, ...updates } - field.onChange(JSON.stringify(newConfig)) - } - - return ( - <> - - {t('Animation Type')} - - - - {config.animation?.type && config.animation.type !== 'none' && ( - <> - - {t('Duration')}: {config.animation?.duration || 8}s - - updateConfig({ - animation: { ...config.animation, duration: v }, - }) - } - min={1} - max={20} - step={1} - /> - - - - {t('Direction')} - - - - {config.animation?.type === 'flow' && ( - - {t('Intensity')}: {config.animation?.size || 400}% - - updateConfig({ - animation: { ...config.animation, size: v }, - }) - } - min={100} - max={800} - step={50} - /> - - )} - - )} - - ) - }} - /> - - -
-
- {t('Custom CSS')} - {t('Write custom CSS for the banner background. CSS is scoped to .top-banner.')} + {t('Write custom CSS for the banner. Use declarations directly, or use & for scoped selectors such as &::before and & .top-banner-icon.')} @@ -676,10 +690,51 @@ export function SystemInfoSection({ defaultValues }: SystemInfoSectionProps) { {t('Banner Font Color')} - +
+
+ field.onChange(event.target.value)} + className='size-9 shrink-0 cursor-pointer rounded-md border border-border bg-transparent p-1' + aria-label={t('Banner Font Color')} + /> + + +
+ +
+ {bannerTextColorPalette.map((color) => { + const isActive = field.value === color + return ( +
+
{t( diff --git a/web/default/src/features/system-settings/hooks/use-update-option.ts b/web/default/src/features/system-settings/hooks/use-update-option.ts index c9df4016995..d1c9b40f069 100644 --- a/web/default/src/features/system-settings/hooks/use-update-option.ts +++ b/web/default/src/features/system-settings/hooks/use-update-option.ts @@ -20,6 +20,19 @@ const STATUS_RELATED_KEYS = [ 'general_setting.custom_currency_exchange_rate', ] +const BANNER_RELATED_KEYS = [ + 'BannerContent', + 'BannerType', + 'BannerDismissible', + 'BannerMode', + 'BannerPreset', + 'BannerColors', + 'BannerSpeed', + 'BannerVisualConfig', + 'BannerCustomCSS', + 'BannerFontColor', +] + export function useUpdateOption() { const queryClient = useQueryClient() @@ -35,6 +48,10 @@ export function useUpdateOption() { queryClient.invalidateQueries({ queryKey: ['status'] }) } + if (BANNER_RELATED_KEYS.includes(variables.key)) { + queryClient.invalidateQueries({ queryKey: ['banner'] }) + } + toast.success(i18next.t('Setting updated successfully')) } else { toast.error(data.message || i18next.t('Failed to update setting')) diff --git a/web/default/src/features/system-settings/types.ts b/web/default/src/features/system-settings/types.ts index 46345e5952f..5afe91adb01 100644 --- a/web/default/src/features/system-settings/types.ts +++ b/web/default/src/features/system-settings/types.ts @@ -31,6 +31,8 @@ export type GeneralSettings = { 'theme.frontend': string Notice: string BannerContent: string + BannerType: string + BannerDismissible: string BannerMode: string BannerPreset: string BannerColors: string diff --git a/web/default/src/i18n/locales/_reports/_sync-report.json b/web/default/src/i18n/locales/_reports/_sync-report.json index 4a411dbcd56..ab28efa1383 100644 --- a/web/default/src/i18n/locales/_reports/_sync-report.json +++ b/web/default/src/i18n/locales/_reports/_sync-report.json @@ -9,26 +9,26 @@ }, "fr": { "file": "fr.json", - "missingCount": 42, - "extrasCount": 3, + "missingCount": 0, + "extrasCount": 0, "untranslatedCount": 9 }, "ja": { "file": "ja.json", - "missingCount": 42, - "extrasCount": 3, + "missingCount": 0, + "extrasCount": 0, "untranslatedCount": 123 }, "ru": { "file": "ru.json", - "missingCount": 42, - "extrasCount": 3, + "missingCount": 0, + "extrasCount": 0, "untranslatedCount": 127 }, "vi": { "file": "vi.json", - "missingCount": 42, - "extrasCount": 3, + "missingCount": 0, + "extrasCount": 0, "untranslatedCount": 9 }, "zh": { diff --git a/web/default/src/i18n/locales/_reports/fr.untranslated.json b/web/default/src/i18n/locales/_reports/fr.untranslated.json index b6411539ef1..a686891329a 100644 --- a/web/default/src/i18n/locales/_reports/fr.untranslated.json +++ b/web/default/src/i18n/locales/_reports/fr.untranslated.json @@ -4,8 +4,8 @@ "Choose a preset effect and customize colors and speed.": "Choose a preset effect and customize colors and speed.", "Comma-separated color values for the gradient.": "Comma-separated color values for the gradient.", "Configure the banner background style.": "Configure the banner background style.", + "e.g., #ffffff or white": "e.g., #ffffff or white", "Enter banner content to display at the top of the page": "Enter banner content to display at the top of the page", "Font color for the banner text. Supports any CSS color value. Leave empty for default.": "Font color for the banner text. Supports any CSS color value. Leave empty for default.", - "Write custom CSS for the banner background. CSS is scoped to .top-banner.": "Write custom CSS for the banner background. CSS is scoped to .top-banner.", - "e.g., #ffffff or white": "e.g., #ffffff or white" + "Write custom CSS for the banner background. CSS is scoped to .top-banner.": "Write custom CSS for the banner background. CSS is scoped to .top-banner." } diff --git a/web/default/src/i18n/locales/_reports/ja.untranslated.json b/web/default/src/i18n/locales/_reports/ja.untranslated.json index 0bfa0ca59af..da8aeb8516f 100644 --- a/web/default/src/i18n/locales/_reports/ja.untranslated.json +++ b/web/default/src/i18n/locales/_reports/ja.untranslated.json @@ -1,19 +1,28 @@ { + "[{\"ChatGPT\":\"https://chat.openai.com\"},{\"Lobe Chat\":\"https://chat-preview.lobehub.com/?settings={...}\"}]": "[{\"ChatGPT\":\"https://chat.openai.com\"},{\"Lobe Chat\":\"https://chat-preview.lobehub.com/?settings={...}\"}]", + "[{\"name\":\"支付宝\",\"type\":\"alipay\",\"color\":\"#1677FF\"}]": "[{\"name\":\"Alipay\",\"type\":\"alipay\",\"color\":\"#1677FF\"}]", "/status/": "/status/", "/your/endpoint": "/your/endpoint", + "← Left": "← Left", + "→ Right": "→ Right", + "↓ Down": "↓ Down", + "↘ Diagonal": "↘ Diagonal", + "⊙ Radial": "⊙ Radial", "A text banner displayed at the top of all pages. Leave empty to disable.": "A text banner displayed at the top of all pages. Leave empty to disable.", - "AIGC2D": "AIGC2D", - "API URL": "API URL", - "API2GPT": "API2GPT", - "AZURE_OPENAI_ENDPOINT *": "AZURE_OPENAI_ENDPOINT *", "Add animation effects to the banner background.": "Add animation effects to the banner background.", + "AIGC2D": "AIGC2D", "Alternate": "Alternate", "Animation": "Animation", "Animation Type": "Animation Type", "Anthropic": "Anthropic", + "API URL": "API URL", + "API2GPT": "API2GPT", + "AZURE_OPENAI_ENDPOINT *": "AZURE_OPENAI_ENDPOINT *", "Background Type": "Background Type", "Banner Content": "Banner Content", "Banner Font Color": "Banner Font Color", + "checkout.session.completed": "checkout.session.completed", + "checkout.session.expired": "checkout.session.expired", "Choose a preset effect and customize colors and speed.": "Choose a preset effect and customize colors and speed.", "Claude": "Claude", "Cloudflare": "Cloudflare", @@ -26,16 +35,43 @@ "DeepSeek": "DeepSeek", "Discord": "Discord", "DoubaoVideo": "DoubaoVideo", + "e.g., #ffffff or white": "e.g., #ffffff or white", + "edit_this": "edit_this", "Effect": "Effect", "Enter banner content to display at the top of the page": "Enter banner content to display at the top of the page", "Enter custom CSS...": "Enter custom CSS...", "FastGPT": "FastGPT", "Flowing Gradient": "Flowing Gradient", "Font color for the banner text. Supports any CSS color value. Leave empty for default.": "Font color for the banner text. Supports any CSS color value. Leave empty for default.", + "footer.columns.related.links.midjourney": "Midjourney-Proxy", + "footer.columns.related.links.neko": "neko-api-key-tool", "Gemini": "Gemini", "Gemini Image 4K": "Gemini Image 4K", "GitHub": "GitHub", + "gpt-3.5-turbo": "gpt-3.5-turbo", + "gpt-3.5-turbo-0125": "gpt-3.5-turbo-0125", "Gradient": "Gradient", + "https://api.day.app/yourkey/{{title}}/{{content}}": "https://api.day.app/yourkey/{{title}}/{{content}}", + "https://api.example.com": "https://api.example.com", + "https://ark.ap-southeast.bytepluses.com": "https://ark.ap-southeast.bytepluses.com", + "https://ark.cn-beijing.volces.com": "https://ark.cn-beijing.volces.com", + "https://cloud.siliconflow.cn/i/hij0YNTZ": "https://cloud.siliconflow.cn/i/hij0YNTZ", + "https://docs.example.com": "https://docs.example.com", + "https://example.com": "https://example.com", + "https://example.com/logo.png": "https://example.com/logo.png", + "https://example.com/qr-code.png": "https://example.com/qr-code.png", + "https://example.com/topup": "https://example.com/topup", + "https://example.com/webhook": "https://example.com/webhook", + "https://gateway.example.com": "https://gateway.example.com", + "https://github.com/QuantumNous/new-api": "https://github.com/QuantumNous/new-api", + "https://gotify.example.com": "https://gotify.example.com", + "https://pay.example.com": "https://pay.example.com", + "https://provider.com/.well-known/openid-configuration": "https://provider.com/.well-known/openid-configuration", + "https://status.example.com": "https://status.example.com", + "https://wechat-server.example.com": "https://wechat-server.example.com", + "https://worker.example.workers.dev": "https://worker.example.workers.dev", + "https://your-server.example.com": "https://your-server.example.com", + "https://yourdomain.com": "https://yourdomain.com", "Intensity": "Intensity", "Jimeng": "Jimeng", "JustSong": "JustSong", @@ -48,23 +84,30 @@ "Mistral": "Mistral", "MokaAI": "MokaAI", "Moonshot": "Moonshot", + "my-status": "my-status", + "name@example.com": "name@example.com", "NewAPI": "NewAPI", + "noreply@example.com": "noreply@example.com", "Normal": "Normal", "OhMyGPT": "OhMyGPT", "Ollama": "Ollama", "OpenAI": "OpenAI", "OpenAIMax": "OpenAIMax", "OpenRouter": "OpenRouter", + "org-...": "org-...", "Passkey": "Passkey", "Perplexity": "Perplexity", "Preset": "Preset", "Preset Background": "Preset Background", + "price_xxx": "price_xxx", "QuantumNous": "QuantumNous", "Rainbow": "Rainbow", "Replicate": "Replicate", "Reverse": "Reverse", "Shimmer": "Shimmer", "SiliconFlow": "SiliconFlow", + "smtp.example.com": "smtp.example.com", + "socks5://user:pass@host:port": "socks5://user:pass@host:port", "Solid Color": "Solid Color", "Static Gradient": "Static Gradient", "Stripe": "Stripe", @@ -75,51 +118,8 @@ "VolcEngine": "VolcEngine", "Webhook URL": "Webhook URL", "Webhook URL:": "Webhook URL:", + "whsec_xxx": "whsec_xxx", "Write custom CSS for the banner background. CSS is scoped to .top-banner.": "Write custom CSS for the banner background. CSS is scoped to .top-banner.", "Xinference": "Xinference", - "Xunfei": "Xunfei", - "[{\"ChatGPT\":\"https://chat.openai.com\"},{\"Lobe Chat\":\"https://chat-preview.lobehub.com/?settings={...}\"}]": "[{\"ChatGPT\":\"https://chat.openai.com\"},{\"Lobe Chat\":\"https://chat-preview.lobehub.com/?settings={...}\"}]", - "[{\"name\":\"支付宝\",\"type\":\"alipay\",\"color\":\"#1677FF\"}]": "[{\"name\":\"Alipay\",\"type\":\"alipay\",\"color\":\"#1677FF\"}]", - "checkout.session.completed": "checkout.session.completed", - "checkout.session.expired": "checkout.session.expired", - "e.g., #ffffff or white": "e.g., #ffffff or white", - "edit_this": "edit_this", - "footer.columns.related.links.midjourney": "Midjourney-Proxy", - "footer.columns.related.links.neko": "neko-api-key-tool", - "gpt-3.5-turbo": "gpt-3.5-turbo", - "gpt-3.5-turbo-0125": "gpt-3.5-turbo-0125", - "https://api.day.app/yourkey/{{title}}/{{content}}": "https://api.day.app/yourkey/{{title}}/{{content}}", - "https://api.example.com": "https://api.example.com", - "https://ark.ap-southeast.bytepluses.com": "https://ark.ap-southeast.bytepluses.com", - "https://ark.cn-beijing.volces.com": "https://ark.cn-beijing.volces.com", - "https://cloud.siliconflow.cn/i/hij0YNTZ": "https://cloud.siliconflow.cn/i/hij0YNTZ", - "https://docs.example.com": "https://docs.example.com", - "https://example.com": "https://example.com", - "https://example.com/logo.png": "https://example.com/logo.png", - "https://example.com/qr-code.png": "https://example.com/qr-code.png", - "https://example.com/topup": "https://example.com/topup", - "https://example.com/webhook": "https://example.com/webhook", - "https://gateway.example.com": "https://gateway.example.com", - "https://github.com/QuantumNous/new-api": "https://github.com/QuantumNous/new-api", - "https://gotify.example.com": "https://gotify.example.com", - "https://pay.example.com": "https://pay.example.com", - "https://provider.com/.well-known/openid-configuration": "https://provider.com/.well-known/openid-configuration", - "https://status.example.com": "https://status.example.com", - "https://wechat-server.example.com": "https://wechat-server.example.com", - "https://worker.example.workers.dev": "https://worker.example.workers.dev", - "https://your-server.example.com": "https://your-server.example.com", - "https://yourdomain.com": "https://yourdomain.com", - "my-status": "my-status", - "name@example.com": "name@example.com", - "noreply@example.com": "noreply@example.com", - "org-...": "org-...", - "price_xxx": "price_xxx", - "smtp.example.com": "smtp.example.com", - "socks5://user:pass@host:port": "socks5://user:pass@host:port", - "whsec_xxx": "whsec_xxx", - "← Left": "← Left", - "→ Right": "→ Right", - "↓ Down": "↓ Down", - "↘ Diagonal": "↘ Diagonal", - "⊙ Radial": "⊙ Radial" + "Xunfei": "Xunfei" } diff --git a/web/default/src/i18n/locales/_reports/ru.untranslated.json b/web/default/src/i18n/locales/_reports/ru.untranslated.json index a50b1ac7580..3de5a3ac7ba 100644 --- a/web/default/src/i18n/locales/_reports/ru.untranslated.json +++ b/web/default/src/i18n/locales/_reports/ru.untranslated.json @@ -1,22 +1,32 @@ { "\"default\": \"us-central1\", \"claude-3-5-sonnet-20240620\": \"europe-west1\"": "\"default\": \"us-central1\", \"claude-3-5-sonnet-20240620\": \"europe-west1\"", + "[{\"ChatGPT\":\"https://chat.openai.com\"},{\"Lobe Chat\":\"https://chat-preview.lobehub.com/?settings={...}\"}]": "[{\"ChatGPT\":\"https://chat.openai.com\"},{\"Lobe Chat\":\"https://chat-preview.lobehub.com/?settings={...}\"}]", + "[{\"name\":\"支付宝\",\"type\":\"alipay\",\"color\":\"#1677FF\"}]": "[{\"name\":\"Alipay\",\"type\":\"alipay\",\"color\":\"#1677FF\"}]", + "{\"original-model\": \"replacement-model\"}": "{\"original-model\": \"replacement-model\"}", "/status/": "/status/", "/your/endpoint": "/your/endpoint", + "← Left": "← Left", + "→ Right": "→ Right", + "↓ Down": "↓ Down", + "↘ Diagonal": "↘ Diagonal", + "⊙ Radial": "⊙ Radial", "A text banner displayed at the top of all pages. Leave empty to disable.": "A text banner displayed at the top of all pages. Leave empty to disable.", - "AI Proxy": "AI Proxy", - "AIGC2D": "AIGC2D", - "API2GPT": "API2GPT", - "AZURE_OPENAI_ENDPOINT *": "AZURE_OPENAI_ENDPOINT *", "AccessKey / SecretAccessKey": "AccessKey / SecretAccessKey", "Add animation effects to the banner background.": "Add animation effects to the banner background.", + "AI Proxy": "AI Proxy", + "AIGC2D": "AIGC2D", "Alternate": "Alternate", "Animation": "Animation", "Animation Type": "Animation Type", "Anthropic": "Anthropic", + "API2GPT": "API2GPT", + "AZURE_OPENAI_ENDPOINT *": "AZURE_OPENAI_ENDPOINT *", "Background Type": "Background Type", "Baidu V2": "Baidu V2", "Banner Content": "Banner Content", "Banner Font Color": "Banner Font Color", + "checkout.session.completed": "checkout.session.completed", + "checkout.session.expired": "checkout.session.expired", "Choose a preset effect and customize colors and speed.": "Choose a preset effect and customize colors and speed.", "Cloudflare": "Cloudflare", "Cohere": "Cohere", @@ -28,16 +38,44 @@ "DeepSeek": "DeepSeek", "Discord": "Discord", "DoubaoVideo": "DoubaoVideo", + "e.g., #ffffff or white": "e.g., #ffffff or white", "Effect": "Effect", "Enter banner content to display at the top of the page": "Enter banner content to display at the top of the page", "Enter custom CSS...": "Enter custom CSS...", + "example.com blocked-site.com": "example.com blocked-site.com", + "example.com company.com": "example.com company.com", "FastGPT": "FastGPT", "Flowing Gradient": "Flowing Gradient", "Font color for the banner text. Supports any CSS color value. Leave empty for default.": "Font color for the banner text. Supports any CSS color value. Leave empty for default.", + "footer.columns.related.links.midjourney": "Midjourney-Proxy", + "footer.columns.related.links.neko": "neko-api-key-tool", "Gemini": "Gemini", "Gemini Image 4K": "Gemini Image 4K", "GitHub": "GitHub", + "gpt-3.5-turbo": "gpt-3.5-turbo", + "gpt-3.5-turbo-0125": "gpt-3.5-turbo-0125", "Gradient": "Gradient", + "https://api.day.app/yourkey/{{title}}/{{content}}": "https://api.day.app/yourkey/{{title}}/{{content}}", + "https://api.example.com": "https://api.example.com", + "https://ark.ap-southeast.bytepluses.com": "https://ark.ap-southeast.bytepluses.com", + "https://ark.cn-beijing.volces.com": "https://ark.cn-beijing.volces.com", + "https://cloud.siliconflow.cn/i/hij0YNTZ": "https://cloud.siliconflow.cn/i/hij0YNTZ", + "https://docs.example.com": "https://docs.example.com", + "https://example.com": "https://example.com", + "https://example.com/logo.png": "https://example.com/logo.png", + "https://example.com/qr-code.png": "https://example.com/qr-code.png", + "https://example.com/topup": "https://example.com/topup", + "https://example.com/webhook": "https://example.com/webhook", + "https://gateway.example.com": "https://gateway.example.com", + "https://github.com/QuantumNous/new-api": "https://github.com/QuantumNous/new-api", + "https://gotify.example.com": "https://gotify.example.com", + "https://pay.example.com": "https://pay.example.com", + "https://provider.com/.well-known/openid-configuration": "https://provider.com/.well-known/openid-configuration", + "https://status.example.com": "https://status.example.com", + "https://wechat-server.example.com": "https://wechat-server.example.com", + "https://worker.example.workers.dev": "https://worker.example.workers.dev", + "https://your-server.example.com": "https://your-server.example.com", + "https://yourdomain.com": "https://yourdomain.com", "Intensity": "Intensity", "Jimeng": "Jimeng", "JustSong": "JustSong", @@ -50,7 +88,9 @@ "Mistral": "Mistral", "MokaAI": "MokaAI", "Moonshot": "Moonshot", + "name@example.com": "name@example.com", "NewAPI": "NewAPI", + "noreply@example.com": "noreply@example.com", "Normal": "Normal", "OAuth Client Secret": "OAuth Client Secret", "OhMyGPT": "OhMyGPT", @@ -62,12 +102,15 @@ "Perplexity": "Perplexity", "Preset": "Preset", "Preset Background": "Preset Background", + "price_xxx": "price_xxx", "QuantumNous": "QuantumNous", "Rainbow": "Rainbow", "Replicate": "Replicate", "Reverse": "Reverse", "Shimmer": "Shimmer", "SiliconFlow": "SiliconFlow", + "smtp.example.com": "smtp.example.com", + "socks5://user:pass@host:port": "socks5://user:pass@host:port", "Solid Color": "Solid Color", "Static Gradient": "Static Gradient", "Stripe": "Stripe", @@ -78,52 +121,9 @@ "Vertex AI": "Vertex AI", "VolcEngine": "VolcEngine", "WeChat": "WeChat", + "whsec_xxx": "whsec_xxx", "Write custom CSS for the banner background. CSS is scoped to .top-banner.": "Write custom CSS for the banner background. CSS is scoped to .top-banner.", "Xinference": "Xinference", "Xunfei": "Xunfei", - "Zhipu V4": "Zhipu V4", - "[{\"ChatGPT\":\"https://chat.openai.com\"},{\"Lobe Chat\":\"https://chat-preview.lobehub.com/?settings={...}\"}]": "[{\"ChatGPT\":\"https://chat.openai.com\"},{\"Lobe Chat\":\"https://chat-preview.lobehub.com/?settings={...}\"}]", - "[{\"name\":\"支付宝\",\"type\":\"alipay\",\"color\":\"#1677FF\"}]": "[{\"name\":\"Alipay\",\"type\":\"alipay\",\"color\":\"#1677FF\"}]", - "checkout.session.completed": "checkout.session.completed", - "checkout.session.expired": "checkout.session.expired", - "e.g., #ffffff or white": "e.g., #ffffff or white", - "example.com blocked-site.com": "example.com blocked-site.com", - "example.com company.com": "example.com company.com", - "footer.columns.related.links.midjourney": "Midjourney-Proxy", - "footer.columns.related.links.neko": "neko-api-key-tool", - "gpt-3.5-turbo": "gpt-3.5-turbo", - "gpt-3.5-turbo-0125": "gpt-3.5-turbo-0125", - "https://api.day.app/yourkey/{{title}}/{{content}}": "https://api.day.app/yourkey/{{title}}/{{content}}", - "https://api.example.com": "https://api.example.com", - "https://ark.ap-southeast.bytepluses.com": "https://ark.ap-southeast.bytepluses.com", - "https://ark.cn-beijing.volces.com": "https://ark.cn-beijing.volces.com", - "https://cloud.siliconflow.cn/i/hij0YNTZ": "https://cloud.siliconflow.cn/i/hij0YNTZ", - "https://docs.example.com": "https://docs.example.com", - "https://example.com": "https://example.com", - "https://example.com/logo.png": "https://example.com/logo.png", - "https://example.com/qr-code.png": "https://example.com/qr-code.png", - "https://example.com/topup": "https://example.com/topup", - "https://example.com/webhook": "https://example.com/webhook", - "https://gateway.example.com": "https://gateway.example.com", - "https://github.com/QuantumNous/new-api": "https://github.com/QuantumNous/new-api", - "https://gotify.example.com": "https://gotify.example.com", - "https://pay.example.com": "https://pay.example.com", - "https://provider.com/.well-known/openid-configuration": "https://provider.com/.well-known/openid-configuration", - "https://status.example.com": "https://status.example.com", - "https://wechat-server.example.com": "https://wechat-server.example.com", - "https://worker.example.workers.dev": "https://worker.example.workers.dev", - "https://your-server.example.com": "https://your-server.example.com", - "https://yourdomain.com": "https://yourdomain.com", - "name@example.com": "name@example.com", - "noreply@example.com": "noreply@example.com", - "price_xxx": "price_xxx", - "smtp.example.com": "smtp.example.com", - "socks5://user:pass@host:port": "socks5://user:pass@host:port", - "whsec_xxx": "whsec_xxx", - "{\"original-model\": \"replacement-model\"}": "{\"original-model\": \"replacement-model\"}", - "← Left": "← Left", - "→ Right": "→ Right", - "↓ Down": "↓ Down", - "↘ Diagonal": "↘ Diagonal", - "⊙ Radial": "⊙ Radial" + "Zhipu V4": "Zhipu V4" } diff --git a/web/default/src/i18n/locales/_reports/vi.untranslated.json b/web/default/src/i18n/locales/_reports/vi.untranslated.json index b6411539ef1..a686891329a 100644 --- a/web/default/src/i18n/locales/_reports/vi.untranslated.json +++ b/web/default/src/i18n/locales/_reports/vi.untranslated.json @@ -4,8 +4,8 @@ "Choose a preset effect and customize colors and speed.": "Choose a preset effect and customize colors and speed.", "Comma-separated color values for the gradient.": "Comma-separated color values for the gradient.", "Configure the banner background style.": "Configure the banner background style.", + "e.g., #ffffff or white": "e.g., #ffffff or white", "Enter banner content to display at the top of the page": "Enter banner content to display at the top of the page", "Font color for the banner text. Supports any CSS color value. Leave empty for default.": "Font color for the banner text. Supports any CSS color value. Leave empty for default.", - "Write custom CSS for the banner background. CSS is scoped to .top-banner.": "Write custom CSS for the banner background. CSS is scoped to .top-banner.", - "e.g., #ffffff or white": "e.g., #ffffff or white" + "Write custom CSS for the banner background. CSS is scoped to .top-banner.": "Write custom CSS for the banner background. CSS is scoped to .top-banner." } diff --git a/web/default/src/i18n/locales/_reports/zh.untranslated.json b/web/default/src/i18n/locales/_reports/zh.untranslated.json index 84df8ce9641..8c3891a733d 100644 --- a/web/default/src/i18n/locales/_reports/zh.untranslated.json +++ b/web/default/src/i18n/locales/_reports/zh.untranslated.json @@ -1,14 +1,18 @@ { "\"default\": \"us-central1\", \"claude-3-5-sonnet-20240620\": \"europe-west1\"": "\"default\": \"us-central1\", \"claude-3-5-sonnet-20240620\": \"europe-west1\"", + "[{\"ChatGPT\":\"https://chat.openai.com\"},{\"Lobe Chat\":\"https://chat-preview.lobehub.com/?settings={...}\"}]": "[{\"ChatGPT\":\"https://chat.openai.com\"},{\"Lobe Chat\":\"https://chat-preview.lobehub.com/?settings={...}\"}]", + "{\"original-model\": \"replacement-model\"}": "{\"original-model\": \"replacement-model\"}", "/status/": "/status/", "/your/endpoint": "/your/endpoint", + "AccessKey / SecretAccessKey": "AccessKey / SecretAccessKey", "AI Proxy": "AI Proxy", "AIGC2D": "AIGC2D", + "Anthropic": "Anthropic", "API URL": "API URL", "API2GPT": "API2GPT", "AZURE_OPENAI_ENDPOINT *": "AZURE_OPENAI_ENDPOINT *", - "AccessKey / SecretAccessKey": "AccessKey / SecretAccessKey", - "Anthropic": "Anthropic", + "checkout.session.completed": "checkout.session.completed", + "checkout.session.expired": "checkout.session.expired", "Claude": "Claude", "Client ID": "Client ID", "Client Secret": "Client Secret", @@ -17,9 +21,38 @@ "DeepSeek": "DeepSeek", "Discord": "Discord", "DoubaoVideo": "DoubaoVideo", + "edit_this": "edit_this", + "example.com blocked-site.com": "example.com blocked-site.com", + "example.com company.com": "example.com company.com", "FastGPT": "FastGPT", + "footer.columns.related.links.midjourney": "Midjourney-Proxy", + "footer.columns.related.links.neko": "neko-api-key-tool", + "footer.columns.related.links.oneApi": "One API", "Gemini": "Gemini", "GitHub": "GitHub", + "gpt-3.5-turbo": "gpt-3.5-turbo", + "gpt-3.5-turbo-0125": "gpt-3.5-turbo-0125", + "https://api.day.app/yourkey/{{title}}/{{content}}": "https://api.day.app/yourkey/{{title}}/{{content}}", + "https://api.example.com": "https://api.example.com", + "https://ark.ap-southeast.bytepluses.com": "https://ark.ap-southeast.bytepluses.com", + "https://ark.cn-beijing.volces.com": "https://ark.cn-beijing.volces.com", + "https://cloud.siliconflow.cn/i/hij0YNTZ": "https://cloud.siliconflow.cn/i/hij0YNTZ", + "https://docs.example.com": "https://docs.example.com", + "https://example.com": "https://example.com", + "https://example.com/logo.png": "https://example.com/logo.png", + "https://example.com/qr-code.png": "https://example.com/qr-code.png", + "https://example.com/topup": "https://example.com/topup", + "https://example.com/webhook": "https://example.com/webhook", + "https://gateway.example.com": "https://gateway.example.com", + "https://github.com/QuantumNous/new-api": "https://github.com/QuantumNous/new-api", + "https://gotify.example.com": "https://gotify.example.com", + "https://pay.example.com": "https://pay.example.com", + "https://provider.com/.well-known/openid-configuration": "https://provider.com/.well-known/openid-configuration", + "https://status.example.com": "https://status.example.com", + "https://wechat-server.example.com": "https://wechat-server.example.com", + "https://worker.example.workers.dev": "https://worker.example.workers.dev", + "https://your-server.example.com": "https://your-server.example.com", + "https://yourdomain.com": "https://yourdomain.com", "Jimeng": "Jimeng", "JustSong": "JustSong", "LingYiWanWu": "LingYiWanWu", @@ -30,21 +63,27 @@ "Mistral": "Mistral", "MokaAI": "MokaAI", "Moonshot": "Moonshot", + "name@example.com": "name@example.com", "New API": "New API", "New API <noreply@example.com>": "New API <noreply@example.com>", "NewAPI": "NewAPI", + "noreply@example.com": "noreply@example.com", "OhMyGPT": "OhMyGPT", "Ollama": "Ollama", "One API": "One API", "OpenAI": "OpenAI", "OpenAIMax": "OpenAIMax", "OpenRouter": "OpenRouter", + "org-...": "org-...", "Passkey": "Passkey", "Perplexity": "Perplexity", + "price_xxx": "price_xxx", "QuantumNous": "QuantumNous", "Quota:": "Quota:", "Replicate": "Replicate", "SiliconFlow": "SiliconFlow", + "smtp.example.com": "smtp.example.com", + "socks5://user:pass@host:port": "socks5://user:pass@host:port", "Stripe": "Stripe", "Submodel": "Submodel", "SunoAPI": "SunoAPI", @@ -54,46 +93,7 @@ "Vertex AI": "Vertex AI", "Webhook URL:": "Webhook URL:", "Well-Known URL": "Well-Known URL", - "Worker URL": "Worker URL", - "Xinference": "Xinference", - "[{\"ChatGPT\":\"https://chat.openai.com\"},{\"Lobe Chat\":\"https://chat-preview.lobehub.com/?settings={...}\"}]": "[{\"ChatGPT\":\"https://chat.openai.com\"},{\"Lobe Chat\":\"https://chat-preview.lobehub.com/?settings={...}\"}]", - "checkout.session.completed": "checkout.session.completed", - "checkout.session.expired": "checkout.session.expired", - "edit_this": "edit_this", - "example.com blocked-site.com": "example.com blocked-site.com", - "example.com company.com": "example.com company.com", - "footer.columns.related.links.midjourney": "Midjourney-Proxy", - "footer.columns.related.links.neko": "neko-api-key-tool", - "footer.columns.related.links.oneApi": "One API", - "gpt-3.5-turbo": "gpt-3.5-turbo", - "gpt-3.5-turbo-0125": "gpt-3.5-turbo-0125", - "https://api.day.app/yourkey/{{title}}/{{content}}": "https://api.day.app/yourkey/{{title}}/{{content}}", - "https://api.example.com": "https://api.example.com", - "https://ark.ap-southeast.bytepluses.com": "https://ark.ap-southeast.bytepluses.com", - "https://ark.cn-beijing.volces.com": "https://ark.cn-beijing.volces.com", - "https://cloud.siliconflow.cn/i/hij0YNTZ": "https://cloud.siliconflow.cn/i/hij0YNTZ", - "https://docs.example.com": "https://docs.example.com", - "https://example.com": "https://example.com", - "https://example.com/logo.png": "https://example.com/logo.png", - "https://example.com/qr-code.png": "https://example.com/qr-code.png", - "https://example.com/topup": "https://example.com/topup", - "https://example.com/webhook": "https://example.com/webhook", - "https://gateway.example.com": "https://gateway.example.com", - "https://github.com/QuantumNous/new-api": "https://github.com/QuantumNous/new-api", - "https://gotify.example.com": "https://gotify.example.com", - "https://pay.example.com": "https://pay.example.com", - "https://provider.com/.well-known/openid-configuration": "https://provider.com/.well-known/openid-configuration", - "https://status.example.com": "https://status.example.com", - "https://wechat-server.example.com": "https://wechat-server.example.com", - "https://worker.example.workers.dev": "https://worker.example.workers.dev", - "https://your-server.example.com": "https://your-server.example.com", - "https://yourdomain.com": "https://yourdomain.com", - "name@example.com": "name@example.com", - "noreply@example.com": "noreply@example.com", - "org-...": "org-...", - "price_xxx": "price_xxx", - "smtp.example.com": "smtp.example.com", - "socks5://user:pass@host:port": "socks5://user:pass@host:port", "whsec_xxx": "whsec_xxx", - "{\"original-model\": \"replacement-model\"}": "{\"original-model\": \"replacement-model\"}" + "Worker URL": "Worker URL", + "Xinference": "Xinference" } diff --git a/web/default/src/i18n/locales/en.json b/web/default/src/i18n/locales/en.json index 33fa7f3e770..03f9362d7e8 100644 --- a/web/default/src/i18n/locales/en.json +++ b/web/default/src/i18n/locales/en.json @@ -3,31 +3,70 @@ "360": "360", "1000": "1000", "10000": "10000", + "_copy": "_copy", + ", and": ", and", + "? This action cannot be undone.": "? This action cannot be undone.", + ". Please fix the JSON before saving.": ". Please fix the JSON before saving.", + ". This action cannot be undone.": ". This action cannot be undone.", + "...": "...", "\"default\": \"us-central1\", \"claude-3-5-sonnet-20240620\": \"europe-west1\"": "\"default\": \"us-central1\", \"claude-3-5-sonnet-20240620\": \"europe-west1\"", - "% off": "% off", + "({{total}} total, {{omit}} omitted)": "({{total}} total, {{omit}} omitted)", "(Leave empty to dissolve tag)": "(Leave empty to dissolve tag)", "(Optional: redirect model names)": "(Optional: redirect model names)", "(Override all channels' groups)": "(Override all channels' groups)", "(Override all channels' models)": "(Override all channels' models)", - "({{total}} total, {{omit}} omitted)": "({{total}} total, {{omit}} omitted)", - ", and": ", and", - ". Please fix the JSON before saving.": ". Please fix the JSON before saving.", - ". This action cannot be undone.": ". This action cannot be undone.", - "...": "...", + "[{\"ChatGPT\":\"https://chat.openai.com\"},{\"Lobe Chat\":\"https://chat-preview.lobehub.com/?settings={...}\"}]": "[{\"ChatGPT\":\"https://chat.openai.com\"},{\"Lobe Chat\":\"https://chat-preview.lobehub.com/?settings={...}\"}]", + "[{\"name\":\"支付宝\",\"type\":\"alipay\",\"color\":\"#1677FF\"}]": "[{\"name\":\"Alipay\",\"type\":\"alipay\",\"color\":\"#1677FF\"}]", + "{\"original-model\": \"replacement-model\"}": "{\"original-model\": \"replacement-model\"}", + "{{category}} Models": "{{category}} Models", + "{{count}} channel(s) deleted": "{{count}} channel(s) deleted", + "{{count}} channel(s) disabled": "{{count}} channel(s) disabled", + "{{count}} channel(s) enabled": "{{count}} channel(s) enabled", + "{{count}} channel(s) failed to disable": "{{count}} channel(s) failed to disable", + "{{count}} channel(s) failed to enable": "{{count}} channel(s) failed to enable", + "{{count}} days ago": "{{count}} days ago", + "{{count}} days remaining": "{{count}} days remaining", + "{{count}} disabled channel(s) deleted": "{{count}} disabled channel(s) deleted", + "{{count}} hours ago": "{{count}} hours ago", + "{{count}} IP(s)": "{{count}} IP(s)", + "{{count}} log entries removed.": "{{count}} log entries removed.", + "{{count}} minutes ago": "{{count}} minutes ago", + "{{count}} model(s)": "{{count}} model(s)", + "{{count}} months ago": "{{count}} months ago", + "{{count}} override": "{{count}} override", + "{{count}} tiers": "{{count}} tiers", + "{{count}} weeks ago": "{{count}} weeks ago", + "{{field}} updated to {{value}}": "{{field}} updated to {{value}}", + "{{field}} updated to {{value}} for tag: {{tag}}": "{{field}} updated to {{value}} for tag: {{tag}}", + "{{n}} model(s) selected": "{{n}} model(s) selected", + "{{value}}ms": "{{value}}ms", + "{{value}}s": "{{value}}s", + "@lobehub/icons key": "@lobehub/icons key", + "@lobehub/icons key name": "@lobehub/icons key name", "/status/": "/status/", "/your/endpoint": "/your/endpoint", + "% off": "% off", + "`, and `-nothinking` suffixes while routing to the correct Gemini variant.": "`, and `-nothinking` suffixes while routing to the correct Gemini variant.", + "© 2025 Your Company. All rights reserved.": "© 2025 Your Company. All rights reserved.", + "← Left": "← Left", + "→ Right": "→ Right", + "↑ Up": "↑ Up", + "↓ Down": "↓ Down", + "↘ Diagonal": "↘ Diagonal", + "| Based on": "| Based on", + "⊙ Radial": "⊙ Radial", "0 means unlimited": "0 means unlimited", "1 Day": "1 Day", - "1 Hour": "1H", - "1 Month": "1M", "1 day ago": "1 day ago", + "1 Hour": "1H", "1 hour ago": "1 hour ago", "1 minute ago": "1 minute ago", + "1 Month": "1M", "1 month ago": "1 month ago", "1 week ago": "1 week ago", "1 year ago": "1 year ago", - "1) Click \"Open authorization page\" and complete login. 2) Your browser may redirect to localhost (it is OK if the page does not load). 3) Copy the full URL from the address bar and paste it below. 4) Click \"Generate credential\".": "1) Click \"Open authorization page\" and complete login. 2) Your browser may redirect to localhost (it is OK if the page does not load). 3) Copy the full URL from the address bar and paste it below. 4) Click \"Generate credential\".", "1. Create an application in your Gotify server": "1. Create an application in your Gotify server", + "1) Click \"Open authorization page\" and complete login. 2) Your browser may redirect to localhost (it is OK if the page does not load). 3) Copy the full URL from the address bar and paste it below. 4) Click \"Generate credential\".": "1) Click \"Open authorization page\" and complete login. 2) Your browser may redirect to localhost (it is OK if the page does not load). 3) Copy the full URL from the address bar and paste it below. 4) Click \"Generate credential\".", "10 / page": "10 / page", "100 / page": "100 / page", "14 Days": "14 Days", @@ -47,56 +86,7 @@ "7 Days": "7 Days", "7 days ago": "7 days ago", "80,443,8080": "80,443,8080", - "? This action cannot be undone.": "? This action cannot be undone.", - "@lobehub/icons key": "@lobehub/icons key", - "@lobehub/icons key name": "@lobehub/icons key name", "A text banner displayed at the top of all pages. Leave empty to disable.": "A text banner displayed at the top of all pages. Leave empty to disable.", - "AGPL v3.0 License": "AGPL v3.0 License", - "AI Proxy": "AI Proxy", - "AI Proxy Library": "AI Proxy Library", - "AI model testing environment": "AI model testing environment", - "AI models": "AI models", - "AI models supported": "AI models supported", - "AIGC2D": "AIGC2D", - "AILS": "AILS", - "AK/SK mode: use AccessKey|SecretAccessKey|Region": "AK/SK mode: use AccessKey|SecretAccessKey|Region", - "API Access": "API Access", - "API Addresses": "API Addresses", - "API Base URL (Important: Not Chat API) *": "API Base URL (Important: Not Chat API) *", - "API Base URL *": "API Base URL *", - "API Endpoints": "API Endpoints", - "API Info": "API Info", - "API Key": "API Key", - "API Key (Production)": "API Key (Production)", - "API Key (Sandbox)": "API Key (Sandbox)", - "API Key (one per line for batch mode)": "API Key (one per line for batch mode)", - "API Key *": "API Key *", - "API Key created successfully": "API Key created successfully", - "API Key deleted successfully": "API Key deleted successfully", - "API Key disabled successfully": "API Key disabled successfully", - "API Key enabled successfully": "API Key enabled successfully", - "API Key mode (does not support batch creation)": "API Key mode (does not support batch creation)", - "API Key mode: use APIKey|Region": "API Key mode: use APIKey|Region", - "API Key updated successfully": "API Key updated successfully", - "API Keys": "API Keys", - "API Private Key": "API Private Key", - "API Requests": "API Requests", - "API URL": "API URL", - "API info added. Click \"Save Settings\" to apply.": "API info added. Click \"Save Settings\" to apply.", - "API info deleted. Click \"Save Settings\" to apply.": "API info deleted. Click \"Save Settings\" to apply.", - "API info saved successfully": "API info saved successfully", - "API info updated. Click \"Save Settings\" to apply.": "API info updated. Click \"Save Settings\" to apply.", - "API key": "API key", - "API key from the provider": "API key from the provider", - "API key is required": "API key is required", - "API secret": "API secret", - "API token management": "API token management", - "API usage records": "API usage records", - "API2GPT": "API2GPT", - "AWS": "AWS", - "AWS Bedrock Claude Compat": "AWS Bedrock Claude Compat", - "AWS Key Format": "AWS Key Format", - "AZURE_OPENAI_ENDPOINT *": "AZURE_OPENAI_ENDPOINT *", "About": "About", "Accept Unpriced Models": "Accept Unpriced Models", "Accepts a JSON array of model identifiers that support the Imagine API.": "Accepts a JSON array of model identifiers that support the Imagine API.", @@ -104,43 +94,28 @@ "Access Denied Message": "Access Denied Message", "Access Forbidden": "Access Forbidden", "Access Policy (JSON)": "Access Policy (JSON)", - "Access Token": "Access Token", "Access previous conversations and start new ones.": "Access previous conversations and start new ones.", + "Access Token": "Access Token", "AccessKey / SecretAccessKey": "AccessKey / SecretAccessKey", "Account Binding Management": "Account Binding Management", "Account Bindings": "Account Bindings", - "Account ID *": "Account ID *", - "Account Info": "Account Info", "Account created! Please sign in": "Account created! Please sign in", "Account deleted successfully": "Account deleted successfully", + "Account ID *": "Account ID *", + "Account Info": "Account Info", "Account used when authenticating with the SMTP server": "Account used when authenticating with the SMTP server", "Action confirmation": "Action Confirmation", "Actions": "Actions", + "active": "active", "Active": "Active", "Active Cache Count": "Active Cache Count", "Active Files": "Active Files", + "active users": "active users", "Actual Amount": "Actual Amount", "Actual Model": "Actual Model", "Actual Model:": "Actual Model:", "Add": "Add", - "Add API": "Add API", - "Add API Shortcut": "Add API Shortcut", - "Add Announcement": "Add Announcement", - "Add Condition": "Add Condition", - "Add FAQ": "Add FAQ", - "Add Funds": "Add Funds", - "Add Group": "Add Group", - "Add Mapping": "Add Mapping", - "Add Mode": "Add Mode", - "Add Model": "Add Model", - "Add Models": "Add Models", - "Add OAuth Provider": "Add OAuth Provider", - "Add Provider": "Add Provider", - "Add Quota": "Add Quota", - "Add Row": "Add Row", - "Add Rule": "Add Rule", - "Add Uptime Kuma Group": "Add Uptime Kuma Group", - "Add User": "Add User", + "Add {{title}}": "Add {{title}}", "Add a group identifier to the auto assignment list.": "Add a group identifier to the auto assignment list.", "Add a new API key by providing necessary info.": "Add a new API key by providing necessary info.", "Add a new channel by providing the necessary information.": "Add a new channel by providing the necessary information.", @@ -150,25 +125,41 @@ "Add an extra layer of security to your account": "Add an extra layer of security to your account", "Add and submit": "Add and submit", "Add animation effects to the banner background.": "Add animation effects to the banner background.", + "Add Announcement": "Add Announcement", + "Add API": "Add API", + "Add API Shortcut": "Add API Shortcut", "Add auto group": "Add auto group", "Add chat preset": "Add chat preset", "Add condition": "Add condition", + "Add Condition": "Add Condition", "Add custom model(s), comma-separated": "Add custom model(s), comma-separated", "Add discount tier": "Add discount tier", "Add each model or tag you want to include.": "Add each model or tag you want to include.", + "Add FAQ": "Add FAQ", "Add from available models...": "Add from available models...", + "Add Funds": "Add Funds", "Add group": "Add group", + "Add Group": "Add Group", "Add group rate limit": "Add group rate limit", "Add group rules": "Add group rules", + "Add Mapping": "Add Mapping", "Add method": "Add method", + "Add Mode": "Add Mode", "Add model": "Add model", + "Add Model": "Add Model", + "Add Models": "Add Models", "Add new amount": "Add new amount", "Add new redemption code(s) by providing necessary info.": "Add new redemption code(s) by providing necessary info.", + "Add OAuth Provider": "Add OAuth Provider", "Add param/header": "Add param/header", "Add payment method": "Add payment method", "Add photos or files": "Add photos or files", "Add product": "Add product", + "Add Provider": "Add Provider", + "Add Quota": "Add Quota", "Add ratio override": "Add ratio override", + "Add Row": "Add Row", + "Add Rule": "Add Rule", "Add rule group": "Add rule group", "Add selectable group": "Add selectable group", "Add subscription": "Add subscription", @@ -176,35 +167,36 @@ "Add tier": "Add tier", "Add time condition": "Add time condition", "Add time rule group": "Add time rule group", + "Add Uptime Kuma Group": "Add Uptime Kuma Group", + "Add User": "Add User", "Add user group": "Add user group", "Add your API keys, set up channels and configure access permissions": "Add your API keys, set up channels and configure access permissions", - "Add {{title}}": "Add {{title}}", - "Added successfully": "Added successfully", "Added {{count}} custom model(s)": "Added {{count}} custom model(s)", "Added {{count}} model(s)": "Added {{count}} model(s)", + "Added successfully": "Added successfully", "Additional Conditions": "Additional Conditions", + "Additional information": "Additional information", "Additional Information": "Additional Information", "Additional Limit": "Additional Limit", "Additional Limits": "Additional Limits", - "Additional information": "Additional information", "Additional metered capability": "Additional metered capability", "Adjust Quota": "Adjust Quota", "Adjust response formatting, prompt behavior, proxy, and upstream automation.": "Adjust response formatting, prompt behavior, proxy, and upstream automation.", "Adjust the appearance and layout to suit your preferences.": "Adjust the appearance and layout to suit your preferences.", "Admin": "Admin", - "Admin Only": "Admin Only", "Admin access required": "Admin access required", "Admin area": "Admin area", "Admin notes (only visible to admins)": "Admin notes (only visible to admins)", + "Admin Only": "Admin Only", "Administer user accounts and roles.": "Administer user accounts and roles.", "Administrator account": "Administrator account", "Administrator username": "Administrator username", "Advanced": "Advanced", "Advanced Configuration": "Advanced Configuration", - "Advanced Options": "Advanced Options", - "Advanced Settings": "Advanced Settings", "Advanced options": "Advanced options", + "Advanced Options": "Advanced Options", "Advanced platform configuration.": "Advanced platform configuration.", + "Advanced Settings": "Advanced Settings", "Advanced text editing": "Advanced text editing", "After clicking the button, you'll be asked to authorize the bot": "After clicking the button, you'll be asked to authorize the bot", "After disabling, it will no longer be shown to users, but historical orders are not affected. Continue?": "After disabling, it will no longer be shown to users, but historical orders are not affected. Continue?", @@ -213,40 +205,51 @@ "After scanning, the binding will complete automatically": "After scanning, the binding will complete automatically", "Agent ID *": "Agent ID *", "Aggregated usage metrics and trend charts.": "Aggregated usage metrics and trend charts.", + "aggregates 50+ AI providers behind one unified API. Manage access, track costs, and scale effortlessly.": "aggregates 50+ AI providers behind one unified API. Manage access, track costs, and scale effortlessly.", + "AGPL v3.0 License": "AGPL v3.0 License", + "AI model testing environment": "AI model testing environment", + "AI models": "AI models", + "AI models supported": "AI models supported", + "AI Proxy": "AI Proxy", + "AI Proxy Library": "AI Proxy Library", + "AIGC2D": "AIGC2D", + "AILS": "AILS", + "AK/SK mode: use AccessKey|SecretAccessKey|Region": "AK/SK mode: use AccessKey|SecretAccessKey|Region", "Ali": "Ali", "All": "All", + "All edits are overwrite operations. Leave fields empty to keep current values unchanged.": "All edits are overwrite operations. Leave fields empty to keep current values unchanged.", + "All files exceed the maximum size.": "All files exceed the maximum size.", "All Groups": "All Groups", "All Models": "All Models", + "All models in use are properly configured.": "All models in use are properly configured.", "All Must Match (AND)": "All Must Match (AND)", "All Status": "All Status", "All Sync Status": "All Sync Status", "All Tags": "All Tags", "All Types": "All Types", + "All upstream data is trusted": "All upstream data is trusted", "All Vendors": "All Vendors", "All Your AI Models": "All Your AI Models", - "All edits are overwrite operations. Leave fields empty to keep current values unchanged.": "All edits are overwrite operations. Leave fields empty to keep current values unchanged.", - "All files exceed the maximum size.": "All files exceed the maximum size.", - "All models in use are properly configured.": "All models in use are properly configured.", - "All upstream data is trusted": "All upstream data is trusted", "Allocated Memory": "Allocated Memory", - "Allow Claude beta query passthrough": "Allow Claude beta query passthrough", - "Allow HTTP image requests": "Allow HTTP image requests", - "Allow Insecure Origins": "Allow Insecure Origins", - "Allow Private IPs": "Allow Private IPs", - "Allow Retry": "Allow Retry", "Allow accountFilter parameter": "Allow accountFilter parameter", + "Allow Claude beta query passthrough": "Allow Claude beta query passthrough", "Allow clients to query configured ratios via `/api/ratio`.": "Allow clients to query configured ratios via `/api/ratio`.", + "Allow HTTP image requests": "Allow HTTP image requests", "Allow include usage obfuscation passthrough": "Allow include usage obfuscation passthrough", "Allow inference geography passthrough": "Allow inference geography passthrough", "Allow inference_geo passthrough": "Allow inference_geo passthrough", + "Allow Insecure Origins": "Allow Insecure Origins", "Allow new users to register": "Allow new users to register", + "Allow Private IPs": "Allow Private IPs", "Allow registration with password": "Allow registration with password", "Allow requests to private IP ranges (10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16)": "Allow requests to private IP ranges (10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16)", + "Allow Retry": "Allow Retry", "Allow safety_identifier passthrough": "Allow safety_identifier passthrough", "Allow service_tier passthrough": "Allow service_tier passthrough", "Allow speed passthrough": "Allow speed passthrough", "Allow upstream callbacks": "Allow upstream callbacks", "Allow users to check in daily for random quota rewards": "Allow users to check in daily for random quota rewards", + "Allow users to close this banner. If disabled, the close button is hidden.": "Allow users to close this banner. If disabled, the close button is hidden.", "Allow users to enter promo codes": "Allow users to enter promo codes", "Allow users to log in with password": "Allow users to log in with password", "Allow users to register and sign in with Passkey (WebAuthn)": "Allow users to register and sign in with Passkey (WebAuthn)", @@ -255,8 +258,8 @@ "Allow users to sign in with LinuxDO": "Allow users to sign in with LinuxDO", "Allow users to sign in with OpenID Connect": "Allow users to sign in with OpenID Connect", "Allow users to sign in with Telegram": "Allow users to sign in with Telegram", - "Allow users to sign in with WeChat": "Allow users to sign in with WeChat", "Allow users to sign in with this provider": "Allow users to sign in with this provider", + "Allow users to sign in with WeChat": "Allow users to sign in with WeChat", "Allow using models without price configuration": "Allow using models without price configuration", "Allowed": "Allowed", "Allowed Origins": "Allowed Origins", @@ -265,21 +268,24 @@ "Alternate": "Alternate", "Always matches (default tier).": "Always matches (default tier).", "Amount": "Amount", - "Amount Due": "Amount Due", "Amount cannot be changed when editing.": "Amount cannot be changed when editing.", "Amount discount": "Amount discount", + "Amount Due": "Amount Due", "Amount must be a whole number": "Amount must be a whole number", "Amount must be greater than 0": "Amount must be greater than 0", "Amount of quota to credit to user account.": "Amount of quota to credit to user account.", "Amount options must be a JSON array": "Amount options must be a JSON array", "Amount to pay:": "Amount to pay:", "An unexpected error occurred": "An unexpected error occurred", + "and": "and", "Animation": "Animation", + "Animation Presets": "Animation Presets", + "Animation presets can use custom colors and speed.": "Animation presets can use custom colors and speed.", "Animation Type": "Animation Type", - "Announcement Details": "Announcement Details", "Announcement added. Click \"Save Settings\" to apply.": "Announcement added. Click \"Save Settings\" to apply.", "Announcement content": "Announcement content", "Announcement deleted. Click \"Save Settings\" to apply.": "Announcement deleted. Click \"Save Settings\" to apply.", + "Announcement Details": "Announcement Details", "Announcement displayed to users (supports Markdown & HTML)": "Announcement displayed to users (supports Markdown & HTML)", "Announcement updated. Click \"Save Settings\" to apply.": "Announcement updated. Click \"Save Settings\" to apply.", "Announcements": "Announcements", @@ -287,13 +293,47 @@ "Answer": "Answer", "Anthropic": "Anthropic", "Any Match (OR)": "Any Match (OR)", + "API Access": "API Access", + "API Addresses": "API Addresses", + "API Base URL (Important: Not Chat API) *": "API Base URL (Important: Not Chat API) *", + "API Base URL *": "API Base URL *", + "API Endpoints": "API Endpoints", + "API Info": "API Info", + "API info added. Click \"Save Settings\" to apply.": "API info added. Click \"Save Settings\" to apply.", + "API info deleted. Click \"Save Settings\" to apply.": "API info deleted. Click \"Save Settings\" to apply.", + "API info saved successfully": "API info saved successfully", + "API info updated. Click \"Save Settings\" to apply.": "API info updated. Click \"Save Settings\" to apply.", + "API key": "API key", + "API Key": "API Key", + "API Key (one per line for batch mode)": "API Key (one per line for batch mode)", + "API Key (Production)": "API Key (Production)", + "API Key (Sandbox)": "API Key (Sandbox)", + "API Key *": "API Key *", + "API Key created successfully": "API Key created successfully", + "API Key deleted successfully": "API Key deleted successfully", + "API Key disabled successfully": "API Key disabled successfully", + "API Key enabled successfully": "API Key enabled successfully", + "API key from the provider": "API key from the provider", + "API key is required": "API key is required", + "API Key mode (does not support batch creation)": "API Key mode (does not support batch creation)", + "API Key mode: use APIKey|Region": "API Key mode: use APIKey|Region", + "API Key updated successfully": "API Key updated successfully", + "API Keys": "API Keys", + "API Private Key": "API Private Key", + "API Requests": "API Requests", + "API secret": "API secret", + "API token management": "API token management", + "API URL": "API URL", + "API usage records": "API usage records", + "API2GPT": "API2GPT", "Append": "Append", - "Append Template": "Append Template", "Append mode: New keys will be added to the end of the existing key list": "Append mode: New keys will be added to the end of the existing key list", - "Append to End": "Append to End", + "Append Template": "Append Template", "Append to channel": "Append to channel", + "Append to End": "Append to End", "Append to existing keys": "Append to existing keys", "Append value to array / string / object end": "Append value to array / string / object end", + "appended": "appended", "Application": "Application", "Applies to custom completion endpoints. JSON map of model → ratio.": "Applies to custom completion endpoints. JSON map of model → ratio.", "Apply All Upstream Updates": "Apply All Upstream Updates", @@ -303,6 +343,7 @@ "Apply Sync": "Apply Sync", "Applying...": "Applying...", "Approx.": "Approx.", + "are also listed here. Remove them from Models to keep the `/v1/models` response user-friendly and hide vendor-specific names.": "are also listed here. Remove them from Models to keep the `/v1/models` response user-friendly and hide vendor-specific names.", "Are you sure you want to delete": "Are you sure you want to delete", "Are you sure you want to delete all auto-disabled keys? This action cannot be undone.": "Are you sure you want to delete all auto-disabled keys? This action cannot be undone.", "Are you sure you want to delete deployment \"{{name}}\"? This action cannot be undone.": "Are you sure you want to delete deployment \"{{name}}\"? This action cannot be undone.", @@ -324,19 +365,20 @@ "At least one valid key source is required": "At least one valid key source is required", "Attach": "Attach", "Audio": "Audio", + "Audio comp.": "Audio comp.", + "Audio completion ratio": "Audio completion ratio", "Audio In": "Audio In", + "Audio input": "Audio input", "Audio Input": "Audio Input", "Audio Input Price": "Audio Input Price", "Audio Out": "Audio Out", - "Audio Output": "Audio Output", - "Audio Preview": "Audio Preview", - "Audio Tokens": "Audio Tokens", - "Audio comp.": "Audio comp.", - "Audio completion ratio": "Audio completion ratio", - "Audio input": "Audio input", "Audio output": "Audio output", + "Audio Output": "Audio Output", "Audio playback failed": "Audio playback failed", + "Audio Preview": "Audio Preview", "Audio ratio": "Audio ratio", + "Audio Tokens": "Audio Tokens", + "Aurora": "Aurora", "Auth Style": "Auth Style", "Authentication": "Authentication", "Authenticator code": "Authenticator code", @@ -345,13 +387,13 @@ "Authorize": "Authorize", "Auto": "Auto", "Auto (Circuit Breaker)": "Auto (Circuit Breaker)", + "Auto assignment order": "Auto assignment order", "Auto Ban": "Auto Ban", + "Auto detect (default)": "Auto detect (default)", "Auto Disabled": "Auto Disabled", "Auto Group Chain": "Auto Group Chain", - "Auto Sync Upstream Models": "Auto Sync Upstream Models", - "Auto assignment order": "Auto assignment order", - "Auto detect (default)": "Auto detect (default)", "Auto refresh": "Auto refresh", + "Auto Sync Upstream Models": "Auto Sync Upstream Models", "Auto-Accept Unpriced Models on Registration": "Auto-Accept Unpriced Models on Registration", "Auto-disable status codes": "Auto-disable status codes", "Auto-discover": "Auto-discover", @@ -372,19 +414,24 @@ "Availability Panel": "Availability Panel", "Availability Status Monitor": "Availability Status Monitor", "Available": "Available", + "Available disk space": "Available disk space", "Available Models": "Available Models", "Available Rewards": "Available Rewards", - "Available disk space": "Available disk space", "Average RPM": "Average RPM", "Average TPM": "Average TPM", - "Azure": "Azure", + "AWS": "AWS", + "AWS Bedrock Claude Compat": "AWS Bedrock Claude Compat", + "AWS Key Format": "AWS Key Format", + "Azure": "Azure", + "AZURE_OPENAI_ENDPOINT *": "AZURE_OPENAI_ENDPOINT *", "Back": "Back", "Back to Home": "Back to Home", - "Back to Models": "Back to Models", "Back to login": "Back to login", + "Back to Models": "Back to Models", "Backed up": "Backed up", - "Background Type": "Background Type", + "Background color": "Background color", "Background job tracker for queued work.": "Background job tracker for queued work.", + "Background Type": "Background Type", "Backup Code": "Backup Code", "Backup code must be in format XXXX-XXXX": "Backup code must be in format XXXX-XXXX", "Backup codes regenerated successfully": "Backup codes regenerated successfully", @@ -399,54 +446,56 @@ "Balance updated successfully": "Balance updated successfully", "Balance updated: {{balance}}": "Balance updated: {{balance}}", "Banner Content": "Banner Content", + "Banner Dismissible": "Banner Dismissible", "Banner Font Color": "Banner Font Color", + "Banner Type": "Banner Type", "Bar Chart": "Bar Chart", "Bark Push URL": "Bark Push URL", - "Base Limits": "Base Limits", - "Base Price": "Base Price", - "Base URL": "Base URL", - "Base URL of your Uptime Kuma instance": "Base URL of your Uptime Kuma instance", "Base address provided by your Epay service": "Base address provided by your Epay service", "Base amount. Actual deduction = base amount × system group rate.": "Base amount. Actual deduction = base amount × system group rate.", + "Base Limits": "Base Limits", "Base multipliers applied when users select specific groups.": "Base multipliers applied when users select specific groups.", + "Base Price": "Base Price", "Base rate limit windows for this account.": "Base rate limit windows for this account.", + "Base URL": "Base URL", + "Base URL of your Uptime Kuma instance": "Base URL of your Uptime Kuma instance", "Basic Authentication": "Basic Authentication", "Basic Configuration": "Basic Configuration", "Basic Info": "Basic Info", "Basic Information": "Basic Information", "Basic Templates": "Basic Templates", "Batch Add (one key per line)": "Batch Add (one key per line)", - "Batch Edit": "Batch Edit", - "Batch Edit by Tag": "Batch Edit by Tag", "Batch delete failed": "Batch delete failed", "Batch detection complete: {{channels}} channels, {{add}} to add, {{remove}} to remove, {{fails}} failed": "Batch detection complete: {{channels}} channels, {{add}} to add, {{remove}} to remove, {{fails}} failed", "Batch detection failed": "Batch detection failed", "Batch disable failed": "Batch disable failed", + "Batch Edit": "Batch Edit", "Batch edit all channels with this tag. Leave fields empty to keep current values.": "Batch edit all channels with this tag. Leave fields empty to keep current values.", + "Batch Edit by Tag": "Batch Edit by Tag", "Batch enable failed": "Batch enable failed", "Batch processing failed": "Batch processing failed", "Batch upstream model updates applied: {{channels}} channels, {{added}} added, {{removed}} removed, {{fails}} failed": "Batch upstream model updates applied: {{channels}} channels, {{added}} added, {{removed}} removed, {{fails}} failed", "Best for single-tenant deployments. Pricing and billing options stay hidden.": "Best for single-tenant deployments. Pricing and billing options stay hidden.", "Billing": "Billing", + "Billing currency": "Billing currency", "Billing Details": "Billing Details", "Billing History": "Billing History", "Billing Mode": "Billing Mode", "Billing Process": "Billing Process", "Billing Source": "Billing Source", - "Billing currency": "Billing currency", "Bind": "Bind", + "Bind an email address to your account.": "Bind an email address to your account.", "Bind Email": "Bind Email", "Bind Telegram Account": "Bind Telegram Account", "Bind WeChat Account": "Bind WeChat Account", - "Bind an email address to your account.": "Bind an email address to your account.", "Binding Information": "Binding Information", "Binding successful!": "Binding successful!", "Binding your {{provider}} account": "Binding your {{provider}} account", "Binding...": "Binding...", "Bindings": "Bindings", "Blacklist": "Blacklist", - "Blacklist (Block listed IPs)": "Blacklist (Block listed IPs)", "Blacklist (Block listed domains)": "Blacklist (Block listed domains)", + "Blacklist (Block listed IPs)": "Blacklist (Block listed IPs)", "Blank Rule": "Blank Rule", "Blend": "Blend", "Blink": "Blink", @@ -465,18 +514,15 @@ "Broadcast a global banner to users. Markdown is supported.": "Broadcast a global banner to users. Markdown is supported.", "Broadcast short system notices on the dashboard": "Broadcast short system notices on the dashboard", "Browse and compare": "Browse and compare", - "Budget Tokens Ratio": "Budget Tokens Ratio", "Budget tokens = max tokens × ratio. Accepts a decimal between 0.002 and 1. Recommended to keep aligned with upstream billing.": "Budget tokens = max tokens × ratio. Accepts a decimal between 0.002 and 1. Recommended to keep aligned with upstream billing.", "Budget tokens = max tokens × ratio. Accepts a decimal between 0.1 and 1.": "Budget tokens = max tokens × ratio. Accepts a decimal between 0.1 and 1.", + "Budget Tokens Ratio": "Budget Tokens Ratio", "Budgets": "Budgets", "Built for developers,": "Built for developers,", "Built-in": "Built-in", "Built-in Device": "Built-in Device", "Built-in: phone fingerprint/face, or Windows Hello; External: USB security key": "Built-in: phone fingerprint/face, or Windows Hello; External: USB security key", - "CC Switch": "CC Switch", - "CNY": "CNY", - "CNY per USD": "CNY per USD", - "CPU Threshold (%)": "CPU Threshold (%)", + "by": "by", "Cache": "Cache", "Cache Creation": "Cache Creation", "Cache Creation (1h)": "Cache Creation (1h)", @@ -485,13 +531,13 @@ "Cache Directory Disk Space": "Cache Directory Disk Space", "Cache Directory Info": "Cache Directory Info", "Cache Entries": "Cache Entries", + "Cache mode": "Cache mode", + "Cache ratio": "Cache ratio", "Cache Read": "Cache Read", + "Cache write": "Cache write", "Cache Write": "Cache Write", "Cache Write (1h)": "Cache Write (1h)", "Cache Write (5m)": "Cache Write (5m)", - "Cache mode": "Cache mode", - "Cache ratio": "Cache ratio", - "Cache write": "Cache write", "Cached": "Cached", "Cached input": "Cached input", "Calculated price: ${{price}} per 1M tokens": "Calculated price: ${{price}} per 1M tokens", @@ -501,11 +547,11 @@ "Call Count Ranking": "Call Count Ranking", "Call Proportion": "Call Proportion", "Call Trend": "Call Trend", + "Callback address": "Callback address", "Callback Caller IP": "Callback Caller IP", + "Callback notification URL": "Callback notification URL", "Callback Payment Method": "Callback Payment Method", "Callback URL": "Callback URL", - "Callback address": "Callback address", - "Callback notification URL": "Callback notification URL", "Cancel": "Cancel", "Cancelled": "Cancelled", "Cancelled at": "Cancelled at", @@ -515,60 +561,63 @@ "Category name is required": "Category name is required", "Category name must be less than 50 characters": "Category name must be less than 50 characters", "Caution": "Caution", + "CC Switch": "CC Switch", "Chain": "Chain", "Change": "Change", + "Change language": "Change language", "Change Password": "Change Password", "Change To": "Change To", - "Change language": "Change language", "Changing...": "Changing...", "Channel": "Channel", "Channel Affinity": "Channel Affinity", - "Channel Affinity: Upstream Cache Hit": "Channel Affinity: Upstream Cache Hit", - "Channel Extra Settings": "Channel Extra Settings", - "Channel ID": "Channel ID", - "Channel Provider": "Channel Provider", "Channel affinity reuses the last successful channel based on keys extracted from the request context or JSON body.": "Channel affinity reuses the last successful channel based on keys extracted from the request context or JSON body.", + "Channel Affinity: Upstream Cache Hit": "Channel Affinity: Upstream Cache Hit", "Channel copied successfully": "Channel copied successfully", "Channel created successfully": "Channel created successfully", "Channel deleted successfully": "Channel deleted successfully", "Channel disabled successfully": "Channel disabled successfully", "Channel enabled successfully": "Channel enabled successfully", + "Channel Extra Settings": "Channel Extra Settings", + "Channel ID": "Channel ID", "Channel key": "Channel key", "Channel key unlocked": "Channel key unlocked", "Channel models": "Channel models", "Channel name is required": "Channel name is required", + "Channel Provider": "Channel Provider", "Channel test completed": "Channel test completed", "Channel type is required": "Channel type is required", "Channel updated successfully": "Channel updated successfully", "Channel-specific settings (JSON format)": "Channel-specific settings (JSON format)", "Channel:": "Channel:", + "channel(s)? This action cannot be undone.": "channel(s)? This action cannot be undone.", "Channels": "Channels", "Channels deleted successfully": "Channels deleted successfully", "Chart Preferences": "Chart Preferences", "Chart Settings": "Chart Settings", "Chat": "Chat", + "Chat area": "Chat area", "Chat Area": "Chat Area", "Chat Client Name": "Chat Client Name", - "Chat Presets": "Chat Presets", - "Chat area": "Chat area", "Chat client name is required": "Chat client name is required", "Chat configuration JSON": "Chat configuration JSON", "Chat preset not found": "Chat preset not found", + "Chat Presets": "Chat Presets", "Chat session management": "Chat session management", "ChatCompletions -> Responses Compatibility": "ChatCompletions -> Responses Compatibility", "Check for updates": "Check for updates", "Check in daily to receive random quota rewards": "Check in daily to receive random quota rewards", "Check in now": "Check in now", "Check resolved IPs against IP filters even when accessing by domain": "Check resolved IPs against IP filters even when accessing by domain", - "Check-in Settings": "Check-in Settings", "Check-in failed": "Check-in failed", + "Check-in Settings": "Check-in Settings", "Check-in successful! Received": "Check-in successful! Received", "Checked in": "Checked in", "Checking connection": "Checking connection", "Checking name...": "Checking name...", "Checking updates...": "Checking updates...", + "checkout.session.completed": "checkout.session.completed", + "checkout.session.expired": "checkout.session.expired", "Chinese": "Chinese", - "Choose Group": "Choose Group", "Choose a preset effect and customize colors and speed.": "Choose a preset effect and customize colors and speed.", "Choose a primary color for the interface": "Choose a primary color for the interface", "Choose a username": "Choose a username", @@ -578,10 +627,12 @@ "Choose between left-to-right or right-to-left site direction": "Choose between left-to-right or right-to-left site direction", "Choose between system preference, light mode, or dark mode": "Choose between system preference, light mode, or dark mode", "Choose channels to sync upstream ratio configurations from": "Choose channels to sync upstream ratio configurations from", + "Choose Group": "Choose Group", "Choose how quota values are shown to users": "Choose how quota values are shown to users", "Choose how the platform will operate": "Choose how the platform will operate", - "Choose how to filter IP addresses": "Choose how to filter IP addresses", "Choose how to filter domains": "Choose how to filter domains", + "Choose how to filter IP addresses": "Choose how to filter IP addresses", + "Choose the banner category. Each category uses a matching visual style.": "Choose the banner category. Each category uses a matching visual style.", "Choose the bundle type and define the items inside it.": "Choose the bundle type and define the items inside it.", "Choose the default charts, range, and time granularity for model analytics.": "Choose the default charts, range, and time granularity for model analytics.", "Choose where to fetch upstream metadata.": "Choose where to fetch upstream metadata.", @@ -589,22 +640,22 @@ "Classic (Legacy Frontend)": "Classic (Legacy Frontend)", "Claude": "Claude", "Claude CLI Header Passthrough": "Claude CLI Header Passthrough", - "Clean Up Log Files": "Clean Up Log Files", "Clean history logs": "Clean history logs", "Clean logs": "Clean logs", "Clean up inactive cache": "Clean up inactive cache", + "Clean Up Log Files": "Clean Up Log Files", "Cleaned up {{count}} log files, freed {{size}}": "Cleaned up {{count}} log files, freed {{size}}", "Cleaning...": "Cleaning...", - "Cleanup Mode": "Cleanup Mode", "Cleanup failed": "Cleanup failed", + "Cleanup Mode": "Cleanup Mode", "Clear": "Clear", + "Clear all": "Clear all", "Clear All": "Clear All", "Clear All Cache": "Clear All Cache", - "Clear Mapping": "Clear Mapping", - "Clear all": "Clear all", "Clear all filters": "Clear all filters", "Clear cache for this rule": "Clear cache for this rule", "Clear filters": "Clear filters", + "Clear Mapping": "Clear Mapping", "Clear mode flags in prompts": "Clear mode flags in prompts", "Clear search": "Clear search", "Clear selection": "Clear selection", @@ -614,8 +665,8 @@ "Click \"Create Plan\" to create your first subscription plan": "Click \"Create Plan\" to create your first subscription plan", "Click \"Generate\" to create a token": "Click \"Generate\" to create a token", "Click for details": "Click for details", - "Click save when you're done.": "Click save when you're done.", "Click save when you're done.": "Click save when you're done.", + "Click save when you're done.": "Click save when you're done.", "Click the button below to bind your Telegram account": "Click the button below to bind your Telegram account", "Click to open deployment": "Click to open deployment", "Click to preview audio": "Click to preview audio", @@ -625,27 +676,29 @@ "Click to view full details": "Click to view full details", "Click to view full error message": "Click to view full error message", "Click to view full prompt": "Click to view full prompt", + "Client header value": "Client header value", "Client ID": "Client ID", "Client Secret": "Client Secret", - "Client header value": "Client header value", "Close": "Close", - "Close Today": "Close Today", "Close dialog": "Close dialog", "Close menu": "Close menu", + "Close Today": "Close Today", "Cloudflare": "Cloudflare", + "CNY": "CNY", + "CNY per USD": "CNY per USD", "Code": "Code", "Codes copied!": "Codes copied!", "Codex": "Codex", "Codex Account & Usage": "Codex Account & Usage", "Codex Authorization": "Codex Authorization", - "Codex CLI Header Passthrough": "Codex CLI Header Passthrough", "Codex channels use an OAuth JSON credential as the key.": "Codex channels use an OAuth JSON credential as the key.", + "Codex CLI Header Passthrough": "Codex CLI Header Passthrough", "Cohere": "Cohere", "Collapse": "Collapse", "Collapse All": "Collapse All", "Color": "Color", - "Color Stops": "Color Stops", "Color is required": "Color is required", + "Color Stops": "Color Stops", "Color:": "Color:", "Coming Soon!": "Coming Soon!", "Comma-separated color values for the gradient.": "Comma-separated color values for the gradient.", @@ -658,9 +711,10 @@ "Common": "Common", "Common Keys": "Common Keys", "Common Logs": "Common Logs", - "Common User": "Common User", "Common ports include 25, 465, and 587": "Common ports include 25, 465, and 587", + "Common User": "Common User", "Community driven, self-hosted, and extensible": "Community driven, self-hosted, and extensible", + "compatible API routes": "compatible API routes", "Compatible API routes for common AI application workflows": "Compatible API routes for common AI application workflows", "Complete API documentation with multi-language SDK support": "Complete API documentation with multi-language SDK support", "Complete Order": "Complete Order", @@ -684,12 +738,6 @@ "Configuration for Stripe payment integration": "Configuration for Stripe payment integration", "Configuration required": "Configuration required", "Configure": "Configure", - "Configure API documentation links for the dashboard": "Configure API documentation links for the dashboard", - "Configure Creem products. Provide a JSON array.": "Configure Creem products. Provide a JSON array.", - "Configure Gemini safety behavior, version overrides, and thinking adapter": "Configure Gemini safety behavior, version overrides, and thinking adapter", - "Configure Passkey (WebAuthn) login settings": "Configure Passkey (WebAuthn) login settings", - "Configure Waffo Pancake hosted checkout integration for USD-priced top-ups": "Configure Waffo Pancake hosted checkout integration for USD-priced top-ups", - "Configure Waffo payment aggregation platform integration": "Configure Waffo payment aggregation platform integration", "Configure a Creem product for user recharge options.": "Configure a Creem product for user recharge options.", "Configure a custom ratio for when users use a specific token group.": "Configure a custom ratio for when users use a specific token group.", "Configure a group that users can select when creating API keys.": "Configure a group that users can select when creating API keys.", @@ -697,21 +745,25 @@ "Configure a payment method for user recharge options.": "Configure a payment method for user recharge options.", "Configure a predefined chat link for end users.": "Configure a predefined chat link for end users.", "Configure and deploy a new container instance.": "Configure and deploy a new container instance.", + "Configure API documentation links for the dashboard": "Configure API documentation links for the dashboard", "Configure at:": "Configure at:", "Configure availability monitoring panel": "Configure availability monitoring panel", "Configure available payment methods. Provide a JSON array.": "Configure available payment methods. Provide a JSON array.", "Configure basic system information and branding": "Configure basic system information and branding", "Configure channel affinity (sticky routing) rules": "Configure channel affinity (sticky routing) rules", + "Configure Creem products. Provide a JSON array.": "Configure Creem products. Provide a JSON array.", "Configure custom OAuth providers for user authentication": "Configure custom OAuth providers for user authentication", "Configure daily check-in rewards for users": "Configure daily check-in rewards for users", "Configure discount rates based on recharge amounts": "Configure discount rates based on recharge amounts", "Configure experimental data export for the dashboard": "Configure experimental data export for the dashboard", + "Configure Gemini safety behavior, version overrides, and thinking adapter": "Configure Gemini safety behavior, version overrides, and thinking adapter", "Configure in your Creem dashboard": "Configure in your Creem dashboard", "Configure io.net API key for model deployments": "Configure io.net API key for model deployments", "Configure keyword filtering for prompts and responses.": "Configure keyword filtering for prompts and responses.", "Configure model, caching, and group ratios used for billing": "Configure model, caching, and group ratios used for billing", "Configure monitoring status page groups for the dashboard": "Configure monitoring status page groups for the dashboard", "Configure outgoing email server for notifications": "Configure outgoing email server for notifications", + "Configure Passkey (WebAuthn) login settings": "Configure Passkey (WebAuthn) login settings", "Configure password-based login and registration": "Configure password-based login and registration", "Configure per-model ratio for image inputs or outputs.": "Configure per-model ratio for image inputs or outputs.", "Configure per-tool unit prices ($/1K calls). Per-request models do not incur additional tool fees.": "Configure per-tool unit prices ($/1K calls). Per-request models do not incur additional tool fees.", @@ -727,6 +779,8 @@ "Configure upstream providers and routing.": "Configure upstream providers and routing.", "Configure upstream worker or proxy service for outbound requests": "Configure upstream worker or proxy service for outbound requests", "Configure user quota allocation and rewards": "Configure user quota allocation and rewards", + "Configure Waffo Pancake hosted checkout integration for USD-priced top-ups": "Configure Waffo Pancake hosted checkout integration for USD-priced top-ups", + "Configure Waffo payment aggregation platform integration": "Configure Waffo payment aggregation platform integration", "Configure xAI Grok model settings": "Configure xAI Grok model settings", "Configure xAI Grok model specific settings": "Configure xAI Grok model specific settings", "Configure your account behavior preferences": "Configure your account behavior preferences", @@ -737,22 +791,22 @@ "Confirm Billing Conflicts": "Confirm Billing Conflicts", "Confirm Changes": "Confirm Changes", "Confirm Cleanup": "Confirm Cleanup", - "Confirm Creem Purchase": "Confirm Creem Purchase", - "Confirm New Password": "Confirm New Password", - "Confirm Payment": "Confirm Payment", - "Confirm Selection": "Confirm Selection", - "Confirm Unbind": "Confirm Unbind", "Confirm cleanup of inactive disk cache?": "Confirm cleanup of inactive disk cache?", "Confirm clearing all channel affinity cache": "Confirm clearing all channel affinity cache", "Confirm clearing cache for this rule": "Confirm clearing cache for this rule", + "Confirm Creem Purchase": "Confirm Creem Purchase", "Confirm delete": "Confirm delete", "Confirm disable": "Confirm Disable", "Confirm enable": "Confirm Enable", "Confirm invalidate": "Confirm Invalidate", "Confirm log cleanup": "Confirm log cleanup", "Confirm log file cleanup?": "Confirm log file cleanup?", + "Confirm New Password": "Confirm New Password", "Confirm password": "Confirm password", + "Confirm Payment": "Confirm Payment", + "Confirm Selection": "Confirm Selection", "Confirm settings and finish setup": "Confirm settings and finish setup", + "Confirm Unbind": "Confirm Unbind", "Confirm your identity before removing this Passkey from your account.": "Confirm your identity before removing this Passkey from your account.", "Confirm your identity with Two-factor Authentication before registering a Passkey.": "Confirm your identity with Two-factor Authentication before registering a Passkey.", "Conflict": "Conflict", @@ -763,8 +817,8 @@ "Connection failed": "Connection failed", "Connection successful": "Connection successful", "Console": "Console", - "Console Area": "Console Area", "Console area": "Console area", + "Console Area": "Console Area", "Consume": "Consume", "Container": "Container", "Container name": "Container name", @@ -776,13 +830,13 @@ "Content not found.": "Content not found.", "Content not modified!": "Content not modified!", "Continue": "Continue", + "Continue with {{name}}": "Continue with {{name}}", "Continue with Discord": "Continue with Discord", "Continue with GitHub": "Continue with GitHub", "Continue with LinuxDO": "Continue with LinuxDO", "Continue with OIDC": "Continue with OIDC", "Continue with Telegram": "Continue with Telegram", "Continue with WeChat": "Continue with WeChat", - "Continue with {{name}}": "Continue with {{name}}", "Control log retention and clean historical data.": "Control log retention and clean historical data.", "Control passthrough behavior and connection keep-alive settings": "Control passthrough behavior and connection keep-alive settings", "Control request frequency to prevent abuse and manage system load.": "Control request frequency to prevent abuse and manage system load.", @@ -794,32 +848,31 @@ "Convert string to lowercase": "Convert string to lowercase", "Convert string to uppercase": "Convert string to uppercase", "Copied": "Copied", - "Copied to clipboard": "Copied to clipboard", "Copied {{count}} key(s)": "Copied {{count}} key(s)", - "Copied!": "Copied!", + "Copied to clipboard": "Copied to clipboard", "Copied: {{model}}": "Copied: {{model}}", + "Copied!": "Copied!", "Copy": "Copy", - "Copy API key": "Copy API key", + "Copy a request header": "Copy a request header", "Copy All": "Copy All", + "Copy all backup codes": "Copy all backup codes", "Copy All Codes": "Copy All Codes", + "Copy API key": "Copy API key", + "Copy authorization link": "Copy authorization link", "Copy Channel": "Copy Channel", + "Copy code": "Copy code", "Copy Connection Info": "Copy Connection Info", + "Copy failed": "Copy failed", "Copy Field": "Copy Field", "Copy Header": "Copy Header", "Copy Key": "Copy Key", "Copy Link": "Copy Link", - "Copy Request Header": "Copy Request Header", - "Copy URL": "Copy URL", - "Copy a request header": "Copy a request header", - "Copy all backup codes": "Copy all backup codes", - "Copy authorization link": "Copy authorization link", - "Copy code": "Copy code", - "Copy failed": "Copy failed", "Copy model name": "Copy model name", "Copy model names": "Copy model names", "Copy prompt": "Copy prompt", "Copy redemption code": "Copy redemption code", "Copy referral link": "Copy referral link", + "Copy Request Header": "Copy Request Header", "Copy secret key": "Copy secret key", "Copy selected codes": "Copy selected codes", "Copy selected keys": "Copy selected keys", @@ -828,42 +881,44 @@ "Copy this prompt and send it to an LLM (e.g. ChatGPT / Claude) to help design your billing expression.": "Copy this prompt and send it to an LLM (e.g. ChatGPT / Claude) to help design your billing expression.", "Copy to clipboard": "Copy to clipboard", "Copy token": "Copy token", + "Copy URL": "Copy URL", "Core Configuration": "Core Configuration", "Core Features": "Core Features", "Cost": "Cost", - "Cost Tracking": "Cost Tracking", "Cost in USD per request, regardless of tokens used.": "Cost in USD per request, regardless of tokens used.", + "Cost Tracking": "Cost Tracking", "Count must be between {{min}} and {{max}}": "Count must be between {{min}} and {{max}}", "Coze": "Coze", + "CPU Threshold (%)": "CPU Threshold (%)", "Create": "Create", - "Create API Key": "Create API Key", - "Create Channel": "Create Channel", - "Create Code": "Create Code", - "Create Model": "Create Model", - "Create Plan": "Create Plan", - "Create Prefill Group": "Create Prefill Group", - "Create Provider": "Create Provider", - "Create Redemption Code": "Create Redemption Code", - "Create Vendor": "Create Vendor", "Create a copy of:": "Create a copy of:", "Create a new user group to configure ratio overrides for.": "Create a new user group to configure ratio overrides for.", "Create account": "Create account", "Create an account": "Create an account", "Create and review invite or credit codes.": "Create and review invite or credit codes.", + "Create API Key": "Create API Key", "Create cache": "Create cache", "Create cache ratio": "Create cache ratio", + "Create Channel": "Create Channel", + "Create Code": "Create Code", "Create credentials for the root user": "Create credentials for the root user", "Create deployment": "Create deployment", + "Create Model": "Create Model", "Create multiple API keys at once (random suffix will be added to names)": "Create multiple API keys at once (random suffix will be added to names)", "Create multiple channels from multiple keys": "Create multiple channels from multiple keys", "Create multiple redemption codes at once (1-100)": "Create multiple redemption codes at once (1-100)", "Create new subscription plan": "Create New Subscription Plan", "Create or update frequently asked questions for users": "Create or update frequently asked questions for users", "Create or update system announcements for the dashboard": "Create or update system announcements for the dashboard", + "Create Plan": "Create Plan", + "Create Prefill Group": "Create Prefill Group", + "Create Provider": "Create Provider", + "Create Redemption Code": "Create Redemption Code", "Create request parameter override rules with a visual editor or raw JSON.": "Create request parameter override rules with a visual editor or raw JSON.", "Create request parameter override rules without editing raw JSON.": "Create request parameter override rules without editing raw JSON.", "Create reusable bundles of models, tags, endpoints, and user groups to speed up configuration elsewhere in the console.": "Create reusable bundles of models, tags, endpoints, and user groups to speed up configuration elsewhere in the console.", "Create succeeded": "Create succeeded", + "Create Vendor": "Create Vendor", "Create your first group to reuse model, tag, or endpoint selections anywhere in the dashboard.": "Create your first group to reuse model, tag, or endpoint selections anywhere in the dashboard.", "Create, revoke, and audit API tokens.": "Create, revoke, and audit API tokens.", "Created": "Created", @@ -883,40 +938,40 @@ "Current Balance": "Current Balance", "Current Billing": "Current Billing", "Current Cache Size": "Current Cache Size", - "Current Level Only": "Current Level Only", - "Current Password": "Current Password", - "Current Price": "Current Price", - "Current Value": "Current Value", "Current email: {{email}}. Enter a new email to change.": "Current email: {{email}}. Enter a new email to change.", "Current key": "Current key", "Current legacy JSON is invalid, cannot append": "Current legacy JSON is invalid, cannot append", + "Current Level Only": "Current Level Only", "Current models for the longest channel in this tag. May not include all models from all channels.": "Current models for the longest channel in this tag. May not include all models from all channels.", + "Current Password": "Current Password", + "Current Price": "Current Price", "Current quota": "Current quota", + "Current Value": "Current Value", "Current version": "Current version", "Current:": "Current:", "Custom": "Custom", "Custom (seconds)": "Custom (seconds)", + "Custom Amount": "Custom Amount", "Custom API base URL. For official channels, New API has built-in addresses. Only fill this for third-party proxy sites or special endpoints. Do not add /v1 or trailing slash.": "Custom API base URL. For official channels, New API has built-in addresses. Only fill this for third-party proxy sites or special endpoints. Do not add /v1 or trailing slash.", "Custom API base URL. Leave empty to use provider default.": "Custom API base URL. Leave empty to use provider default.", - "Custom Amount": "Custom Amount", + "Custom color": "Custom color", "Custom CSS": "Custom CSS", "Custom Currency": "Custom Currency", "Custom Currency Symbol": "Custom Currency Symbol", - "Custom Error Response": "Custom Error Response", - "Custom Home Page": "Custom Home Page", - "Custom OAuth": "Custom OAuth", - "Custom OAuth Providers": "Custom OAuth Providers", - "Custom Seconds": "Custom Seconds", - "Custom Time Range": "Custom Time Range", - "Custom Zoom": "Custom Zoom", - "Custom color": "Custom color", "Custom currency symbol is required": "Custom currency symbol is required", "Custom database driver detected.": "Custom database driver detected.", + "Custom Error Response": "Custom Error Response", + "Custom Home Page": "Custom Home Page", "Custom message shown when access is denied": "Custom message shown when access is denied", "Custom model (comma-separated)": "Custom model (comma-separated)", "Custom module": "Custom module", "Custom multipliers when specific user groups use specific token groups. Example: VIP users get 0.9x rate when using \"edit_this\" group tokens.": "Custom multipliers when specific user groups use specific token groups. Example: VIP users get 0.9x rate when using \"edit_this\" group tokens.", + "Custom OAuth": "Custom OAuth", + "Custom OAuth Providers": "Custom OAuth Providers", + "Custom Seconds": "Custom Seconds", "Custom sidebar section": "Custom sidebar section", + "Custom Time Range": "Custom Time Range", + "Custom Zoom": "Custom Zoom", "Customize sidebar display content": "Customize sidebar display content", "Daily": "Daily", "Daily Check-in": "Daily Check-in", @@ -930,74 +985,76 @@ "Data management and log viewing": "Data management and log viewing", "Database": "Database", "Database check": "Database check", - "Date Range": "Date Range", "Date and time when this announcement should be displayed": "Date and time when this announcement should be displayed", + "Date Range": "Date Range", "Day": "Day", + "days": "days", "Days to Retain": "Days to Retain", "Deducted by subscription": "Deducted by subscription", "DeepSeek": "DeepSeek", + "default": "default", "Default": "Default", "Default (New Frontend)": "Default (New Frontend)", "Default API Version *": "Default API Version *", "Default API version for this channel": "Default API version for this channel", "Default Collapse Sidebar": "Default Collapse Sidebar", - "Default Max Tokens": "Default Max Tokens", - "Default Responses API version, if empty, will use the API version above": "Default Responses API version, if empty, will use the API version above", - "Default TTL (seconds)": "Default TTL (seconds)", "Default consumption chart": "Default consumption chart", + "Default Max Tokens": "Default Max Tokens", "Default model call chart": "Default model call chart", "Default range": "Default range", + "Default Responses API version, if empty, will use the API version above": "Default Responses API version, if empty, will use the API version above", "Default system prompt for this channel": "Default system prompt for this channel", "Default time granularity": "Default time granularity", "Default to auto groups": "Default to auto groups", + "Default TTL (seconds)": "Default TTL (seconds)", "Defaults to the wallet page when empty": "Defaults to the wallet page when empty", "Define API endpoints for this model (JSON format)": "Define API endpoints for this model (JSON format)", "Define endpoint mappings for each provider.": "Define endpoint mappings for each provider.", "Define per-group rules to add, remove, or append selectable groups for specific user groups.": "Define per-group rules to add, remove, or append selectable groups for specific user groups.", "Delete": "Delete", "Delete (": "Delete (", + "Delete {{count}} API key(s)?": "Delete {{count}} API key(s)?", + "Delete a runtime request header": "Delete a runtime request header", "Delete Account": "Delete Account", "Delete All Disabled": "Delete All Disabled", "Delete All Disabled Channels?": "Delete All Disabled Channels?", "Delete Auto-Disabled": "Delete Auto-Disabled", "Delete Channel": "Delete Channel", "Delete Channels?": "Delete Channels?", + "Delete condition": "Delete condition", "Delete Condition": "Delete Condition", + "Delete failed": "Delete failed", "Delete Field": "Delete Field", + "Delete group": "Delete group", "Delete Header": "Delete Header", "Delete Invalid": "Delete Invalid", + "Delete invalid codes": "Delete invalid codes", + "Delete invalid codes (used/disabled/expired)": "Delete invalid codes (used/disabled/expired)", + "Delete invalid redemption codes": "Delete invalid redemption codes", "Delete Invalid Redemption Codes?": "Delete Invalid Redemption Codes?", + "Delete logs": "Delete logs", "Delete Model": "Delete Model", "Delete Models?": "Delete Models?", "Delete Provider": "Delete Provider", "Delete Request Header": "Delete Request Header", - "Delete a runtime request header": "Delete a runtime request header", - "Delete condition": "Delete condition", - "Delete failed": "Delete failed", - "Delete group": "Delete group", - "Delete invalid codes": "Delete invalid codes", - "Delete invalid codes (used/disabled/expired)": "Delete invalid codes (used/disabled/expired)", - "Delete invalid redemption codes": "Delete invalid redemption codes", - "Delete logs": "Delete logs", "Delete selected API keys": "Delete selected API keys", "Delete selected channels": "Delete selected channels", "Delete selected models": "Delete selected models", - "Delete {{count}} API key(s)?": "Delete {{count}} API key(s)?", "Deleted": "Deleted", "Deleted successfully": "Deleted successfully", "Deleting will permanently remove this subscription record (including benefit details). Continue?": "Deleting will permanently remove this subscription record (including benefit details). Continue?", "Deleting...": "Deleting...", - "Demo Site Mode": "Demo Site Mode", "Demo site": "Demo site", "Demo site mode": "Demo site mode", + "Demo Site Mode": "Demo Site Mode", "Demote": "Demote", "Deploy your own gateway and start routing requests through your configured upstream services.": "Deploy your own gateway and start routing requests through your configured upstream services.", - "Deployment ID": "Deployment ID", - "Deployment Region *": "Deployment Region *", "Deployment created successfully": "Deployment created successfully", "Deployment details": "Deployment details", + "Deployment ID": "Deployment ID", "Deployment location": "Deployment location", "Deployment logs": "Deployment logs", + "Deployment Region *": "Deployment Region *", "Deployment requested": "Deployment requested", "Deployments": "Deployments", "Desc": "Desc", @@ -1007,6 +1064,7 @@ "Description": "Description", "Description is required": "Description is required", "Designed and Developed by": "Designed and Developed by", + "designed for scale": "designed for scale", "Destroyed": "Destroyed", "Detailed request logs for investigations.": "Detailed request logs for investigations.", "Details": "Details", @@ -1027,7 +1085,6 @@ "Disable": "Disable", "Disable 2FA": "Disable 2FA", "Disable All": "Disable All", - "Disable Two-Factor Authentication": "Disable Two-Factor Authentication", "Disable on failure": "Disable on failure", "Disable selected channels": "Disable selected channels", "Disable selected models": "Disable selected models", @@ -1035,40 +1092,42 @@ "Disable thinking processing models": "Disable thinking processing models", "Disable this key?": "Disable this key?", "Disable threshold (seconds)": "Disable threshold (seconds)", + "Disable Two-Factor Authentication": "Disable Two-Factor Authentication", + "disabled": "disabled", "Disabled": "Disabled", + "Disabled all channels with tag: {{tag}}": "Disabled all channels with tag: {{tag}}", "Disabled Reason": "Disabled Reason", "Disabled Time": "Disabled Time", - "Disabled all channels with tag: {{tag}}": "Disabled all channels with tag: {{tag}}", "Disabling...": "Disabling...", "Discord": "Discord", "Discount": "Discount", - "Discount Rate": "Discount Rate", - "Discount Rate:": "Discount Rate:", "Discount map by recharge amount (JSON object)": "Discount map by recharge amount (JSON object)", - "Discount rate must be greater than 0": "Discount rate must be greater than 0", + "Discount Rate": "Discount Rate", "Discount rate must be ≤ 1": "Discount rate must be ≤ 1", + "Discount rate must be greater than 0": "Discount rate must be greater than 0", + "Discount Rate:": "Discount Rate:", "Discount ratio for cache hits.": "Discount ratio for cache hits.", "Discouraged": "Discouraged", "Discover curated AI models, compare pricing and capabilities, and choose the right model for every scenario.": "Discover curated AI models, compare pricing and capabilities, and choose the right model for every scenario.", "Discovering...": "Discovering...", + "Disk cache cleared": "Disk cache cleared", "Disk Cache Settings": "Disk Cache Settings", "Disk Cache Threshold (MB)": "Disk Cache Threshold (MB)", + "Disk cache, system performance monitoring, and operation statistics": "Disk cache, system performance monitoring, and operation statistics", "Disk Hits": "Disk Hits", "Disk Threshold (%)": "Disk Threshold (%)", - "Disk cache cleared": "Disk cache cleared", - "Disk cache, system performance monitoring, and operation statistics": "Disk cache, system performance monitoring, and operation statistics", - "Display Mode": "Display Mode", - "Display Name": "Display Name", - "Display Name Field": "Display Name Field", - "Display Options": "Display Options", - "Display Token Statistics": "Display Token Statistics", "Display in Currency": "Display in Currency", + "Display Mode": "Display Mode", "Display name": "Display name", + "Display Name": "Display Name", "Display name and email used in outgoing messages": "Display name and email used in outgoing messages", + "Display Name Field": "Display Name Field", "Display name for this chat client.": "Display name for this chat client.", "Display name for this monitoring group (max 50 characters)": "Display name for this monitoring group (max 50 characters)", "Display name for this payment method.": "Display name for this payment method.", "Display name shown to users.": "Display name shown to users.", + "Display Options": "Display Options", + "Display Token Statistics": "Display Token Statistics", "Displays the mobile sidebar.": "Displays the mobile sidebar.", "Do not over-trust this feature. IP may be spoofed. Please use with nginx, CDN and other gateways.": "Do not over-trust this feature. IP may be spoofed. Please use with nginx, CDN and other gateways.", "Do not repeat check-in; only once per day": "Do not repeat check-in; only once per day", @@ -1077,6 +1136,7 @@ "Docs": "Docs", "Documentation Link": "Documentation Link", "Documentation or external knowledge base.": "Documentation or external knowledge base.", + "does not exist or might have been removed.": "does not exist or might have been removed.", "Domain": "Domain", "Domain Filter Mode": "Domain Filter Mode", "Don't have an account?": "Don't have an account?", @@ -1088,8 +1148,8 @@ "Download": "Download", "Draw": "Draw", "Drawing": "Drawing", - "Drawing Logs": "Drawing Logs", "Drawing logs": "Drawing logs", + "Drawing Logs": "Drawing Logs", "Drawing task records": "Drawing task records", "Duplicate": "Duplicate", "Duration": "Duration", @@ -1098,103 +1158,148 @@ "Duration Unit": "Duration Unit", "Duration Value": "Duration Value", "Dynamic Pricing": "Dynamic Pricing", - "Each backup code can only be used once.": "Each backup code can only be used once.", - "Each item must be an object with a single key-value pair.": "Each item must be an object with a single key-value pair.", - "Each item must have exactly one key-value pair.": "Each item must have exactly one key-value pair.", - "Each line represents one keyword. Leave blank to disable the list but keep the switch states.": "Each line represents one keyword. Leave blank to disable the list but keep the switch states.", - "Each tier supports 0~2 conditions (over len, p, c); the last tier is the catch-all without conditions. Use len (full input length, including cache hits) for tier conditions to avoid mis-routing when cache hits reduce p.": "Each tier supports 0~2 conditions (over len, p, c); the last tier is the catch-all without conditions. Use len (full input length, including cache hits) for tier conditions to avoid mis-routing when cache hits reduce p.", - "Earn rewards when your referrals add funds. Transfer accumulated rewards to your balance anytime.": "Earn rewards when your referrals add funds. Transfer accumulated rewards to your balance anytime.", - "Edit": "Edit", - "Edit API Shortcut": "Edit API Shortcut", - "Edit Announcement": "Edit Announcement", + "e.g. ¥ or HK$": "e.g. ¥ or HK$", + "e.g. 401, 403, 429, 500-599": "e.g. 401, 403, 429, 500-599", + "e.g. 8 means 1 USD = 8 units": "e.g. 8 means 1 USD = 8 units", + "e.g. Basic Plan": "e.g. Basic Plan", + "e.g. Clean tool parameters to avoid upstream validation errors": "e.g. Clean tool parameters to avoid upstream validation errors", + "e.g. example.com": "e.g. example.com", + "e.g. llama3.1:8b": "e.g. llama3.1:8b", + "e.g. My GitLab": "e.g. My GitLab", + "e.g. my-gitlab": "e.g. my-gitlab", + "e.g. New API Console": "e.g. New API Console", + "e.g. openid profile email": "e.g. openid profile email", + "e.g. Suitable for light usage": "e.g. Suitable for light usage", + "e.g. This request does not meet access policy": "e.g. This request does not meet access policy", + "e.g., #3b82f6,#8b5cf6": "e.g., #3b82f6,#8b5cf6", + "e.g., #ff0000,#0000ff": "e.g., #ff0000,#0000ff", + "e.g., #ffffff or white": "e.g., #ffffff or white", + "e.g., 0.95": "e.g., 0.95", + "e.g., 100": "e.g., 100", + "e.g., 123456": "e.g., 123456", + "e.g., 2025-04-01-preview": "e.g., 2025-04-01-preview", + "e.g., 50": "e.g., 50", + "e.g., 500000": "e.g., 500000", + "e.g., 7342866812345": "e.g., 7342866812345", + "e.g., 8 means 8 local currency per USD": "e.g., 8 means 8 local currency per USD", + "e.g., Alipay, WeChat": "e.g., Alipay, WeChat", + "e.g., Basic Package": "e.g., Basic Package", + "e.g., CN2 GIA": "e.g., CN2 GIA", + "e.g., Core APIs, OpenAI, Claude": "e.g., Core APIs, OpenAI, Claude", + "e.g., d6b5da8hk1awo8nap34ube6gh": "e.g., d6b5da8hk1awo8nap34ube6gh", + "e.g., default, vip, premium": "e.g., default, vip, premium", + "e.g., gpt-4, claude-3": "e.g., gpt-4, claude-3", + "e.g., gpt-4.1-nano,regex:^claude-.*$,regex:^sora-.*$": "e.g., gpt-4.1-nano,regex:^claude-.*$,regex:^sora-.*$", + "e.g., https://api.example.com (path before /suno)": "e.g., https://api.example.com (path before /suno)", + "e.g., https://api.openai.com/v1/chat/completions": "e.g., https://api.openai.com/v1/chat/completions", + "e.g., https://ark.cn-beijing.volces.com": "e.g., https://ark.cn-beijing.volces.com", + "e.g., https://docs-test-001.openai.azure.com": "e.g., https://docs-test-001.openai.azure.com", + "e.g., https://fastgpt.run/api/openapi": "e.g., https://fastgpt.run/api/openapi", + "e.g., OpenAI GPT-4 Production": "e.g., OpenAI GPT-4 Production", + "e.g., preview": "e.g., preview", + "e.g., prod_xxx": "e.g., prod_xxx", + "e.g., Recommended for China Mainland Users": "e.g., Recommended for China Mainland Users", + "e.g., us-central1 or JSON format for model-specific regions": "e.g., us-central1 or JSON format for model-specific regions", + "e.g., v2.1": "e.g., v2.1", + "Each backup code can only be used once.": "Each backup code can only be used once.", + "Each item must be an object with a single key-value pair.": "Each item must be an object with a single key-value pair.", + "Each item must have exactly one key-value pair.": "Each item must have exactly one key-value pair.", + "Each line represents one keyword. Leave blank to disable the list but keep the switch states.": "Each line represents one keyword. Leave blank to disable the list but keep the switch states.", + "Each tier supports 0~2 conditions (over len, p, c); the last tier is the catch-all without conditions. Use len (full input length, including cache hits) for tier conditions to avoid mis-routing when cache hits reduce p.": "Each tier supports 0~2 conditions (over len, p, c); the last tier is the catch-all without conditions. Use len (full input length, including cache hits) for tier conditions to avoid mis-routing when cache hits reduce p.", + "Earn rewards when your referrals add funds. Transfer accumulated rewards to your balance anytime.": "Earn rewards when your referrals add funds. Transfer accumulated rewards to your balance anytime.", + "Edit": "Edit", + "Edit {{title}}": "Edit {{title}}", + "Edit all channels with tag:": "Edit all channels with tag:", + "Edit Announcement": "Edit Announcement", + "Edit API Shortcut": "Edit API Shortcut", "Edit Channel": "Edit Channel", + "Edit chat preset": "Edit chat preset", + "Edit discount tier": "Edit discount tier", "Edit FAQ": "Edit FAQ", + "Edit group rate limit": "Edit group rate limit", "Edit JSON object directly. Suitable for simple parameter overrides.": "Edit JSON object directly. Suitable for simple parameter overrides.", "Edit JSON text directly. Format will be validated on save.": "Edit JSON text directly. Format will be validated on save.", + "Edit model": "Edit model", "Edit Model": "Edit Model", "Edit OAuth Provider": "Edit OAuth Provider", + "Edit payment method": "Edit payment method", "Edit Prefill Group": "Edit Prefill Group", + "Edit product": "Edit product", + "Edit ratio override": "Edit ratio override", "Edit Rule": "Edit Rule", + "Edit selectable group": "Edit selectable group", "Edit Tag": "Edit Tag", "Edit Tag:": "Edit Tag:", "Edit Uptime Kuma Group": "Edit Uptime Kuma Group", "Edit Vendor": "Edit Vendor", - "Edit all channels with tag:": "Edit all channels with tag:", - "Edit chat preset": "Edit chat preset", - "Edit discount tier": "Edit discount tier", - "Edit group rate limit": "Edit group rate limit", - "Edit model": "Edit model", - "Edit payment method": "Edit payment method", - "Edit product": "Edit product", - "Edit ratio override": "Edit ratio override", - "Edit selectable group": "Edit selectable group", - "Edit {{title}}": "Edit {{title}}", + "edit_this": "edit_this", "Editor mode": "Editor mode", "Effect": "Effect", "Email": "Email", "Email (required for verification)": "Email (required for verification)", "Email Address": "Email Address", "Email Alias Restriction": "Email Alias Restriction", + "Email bound successfully!": "Email bound successfully!", "Email Domain Restriction": "Email Domain Restriction", "Email Domain Whitelist": "Email Domain Whitelist", "Email Field": "Email Field", "Email Verification": "Email Verification", - "Email bound successfully!": "Email bound successfully!", "Embeddings": "Embeddings", "Empty value will be saved as {}.": "Empty value will be saved as {}.", "Enable": "Enable", "Enable 2FA": "Enable 2FA", "Enable All": "Enable All", + "Enable check-in feature": "Enable check-in feature", "Enable Data Dashboard": "Enable Data Dashboard", + "Enable demo mode with limited functionality": "Enable demo mode with limited functionality", "Enable Discord OAuth": "Enable Discord OAuth", "Enable Disk Cache": "Enable Disk Cache", + "Enable drawing features": "Enable drawing features", + "Enable filtering": "Enable filtering", "Enable FunctionCall thoughtSignature Fill": "Enable FunctionCall thoughtSignature Fill", "Enable GitHub OAuth": "Enable GitHub OAuth", "Enable Groups": "Enable Groups", - "Enable LinuxDO OAuth": "Enable LinuxDO OAuth", - "Enable OIDC": "Enable OIDC", - "Enable Passkey": "Enable Passkey", - "Enable Performance Monitoring": "Enable Performance Monitoring", - "Enable Request Passthrough": "Enable Request Passthrough", - "Enable SSL/TLS": "Enable SSL/TLS", - "Enable SSRF Protection": "Enable SSRF Protection", - "Enable Telegram OAuth": "Enable Telegram OAuth", - "Enable Turnstile": "Enable Turnstile", - "Enable Two-factor Authentication or Passkey in your profile to unlock sensitive operations.": "Enable Two-factor Authentication or Passkey in your profile to unlock sensitive operations.", - "Enable Waffo": "Enable Waffo", - "Enable Waffo Pancake": "Enable Waffo Pancake", - "Enable WeChat Auth": "Enable WeChat Auth", - "Enable check-in feature": "Enable check-in feature", - "Enable demo mode with limited functionality": "Enable demo mode with limited functionality", - "Enable drawing features": "Enable drawing features", - "Enable filtering": "Enable filtering", "Enable if this is an OpenRouter enterprise account with special response format": "Enable if this is an OpenRouter enterprise account with special response format", "Enable io.net deployments": "Enable io.net deployments", "Enable io.net model deployment service in console": "Enable io.net model deployment service in console", + "Enable LinuxDO OAuth": "Enable LinuxDO OAuth", + "Enable OIDC": "Enable OIDC", "Enable or disable this channel": "Enable or disable this channel", "Enable or disable this model": "Enable or disable this model", "Enable or disable top navigation modules globally.": "Enable or disable top navigation modules globally.", + "Enable Passkey": "Enable Passkey", + "Enable Performance Monitoring": "Enable Performance Monitoring", "Enable rate limiting": "Enable rate limiting", + "Enable Request Passthrough": "Enable Request Passthrough", "Enable selected channels": "Enable selected channels", "Enable selected models": "Enable selected models", + "Enable SSL/TLS": "Enable SSL/TLS", + "Enable SSRF Protection": "Enable SSRF Protection", "Enable streaming mode for the test request.": "Enable streaming mode for the test request.", + "Enable Telegram OAuth": "Enable Telegram OAuth", "Enable test mode for Creem payments": "Enable test mode for Creem payments", "Enable this key?": "Enable this key?", + "Enable Turnstile": "Enable Turnstile", + "Enable Two-factor Authentication or Passkey in your profile to unlock sensitive operations.": "Enable Two-factor Authentication or Passkey in your profile to unlock sensitive operations.", "Enable unlimited quota for this API key": "Enable unlimited quota for this API key", "Enable violation deduction": "Enable violation deduction", + "Enable Waffo": "Enable Waffo", + "Enable Waffo Pancake": "Enable Waffo Pancake", + "Enable WeChat Auth": "Enable WeChat Auth", "Enable when proxying workers that fetch images over HTTP.": "Enable when proxying workers that fetch images over HTTP.", "Enabled": "Enabled", - "Enabled Status": "Enabled Status", "Enabled all channels with tag: {{tag}}": "Enabled all channels with tag: {{tag}}", + "Enabled Status": "Enabled Status", "Enabling...": "Enabling...", "End": "End", + "End color": "End color", "End Error": "End Error", "End Reason": "End Reason", "End Time": "End Time", "Endpoint": "Endpoint", + "Endpoint config": "Endpoint config", "Endpoint Configuration": "Endpoint Configuration", "Endpoint Type": "Endpoint Type", - "Endpoint config": "Endpoint config", "Endpoint:": "Endpoint:", "Endpoints": "Endpoints", "English": "English", @@ -1203,34 +1308,33 @@ "Ensure the string has a specified prefix": "Ensure the string has a specified prefix", "Ensure the string has a specified suffix": "Ensure the string has a specified suffix", "Enter 6-digit code": "Enter 6-digit code", - "Enter API Key": "Enter API Key", - "Enter API Key, format: APIKey|Region": "Enter API Key, format: APIKey|Region", - "Enter API Key, one per line, format: APIKey|Region": "Enter API Key, one per line, format: APIKey|Region", - "Enter Completion price to calculate ratio": "Enter Completion price to calculate ratio", - "Enter Creem API key": "Enter Creem API key", - "Enter HTML code (e.g.,

About us...

) or a URL (e.g., https://example.com) to embed as iframe": "Enter HTML code (e.g.,

About us...

) or a URL (e.g., https://example.com) to embed as iframe", - "Enter Input price to calculate ratio": "Enter Input price to calculate ratio", - "Enter JSON to override request headers": "Enter JSON to override request headers", - "Enter URL...": "Enter URL...", "Enter a name": "Enter a name", "Enter a new name": "Enter a new name", "Enter a positive or negative amount to adjust the quota": "Enter a positive or negative amount to adjust the quota", "Enter a valid email or leave blank": "Enter a valid email or leave blank", "Enter a value and press Enter": "Enter a value and press Enter", - "Enter amount in tokens": "Enter amount in tokens", "Enter amount in {{currency}}": "Enter amount in {{currency}}", + "Enter amount in tokens": "Enter amount in tokens", "Enter announcement content (supports Markdown & HTML)": "Enter announcement content (supports Markdown & HTML)", "Enter announcement content (supports Markdown/HTML)": "Enter announcement content (supports Markdown/HTML)", + "Enter API Key": "Enter API Key", + "Enter API Key, format: APIKey|Region": "Enter API Key, format: APIKey|Region", + "Enter API Key, one per line, format: APIKey|Region": "Enter API Key, one per line, format: APIKey|Region", "Enter application token": "Enter application token", "Enter authenticator code": "Enter authenticator code", "Enter backup code (e.g., CAWD-OQDV)": "Enter backup code (e.g., CAWD-OQDV)", "Enter banner content to display at the top of the page": "Enter banner content to display at the top of the page", "Enter code": "Enter code", "Enter code or backup code": "Enter code or backup code", + "Enter Completion price to calculate ratio": "Enter Completion price to calculate ratio", + "Enter Creem API key": "Enter Creem API key", "Enter custom API endpoint URL": "Enter custom API endpoint URL", "Enter custom CSS...": "Enter custom CSS...", "Enter deployment region or JSON mapping:": "Enter deployment region or JSON mapping:", "Enter display name": "Enter display name", + "Enter HTML code (e.g.,

About us...

) or a URL (e.g., https://example.com) to embed as iframe": "Enter HTML code (e.g.,

About us...

) or a URL (e.g., https://example.com) to embed as iframe", + "Enter Input price to calculate ratio": "Enter Input price to calculate ratio", + "Enter JSON to override request headers": "Enter JSON to override request headers", "Enter key, format: AccessKey|SecretAccessKey|Region": "Enter key, format: AccessKey|SecretAccessKey|Region", "Enter key, one per line, format: AccessKey|SecretAccessKey|Region": "Enter key, one per line, format: AccessKey|SecretAccessKey|Region", "Enter model name": "Enter model name", @@ -1245,23 +1349,24 @@ "Enter password": "Enter password", "Enter password (8-20 characters)": "Enter password (8-20 characters)", "Enter password (min 8 characters)": "Enter password (min 8 characters)", - "Enter quota in tokens": "Enter quota in tokens", "Enter quota in {{currency}}": "Enter quota in {{currency}}", + "Enter quota in tokens": "Enter quota in tokens", "Enter secret key": "Enter secret key", "Enter system prompt (user prompt takes priority)": "Enter system prompt (user prompt takes priority)", "Enter tag name (optional)": "Enter tag name (optional)", - "Enter the 6-digit Time-based One-Time Password or 8-character backup code from your authenticator app.": "Enter the 6-digit Time-based One-Time Password or 8-character backup code from your authenticator app.", "Enter the 6-digit code from your authenticator app": "Enter the 6-digit code from your authenticator app", - "Enter the Coze agent ID": "Enter the Coze agent ID", + "Enter the 6-digit Time-based One-Time Password or 8-character backup code from your authenticator app.": "Enter the 6-digit Time-based One-Time Password or 8-character backup code from your authenticator app.", "Enter the complete URL, supports": "Enter the complete URL, supports", + "Enter the Coze agent ID": "Enter the Coze agent ID", "Enter the full URL of your Gotify server": "Enter the full URL of your Gotify server", "Enter the knowledge base ID": "Enter the knowledge base ID", "Enter the path before /suno, usually just the domain": "Enter the path before /suno, usually just the domain", - "Enter the quota amount in tokens": "Enter the quota amount in tokens", "Enter the quota amount in {{currency}}": "Enter the quota amount in {{currency}}", + "Enter the quota amount in tokens": "Enter the quota amount in tokens", "Enter the verification code": "Enter the verification code", "Enter threshold": "Enter threshold", "Enter token counts to preview the estimated cost (excluding group multipliers).": "Enter token counts to preview the estimated cost (excluding group multipliers).", + "Enter URL...": "Enter URL...", "Enter username": "Enter username", "Enter verification code": "Enter verification code", "Enter webhook secret": "Enter webhook secret", @@ -1277,8 +1382,8 @@ "Env (JSON object)": "Env (JSON object)", "Environment variables": "Environment variables", "Environment variables (JSON)": "Environment variables (JSON)", - "Epay Gateway": "Epay Gateway", "Epay endpoint": "Epay endpoint", + "Epay Gateway": "Epay Gateway", "Epay merchant ID": "Epay merchant ID", "Epay secret key": "Epay secret key", "Equals": "Equals", @@ -1295,17 +1400,20 @@ "Example (all channels):": "Example (all channels):", "Example (specific channels):": "Example (specific channels):", "Example:": "Example:", + "example.com blocked-site.com": "example.com blocked-site.com", + "example.com company.com": "example.com company.com", "Excellent": "Excellent", "Exchange rate is required": "Exchange rate is required", "Exchange rate must be greater than 0": "Exchange rate must be greater than 0", "Exhausted": "Exhausted", - "Existing Models ({{count}})": "Existing Models ({{count}})", "Existing account will be reused": "Existing account will be reused", + "Existing Models ({{count}})": "Existing Models ({{count}})", "Exists": "Exists", "Expand All": "Expand All", "Expected a JSON array.": "Expected a JSON array.", "Experiment with prompts and models in real time.": "Experiment with prompts and models in real time.", "Expiration Time": "Expiration Time", + "expired": "expired", "Expired": "Expired", "Expired at": "Expired at", "Expired time cannot be earlier than current time": "Expired time cannot be earlier than current time", @@ -1321,28 +1429,24 @@ "Extend failed": "Extend failed", "Extended successfully": "Extended successfully", "External Device": "External Device", - "External Speed Test": "External Speed Test", "External link for users to purchase quota": "External link for users to purchase quota", "External operations": "External operations", "External operations mode": "External operations mode", + "External Speed Test": "External Speed Test", "Extra": "Extra", "Extra Notes (Optional)": "Extra Notes (Optional)", - "FAQ": "FAQ", - "FAQ added. Click \"Save Settings\" to apply.": "FAQ added. Click \"Save Settings\" to apply.", - "FAQ deleted. Click \"Save Settings\" to apply.": "FAQ deleted. Click \"Save Settings\" to apply.", - "FAQ saved successfully": "FAQ saved successfully", - "FAQ updated. Click \"Save Settings\" to apply.": "FAQ updated. Click \"Save Settings\" to apply.", "Fail Reason": "Fail Reason", "Fail Reason Details": "Fail Reason Details", "Failed": "Failed", + "Failed to {{action}} user": "Failed to {{action}} user", "Failed to adjust quota": "Failed to adjust quota", "Failed to apply overwrite.": "Failed to apply overwrite.", "Failed to bind email": "Failed to bind email", "Failed to change password": "Failed to change password", "Failed to check for updates": "Failed to check for updates", "Failed to clean logs": "Failed to clean logs", - "Failed to complete Passkey login": "Failed to complete Passkey login", "Failed to complete order": "Failed to complete order", + "Failed to complete Passkey login": "Failed to complete Passkey login", "Failed to contact GitHub releases API": "Failed to contact GitHub releases API", "Failed to copy": "Failed to copy", "Failed to copy channel": "Failed to copy channel", @@ -1355,9 +1459,10 @@ "Failed to create provider": "Failed to create provider", "Failed to create redemption code": "Failed to create redemption code", "Failed to create user": "Failed to create user", + "Failed to delete {{count}} model(s)": "Failed to delete {{count}} model(s)", + "Failed to delete account": "Failed to delete account", "Failed to delete API key": "Failed to delete API key", "Failed to delete API keys": "Failed to delete API keys", - "Failed to delete account": "Failed to delete account", "Failed to delete channel": "Failed to delete channel", "Failed to delete disabled channels": "Failed to delete disabled channels", "Failed to delete invalid redemption codes": "Failed to delete invalid redemption codes", @@ -1366,22 +1471,21 @@ "Failed to delete redemption code": "Failed to delete redemption code", "Failed to delete user": "Failed to delete user", "Failed to delete vendor": "Failed to delete vendor", - "Failed to delete {{count}} model(s)": "Failed to delete {{count}} model(s)", + "Failed to disable {{count}} model(s)": "Failed to disable {{count}} model(s)", "Failed to disable 2FA": "Failed to disable 2FA", "Failed to disable channels": "Failed to disable channels", "Failed to disable model": "Failed to disable model", "Failed to disable tag channels": "Failed to disable tag channels", - "Failed to disable {{count}} model(s)": "Failed to disable {{count}} model(s)", "Failed to discover OIDC endpoints": "Failed to discover OIDC endpoints", + "Failed to enable {{count}} model(s)": "Failed to enable {{count}} model(s)", "Failed to enable 2FA": "Failed to enable 2FA", "Failed to enable channels": "Failed to enable channels", "Failed to enable model": "Failed to enable model", "Failed to enable tag channels": "Failed to enable tag channels", - "Failed to enable {{count}} model(s)": "Failed to enable {{count}} model(s)", - "Failed to fetch OIDC configuration. Please check the URL and network status": "Failed to fetch OIDC configuration. Please check the URL and network status", "Failed to fetch checkin status": "Failed to fetch check-in status", "Failed to fetch deployment details": "Failed to fetch deployment details", "Failed to fetch models": "Failed to fetch models", + "Failed to fetch OIDC configuration. Please check the URL and network status": "Failed to fetch OIDC configuration. Please check the URL and network status", "Failed to fetch upstream prices": "Failed to fetch upstream prices", "Failed to fetch upstream ratios": "Failed to fetch upstream ratios", "Failed to fetch usage": "Failed to fetch usage", @@ -1392,38 +1496,39 @@ "Failed to initialize system": "Failed to initialize system", "Failed to load": "Failed to load", "Failed to load API keys": "Failed to load API keys", - "Failed to load Passkey status": "Failed to load Passkey status", "Failed to load billing history": "Failed to load billing history", "Failed to load home page content": "Failed to load home page content", "Failed to load image": "Failed to load image", "Failed to load logs": "Failed to load logs", + "Failed to load Passkey status": "Failed to load Passkey status", "Failed to load profile": "Failed to load profile", "Failed to load redemption codes": "Failed to load redemption codes", "Failed to load setup data": "Failed to load setup data", "Failed to load setup status": "Failed to load setup status", "Failed to load tag data": "Failed to load tag data", "Failed to load users": "Failed to load users", - "Failed to parse JSON file: {{name}}": "Failed to parse JSON file: {{name}}", "Failed to parse group items": "Failed to parse group items", + "Failed to parse JSON file: {{name}}": "Failed to parse JSON file: {{name}}", "Failed to query balance": "Failed to query balance", "Failed to refresh cache stats": "Failed to refresh cache stats", "Failed to regenerate backup codes": "Failed to regenerate backup codes", "Failed to register Passkey": "Failed to register Passkey", "Failed to remove Passkey": "Failed to remove Passkey", "Failed to reset 2FA": "Failed to reset 2FA", - "Failed to reset Passkey": "Failed to reset Passkey", "Failed to reset model ratios": "Failed to reset model ratios", + "Failed to reset Passkey": "Failed to reset Passkey", "Failed to save": "Failed to save", + "Failed to save announcements": "Failed to save announcements", "Failed to save API info": "Failed to save API info", "Failed to save FAQ": "Failed to save FAQ", "Failed to save Uptime Kuma groups": "Failed to save Uptime Kuma groups", - "Failed to save announcements": "Failed to save announcements", "Failed to search API keys": "Failed to search API keys", "Failed to search redemption codes": "Failed to search redemption codes", "Failed to search users": "Failed to search users", "Failed to send verification code": "Failed to send verification code", "Failed to set tag": "Failed to set tag", "Failed to setup 2FA": "Failed to setup 2FA", + "Failed to start {{provider}} login": "Failed to start {{provider}} login", "Failed to start Discord login": "Failed to start Discord login", "Failed to start GitHub login": "Failed to start GitHub login", "Failed to start LinuxDO login": "Failed to start LinuxDO login", @@ -1431,14 +1536,13 @@ "Failed to start Passkey login": "Failed to start Passkey login", "Failed to start Passkey registration": "Failed to start Passkey registration", "Failed to start testing all channels": "Failed to start testing all channels", - "Failed to start {{provider}} login": "Failed to start {{provider}} login", "Failed to sync prices": "Failed to sync prices", "Failed to sync ratios": "Failed to sync ratios", "Failed to test all channels": "Failed to test all channels", "Failed to test channel": "Failed to test channel", + "Failed to update all balances": "Failed to update all balances", "Failed to update API key": "Failed to update API key", "Failed to update API key status": "Failed to update API key status", - "Failed to update all balances": "Failed to update all balances", "Failed to update balance": "Failed to update balance", "Failed to update channel": "Failed to update channel", "Failed to update models": "Failed to update models", @@ -1450,43 +1554,47 @@ "Failed to update settings": "Failed to update settings", "Failed to update tag": "Failed to update tag", "Failed to update user": "Failed to update user", - "Failed to {{action}} user": "Failed to {{action}} user", "Failure keywords": "Failure keywords", "Fair": "Fair", + "FAQ": "FAQ", + "FAQ added. Click \"Save Settings\" to apply.": "FAQ added. Click \"Save Settings\" to apply.", + "FAQ deleted. Click \"Save Settings\" to apply.": "FAQ deleted. Click \"Save Settings\" to apply.", + "FAQ saved successfully": "FAQ saved successfully", + "FAQ updated. Click \"Save Settings\" to apply.": "FAQ updated. Click \"Save Settings\" to apply.", "Fast": "Fast", "FastGPT": "FastGPT", "Feature in development": "Feature in development", "Fee": "Fee", "Fee Amount": "Fee Amount", - "Fetch Models": "Fetch Models", "Fetch available models for:": "Fetch available models for:", "Fetch from Upstream": "Fetch from Upstream", + "Fetch Models": "Fetch Models", "Fetched {{count}} model(s) from upstream": "Fetched {{count}} model(s) from upstream", "Fetched {{count}} models": "Fetched {{count}} models", "Fetching prefill groups...": "Fetching prefill groups...", "Fetching upstream prices...": "Fetching upstream prices...", "Fetching upstream ratios...": "Fetching upstream ratios...", + "field": "field", "Field Mapping": "Field Mapping", - "Field Path": "Field Path", "Field passthrough controls": "Field passthrough controls", + "Field Path": "Field Path", "File Search": "File Search", "Files to Retain": "Files to Retain", "Fill All Models": "Fill All Models", "Fill Codex CLI / Claude CLI Templates": "Fill Codex CLI / Claude CLI Templates", - "Fill Related Models": "Fill Related Models", - "Fill Template": "Fill Template", - "Fill Templates": "Fill Templates", "Fill example (all channels)": "Fill example (all channels)", "Fill example (specific channels)": "Fill example (specific channels)", "Fill in the following info to create a new subscription plan": "Fill in the following info to create a new subscription plan", + "Fill Related Models": "Fill Related Models", + "Fill Template": "Fill Template", + "Fill Templates": "Fill Templates", "Fill thoughtSignature only for Gemini/Vertex channels using the OpenAI format": "Fill thoughtSignature only for Gemini/Vertex channels using the OpenAI format", "Filled {{count}} model(s)": "Filled {{count}} model(s)", "Filled {{count}} related model(s)": "Filled {{count}} related model(s)", "Filter": "Filter", - "Filter Dashboard Models": "Filter Dashboard Models", - "Filter by Midjourney task ID": "Filter by Midjourney task ID", "Filter by channel ID": "Filter by channel ID", "Filter by group": "Filter by group", + "Filter by Midjourney task ID": "Filter by Midjourney task ID", "Filter by model name...": "Filter by model name...", "Filter by model...": "Filter by model...", "Filter by name or ID...": "Filter by name or ID...", @@ -1499,6 +1607,7 @@ "Filter by token name": "Filter by token name", "Filter by username": "Filter by username", "Filter by username, name or email...": "Filter by username, name or email...", + "Filter Dashboard Models": "Filter Dashboard Models", "Filter models by provider, group, type, endpoint, and tags.": "Filter models by provider, group, type, endpoint, and tags.", "Filter models by type, endpoint, vendor, group and tags": "Filter models by type, endpoint, vendor, group and tags", "Filter models...": "Filter models...", @@ -1522,24 +1631,38 @@ "Font color for the banner text. Supports any CSS color value. Leave empty for default.": "Font color for the banner text. Supports any CSS color value. Leave empty for default.", "Footer": "Footer", "Footer text displayed at the bottom of pages": "Footer text displayed at the bottom of pages", + "footer.columns.about.links.aboutProject": "About Project", + "footer.columns.about.links.contact": "Contact Us", + "footer.columns.about.links.features": "Features", + "footer.columns.about.title": "About Us", + "footer.columns.docs.links.apiDocs": "API Documentation", + "footer.columns.docs.links.installation": "Installation Guide", + "footer.columns.docs.links.quickStart": "Quick Start", + "footer.columns.docs.title": "Documentation", + "footer.columns.related.links.midjourney": "Midjourney-Proxy", + "footer.columns.related.links.neko": "neko-api-key-tool", + "footer.columns.related.links.oneApi": "One API", + "footer.columns.related.title": "Related Projects", + "footer.defaultCopyright": "All rights reserved.", + "footer.new\u0061pi.projectAttributionSuffix": "All rights reserved. Designed and developed by the project contributors.", "For channels added after May 10, 2025, no need to remove \".\" from model names during deployment": "For channels added after May 10, 2025, no need to remove \".\" from model names during deployment", "For private deployments, format: https://fastgpt.run/api/openapi": "For private deployments, format: https://fastgpt.run/api/openapi", "Force AUTH LOGIN": "Force AUTH LOGIN", "Force Format": "Force Format", - "Force SMTP authentication using AUTH LOGIN method": "Force SMTP authentication using AUTH LOGIN method", "Force format response to OpenAI standard (OpenAI channel only)": "Force format response to OpenAI standard (OpenAI channel only)", + "Force SMTP authentication using AUTH LOGIN method": "Force SMTP authentication using AUTH LOGIN method", "Forgot password": "Forgot password", "Forgot password?": "Forgot password?", "Form reset to saved values": "Form reset to saved values", "Format": "Format", "Format JSON": "Format JSON", "Format:": "Format:", - "Format: APIKey-AppId, e.g., fastgpt-0sp2gtvfdgyi4k30jwlgwf1i-64f335d84283f05518e9e041": "Format: APIKey-AppId, e.g., fastgpt-0sp2gtvfdgyi4k30jwlgwf1i-64f335d84283f05518e9e041", - "Format: APIKey|SecretKey": "Format: APIKey|SecretKey", - "Format: APPID|APISecret|APIKey": "Format: APPID|APISecret|APIKey", "Format: Access Key ID|Secret Access Key": "Format: Access Key ID|Secret Access Key", "Format: AccessKey|SecretKey (or just ApiKey if upstream is New API)": "Format: AccessKey|SecretKey (or just ApiKey if upstream is New API)", "Format: Ak|Sk|Region": "Format: Ak|Sk|Region", + "Format: APIKey-AppId, e.g., fastgpt-0sp2gtvfdgyi4k30jwlgwf1i-64f335d84283f05518e9e041": "Format: APIKey-AppId, e.g., fastgpt-0sp2gtvfdgyi4k30jwlgwf1i-64f335d84283f05518e9e041", + "Format: APIKey|SecretKey": "Format: APIKey|SecretKey", + "Format: APPID|APISecret|APIKey": "Format: APPID|APISecret|APIKey", "Format: AppId|SecretId|SecretKey": "Format: AppId|SecretId|SecretKey", "Forward requests directly to upstream providers without any post-processing.": "Forward requests directly to upstream providers without any post-processing.", "Free: {{free}} / Total: {{total}}": "Free: {{free}} / Total: {{total}}", @@ -1555,45 +1678,49 @@ "GC Count": "GC Count", "GC executed": "GC executed", "GC execution failed": "GC execution failed", - "GPU count": "GPU count", "Gemini": "Gemini", "Gemini Image 4K": "Gemini Image 4K", "Gemini will continue to auto-detect thinking mode even with the adapter disabled. Enable this only when you need finer control over pricing and budgeting.": "Gemini will continue to auto-detect thinking mode even with the adapter disabled. Enable this only when you need finer control over pricing and budgeting.", "General": "General", "General Settings": "General Settings", - "Generate Lyrics": "Generate Lyrics", - "Generate Music": "Generate Music", - "Generate New Codes": "Generate New Codes", "Generate a Codex OAuth credential and paste it into the channel key field.": "Generate a Codex OAuth credential and paste it into the channel key field.", "Generate and manage your API access token": "Generate and manage your API access token", "Generate credential": "Generate credential", + "Generate Lyrics": "Generate Lyrics", + "Generate Music": "Generate Music", "Generate new backup codes for account recovery": "Generate new backup codes for account recovery", + "Generate New Codes": "Generate New Codes", "Generated image": "Generated image", "Generating new codes will invalidate all existing backup codes.": "Generating new codes will invalidate all existing backup codes.", "Generating...": "Generating...", "Generic cache": "Generic cache", - "Get Started": "Get Started", "Get notified when balance falls below this value": "Get notified when balance falls below this value", + "Get Started": "Get Started", "GitHub": "GitHub", "Give the group a recognizable name and optional description.": "Give the group a recognizable name and optional description.", "Give this group a recognizable name.": "Give this group a recognizable name.", + "Global configuration and administrative tools.": "Global configuration and administrative tools.", "Global Coverage": "Global Coverage", "Global Model Configuration": "Global Model Configuration", - "Global configuration and administrative tools.": "Global configuration and administrative tools.", "Go Back": "Go Back", "Go back and edit": "Go back and edit", "Go to Dashboard": "Go to Dashboard", - "Go to Settings": "Go to Settings", "Go to first page": "Go to first page", "Go to io.net API Keys": "Go to io.net API Keys", "Go to last page": "Go to last page", "Go to next page": "Go to next page", "Go to previous page": "Go to previous page", "Go to settings": "Go to settings", + "Go to Settings": "Go to Settings", "Good": "Good", "Gotify Application Token": "Gotify Application Token", "Gotify Documentation": "Gotify Documentation", "Gotify Server URL": "Gotify Server URL", + "gpt-3.5-turbo": "gpt-3.5-turbo", + "gpt-3.5-turbo-0125": "gpt-3.5-turbo-0125", + "gpt-4": "gpt-4", + "gpt-4, claude-3-opus, etc.": "gpt-4, claude-3-opus, etc.", + "GPU count": "GPU count", "Gradient": "Gradient", "Greater Than": "Greater Than", "Greater Than or Equal": "Greater Than or Equal", @@ -1601,8 +1728,6 @@ "Grok Settings": "Grok Settings", "Group": "Group", "Group & Quota": "Group & Quota", - "Group Name": "Group Name", - "Group Ratio": "Group Ratio", "Group added. Click \"Save Settings\" to apply.": "Group added. Click \"Save Settings\" to apply.", "Group channels by tag for batch operations": "Group channels by tag for batch operations", "Group config overrides global limits, shares the same period": "Group config overrides global limits, shares the same period", @@ -1611,8 +1736,11 @@ "Group identifier": "Group identifier", "Group is required": "Group is required", "Group name": "Group name", + "Group Name": "Group Name", "Group name cannot be changed when editing.": "Group name cannot be changed when editing.", "Group prices cannot be expanded because this expression is not a standard tiered pricing expression.": "Group prices cannot be expanded because this expression is not a standard tiered pricing expression.", + "group ratio": "group ratio", + "Group Ratio": "Group Ratio", "Group ratios": "Group ratios", "Group updated. Click \"Save Settings\" to apply.": "Group updated. Click \"Save Settings\" to apply.", "Group-based rate limits": "Group-based rate limits", @@ -1623,6 +1751,7 @@ "Groups that users can select when creating API keys.": "Groups that users can select when creating API keys.", "Guardrails": "Guardrails", "Guest": "Guest", + "h": "h", "Haiku Model": "Haiku Model", "Hang tight while we finish connecting your account.": "Hang tight while we finish connecting your account.", "Hang tight while we securely link this account to your profile.": "Hang tight while we securely link this account to your profile.", @@ -1634,12 +1763,12 @@ "Have a Code?": "Have a Code?", "Header": "Header", "Header Name": "Header Name", + "Header navigation": "Header navigation", "Header Override": "Header Override", "Header Passthrough (X-Request-Id)": "Header Passthrough (X-Request-Id)", "Header Value (supports string or JSON mapping)": "Header Value (supports string or JSON mapping)", - "Header navigation": "Header navigation", - "Hidden Channels": "Hidden Channels", "Hidden — verify to reveal": "Hidden — verify to reveal", + "Hidden Channels": "Hidden Channels", "Hide": "Hide", "Hide API key": "Hide API key", "High Performance": "High Performance", @@ -1655,16 +1784,17 @@ "Higher priority channels are selected first": "Higher priority channels are selected first", "Historical Usage": "Historical Usage", "History of Midjourney-style image tasks.": "History of Midjourney-style image tasks.", - "Hit Rate": "Hit Rate", "Hit criteria: If cached tokens exist in usage, it counts as a hit.": "Hit criteria: If cached tokens exist in usage, it counts as a hit.", + "Hit Rate": "Hit Rate", "Hit tier": "Hit tier", "Home": "Home", "Home Page Content": "Home Page Content", "Hostname or IP of your SMTP provider": "Hostname or IP of your SMTP provider", "Hour": "Hour", - "How It Works": "How It Works", + "hours": "hours", "How client credentials are sent to the token endpoint": "How client credentials are sent to the token endpoint", "How frequently the system tests all channels": "How frequently the system tests all channels", + "How It Works": "How It Works", "How model mapping works": "How model mapping works", "How much to charge for each US dollar of balance (Epay)": "How much to charge for each US dollar of balance (Epay)", "How this model name should match requests": "How this model name should match requests", @@ -1672,19 +1802,35 @@ "How to reset my quota?": "How to reset my quota?", "How to select keys: random or sequential polling": "How to select keys: random or sequential polling", "How will you use the platform?": "How will you use the platform?", + "https://api.day.app/yourkey/{{title}}/{{content}}": "https://api.day.app/yourkey/{{title}}/{{content}}", + "https://api.example.com": "https://api.example.com", + "https://ark.ap-southeast.bytepluses.com": "https://ark.ap-southeast.bytepluses.com", + "https://ark.cn-beijing.volces.com": "https://ark.cn-beijing.volces.com", + "https://cloud.siliconflow.cn/i/hij0YNTZ": "https://cloud.siliconflow.cn/i/hij0YNTZ", + "https://docs.example.com": "https://docs.example.com", + "https://example.com": "https://example.com", + "https://example.com/logo.png": "https://example.com/logo.png", + "https://example.com/qr-code.png": "https://example.com/qr-code.png", + "https://example.com/topup": "https://example.com/topup", + "https://example.com/webhook": "https://example.com/webhook", + "https://gateway.example.com": "https://gateway.example.com", + "https://github.com/QuantumNous/new-api": "https://github.com/QuantumNous/new-api", + "https://gotify.example.com": "https://gotify.example.com", + "https://pay.example.com": "https://pay.example.com", + "https://provider.com/.well-known/openid-configuration": "https://provider.com/.well-known/openid-configuration", + "https://status.example.com": "https://status.example.com", + "https://wechat-server.example.com": "https://wechat-server.example.com", + "https://worker.example.workers.dev": "https://worker.example.workers.dev", + "https://your-server.example.com": "https://your-server.example.com", + "https://yourdomain.com": "https://yourdomain.com", "Human-readable name shown to users during Passkey prompts.": "Human-readable name shown to users during Passkey prompts.", "I confirm enabling high-risk retry": "I Confirm Enabling High-risk Retry", "I have read and agree to the": "I have read and agree to the", "I understand that disabling 2FA will remove all protection and backup codes": "I understand that disabling 2FA will remove all protection and backup codes", - "ID": "ID", - "IP": "IP", - "IP Address": "IP Address", - "IP Filter Mode": "IP Filter Mode", - "IP Restriction": "IP Restriction", - "IP Whitelist (supports CIDR)": "IP Whitelist (supports CIDR)", "Icon": "Icon", "Icon file must be 100 KB or smaller": "Icon file must be 100 KB or smaller", "Icon identifier (e.g. github, gitlab)": "Icon identifier (e.g. github, gitlab)", + "ID": "ID", "If an upstream error contains any of these keywords (case insensitive), the channel will be disabled automatically.": "If an upstream error contains any of these keywords (case insensitive), the channel will be disabled automatically.", "If authorization succeeds, the generated JSON will be inserted into the key field. You still need to save the channel to persist it.": "If authorization succeeds, the generated JSON will be inserted into the key field. You still need to save the channel to persist it.", "If connecting to upstream One API or New API relay projects, use OpenAI type instead unless you know what you are doing": "If connecting to upstream One API or New API relay projects, use OpenAI type instead unless you know what you are doing", @@ -1693,15 +1839,19 @@ "Image": "Image", "Image Generation": "Image Generation", "Image In": "Image In", + "Image input": "Image input", "Image Out": "Image Out", "Image Preview": "Image Preview", - "Image Tokens": "Image Tokens", - "Image input": "Image input", "Image ratio": "Image ratio", "Image to Video": "Image to Video", + "Image Tokens": "Image Tokens", "Import to CC Switch": "Import to CC Switch", + "Important Alert": "Important Alert", + "Important Notice": "Important Notice", "In Progress": "In Progress", "In:": "In:", + "Incident": "Incident", + "Incident Critical": "Incident Critical", "Include Group": "Include Group", "Include Model": "Include Model", "Include Rule Name": "Include Rule Name", @@ -1714,10 +1864,10 @@ "Initializing…": "Initializing…", "Inpaint": "Inpaint", "Input": "Input", - "Input Tokens": "Input Tokens", "Input mode": "Input mode", "Input price": "Input price", "Input tokens": "Input tokens", + "Input Tokens": "Input Tokens", "Inspect user prompts": "Inspect user prompts", "Instance": "Instance", "Integrations": "Integrations", @@ -1726,19 +1876,19 @@ "Inter-group ratio overrides": "Inter-group ratio overrides", "Interface Language": "Interface Language", "Internal Notes": "Internal Notes", - "Internal Server Error!": "Internal Server Error!", "Internal notes (not shown to users)": "Internal notes (not shown to users)", + "Internal Server Error!": "Internal Server Error!", + "Invalid chat link. Please contact the administrator.": "Invalid chat link. Please contact the administrator.", + "Invalid chat link. Please contact your administrator.": "Invalid chat link. Please contact your administrator.", + "Invalid code": "Invalid code", "Invalid JSON": "Invalid JSON", "Invalid JSON format": "Invalid JSON format", "Invalid JSON format or values out of allowed range": "Invalid JSON format or values out of allowed range", "Invalid JSON in parameter override template": "Invalid JSON in parameter override template", "Invalid JSON string.": "Invalid JSON string.", + "Invalid model mapping format": "Invalid model mapping format", "Invalid Passkey registration response": "Invalid Passkey registration response", "Invalid Passkey response": "Invalid Passkey response", - "Invalid chat link. Please contact the administrator.": "Invalid chat link. Please contact the administrator.", - "Invalid chat link. Please contact your administrator.": "Invalid chat link. Please contact your administrator.", - "Invalid code": "Invalid code", - "Invalid model mapping format": "Invalid model mapping format", "Invalid payment redirect URL": "Invalid payment redirect URL", "Invalid reset link, please request a new password reset": "Invalid reset link, please request a new password reset", "Invalid reset link, please request a new password reset.": "Invalid reset link, please request a new password reset.", @@ -1751,31 +1901,41 @@ "Invitation Quota": "Invitation Quota", "Invite Info": "Invite Info", "Invited": "Invited", - "Invited Users": "Invited Users", "Invited by user ID": "Invited by user ID", + "Invited Users": "Invited Users", "Invitee Reward": "Invitee Reward", "Inviter": "Inviter", "Inviter Reward": "Inviter Reward", "Invites": "Invites", + "io.net API Key": "io.net API Key", + "io.net Deployments": "io.net Deployments", + "IP": "IP", + "IP Address": "IP Address", + "IP Filter Mode": "IP Filter Mode", + "IP Restriction": "IP Restriction", + "IP Whitelist (supports CIDR)": "IP Whitelist (supports CIDR)", + "is an open-source AI API gateway for self-hosted deployments. Connect multiple upstream services, manage models, keys, quotas, logs, and routing policies in one place.": "is an open-source AI API gateway for self-hosted deployments. Connect multiple upstream services, manage models, keys, quotas, logs, and routing policies in one place.", + "is less than the configured maximum cache size": "is less than the configured maximum cache size", + "is the default price; ": "is the default price; ", "It seems like the page you're looking for": "It seems like the page you're looking for", "Items": "Items", + "Japanese": "Japanese", + "Jimeng": "Jimeng", + "Jina": "Jina", "JSON": "JSON", - "JSON Editor": "JSON Editor", - "JSON Mode": "JSON Mode", - "JSON Text": "JSON Text", "JSON array of group identifiers. When enabled below, new tokens rotate through this list.": "JSON array of group identifiers. When enabled below, new tokens rotate through this list.", + "JSON Editor": "JSON Editor", "JSON format error": "JSON format error", "JSON format supports service account JSON files": "JSON format supports service account JSON files", "JSON map of group → description exposed when users create API keys.": "JSON map of group → description exposed when users create API keys.", "JSON map of group → ratio applied when the user selects the group explicitly.": "JSON map of group → ratio applied when the user selects the group explicitly.", - "JSON map of model → USD cost per request. Takes precedence over ratio based billing.": "JSON map of model → USD cost per request. Takes precedence over ratio based billing.", "JSON map of model → multiplier applied to quota billing.": "JSON map of model → multiplier applied to quota billing.", + "JSON map of model → USD cost per request. Takes precedence over ratio based billing.": "JSON map of model → USD cost per request. Takes precedence over ratio based billing.", + "JSON Mode": "JSON Mode", "JSON must be an object": "JSON must be an object", "JSON object:": "JSON object:", + "JSON Text": "JSON Text", "JSON-based access control rules. Leave empty to allow all users.": "JSON-based access control rules. Leave empty to allow all users.", - "Japanese": "Japanese", - "Jimeng": "Jimeng", - "Jina": "Jina", "Just now": "Just now", "JustSong": "JustSong", "K": "K", @@ -1792,18 +1952,17 @@ "Keys, OAuth credentials, and multi-key update behavior.": "Keys, OAuth credentials, and multi-key update behavior.", "Kling": "Kling", "Knowledge Base ID *": "Knowledge Base ID *", - "LLM prompt helper": "LLM prompt helper", "Landing page with system overview.": "Landing page with system overview.", - "Language Preferences": "Language Preferences", "Language preference saved": "Language preference saved", + "Language Preferences": "Language Preferences", "Language preferences sync across your signed-in devices and affect API error messages.": "Language preferences sync across your signed-in devices and affect API error messages.", + "Last check time": "Last check time", + "Last detected addable models": "Last detected addable models", "Last Login": "Last Login", "Last Seen": "Last Seen", "Last Tested": "Last Tested", - "Last Used": "Last Used", - "Last check time": "Last check time", - "Last detected addable models": "Last detected addable models", "Last updated:": "Last updated:", + "Last Used": "Last Used", "Last used:": "Last used:", "Layout": "Layout", "Learn more": "Learn more", @@ -1823,15 +1982,15 @@ "Leave empty to use system temp directory": "Leave empty to use system temp directory", "Leave empty to use username": "Leave empty to use username", "Legacy Format (JSON Object)": "Legacy Format (JSON Object)", - "Legacy Format Template": "Legacy Format Template", "Legacy format must be a JSON object": "Legacy format must be a JSON object", + "Legacy Format Template": "Legacy Format Template", "Less": "Less", "Less Than": "Less Than", "Less Than or Equal": "Less Than or Equal", "Light": "Light", "Lightning Fast": "Lightning Fast", - "Limit Reached": "Limit Reached", "Limit period": "Limit period", + "Limit Reached": "Limit Reached", "Limit which models can be used with this key": "Limit which models can be used with this key", "Limited": "Limited", "LingYiWanWu": "LingYiWanWu", @@ -1842,6 +2001,7 @@ "List of models supported by this channel. Use comma to separate multiple models.": "List of models supported by this channel. Use comma to separate multiple models.", "List of origins (one per line) allowed for Passkey registration and authentication.": "List of origins (one per line) allowed for Passkey registration and authentication.", "List view": "List view", + "LLM prompt helper": "LLM prompt helper", "Load Balancing": "Load Balancing", "Load template...": "Load template...", "Loader": "Loader", @@ -1858,41 +2018,44 @@ "Local models": "Local models", "Locations": "Locations", "Locked": "Locked", + "log": "log", "Log Details": "Log Details", "Log Directory": "Log Directory", "Log File Count": "Log File Count", + "Log files older than {{value}} days will be deleted.": "Log files older than {{value}} days will be deleted.", "Log IP address for usage and error logs": "Log IP address for usage and error logs", "Log Maintenance": "Log Maintenance", "Log Type": "Log Type", - "Log files older than {{value}} days will be deleted.": "Log files older than {{value}} days will be deleted.", "Logic": "Logic", "Login failed": "Login failed", "Logo": "Logo", "Logo URL": "Logo URL", "Logs": "Logs", + "m": "m", "Maintain a list of common questions for the dashboard help panel": "Maintain a list of common questions for the dashboard help panel", "Maintenance": "Maintenance", + "Maintenance Stripe": "Maintenance Stripe", "Make it easier for teammates to pick the right group.": "Make it easier for teammates to pick the right group.", "Manage": "Manage", - "Manage API channels and provider configurations": "Manage API channels and provider configurations", - "Manage Bindings": "Manage Bindings", - "Manage Keys": "Manage Keys", - "Manage Ollama Models": "Manage Ollama Models", - "Manage Subscriptions": "Manage Subscriptions", - "Manage Vendors": "Manage Vendors", "Manage account bindings for this user": "Manage account bindings for this user", "Manage and configure": "Manage and configure", + "Manage API channels and provider configurations": "Manage API channels and provider configurations", + "Manage Bindings": "Manage Bindings", "Manage catalog visibility and pricing.": "Manage catalog visibility and pricing.", "Manage custom OAuth providers for user authentication": "Manage custom OAuth providers for user authentication", + "Manage Keys": "Manage Keys", "Manage local models for:": "Manage local models for:", "Manage model deployments": "Manage model deployments", "Manage model metadata and configuration": "Manage model metadata and configuration", "Manage multi-key status and configuration for this channel": "Manage multi-key status and configuration for this channel", + "Manage Ollama Models": "Manage Ollama Models", "Manage redemption codes for quota top-up": "Manage redemption codes for quota top-up", "Manage server log files. Log files accumulate over time; regular cleanup is recommended to free disk space.": "Manage server log files. Log files accumulate over time; regular cleanup is recommended to free disk space.", "Manage subscription plan creation, pricing and status": "Manage subscription plan creation, pricing and status", "Manage subscription plans and pricing.": "Manage subscription plans and pricing.", + "Manage Subscriptions": "Manage Subscriptions", "Manage users and their permissions": "Manage users and their permissions", + "Manage Vendors": "Manage Vendors", "Manage your API keys for accessing the service": "Manage your API keys for accessing the service", "Manage your balance and payment methods": "Manage your balance and payment methods", "Manage your security settings and account access": "Manage your security settings and account access", @@ -1905,14 +2068,14 @@ "Match All (AND)": "Match All (AND)", "Match Any (OR)": "Match Any (OR)", "Match Mode": "Match Mode", - "Match Text": "Match Text", - "Match Type": "Match Type", - "Match Value": "Match Value", - "Match Value (optional)": "Match Value (optional)", "Match model name exactly": "Match model name exactly", "Match models containing this name": "Match models containing this name", "Match models ending with this name": "Match models ending with this name", "Match models starting with this name": "Match models starting with this name", + "Match Text": "Match Text", + "Match Type": "Match Type", + "Match Value": "Match Value", + "Match Value (optional)": "Match Value (optional)", "Matched": "Matched", "Matched Tier": "Matched Tier", "Matching Rules": "Matching Rules", @@ -1920,15 +2083,16 @@ "Max Entries": "Max Entries", "Max Requests (incl. failures)": "Max Requests (incl. failures)", "Max Requests (including failures)": "Max Requests (including failures)", - "Max Success": "Max Success", - "Max Successful Requests": "Max Successful Requests", "Max requests per period": "Max requests per period", + "Max Success": "Max Success", "Max successful requests": "Max successful requests", + "Max Successful Requests": "Max Successful Requests", "Maximum 1000 characters. Supports Markdown and HTML.": "Maximum 1000 characters. Supports Markdown and HTML.", "Maximum 200 characters": "Maximum 200 characters", "Maximum 500 characters. Supports Markdown and HTML.": "Maximum 500 characters. Supports Markdown and HTML.", "Maximum check-in quota": "Maximum check-in quota", "Maximum quota amount awarded for check-in": "Maximum quota amount awarded for check-in", + "maxRequests ≥ 0, maxSuccess ≥ 1, both ≤ 2,147,483,647": "maxRequests ≥ 0, maxSuccess ≥ 1, both ≤ 2,147,483,647", "Medium": "Medium", "Memory Hits": "Memory Hits", "Memory Threshold (%)": "Memory Threshold (%)", @@ -1941,70 +2105,76 @@ "Min Top-up": "Min Top-up", "Min Top-up:": "Min Top-up:", "MiniMax": "MiniMax", - "Minimum LinuxDO trust level required": "Minimum LinuxDO trust level required", - "Minimum Trust Level": "Minimum Trust Level", "Minimum check-in quota": "Minimum check-in quota", + "Minimum LinuxDO trust level required": "Minimum LinuxDO trust level required", "Minimum quota amount awarded for check-in": "Minimum quota amount awarded for check-in", "Minimum recharge amount in USD": "Minimum recharge amount in USD", "Minimum recharge amount to qualify for this discount.": "Minimum recharge amount to qualify for this discount.", - "Minimum top-up (USD)": "Minimum top-up (USD)", "Minimum top-up (optional)": "Minimum top-up (optional)", + "Minimum top-up (USD)": "Minimum top-up (USD)", "Minimum top-up amount must be at least 1": "Minimum top-up amount must be at least 1", "Minimum top-up quantity": "Minimum top-up quantity", "Minimum topup amount: {{amount}}": "Minimum topup amount: {{amount}}", + "Minimum Trust Level": "Minimum Trust Level", "Minimum:": "Minimum:", "Minute": "Minute", - "Missing Models": "Missing Models", + "minutes": "minutes", "Missing code": "Missing code", + "Missing Models": "Missing Models", "Missing user data from Passkey login response": "Missing user data from Passkey login response", "Mistral": "Mistral", "Mode": "Mode", + "model": "model", "Model": "Model", "Model Access": "Model Access", "Model Analytics": "Model Analytics", + "model billing support": "model billing support", "Model Call Analytics": "Model Call Analytics", - "Model Description": "Model Description", - "Model Group": "Model Group", - "Model ID": "Model ID", - "Model Limits": "Model Limits", - "Model Mapping": "Model Mapping", - "Model Mapping (JSON)": "Model Mapping (JSON)", - "Model Mapping must be a JSON object like": "Model Mapping must be a JSON object like", - "Model Name": "Model Name", - "Model Name *": "Model Name *", - "Model Price": "Model Price", - "Model Price Not Configured": "Model Price Not Configured", - "Model Pricing": "Model Pricing", - "Model Regex": "Model Regex", - "Model Regex (one per line)": "Model Regex (one per line)", - "Model Square": "Model Square", - "Model Tags": "Model Tags", - "Model Version *": "Model Version *", "Model context usage": "Model context usage", "Model deleted": "Model deleted", "Model deleted successfully": "Model deleted successfully", "Model deployment service is disabled": "Model deployment service is disabled", + "Model Description": "Model Description", "Model disabled successfully": "Model disabled successfully", "Model enabled successfully": "Model enabled successfully", "Model fixed pricing": "Model fixed pricing", + "Model Group": "Model Group", + "Model ID": "Model ID", + "Model Limits": "Model Limits", + "Model Mapping": "Model Mapping", + "Model Mapping (JSON)": "Model Mapping (JSON)", + "Model Mapping must be a JSON object like": "Model Mapping must be a JSON object like", "Model mapping must be valid JSON": "Model mapping must be valid JSON", "Model name": "Model name", + "Model Name": "Model Name", + "Model Name *": "Model Name *", "Model name is required": "Model name is required", "Model names copied to clipboard": "Model names copied to clipboard", "Model not found": "Model not found", + "Model Price": "Model Price", + "Model Price Not Configured": "Model Price Not Configured", + "Model Pricing": "Model Pricing", "Model pull failed: {{msg}}": "Model pull failed: {{msg}}", "Model ratio": "Model ratio", "Model ratios": "Model ratios", "Model ratios reset successfully": "Model ratios reset successfully", + "Model Regex": "Model Regex", + "Model Regex (one per line)": "Model Regex (one per line)", + "Model Square": "Model Square", + "Model Tags": "Model Tags", "Model to use for testing": "Model to use for testing", "Model to use when testing channel connectivity": "Model to use when testing channel connectivity", + "Model Version *": "Model Version *", + "model(s) selected out of": "model(s) selected out of", + "model(s)? This action cannot be undone.": "model(s)? This action cannot be undone.", + "models": "models", "Models": "Models", - "Models & Groups": "Models & Groups", "Models *": "Models *", - "Models Directory": "Models Directory", + "Models & Groups": "Models & Groups", "Models appended successfully": "Models appended successfully", "Models are required": "Models are required", "Models directory": "Models directory", + "Models Directory": "Models Directory", "Models fetched successfully": "Models fetched successfully", "Models filled to form": "Models filled to form", "Models listed here will not automatically append or remove -thinking / -nothinking suffixes.": "Models listed here will not automatically append or remove -thinking / -nothinking suffixes.", @@ -2019,21 +2189,24 @@ "Monitoring & Alerts": "Monitoring & Alerts", "Month": "Month", "Monthly": "Monthly", + "months": "months", "Moonshot": "Moonshot", "More": "More", + "more mapping": "more mapping", "More templates...": "More templates...", "More...": "More...", "Move": "Move", + "Move a request header": "Move a request header", + "Move affiliate rewards to your main balance": "Move affiliate rewards to your main balance", "Move Field": "Move Field", "Move Header": "Move Header", "Move Request Header": "Move Request Header", - "Move a request header": "Move a request header", - "Move affiliate rewards to your main balance": "Move affiliate rewards to your main balance", "Move source field to target field": "Move source field to target field", + "ms": "ms", + "Multi-key channel: Keys will be": "Multi-key channel: Keys will be", "Multi-Key Management": "Multi-Key Management", "Multi-Key Mode (multiple keys, one channel)": "Multi-Key Mode (multiple keys, one channel)", "Multi-Key Strategy": "Multi-Key Strategy", - "Multi-key channel: Keys will be": "Multi-key channel: Keys will be", "Multi-key: Polling rotation": "Multi-key: Polling rotation", "Multi-key: Random rotation": "Multi-key: Random rotation", "Multi-protocol Compatible": "Multi-protocol Compatible", @@ -2051,20 +2224,22 @@ "Must be a valid URL": "Must be a valid URL", "Must be at least 8 characters": "Must be at least 8 characters", "My Subscriptions": "My Subscriptions", + "my-status": "my-status", "MySQL detected": "MySQL detected", "MySQL is a production-ready relational database. Keep your credentials secure.": "MySQL is a production-ready relational database. Keep your credentials secure.", "MySQL is production ready. Ensure automated backups and a dedicated user with the minimal required privileges are configured.": "MySQL is production ready. Ensure automated backups and a dedicated user with the minimal required privileges are configured.", "N/A": "N/A", "Name": "Name", "Name *": "Name *", - "Name Rule": "Name Rule", - "Name Suffix": "Name Suffix", "Name for this redemption code (1-20 characters)": "Name for this redemption code (1-20 characters)", "Name is available": "Name is available", "Name is not available": "Name is not available", "Name must be between {{min}} and {{max}} characters": "Name must be between {{min}} and {{max}} characters", + "Name Rule": "Name Rule", + "Name Suffix": "Name Suffix", "Name the channel and choose the upstream provider.": "Name the channel and choose the upstream provider.", "Name the channel, choose the provider, configure API access, and set credentials.": "Name the channel, choose the provider, configure API access, and set credentials.", + "name@example.com": "name@example.com", "Native format": "Native format", "Need a code?": "Need a code?", "Nested JSON defining per-group rules for adding (+:), removing (-:), or appending usable groups.": "Nested JSON defining per-group rules for adding (+:), removing (-:), or appending usable groups.", @@ -2078,48 +2253,32 @@ "New Format Template": "New Format Template", "New Group": "New Group", "New Models ({{count}})": "New Models ({{count}})", - "New Password": "New Password", - "New User Quota": "New User Quota", "New name will be:": "New name will be:", "New password": "New password", + "New Password": "New Password", "New password must be different from current password": "New password must be different from current password", + "New User Quota": "New User Quota", "New version available: {{version}}": "New version available: {{version}}", "NewAPI": "NewAPI", "Next": "Next", "Next branch": "Next branch", "Next page": "Next page", "Next reset": "Next reset", - "No API Domains yet. Click \"Add API\" to create one.": "No API Domains yet. Click \"Add API\" to create one.", - "No API Keys Found": "No API Keys Found", - "No API keys available. Create your first API key to get started.": "No API keys available. Create your first API key to get started.", - "No API routes configured": "No API routes configured", "No About Content Set": "No About Content Set", "No Active": "No Active", - "No Change": "No Change", - "No Channels Found": "No Channels Found", - "No Data": "No Data", - "No Deployments Found": "No Deployments Found", - "No FAQ entries available": "No FAQ entries available", - "No FAQ entries yet. Click \"Add FAQ\" to create one.": "No FAQ entries yet. Click \"Add FAQ\" to create one.", - "No Inviter": "No Inviter", - "No Logs Found": "No Logs Found", - "No Models Found": "No Models Found", - "No Quota": "No Quota", - "No Redemption Codes Found": "No Redemption Codes Found", - "No Reset": "No Reset", - "No Retry": "No Retry", - "No Sync": "No Sync", - "No Upgrade": "No Upgrade", - "No Uptime Kuma groups yet. Click \"Add Group\" to create one.": "No Uptime Kuma groups yet. Click \"Add Group\" to create one.", - "No Users Found": "No Users Found", "No additional type-specific settings for this channel type.": "No additional type-specific settings for this channel type.", "No amount options configured. Add amounts below to get started.": "No amount options configured. Add amounts below to get started.", "No announcements at this time": "No announcements at this time", "No announcements yet. Click \"Add Announcement\" to create one.": "No announcements yet. Click \"Add Announcement\" to create one.", - "No available Web chat links": "No available Web chat links", + "No API Domains yet. Click \"Add API\" to create one.": "No API Domains yet. Click \"Add API\" to create one.", + "No API keys available. Create your first API key to get started.": "No API keys available. Create your first API key to get started.", + "No API Keys Found": "No API Keys Found", + "No API routes configured": "No API routes configured", "No available models": "No available models", + "No available Web chat links": "No available Web chat links", "No backup": "No backup", "No billing records found": "No billing records found", + "No Change": "No Change", "No changes": "No changes", "No changes made": "No changes made", "No changes to save": "No changes to save", @@ -2127,6 +2286,7 @@ "No channel type found.": "No channel type found.", "No channels available. Create your first channel to get started.": "No channels available. Create your first channel to get started.", "No channels found": "No channels found", + "No Channels Found": "No Channels Found", "No channels selected": "No channels selected", "No chat presets configured. Click \"Add chat preset\" to get started.": "No chat presets configured. Click \"Add chat preset\" to get started.", "No chat presets match your search": "No chat presets match your search", @@ -2136,21 +2296,27 @@ "No containers": "No containers", "No custom OAuth providers configured yet.": "No custom OAuth providers configured yet.", "No data": "No data", + "No Data": "No Data", "No data available": "No data available", "No deployments available. Create one to get started.": "No deployments available. Create one to get started.", + "No Deployments Found": "No Deployments Found", "No description available.": "No description available.", "No discount tiers configured. Click \"Add discount tier\" to get started.": "No discount tiers configured. Click \"Add discount tier\" to get started.", "No duplicate keys found": "No duplicate keys found", "No enabled tokens available": "No enabled tokens available", "No endpoints configured. Switch to JSON mode or add rows to define endpoints.": "No endpoints configured. Switch to JSON mode or add rows to define endpoints.", + "No FAQ entries available": "No FAQ entries available", + "No FAQ entries yet. Click \"Add FAQ\" to create one.": "No FAQ entries yet. Click \"Add FAQ\" to create one.", "No files match the accepted types.": "No files match the accepted types.", "No group found.": "No group found.", "No group-based rate limits configured. Click \"Add group\" to get started.": "No group-based rate limits configured. Click \"Add group\" to get started.", "No groups match your search": "No groups match your search", "No header overrides configured.": "No header overrides configured.", + "No Inviter": "No Inviter", "No keys found": "No keys found", "No log entries matched the selected time.": "No log entries matched the selected time.", "No logs": "No logs", + "No Logs Found": "No Logs Found", "No mappings configured. Click \"Add Row\" to get started.": "No mappings configured. Click \"Add Row\" to get started.", "No matches found": "No matches found", "No matching results": "No matching results", @@ -2165,6 +2331,7 @@ "No models fetched from upstream": "No models fetched from upstream", "No models fetched yet.": "No models fetched yet.", "No models found": "No models found", + "No Models Found": "No Models Found", "No models found.": "No models found.", "No models match your current filters.": "No models match your current filters.", "No models match your search": "No models match your search", @@ -2186,48 +2353,60 @@ "No products configured. Click \"Add product\" to get started.": "No products configured. Click \"Add product\" to get started.", "No products match your search": "No products match your search", "No providers available": "No providers available", + "No Quota": "No Quota", "No ratio differences found": "No ratio differences found", "No records found. Try adjusting your filters.": "No records found. Try adjusting your filters.", "No redemption codes available. Create your first redemption code to get started.": "No redemption codes available. Create your first redemption code to get started.", + "No Redemption Codes Found": "No Redemption Codes Found", "No related models available for this channel type": "No related models available for this channel type", "No release notes provided.": "No release notes provided.", + "No Reset": "No Reset", "No restriction": "No restriction", "No results for \"{{query}}\". Try adjusting your search or filters.": "No results for \"{{query}}\". Try adjusting your search or filters.", "No results found": "No results found", "No results found.": "No results found.", + "No Retry": "No Retry", "No rules yet": "No rules yet", "No rules yet. Add a group below to get started.": "No rules yet. Add a group below to get started.", "No status code mappings configured.": "No status code mappings configured.", "No subscription plans yet": "No subscription plans yet", "No subscription records": "No subscription records", + "No Sync": "No Sync", "No system announcements": "No system announcements", "No token found.": "No token found.", "No tools configured": "No tools configured", + "No Upgrade": "No Upgrade", "No upstream price differences found": "No upstream price differences found", "No upstream ratio differences found": "No upstream ratio differences found", + "No Uptime Kuma groups yet. Click \"Add Group\" to create one.": "No Uptime Kuma groups yet. Click \"Add Group\" to create one.", "No uptime monitoring configured": "No uptime monitoring configured", "No usage logs available. Logs will appear here once API calls are made.": "No usage logs available. Logs will appear here once API calls are made.", "No user information available": "No user information available", "No user selected": "No user selected", "No users available. Try adjusting your search or filters.": "No users available. Try adjusting your search or filters.", + "No Users Found": "No Users Found", "Node Name": "Node Name", "Non-stream": "Non-stream", "None": "None", + "noreply@example.com": "noreply@example.com", "Normal": "Normal", "Normalized:": "Normalized:", - "Not Equals": "Not Equals", - "Not Set": "Not Set", - "Not Started": "Not Started", - "Not Submitted": "Not Submitted", "Not available": "Not available", "Not backed up": "Not backed up", "Not bound": "Not bound", + "Not Equals": "Not Equals", + "Not Set": "Not Set", "Not set yet": "Not set yet", + "Not Started": "Not Started", + "Not Submitted": "Not Submitted", "Not tested": "Not tested", "Not used yet": "Not used yet", "Notice": "Notice", + "Notice Glass": "Notice Glass", "Notification Email": "Notification Email", "Notification Method": "Notification Method", + "Notification Presets": "Notification Presets", + "Notification presets use fixed category colors and ignore the color palette.": "Notification presets use fixed category colors and ignore the color palette.", "Notifications": "Notifications", "Number of codes to create": "Number of codes to create", "Number of keys to create": "Number of keys to create", @@ -2236,33 +2415,37 @@ "Number of users invited": "Number of users invited", "OAuth Client ID": "OAuth Client ID", "OAuth Client Secret": "OAuth Client Secret", - "OAuth Integrations": "OAuth Integrations", "OAuth failed": "OAuth failed", + "OAuth Integrations": "OAuth Integrations", "OAuth start failed": "OAuth start failed", - "OIDC": "OIDC", - "OIDC Client ID": "OIDC Client ID", - "OIDC Client Secret": "OIDC Client Secret", - "OIDC configuration fetched successfully": "OIDC configuration fetched successfully", - "OIDC discovery URL. Click \"Auto-discover\" to fetch endpoints automatically.": "OIDC discovery URL. Click \"Auto-discover\" to fetch endpoints automatically.", - "OIDC endpoints discovered successfully": "OIDC endpoints discovered successfully", "Object Prune Rules": "Object Prune Rules", "Observability": "Observability", "Obtain the API key, merchant ID, and RSA key pair from the Waffo dashboard, and configure the callback URL.": "Obtain the API key, merchant ID, and RSA key pair from the Waffo dashboard, and configure the callback URL.", "Obtain the merchant, store, product and signing keys from your Waffo dashboard. Webhook URL: /api/waffo-pancake/webhook": "Obtain the merchant, store, product and signing keys from your Waffo dashboard. Webhook URL: /api/waffo-pancake/webhook", + "of": "of", + "of 3:": "of 3:", + "off": "off", "Official": "Official", + "Official documentation": "Official documentation", "Official Repository": "Official Repository", "Official Sync": "Official Sync", - "Official documentation": "Official documentation", "OhMyGPT": "OhMyGPT", + "OIDC": "OIDC", + "OIDC Client ID": "OIDC Client ID", + "OIDC Client Secret": "OIDC Client Secret", + "OIDC configuration fetched successfully": "OIDC configuration fetched successfully", + "OIDC discovery URL. Click \"Auto-discover\" to fetch endpoints automatically.": "OIDC discovery URL. Click \"Auto-discover\" to fetch endpoints automatically.", + "OIDC endpoints discovered successfully": "OIDC endpoints discovered successfully", "Old Format Template": "Old Format Template", "Old format: Direct override. New format: Supports conditional judgment and custom JSON operations.": "Old format: Direct override. New format: Supports conditional judgment and custom JSON operations.", "Ollama": "Ollama", "Ollama Models": "Ollama Models", "One API": "One API", - "One IP or CIDR range per line": "One IP or CIDR range per line", - "One IP per line (empty for no restriction)": "One IP per line (empty for no restriction)", "One domain per line": "One domain per line", "One domain per line (only used when domain restriction is enabled)": "One domain per line (only used when domain restriction is enabled)", + "One IP or CIDR range per line": "One IP or CIDR range per line", + "One IP per line (empty for no restriction)": "One IP per line (empty for no restriction)", + "one keyword per line": "one keyword per line", "Online payment is not enabled. Please contact the administrator.": "Online payment is not enabled. Please contact the administrator.", "Online topup is not enabled. Please use redemption code or contact administrator.": "Online topup is not enabled. Please use redemption code or contact administrator.", "Only allow specific email domains": "Only allow specific email domains", @@ -2274,34 +2457,35 @@ "Oops! Page Not Found!": "Oops! Page Not Found!", "Oops! Something went wrong": "Oops! Something went wrong", "Open": "Open", - "Open CC Switch": "Open CC Switch", - "Open Source": "Open Source", "Open authorization page": "Open authorization page", - "Open in New Tab": "Open in New Tab", + "Open CC Switch": "Open CC Switch", "Open in chat": "Open in chat", "Open in new tab": "Open in new tab", + "Open in New Tab": "Open in New Tab", "Open menu": "Open menu", "Open release": "Open release", + "Open Source": "Open Source", "Open the io.net console API Keys page": "Open the io.net console API Keys page", "Open theme settings": "Open theme settings", "OpenAI": "OpenAI", "OpenAI Compatible": "OpenAI Compatible", "OpenAI Organization": "OpenAI Organization", "OpenAI Organization ID (optional)": "OpenAI Organization ID (optional)", - "OpenAI, Anthropic, Google, etc.": "OpenAI, Anthropic, Google, etc.", "OpenAI, Anthropic, etc.": "OpenAI, Anthropic, etc.", + "OpenAI, Anthropic, Google, etc.": "OpenAI, Anthropic, Google, etc.", "OpenAIMax": "OpenAIMax", - "OpenRouter": "OpenRouter", "Opened authorization page": "Opened authorization page", + "OpenRouter": "OpenRouter", + "opens in an external client. Trigger it from the sidebar or API key actions to launch the configured application.": "opens in an external client. Trigger it from the sidebar or API key actions to launch the configured application.", "Operation": "Operation", - "Operation Type": "Operation Type", "Operation failed": "Operation failed", + "Operation Type": "Operation Type", "Operator Admin": "Operator Admin", "Optimize system for self-hosted single-user usage": "Optimize system for self-hosted single-user usage", "Optimized network architecture ensures millisecond response times": "Optimized network architecture ensures millisecond response times", - "Optional JSON policy to restrict access based on user info fields": "Optional JSON policy to restrict access based on user info fields", "Optional callback override. Leave blank to use server address": "Optional callback override. Leave blank to use server address", "Optional icon identifier for the login button": "Optional icon identifier for the login button", + "Optional JSON policy to restrict access based on user info fields": "Optional JSON policy to restrict access based on user info fields", "Optional minimum recharge amount for this method.": "Optional minimum recharge amount for this method.", "Optional multiplier per user group used when calculating recharge pricing. Provide a JSON object such as": "Optional multiplier per user group used when calculating recharge pricing. Provide a JSON object such as", "Optional notes about this channel": "Optional notes about this channel", @@ -2314,46 +2498,50 @@ "Opus Model": "Opus Model", "Or continue with": "Or continue with", "Or enter this key manually:": "Or enter this key manually:", + "Order completed successfully": "Order completed successfully", "Order History": "Order History", "Order Payment Method": "Order Payment Method", - "Order completed successfully": "Order completed successfully", + "org-...": "org-...", "Original Model": "Original Model", "Other": "Other", "Output": "Output", - "Output Tokens": "Output Tokens", "Output price": "Output price", "Output tokens": "Output tokens", + "Output Tokens": "Output Tokens", + "override": "override", "Override": "Override", "Override Anthropic headers, defaults, and thinking adapter behavior": "Override Anthropic headers, defaults, and thinking adapter behavior", - "Override Rules": "Override Rules", "Override auto-discovered endpoint": "Override auto-discovered endpoint", "Override request headers": "Override request headers", "Override request headers (JSON format)": "Override request headers (JSON format)", "Override request parameters (JSON format)": "Override request parameters (JSON format)", "Override request parameters. Cannot override": "Override request parameters. Cannot override", "Override request parameters. Cannot override stream parameter.": "Override request parameters. Cannot override stream parameter.", + "Override Rules": "Override Rules", "Override the endpoint used for testing. Leave empty to auto detect.": "Override the endpoint used for testing. Leave empty to auto detect.", + "overrides for matching model prefix.": "overrides for matching model prefix.", "Overview": "Overview", "Overwritten": "Overwritten", - "PaLM": "PaLM", "Page": "Page", "Page {{current}} of {{total}}": "Page {{current}} of {{total}}", + "PaLM": "PaLM", "Pan": "Pan", "Param Override": "Param Override", - "Parameter Override": "Parameter Override", - "Parameter Override Template (JSON)": "Parameter Override Template (JSON)", "Parameter configuration error": "Parameter configuration error", + "Parameter Override": "Parameter Override", "Parameter override must be a valid JSON object": "Parameter override must be a valid JSON object", "Parameter override must be valid JSON format": "Parameter override must be valid JSON format", + "Parameter Override Template (JSON)": "Parameter Override Template (JSON)", "Parameter override template must be a JSON object": "Parameter override template must be a JSON object", + "parameter.": "parameter.", "Parameters": "Parameters", "Parsed {{count}} service account file(s)": "Parsed {{count}} service account file(s)", "Partial Submission": "Partial Submission", "Pass Headers": "Pass Headers", - "Pass Through Body": "Pass Through Body", - "Pass Through Headers": "Pass Through Headers", "Pass request body directly to upstream": "Pass request body directly to upstream", "Pass specified request headers to upstream": "Pass specified request headers to upstream", + "Pass Through Body": "Pass Through Body", + "Pass Through Headers": "Pass Through Headers", "Pass through the anthropic-beta header for beta features": "Pass through the anthropic-beta header for beta features", "Pass through the include field for usage obfuscation": "Pass through the include field for usage obfuscation", "Pass through the inference_geo field for Claude data residency region control": "Pass through the inference_geo field for Claude data residency region control", @@ -2366,11 +2554,11 @@ "Pass-through Headers (comma-separated or JSON array)": "Pass-through Headers (comma-separated or JSON array)", "Passkey": "Passkey", "Passkey Authentication": "Passkey Authentication", - "Passkey Login": "Passkey Login", "Passkey is not available in this browser": "Passkey is not available in this browser", "Passkey is not supported in this environment": "Passkey is not supported in this environment", "Passkey is not supported on this device": "Passkey is not supported on this device", "Passkey is not supported on this device.": "Passkey is not supported on this device.", + "Passkey Login": "Passkey Login", "Passkey login failed": "Passkey login failed", "Passkey login was cancelled": "Passkey login was cancelled", "Passkey login was cancelled or timed out": "Passkey login was cancelled or timed out", @@ -2382,41 +2570,43 @@ "Passthrough Template": "Passthrough Template", "Password": "Password", "Password / Access Token": "Password / Access Token", - "Password Login": "Password Login", - "Password Registration": "Password Registration", "Password changed successfully": "Password changed successfully", "Password copied to clipboard: {{password}}": "Password copied to clipboard: {{password}}", "Password has been copied to clipboard": "Password has been copied to clipboard", + "Password Login": "Password Login", "Password must be at least 8 characters": "Password must be at least 8 characters", "Password must be at least 8 characters long": "Password must be at least 8 characters long", + "Password Registration": "Password Registration", "Password reset and copied to clipboard: {{password}}": "Password reset and copied to clipboard: {{password}}", "Password reset: {{password}}": "Password reset: {{password}}", "Passwords do not match": "Passwords do not match", "Paste the full callback URL (includes code & state)": "Paste the full callback URL (includes code & state)", "Path": "Path", - "Path Regex (one per line)": "Path Regex (one per line)", "Path not set": "Path not set", + "Path Regex (one per line)": "Path Regex (one per line)", "Path:": "Path:", "Pay": "Pay", "Pay-as-you-go with real-time usage monitoring": "Pay-as-you-go with real-time usage monitoring", "Payment Channel": "Payment Channel", "Payment Gateway": "Payment Gateway", - "Payment Method": "Payment Method", - "Payment Methods": "Payment Methods", "Payment initiated": "Payment initiated", + "Payment Method": "Payment Method", "Payment method name": "Payment method name", "Payment method name is required": "Payment method name is required", "Payment method type": "Payment method type", "Payment method type is required": "Payment method type is required", "Payment methods": "Payment methods", + "Payment Methods": "Payment Methods", "Payment page opened": "Payment page opened", "Payment request failed": "Payment request failed", "Payment return URL": "Payment return URL", "Pending": "Pending", + "per": "per", "Per 1K tokens": "Per 1K tokens", "Per 1M tokens": "Per 1M tokens", - "Per Request": "Per Request", + "per request": "per request", "Per request": "Per request", + "Per Request": "Per Request", "Per-call": "Per-call", "Per-feature metered windows split by model or capability.": "Per-feature metered windows split by model or capability.", "Per-request (fixed price)": "Per-request (fixed price)", @@ -2433,14 +2623,15 @@ "Perplexity": "Perplexity", "Persist your data file": "Persist your data file", "Personal": "Personal", - "Personal Center Area": "Personal Center Area", - "Personal Settings": "Personal Settings", "Personal area": "Personal area", + "Personal Center Area": "Personal Center Area", "Personal info settings": "Personal info settings", + "Personal Settings": "Personal Settings", "Personal settings and profile management.": "Personal settings and profile management.", "Personal use": "Personal use", "Personal use mode": "Personal use mode", "Pick a date": "Pick a date", + "Pick colors from the palette or enter CSS color values manually.": "Pick colors from the palette or enter CSS color values manually.", "Ping Interval (seconds)": "Ping Interval (seconds)", "Plan": "Plan", "Plan Name": "Plan Name", @@ -2451,29 +2642,28 @@ "Playground": "Playground", "Playground and chat functions": "Playground and chat functions", "Playground experiments and live conversations.": "Playground experiments and live conversations.", - "Please Select user groups that can access this channel.": "Please Select user groups that can access this channel.", "Please agree to the legal terms first": "Please agree to the legal terms first", "Please complete the security check to continue.": "Please complete the security check to continue.", "Please confirm that you understand the consequences": "Please confirm that you understand the consequences", - "Please enable Two-factor Authentication or Passkey before proceeding": "Please enable Two-factor Authentication or Passkey before proceeding", "Please enable io.net model deployment service and configure an API key in System Settings.": "Please enable io.net model deployment service and configure an API key in System Settings.", - "Please enter API key first": "Please enter API key first", - "Please enter a Well-Known URL first": "Please enter a Well-Known URL first", + "Please enable Two-factor Authentication or Passkey before proceeding": "Please enable Two-factor Authentication or Passkey before proceeding", "Please enter a name": "Please enter a name", "Please enter a new password": "Please enter a new password", "Please enter a redemption code": "Please enter a redemption code", "Please enter a valid duration": "Please enter a valid duration", "Please enter a valid email address": "Please enter a valid email address", "Please enter a valid number": "Please enter a valid number", + "Please enter a Well-Known URL first": "Please enter a Well-Known URL first", "Please enter amount": "Please enter amount", "Please enter an administrator username": "Please enter an administrator username", + "Please enter API key first": "Please enter API key first", "Please enter chat client name": "Please enter chat client name", "Please enter email and verification code": "Please enter email and verification code", "Please enter keys first": "Please enter keys first", "Please enter model name": "Please enter model name", "Please enter plan title": "Please enter plan title", - "Please enter the URL": "Please enter the URL", "Please enter the authentication code.": "Please enter the authentication code.", + "Please enter the URL": "Please enter the URL", "Please enter the verification code": "Please enter the verification code", "Please enter your current password": "Please enter your current password", "Please enter your email": "Please enter your email", @@ -2490,6 +2680,7 @@ "Please select at least one channel": "Please select at least one channel", "Please select at least one model": "Please select at least one model", "Please select items to delete": "Please select items to delete", + "Please Select user groups that can access this channel.": "Please Select user groups that can access this channel.", "Please set Ollama API Base URL first": "Please set Ollama API Base URL first", "Please try again later.": "Please try again later.", "Please upload key file(s)": "Please upload key file(s)", @@ -2506,8 +2697,8 @@ "PostgreSQL offers strong reliability guarantees. Double check your maintenance window and retention policies before going live.": "PostgreSQL offers strong reliability guarantees. Double check your maintenance window and retention policies before going live.", "Powerful API Management Platform": "Powerful API Management Platform", "Pre-Consume for Free Models": "Pre-Consume for Free Models", - "Pre-Consumed Quota": "Pre-Consumed Quota", "Pre-consumed": "Pre-consumed", + "Pre-Consumed Quota": "Pre-Consumed Quota", "Preference saved as {{pref}}, but no active subscription. Wallet will be used automatically.": "Preference saved as {{pref}}, but no active subscription. Wallet will be used automatically.", "Preferences": "Preferences", "Prefill Group Management": "Prefill Group Management", @@ -2527,9 +2718,9 @@ "Preserve the original field when applying this rule": "Preserve the original field when applying this rule", "Preset": "Preset", "Preset Background": "Preset Background", - "Preset Template": "Preset Template", "Preset recharge amounts (JSON array)": "Preset recharge amounts (JSON array)", "Preset recharge amounts displayed to users": "Preset recharge amounts displayed to users", + "Preset Template": "Preset Template", "Preset templates": "Preset templates", "Press Enter or comma to add tags": "Press Enter or comma to add tags", "Press Enter to use \"{{value}}\"": "Press Enter to use \"{{value}}\"", @@ -2542,12 +2733,13 @@ "Price": "Price", "Price ($/1K calls)": "Price ($/1K calls)", "Price (local currency / USD)": "Price (local currency / USD)", - "Price ID": "Price ID", "Price display": "Price display", "Price display mode": "Price display mode", "Price estimation": "Price estimation", "Price estimation description": "After completing the hardware type, deployment location, replica count, etc., the price will be automatically calculated.", + "Price ID": "Price ID", "Price mode (USD per 1M tokens)": "Price mode (USD per 1M tokens)", + "price_xxx": "price_xxx", "Price:": "Price:", "Price: High to Low": "Price: High to Low", "Price: Low to High": "Price: Low to High", @@ -2556,11 +2748,11 @@ "Prices vary by usage tier and request conditions": "Prices vary by usage tier and request conditions", "Pricing": "Pricing", "Pricing & Display": "Pricing & Display", + "Pricing by Group": "Pricing by Group", "Pricing Configuration": "Pricing Configuration", + "Pricing mode": "Pricing mode", "Pricing Ratios": "Pricing Ratios", "Pricing Type": "Pricing Type", - "Pricing by Group": "Pricing by Group", - "Pricing mode": "Pricing mode", "Primary Model": "Primary Model", "Prioritize reusing the last successful channel based on keys extracted from request context (sticky routing)": "Prioritize reusing the last successful channel based on keys extracted from request context (sticky routing)", "Priority": "Priority", @@ -2576,6 +2768,7 @@ "Product ID is required": "Product ID is required", "Product Name": "Product Name", "Products": "Products", + "Professional": "Professional", "Professional team providing 24/7 technical support": "Professional team providing 24/7 technical support", "Profile": "Profile", "Profile updated successfully": "Profile updated successfully", @@ -2585,28 +2778,28 @@ "Promotion codes": "Promotion codes", "Prompt": "Prompt", "Prompt (EN)": "Prompt (EN)", + "Prompt cache ratio": "Prompt cache ratio", "Prompt Caching": "Prompt Caching", "Prompt Details": "Prompt Details", - "Prompt cache ratio": "Prompt cache ratio", "Prompt price ($/1M tokens)": "Prompt price ($/1M tokens)", "Protect login and registration with Cloudflare Turnstile": "Protect login and registration with Cloudflare Turnstile", - "Provide Markdown, HTML, or an external URL for the privacy policy": "Provide Markdown, HTML, or an external URL for the privacy policy", - "Provide Markdown, HTML, or an external URL for the user agreement": "Provide Markdown, HTML, or an external URL for the user agreement", "Provide a JSON object where each key maps to an endpoint definition.": "Provide a JSON object where each key maps to an endpoint definition.", "Provide a valid URL starting with http:// or https://": "Provide a valid URL starting with http:// or https://", + "Provide Markdown, HTML, or an external URL for the privacy policy": "Provide Markdown, HTML, or an external URL for the privacy policy", + "Provide Markdown, HTML, or an external URL for the user agreement": "Provide Markdown, HTML, or an external URL for the user agreement", "Provide per-category safety overrides as JSON. Use `default` for fallback values.": "Provide per-category safety overrides as JSON. Use `default` for fallback values.", "Provide per-model header overrides as JSON. Useful for enabling beta features such as expanded context windows.": "Provide per-model header overrides as JSON. Useful for enabling beta features such as expanded context windows.", "Provider": "Provider", - "Provider Name": "Provider Name", "Provider created successfully": "Provider created successfully", "Provider deleted successfully": "Provider deleted successfully", + "Provider Name": "Provider Name", "Provider type (OpenAI, Anthropic, etc.)": "Provider type (OpenAI, Anthropic, etc.)", "Provider updated successfully": "Provider updated successfully", "Provider-specific endpoint, account, and compatibility settings.": "Provider-specific endpoint, account, and compatibility settings.", "Proxy Address": "Proxy Address", "Prune Object Items": "Prune Object Items", - "Prune Rule (string or JSON object)": "Prune Rule (string or JSON object)", "Prune object items by conditions": "Prune object items by conditions", + "Prune Rule (string or JSON object)": "Prune Rule (string or JSON object)", "Publish Date": "Publish Date", "Published": "Published", "Published:": "Published:", @@ -2614,11 +2807,11 @@ "Pull model": "Pull model", "Pulling...": "Pulling...", "Pulse": "Pulse", - "Purchase Limit": "Purchase Limit", - "Purchase Subscription": "Purchase Subscription", "Purchase a plan to enjoy model benefits": "Purchase a plan to enjoy model benefits", "Purchase here": "Purchase here", + "Purchase Limit": "Purchase Limit", "Purchase limit reached": "Purchase limit reached", + "Purchase Subscription": "Purchase Subscription", "QR Code Image URL": "QR Code Image URL", "QR code is not configured. Please contact support.": "QR code is not configured. Please contact support.", "Quantity": "Quantity", @@ -2628,27 +2821,24 @@ "Querying...": "Querying...", "Question": "Question", "Queued": "Queued", + "Quick insert common payment methods": "Quick insert common payment methods", "Quick Range": "Quick Range", "Quick Setup from Preset": "Quick Setup from Preset", - "Quick insert common payment methods": "Quick insert common payment methods", "Quota": "Quota", "Quota ({{currency}})": "Quota ({{currency}})", - "Quota Distribution": "Quota Distribution", - "Quota Per Unit": "Quota Per Unit", - "Quota Reset": "Quota Reset", - "Quota Settings": "Quota Settings", - "Quota Types": "Quota Types", - "Quota Warning Threshold": "Quota Warning Threshold", "Quota adjusted successfully": "Quota adjusted successfully", "Quota consumed before charging users": "Quota consumed before charging users", + "Quota Distribution": "Quota Distribution", "Quota given to invited users": "Quota given to invited users", "Quota given to users who invite others": "Quota given to users who invite others", "Quota must be a positive number": "Quota must be a positive number", + "Quota Per Unit": "Quota Per Unit", "Quota reminder (tokens)": "Quota reminder (tokens)", + "Quota Reset": "Quota Reset", + "Quota Settings": "Quota Settings", + "Quota Types": "Quota Types", + "Quota Warning Threshold": "Quota Warning Threshold", "Quota:": "Quota:", - "RPM": "RPM", - "RSA Private Key (Production)": "RSA Private Key (Production)", - "RSA Private Key (Sandbox)": "RSA Private Key (Sandbox)", "Rainbow": "Rainbow", "Random": "Random", "Randomly select a key from the pool for each request": "Randomly select a key from the pool for each request", @@ -2656,16 +2846,16 @@ "Rate Limited": "Rate Limited", "Rate Limiting": "Rate Limiting", "Ratio": "Ratio", - "Ratio Type": "Ratio Type", "Ratio applied to audio completions for streaming models.": "Ratio applied to audio completions for streaming models.", "Ratio applied to audio inputs where supported by the upstream model.": "Ratio applied to audio inputs where supported by the upstream model.", "Ratio applied when creating cache entries for supported models.": "Ratio applied when creating cache entries for supported models.", "Ratio mode": "Ratio mode", + "Ratio Type": "Ratio Type", "Ratio: {{value}}": "Ratio: {{value}}", "Ratios synced successfully": "Ratios synced successfully", + "Raw expression": "Raw expression", "Raw JSON": "Raw JSON", "Raw Quota": "Raw Quota", - "Raw expression": "Raw expression", "Re-enable on success": "Re-enable on success", "Re-login": "Re-login", "Ready to initialize": "Ready to initialize", @@ -2690,29 +2880,31 @@ "Redeem codes": "Redeem codes", "Redeemed By": "Redeemed By", "Redeemed:": "Redeemed:", + "redemption code": "redemption code", "Redemption Code": "Redemption Code", - "Redemption Codes": "Redemption Codes", "Redemption code deleted successfully": "Redemption code deleted successfully", "Redemption code disabled successfully": "Redemption code disabled successfully", "Redemption code enabled successfully": "Redemption code enabled successfully", "Redemption code updated successfully": "Redemption code updated successfully", "Redemption code(s) created successfully": "Redemption code(s) created successfully", + "Redemption Codes": "Redemption Codes", + "redemption codes.": "redemption codes.", "Redemption failed": "Redemption failed", "Redemption successful! Added: {{quota}}": "Redemption successful! Added: {{quota}}", + "Redirecting to chat page...": "Redirecting to chat page...", "Redirecting to Creem checkout...": "Redirecting to Creem checkout...", "Redirecting to GitHub...": "Redirecting to GitHub...", - "Redirecting to chat page...": "Redirecting to chat page...", "Redirecting to payment page...": "Redirecting to payment page...", "Reference Video": "Reference Video", - "Referral Program": "Referral Program", "Referral link:": "Referral link:", + "Referral Program": "Referral Program", "Refine models by provider, group, type, and tags.": "Refine models by provider, group, type, and tags.", "Refresh": "Refresh", "Refresh Cache": "Refresh Cache", - "Refresh Stats": "Refresh Stats", "Refresh credential": "Refresh credential", "Refresh failed": "Refresh failed", "Refresh interval (minutes)": "Refresh interval (minutes)", + "Refresh Stats": "Refresh Stats", "Refreshing...": "Refreshing...", "Refund": "Refund", "Refund Details": "Refund Details", @@ -2731,30 +2923,30 @@ "Relying Party Display Name": "Relying Party Display Name", "Relying Party ID": "Relying Party ID", "Remaining": "Remaining", - "Remaining Quota ({{currency}})": "Remaining Quota ({{currency}})", "Remaining quota": "Remaining quota", + "Remaining Quota ({{currency}})": "Remaining Quota ({{currency}})", "Remaining quota units": "Remaining quota units", "Remaining:": "Remaining:", "Remark": "Remark", "Remove": "Remove", "Remove ${{amount}}": "Remove ${{amount}}", - "Remove Duplicates": "Remove Duplicates", - "Remove Models": "Remove Models", - "Remove Passkey": "Remove Passkey", - "Remove Passkey?": "Remove Passkey?", "Remove all log entries created before the selected timestamp.": "Remove all log entries created before the selected timestamp.", "Remove attachment": "Remove attachment", "Remove condition": "Remove condition", + "Remove Duplicates": "Remove Duplicates", "Remove filter": "Remove filter", "Remove functionResponse.id field": "Remove functionResponse.id field", + "Remove Models": "Remove Models", + "Remove Passkey": "Remove Passkey", + "Remove Passkey?": "Remove Passkey?", "Remove rule group": "Remove rule group", "Remove string prefix": "Remove string prefix", "Remove string suffix": "Remove string suffix", "Remove the target field": "Remove the target field", "Remove tier": "Remove tier", "Removed": "Removed", - "Removed Models ({{count}})": "Removed Models ({{count}})", "Removed {{removed}} duplicate key(s). Before: {{before}}, After: {{after}}": "Removed {{removed}} duplicate key(s). Before: {{before}}, After: {{after}}", + "Removed Models ({{count}})": "Removed Models ({{count}})", "Removes Midjourney flags such as --fast, --relax, and --turbo from user prompts.": "Removes Midjourney flags such as --fast, --relax, and --turbo from user prompts.", "Removing Passkey will require you to sign in with your password next time. You can re-register anytime.": "Removing Passkey will require you to sign in with your password next time. You can re-register anytime.", "Rename": "Rename", @@ -2763,19 +2955,25 @@ "Renamed successfully": "Renamed successfully", "Repeat the administrator password": "Repeat the administrator password", "Replace": "Replace", - "Replace With": "Replace With", "Replace all existing keys": "Replace all existing keys", "Replace channel models": "Replace channel models", "Replace mode: Will completely replace all existing keys": "Replace mode: Will completely replace all existing keys", + "Replace With": "Replace With", + "replaced": "replaced", "Replacement Model": "Replacement Model", "Replica count": "Replica count", "Replicate": "Replicate", + "request": "request", "Request": "Request", "Request Body Disk Cache": "Request Body Disk Cache", "Request Body Field": "Request Body Field", "Request Body Memory Cache": "Request Body Memory Cache", + "Request body pass-through is enabled. The request body will be sent directly to the upstream without any conversion.": "Request body pass-through is enabled. The request body will be sent directly to the upstream without any conversion.", + "Request conversion": "Request conversion", "Request Conversion": "Request Conversion", "Request Count": "Request Count", + "Request failed": "Request failed", + "Request flow": "Request flow", "Request Header Field": "Request Header Field", "Request Header Override": "Request Header Override", "Request Header Overrides": "Request Header Overrides", @@ -2783,15 +2981,12 @@ "Request Limits": "Request Limits", "Request Model": "Request Model", "Request Model:": "Request Model:", - "Request body pass-through is enabled. The request body will be sent directly to the upstream without any conversion.": "Request body pass-through is enabled. The request body will be sent directly to the upstream without any conversion.", - "Request conversion": "Request conversion", - "Request failed": "Request failed", - "Request flow": "Request flow", "Request overrides, routing behavior, and upstream model automation": "Request overrides, routing behavior, and upstream model automation", "Request rule pricing": "Request rule pricing", "Request timed out, please refresh and restart GitHub login": "Request timed out, please refresh and restart GitHub login", "Request-based": "Request-based", "Requests per minute": "Requests per minute", + "requests served": "requests served", "Requests will be forwarded to this worker. Trailing slashes are removed automatically.": "Requests will be forwarded to this worker. Trailing slashes are removed automatically.", "Requests:": "Requests:", "Require email verification for new accounts": "Require email verification for new accounts", @@ -2806,23 +3001,23 @@ "Resend ({{seconds}}s)": "Resend ({{seconds}}s)", "Reset": "Reset", "Reset 2FA": "Reset 2FA", - "Reset Cycle": "Reset Cycle", - "Reset Passkey": "Reset Passkey", - "Reset Period": "Reset Period", - "Reset Stats": "Reset Stats", - "Reset Two-Factor Authentication": "Reset Two-Factor Authentication", "Reset all model ratios?": "Reset all model ratios?", "Reset all settings to default values": "Reset all settings to default values", "Reset at:": "Reset at:", "Reset balance and used quota": "Reset balance and used quota", + "Reset Cycle": "Reset Cycle", "Reset email sent, please check your inbox": "Reset email sent, please check your inbox", "Reset failed": "Reset failed", + "Reset Passkey": "Reset Passkey", "Reset password": "Reset password", + "Reset Period": "Reset Period", "Reset ratios": "Reset ratios", - "Reset to Default": "Reset to Default", + "Reset Stats": "Reset Stats", "Reset to default": "Reset to default", + "Reset to Default": "Reset to Default", "Reset to default color": "Reset to default color", "Reset to default configuration": "Reset to default configuration", + "Reset Two-Factor Authentication": "Reset Two-Factor Authentication", "Resets in:": "Resets in:", "Resolve Conflicts": "Resolve Conflicts", "Resource Configuration": "Resource Configuration", @@ -2837,9 +3032,9 @@ "Retry Chain": "Retry Chain", "Retry Suggestion": "Retry Suggestion", "Retry Times": "Retry Times", + "Return a custom error immediately": "Return a custom error immediately", "Return Custom Error": "Return Custom Error", "Return Error": "Return Error", - "Return a custom error immediately": "Return a custom error immediately", "Return to dashboard": "Return to dashboard", "Reveal API key": "Reveal API key", "Reveal key": "Reveal key", @@ -2859,9 +3054,10 @@ "Routing & Overrides": "Routing & Overrides", "Routing Strategy": "Routing Strategy", "Rows per page": "Rows per page", + "RPM": "RPM", + "RSA Private Key (Production)": "RSA Private Key (Production)", + "RSA Private Key (Sandbox)": "RSA Private Key (Sandbox)", "Rule": "Rule", - "Rule Description (optional)": "Rule Description (optional)", - "Rule group": "Rule group", "Rule {{line}} is missing source field": "Rule {{line}} is missing source field", "Rule {{line}} is missing target field": "Rule {{line}} is missing target field", "Rule {{line}} is missing target path": "Rule {{line}} is missing target path", @@ -2870,37 +3066,29 @@ "Rule {{line}} pass_headers is missing header names": "Rule {{line}} pass_headers is missing header names", "Rule {{line}} prune_objects is missing conditions": "Rule {{line}} prune_objects is missing conditions", "Rule {{line}} return_error requires a message field": "Rule {{line}} return_error requires a message field", + "Rule Description (optional)": "Rule Description (optional)", + "Rule group": "Rule group", + "rules": "rules", "Rules": "Rules", "Rules JSON": "Rules JSON", "Rules JSON must be an array": "Rules JSON must be an array", "Run GC": "Run GC", "Run tests for the selected models": "Run tests for the selected models", "Running": "Running", - "SMTP Email": "SMTP Email", - "SMTP Host": "SMTP Host", - "SQLite stores all data in a single file. Make sure that file is persisted when running in containers.": "SQLite stores all data in a single file. Make sure that file is persisted when running in containers.", - "SSRF Protection": "SSRF Protection", + "s": "s", "Safety Settings": "Safety Settings", "Same as Local": "Same as Local", "Sandbox mode": "Sandbox mode", "Save": "Save", - "Save Backup Codes": "Save Backup Codes", - "Save Changes": "Save Changes", - "Save Creem settings": "Save Creem settings", - "Save Epay settings": "Save Epay settings", - "Save Models": "Save Models", - "Save Preferences": "Save Preferences", - "Save SMTP settings": "Save SMTP settings", - "Save SSRF settings": "Save SSRF settings", - "Save Settings": "Save Settings", - "Save Stripe settings": "Save Stripe settings", - "Save Waffo Pancake settings": "Save Waffo Pancake settings", - "Save Worker settings": "Save Worker settings", "Save all settings": "Save all settings", + "Save Backup Codes": "Save Backup Codes", "Save changes": "Save changes", + "Save Changes": "Save Changes", "Save chat settings": "Save chat settings", "Save check-in settings": "Save check-in settings", + "Save Creem settings": "Save Creem settings", "Save drawing settings": "Save drawing settings", + "Save Epay settings": "Save Epay settings", "Save failed": "Save failed", "Save failed, please retry": "Save failed, please retry", "Save general settings": "Save general settings", @@ -2908,23 +3096,33 @@ "Save io.net settings": "Save io.net settings", "Save log settings": "Save log settings", "Save model ratios": "Save model ratios", + "Save Models": "Save Models", "Save monitoring rules": "Save monitoring rules", "Save navigation": "Save navigation", "Save notice": "Save notice", + "Save Preferences": "Save Preferences", "Save rate limits": "Save rate limits", "Save sensitive words": "Save sensitive words", + "Save Settings": "Save Settings", "Save sidebar modules": "Save sidebar modules", + "Save SMTP settings": "Save SMTP settings", + "Save SSRF settings": "Save SSRF settings", + "Save Stripe settings": "Save Stripe settings", "Save these backup codes in a safe place. Each code can only be used once.": "Save these backup codes in a safe place. Each code can only be used once.", "Save these codes in a safe place. Each code can only be used once.": "Save these codes in a safe place. Each code can only be used once.", "Save tool prices": "Save tool prices", + "Save Waffo Pancake settings": "Save Waffo Pancake settings", + "Save Worker settings": "Save Worker settings", "Saved successfully": "Saved successfully", "Saving...": "Saving...", "Scan QR Code": "Scan QR Code", "Scan the QR code to follow the official account and reply with “验证码” to receive your verification code.": "Scan the QR code to follow the official account and send the message “验证码” to receive your verification code.", "Scan the QR code with WeChat to bind your account": "Scan the QR code with WeChat to bind your account", "Scan this QR code with your authenticator app (Google Authenticator, Microsoft Authenticator, etc.)": "Scan this QR code with your authenticator app (Google Authenticator, Microsoft Authenticator, etc.)", + "Scanline": "Scanline", "Scenario Templates": "Scenario Templates", "Scheduled channel tests": "Scheduled channel tests", + "scheduling controls": "scheduling controls", "Scope": "Scope", "Scopes": "Scopes", "Search": "Search", @@ -2952,19 +3150,15 @@ "Search tags...": "Search tags...", "Search vendors...": "Search vendors...", "Search...": "Search...", - "Secret Key": "Secret Key", + "seconds": "seconds", "Secret env (JSON object)": "Secret env (JSON object)", "Secret environment variables (JSON)": "Secret environment variables (JSON)", + "Secret Key": "Secret Key", "Secure & Reliable": "Secure & Reliable", "Security": "Security", "Security Check": "Security Check", "Security verification": "Security verification", "Select": "Select", - "Select All Visible": "Select All Visible", - "Select Language": "Select Language", - "Select Model": "Select Model", - "Select Sync Channels": "Select Sync Channels", - "Select Sync Source": "Select Sync Source", "Select a color": "Select a color", "Select a group": "Select a group", "Select a group type": "Select a group type", @@ -2977,6 +3171,7 @@ "Select all": "Select all", "Select all (filtered)": "Select all (filtered)", "Select all models": "Select all models", + "Select All Visible": "Select All Visible", "Select an operation mode and enter the amount": "Select an operation mode and enter the amount", "Select announcement type": "Select announcement type", "Select at least one field to overwrite.": "Select at least one field to overwrite.", @@ -2994,8 +3189,10 @@ "Select items...": "Select items...", "Select key format": "Select key format", "Select language": "Select language", + "Select Language": "Select Language", "Select layout style": "Select layout style", "Select locations": "Select locations", + "Select Model": "Select Model", "Select models (empty for allow all)": "Select models (empty for allow all)", "Select models and apply to channel models list.": "Select models and apply to channel models list.", "Select models or add custom ones": "Select models or add custom ones", @@ -3013,14 +3210,18 @@ "Select site direction": "Select site direction", "Select start time": "Select start time", "Select subscription plan": "Select subscription plan", + "Select Sync Channels": "Select Sync Channels", "Select sync channels to compare prices": "Select sync channels to compare prices", "Select sync channels to compare ratios": "Select sync channels to compare ratios", + "Select Sync Source": "Select Sync Source", "Select the API endpoint region": "Select the API endpoint region", "Select the fields you want to overwrite with upstream data. Unselected fields keep their local values.": "Select the fields you want to overwrite with upstream data. Unselected fields keep their local values.", "Select theme preference": "Select theme preference", "Select time granularity": "Select time granularity", "Select vendor": "Select vendor", "Selectable groups": "Selectable groups", + "selected": "selected", + "selected channel(s). Leave empty to remove tag.": "selected channel(s). Leave empty to remove tag.", "Selected conflicts were overwritten successfully.": "Selected conflicts were overwritten successfully.", "Self-Use Mode": "Self-Use Mode", "Send": "Send", @@ -3033,26 +3234,26 @@ "Server Address": "Server Address", "Server IP": "Server IP", "Server Log Management": "Server Log Management", - "Server Token": "Server Token", "Server logging is not enabled (log directory not configured)": "Server logging is not enabled (log directory not configured)", + "Server Token": "Server Token", "Service account JSON file(s)": "Service account JSON file(s)", "Session expired!": "Session expired!", "Session expired?": "Session expired?", "Set": "Set", - "Set API key access restrictions": "Set API key access restrictions", - "Set API key basic information": "Set API key basic information", - "Set Field": "Set Field", - "Set Header": "Set Header", - "Set Project to io.cloud when creating/selecting key": "Set Project to io.cloud when creating/selecting key", - "Set Request Header": "Set Request Header", - "Set Tag": "Set Tag", "Set a discount rate for a specific recharge amount threshold.": "Set a discount rate for a specific recharge amount threshold.", "Set a secure password (min. 8 characters)": "Set a secure password (min. 8 characters)", "Set a tag for": "Set a tag for", + "Set API key access restrictions": "Set API key access restrictions", + "Set API key basic information": "Set API key basic information", + "Set Field": "Set Field", "Set filters to customize your dashboard statistics and charts.": "Set filters to customize your dashboard statistics and charts.", "Set filters to narrow down your log search results.": "Set filters to narrow down your log search results.", + "Set Header": "Set Header", + "Set Project to io.cloud when creating/selecting key": "Set Project to io.cloud when creating/selecting key", "Set quota amount and limits": "Set quota amount and limits", + "Set Request Header": "Set Request Header", "Set runtime request header: override entire value, or manipulate comma-separated tokens": "Set runtime request header: override entire value, or manipulate comma-separated tokens", + "Set Tag": "Set Tag", "Set tag for selected channels": "Set tag for selected channels", "Set the language used across the interface": "Set the language used across the interface", "Set the user's role (cannot be Root)": "Set the user's role (cannot be Root)", @@ -3076,12 +3277,13 @@ "Show token usage statistics in the UI": "Show token usage statistics in the UI", "Showcase core capabilities with demo credentials and limited access.": "Showcase core capabilities with demo credentials and limited access.", "Showing": "Showing", + "showing •": "showing •", "Sidebar": "Sidebar", - "Sidebar Personal Settings": "Sidebar Personal Settings", "Sidebar collapsed by default for new users": "Sidebar collapsed by default for new users", "Sidebar modules": "Sidebar modules", - "Sign In": "Sign In", + "Sidebar Personal Settings": "Sidebar Personal Settings", "Sign in": "Sign in", + "Sign In": "Sign In", "Sign in with Passkey": "Sign in with Passkey", "Sign out": "Sign out", "Sign up": "Sign up", @@ -3098,6 +3300,7 @@ "Single Key": "Single Key", "Site Key": "Site Key", "Size:": "Size:", + "sk_xxx or rk_xxx": "sk_xxx or rk_xxx", "Skip retry on failure": "Skip retry on failure", "Skip to Main": "Skip to Main", "Slow": "Slow", @@ -3106,6 +3309,11 @@ "Slug is required": "Slug is required", "Slug must be less than 100 characters": "Slug must be less than 100 characters", "Smallest USD amount users can recharge (Epay)": "Smallest USD amount users can recharge (Epay)", + "SMTP Email": "SMTP Email", + "SMTP Host": "SMTP Host", + "smtp.example.com": "smtp.example.com", + "socks5://user:pass@host:port": "socks5://user:pass@host:port", + "Soft": "Soft", "Soft Errors": "Soft Errors", "Solid": "Solid", "Solid Color": "Solid Color", @@ -3114,22 +3322,27 @@ "Sonnet Model": "Sonnet Model", "Sora": "Sora", "Sort": "Sort", - "Sort Order": "Sort Order", "Sort by ID": "Sort by ID", + "Sort Order": "Sort Order", "Source": "Source", "Source Endpoint": "Source Endpoint", "Source Field": "Source Field", "Source Header": "Source Header", + "sources": "sources", "Space-separated OAuth scopes": "Space-separated OAuth scopes", "Spark model version, e.g., v2.1 (version number in API URL)": "Spark model version, e.g., v2.1 (version number in API URL)", "Special billing expression": "Special billing expression", "Special usable group rules": "Special usable group rules", "Speed": "Speed", + "Spotlight": "Spotlight", + "SQLite stores all data in a single file. Make sure that file is persisted when running in containers.": "SQLite stores all data in a single file. Make sure that file is persisted when running in containers.", + "SSRF Protection": "SSRF Protection", "Standard": "Standard", "Start": "Start", - "Start Time": "Start Time", "Start a conversation to see messages here": "Start a conversation to see messages here", + "Start color": "Start color", "Start for free with generous limits. No credit card required.": "Start for free with generous limits. No credit card required.", + "Start Time": "Start Time", "Static Gradient": "Static Gradient", "Static page describing the platform.": "Static page describing the platform.", "Statistical count": "Statistical count", @@ -3150,6 +3363,7 @@ "Store ID": "Store ID", "Store ID is required": "Store ID is required", "Stored value is not echoed back for security": "Stored value is not echoed back for security", + "stream": "stream", "Stream": "Stream", "Stream Mode": "Stream Mode", "Stream Status": "Stream Status", @@ -3161,9 +3375,9 @@ "Stripe product price ID": "Stripe product price ID", "Stripe/Creem requires creating products on the third-party platform and entering the ID": "Stripe/Creem requires creating products on the third-party platform and entering the ID", "Submit": "Submit", + "Submit directly": "Submit directly", "Submit Result": "Submit Result", "Submit Time": "Submit Time", - "Submit directly": "Submit directly", "Submitted": "Submitted", "Submitting": "Submitting", "Submitting...": "Submitting...", @@ -3177,6 +3391,7 @@ "Subscription Plans": "Subscription Plans", "Subtract": "Subtract", "Success": "Success", + "Success Soft": "Success Soft", "Successfully created {{count}} API Key(s)": "Successfully created {{count}} API Key(s)", "Successfully created {{count}} redemption codes": "Successfully created {{count}} redemption codes", "Successfully deleted {{count}} API key(s)": "Successfully deleted {{count}} API key(s)", @@ -3191,9 +3406,9 @@ "Support for high concurrency with automatic load balancing": "Support for high concurrency with automatic load balancing", "Supported Imagine Models": "Supported Imagine Models", "Supported variables": "Supported variables", + "Supports `-thinking`, `-thinking-": "Supports `-thinking`, `-thinking-", "Supports HTML markup or iframe embedding. Enter HTML code directly, or provide a complete URL to automatically embed it as an iframe.": "Supports HTML markup or iframe embedding. Enter HTML code directly, or provide a complete URL to automatically embed it as an iframe.", "Supports PNG, JPG, SVG, or WebP. Recommended size: 128×128 or smaller.": "Supports PNG, JPG, SVG, or WebP. Recommended size: 128×128 or smaller.", - "Supports `-thinking`, `-thinking-": "Supports `-thinking`, `-thinking-", "Swap Face": "Swap Face", "Switch affinity on success": "Switch affinity on success", "Switch between the new frontend and the classic frontend. Changes take effect after page reload.": "Switch between the new frontend and the classic frontend. Changes take effect after page reload.", @@ -3202,39 +3417,35 @@ "Sync Endpoint": "Sync Endpoint", "Sync Endpoints": "Sync Endpoints", "Sync Fields": "Sync Fields", - "Sync Upstream": "Sync Upstream", - "Sync Upstream Models": "Sync Upstream Models", "Sync from the public upstream metadata repository.": "Sync from the public upstream metadata repository.", "Sync this model with official upstream": "Sync this model with official upstream", + "Sync Upstream": "Sync Upstream", + "Sync Upstream Models": "Sync Upstream Models", "Synchronize models and vendors from an upstream source": "Synchronize models and vendors from an upstream source", "Syncing prices, please wait...": "Syncing prices, please wait...", "System": "System", "System Administration": "System Administration", "System Announcements": "System Announcements", "System Behavior": "System Behavior", + "System data statistics": "System data statistics", "System Information": "System Information", + "System initialized successfully! Redirecting…": "System initialized successfully! Redirecting…", + "System logo": "System logo", + "System maintenance": "System maintenance", "System Memory": "System Memory", "System Memory Stats": "System Memory Stats", "System Name": "System Name", + "System name is required": "System name is required", "System Notice": "System Notice", "System Performance Monitoring": "System Performance Monitoring", "System Prompt": "System Prompt", "System Prompt Concatenation": "System Prompt Concatenation", "System Prompt Override": "System Prompt Override", - "System Settings": "System Settings", - "System Version": "System Version", - "System data statistics": "System data statistics", - "System initialized successfully! Redirecting…": "System initialized successfully! Redirecting…", - "System logo": "System logo", - "System maintenance": "System maintenance", - "System name is required": "System name is required", "System settings": "System settings", + "System Settings": "System Settings", "System setup wizard": "System setup wizard", "System task records": "System task records", - "TPM": "TPM", - "TTL": "TTL", - "TTL (seconds)": "TTL (seconds)", - "TTL (seconds, 0 = default)": "TTL (seconds, 0 = default)", + "System Version": "System Version", "Table view": "Table view", "Tag": "Tag", "Tag Aggregate": "Tag Aggregate", @@ -3249,19 +3460,19 @@ "Target Endpoint": "Target Endpoint", "Target Field": "Target Field", "Target Field Path": "Target Field Path", + "Target group": "Target group", "Target Header": "Target Header", "Target Path (optional)": "Target Path (optional)", - "Target group": "Target group", "Task": "Task", "Task ID": "Task ID", "Task ID:": "Task ID:", - "Task Logs": "Task Logs", "Task logs": "Task logs", + "Task Logs": "Task Logs", "Team Collaboration": "Team Collaboration", "Technical Support": "Technical Support", "Telegram": "Telegram", - "Telegram Login Widget": "Telegram Login Widget", "Telegram login requires widget integration; coming soon": "Telegram login requires widget integration; coming soon", + "Telegram Login Widget": "Telegram Login Widget", "Template": "Template", "Template variables:": "Template variables:", "Templates": "Templates", @@ -3271,17 +3482,16 @@ "Test All Channels": "Test All Channels", "Test Channel Connection": "Test Channel Connection", "Test Connection": "Test Connection", + "Test connectivity for:": "Test connectivity for:", + "Test interval (minutes)": "Test interval (minutes)", "Test Latency": "Test Latency", "Test Mode": "Test Mode", "Test Model": "Test Model", - "Test connectivity for:": "Test connectivity for:", - "Test interval (minutes)": "Test interval (minutes)", "Testing all enabled channels started. Please refresh to see results.": "Testing all enabled channels started. Please refresh to see results.", "Testing...": "Testing...", "Text Input": "Text Input", "Text Output": "Text Output", "Text to Video": "Text to Video", - "The URL for this chat client.": "The URL for this chat client.", "The administrator account is already initialized. You can keep your existing credentials and continue to the next step.": "The administrator account is already initialized. You can keep your existing credentials and continue to the next step.", "The administrator configured an external link for this document.": "The administrator configured an external link for this document.", "The administrator has not configured a privacy policy yet.": "The administrator has not configured a privacy policy yet.", @@ -3304,6 +3514,7 @@ "The token group that will have a custom ratio": "The token group that will have a custom ratio", "The unique identifier for this model": "The unique identifier for this model", "The unique name for this vendor": "The unique name for this vendor", + "The URL for this chat client.": "The URL for this chat client.", "Theme": "Theme", "Theme Color": "Theme Color", "Theme Settings": "Theme Settings", @@ -3312,8 +3523,8 @@ "These toggles affect whether certain request fields are passed through to the upstream provider.": "These toggles affect whether certain request fields are passed through to the upstream provider.", "Thinking Adapter": "Thinking Adapter", "Thinking to Content": "Thinking to Content", - "Third-party Payment Config": "Third-party Payment Config", "Third-party account bindings (read-only, managed by user in profile settings)": "Third-party account bindings (read-only, managed by user in profile settings)", + "Third-party Payment Config": "Third-party Payment Config", "This action cannot be undone.": "This action cannot be undone.", "This action cannot be undone. This will permanently delete your account and remove all your data from our servers.": "This action cannot be undone. This will permanently delete your account and remove all your data from our servers.", "This action will permanently remove 2FA protection from your account.": "This action will permanently remove 2FA protection from your account.", @@ -3330,10 +3541,13 @@ "This model has both fixed price and ratio billing conflicts": "This model has both fixed price and ratio billing conflicts", "This model is not available in any group, or no group pricing information is configured.": "This model is not available in any group, or no group pricing information is configured.", "This month": "This month", + "This notification preset uses fixed colors. Switch to an animation preset to customize colors.": "This notification preset uses fixed colors. Switch to an animation preset to customize colors.", "This page has not been created yet.": "This page has not been created yet.", "This project must be used in compliance with the": "This project must be used in compliance with the", "This record was written by a pre-upgrade instance and lacks audit info. Upgrade the instance to record server IP, callback IP, payment method and system version.": "This record was written by a pre-upgrade instance and lacks audit info. Upgrade the instance to record server IP, callback IP, payment method and system version.", "This site currently has {{count}} models enabled": "This site currently has {{count}} models enabled", + "this token group": "this token group", + "this user group": "this user group", "This user has no bindings": "This user has no bindings", "This week": "This week", "This will append 2 template rules (Codex CLI and Claude CLI) to the existing rule list.": "This will append 2 template rules (Codex CLI and Claude CLI) to the existing rule list.", @@ -3361,12 +3575,18 @@ "Time:": "Time:", "Timed cache (1h)": "Timed cache (1h)", "Timeline": "Timeline", + "times": "times", "Timing": "Timing", "Tip: The generated key is a JSON credential including access_token / refresh_token / account_id.": "Tip: The generated key is a JSON credential including access_token / refresh_token / account_id.", + "to access this resource.": "to access this resource.", + "to confirm": "to confirm", "To Lower": "To Lower", "To Lowercase": "To Lowercase", + "to override billing when a user in one group uses a token of another group.": "to override billing when a user in one group uses a token of another group.", + "to the Models list so users can use them before the mapping sends traffic upstream.": "to the Models list so users can use them before the mapping sends traffic upstream.", "To Upper": "To Upper", "To Uppercase": "To Uppercase", + "to view this resource.": "to view this resource.", "Today": "Today", "Toggle columns": "Toggle columns", "Toggle navigation menu": "Toggle navigation menu", @@ -3376,15 +3596,16 @@ "Token Breakdown": "Token Breakdown", "Token Endpoint": "Token Endpoint", "Token Endpoint (Optional)": "Token Endpoint (Optional)", + "Token estimator": "Token estimator", + "Token management": "Token management", "Token Management": "Token Management", "Token Mgmt": "Token Mgmt", "Token Name": "Token Name", - "Token estimator": "Token estimator", - "Token management": "Token management", "Token obtained from your Gotify application": "Token obtained from your Gotify application", "Token regenerated and copied to clipboard": "Token regenerated and copied to clipboard", "Token unit": "Token unit", "Token-based": "Token-based", + "tokens": "tokens", "Tokens": "Tokens", "Tokens Only": "Tokens Only", "Tokens per minute": "Tokens per minute", @@ -3393,60 +3614,65 @@ "Tool identifier": "Tool identifier", "Tool price settings": "Tool price settings", "Tool prices": "Tool prices", + "Top {{count}}": "Top {{count}}", "Top Models": "Top Models", - "Top Users": "Top Users", "Top up balance and view billing history.": "Top up balance and view billing history.", - "Top {{count}}": "Top {{count}}", - "Top-Up Link": "Top-Up Link", + "Top Users": "Top Users", "Top-up": "Top-up", - "Top-up Audit Info": "Top-up Audit Info", "Top-up amount options": "Top-up amount options", + "Top-up Audit Info": "Top-up Audit Info", "Top-up group ratios": "Top-up group ratios", + "Top-Up Link": "Top-Up Link", + "top-up ratio": "top-up ratio", "Topup Amount": "Topup Amount", "Total": "Total", "Total Allocated": "Total Allocated", - "Total Cost": "Total Cost", - "Total Count": "Total Count", - "Total Earned": "Total Earned", - "Total GPUs": "Total GPUs", - "Total Log Size": "Total Log Size", - "Total Quota": "Total Quota", - "Total Tokens": "Total Tokens", - "Total Usage": "Total Usage", "Total check-ins": "Total check-ins", "Total consumed": "Total consumed", "Total consumed quota": "Total consumed quota", "Total cost": "Total cost", + "Total Cost": "Total Cost", + "Total Count": "Total Count", "Total earned": "Total earned", + "Total Earned": "Total Earned", + "Total GPUs": "Total GPUs", "Total invitation revenue": "Total invitation revenue", + "Total Log Size": "Total Log Size", + "Total Quota": "Total Quota", "Total requests allowed per period. 0 = unlimited.": "Total requests allowed per period. 0 = unlimited.", "Total requests made": "Total requests made", + "Total Tokens": "Total Tokens", + "Total Usage": "Total Usage", "Total:": "Total:", + "TPM": "TPM", "Track per-request consumption to power usage analytics. Keeping this on increases database writes.": "Track per-request consumption to power usage analytics. Keeping this on increases database writes.", "Track usage, costs and performance with real-time analytics": "Track usage, costs and performance with real-time analytics", "Tracks current account base limits and additional metered usage on Codex upstream.": "Tracks current account base limits and additional metered usage on Codex upstream.", "Transfer": "Transfer", "Transfer Amount": "Transfer Amount", - "Transfer Rewards": "Transfer Rewards", "Transfer failed": "Transfer failed", + "Transfer Rewards": "Transfer Rewards", "Transfer successful": "Transfer successful", "Transfer to Balance": "Transfer to Balance", "Translate `-thinking` suffixes into Anthropic native thinking models while keeping pricing predictable.": "Translate `-thinking` suffixes into Anthropic native thinking models while keeping pricing predictable.", "Transparent Billing": "Transparent Billing", + "Trim leading/trailing whitespace": "Trim leading/trailing whitespace", "Trim Prefix": "Trim Prefix", "Trim Space": "Trim Space", "Trim Suffix": "Trim Suffix", - "Trim leading/trailing whitespace": "Trim leading/trailing whitespace", "Trusted": "Trusted", "Try adjusting your search to locate a missing model.": "Try adjusting your search to locate a missing model.", + "TTL": "TTL", + "TTL (seconds, 0 = default)": "TTL (seconds, 0 = default)", + "TTL (seconds)": "TTL (seconds)", "Tune selection priority, testing, status handling, and request overrides.": "Tune selection priority, testing, status handling, and request overrides.", "Turnstile is enabled but site key is empty.": "Turnstile is enabled but site key is empty.", - "Two-Factor Authentication": "Two-Factor Authentication", - "Two-Step Verification": "Two-Step Verification", "Two-factor Authentication": "Two-factor Authentication", + "Two-Factor Authentication": "Two-Factor Authentication", "Two-factor authentication disabled": "Two-factor authentication disabled", "Two-factor authentication enabled successfully!": "Two-factor authentication enabled successfully!", "Two-factor authentication reset": "Two-factor authentication reset", + "Two-Step Verification": "Two-Step Verification", "Type": "Type", "Type (common)": "Type (common)", "Type *": "Type *", @@ -3454,11 +3680,6 @@ "Type-Specific Settings": "Type-Specific Settings", "Type:": "Type:", "UI granularity only — data is still aggregated hourly": "UI granularity only — data is still aggregated hourly", - "URL": "URL", - "URL is required": "URL is required", - "URL to your logo image (optional)": "URL to your logo image (optional)", - "USD": "USD", - "USD Exchange Rate": "USD Exchange Rate", "Unable to estimate price for this deployment.": "Unable to estimate price for this deployment.", "Unable to generate chat link. Please contact your administrator.": "Unable to generate chat link. Please contact your administrator.", "Unable to load groups": "Unable to load groups", @@ -3473,8 +3694,8 @@ "Unexpected release payload": "Unexpected release payload", "Unified API Gateway for": "Unified API Gateway for", "Unique identifier for this group.": "Unique identifier for this group.", - "Unit price (USD)": "Unit price (USD)", "Unit price (local currency / USD)": "Unit price (local currency / USD)", + "Unit price (USD)": "Unit price (USD)", "Unit price must be greater than 0": "Unit price must be greater than 0", "Units per USD": "Units per USD", "Unknown": "Unknown", @@ -3487,19 +3708,19 @@ "Untrusted upstream data:": "Untrusted upstream data:", "Unused": "Unused", "Update": "Update", - "Update API Key": "Update API Key", "Update All Balances": "Update All Balances", + "Update API Key": "Update API Key", "Update Balance": "Update Balance", - "Update Channel": "Update Channel", - "Update Model": "Update Model", - "Update Provider": "Update Provider", - "Update Redemption Code": "Update Redemption Code", "Update balance for:": "Update balance for:", + "Update Channel": "Update Channel", "Update channel configuration and click save when you're done.": "Update channel configuration and click save when you're done.", "Update configuration": "Update configuration", "Update failed": "Update failed", + "Update Model": "Update Model", "Update model configuration and click save when you're done.": "Update model configuration and click save when you're done.", "Update plan info": "Update Plan Info", + "Update Provider": "Update Provider", + "Update Redemption Code": "Update Redemption Code", "Update succeeded": "Update succeeded", "Update the API key by providing necessary info.": "Update the API key by providing necessary info.", "Update the configuration for this custom OAuth provider.": "Update the configuration for this custom OAuth provider.", @@ -3525,48 +3746,62 @@ "Upstream Model Detection Settings": "Upstream Model Detection Settings", "Upstream Model Update Check": "Upstream Model Update Check", "Upstream Model Updates": "Upstream Model Updates", - "Upstream Response": "Upstream Response", - "Upstream Updates": "Upstream Updates", "Upstream model updates applied: {{added}} added, {{removed}} removed, {{ignored}} ignored this time, {{totalIgnored}} total ignored models": "Upstream model updates applied: {{added}} added, {{removed}} removed, {{ignored}} ignored this time, {{totalIgnored}} total ignored models", "Upstream price sync": "Upstream price sync", "Upstream prices fetched successfully": "Upstream prices fetched successfully", "Upstream ratios fetched successfully": "Upstream ratios fetched successfully", + "Upstream Response": "Upstream Response", + "upstream services integrated": "upstream services integrated", + "Upstream Updates": "Upstream Updates", + "uptime": "uptime", "Uptime": "Uptime", "Uptime Kuma": "Uptime Kuma", - "Uptime Kuma URL": "Uptime Kuma URL", "Uptime Kuma groups saved successfully": "Uptime Kuma groups saved successfully", + "Uptime Kuma URL": "Uptime Kuma URL", "Uptime since": "Uptime since", + "URL": "URL", + "URL is required": "URL is required", + "URL to your logo image (optional)": "URL to your logo image (optional)", "Usage": "Usage", - "Usage Logs": "Usage Logs", "Usage logs": "Usage logs", + "Usage Logs": "Usage Logs", "Usage mode": "Usage mode", "Usage-based": "Usage-based", - "Use Passkey to sign in without entering your password.": "Use Passkey to sign in without entering your password.", + "USD": "USD", + "USD Exchange Rate": "USD Exchange Rate", "Use a compatible browser or device with biometric authentication or a security key to register a Passkey.": "Use a compatible browser or device with biometric authentication or a security key to register a Passkey.", "Use authenticator code": "Use authenticator code", "Use backup code": "Use backup code", "Use disk cache when request body exceeds this size": "Use disk cache when request body exceeds this size", "Use our unified OpenAI-compatible endpoint in your applications": "Use our unified OpenAI-compatible endpoint in your applications", + "Use Passkey to sign in without entering your password.": "Use Passkey to sign in without entering your password.", "Use secure connection when sending emails": "Use secure connection when sending emails", "Use sidebar shortcut": "Use sidebar shortcut", "Use this token for API authentication": "Use this token for API authentication", "Use your Passkey": "Use your Passkey", + "used": "used", "Used": "Used", "Used / Remaining": "Used / Remaining", - "Used Quota": "Used Quota", "Used for load balancing. Higher weight = more requests": "Used for load balancing. Higher weight = more requests", "Used in URLs and API routes": "Used in URLs and API routes", + "Used Quota": "Used Quota", "Used to authenticate with io.net deployment API": "Used to authenticate with io.net deployment API", "Used to authenticate with the worker. Leave blank to keep the existing secret.": "Used to authenticate with the worker. Leave blank to keep the existing secret.", "Used:": "Used:", "User": "User", + "User {{id}}": "User {{id}}", "User Agreement": "User Agreement", "User Analytics": "User Analytics", "User Consumption Ranking": "User Consumption Ranking", "User Consumption Trend": "User Consumption Trend", + "User created successfully": "User created successfully", + "User dashboard and quota controls.": "User dashboard and quota controls.", "User Exclusive Ratio": "User Exclusive Ratio", "User Group": "User Group", + "User group name": "User group name", "User Group: {{ratio}}x": "User Group: {{ratio}}x", + "User groups that can access channels with this tag": "User groups that can access channels with this tag", + "User groups that can access this channel. ": "User groups that can access this channel. ", "User ID": "User ID", "User ID Field": "User ID Field", "User ID:": "User ID:", @@ -3574,41 +3809,37 @@ "User Info Endpoint (Optional)": "User Info Endpoint (Optional)", "User Information": "User Information", "User Menu": "User Menu", - "User Subscription Management": "User Subscription Management", - "User Verification": "User Verification", - "User created successfully": "User created successfully", - "User dashboard and quota controls.": "User dashboard and quota controls.", - "User group name": "User group name", - "User groups that can access channels with this tag": "User groups that can access channels with this tag", - "User groups that can access this channel. ": "User groups that can access this channel. ", "User personal functions": "User personal functions", + "User Subscription Management": "User Subscription Management", "User updated successfully": "User updated successfully", - "User {{id}}": "User {{id}}", + "User Verification": "User Verification", "User-Agent include (one per line)": "User-Agent include (one per line)", "Username": "Username", - "Username Field": "Username Field", "Username confirmation does not match": "Username confirmation does not match", + "Username Field": "Username Field", "Username or Email": "Username or Email", "Users": "Users", "Users call the model on the left. The platform forwards the request to the upstream model on the right.": "Users call the model on the left. The platform forwards the request to the upstream model on the right.", "Users must wait for a successful drawing before upscales or variations.": "Users must wait for a successful drawing before upscales or variations.", - "VIP users with premium access": "VIP users with premium access", + "uses": "uses", "Validity": "Validity", "Validity Period": "Validity Period", "Value": "Value", "Value (supports JSON or plain text)": "Value (supports JSON or plain text)", - "Value Regex": "Value Regex", "Value must be at least 0": "Value must be at least 0", + "Value Regex": "Value Regex", + "variable": "variable", + "variable) *": "variable) *", "Variables": "Variables", "Vary": "Vary", "Vary (Strong)": "Vary (Strong)", "Vary (Subtle)": "Vary (Subtle)", "Vendor": "Vendor", - "Vendor Name *": "Vendor Name *", "Vendor deleted successfully": "Vendor deleted successfully", + "Vendor Name *": "Vendor Name *", "Vendor:": "Vendor:", - "Verification Code": "Verification Code", "Verification code": "Verification code", + "Verification Code": "Verification Code", "Verification code must be 6 digits": "Verification code must be 6 digits", "Verification code sent! Please check your email.": "Verification code sent! Please check your email.", "Verification code updates every 30 seconds.": "Verification code updates every 30 seconds.", @@ -3617,18 +3848,17 @@ "Verification is not configured properly": "Verification is not configured properly", "Verification required to reveal the saved key.": "Verification required to reveal the saved key.", "Verify": "Verify", - "Verify Setup": "Verify Setup", "Verify and Sign In": "Verify and Sign In", + "Verify Setup": "Verify Setup", "Verify your database connection": "Verify your database connection", "Version Overrides": "Version Overrides", "Vertex AI": "Vertex AI", - "Vertex AI Key Format": "Vertex AI Key Format", "Vertex AI does not support functionResponse.id. Enable this to remove the field automatically.": "Vertex AI does not support functionResponse.id. Enable this to remove the field automatically.", + "Vertex AI Key Format": "Vertex AI Key Format", "Video": "Video", "Video Remix": "Video Remix", "Vidu": "Vidu", "View": "View", - "View Pricing": "View Pricing", "View all currently available models": "View all currently available models", "View and manage your API usage logs": "View and manage your API usage logs", "View and manage your drawing logs": "View and manage your drawing logs", @@ -3641,6 +3871,7 @@ "View mode": "View mode", "View model call count analytics and charts": "View model call count analytics and charts", "View model statistics and charts": "View model statistics and charts", + "View Pricing": "View Pricing", "View the complete details for this": "View the complete details for this", "View the complete details for this log entry": "View the complete details for this log entry", "View the complete error message and details": "View the complete error message and details", @@ -3649,18 +3880,20 @@ "View user consumption statistics and charts": "View user consumption statistics and charts", "View your topup transaction records and payment history": "View your topup transaction records and payment history", "Violation Code": "Violation Code", + "Violation deduction amount": "Violation deduction amount", "Violation Fee": "Violation Fee", "Violation Marker": "Violation Marker", - "Violation deduction amount": "Violation deduction amount", + "vip": "vip", + "VIP users with premium access": "VIP users with premium access", "Visit Settings → General and adjust quota options...": "Visit Settings → General and adjust quota options...", "Visitors must authenticate before accessing the pricing directory.": "Visitors must authenticate before accessing the pricing directory.", "Visual": "Visual", - "Visual Editor": "Visual Editor", - "Visual Mode": "Visual Mode", - "Visual Parameter Override": "Visual Parameter Override", "Visual edit": "Visual edit", "Visual editor": "Visual editor", + "Visual Editor": "Visual Editor", "Visual indicator color for the API card": "Visual indicator color for the API card", + "Visual Mode": "Visual Mode", + "Visual Parameter Override": "Visual Parameter Override", "VolcEngine": "VolcEngine", "Waffo Pancake Payment Gateway": "Waffo Pancake payment gateway", "Waffo Payment": "Waffo Payment", @@ -3672,9 +3905,11 @@ "Wallet": "Wallet", "Wallet First": "Wallet First", "Wallet Management": "Wallet Management", - "Wallet Only": "Wallet Only", "Wallet management and personal preferences.": "Wallet management and personal preferences.", + "Wallet Only": "Wallet Only", + "Warm": "Warm", "Warning": "Warning", + "Warning Soft": "Warning Soft", "Warning: Base URL should not end with /v1. New API will handle it automatically. This may cause request failures.": "Warning: Base URL should not end with /v1. New API will handle it automatically. This may cause request failures.", "Warning: Disabling 2FA will make your account less secure.": "Warning: Disabling 2FA will make your account less secure.", "Warning: This action is permanent and irreversible!": "Warning: This action is permanent and irreversible!", @@ -3682,22 +3917,22 @@ "We could not load the setup status.": "We could not load the setup status.", "We will prompt your device to confirm using biometrics or your hardware key.": "We will prompt your device to confirm using biometrics or your hardware key.", "We'll be back online shortly.": "We'll be back online shortly.", - "WeChat": "WeChat", - "WeChat QR code will be displayed here": "WeChat QR code will be displayed here", - "WeChat login QR code": "WeChat login QR code", - "WeChat sign in": "WeChat sign in", "Web Search": "Web Search", "Webhook Configuration:": "Webhook Configuration:", - "Webhook Secret": "Webhook Secret", - "Webhook URL": "Webhook URL", - "Webhook URL:": "Webhook URL:", "Webhook public key (production)": "Webhook public key (production)", "Webhook public key (production) is required": "Webhook public key (production) is required", "Webhook public key (sandbox)": "Webhook public key (sandbox)", "Webhook public key (sandbox) is required": "Webhook public key (sandbox) is required", "Webhook secret": "Webhook secret", + "Webhook Secret": "Webhook Secret", "Webhook signing secret (leave blank unless updating)": "Webhook signing secret (leave blank unless updating)", + "Webhook URL": "Webhook URL", + "Webhook URL:": "Webhook URL:", "Website is under maintenance!": "Website is under maintenance!", + "WeChat": "WeChat", + "WeChat login QR code": "WeChat login QR code", + "WeChat QR code will be displayed here": "WeChat QR code will be displayed here", + "WeChat sign in": "WeChat sign in", "Week": "Week", "Weekday": "Weekday", "Weekly": "Weekly", @@ -3709,9 +3944,9 @@ "Well-Known URL must start with http:// or https://": "Well-Known URL must start with http:// or https://", "What would you like to know?": "What would you like to know?", "When conditions match, the final price is multiplied by X. Multiple matches multiply together; values < 1 act as discounts.": "When conditions match, the final price is multiplied by X. Multiple matches multiply together; values < 1 act as discounts.", - "When enabled, Midjourney callbacks are accepted (reveals server IP).": "When enabled, Midjourney callbacks are accepted (reveals server IP).", "When enabled, if channels in the current group fail, it will try channels in the next group in order.": "When enabled, if channels in the current group fail, it will try channels in the next group in order.", "When enabled, large request bodies are temporarily stored on disk instead of memory, significantly reducing memory usage. SSD recommended.": "When enabled, large request bodies are temporarily stored on disk instead of memory, significantly reducing memory usage. SSD recommended.", + "When enabled, Midjourney callbacks are accepted (reveals server IP).": "When enabled, Midjourney callbacks are accepted (reveals server IP).", "When enabled, newly created tokens start in the first auto group.": "When enabled, newly created tokens start in the first auto group.", "When enabled, prompts are scanned before reaching upstream models.": "When enabled, prompts are scanned before reaching upstream models.", "When enabled, the store field will be blocked": "When enabled, the store field will be blocked", @@ -3721,19 +3956,24 @@ "When performance monitoring is enabled and system resource usage exceeds the set threshold, new Relay requests will be rejected.": "When performance monitoring is enabled and system resource usage exceeds the set threshold, new Relay requests will be rejected.", "When running in containers or ephemeral environments, ensure the SQLite file is mapped to persistent storage to avoid data loss on restart.": "When running in containers or ephemeral environments, ensure the SQLite file is mapped to persistent storage to avoid data loss on restart.", "Whitelist": "Whitelist", - "Whitelist (Only allow listed IPs)": "Whitelist (Only allow listed IPs)", "Whitelist (Only allow listed domains)": "Whitelist (Only allow listed domains)", + "Whitelist (Only allow listed IPs)": "Whitelist (Only allow listed IPs)", + "whsec_xxx": "whsec_xxx", "Window:": "Window:", + "with conflicts": "with conflicts", "Without additional conditions, only the type above is used for pruning.": "Without additional conditions, only the type above is used for pruning.", "Worker Access Key": "Worker Access Key", "Worker Proxy": "Worker Proxy", "Worker URL": "Worker URL", "Workspaces": "Workspaces", "Write custom CSS for the banner background. CSS is scoped to .top-banner.": "Write custom CSS for the banner background. CSS is scoped to .top-banner.", + "Write custom CSS for the banner. Use declarations directly, or use & for scoped selectors such as &::before and & .top-banner-icon.": "Write custom CSS for the banner. Use declarations directly, or use & for scoped selectors such as &::before and & .top-banner-icon.", "Write value to the target field": "Write value to the target field", + "x": "x", + "xAI": "xAI", "Xinference": "Xinference", "Xunfei": "Xunfei", - "You Pay": "You Pay", + "years": "years", "You are about to delete {{count}} API key(s).": "You are about to delete {{count}} API key(s).", "You are running the latest version ({{version}}).": "You are running the latest version ({{version}}).", "You can close this tab once the binding completes or a success message appears in the original window.": "You can close this tab once the binding completes or a success message appears in the original window.", @@ -3742,9 +3982,11 @@ "You don't have necessary permission": "You don't have necessary permission", "You have unsaved changes": "You have unsaved changes", "You have unsaved changes. Are you sure you want to leave?": "You have unsaved changes. Are you sure you want to leave?", + "You Pay": "You Pay", "You save": "You save", "You will be redirected to Telegram to complete the binding process.": "You will be redirected to Telegram to complete the binding process.", "You'll be redirected automatically. You can return to the previous page if nothing happens after a few seconds.": "You'll be redirected automatically. You can return to the previous page if nothing happens after a few seconds.", + "your AI integration?": "your AI integration?", "Your Azure OpenAI endpoint URL": "Your Azure OpenAI endpoint URL", "Your Bot Name": "Your Bot Name", "Your Cloudflare Account ID": "Your Cloudflare Account ID", @@ -3752,228 +3994,14 @@ "Your Discord OAuth Client Secret": "Your Discord OAuth Client Secret", "Your GitHub OAuth Client ID": "Your GitHub OAuth Client ID", "Your GitHub OAuth Client Secret": "Your GitHub OAuth Client Secret", + "Your new backup codes are ready": "Your new backup codes are ready", "Your Referral Link": "Your Referral Link", + "Your system access token for API authentication. Keep it secure and don't share it with others.": "Your system access token for API authentication. Keep it secure and don't share it with others.", "Your Telegram Bot Token": "Your Telegram Bot Token", "Your Turnstile secret key": "Your Turnstile secret key", "Your Turnstile site key": "Your Turnstile site key", - "Your new backup codes are ready": "Your new backup codes are ready", - "Your system access token for API authentication. Keep it secure and don't share it with others.": "Your system access token for API authentication. Keep it secure and don't share it with others.", "Zhipu": "Zhipu", "Zhipu V4": "Zhipu V4", - "Zoom": "Zoom", - "[{\"ChatGPT\":\"https://chat.openai.com\"},{\"Lobe Chat\":\"https://chat-preview.lobehub.com/?settings={...}\"}]": "[{\"ChatGPT\":\"https://chat.openai.com\"},{\"Lobe Chat\":\"https://chat-preview.lobehub.com/?settings={...}\"}]", - "[{\"name\":\"支付宝\",\"type\":\"alipay\",\"color\":\"#1677FF\"}]": "[{\"name\":\"Alipay\",\"type\":\"alipay\",\"color\":\"#1677FF\"}]", - "_copy": "_copy", - "`, and `-nothinking` suffixes while routing to the correct Gemini variant.": "`, and `-nothinking` suffixes while routing to the correct Gemini variant.", - "active": "active", - "active users": "active users", - "aggregates 50+ AI providers behind one unified API. Manage access, track costs, and scale effortlessly.": "aggregates 50+ AI providers behind one unified API. Manage access, track costs, and scale effortlessly.", - "and": "and", - "appended": "appended", - "are also listed here. Remove them from Models to keep the `/v1/models` response user-friendly and hide vendor-specific names.": "are also listed here. Remove them from Models to keep the `/v1/models` response user-friendly and hide vendor-specific names.", - "by": "by", - "channel(s)? This action cannot be undone.": "channel(s)? This action cannot be undone.", - "checkout.session.completed": "checkout.session.completed", - "checkout.session.expired": "checkout.session.expired", - "compatible API routes": "compatible API routes", - "days": "days", - "default": "default", - "designed for scale": "designed for scale", - "disabled": "disabled", - "does not exist or might have been removed.": "does not exist or might have been removed.", - "e.g. 401, 403, 429, 500-599": "e.g. 401, 403, 429, 500-599", - "e.g. 8 means 1 USD = 8 units": "e.g. 8 means 1 USD = 8 units", - "e.g. Basic Plan": "e.g. Basic Plan", - "e.g. Clean tool parameters to avoid upstream validation errors": "e.g. Clean tool parameters to avoid upstream validation errors", - "e.g. My GitLab": "e.g. My GitLab", - "e.g. New API Console": "e.g. New API Console", - "e.g. Suitable for light usage": "e.g. Suitable for light usage", - "e.g. This request does not meet access policy": "e.g. This request does not meet access policy", - "e.g. example.com": "e.g. example.com", - "e.g. llama3.1:8b": "e.g. llama3.1:8b", - "e.g. my-gitlab": "e.g. my-gitlab", - "e.g. openid profile email": "e.g. openid profile email", - "e.g. ¥ or HK$": "e.g. ¥ or HK$", - "e.g., #3b82f6,#8b5cf6": "e.g., #3b82f6,#8b5cf6", - "e.g., #ff0000,#0000ff": "e.g., #ff0000,#0000ff", - "e.g., #ffffff or white": "e.g., #ffffff or white", - "e.g., 0.95": "e.g., 0.95", - "e.g., 100": "e.g., 100", - "e.g., 123456": "e.g., 123456", - "e.g., 2025-04-01-preview": "e.g., 2025-04-01-preview", - "e.g., 50": "e.g., 50", - "e.g., 500000": "e.g., 500000", - "e.g., 7342866812345": "e.g., 7342866812345", - "e.g., 8 means 8 local currency per USD": "e.g., 8 means 8 local currency per USD", - "e.g., Alipay, WeChat": "e.g., Alipay, WeChat", - "e.g., Basic Package": "e.g., Basic Package", - "e.g., CN2 GIA": "e.g., CN2 GIA", - "e.g., Core APIs, OpenAI, Claude": "e.g., Core APIs, OpenAI, Claude", - "e.g., OpenAI GPT-4 Production": "e.g., OpenAI GPT-4 Production", - "e.g., Recommended for China Mainland Users": "e.g., Recommended for China Mainland Users", - "e.g., d6b5da8hk1awo8nap34ube6gh": "e.g., d6b5da8hk1awo8nap34ube6gh", - "e.g., default, vip, premium": "e.g., default, vip, premium", - "e.g., gpt-4, claude-3": "e.g., gpt-4, claude-3", - "e.g., gpt-4.1-nano,regex:^claude-.*$,regex:^sora-.*$": "e.g., gpt-4.1-nano,regex:^claude-.*$,regex:^sora-.*$", - "e.g., https://api.example.com (path before /suno)": "e.g., https://api.example.com (path before /suno)", - "e.g., https://api.openai.com/v1/chat/completions": "e.g., https://api.openai.com/v1/chat/completions", - "e.g., https://ark.cn-beijing.volces.com": "e.g., https://ark.cn-beijing.volces.com", - "e.g., https://docs-test-001.openai.azure.com": "e.g., https://docs-test-001.openai.azure.com", - "e.g., https://fastgpt.run/api/openapi": "e.g., https://fastgpt.run/api/openapi", - "e.g., preview": "e.g., preview", - "e.g., prod_xxx": "e.g., prod_xxx", - "e.g., us-central1 or JSON format for model-specific regions": "e.g., us-central1 or JSON format for model-specific regions", - "e.g., v2.1": "e.g., v2.1", - "edit_this": "edit_this", - "example.com blocked-site.com": "example.com blocked-site.com", - "example.com company.com": "example.com company.com", - "expired": "expired", - "field": "field", - "footer.columns.about.links.aboutProject": "About Project", - "footer.columns.about.links.contact": "Contact Us", - "footer.columns.about.links.features": "Features", - "footer.columns.about.title": "About Us", - "footer.columns.docs.links.apiDocs": "API Documentation", - "footer.columns.docs.links.installation": "Installation Guide", - "footer.columns.docs.links.quickStart": "Quick Start", - "footer.columns.docs.title": "Documentation", - "footer.columns.related.links.midjourney": "Midjourney-Proxy", - "footer.columns.related.links.neko": "neko-api-key-tool", - "footer.columns.related.links.oneApi": "One API", - "footer.columns.related.title": "Related Projects", - "footer.defaultCopyright": "All rights reserved.", - "footer.new\u0061pi.projectAttributionSuffix": "All rights reserved. Designed and developed by the project contributors.", - "gpt-3.5-turbo": "gpt-3.5-turbo", - "gpt-3.5-turbo-0125": "gpt-3.5-turbo-0125", - "gpt-4": "gpt-4", - "gpt-4, claude-3-opus, etc.": "gpt-4, claude-3-opus, etc.", - "group ratio": "group ratio", - "h": "h", - "hours": "hours", - "https://api.day.app/yourkey/{{title}}/{{content}}": "https://api.day.app/yourkey/{{title}}/{{content}}", - "https://api.example.com": "https://api.example.com", - "https://ark.ap-southeast.bytepluses.com": "https://ark.ap-southeast.bytepluses.com", - "https://ark.cn-beijing.volces.com": "https://ark.cn-beijing.volces.com", - "https://cloud.siliconflow.cn/i/hij0YNTZ": "https://cloud.siliconflow.cn/i/hij0YNTZ", - "https://docs.example.com": "https://docs.example.com", - "https://example.com": "https://example.com", - "https://example.com/logo.png": "https://example.com/logo.png", - "https://example.com/qr-code.png": "https://example.com/qr-code.png", - "https://example.com/topup": "https://example.com/topup", - "https://example.com/webhook": "https://example.com/webhook", - "https://gateway.example.com": "https://gateway.example.com", - "https://github.com/QuantumNous/new-api": "https://github.com/QuantumNous/new-api", - "https://gotify.example.com": "https://gotify.example.com", - "https://pay.example.com": "https://pay.example.com", - "https://provider.com/.well-known/openid-configuration": "https://provider.com/.well-known/openid-configuration", - "https://status.example.com": "https://status.example.com", - "https://wechat-server.example.com": "https://wechat-server.example.com", - "https://worker.example.workers.dev": "https://worker.example.workers.dev", - "https://your-server.example.com": "https://your-server.example.com", - "https://yourdomain.com": "https://yourdomain.com", - "io.net API Key": "io.net API Key", - "io.net Deployments": "io.net Deployments", - "is an open-source AI API gateway for self-hosted deployments. Connect multiple upstream services, manage models, keys, quotas, logs, and routing policies in one place.": "is an open-source AI API gateway for self-hosted deployments. Connect multiple upstream services, manage models, keys, quotas, logs, and routing policies in one place.", - "is less than the configured maximum cache size": "is less than the configured maximum cache size", - "is the default price; ": "is the default price; ", - "log": "log", - "m": "m", - "maxRequests ≥ 0, maxSuccess ≥ 1, both ≤ 2,147,483,647": "maxRequests ≥ 0, maxSuccess ≥ 1, both ≤ 2,147,483,647", - "minutes": "minutes", - "model": "model", - "model billing support": "model billing support", - "model(s) selected out of": "model(s) selected out of", - "model(s)? This action cannot be undone.": "model(s)? This action cannot be undone.", - "models": "models", - "months": "months", - "more mapping": "more mapping", - "ms": "ms", - "my-status": "my-status", - "name@example.com": "name@example.com", - "noreply@example.com": "noreply@example.com", - "of": "of", - "of 3:": "of 3:", - "off": "off", - "one keyword per line": "one keyword per line", - "opens in an external client. Trigger it from the sidebar or API key actions to launch the configured application.": "opens in an external client. Trigger it from the sidebar or API key actions to launch the configured application.", - "org-...": "org-...", - "override": "override", - "overrides for matching model prefix.": "overrides for matching model prefix.", - "parameter.": "parameter.", - "per": "per", - "per request": "per request", - "price_xxx": "price_xxx", - "redemption code": "redemption code", - "redemption codes.": "redemption codes.", - "replaced": "replaced", - "request": "request", - "requests served": "requests served", - "rules": "rules", - "s": "s", - "scheduling controls": "scheduling controls", - "seconds": "seconds", - "selected": "selected", - "selected channel(s). Leave empty to remove tag.": "selected channel(s). Leave empty to remove tag.", - "showing •": "showing •", - "sk_xxx or rk_xxx": "sk_xxx or rk_xxx", - "smtp.example.com": "smtp.example.com", - "socks5://user:pass@host:port": "socks5://user:pass@host:port", - "sources": "sources", - "stream": "stream", - "this token group": "this token group", - "this user group": "this user group", - "times": "times", - "to access this resource.": "to access this resource.", - "to confirm": "to confirm", - "to override billing when a user in one group uses a token of another group.": "to override billing when a user in one group uses a token of another group.", - "to the Models list so users can use them before the mapping sends traffic upstream.": "to the Models list so users can use them before the mapping sends traffic upstream.", - "to view this resource.": "to view this resource.", - "tokens": "tokens", - "top-up ratio": "top-up ratio", - "upstream services integrated": "upstream services integrated", - "uptime": "uptime", - "used": "used", - "uses": "uses", - "variable": "variable", - "variable) *": "variable) *", - "vip": "vip", - "whsec_xxx": "whsec_xxx", - "with conflicts": "with conflicts", - "x": "x", - "xAI": "xAI", - "years": "years", - "your AI integration?": "your AI integration?", - "{\"original-model\": \"replacement-model\"}": "{\"original-model\": \"replacement-model\"}", - "{{category}} Models": "{{category}} Models", - "{{count}} IP(s)": "{{count}} IP(s)", - "{{count}} channel(s) deleted": "{{count}} channel(s) deleted", - "{{count}} channel(s) disabled": "{{count}} channel(s) disabled", - "{{count}} channel(s) enabled": "{{count}} channel(s) enabled", - "{{count}} channel(s) failed to disable": "{{count}} channel(s) failed to disable", - "{{count}} channel(s) failed to enable": "{{count}} channel(s) failed to enable", - "{{count}} days ago": "{{count}} days ago", - "{{count}} days remaining": "{{count}} days remaining", - "{{count}} disabled channel(s) deleted": "{{count}} disabled channel(s) deleted", - "{{count}} hours ago": "{{count}} hours ago", - "{{count}} log entries removed.": "{{count}} log entries removed.", - "{{count}} minutes ago": "{{count}} minutes ago", - "{{count}} model(s)": "{{count}} model(s)", - "{{count}} months ago": "{{count}} months ago", - "{{count}} override": "{{count}} override", - "{{count}} tiers": "{{count}} tiers", - "{{count}} weeks ago": "{{count}} weeks ago", - "{{field}} updated to {{value}}": "{{field}} updated to {{value}}", - "{{field}} updated to {{value}} for tag: {{tag}}": "{{field}} updated to {{value}} for tag: {{tag}}", - "{{n}} model(s) selected": "{{n}} model(s) selected", - "{{value}}ms": "{{value}}ms", - "{{value}}s": "{{value}}s", - "| Based on": "| Based on", - "© 2025 Your Company. All rights reserved.": "© 2025 Your Company. All rights reserved.", - "← Left": "← Left", - "↑ Up": "↑ Up", - "→ Right": "→ Right", - "↓ Down": "↓ Down", - "↘ Diagonal": "↘ Diagonal", - "⊙ Radial": "⊙ Radial" + "Zoom": "Zoom" } } diff --git a/web/default/src/i18n/locales/fr.json b/web/default/src/i18n/locales/fr.json index 5f0a9d5556a..c5ec44b1722 100644 --- a/web/default/src/i18n/locales/fr.json +++ b/web/default/src/i18n/locales/fr.json @@ -3,31 +3,70 @@ "360": "360", "1000": "1000", "10000": "10000", + "_copy": "_copie", + ", and": ", et", + "? This action cannot be undone.": "? Cette action ne peut pas être annulée.", + ". Please fix the JSON before saving.": ". Veuillez corriger le JSON avant d'enregistrer.", + ". This action cannot be undone.": ". Cette action ne peut pas être annulée.", + "...": "...", "\"default\": \"us-central1\", \"claude-3-5-sonnet-20240620\": \"europe-west1\"": "\"default\": \"us-central1\", \"claude-3-5-sonnet-20240620\": \"europe-west1\"", - "% off": "% de réduction", + "({{total}} total, {{omit}} omitted)": "({{total}} au total, {{omit}} omis)", "(Leave empty to dissolve tag)": "(Laisser vide pour dissoudre le tag)", "(Optional: redirect model names)": "(Facultatif : rediriger les noms de modèles)", "(Override all channels' groups)": "(Remplacer les groupes de tous les canaux)", "(Override all channels' models)": "(Remplacer les modèles de tous les canaux)", - "({{total}} total, {{omit}} omitted)": "({{total}} au total, {{omit}} omis)", - ", and": ", et", - ". Please fix the JSON before saving.": ". Veuillez corriger le JSON avant d'enregistrer.", - ". This action cannot be undone.": ". Cette action ne peut pas être annulée.", - "...": "...", + "[{\"ChatGPT\":\"https://chat.openai.com\"},{\"Lobe Chat\":\"https://chat-preview.lobehub.com/?settings={...}\"}]": "[{\"ChatGPT\":\"https://chat.openai.com\"},{\"Lobe Chat\":\"https://chat-preview.lobehub.com/?settings={...}\"}]", + "[{\"name\":\"支付宝\",\"type\":\"alipay\",\"color\":\"#1677FF\"}]": "[{\"name\":\"Alipay\",\"type\":\"alipay\",\"color\":\"#1677FF\"}]", + "{\"original-model\": \"replacement-model\"}": "{\"original-model\": \"replacement-model\"}", + "{{category}} Models": "Modèles {{category}}", + "{{count}} channel(s) deleted": "{{count}} canal(canaux) supprimé(s)", + "{{count}} channel(s) disabled": "{{count}} canal(canaux) désactivé(s)", + "{{count}} channel(s) enabled": "{{count}} canal(canaux) activé(s)", + "{{count}} channel(s) failed to disable": "{{count}} canal(canaux) n'ont pas pu être désactivé(s)", + "{{count}} channel(s) failed to enable": "{{count}} canal(canaux) n'ont pas pu être activé(s)", + "{{count}} days ago": "il y a {{count}} jours", + "{{count}} days remaining": "{{count}} days remaining", + "{{count}} disabled channel(s) deleted": "{{count}} canal(canaux) désactivé(s) supprimé(s)", + "{{count}} hours ago": "il y a {{count}} heures", + "{{count}} IP(s)": "{{count}} IP", + "{{count}} log entries removed.": "{{count}} entrées de journal supprimées.", + "{{count}} minutes ago": "il y a {{count}} minutes", + "{{count}} model(s)": "{{count}} modèle(s)", + "{{count}} months ago": "il y a {{count}} mois", + "{{count}} override": "{{count}} remplacement", + "{{count}} tiers": "{{count}} paliers", + "{{count}} weeks ago": "il y a {{count}} semaines", + "{{field}} updated to {{value}}": "{{field}} mis à jour en {{value}}", + "{{field}} updated to {{value}} for tag: {{tag}}": "{{field}} mis à jour en {{value}} pour le tag : {{tag}}", + "{{n}} model(s) selected": "{{n}} modèle(s) sélectionné(s)", + "{{value}}ms": "{{value}} ms", + "{{value}}s": "{{value}} s", + "@lobehub/icons key": "@lobehub/icons clé", + "@lobehub/icons key name": "@lobehub/icons nom de la clé", "/status/": "/status/", "/your/endpoint": "/votre/endpoint", + "% off": "% de réduction", + "`, and `-nothinking` suffixes while routing to the correct Gemini variant.": "`, et les suffixes `-nothinking` lors du routage vers la variante Gemini correcte.", + "© 2025 Your Company. All rights reserved.": "© 2025 Votre entreprise. Tous droits réservés.", + "← Left": "← Left", + "→ Right": "→ Right", + "↑ Up": "↑ Up", + "↓ Down": "↓ Down", + "↘ Diagonal": "↘ Diagonal", + "| Based on": "| Basé sur", + "⊙ Radial": "⊙ Radial", "0 means unlimited": "0 signifie illimité", "1 Day": "1 jour", - "1 Hour": "1H", - "1 Month": "1M", "1 day ago": "Il y a 1 jour", + "1 Hour": "1H", "1 hour ago": "Il y a 1 heure", "1 minute ago": "Il y a 1 minute", + "1 Month": "1M", "1 month ago": "Il y a 1 mois", "1 week ago": "Il y a 1 semaine", "1 year ago": "Il y a 1 an", - "1) Click \"Open authorization page\" and complete login. 2) Your browser may redirect to localhost (it is OK if the page does not load). 3) Copy the full URL from the address bar and paste it below. 4) Click \"Generate credential\".": "1) Cliquez sur « Ouvrir la page d'autorisation » et connectez-vous. 2) Votre navigateur peut rediriger vers localhost (la page peut ne pas s'afficher). 3) Copiez l'URL complète de la barre d'adresse et collez-la ci-dessous. 4) Cliquez sur « Générer l'identifiant ».", "1. Create an application in your Gotify server": "1. Créez une application sur votre serveur Gotify", + "1) Click \"Open authorization page\" and complete login. 2) Your browser may redirect to localhost (it is OK if the page does not load). 3) Copy the full URL from the address bar and paste it below. 4) Click \"Generate credential\".": "1) Cliquez sur « Ouvrir la page d'autorisation » et connectez-vous. 2) Votre navigateur peut rediriger vers localhost (la page peut ne pas s'afficher). 3) Copiez l'URL complète de la barre d'adresse et collez-la ci-dessous. 4) Cliquez sur « Générer l'identifiant ».", "10 / page": "10 / page", "100 / page": "100 / page", "14 Days": "14 jours", @@ -47,56 +86,7 @@ "7 Days": "7 jours", "7 days ago": "Il y a 7 jours", "80,443,8080": "80,443,8080", - "? This action cannot be undone.": "? Cette action ne peut pas être annulée.", - "@lobehub/icons key": "@lobehub/icons clé", - "@lobehub/icons key name": "@lobehub/icons nom de la clé", "A text banner displayed at the top of all pages. Leave empty to disable.": "A text banner displayed at the top of all pages. Leave empty to disable.", - "AGPL v3.0 License": "Licence AGPL v3.0", - "AI Proxy": "AI Proxy", - "AI Proxy Library": "Bibliothèque AI Proxy", - "AI model testing environment": "Environnement de test de modèle IA", - "AI models": "Modèles d'IA", - "AI models supported": "Modèles d'IA pris en charge", - "AIGC2D": "AIGC2D", - "AILS": "AILS", - "AK/SK mode: use AccessKey|SecretAccessKey|Region": "Mode AK/SK : utiliser AccessKey|SecretAccessKey|Region", - "API Access": "Accès API", - "API Addresses": "Adresses API", - "API Base URL (Important: Not Chat API) *": "URL de base de l'API (Important : Pas l'API de Chat) *", - "API Base URL *": "URL de base de l'API *", - "API Endpoints": "Points de terminaison API", - "API Info": "Infos API", - "API Key": "Clé API", - "API Key (Production)": "Clé API (Production)", - "API Key (Sandbox)": "Clé API (Sandbox)", - "API Key (one per line for batch mode)": "Clé API (une par ligne pour le mode batch)", - "API Key *": "Clé API *", - "API Key created successfully": "Clé API créée avec succès", - "API Key deleted successfully": "Clé API supprimée avec succès", - "API Key disabled successfully": "Clé API désactivée avec succès", - "API Key enabled successfully": "Clé API activée avec succès", - "API Key mode (does not support batch creation)": "Mode clé API (ne prend pas en charge la création par lots)", - "API Key mode: use APIKey|Region": "Mode clé API : utiliser APIKey|Region", - "API Key updated successfully": "Clé API mise à jour avec succès", - "API Keys": "Clés API", - "API Private Key": "Clé privée de l'API", - "API Requests": "Requêtes API", - "API URL": "URL de l'API", - "API info added. Click \"Save Settings\" to apply.": "Informations API ajoutées. Cliquez sur \"Enregistrer les paramètres\" pour appliquer.", - "API info deleted. Click \"Save Settings\" to apply.": "Informations API supprimées. Cliquez sur \"Enregistrer les paramètres\" pour appliquer.", - "API info saved successfully": "Informations API enregistrées avec succès", - "API info updated. Click \"Save Settings\" to apply.": "Informations API mises à jour. Cliquez sur \"Enregistrer les paramètres\" pour appliquer.", - "API key": "Clé API", - "API key from the provider": "Clé API du fournisseur", - "API key is required": "La clé API est requise", - "API secret": "Secret API", - "API token management": "Gestion des tokens API", - "API usage records": "Historique d'utilisation de l'API", - "API2GPT": "API2GPT", - "AWS": "AWS", - "AWS Bedrock Claude Compat": "AWS Bedrock Claude Compat", - "AWS Key Format": "Format de clé AWS", - "AZURE_OPENAI_ENDPOINT *": "AZURE_OPENAI_ENDPOINT *", "About": "À propos", "Accept Unpriced Models": "Accepter les modèles non tarifés", "Accepts a JSON array of model identifiers that support the Imagine API.": "Accepte un tableau JSON d'identifiants de modèles qui prennent en charge l'API Imagine.", @@ -104,43 +94,28 @@ "Access Denied Message": "Message d'accès refusé", "Access Forbidden": "Accès interdit", "Access Policy (JSON)": "Politique d'accès (JSON)", - "Access Token": "Jeton d'accès", "Access previous conversations and start new ones.": "Accéder aux conversations précédentes et en démarrer de nouvelles.", + "Access Token": "Jeton d'accès", "AccessKey / SecretAccessKey": "AccessKey / SecretAccessKey", "Account Binding Management": "Gestion des liaisons de compte", "Account Bindings": "Associations de compte", - "Account ID *": "ID de compte *", - "Account Info": "Informations du compte", "Account created! Please sign in": "Compte créé ! Veuillez vous connecter", "Account deleted successfully": "Compte supprimé avec succès", + "Account ID *": "ID de compte *", + "Account Info": "Informations du compte", "Account used when authenticating with the SMTP server": "Compte utilisé lors de l'authentification auprès du serveur SMTP", "Action confirmation": "Confirmation de l'action", "Actions": "Actions", + "active": "actif", "Active": "Actif", "Active Cache Count": "Nombre de caches actifs", "Active Files": "Fichiers actifs", + "active users": "utilisateurs actifs", "Actual Amount": "Montant réel", "Actual Model": "Modèle réel", "Actual Model:": "Modèle réel :", "Add": "Ajouter", - "Add API": "Ajouter une API", - "Add API Shortcut": "Ajouter un raccourci API", - "Add Announcement": "Ajouter une annonce", - "Add Condition": "Ajouter une condition", - "Add FAQ": "Ajouter une FAQ", - "Add Funds": "Ajouter des fonds", - "Add Group": "Ajouter un groupe", - "Add Mapping": "Ajouter un mappage", - "Add Mode": "Ajouter un mode", - "Add Model": "Ajouter un modèle", - "Add Models": "Ajouter des modèles", - "Add OAuth Provider": "Ajouter un fournisseur OAuth", - "Add Provider": "Ajouter un fournisseur", - "Add Quota": "Ajouter un quota", - "Add Row": "Ajouter une ligne", - "Add Rule": "Ajouter une règle", - "Add Uptime Kuma Group": "Ajouter un groupe Uptime Kuma", - "Add User": "Ajouter un utilisateur", + "Add {{title}}": "Ajouter {{title}}", "Add a group identifier to the auto assignment list.": "Ajouter un identifiant de groupe à la liste d'affectation automatique.", "Add a new API key by providing necessary info.": "Ajoutez une nouvelle clé API en fournissant les informations nécessaires.", "Add a new channel by providing the necessary information.": "Ajoutez un nouveau canal en fournissant les informations nécessaires.", @@ -150,25 +125,41 @@ "Add an extra layer of security to your account": "Ajouter une couche de sécurité supplémentaire à votre compte", "Add and submit": "Ajouter et soumettre", "Add animation effects to the banner background.": "Add animation effects to the banner background.", + "Add Announcement": "Ajouter une annonce", + "Add API": "Ajouter une API", + "Add API Shortcut": "Ajouter un raccourci API", "Add auto group": "Ajouter un groupe automatique", "Add chat preset": "Ajouter un préréglage de chat", "Add condition": "Ajouter une condition", + "Add Condition": "Ajouter une condition", "Add custom model(s), comma-separated": "Ajouter un ou plusieurs modèles personnalisés, séparés par des virgules", "Add discount tier": "Ajouter un niveau de réduction", "Add each model or tag you want to include.": "Ajoutez chaque modèle ou étiquette que vous souhaitez inclure.", + "Add FAQ": "Ajouter une FAQ", "Add from available models...": "Ajouter à partir des modèles disponibles...", + "Add Funds": "Ajouter des fonds", "Add group": "Ajouter un groupe", + "Add Group": "Ajouter un groupe", "Add group rate limit": "Ajouter une limite de taux de groupe", "Add group rules": "Ajouter des règles de groupe", + "Add Mapping": "Ajouter un mappage", "Add method": "Ajouter une méthode", + "Add Mode": "Ajouter un mode", "Add model": "Ajouter un modèle", + "Add Model": "Ajouter un modèle", + "Add Models": "Ajouter des modèles", "Add new amount": "Ajouter un nouveau montant", "Add new redemption code(s) by providing necessary info.": "Ajouter de nouveaux codes de réduction en fournissant les informations nécessaires.", + "Add OAuth Provider": "Ajouter un fournisseur OAuth", "Add param/header": "Ajouter un param / un en-tête", "Add payment method": "Ajouter un mode de paiement", "Add photos or files": "Ajouter des photos ou des fichiers", "Add product": "Ajouter un produit", + "Add Provider": "Ajouter un fournisseur", + "Add Quota": "Ajouter un quota", "Add ratio override": "Ajouter un remplacement de ratio", + "Add Row": "Ajouter une ligne", + "Add Rule": "Ajouter une règle", "Add rule group": "Ajouter un groupe de règles", "Add selectable group": "Ajouter un groupe sélectionnable", "Add subscription": "Ajouter un abonnement", @@ -176,35 +167,36 @@ "Add tier": "Ajouter un palier", "Add time condition": "Ajouter une condition temporelle", "Add time rule group": "Ajouter un groupe de règles temporelles", + "Add Uptime Kuma Group": "Ajouter un groupe Uptime Kuma", + "Add User": "Ajouter un utilisateur", "Add user group": "Ajouter un groupe d'utilisateurs", "Add your API keys, set up channels and configure access permissions": "Ajoutez vos clés API, configurez les canaux et les permissions d'accès", - "Add {{title}}": "Ajouter {{title}}", - "Added successfully": "Ajouté avec succès", "Added {{count}} custom model(s)": "{{count}} modèle(s) personnalisé(s) ajouté(s)", "Added {{count}} model(s)": "{{count}} modèle(s) ajouté(s)", + "Added successfully": "Ajouté avec succès", "Additional Conditions": "Conditions supplémentaires", + "Additional information": "Informations supplémentaires", "Additional Information": "Informations supplémentaires", "Additional Limit": "Limite supplémentaire", "Additional Limits": "Limites supplémentaires", - "Additional information": "Informations supplémentaires", "Additional metered capability": "Fonctionnalité supplémentaire facturée à l’usage", "Adjust Quota": "Ajuster le quota", "Adjust response formatting, prompt behavior, proxy, and upstream automation.": "Ajustez le formatage des réponses, le comportement des prompts, le proxy et l’automatisation amont.", "Adjust the appearance and layout to suit your preferences.": "Ajustez l'apparence et la mise en page selon vos préférences.", "Admin": "Administrateur", - "Admin Only": "Administrateur uniquement", "Admin access required": "Accès administrateur requis", "Admin area": "Espace administrateur", "Admin notes (only visible to admins)": "Notes d'administration (visibles uniquement par les administrateurs)", + "Admin Only": "Administrateur uniquement", "Administer user accounts and roles.": "Gérer les comptes d'utilisateurs et les rôles.", "Administrator account": "Compte administrateur", "Administrator username": "Nom d'utilisateur administrateur", "Advanced": "Avancé", "Advanced Configuration": "Configuration avancée", - "Advanced Options": "Options avancées", - "Advanced Settings": "Paramètres avancés", "Advanced options": "Options avancées", + "Advanced Options": "Options avancées", "Advanced platform configuration.": "Configuration avancée de la plateforme.", + "Advanced Settings": "Paramètres avancés", "Advanced text editing": "Édition de texte avancée", "After clicking the button, you'll be asked to authorize the bot": "Après avoir cliqué sur le bouton, il vous sera demandé d'autoriser le bot", "After disabling, it will no longer be shown to users, but historical orders are not affected. Continue?": "Après désactivation, il ne sera plus affiché aux utilisateurs, mais les commandes historiques ne sont pas affectées. Continuer ?", @@ -213,40 +205,51 @@ "After scanning, the binding will complete automatically": "Après la numérisation, la liaison se terminera automatiquement", "Agent ID *": "ID d'agent *", "Aggregated usage metrics and trend charts.": "Métriques d'utilisation agrégées et graphiques de tendances.", + "aggregates 50+ AI providers behind one unified API. Manage access, track costs, and scale effortlessly.": "agrège plus de 50 fournisseurs IA derrière une API unifiée. Gérez l'accès, suivez les coûts et évoluez sans effort.", + "AGPL v3.0 License": "Licence AGPL v3.0", + "AI model testing environment": "Environnement de test de modèle IA", + "AI models": "Modèles d'IA", + "AI models supported": "Modèles d'IA pris en charge", + "AI Proxy": "AI Proxy", + "AI Proxy Library": "Bibliothèque AI Proxy", + "AIGC2D": "AIGC2D", + "AILS": "AILS", + "AK/SK mode: use AccessKey|SecretAccessKey|Region": "Mode AK/SK : utiliser AccessKey|SecretAccessKey|Region", "Ali": "Ali", "All": "Tout", + "All edits are overwrite operations. Leave fields empty to keep current values unchanged.": "Toutes les modifications sont des opérations d'écrasement. Laissez les champs vides pour conserver les valeurs actuelles inchangées.", + "All files exceed the maximum size.": "Tous les fichiers dépassent la taille maximale.", "All Groups": "Tous les groupes", "All Models": "Tous les modèles", + "All models in use are properly configured.": "Tous les modèles utilisés sont correctement configurés.", "All Must Match (AND)": "Toutes doivent correspondre (AND)", "All Status": "Tous les statuts", "All Sync Status": "Tous les statuts de synchronisation", "All Tags": "Tous les tags", "All Types": "Tous les types", + "All upstream data is trusted": "Toutes les données en amont sont fiables", "All Vendors": "Tous les fournisseurs", "All Your AI Models": "Tous vos modèles IA", - "All edits are overwrite operations. Leave fields empty to keep current values unchanged.": "Toutes les modifications sont des opérations d'écrasement. Laissez les champs vides pour conserver les valeurs actuelles inchangées.", - "All files exceed the maximum size.": "Tous les fichiers dépassent la taille maximale.", - "All models in use are properly configured.": "Tous les modèles utilisés sont correctement configurés.", - "All upstream data is trusted": "Toutes les données en amont sont fiables", "Allocated Memory": "Mémoire allouée", - "Allow Claude beta query passthrough": "Autoriser le passage des requêtes bêta Claude", - "Allow HTTP image requests": "Autoriser les requêtes d'images HTTP", - "Allow Insecure Origins": "Autoriser les origines non sécurisées", - "Allow Private IPs": "Autoriser les IP privées", - "Allow Retry": "Autoriser la relance", "Allow accountFilter parameter": "Autoriser le paramètre accountFilter", + "Allow Claude beta query passthrough": "Autoriser le passage des requêtes bêta Claude", "Allow clients to query configured ratios via `/api/ratio`.": "Autoriser les clients à interroger les ratios configurés via `/api/ratio`.", + "Allow HTTP image requests": "Autoriser les requêtes d'images HTTP", "Allow include usage obfuscation passthrough": "Autoriser le passage de l'obfuscation d'utilisation", "Allow inference geography passthrough": "Autoriser le passage de la géographie d'inférence", "Allow inference_geo passthrough": "Autoriser la transmission de inference_geo", + "Allow Insecure Origins": "Autoriser les origines non sécurisées", "Allow new users to register": "Autoriser les nouveaux utilisateurs à s'inscrire", + "Allow Private IPs": "Autoriser les IP privées", "Allow registration with password": "Autoriser l'inscription avec mot de passe", "Allow requests to private IP ranges (10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16)": "Autoriser les requêtes vers les plages d'adresses IP privées (10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16)", + "Allow Retry": "Autoriser la relance", "Allow safety_identifier passthrough": "Autoriser la transmission de safety_identifier", "Allow service_tier passthrough": "Autoriser la transmission de service_tier", "Allow speed passthrough": "Autoriser la transmission de speed", "Allow upstream callbacks": "Autoriser les callbacks en amont", "Allow users to check in daily for random quota rewards": "Permettre aux utilisateurs de se connecter quotidiennement pour des récompenses de quota aléatoires", + "Allow users to close this banner. If disabled, the close button is hidden.": "Autoriser les utilisateurs à fermer cette bannière. Si désactivé, le bouton de fermeture est masqué.", "Allow users to enter promo codes": "Autoriser les utilisateurs à saisir des codes promotionnels", "Allow users to log in with password": "Autoriser les utilisateurs à se connecter avec un mot de passe", "Allow users to register and sign in with Passkey (WebAuthn)": "Autoriser les utilisateurs à s'inscrire et se connecter avec une clé d'accès (Passkey) (WebAuthn)", @@ -255,8 +258,8 @@ "Allow users to sign in with LinuxDO": "Autoriser les utilisateurs à se connecter avec LinuxDO", "Allow users to sign in with OpenID Connect": "Autoriser les utilisateurs à se connecter avec OpenID Connect", "Allow users to sign in with Telegram": "Autoriser les utilisateurs à se connecter avec Telegram", - "Allow users to sign in with WeChat": "Autoriser les utilisateurs à se connecter avec WeChat", "Allow users to sign in with this provider": "Autoriser les utilisateurs à se connecter avec ce fournisseur", + "Allow users to sign in with WeChat": "Autoriser les utilisateurs à se connecter avec WeChat", "Allow using models without price configuration": "Autoriser l'utilisation de modèles sans configuration de prix", "Allowed": "Autorisé", "Allowed Origins": "Origines autorisées", @@ -265,21 +268,24 @@ "Alternate": "Alternate", "Always matches (default tier).": "Toujours appliqué (palier par défaut).", "Amount": "Montant", - "Amount Due": "Montant dû", "Amount cannot be changed when editing.": "Le montant ne peut pas être modifié lors de la modification.", "Amount discount": "Remise sur le montant", + "Amount Due": "Montant dû", "Amount must be a whole number": "Le montant doit être un nombre entier", "Amount must be greater than 0": "Le montant doit être supérieur à 0", "Amount of quota to credit to user account.": "Montant du quota à créditer sur le compte utilisateur.", "Amount options must be a JSON array": "Les options de montant doivent être un tableau JSON", "Amount to pay:": "Montant à payer :", "An unexpected error occurred": "Une erreur inattendue est survenue", + "and": "et", "Animation": "Animation", + "Animation Presets": "Préréglages d'animation", + "Animation presets can use custom colors and speed.": "Les préréglages d'animation peuvent utiliser des couleurs et une vitesse personnalisées.", "Animation Type": "Animation Type", - "Announcement Details": "Détails de l'annonce", "Announcement added. Click \"Save Settings\" to apply.": "Annonce ajoutée. Cliquez sur \"Enregistrer les paramètres\" pour appliquer.", "Announcement content": "Contenu de l'annonce", "Announcement deleted. Click \"Save Settings\" to apply.": "Annonce supprimée. Cliquez sur \"Enregistrer les paramètres\" pour appliquer.", + "Announcement Details": "Détails de l'annonce", "Announcement displayed to users (supports Markdown & HTML)": "Annonce affichée aux utilisateurs (prend en charge Markdown et HTML)", "Announcement updated. Click \"Save Settings\" to apply.": "Annonce mise à jour. Cliquez sur \"Enregistrer les paramètres\" pour appliquer.", "Announcements": "Annonces", @@ -287,13 +293,47 @@ "Answer": "Réponse", "Anthropic": "Anthropic", "Any Match (OR)": "N'importe laquelle (OR)", + "API Access": "Accès API", + "API Addresses": "Adresses API", + "API Base URL (Important: Not Chat API) *": "URL de base de l'API (Important : Pas l'API de Chat) *", + "API Base URL *": "URL de base de l'API *", + "API Endpoints": "Points de terminaison API", + "API Info": "Infos API", + "API info added. Click \"Save Settings\" to apply.": "Informations API ajoutées. Cliquez sur \"Enregistrer les paramètres\" pour appliquer.", + "API info deleted. Click \"Save Settings\" to apply.": "Informations API supprimées. Cliquez sur \"Enregistrer les paramètres\" pour appliquer.", + "API info saved successfully": "Informations API enregistrées avec succès", + "API info updated. Click \"Save Settings\" to apply.": "Informations API mises à jour. Cliquez sur \"Enregistrer les paramètres\" pour appliquer.", + "API key": "Clé API", + "API Key": "Clé API", + "API Key (one per line for batch mode)": "Clé API (une par ligne pour le mode batch)", + "API Key (Production)": "Clé API (Production)", + "API Key (Sandbox)": "Clé API (Sandbox)", + "API Key *": "Clé API *", + "API Key created successfully": "Clé API créée avec succès", + "API Key deleted successfully": "Clé API supprimée avec succès", + "API Key disabled successfully": "Clé API désactivée avec succès", + "API Key enabled successfully": "Clé API activée avec succès", + "API key from the provider": "Clé API du fournisseur", + "API key is required": "La clé API est requise", + "API Key mode (does not support batch creation)": "Mode clé API (ne prend pas en charge la création par lots)", + "API Key mode: use APIKey|Region": "Mode clé API : utiliser APIKey|Region", + "API Key updated successfully": "Clé API mise à jour avec succès", + "API Keys": "Clés API", + "API Private Key": "Clé privée de l'API", + "API Requests": "Requêtes API", + "API secret": "Secret API", + "API token management": "Gestion des tokens API", + "API URL": "URL de l'API", + "API usage records": "Historique d'utilisation de l'API", + "API2GPT": "API2GPT", "Append": "Ajouter à la fin", - "Append Template": "Ajouter le modèle", "Append mode: New keys will be added to the end of the existing key list": "Mode d'ajout : Les nouvelles clés seront ajoutées à la fin de la liste de clés existante", - "Append to End": "Ajouter à la fin", + "Append Template": "Ajouter le modèle", "Append to channel": "Ajouter au canal", + "Append to End": "Ajouter à la fin", "Append to existing keys": "Ajouter aux clés existantes", "Append value to array / string / object end": "Ajouter la valeur à la fin du tableau / chaîne / objet", + "appended": "ajouté", "Application": "Application", "Applies to custom completion endpoints. JSON map of model → ratio.": "S'applique aux points de terminaison de complétion personnalisés. Mappage JSON de modèle → ratio.", "Apply All Upstream Updates": "Appliquer toutes les mises à jour upstream", @@ -303,6 +343,7 @@ "Apply Sync": "Appliquer la synchronisation", "Applying...": "Application en cours...", "Approx.": "Environ.", + "are also listed here. Remove them from Models to keep the `/v1/models` response user-friendly and hide vendor-specific names.": "sont également listés ici. Supprimez-les des Modèles pour que la réponse `/v1/models` reste conviviale et pour masquer les noms spécifiques aux fournisseurs.", "Are you sure you want to delete": "Êtes-vous sûr de vouloir supprimer", "Are you sure you want to delete all auto-disabled keys? This action cannot be undone.": "Êtes-vous sûr de vouloir supprimer toutes les clés automatiquement désactivées ? Cette action ne peut pas être annulée.", "Are you sure you want to delete deployment \"{{name}}\"? This action cannot be undone.": "Êtes-vous sûr de vouloir supprimer le déploiement \"{{name}}\" ? Cette action est irréversible.", @@ -324,19 +365,20 @@ "At least one valid key source is required": "Au moins une source de clé valide est requise", "Attach": "Joindre", "Audio": "Audio", + "Audio comp.": "Comp. audio", + "Audio completion ratio": "Ratio de complétion audio", "Audio In": "Entrée audio", + "Audio input": "Entrée audio", "Audio Input": "Entrée audio", "Audio Input Price": "Prix entrée audio", "Audio Out": "Sortie audio", - "Audio Output": "Sortie audio", - "Audio Preview": "Aperçu audio", - "Audio Tokens": "Jetons audio", - "Audio comp.": "Comp. audio", - "Audio completion ratio": "Ratio de complétion audio", - "Audio input": "Entrée audio", "Audio output": "Sortie audio", + "Audio Output": "Sortie audio", "Audio playback failed": "Échec de la lecture audio", + "Audio Preview": "Aperçu audio", "Audio ratio": "Ratio audio", + "Audio Tokens": "Jetons audio", + "Aurora": "Aurore", "Auth Style": "Style d'authentification", "Authentication": "Authentification", "Authenticator code": "Code d'authentification", @@ -345,13 +387,13 @@ "Authorize": "Autoriser", "Auto": "Auto", "Auto (Circuit Breaker)": "Auto (Disjoncteur)", + "Auto assignment order": "Ordre d'affectation automatique", "Auto Ban": "Bannissement automatique", + "Auto detect (default)": "Détection automatique (par défaut)", "Auto Disabled": "Désactivé automatiquement", "Auto Group Chain": "Chaîne de groupes automatique", - "Auto Sync Upstream Models": "Synchronisation automatique des modèles en amont", - "Auto assignment order": "Ordre d'affectation automatique", - "Auto detect (default)": "Détection automatique (par défaut)", "Auto refresh": "Actualisation automatique", + "Auto Sync Upstream Models": "Synchronisation automatique des modèles en amont", "Auto-Accept Unpriced Models on Registration": "Accepter automatiquement les modèles non tarifés à l'inscription", "Auto-disable status codes": "Codes de statut de désactivation auto", "Auto-discover": "Découverte automatique", @@ -372,19 +414,24 @@ "Availability Panel": "Panneau de disponibilité", "Availability Status Monitor": "Surveillance de disponibilité", "Available": "Disponible", + "Available disk space": "Espace disque disponible", "Available Models": "Modèles disponibles", "Available Rewards": "Récompenses disponibles", - "Available disk space": "Espace disque disponible", "Average RPM": "RPM moyen", "Average TPM": "TPM moyen", - "Azure": "Azure", + "AWS": "AWS", + "AWS Bedrock Claude Compat": "AWS Bedrock Claude Compat", + "AWS Key Format": "Format de clé AWS", + "Azure": "Azure", + "AZURE_OPENAI_ENDPOINT *": "AZURE_OPENAI_ENDPOINT *", "Back": "Retour", "Back to Home": "Retour à l'accueil", - "Back to Models": "Retour aux modèles", "Back to login": "Retour à la connexion", + "Back to Models": "Retour aux modèles", "Backed up": "Sauvegardé", - "Background Type": "Background Type", + "Background color": "Couleur d'arrière-plan", "Background job tracker for queued work.": "Suivi des tâches en arrière-plan pour les travaux en file d'attente.", + "Background Type": "Background Type", "Backup Code": "Code de secours", "Backup code must be in format XXXX-XXXX": "Le code de sauvegarde doit être au format XXXX-XXXX", "Backup codes regenerated successfully": "Codes de sauvegarde régénérés avec succès", @@ -399,54 +446,56 @@ "Balance updated successfully": "Solde mis à jour avec succès", "Balance updated: {{balance}}": "Solde mis à jour : {{balance}}", "Banner Content": "Banner Content", + "Banner Dismissible": "Bannière fermable", "Banner Font Color": "Banner Font Color", + "Banner Type": "Type de bannière", "Bar Chart": "Graphique en barres", "Bark Push URL": "URL de notification Bark", - "Base Limits": "Limites de base", - "Base Price": "Prix de base", - "Base URL": "URL de base", - "Base URL of your Uptime Kuma instance": "URL de base de votre instance Uptime Kuma", "Base address provided by your Epay service": "Adresse de base fournie par votre service Epay", "Base amount. Actual deduction = base amount × system group rate.": "Montant de base. Déduction réelle = montant de base × taux du groupe système.", + "Base Limits": "Limites de base", "Base multipliers applied when users select specific groups.": "Multiplicateurs de base appliqués lorsque les utilisateurs sélectionnent des groupes spécifiques.", + "Base Price": "Prix de base", "Base rate limit windows for this account.": "Fenêtres de limitation de débit de base pour ce compte.", + "Base URL": "URL de base", + "Base URL of your Uptime Kuma instance": "URL de base de votre instance Uptime Kuma", "Basic Authentication": "Authentification de base", "Basic Configuration": "Configuration de base", "Basic Info": "Informations de base", "Basic Information": "Informations de base", "Basic Templates": "Modèles de base", "Batch Add (one key per line)": "Ajout par lots (une clé par ligne)", - "Batch Edit": "Modification par lot", - "Batch Edit by Tag": "Modification par lot par tag", "Batch delete failed": "Échec de la suppression par lots", "Batch detection complete: {{channels}} channels, {{add}} to add, {{remove}} to remove, {{fails}} failed": "Détection par lots terminée : {{channels}} canaux, {{add}} à ajouter, {{remove}} à supprimer, {{fails}} échoués", "Batch detection failed": "Échec de la détection par lot", "Batch disable failed": "Échec de la désactivation par lots", + "Batch Edit": "Modification par lot", "Batch edit all channels with this tag. Leave fields empty to keep current values.": "Modifiez par lot tous les canaux avec ce tag. Laissez les champs vides pour conserver les valeurs actuelles.", + "Batch Edit by Tag": "Modification par lot par tag", "Batch enable failed": "Échec de l'activation par lots", "Batch processing failed": "Échec du traitement par lot", "Batch upstream model updates applied: {{channels}} channels, {{added}} added, {{removed}} removed, {{fails}} failed": "Mises à jour par lot des modèles en amont appliquées : {{channels}} canaux, {{added}} ajoutés, {{removed}} supprimés, {{fails}} échoués", "Best for single-tenant deployments. Pricing and billing options stay hidden.": "Idéal pour les déploiements mono-utilisateur. Les options de tarification et de facturation restent masquées.", "Billing": "Facturation", + "Billing currency": "Devise de facturation", "Billing Details": "Détails de facturation", "Billing History": "Historique de facturation", "Billing Mode": "Mode de facturation", "Billing Process": "Processus de facturation", "Billing Source": "Source de facturation", - "Billing currency": "Devise de facturation", "Bind": "Lier", + "Bind an email address to your account.": "Associez une adresse e-mail à votre compte.", "Bind Email": "Lier l'e-mail", "Bind Telegram Account": "Lier le compte Telegram", "Bind WeChat Account": "Lier le compte WeChat", - "Bind an email address to your account.": "Associez une adresse e-mail à votre compte.", "Binding Information": "Informations de liaison", "Binding successful!": "Liaison réussie !", "Binding your {{provider}} account": "Liaison de votre compte {{provider}}", "Binding...": "Liaison en cours...", "Bindings": "Liages", "Blacklist": "Liste noire", - "Blacklist (Block listed IPs)": "Liste noire (Bloquer les adresses IP listées)", "Blacklist (Block listed domains)": "Liste noire (Bloquer les domaines listés)", + "Blacklist (Block listed IPs)": "Liste noire (Bloquer les adresses IP listées)", "Blank Rule": "Règle vide", "Blend": "Fusion", "Blink": "Blink", @@ -465,18 +514,15 @@ "Broadcast a global banner to users. Markdown is supported.": "Diffuser une bannière globale aux utilisateurs. Le Markdown est pris en charge.", "Broadcast short system notices on the dashboard": "Diffuser de courtes notifications système sur le tableau de bord", "Browse and compare": "Parcourir et comparer", - "Budget Tokens Ratio": "Ratio de jetons budgétaires", "Budget tokens = max tokens × ratio. Accepts a decimal between 0.002 and 1. Recommended to keep aligned with upstream billing.": "Jetons budgétaires = jetons max × ratio. Accepte un nombre décimal entre 0,002 et 1. Il est recommandé de rester aligné avec la facturation en amont.", "Budget tokens = max tokens × ratio. Accepts a decimal between 0.1 and 1.": "Jetons budgétaires = jetons max × ratio. Accepte un nombre décimal entre 0,1 et 1.", + "Budget Tokens Ratio": "Ratio de jetons budgétaires", "Budgets": "Budgets", "Built for developers,": "Conçu pour les développeurs,", "Built-in": "Intégré", "Built-in Device": "Appareil intégré", "Built-in: phone fingerprint/face, or Windows Hello; External: USB security key": "Intégré : empreinte digitale/visage du téléphone, ou Windows Hello ; Externe : clé de sécurité USB", - "CC Switch": "Changement CC", - "CNY": "CNY", - "CNY per USD": "CNY par USD", - "CPU Threshold (%)": "Seuil CPU (%)", + "by": "par", "Cache": "Cache", "Cache Creation": "Création cache", "Cache Creation (1h)": "Création cache (1h)", @@ -485,13 +531,13 @@ "Cache Directory Disk Space": "Espace disque du répertoire de cache", "Cache Directory Info": "Infos du répertoire de cache", "Cache Entries": "Entrées de cache", + "Cache mode": "Mode de cache", + "Cache ratio": "Ratio de cache", "Cache Read": "Lecture du cache", + "Cache write": "Écriture du cache", "Cache Write": "Écriture du cache", "Cache Write (1h)": "Écriture cache (1h)", "Cache Write (5m)": "Écriture cache (5m)", - "Cache mode": "Mode de cache", - "Cache ratio": "Ratio de cache", - "Cache write": "Écriture du cache", "Cached": "Cache", "Cached input": "Entrée mise en cache", "Calculated price: ${{price}} per 1M tokens": "Prix calculé : ${{price}} par 1M tokens", @@ -501,11 +547,11 @@ "Call Count Ranking": "Classement du nombre d'appels", "Call Proportion": "Proportion d'appels", "Call Trend": "Tendance des appels", + "Callback address": "Adresse de rappel", "Callback Caller IP": "IP de l’appelant du callback", + "Callback notification URL": "URL de notification de rappel", "Callback Payment Method": "Moyen de paiement (callback)", "Callback URL": "URL de callback", - "Callback address": "Adresse de rappel", - "Callback notification URL": "URL de notification de rappel", "Cancel": "Annuler", "Cancelled": "Annulé", "Cancelled at": "Annulé le", @@ -515,60 +561,63 @@ "Category name is required": "Le nom de la catégorie est requis", "Category name must be less than 50 characters": "Le nom de la catégorie doit contenir moins de 50 caractères", "Caution": "Attention", + "CC Switch": "Changement CC", "Chain": "Chaîne", "Change": "Modifier", + "Change language": "Changer de langue", "Change Password": "Changer le mot de passe", "Change To": "Changer en", - "Change language": "Changer de langue", "Changing...": "Modification en cours...", "Channel": "Canal", "Channel Affinity": "Affinité de canal", - "Channel Affinity: Upstream Cache Hit": "Affinité de canal : hit de cache en amont", - "Channel Extra Settings": "Paramètres supplémentaires du canal", - "Channel ID": "ID du Canal", - "Channel Provider": "Fournisseur de canal", "Channel affinity reuses the last successful channel based on keys extracted from the request context or JSON body.": "L'affinité de canal réutilise le dernier canal ayant réussi, en se basant sur les clés extraites du contexte de la requête ou du corps JSON.", + "Channel Affinity: Upstream Cache Hit": "Affinité de canal : hit de cache en amont", "Channel copied successfully": "Canal copié avec succès", "Channel created successfully": "Canal créé avec succès", "Channel deleted successfully": "Canal supprimé avec succès", "Channel disabled successfully": "Canal désactivé avec succès", "Channel enabled successfully": "Canal activé avec succès", + "Channel Extra Settings": "Paramètres supplémentaires du canal", + "Channel ID": "ID du Canal", "Channel key": "Clé du canal", "Channel key unlocked": "Clé de canal déverrouillée", "Channel models": "Modèles de canaux", "Channel name is required": "Le nom du canal est requis", + "Channel Provider": "Fournisseur de canal", "Channel test completed": "Test du canal terminé", "Channel type is required": "Le type de canal est requis", "Channel updated successfully": "Canal mis à jour avec succès", "Channel-specific settings (JSON format)": "Paramètres spécifiques aux canaux (format JSON)", "Channel:": "Canal :", + "channel(s)? This action cannot be undone.": "canal(aux) ? Cette action ne peut pas être annulée.", "Channels": "Canaux", "Channels deleted successfully": "Canaux supprimés avec succès", "Chart Preferences": "Préférences des graphiques", "Chart Settings": "Paramètres du graphique", "Chat": "Discuter", + "Chat area": "Zone de chat", "Chat Area": "Zone de chat", "Chat Client Name": "Nom du client de chat", - "Chat Presets": "Préréglages de chat", - "Chat area": "Zone de chat", "Chat client name is required": "Le nom du client de chat est requis", "Chat configuration JSON": "Configuration du chat JSON", "Chat preset not found": "Préréglage de chat introuvable", + "Chat Presets": "Préréglages de chat", "Chat session management": "Gestion des sessions de chat", "ChatCompletions -> Responses Compatibility": "Compatibilité ChatCompletions -> Réponses", "Check for updates": "Vérifier les mises à jour", "Check in daily to receive random quota rewards": "Connectez-vous quotidiennement pour recevoir des récompenses de quota aléatoires", "Check in now": "Se connecter maintenant", "Check resolved IPs against IP filters even when accessing by domain": "Vérifier les adresses IP résolues par rapport aux filtres IP même lors de l'accès par domaine", - "Check-in Settings": "Paramètres de connexion", "Check-in failed": "Échec de la connexion", + "Check-in Settings": "Paramètres de connexion", "Check-in successful! Received": "Connexion réussie ! Reçu", "Checked in": "Vérifié", "Checking connection": "Vérification de la connexion", "Checking name...": "Vérification du nom...", "Checking updates...": "Vérification des mises à jour...", + "checkout.session.completed": "checkout.session.completed", + "checkout.session.expired": "checkout.session.expired", "Chinese": "Chinois", - "Choose Group": "Choisir un groupe", "Choose a preset effect and customize colors and speed.": "Choose a preset effect and customize colors and speed.", "Choose a primary color for the interface": "Choisissez une couleur principale pour l'interface", "Choose a username": "Choisir un nom d'utilisateur", @@ -578,10 +627,12 @@ "Choose between left-to-right or right-to-left site direction": "Choisissez entre la direction du site de gauche à droite ou de droite à gauche", "Choose between system preference, light mode, or dark mode": "Choisissez entre la préférence système, le mode clair ou le mode sombre", "Choose channels to sync upstream ratio configurations from": "Choisissez les canaux à partir desquels synchroniser les configurations de ratio amont", + "Choose Group": "Choisir un groupe", "Choose how quota values are shown to users": "Choisissez comment les valeurs de quota sont affichées aux utilisateurs", "Choose how the platform will operate": "Choisissez le mode de fonctionnement de la plateforme", - "Choose how to filter IP addresses": "Choisissez comment filtrer les adresses IP", "Choose how to filter domains": "Choisissez comment filtrer les domaines", + "Choose how to filter IP addresses": "Choisissez comment filtrer les adresses IP", + "Choose the banner category. Each category uses a matching visual style.": "Choisissez la catégorie de bannière. Chaque catégorie utilise un style visuel adapté.", "Choose the bundle type and define the items inside it.": "Choisissez le type de bundle et définissez les éléments qu'il contient.", "Choose the default charts, range, and time granularity for model analytics.": "Choisissez les graphiques, la plage et la granularité temporelle par défaut pour l'analyse des modèles.", "Choose where to fetch upstream metadata.": "Choisissez où récupérer les métadonnées amont.", @@ -589,22 +640,22 @@ "Classic (Legacy Frontend)": "Classique (Ancien frontend)", "Claude": "Claude", "Claude CLI Header Passthrough": "Passthrough en-tête Claude CLI", - "Clean Up Log Files": "Nettoyer les fichiers journaux", "Clean history logs": "Nettoyer les journaux d'historique", "Clean logs": "Nettoyer les logs", "Clean up inactive cache": "Nettoyer le cache inactif", + "Clean Up Log Files": "Nettoyer les fichiers journaux", "Cleaned up {{count}} log files, freed {{size}}": "{{count}} fichiers journaux nettoyés, {{size}} libérés", "Cleaning...": "Nettoyage en cours...", - "Cleanup Mode": "Mode de nettoyage", "Cleanup failed": "Échec du nettoyage", + "Cleanup Mode": "Mode de nettoyage", "Clear": "Effacer", + "Clear all": "Tout effacer", "Clear All": "Tout effacer", "Clear All Cache": "Vider tout le cache", - "Clear Mapping": "Effacer le mappage", - "Clear all": "Tout effacer", "Clear all filters": "Effacer tous les filtres", "Clear cache for this rule": "Vider le cache de cette règle", "Clear filters": "Effacer les filtres", + "Clear Mapping": "Effacer le mappage", "Clear mode flags in prompts": "Effacer les indicateurs de mode dans les prompts", "Clear search": "Effacer la recherche", "Clear selection": "Effacer la sélection", @@ -614,8 +665,8 @@ "Click \"Create Plan\" to create your first subscription plan": "Cliquez sur « Créer un plan » pour créer votre premier abonnement", "Click \"Generate\" to create a token": "Cliquez sur \"Générer\" pour créer un jeton", "Click for details": "Cliquez pour les détails", - "Click save when you're done.": "Cliquez sur Enregistrer lorsque vous avez terminé.", "Click save when you're done.": "Cliquez sur Enregistrer lorsque vous avez terminé.", + "Click save when you're done.": "Cliquez sur Enregistrer lorsque vous avez terminé.", "Click the button below to bind your Telegram account": "Cliquez sur le bouton ci-dessous pour lier votre compte Telegram", "Click to open deployment": "Cliquez pour ouvrir le déploiement", "Click to preview audio": "Cliquer pour prévisualiser l'audio", @@ -625,27 +676,29 @@ "Click to view full details": "Cliquez pour voir les détails complets", "Click to view full error message": "Cliquez pour voir le message d'erreur complet", "Click to view full prompt": "Cliquez pour voir l'invite complète", + "Client header value": "Valeur d'en-tête client", "Client ID": "ID client", "Client Secret": "Secret client", - "Client header value": "Valeur d'en-tête client", "Close": "Fermer", - "Close Today": "Fermer aujourd'hui", "Close dialog": "Fermer la boîte de dialogue", "Close menu": "Fermer le menu", + "Close Today": "Fermer aujourd'hui", "Cloudflare": "Cloudflare", + "CNY": "CNY", + "CNY per USD": "CNY par USD", "Code": "Code", "Codes copied!": "Codes copiés !", "Codex": "Codex", "Codex Account & Usage": "Compte et utilisation Codex", "Codex Authorization": "Autorisation Codex", - "Codex CLI Header Passthrough": "Passthrough en-tête Codex CLI", "Codex channels use an OAuth JSON credential as the key.": "Les canaux Codex utilisent un identifiant OAuth JSON comme clé.", + "Codex CLI Header Passthrough": "Passthrough en-tête Codex CLI", "Cohere": "Cohere", "Collapse": "Réduire", "Collapse All": "Tout réduire", "Color": "Couleur", - "Color Stops": "Color Stops", "Color is required": "La couleur est requise", + "Color Stops": "Color Stops", "Color:": "Couleur :", "Coming Soon!": "Bientôt disponible !", "Comma-separated color values for the gradient.": "Comma-separated color values for the gradient.", @@ -658,9 +711,10 @@ "Common": "Commun", "Common Keys": "Clés courantes", "Common Logs": "Journaux courants", - "Common User": "Utilisateur commun", "Common ports include 25, 465, and 587": "Les ports courants incluent 25, 465 et 587", + "Common User": "Utilisateur commun", "Community driven, self-hosted, and extensible": "Piloté par la communauté, auto-hébergé et extensible", + "compatible API routes": "routes API compatibles", "Compatible API routes for common AI application workflows": "Routes API compatibles pour les workflows courants des applications d'IA", "Complete API documentation with multi-language SDK support": "Documentation API complète avec support SDK multilingue", "Complete Order": "Compléter la commande", @@ -684,12 +738,6 @@ "Configuration for Stripe payment integration": "Configuration pour l'intégration de paiement Stripe", "Configuration required": "Configuration requise", "Configure": "Configurer", - "Configure API documentation links for the dashboard": "Configurer les liens de documentation API pour le tableau de bord", - "Configure Creem products. Provide a JSON array.": "Configurez les produits Creem. Fournissez un tableau JSON.", - "Configure Gemini safety behavior, version overrides, and thinking adapter": "Configurer le comportement de sécurité Gemini, les remplacements de version et l'adaptateur de réflexion", - "Configure Passkey (WebAuthn) login settings": "Configurer les paramètres de connexion Passkey (WebAuthn)", - "Configure Waffo Pancake hosted checkout integration for USD-priced top-ups": "Configurer l'intégration du parcours de paiement hébergé Waffo Pancake pour les rechargements en USD", - "Configure Waffo payment aggregation platform integration": "Configurer l'intégration de la plateforme d'agrégation de paiement Waffo", "Configure a Creem product for user recharge options.": "Configurez un produit Creem pour les options de recharge utilisateur.", "Configure a custom ratio for when users use a specific token group.": "Configurer un ratio personnalisé lorsque les utilisateurs utilisent un groupe de jetons spécifique.", "Configure a group that users can select when creating API keys.": "Configurer un groupe que les utilisateurs peuvent sélectionner lors de la création de clés API.", @@ -697,21 +745,25 @@ "Configure a payment method for user recharge options.": "Configurer un mode de paiement pour les options de recharge utilisateur.", "Configure a predefined chat link for end users.": "Configurer un lien de chat prédéfini pour les utilisateurs finaux.", "Configure and deploy a new container instance.": "Configurer et déployer une nouvelle instance de conteneur.", + "Configure API documentation links for the dashboard": "Configurer les liens de documentation API pour le tableau de bord", "Configure at:": "Configurer à :", "Configure availability monitoring panel": "Configurer le panneau de surveillance de disponibilité", "Configure available payment methods. Provide a JSON array.": "Configurer les méthodes de paiement disponibles. Fournir un tableau JSON.", "Configure basic system information and branding": "Configurer les informations système de base et l'image de marque", "Configure channel affinity (sticky routing) rules": "Configurer les règles d'affinité de canal (routage persistant)", + "Configure Creem products. Provide a JSON array.": "Configurez les produits Creem. Fournissez un tableau JSON.", "Configure custom OAuth providers for user authentication": "Configurer des fournisseurs OAuth personnalisés pour l'authentification des utilisateurs", "Configure daily check-in rewards for users": "Configurer les récompenses de connexion quotidienne pour les utilisateurs", "Configure discount rates based on recharge amounts": "Configurer les taux de réduction basés sur les montants de recharge", "Configure experimental data export for the dashboard": "Configurer l'exportation de données expérimentales pour le tableau de bord", + "Configure Gemini safety behavior, version overrides, and thinking adapter": "Configurer le comportement de sécurité Gemini, les remplacements de version et l'adaptateur de réflexion", "Configure in your Creem dashboard": "Configurez dans votre tableau de bord Creem", "Configure io.net API key for model deployments": "Configurer la clé API io.net pour les déploiements de modèles", "Configure keyword filtering for prompts and responses.": "Configurer le filtrage par mots-clés pour les invites et les réponses.", "Configure model, caching, and group ratios used for billing": "Configurer les ratios de modèle, de mise en cache et de groupe utilisés pour la facturation", "Configure monitoring status page groups for the dashboard": "Configurer les groupes de pages d'état de surveillance pour le tableau de bord", "Configure outgoing email server for notifications": "Configurer le serveur de messagerie sortant pour les notifications", + "Configure Passkey (WebAuthn) login settings": "Configurer les paramètres de connexion Passkey (WebAuthn)", "Configure password-based login and registration": "Configurer la connexion et l'inscription basées sur un mot de passe", "Configure per-model ratio for image inputs or outputs.": "Configurer le ratio par modèle pour les entrées ou sorties d'images.", "Configure per-tool unit prices ($/1K calls). Per-request models do not incur additional tool fees.": "Définissez le prix unitaire de chaque outil ($/1K appels). Les modèles facturés à la requête n'entraînent pas de frais d'outils supplémentaires.", @@ -727,6 +779,8 @@ "Configure upstream providers and routing.": "Configurer les fournisseurs en amont et le routage.", "Configure upstream worker or proxy service for outbound requests": "Configurer le service de travailleur en amont ou de proxy pour les requêtes sortantes", "Configure user quota allocation and rewards": "Configurer l'allocation de quotas utilisateur et les récompenses", + "Configure Waffo Pancake hosted checkout integration for USD-priced top-ups": "Configurer l'intégration du parcours de paiement hébergé Waffo Pancake pour les rechargements en USD", + "Configure Waffo payment aggregation platform integration": "Configurer l'intégration de la plateforme d'agrégation de paiement Waffo", "Configure xAI Grok model settings": "Configurer les paramètres du modèle xAI Grok", "Configure xAI Grok model specific settings": "Configurer les paramètres spécifiques du modèle xAI Grok", "Configure your account behavior preferences": "Configurer les préférences de comportement de votre compte", @@ -737,22 +791,22 @@ "Confirm Billing Conflicts": "Confirmer les conflits de facturation", "Confirm Changes": "Confirmer les modifications", "Confirm Cleanup": "Confirmer le nettoyage", - "Confirm Creem Purchase": "Confirmer l'achat Creem", - "Confirm New Password": "Confirmer le nouveau mot de passe", - "Confirm Payment": "Confirmer le paiement", - "Confirm Selection": "Confirmer la sélection", - "Confirm Unbind": "Confirmer la dissociation", "Confirm cleanup of inactive disk cache?": "Confirmer le nettoyage du cache disque inactif ?", "Confirm clearing all channel affinity cache": "Confirmer la suppression de tout le cache d'affinité de canal", "Confirm clearing cache for this rule": "Confirmer la suppression du cache de cette règle", + "Confirm Creem Purchase": "Confirmer l'achat Creem", "Confirm delete": "Confirmer la suppression", "Confirm disable": "Confirmer la désactivation", "Confirm enable": "Confirmer l'activation", "Confirm invalidate": "Confirmer l'invalidation", "Confirm log cleanup": "Confirmer le nettoyage des journaux", "Confirm log file cleanup?": "Confirmer le nettoyage des fichiers journaux ?", + "Confirm New Password": "Confirmer le nouveau mot de passe", "Confirm password": "Confirmer le mot de passe", + "Confirm Payment": "Confirmer le paiement", + "Confirm Selection": "Confirmer la sélection", "Confirm settings and finish setup": "Confirmez les paramètres et terminez la configuration", + "Confirm Unbind": "Confirmer la dissociation", "Confirm your identity before removing this Passkey from your account.": "Confirmez votre identité avant de supprimer cette Passkey de votre compte.", "Confirm your identity with Two-factor Authentication before registering a Passkey.": "Confirmez votre identité avec l’authentification à deux facteurs avant d’enregistrer une Passkey.", "Conflict": "Conflit", @@ -763,8 +817,8 @@ "Connection failed": "Connexion échouée", "Connection successful": "Connexion réussie", "Console": "Console", - "Console Area": "Zone console", "Console area": "Zone de console", + "Console Area": "Zone console", "Consume": "Consommation", "Container": "Conteneur", "Container name": "Nom du conteneur", @@ -776,13 +830,13 @@ "Content not found.": "Contenu non trouvé.", "Content not modified!": "Contenu non modifié !", "Continue": "Continuer", + "Continue with {{name}}": "Continuer avec {{name}}", "Continue with Discord": "Continuer avec Discord", "Continue with GitHub": "Continuer avec GitHub", "Continue with LinuxDO": "Continuer avec LinuxDO", "Continue with OIDC": "Continuer avec OIDC", "Continue with Telegram": "Continuer avec Telegram", "Continue with WeChat": "Continuer avec WeChat", - "Continue with {{name}}": "Continuer avec {{name}}", "Control log retention and clean historical data.": "Contrôler la rétention des journaux et nettoyer les données historiques.", "Control passthrough behavior and connection keep-alive settings": "Contrôler le comportement de passthrough et les paramètres de maintien de connexion", "Control request frequency to prevent abuse and manage system load.": "Contrôler la fréquence des requêtes pour prévenir les abus et gérer la charge système.", @@ -794,32 +848,31 @@ "Convert string to lowercase": "Convertir la chaîne en minuscules", "Convert string to uppercase": "Convertir la chaîne en majuscules", "Copied": "Copié", - "Copied to clipboard": "Copié dans le presse-papiers", "Copied {{count}} key(s)": "{{count}} clé(s) copiée(s)", - "Copied!": "Copié !", + "Copied to clipboard": "Copié dans le presse-papiers", "Copied: {{model}}": "Copié : {{model}}", + "Copied!": "Copié !", "Copy": "Copier", - "Copy API key": "Copier la clé API", + "Copy a request header": "Copier un en-tête de requête", "Copy All": "Tout copier", + "Copy all backup codes": "Copier tous les codes de sauvegarde", "Copy All Codes": "Copier tous les codes", + "Copy API key": "Copier la clé API", + "Copy authorization link": "Copier le lien d'autorisation", "Copy Channel": "Copier le canal", + "Copy code": "Copier le code", "Copy Connection Info": "Copier les infos de connexion", + "Copy failed": "Copie échouée", "Copy Field": "Copier le champ", "Copy Header": "Copier l'en-tête", "Copy Key": "Copier la clé", "Copy Link": "Copier le lien", - "Copy Request Header": "Copier un en-tête de requête", - "Copy URL": "Copier l'URL", - "Copy a request header": "Copier un en-tête de requête", - "Copy all backup codes": "Copier tous les codes de sauvegarde", - "Copy authorization link": "Copier le lien d'autorisation", - "Copy code": "Copier le code", - "Copy failed": "Copie échouée", "Copy model name": "Copier le nom du modèle", "Copy model names": "Copier les noms des modèles", "Copy prompt": "Copier le prompt", "Copy redemption code": "Copier le code de rachat", "Copy referral link": "Copier le lien de parrainage", + "Copy Request Header": "Copier un en-tête de requête", "Copy secret key": "Copier la clé secrète", "Copy selected codes": "Copier les codes sélectionnés", "Copy selected keys": "Copier les clés sélectionnées", @@ -828,42 +881,44 @@ "Copy this prompt and send it to an LLM (e.g. ChatGPT / Claude) to help design your billing expression.": "Copiez ce prompt et envoyez-le à un LLM (ex. ChatGPT / Claude) pour vous aider à concevoir votre expression de facturation.", "Copy to clipboard": "Copier dans le presse-papiers", "Copy token": "Copier le Jeton", + "Copy URL": "Copier l'URL", "Core Configuration": "Configuration principale", "Core Features": "Fonctionnalités principales", "Cost": "Coût", - "Cost Tracking": "Suivi des coûts", "Cost in USD per request, regardless of tokens used.": "Coût en USD par requête, quel que soit le nombre de jetons utilisés.", + "Cost Tracking": "Suivi des coûts", "Count must be between {{min}} and {{max}}": "Le nombre doit être compris entre {{min}} et {{max}}", "Coze": "Coze", + "CPU Threshold (%)": "Seuil CPU (%)", "Create": "Créer", - "Create API Key": "Créer une clé API", - "Create Channel": "Créer un canal", - "Create Code": "Créer un code", - "Create Model": "Créer un modèle", - "Create Plan": "Créer un plan", - "Create Prefill Group": "Créer un groupe de préremplissage", - "Create Provider": "Créer un fournisseur", - "Create Redemption Code": "Créer un code d'échange", - "Create Vendor": "Créer un fournisseur", "Create a copy of:": "Créer une copie de :", "Create a new user group to configure ratio overrides for.": "Créer un nouveau groupe d'utilisateurs pour configurer les remplacements de ratio.", "Create account": "Créer un compte", "Create an account": "Créer un compte", "Create and review invite or credit codes.": "Créer et examiner les codes d'invitation ou de crédit.", + "Create API Key": "Créer une clé API", "Create cache": "Créer le cache", "Create cache ratio": "Créer un ratio de cache", + "Create Channel": "Créer un canal", + "Create Code": "Créer un code", "Create credentials for the root user": "Créer les identifiants pour le compte administrateur", "Create deployment": "Créer un déploiement", + "Create Model": "Créer un modèle", "Create multiple API keys at once (random suffix will be added to names)": "Créer plusieurs clés API en une fois (un suffixe aléatoire sera ajouté aux noms)", "Create multiple channels from multiple keys": "Créer plusieurs canaux à partir de plusieurs clés", "Create multiple redemption codes at once (1-100)": "Créer plusieurs codes de rachat à la fois (1-100)", "Create new subscription plan": "Créer un nouveau plan d'abonnement", "Create or update frequently asked questions for users": "Créer ou mettre à jour les questions fréquemment posées aux utilisateurs", "Create or update system announcements for the dashboard": "Créer ou mettre à jour les annonces système pour le tableau de bord", + "Create Plan": "Créer un plan", + "Create Prefill Group": "Créer un groupe de préremplissage", + "Create Provider": "Créer un fournisseur", + "Create Redemption Code": "Créer un code d'échange", "Create request parameter override rules with a visual editor or raw JSON.": "Créer des règles de substitution de paramètres avec l'éditeur visuel ou le JSON brut.", "Create request parameter override rules without editing raw JSON.": "Créez des règles de remplacement des paramètres de requête sans modifier le JSON brut.", "Create reusable bundles of models, tags, endpoints, and user groups to speed up configuration elsewhere in the console.": "Créez des ensembles réutilisables de modèles, de balises, de points de terminaison et de groupes d'utilisateurs pour accélérer la configuration ailleurs dans la console.", "Create succeeded": "Création réussie", + "Create Vendor": "Créer un fournisseur", "Create your first group to reuse model, tag, or endpoint selections anywhere in the dashboard.": "Créez votre premier groupe pour réutiliser les sélections de modèles, de balises ou de points de terminaison n'importe où dans le tableau de bord.", "Create, revoke, and audit API tokens.": "Créer, révoquer et auditer les jetons API.", "Created": "Créé", @@ -883,40 +938,40 @@ "Current Balance": "Solde actuel", "Current Billing": "Facturation actuelle", "Current Cache Size": "Taille actuelle du cache", - "Current Level Only": "Niveau actuel uniquement", - "Current Password": "Mot de passe actuel", - "Current Price": "Prix actuel", - "Current Value": "Valeur actuelle", "Current email: {{email}}. Enter a new email to change.": "E-mail actuel : {{email}}. Saisissez un nouvel e-mail pour le modifier.", "Current key": "Clé actuelle", "Current legacy JSON is invalid, cannot append": "Le JSON ancien format actuel n'est pas valide, impossible d'ajouter", + "Current Level Only": "Niveau actuel uniquement", "Current models for the longest channel in this tag. May not include all models from all channels.": "Modèles actuels pour le canal le plus long de cette balise. Peut ne pas inclure tous les modèles de tous les canaux.", + "Current Password": "Mot de passe actuel", + "Current Price": "Prix actuel", "Current quota": "Quota actuel", + "Current Value": "Valeur actuelle", "Current version": "Version actuelle", "Current:": "Actuel :", "Custom": "Personnalisé", "Custom (seconds)": "Personnalisé (secondes)", + "Custom Amount": "Montant personnalisé", "Custom API base URL. For official channels, New API has built-in addresses. Only fill this for third-party proxy sites or special endpoints. Do not add /v1 or trailing slash.": "URL de base API personnalisée. Pour les canaux officiels, New API dispose d'adresses intégrées. Ne remplissez ceci que pour les sites proxy tiers ou les points de terminaison spéciaux. N'ajoutez pas /v1 ou de barre oblique finale.", "Custom API base URL. Leave empty to use provider default.": "URL de base API personnalisée. Laissez vide pour utiliser la valeur par défaut du fournisseur.", - "Custom Amount": "Montant personnalisé", + "Custom color": "Couleur personnalisée", "Custom CSS": "Custom CSS", "Custom Currency": "Devise personnalisée", "Custom Currency Symbol": "Symbole de devise personnalisé", - "Custom Error Response": "Réponse d'erreur personnalisée", - "Custom Home Page": "Page d'accueil personnalisée", - "Custom OAuth": "OAuth personnalisé", - "Custom OAuth Providers": "Fournisseurs OAuth personnalisés", - "Custom Seconds": "Secondes personnalisées", - "Custom Time Range": "Plage horaire personnalisée", - "Custom Zoom": "Zoom personnalisé", - "Custom color": "Couleur personnalisée", "Custom currency symbol is required": "Le symbole de devise personnalisé est requis", "Custom database driver detected.": "Pilote de base de données personnalisé détecté.", + "Custom Error Response": "Réponse d'erreur personnalisée", + "Custom Home Page": "Page d'accueil personnalisée", "Custom message shown when access is denied": "Message personnalisé affiché lorsque l'accès est refusé", "Custom model (comma-separated)": "Modèle personnalisé (séparé par des virgules)", "Custom module": "Module personnalisé", "Custom multipliers when specific user groups use specific token groups. Example: VIP users get 0.9x rate when using \"edit_this\" group tokens.": "Multiplicateurs personnalisés lorsque des groupes d'utilisateurs spécifiques utilisent des groupes de jetons spécifiques. Exemple : les utilisateurs VIP obtiennent un taux de 0,9x lorsqu'ils utilisent les jetons du groupe \"edit_this\".", + "Custom OAuth": "OAuth personnalisé", + "Custom OAuth Providers": "Fournisseurs OAuth personnalisés", + "Custom Seconds": "Secondes personnalisées", "Custom sidebar section": "Section de barre latérale personnalisée", + "Custom Time Range": "Plage horaire personnalisée", + "Custom Zoom": "Zoom personnalisé", "Customize sidebar display content": "Personnaliser le contenu affiché dans la barre latérale", "Daily": "Quotidien", "Daily Check-in": "Connexion quotidienne", @@ -930,74 +985,76 @@ "Data management and log viewing": "Gestion des données et consultation des journaux", "Database": "Base de données", "Database check": "Vérification de la base de données", - "Date Range": "Plage de dates", "Date and time when this announcement should be displayed": "Date et heure auxquelles cette annonce doit être affichée", + "Date Range": "Plage de dates", "Day": "Jour", + "days": "jours", "Days to Retain": "Jours à conserver", "Deducted by subscription": "Déduit par abonnement", "DeepSeek": "DeepSeek", + "default": "par défaut", "Default": "Par défaut", "Default (New Frontend)": "Par défaut (Nouveau frontend)", "Default API Version *": "Version API par défaut *", "Default API version for this channel": "Version API par défaut pour ce canal", "Default Collapse Sidebar": "Réduire la barre latérale par défaut", - "Default Max Tokens": "Jetons max par défaut", - "Default Responses API version, if empty, will use the API version above": "Version API des réponses par défaut, si vide, utilisera la version API ci-dessus", - "Default TTL (seconds)": "TTL par défaut (secondes)", "Default consumption chart": "Graphique de consommation par défaut", + "Default Max Tokens": "Jetons max par défaut", "Default model call chart": "Graphique d'appels de modèle par défaut", "Default range": "Plage par défaut", + "Default Responses API version, if empty, will use the API version above": "Version API des réponses par défaut, si vide, utilisera la version API ci-dessus", "Default system prompt for this channel": "Invite système par défaut pour ce canal", "Default time granularity": "Granularité temporelle par défaut", "Default to auto groups": "Par défaut aux groupes automatiques", + "Default TTL (seconds)": "TTL par défaut (secondes)", "Defaults to the wallet page when empty": "Si vide, la page portefeuille est utilisée par défaut", "Define API endpoints for this model (JSON format)": "Définir les points de terminaison API pour ce modèle (format JSON)", "Define endpoint mappings for each provider.": "Définissez les mappages d'endpoints pour chaque fournisseur.", "Define per-group rules to add, remove, or append selectable groups for specific user groups.": "Définir des règles par groupe pour ajouter, supprimer ou ajouter des groupes sélectionnables pour des groupes d'utilisateurs spécifiques.", "Delete": "Supprimer", "Delete (": "Supprimer (", + "Delete {{count}} API key(s)?": "Supprimer {{count}} clé(s) API ?", + "Delete a runtime request header": "Supprimer un en-tête de requête à l'exécution", "Delete Account": "Supprimer le compte", "Delete All Disabled": "Supprimer tout ce qui est désactivé", "Delete All Disabled Channels?": "Supprimer tous les canaux désactivés ?", "Delete Auto-Disabled": "Supprimer les désactivés automatiquement", "Delete Channel": "Supprimer le canal", "Delete Channels?": "Supprimer les canaux ?", + "Delete condition": "Supprimer la condition", "Delete Condition": "Supprimer la condition", + "Delete failed": "Échec de la suppression", "Delete Field": "Supprimer le champ", + "Delete group": "Supprimer le groupe", "Delete Header": "Supprimer l'en-tête", "Delete Invalid": "Supprimer les invalides", + "Delete invalid codes": "Supprimer les codes invalides", + "Delete invalid codes (used/disabled/expired)": "Supprimer les codes invalides (utilisés/désactivés/expirés)", + "Delete invalid redemption codes": "Supprimer les codes de rachat invalides", "Delete Invalid Redemption Codes?": "Supprimer les codes de rachat invalides ?", + "Delete logs": "Supprimer les journaux", "Delete Model": "Supprimer le modèle", "Delete Models?": "Supprimer les modèles ?", "Delete Provider": "Supprimer le fournisseur", "Delete Request Header": "Supprimer un en-tête de requête", - "Delete a runtime request header": "Supprimer un en-tête de requête à l'exécution", - "Delete condition": "Supprimer la condition", - "Delete failed": "Échec de la suppression", - "Delete group": "Supprimer le groupe", - "Delete invalid codes": "Supprimer les codes invalides", - "Delete invalid codes (used/disabled/expired)": "Supprimer les codes invalides (utilisés/désactivés/expirés)", - "Delete invalid redemption codes": "Supprimer les codes de rachat invalides", - "Delete logs": "Supprimer les journaux", "Delete selected API keys": "Supprimer les clés API sélectionnées", "Delete selected channels": "Supprimer les canaux sélectionnés", "Delete selected models": "Supprimer les modèles sélectionnés", - "Delete {{count}} API key(s)?": "Supprimer {{count}} clé(s) API ?", "Deleted": "Supprimé", "Deleted successfully": "Supprimé avec succès", "Deleting will permanently remove this subscription record (including benefit details). Continue?": "La suppression supprimera définitivement cet enregistrement d'abonnement (y compris les détails des avantages). Continuer ?", "Deleting...": "Suppression...", - "Demo Site Mode": "Mode Site de démonstration", "Demo site": "Site de démonstration", "Demo site mode": "Mode site de démonstration", + "Demo Site Mode": "Mode Site de démonstration", "Demote": "Rétrograder", "Deploy your own gateway and start routing requests through your configured upstream services.": "Déployez votre propre passerelle et commencez à router les requêtes via vos services en amont configurés.", - "Deployment ID": "ID du déploiement", - "Deployment Region *": "Région de déploiement *", "Deployment created successfully": "Déploiement créé avec succès", "Deployment details": "Détails du déploiement", + "Deployment ID": "ID du déploiement", "Deployment location": "Emplacement du déploiement", "Deployment logs": "Journaux de déploiement", + "Deployment Region *": "Région de déploiement *", "Deployment requested": "Déploiement demandé", "Deployments": "Déploiements", "Desc": "Description", @@ -1007,6 +1064,7 @@ "Description": "Description", "Description is required": "La description est requise", "Designed and Developed by": "Conçu et développé par", + "designed for scale": "conçu pour la scalabilité", "Destroyed": "Détruit", "Detailed request logs for investigations.": "Journaux détaillés des requêtes pour les enquêtes.", "Details": "Détails", @@ -1027,7 +1085,6 @@ "Disable": "Désactiver", "Disable 2FA": "Désactiver la 2FA", "Disable All": "Désactiver tout", - "Disable Two-Factor Authentication": "Désactiver l'authentification à deux facteurs", "Disable on failure": "Désactiver en cas d'échec", "Disable selected channels": "Désactiver les canaux sélectionnés", "Disable selected models": "Désactiver les modèles sélectionnés", @@ -1035,40 +1092,42 @@ "Disable thinking processing models": "Désactiver les modèles de traitement de la pensée", "Disable this key?": "Désactiver cette clé ?", "Disable threshold (seconds)": "Seuil de désactivation (secondes)", + "Disable Two-Factor Authentication": "Désactiver l'authentification à deux facteurs", + "disabled": "désactivé", "Disabled": "Désactivé", + "Disabled all channels with tag: {{tag}}": "Tous les canaux avec le tag {{tag}} ont été désactivés", "Disabled Reason": "Raison de la désactivation", "Disabled Time": "Heure de désactivation", - "Disabled all channels with tag: {{tag}}": "Tous les canaux avec le tag {{tag}} ont été désactivés", "Disabling...": "Désactivation en cours...", "Discord": "Discord", "Discount": "Remise", - "Discount Rate": "Taux de réduction", - "Discount Rate:": "Taux de réduction :", "Discount map by recharge amount (JSON object)": "Mappage des réductions par montant de recharge (objet JSON)", - "Discount rate must be greater than 0": "Le taux de remise doit être supérieur à 0", + "Discount Rate": "Taux de réduction", "Discount rate must be ≤ 1": "Le taux de remise doit être ≤ 1", + "Discount rate must be greater than 0": "Le taux de remise doit être supérieur à 0", + "Discount Rate:": "Taux de réduction :", "Discount ratio for cache hits.": "Ratio de réduction pour les accès au cache.", "Discouraged": "Déconseillé", "Discover curated AI models, compare pricing and capabilities, and choose the right model for every scenario.": "Découvrez une sélection de modèles IA, comparez les tarifs et les capacités, et choisissez le modèle adapté à chaque scénario.", "Discovering...": "Découverte en cours...", + "Disk cache cleared": "Cache disque vidé", "Disk Cache Settings": "Paramètres du cache disque", "Disk Cache Threshold (MB)": "Seuil du cache disque (Mo)", + "Disk cache, system performance monitoring, and operation statistics": "Cache disque, surveillance des performances système et statistiques opérationnelles", "Disk Hits": "Hits disque", "Disk Threshold (%)": "Seuil disque (%)", - "Disk cache cleared": "Cache disque vidé", - "Disk cache, system performance monitoring, and operation statistics": "Cache disque, surveillance des performances système et statistiques opérationnelles", - "Display Mode": "Mode d'affichage", - "Display Name": "Nom d'affichage", - "Display Name Field": "Champ de nom d'affichage", - "Display Options": "Options d'affichage", - "Display Token Statistics": "Afficher les statistiques des jetons", "Display in Currency": "Afficher en devise", + "Display Mode": "Mode d'affichage", "Display name": "Nom d'affichage", + "Display Name": "Nom d'affichage", "Display name and email used in outgoing messages": "Nom d'affichage et e-mail utilisés dans les messages sortants", + "Display Name Field": "Champ de nom d'affichage", "Display name for this chat client.": "Nom d'affichage pour ce client de chat.", "Display name for this monitoring group (max 50 characters)": "Nom d'affichage pour ce groupe de surveillance (50 caractères max)", "Display name for this payment method.": "Nom d'affichage pour ce mode de paiement.", "Display name shown to users.": "Nom d'affichage affiché aux utilisateurs.", + "Display Options": "Options d'affichage", + "Display Token Statistics": "Afficher les statistiques des jetons", "Displays the mobile sidebar.": "Affiche la barre latérale mobile.", "Do not over-trust this feature. IP may be spoofed. Please use with nginx, CDN and other gateways.": "Ne faites pas trop confiance à cette fonctionnalité. L'IP peut être usurpée. Veuillez l'utiliser avec nginx, CDN et autres passerelles.", "Do not repeat check-in; only once per day": "Ne répétez pas le check-in ; une seule fois par jour", @@ -1077,6 +1136,7 @@ "Docs": "Documents", "Documentation Link": "Lien de la documentation", "Documentation or external knowledge base.": "Documentation ou base de connaissances externe.", + "does not exist or might have been removed.": "n'existe pas ou a peut-être été supprimé.", "Domain": "Domaine", "Domain Filter Mode": "Mode de filtre de domaine", "Don't have an account?": "Vous n'avez pas de compte ?", @@ -1088,8 +1148,8 @@ "Download": "Télécharger", "Draw": "Dessin", "Drawing": "Dessin", - "Drawing Logs": "Journaux de dessin", "Drawing logs": "Journaux de dessin", + "Drawing Logs": "Journaux de dessin", "Drawing task records": "Historique des tâches de dessin", "Duplicate": "Dupliquer", "Duration": "Durée", @@ -1098,103 +1158,148 @@ "Duration Unit": "Unité de durée", "Duration Value": "Valeur de durée", "Dynamic Pricing": "Tarification dynamique", - "Each backup code can only be used once.": "Chaque code de sauvegarde ne peut être utilisé qu'une seule fois.", - "Each item must be an object with a single key-value pair.": "Chaque élément doit être un objet avec une seule paire clé-valeur.", - "Each item must have exactly one key-value pair.": "Chaque élément doit avoir exactement une paire clé-valeur.", - "Each line represents one keyword. Leave blank to disable the list but keep the switch states.": "Chaque ligne représente un mot-clé. Laissez vide pour désactiver la liste mais conserver les états des interrupteurs.", - "Each tier supports 0~2 conditions (over len, p, c); the last tier is the catch-all without conditions. Use len (full input length, including cache hits) for tier conditions to avoid mis-routing when cache hits reduce p.": "Chaque palier accepte 0 à 2 conditions (sur len, p, c) ; le dernier palier est le filet de sécurité sans condition. Utilisez len (longueur d'entrée complète, y compris les cache hits) pour les conditions de palier afin d'éviter les routages erronés lorsque les cache hits réduisent p.", - "Earn rewards when your referrals add funds. Transfer accumulated rewards to your balance anytime.": "Gagnez des récompenses lorsque vos filleuls ajoutent des fonds. Transférez les récompenses accumulées à votre solde à tout moment.", - "Edit": "Modifier", - "Edit API Shortcut": "Modifier le raccourci API", - "Edit Announcement": "Modifier l'annonce", + "e.g. ¥ or HK$": "par ex. ¥ ou HK$", + "e.g. 401, 403, 429, 500-599": "ex. 401, 403, 429, 500-599", + "e.g. 8 means 1 USD = 8 units": "par ex. 8 signifie 1 USD = 8 unités", + "e.g. Basic Plan": "ex. Plan de base", + "e.g. Clean tool parameters to avoid upstream validation errors": "ex. Nettoyer les paramètres d'outils pour éviter les erreurs de validation en amont", + "e.g. example.com": "par ex. example.com", + "e.g. llama3.1:8b": "p. ex. llama3.1:8b", + "e.g. My GitLab": "par ex. Mon GitLab", + "e.g. my-gitlab": "par ex. mon-gitlab", + "e.g. New API Console": "par ex. console New API", + "e.g. openid profile email": "par ex. openid profile email", + "e.g. Suitable for light usage": "ex. Adapté à une utilisation légère", + "e.g. This request does not meet access policy": "ex. Cette requête ne satisfait pas la politique d'accès", + "e.g., #3b82f6,#8b5cf6": "e.g., #3b82f6,#8b5cf6", + "e.g., #ff0000,#0000ff": "e.g., #ff0000,#0000ff", + "e.g., #ffffff or white": "e.g., #ffffff or white", + "e.g., 0.95": "par ex., 0.95", + "e.g., 100": "par ex., 100", + "e.g., 123456": "par ex., 123456", + "e.g., 2025-04-01-preview": "par ex., 2025-04-01-preview", + "e.g., 50": "par ex., 50", + "e.g., 500000": "p. ex., 500000", + "e.g., 7342866812345": "par ex., 7342866812345", + "e.g., 8 means 8 local currency per USD": "par ex., 8 signifie 8 unités de monnaie locale par USD", + "e.g., Alipay, WeChat": "par ex., Alipay, WeChat", + "e.g., Basic Package": "p. ex., Forfait de base", + "e.g., CN2 GIA": "par ex., CN2 GIA", + "e.g., Core APIs, OpenAI, Claude": "par ex., API principales, OpenAI, Claude", + "e.g., d6b5da8hk1awo8nap34ube6gh": "par ex., d6b5da8hk1awo8nap34ube6gh", + "e.g., default, vip, premium": "par ex., par défaut, vip, premium", + "e.g., gpt-4, claude-3": "ex. gpt-4, claude-3", + "e.g., gpt-4.1-nano,regex:^claude-.*$,regex:^sora-.*$": "ex. : gpt-4.1-nano,regex:^claude-.*$,regex:^sora-.*$", + "e.g., https://api.example.com (path before /suno)": "par ex., https://api.example.com (chemin avant /suno)", + "e.g., https://api.openai.com/v1/chat/completions": "par ex., https://api.openai.com/v1/chat/completions", + "e.g., https://ark.cn-beijing.volces.com": "p. ex., https://ark.cn-beijing.volces.com", + "e.g., https://docs-test-001.openai.azure.com": "par ex., https://docs-test-001.openai.azure.com", + "e.g., https://fastgpt.run/api/openapi": "par ex., https://fastgpt.run/api/openapi", + "e.g., OpenAI GPT-4 Production": "p. ex., OpenAI GPT-4 Production", + "e.g., preview": "par ex., prévisualisation", + "e.g., prod_xxx": "p. ex., prod_xxx", + "e.g., Recommended for China Mainland Users": "par ex., Recommandé pour les utilisateurs de Chine continentale", + "e.g., us-central1 or JSON format for model-specific regions": "par ex., us-central1 ou format JSON pour les régions spécifiques au modèle", + "e.g., v2.1": "par ex., v2.1", + "Each backup code can only be used once.": "Chaque code de sauvegarde ne peut être utilisé qu'une seule fois.", + "Each item must be an object with a single key-value pair.": "Chaque élément doit être un objet avec une seule paire clé-valeur.", + "Each item must have exactly one key-value pair.": "Chaque élément doit avoir exactement une paire clé-valeur.", + "Each line represents one keyword. Leave blank to disable the list but keep the switch states.": "Chaque ligne représente un mot-clé. Laissez vide pour désactiver la liste mais conserver les états des interrupteurs.", + "Each tier supports 0~2 conditions (over len, p, c); the last tier is the catch-all without conditions. Use len (full input length, including cache hits) for tier conditions to avoid mis-routing when cache hits reduce p.": "Chaque palier accepte 0 à 2 conditions (sur len, p, c) ; le dernier palier est le filet de sécurité sans condition. Utilisez len (longueur d'entrée complète, y compris les cache hits) pour les conditions de palier afin d'éviter les routages erronés lorsque les cache hits réduisent p.", + "Earn rewards when your referrals add funds. Transfer accumulated rewards to your balance anytime.": "Gagnez des récompenses lorsque vos filleuls ajoutent des fonds. Transférez les récompenses accumulées à votre solde à tout moment.", + "Edit": "Modifier", + "Edit {{title}}": "Modifier {{title}}", + "Edit all channels with tag:": "Modifier tous les canaux avec l'étiquette :", + "Edit Announcement": "Modifier l'annonce", + "Edit API Shortcut": "Modifier le raccourci API", "Edit Channel": "Modifier le canal", + "Edit chat preset": "Modifier le préréglage de chat", + "Edit discount tier": "Modifier le palier de remise", "Edit FAQ": "Modifier la FAQ", + "Edit group rate limit": "Modifier la limite de taux de groupe", "Edit JSON object directly. Suitable for simple parameter overrides.": "Modifier l'objet JSON directement. Adapté aux substitutions de paramètres simples.", "Edit JSON text directly. Format will be validated on save.": "Modifier le texte JSON directement. Le format sera validé à l'enregistrement.", + "Edit model": "Modifier le modèle", "Edit Model": "Modifier le modèle", "Edit OAuth Provider": "Modifier le fournisseur OAuth", + "Edit payment method": "Modifier le mode de paiement", "Edit Prefill Group": "Modifier le groupe de préremplissage", + "Edit product": "Modifier le produit", + "Edit ratio override": "Modifier le remplacement de ratio", "Edit Rule": "Modifier la règle", + "Edit selectable group": "Modifier le groupe sélectionnable", "Edit Tag": "Modifier l'étiquette", "Edit Tag:": "Modifier l'étiquette :", "Edit Uptime Kuma Group": "Modifier le groupe Uptime Kuma", "Edit Vendor": "Modifier le fournisseur", - "Edit all channels with tag:": "Modifier tous les canaux avec l'étiquette :", - "Edit chat preset": "Modifier le préréglage de chat", - "Edit discount tier": "Modifier le palier de remise", - "Edit group rate limit": "Modifier la limite de taux de groupe", - "Edit model": "Modifier le modèle", - "Edit payment method": "Modifier le mode de paiement", - "Edit product": "Modifier le produit", - "Edit ratio override": "Modifier le remplacement de ratio", - "Edit selectable group": "Modifier le groupe sélectionnable", - "Edit {{title}}": "Modifier {{title}}", + "edit_this": "modifier_ceci", "Editor mode": "Mode éditeur", "Effect": "Effect", "Email": "E-mail", "Email (required for verification)": "E-mail (requis pour la vérification)", "Email Address": "Adresse e-mail", "Email Alias Restriction": "Restriction d'alias d'e-mail", + "Email bound successfully!": "E-mail lié avec succès !", "Email Domain Restriction": "Restriction de domaine d'e-mail", "Email Domain Whitelist": "Liste blanche de domaines d'e-mail", "Email Field": "Champ d'e-mail", "Email Verification": "Vérification d'e-mail", - "Email bound successfully!": "E-mail lié avec succès !", "Embeddings": "Embeddings", "Empty value will be saved as {}.": "Une valeur vide sera enregistrée comme {}.", "Enable": "Activer", "Enable 2FA": "Activer 2FA", "Enable All": "Tout activer", + "Enable check-in feature": "Activer la fonction de connexion", "Enable Data Dashboard": "Activer le tableau de bord des données", + "Enable demo mode with limited functionality": "Activer le mode démo avec des fonctionnalités limitées", "Enable Discord OAuth": "Activer OAuth Discord", "Enable Disk Cache": "Activer le cache disque", + "Enable drawing features": "Activer les fonctionnalités de dessin", + "Enable filtering": "Activer le filtrage", "Enable FunctionCall thoughtSignature Fill": "Activer le remplissage de thoughtSignature pour FunctionCall", "Enable GitHub OAuth": "Activer GitHub OAuth", "Enable Groups": "Activer les groupes", - "Enable LinuxDO OAuth": "Activer LinuxDO OAuth", - "Enable OIDC": "Activer OIDC", - "Enable Passkey": "Activer Passkey", - "Enable Performance Monitoring": "Activer la surveillance des performances", - "Enable Request Passthrough": "Activer le Passthrough de requêtes", - "Enable SSL/TLS": "Activer SSL/TLS", - "Enable SSRF Protection": "Activer la protection SSRF", - "Enable Telegram OAuth": "Activer Telegram OAuth", - "Enable Turnstile": "Activer Turnstile", - "Enable Two-factor Authentication or Passkey in your profile to unlock sensitive operations.": "Activez l'authentification à deux facteurs ou Passkey dans votre profil pour déverrouiller les opérations sensibles.", - "Enable Waffo": "Activer Waffo", - "Enable Waffo Pancake": "Activer Waffo Pancake", - "Enable WeChat Auth": "Activer l'authentification WeChat", - "Enable check-in feature": "Activer la fonction de connexion", - "Enable demo mode with limited functionality": "Activer le mode démo avec des fonctionnalités limitées", - "Enable drawing features": "Activer les fonctionnalités de dessin", - "Enable filtering": "Activer le filtrage", "Enable if this is an OpenRouter enterprise account with special response format": "Activer si c'est un compte d'entreprise OpenRouter avec un format de réponse spécial", "Enable io.net deployments": "Activer les déploiements io.net", "Enable io.net model deployment service in console": "Activer le service de déploiement de modèles io.net dans la console", + "Enable LinuxDO OAuth": "Activer LinuxDO OAuth", + "Enable OIDC": "Activer OIDC", "Enable or disable this channel": "Activer ou désactiver ce canal", "Enable or disable this model": "Activer ou désactiver ce modèle", "Enable or disable top navigation modules globally.": "Activer ou désactiver globalement les modules de navigation supérieure.", + "Enable Passkey": "Activer Passkey", + "Enable Performance Monitoring": "Activer la surveillance des performances", "Enable rate limiting": "Activer la limitation de débit", + "Enable Request Passthrough": "Activer le Passthrough de requêtes", "Enable selected channels": "Activer les canaux sélectionnés", "Enable selected models": "Activer les modèles sélectionnés", + "Enable SSL/TLS": "Activer SSL/TLS", + "Enable SSRF Protection": "Activer la protection SSRF", "Enable streaming mode for the test request.": "Activer le mode streaming pour la requête de test.", + "Enable Telegram OAuth": "Activer Telegram OAuth", "Enable test mode for Creem payments": "Activer le mode test pour les paiements Creem", "Enable this key?": "Activer cette clé ?", + "Enable Turnstile": "Activer Turnstile", + "Enable Two-factor Authentication or Passkey in your profile to unlock sensitive operations.": "Activez l'authentification à deux facteurs ou Passkey dans votre profil pour déverrouiller les opérations sensibles.", "Enable unlimited quota for this API key": "Activer le quota illimité pour cette clé API", "Enable violation deduction": "Activer la déduction pour violation", + "Enable Waffo": "Activer Waffo", + "Enable Waffo Pancake": "Activer Waffo Pancake", + "Enable WeChat Auth": "Activer l'authentification WeChat", "Enable when proxying workers that fetch images over HTTP.": "Activer lors de la mise en proxy des workers qui récupèrent des images via HTTP.", "Enabled": "Activé", - "Enabled Status": "Statut activé", "Enabled all channels with tag: {{tag}}": "Tous les canaux avec le tag {{tag}} ont été activés", + "Enabled Status": "Statut activé", "Enabling...": "Activation en cours...", "End": "End", + "End color": "Couleur de fin", "End Error": "Erreur finale", "End Reason": "Raison de fin", "End Time": "Heure de fin", "Endpoint": "Point d'accès", + "Endpoint config": "Configuration de l'endpoint", "Endpoint Configuration": "Configuration du point de terminaison", "Endpoint Type": "Type de point de terminaison", - "Endpoint config": "Configuration de l'endpoint", "Endpoint:": "Point de terminaison :", "Endpoints": "Points de terminaison", "English": "Anglais", @@ -1203,34 +1308,33 @@ "Ensure the string has a specified prefix": "S'assurer que la chaîne a un préfixe spécifié", "Ensure the string has a specified suffix": "S'assurer que la chaîne a un suffixe spécifié", "Enter 6-digit code": "Saisir le code à 6 chiffres", - "Enter API Key": "Saisir la clé API", - "Enter API Key, format: APIKey|Region": "Entrez la clé API, format : APIKey|Region", - "Enter API Key, one per line, format: APIKey|Region": "Entrez la clé API, une par ligne, format : APIKey|Region", - "Enter Completion price to calculate ratio": "Saisir le prix Completion pour calculer le ratio", - "Enter Creem API key": "Saisir la clé API Creem", - "Enter HTML code (e.g.,

About us...

) or a URL (e.g., https://example.com) to embed as iframe": "Saisissez le code HTML (par exemple,

À propos de nous...

) ou une URL (par exemple, https://example.com) à intégrer en tant qu'iframe", - "Enter Input price to calculate ratio": "Saisir le prix Input pour calculer le ratio", - "Enter JSON to override request headers": "Entrez du JSON pour remplacer les en-têtes", - "Enter URL...": "Saisir l'URL...", "Enter a name": "Saisir un nom", "Enter a new name": "Entrez un nouveau nom", "Enter a positive or negative amount to adjust the quota": "Saisir un montant positif ou négatif pour ajuster le quota", "Enter a valid email or leave blank": "Entrez un e-mail valide ou laissez vide", "Enter a value and press Enter": "Saisir une valeur et appuyer sur Entrée", - "Enter amount in tokens": "Entrez le montant en tokens", "Enter amount in {{currency}}": "Entrez le montant en {{currency}}", + "Enter amount in tokens": "Entrez le montant en tokens", "Enter announcement content (supports Markdown & HTML)": "Saisir le contenu de l'annonce (prend en charge Markdown et HTML)", "Enter announcement content (supports Markdown/HTML)": "Saisir le contenu de l'annonce (prend en charge Markdown/HTML)", + "Enter API Key": "Saisir la clé API", + "Enter API Key, format: APIKey|Region": "Entrez la clé API, format : APIKey|Region", + "Enter API Key, one per line, format: APIKey|Region": "Entrez la clé API, une par ligne, format : APIKey|Region", "Enter application token": "Saisir le jeton d'application", "Enter authenticator code": "Saisir le code de l'authentificateur", "Enter backup code (e.g., CAWD-OQDV)": "Saisir le code de secours (par exemple, CAWD-OQDV)", "Enter banner content to display at the top of the page": "Enter banner content to display at the top of the page", "Enter code": "Saisir le code", "Enter code or backup code": "Saisir le code ou le code de secours", + "Enter Completion price to calculate ratio": "Saisir le prix Completion pour calculer le ratio", + "Enter Creem API key": "Saisir la clé API Creem", "Enter custom API endpoint URL": "Saisir l'URL du point de terminaison API personnalisé", "Enter custom CSS...": "Enter custom CSS...", "Enter deployment region or JSON mapping:": "Saisir la région de déploiement ou le mappage JSON :", "Enter display name": "Saisir le nom d'affichage", + "Enter HTML code (e.g.,

About us...

) or a URL (e.g., https://example.com) to embed as iframe": "Saisissez le code HTML (par exemple,

À propos de nous...

) ou une URL (par exemple, https://example.com) à intégrer en tant qu'iframe", + "Enter Input price to calculate ratio": "Saisir le prix Input pour calculer le ratio", + "Enter JSON to override request headers": "Entrez du JSON pour remplacer les en-têtes", "Enter key, format: AccessKey|SecretAccessKey|Region": "Entrez la clé, format : AccessKey|SecretAccessKey|Region", "Enter key, one per line, format: AccessKey|SecretAccessKey|Region": "Entrez la clé, une par ligne, format : AccessKey|SecretAccessKey|Region", "Enter model name": "Entrez le nom du modèle", @@ -1245,23 +1349,24 @@ "Enter password": "Saisir le mot de passe", "Enter password (8-20 characters)": "Saisir le mot de passe (8-20 caractères)", "Enter password (min 8 characters)": "Entrez le mot de passe (min. 8 caractères)", - "Enter quota in tokens": "Saisir le quota en tokens", "Enter quota in {{currency}}": "Saisir le quota en {{currency}}", + "Enter quota in tokens": "Saisir le quota en tokens", "Enter secret key": "Saisir la clé secrète", "Enter system prompt (user prompt takes priority)": "Saisir l'invite système (l'invite utilisateur est prioritaire)", "Enter tag name (optional)": "Saisir le nom du tag (facultatif)", - "Enter the 6-digit Time-based One-Time Password or 8-character backup code from your authenticator app.": "Saisir le mot de passe à usage unique basé sur le temps à 6 chiffres ou le code de secours à 8 caractères de votre application d'authentification.", "Enter the 6-digit code from your authenticator app": "Saisir le code à 6 chiffres de votre application d'authentification", - "Enter the Coze agent ID": "Saisir l'ID de l'agent Coze", + "Enter the 6-digit Time-based One-Time Password or 8-character backup code from your authenticator app.": "Saisir le mot de passe à usage unique basé sur le temps à 6 chiffres ou le code de secours à 8 caractères de votre application d'authentification.", "Enter the complete URL, supports": "Saisir l'URL complète, prend en charge", + "Enter the Coze agent ID": "Saisir l'ID de l'agent Coze", "Enter the full URL of your Gotify server": "Saisir l'URL complète de votre serveur Gotify", "Enter the knowledge base ID": "Saisir l'ID de la base de connaissances", "Enter the path before /suno, usually just the domain": "Saisir le chemin avant /suno, généralement juste le domaine", - "Enter the quota amount in tokens": "Saisir le montant du quota en tokens", "Enter the quota amount in {{currency}}": "Entrez le montant du quota en {{currency}}", + "Enter the quota amount in tokens": "Saisir le montant du quota en tokens", "Enter the verification code": "Saisir le code de vérification", "Enter threshold": "Saisir le seuil", "Enter token counts to preview the estimated cost (excluding group multipliers).": "Saisissez le nombre de tokens pour estimer le coût (hors multiplicateurs de groupe).", + "Enter URL...": "Saisir l'URL...", "Enter username": "Saisir le nom d'utilisateur", "Enter verification code": "Saisir le code de vérification", "Enter webhook secret": "Saisir le secret du webhook", @@ -1277,8 +1382,8 @@ "Env (JSON object)": "Env (objet JSON)", "Environment variables": "Variables d'environnement", "Environment variables (JSON)": "Variables d'environnement (JSON)", - "Epay Gateway": "Passerelle Epay", "Epay endpoint": "Endpoint Epay", + "Epay Gateway": "Passerelle Epay", "Epay merchant ID": "ID marchand Epay", "Epay secret key": "Clé secrète Epay", "Equals": "Égal à", @@ -1295,17 +1400,20 @@ "Example (all channels):": "Exemple (tous les canaux) :", "Example (specific channels):": "Exemple (canaux spécifiques) :", "Example:": "Exemple :", + "example.com blocked-site.com": "example.com blocked-site.com", + "example.com company.com": "example.com company.com", "Excellent": "Excellent", "Exchange rate is required": "Le taux de change est requis", "Exchange rate must be greater than 0": "Le taux de change doit être supérieur à 0", "Exhausted": "Épuisé", - "Existing Models ({{count}})": "Modèles existants ({{count}})", "Existing account will be reused": "Le compte existant sera réutilisé", + "Existing Models ({{count}})": "Modèles existants ({{count}})", "Exists": "Existe", "Expand All": "Tout développer", "Expected a JSON array.": "Un tableau JSON est attendu.", "Experiment with prompts and models in real time.": "Expérimentez avec des prompts et des modèles en temps réel.", "Expiration Time": "Heure d'expiration", + "expired": "expiré", "Expired": "Expiré", "Expired at": "Expiré le", "Expired time cannot be earlier than current time": "L'heure d'expiration ne peut pas être antérieure à l'heure actuelle", @@ -1321,28 +1429,24 @@ "Extend failed": "Échec de la prolongation", "Extended successfully": "Prolongé avec succès", "External Device": "Appareil externe", - "External Speed Test": "Test de vitesse externe", "External link for users to purchase quota": "Lien externe permettant aux utilisateurs d'acheter du quota", "External operations": "Opérations externes", "External operations mode": "Mode opérations externes", + "External Speed Test": "Test de vitesse externe", "Extra": "Supplémentaire", "Extra Notes (Optional)": "Notes supplémentaires (facultatif)", - "FAQ": "FAQ", - "FAQ added. Click \"Save Settings\" to apply.": "FAQ ajouté. Cliquez sur \"Enregistrer les paramètres\" pour appliquer.", - "FAQ deleted. Click \"Save Settings\" to apply.": "FAQ supprimé. Cliquez sur \"Enregistrer les paramètres\" pour appliquer.", - "FAQ saved successfully": "FAQ enregistré avec succès", - "FAQ updated. Click \"Save Settings\" to apply.": "FAQ mis à jour. Cliquez sur \"Enregistrer les paramètres\" pour appliquer.", "Fail Reason": "Raison de l'échec", "Fail Reason Details": "Détails de la raison de l'échec", "Failed": "Échec", + "Failed to {{action}} user": "Échec de l'action {{action}} sur l'utilisateur", "Failed to adjust quota": "Échec de l'ajustement du quota", "Failed to apply overwrite.": "Échec de l'application de l'écrasement.", "Failed to bind email": "Échec de la liaison de l'e-mail", "Failed to change password": "Échec du changement de mot de passe", "Failed to check for updates": "Échec de la vérification des mises à jour", "Failed to clean logs": "Échec du nettoyage des journaux", - "Failed to complete Passkey login": "Impossible de terminer la connexion Passkey", "Failed to complete order": "Échec de la finalisation de la commande", + "Failed to complete Passkey login": "Impossible de terminer la connexion Passkey", "Failed to contact GitHub releases API": "Impossible de contacter l'API GitHub Releases", "Failed to copy": "Échec de la copie", "Failed to copy channel": "Échec de la copie du canal", @@ -1355,9 +1459,10 @@ "Failed to create provider": "Échec de la création du fournisseur", "Failed to create redemption code": "Échec de la création du code d'échange", "Failed to create user": "Échec de la création de l'utilisateur", + "Failed to delete {{count}} model(s)": "Échec de la suppression de {{count}} modèle(s)", + "Failed to delete account": "Échec de la suppression du compte", "Failed to delete API key": "Échec de la suppression de la clé API", "Failed to delete API keys": "Échec de la suppression des Clés API", - "Failed to delete account": "Échec de la suppression du compte", "Failed to delete channel": "Échec de la suppression du canal", "Failed to delete disabled channels": "Échec de la suppression des canaux désactivés", "Failed to delete invalid redemption codes": "Échec de la suppression des codes d'échange invalides", @@ -1366,22 +1471,21 @@ "Failed to delete redemption code": "Échec de la suppression du code d'échange", "Failed to delete user": "Échec de la suppression de l'utilisateur", "Failed to delete vendor": "Échec de la suppression du fournisseur", - "Failed to delete {{count}} model(s)": "Échec de la suppression de {{count}} modèle(s)", + "Failed to disable {{count}} model(s)": "Échec de la désactivation de {{count}} modèle(s)", "Failed to disable 2FA": "Échec de la désactivation de la 2FA", "Failed to disable channels": "Échec de la désactivation des canaux", "Failed to disable model": "Échec de la désactivation du modèle", "Failed to disable tag channels": "Échec de la désactivation des canaux de tags", - "Failed to disable {{count}} model(s)": "Échec de la désactivation de {{count}} modèle(s)", "Failed to discover OIDC endpoints": "Échec de la découverte des points de terminaison OIDC", + "Failed to enable {{count}} model(s)": "Échec de l'activation de {{count}} modèle(s)", "Failed to enable 2FA": "Échec de l'activation de 2FA", "Failed to enable channels": "Échec de l'activation des canaux", "Failed to enable model": "Échec de l'activation du modèle", "Failed to enable tag channels": "Échec de l'activation des canaux de tags", - "Failed to enable {{count}} model(s)": "Échec de l'activation de {{count}} modèle(s)", - "Failed to fetch OIDC configuration. Please check the URL and network status": "Échec de la récupération de la configuration OIDC. Veuillez vérifier l'URL et le statut du réseau", "Failed to fetch checkin status": "Échec de la récupération du statut d'enregistrement", "Failed to fetch deployment details": "Impossible de récupérer les détails du déploiement", "Failed to fetch models": "Échec de la récupération des modèles", + "Failed to fetch OIDC configuration. Please check the URL and network status": "Échec de la récupération de la configuration OIDC. Veuillez vérifier l'URL et le statut du réseau", "Failed to fetch upstream prices": "Échec de la récupération des prix amont", "Failed to fetch upstream ratios": "Échec de la récupération des ratios en amont", "Failed to fetch usage": "Échec de la récupération de l'utilisation", @@ -1392,38 +1496,39 @@ "Failed to initialize system": "Échec de l'initialisation du système", "Failed to load": "Échec du chargement", "Failed to load API keys": "Échec du chargement des Clés API", - "Failed to load Passkey status": "Échec du chargement du statut Passkey", "Failed to load billing history": "Échec du chargement de l'historique de facturation", "Failed to load home page content": "Échec du chargement du contenu de la page d'accueil", "Failed to load image": "Échec du chargement de l'image", "Failed to load logs": "Échec du chargement des journaux", + "Failed to load Passkey status": "Échec du chargement du statut Passkey", "Failed to load profile": "Échec du chargement du profil", "Failed to load redemption codes": "Échec du chargement des codes d'échange", "Failed to load setup data": "Échec du chargement des données de configuration", "Failed to load setup status": "Échec du chargement de l'état de configuration", "Failed to load tag data": "Échec du chargement des données de tags", "Failed to load users": "Échec du chargement des utilisateurs", - "Failed to parse JSON file: {{name}}": "Échec de l'analyse du fichier JSON : {{name}}", "Failed to parse group items": "Échec de l'analyse des éléments de groupe", + "Failed to parse JSON file: {{name}}": "Échec de l'analyse du fichier JSON : {{name}}", "Failed to query balance": "Échec de la requête de solde", "Failed to refresh cache stats": "Échec de l'actualisation des statistiques de cache", "Failed to regenerate backup codes": "Échec de la régénération des codes de sauvegarde", "Failed to register Passkey": "Échec de l'enregistrement du Passkey", "Failed to remove Passkey": "Échec de la suppression de la Passkey", "Failed to reset 2FA": "Échec de la réinitialisation de la 2FA", - "Failed to reset Passkey": "Échec de la réinitialisation de la Passkey", "Failed to reset model ratios": "Échec de la réinitialisation des ratios du modèle", + "Failed to reset Passkey": "Échec de la réinitialisation de la Passkey", "Failed to save": "Échec de la sauvegarde", + "Failed to save announcements": "Échec de la sauvegarde des annonces", "Failed to save API info": "Échec de l'enregistrement des informations API", "Failed to save FAQ": "Échec de la sauvegarde de la FAQ", "Failed to save Uptime Kuma groups": "Échec de la sauvegarde des groupes Uptime Kuma", - "Failed to save announcements": "Échec de la sauvegarde des annonces", "Failed to search API keys": "Échec de la recherche des Clés API", "Failed to search redemption codes": "Échec de la recherche des codes d'échange", "Failed to search users": "Échec de la recherche des utilisateurs", "Failed to send verification code": "Échec de l'envoi du code de vérification", "Failed to set tag": "Échec de la définition de l'étiquette", "Failed to setup 2FA": "Échec de la configuration de 2FA", + "Failed to start {{provider}} login": "Échec du démarrage de la connexion {{provider}}", "Failed to start Discord login": "Échec du démarrage de la connexion Discord", "Failed to start GitHub login": "Échec du démarrage de la connexion GitHub", "Failed to start LinuxDO login": "Échec du démarrage de la connexion LinuxDO", @@ -1431,14 +1536,13 @@ "Failed to start Passkey login": "Impossible de démarrer la connexion Passkey", "Failed to start Passkey registration": "Échec du démarrage de l'enregistrement de la Passkey", "Failed to start testing all channels": "Échec du démarrage du test de tous les canaux", - "Failed to start {{provider}} login": "Échec du démarrage de la connexion {{provider}}", "Failed to sync prices": "Échec de la synchronisation des prix", "Failed to sync ratios": "Échec de la synchronisation des ratios", "Failed to test all channels": "Échec du test de tous les canaux", "Failed to test channel": "Échec du test du canal", + "Failed to update all balances": "Échec de la mise à jour de tous les soldes", "Failed to update API key": "Échec de la mise à jour de la Clé API", "Failed to update API key status": "Échec de la mise à jour du statut de la Clé API", - "Failed to update all balances": "Échec de la mise à jour de tous les soldes", "Failed to update balance": "Échec de la mise à jour du solde", "Failed to update channel": "Échec de la mise à jour du canal", "Failed to update models": "Échec de la mise à jour des modèles", @@ -1450,43 +1554,47 @@ "Failed to update settings": "Échec de la mise à jour des paramètres", "Failed to update tag": "Échec de la mise à jour de l'étiquette", "Failed to update user": "Échec de la mise à jour de l'utilisateur", - "Failed to {{action}} user": "Échec de l'action {{action}} sur l'utilisateur", "Failure keywords": "Mots-clés d'échec", "Fair": "Correct", + "FAQ": "FAQ", + "FAQ added. Click \"Save Settings\" to apply.": "FAQ ajouté. Cliquez sur \"Enregistrer les paramètres\" pour appliquer.", + "FAQ deleted. Click \"Save Settings\" to apply.": "FAQ supprimé. Cliquez sur \"Enregistrer les paramètres\" pour appliquer.", + "FAQ saved successfully": "FAQ enregistré avec succès", + "FAQ updated. Click \"Save Settings\" to apply.": "FAQ mis à jour. Cliquez sur \"Enregistrer les paramètres\" pour appliquer.", "Fast": "Fast", "FastGPT": "FastGPT", "Feature in development": "Fonctionnalité en développement", "Fee": "Frais", "Fee Amount": "Montant des frais", - "Fetch Models": "Récupérer les modèles", "Fetch available models for:": "Récupérer les modèles disponibles pour :", "Fetch from Upstream": "Récupérer depuis l'amont", + "Fetch Models": "Récupérer les modèles", "Fetched {{count}} model(s) from upstream": "{{count}} modèle(s) récupéré(s) depuis l'amont", "Fetched {{count}} models": "{{count}} modèles récupérés", "Fetching prefill groups...": "Récupération des groupes de préremplissage...", "Fetching upstream prices...": "Récupération des prix amont...", "Fetching upstream ratios...": "Récupération des ratios amont...", + "field": "champ", "Field Mapping": "Mappage de champs", - "Field Path": "Chemin du champ", "Field passthrough controls": "Contrôles de transmission des champs", + "Field Path": "Chemin du champ", "File Search": "Recherche de fichiers", "Files to Retain": "Fichiers à conserver", "Fill All Models": "Remplir tous les modèles", "Fill Codex CLI / Claude CLI Templates": "Remplir les modèles Codex CLI / Claude CLI", - "Fill Related Models": "Remplir les modèles associés", - "Fill Template": "Remplir le modèle", - "Fill Templates": "Remplir les modèles", "Fill example (all channels)": "Remplir l'exemple (tous les canaux)", "Fill example (specific channels)": "Remplir l'exemple (canaux spécifiques)", "Fill in the following info to create a new subscription plan": "Remplissez les informations suivantes pour créer un nouveau plan d'abonnement", + "Fill Related Models": "Remplir les modèles associés", + "Fill Template": "Remplir le modèle", + "Fill Templates": "Remplir les modèles", "Fill thoughtSignature only for Gemini/Vertex channels using the OpenAI format": "Remplit thoughtSignature uniquement pour les canaux Gemini/Vertex utilisant le format OpenAI", "Filled {{count}} model(s)": "{{count}} modèle(s) rempli(s)", "Filled {{count}} related model(s)": "{{count}} modèle(s) associé(s) rempli(s)", "Filter": "Filtre", - "Filter Dashboard Models": "Filtrer les modèles du tableau de bord", - "Filter by Midjourney task ID": "Filtrer par ID de tâche Midjourney", "Filter by channel ID": "Filtrer par ID de canal", "Filter by group": "Filtrer par groupe", + "Filter by Midjourney task ID": "Filtrer par ID de tâche Midjourney", "Filter by model name...": "Filtrer par nom du modèle...", "Filter by model...": "Filtrer par modèle...", "Filter by name or ID...": "Filtrer par nom ou ID...", @@ -1499,6 +1607,7 @@ "Filter by token name": "Filtrer par nom de jeton", "Filter by username": "Filtrer par nom d'utilisateur", "Filter by username, name or email...": "Filtrer par nom d'utilisateur, nom ou e-mail...", + "Filter Dashboard Models": "Filtrer les modèles du tableau de bord", "Filter models by provider, group, type, endpoint, and tags.": "Filtrer les modèles par fournisseur, groupe, type, endpoint et tags.", "Filter models by type, endpoint, vendor, group and tags": "Filtrer les modèles par type, point d'accès, fournisseur, groupe et tags", "Filter models...": "Filtrer les modèles...", @@ -1522,24 +1631,38 @@ "Font color for the banner text. Supports any CSS color value. Leave empty for default.": "Font color for the banner text. Supports any CSS color value. Leave empty for default.", "Footer": "Pied de page", "Footer text displayed at the bottom of pages": "Texte de pied de page affiché en bas des pages", + "footer.columns.about.links.aboutProject": "À propos du projet", + "footer.columns.about.links.contact": "Contactez-nous", + "footer.columns.about.links.features": "Fonctionnalités", + "footer.columns.about.title": "À propos de nous", + "footer.columns.docs.links.apiDocs": "Documentation API", + "footer.columns.docs.links.installation": "Guide d'installation", + "footer.columns.docs.links.quickStart": "Démarrage rapide", + "footer.columns.docs.title": "Documentation", + "footer.columns.related.links.midjourney": "Midjourney-Proxy", + "footer.columns.related.links.neko": "neko-api-key-tool", + "footer.columns.related.links.oneApi": "One API", + "footer.columns.related.title": "Projets liés", + "footer.defaultCopyright": "Tous droits réservés.", + "footer.new\u0061pi.projectAttributionSuffix": "Tous droits réservés. Conçu et développé par les contributeurs du projet.", "For channels added after May 10, 2025, no need to remove \".\" from model names during deployment": "Pour les canaux ajoutés après le 10 mai 2025, pas besoin de supprimer \".\" des noms de modèles lors du déploiement", "For private deployments, format: https://fastgpt.run/api/openapi": "Pour les déploiements privés, format : https://fastgpt.run/api/openapi", "Force AUTH LOGIN": "Forcer AUTH LOGIN", "Force Format": "Forcer le format", - "Force SMTP authentication using AUTH LOGIN method": "Forcer l'authentification SMTP en utilisant la méthode AUTH LOGIN", "Force format response to OpenAI standard (OpenAI channel only)": "Forcer la réponse au format standard OpenAI (canal OpenAI uniquement)", + "Force SMTP authentication using AUTH LOGIN method": "Forcer l'authentification SMTP en utilisant la méthode AUTH LOGIN", "Forgot password": "Mot de passe oublié", "Forgot password?": "Mot de passe oublié ?", "Form reset to saved values": "Formulaire réinitialisé aux valeurs enregistrées", "Format": "Format", "Format JSON": "Formater JSON", "Format:": "Format :", - "Format: APIKey-AppId, e.g., fastgpt-0sp2gtvfdgyi4k30jwlgwf1i-64f335d84283f05518e9e041": "Format : APIKey-AppId, par ex. fastgpt-0sp2gtvfdgyi4k30jwlgwf1i-64f335d84283f05518e9e041", - "Format: APIKey|SecretKey": "Format : APIKey|SecretKey", - "Format: APPID|APISecret|APIKey": "Format : APPID|APISecret|APIKey", "Format: Access Key ID|Secret Access Key": "Format : Access Key ID|Secret Access Key", "Format: AccessKey|SecretKey (or just ApiKey if upstream is New API)": "Format : AccessKey|SecretKey (ou simplement ApiKey si l'amont est New API)", "Format: Ak|Sk|Region": "Format : Ak|Sk|Region", + "Format: APIKey-AppId, e.g., fastgpt-0sp2gtvfdgyi4k30jwlgwf1i-64f335d84283f05518e9e041": "Format : APIKey-AppId, par ex. fastgpt-0sp2gtvfdgyi4k30jwlgwf1i-64f335d84283f05518e9e041", + "Format: APIKey|SecretKey": "Format : APIKey|SecretKey", + "Format: APPID|APISecret|APIKey": "Format : APPID|APISecret|APIKey", "Format: AppId|SecretId|SecretKey": "Format : AppId|SecretId|SecretKey", "Forward requests directly to upstream providers without any post-processing.": "Transférer les requêtes directement aux fournisseurs amont sans aucun post-traitement.", "Free: {{free}} / Total: {{total}}": "Disponible : {{free}} / Total : {{total}}", @@ -1555,45 +1678,49 @@ "GC Count": "Nombre de GC", "GC executed": "GC exécuté", "GC execution failed": "Échec de l'exécution du GC", - "GPU count": "Nombre de GPU", "Gemini": "Gemini", "Gemini Image 4K": "Gemini Image 4K", "Gemini will continue to auto-detect thinking mode even with the adapter disabled. Enable this only when you need finer control over pricing and budgeting.": "Gemini continuera à détecter automatiquement le mode de pensée même avec l'adaptateur désactivé. Activez ceci uniquement lorsque vous avez besoin d'un contrôle plus fin sur la tarification et le budget.", "General": "Général", "General Settings": "Paramètres généraux", - "Generate Lyrics": "Générer des paroles", - "Generate Music": "Générer de la musique", - "Generate New Codes": "Générer de nouveaux codes", "Generate a Codex OAuth credential and paste it into the channel key field.": "Générer un identifiant OAuth Codex et le coller dans le champ clé du canal.", "Generate and manage your API access token": "Générer et gérer votre jeton d'accès API", "Generate credential": "Générer l'identifiant", + "Generate Lyrics": "Générer des paroles", + "Generate Music": "Générer de la musique", "Generate new backup codes for account recovery": "Générer de nouveaux codes de secours pour la récupération du compte", + "Generate New Codes": "Générer de nouveaux codes", "Generated image": "Image générée", "Generating new codes will invalidate all existing backup codes.": "La génération de nouveaux codes invalidera tous les codes de sauvegarde existants.", "Generating...": "Génération...", "Generic cache": "Cache générique", - "Get Started": "Commencer", "Get notified when balance falls below this value": "Recevoir une notification lorsque le solde tombe en dessous de cette valeur", + "Get Started": "Commencer", "GitHub": "GitHub", "Give the group a recognizable name and optional description.": "Donnez au groupe un nom reconnaissable et une description facultative.", "Give this group a recognizable name.": "Donnez un nom reconnaissable à ce groupe.", + "Global configuration and administrative tools.": "Configuration globale et outils d'administration.", "Global Coverage": "Couverture mondiale", "Global Model Configuration": "Configuration globale du modèle", - "Global configuration and administrative tools.": "Configuration globale et outils d'administration.", "Go Back": "Retour", "Go back and edit": "Retour et modifier", "Go to Dashboard": "Aller au tableau de bord", - "Go to Settings": "Aller aux paramètres", "Go to first page": "Aller à la première page", "Go to io.net API Keys": "Accéder aux clés API io.net", "Go to last page": "Aller à la dernière page", "Go to next page": "Aller à la page suivante", "Go to previous page": "Aller à la page précédente", "Go to settings": "Aller aux paramètres", + "Go to Settings": "Aller aux paramètres", "Good": "Bon", "Gotify Application Token": "Jeton d'application Gotify", "Gotify Documentation": "Documentation Gotify", "Gotify Server URL": "URL du serveur Gotify", + "gpt-3.5-turbo": "gpt-3.5-turbo", + "gpt-3.5-turbo-0125": "gpt-3.5-turbo-0125", + "gpt-4": "gpt-4", + "gpt-4, claude-3-opus, etc.": "gpt-4, claude-3-opus, etc.", + "GPU count": "Nombre de GPU", "Gradient": "Gradient", "Greater Than": "Supérieur à", "Greater Than or Equal": "Supérieur ou égal", @@ -1601,8 +1728,6 @@ "Grok Settings": "Paramètres Grok", "Group": "Groupe", "Group & Quota": "Groupe et Quota", - "Group Name": "Nom du groupe", - "Group Ratio": "Ratio de groupe", "Group added. Click \"Save Settings\" to apply.": "Groupe ajouté. Cliquez sur \"Enregistrer les paramètres\" pour appliquer.", "Group channels by tag for batch operations": "Regrouper les canaux par étiquette pour les opérations par lots", "Group config overrides global limits, shares the same period": "La configuration du groupe annule les limites globales et partage la même période", @@ -1611,8 +1736,11 @@ "Group identifier": "Identifiant du groupe", "Group is required": "Le groupe est requis", "Group name": "Nom du groupe", + "Group Name": "Nom du groupe", "Group name cannot be changed when editing.": "Le nom du groupe ne peut pas être modifié lors de la modification.", "Group prices cannot be expanded because this expression is not a standard tiered pricing expression.": "Les prix par groupe ne peuvent pas être détaillés car cette expression n'est pas une expression tarifaire par paliers standard.", + "group ratio": "ratio de groupe", + "Group Ratio": "Ratio de groupe", "Group ratios": "Ratios de groupe", "Group updated. Click \"Save Settings\" to apply.": "Groupe mis à jour. Cliquez sur \"Enregistrer les paramètres\" pour appliquer.", "Group-based rate limits": "Limites de débit basées sur le groupe", @@ -1623,6 +1751,7 @@ "Groups that users can select when creating API keys.": "Groupes que les utilisateurs peuvent sélectionner lors de la création de clés API.", "Guardrails": "Garde-fous", "Guest": "Invité", + "h": "h", "Haiku Model": "Modèle Haiku", "Hang tight while we finish connecting your account.": "Patientez pendant que nous terminons la connexion de votre compte.", "Hang tight while we securely link this account to your profile.": "Patientez pendant que nous lions en toute sécurité ce compte à votre profil.", @@ -1634,12 +1763,12 @@ "Have a Code?": "Vous avez un code ?", "Header": "En-tête", "Header Name": "Nom de l’en-tête", + "Header navigation": "Navigation d'en-tête", "Header Override": "Remplacement d'en-tête", "Header Passthrough (X-Request-Id)": "Passthrough en-tête (X-Request-Id)", "Header Value (supports string or JSON mapping)": "Valeur de l'en-tête (chaîne ou mappage JSON)", - "Header navigation": "Navigation d'en-tête", - "Hidden Channels": "Canaux masqués", "Hidden — verify to reveal": "Masqué — vérifiez pour révéler", + "Hidden Channels": "Canaux masqués", "Hide": "Masquer", "Hide API key": "Masquer la clé API", "High Performance": "Hautes performances", @@ -1655,16 +1784,17 @@ "Higher priority channels are selected first": "Les canaux de priorité plus élevée sont sélectionnés en premier", "Historical Usage": "Utilisation historique", "History of Midjourney-style image tasks.": "Historique des tâches d'images style Midjourney.", - "Hit Rate": "Taux de succès", "Hit criteria: If cached tokens exist in usage, it counts as a hit.": "Critère de hit : si des tokens en cache existent dans l'utilisation, cela compte comme un hit.", + "Hit Rate": "Taux de succès", "Hit tier": "Palier atteint", "Home": "Accueil", "Home Page Content": "Contenu de la page d'accueil", "Hostname or IP of your SMTP provider": "Nom d'hôte ou IP de votre fournisseur SMTP", "Hour": "Heure", - "How It Works": "Comment ça marche", + "hours": "heures", "How client credentials are sent to the token endpoint": "Comment les informations d'identification client sont envoyées au point de terminaison de jeton", "How frequently the system tests all channels": "Fréquence à laquelle le système teste tous les canaux", + "How It Works": "Comment ça marche", "How model mapping works": "Comment fonctionne le mappage de modèle", "How much to charge for each US dollar of balance (Epay)": "Montant à facturer pour chaque dollar US de solde (Epay)", "How this model name should match requests": "Comment ce nom de modèle doit correspondre aux requêtes", @@ -1672,19 +1802,35 @@ "How to reset my quota?": "Comment réinitialiser mon quota ?", "How to select keys: random or sequential polling": "Comment sélectionner les clés : sondage aléatoire ou séquentiel", "How will you use the platform?": "Comment allez-vous utiliser la plateforme ?", + "https://api.day.app/yourkey/{{title}}/{{content}}": "https://api.day.app/yourkey/{{title}}/{{content}}", + "https://api.example.com": "https://api.example.com", + "https://ark.ap-southeast.bytepluses.com": "https://ark.ap-southeast.bytepluses.com", + "https://ark.cn-beijing.volces.com": "https://ark.cn-beijing.volces.com", + "https://cloud.siliconflow.cn/i/hij0YNTZ": "https://cloud.siliconflow.cn/i/hij0YNTZ", + "https://docs.example.com": "https://docs.example.com", + "https://example.com": "https://example.com", + "https://example.com/logo.png": "https://example.com/logo.png", + "https://example.com/qr-code.png": "https://example.com/qr-code.png", + "https://example.com/topup": "https://example.com/topup", + "https://example.com/webhook": "https://example.com/webhook", + "https://gateway.example.com": "https://gateway.example.com", + "https://github.com/QuantumNous/new-api": "https://github.com/QuantumNous/new-api", + "https://gotify.example.com": "https://gotify.example.com", + "https://pay.example.com": "https://pay.example.com", + "https://provider.com/.well-known/openid-configuration": "https://provider.com/.well-known/openid-configuration", + "https://status.example.com": "https://status.example.com", + "https://wechat-server.example.com": "https://wechat-server.example.com", + "https://worker.example.workers.dev": "https://worker.example.workers.dev", + "https://your-server.example.com": "https://votre-serveur.example.com", + "https://yourdomain.com": "https://yourdomain.com", "Human-readable name shown to users during Passkey prompts.": "Nom lisible par l'homme affiché aux utilisateurs lors des invites de clé d'accès (Passkey).", "I confirm enabling high-risk retry": "Je confirme l'activation de la relance à haut risque", "I have read and agree to the": "J'ai lu et j'accepte les", "I understand that disabling 2FA will remove all protection and backup codes": "Je comprends que la désactivation de la 2FA supprimera toute protection et les codes de secours", - "ID": "ID", - "IP": "IP", - "IP Address": "Adresse IP", - "IP Filter Mode": "Mode de filtre IP", - "IP Restriction": "Restriction IP", - "IP Whitelist (supports CIDR)": "Liste blanche IP (supporte CIDR)", "Icon": "Icône", "Icon file must be 100 KB or smaller": "Le fichier icône doit être de 100 Ko ou moins", "Icon identifier (e.g. github, gitlab)": "Identifiant d'icône (par exemple github, gitlab)", + "ID": "ID", "If an upstream error contains any of these keywords (case insensitive), the channel will be disabled automatically.": "Si une erreur en amont contient l'un de ces mots-clés (insensible à la casse), le canal sera désactivé automatiquement.", "If authorization succeeds, the generated JSON will be inserted into the key field. You still need to save the channel to persist it.": "Si l'autorisation réussit, le JSON généré sera inséré dans le champ clé. Vous devez encore enregistrer le canal pour le conserver.", "If connecting to upstream One API or New API relay projects, use OpenAI type instead unless you know what you are doing": "Si vous vous connectez à des projets de relais One API ou New API en amont, utilisez le type OpenAI à la place sauf si vous savez ce que vous faites", @@ -1693,15 +1839,19 @@ "Image": "Image", "Image Generation": "Génération d'images", "Image In": "Entrée d’image", + "Image input": "Entrée image", "Image Out": "Sortie d’image", "Image Preview": "Aperçu de l'image", - "Image Tokens": "Tokens image", - "Image input": "Entrée image", "Image ratio": "Ratio d'image", "Image to Video": "Image vers vidéo", + "Image Tokens": "Tokens image", "Import to CC Switch": "Importer vers CC Switch", + "Important Alert": "Alerte importante", + "Important Notice": "Avis important", "In Progress": "En cours", "In:": "Entrée :", + "Incident": "Incident", + "Incident Critical": "Incident critique", "Include Group": "Inclure le groupe", "Include Model": "Inclure le modèle", "Include Rule Name": "Inclure le nom de la règle", @@ -1714,10 +1864,10 @@ "Initializing…": "Initialisation…", "Inpaint": "Inpainting", "Input": "Entrée", - "Input Tokens": "Tokens d'entrée", "Input mode": "Mode d'entrée", "Input price": "Prix d’entrée", "Input tokens": "Jetons d’entrée", + "Input Tokens": "Tokens d'entrée", "Inspect user prompts": "Inspecter les invites utilisateur", "Instance": "Instance", "Integrations": "Intégrations", @@ -1726,19 +1876,19 @@ "Inter-group ratio overrides": "Dérogations de ratio inter-groupes", "Interface Language": "Langue de l'interface", "Internal Notes": "Notes internes", - "Internal Server Error!": "Erreur interne du serveur !", "Internal notes (not shown to users)": "Notes internes (non visibles par les utilisateurs)", + "Internal Server Error!": "Erreur interne du serveur !", + "Invalid chat link. Please contact the administrator.": "Lien de chat invalide. Veuillez contacter l'administrateur.", + "Invalid chat link. Please contact your administrator.": "Lien de chat invalide. Veuillez contacter votre administrateur.", + "Invalid code": "Code invalide", "Invalid JSON": "JSON invalide", "Invalid JSON format": "Format JSON invalide", "Invalid JSON format or values out of allowed range": "Format JSON invalide ou valeurs hors plage autorisée", "Invalid JSON in parameter override template": "JSON invalide dans le modèle de remplacement de paramètres", "Invalid JSON string.": "Chaîne JSON invalide.", + "Invalid model mapping format": "Format de mappage de modèle invalide", "Invalid Passkey registration response": "Réponse d'enregistrement de passe-clé invalide", "Invalid Passkey response": "Réponse Passkey invalide", - "Invalid chat link. Please contact the administrator.": "Lien de chat invalide. Veuillez contacter l'administrateur.", - "Invalid chat link. Please contact your administrator.": "Lien de chat invalide. Veuillez contacter votre administrateur.", - "Invalid code": "Code invalide", - "Invalid model mapping format": "Format de mappage de modèle invalide", "Invalid payment redirect URL": "URL de redirection de paiement non valide", "Invalid reset link, please request a new password reset": "Lien de réinitialisation invalide, veuillez demander une nouvelle réinitialisation de mot de passe", "Invalid reset link, please request a new password reset.": "Lien de réinitialisation invalide, veuillez demander une nouvelle réinitialisation du mot de passe.", @@ -1751,31 +1901,41 @@ "Invitation Quota": "Quota d'invitation", "Invite Info": "Informations sur l'invitation", "Invited": "Invité", - "Invited Users": "Utilisateurs invités", "Invited by user ID": "Invité par l'ID utilisateur", + "Invited Users": "Utilisateurs invités", "Invitee Reward": "Récompense de l'invité", "Inviter": "Inviteur", "Inviter Reward": "Récompense de l'inviteur", "Invites": "Invitations", + "io.net API Key": "Clé API io.net", + "io.net Deployments": "Déploiements io.net", + "IP": "IP", + "IP Address": "Adresse IP", + "IP Filter Mode": "Mode de filtre IP", + "IP Restriction": "Restriction IP", + "IP Whitelist (supports CIDR)": "Liste blanche IP (supporte CIDR)", + "is an open-source AI API gateway for self-hosted deployments. Connect multiple upstream services, manage models, keys, quotas, logs, and routing policies in one place.": "est une passerelle API IA open source pour les déploiements auto-hébergés. Connectez plusieurs services en amont et gérez au même endroit les modèles, les clés, les quotas, les journaux et les politiques de routage.", + "is less than the configured maximum cache size": "est inférieur à la taille maximale du cache configurée", + "is the default price; ": "est le prix par défaut ; ", "It seems like the page you're looking for": "Il semble que la page que vous recherchez", "Items": "Éléments", + "Japanese": "Japonais", + "Jimeng": "Jimeng", + "Jina": "Jina", "JSON": "JSON", - "JSON Editor": "Édition JSON", - "JSON Mode": "Mode JSON", - "JSON Text": "Texte JSON", "JSON array of group identifiers. When enabled below, new tokens rotate through this list.": "Tableau JSON d'identifiants de groupe. Lorsqu'il est activé ci-dessous, les nouveaux jetons alternent dans cette liste.", + "JSON Editor": "Édition JSON", "JSON format error": "Erreur de format JSON", "JSON format supports service account JSON files": "Le format JSON prend en charge les fichiers JSON de compte de service", "JSON map of group → description exposed when users create API keys.": "Carte JSON de groupe → description exposée lorsque les utilisateurs créent des clés API.", "JSON map of group → ratio applied when the user selects the group explicitly.": "Carte JSON de groupe → ratio appliqué lorsque l'utilisateur sélectionne explicitement le groupe.", - "JSON map of model → USD cost per request. Takes precedence over ratio based billing.": "Carte JSON de modèle → coût en USD par requête. Prend le pas sur la facturation basée sur le ratio.", "JSON map of model → multiplier applied to quota billing.": "Carte JSON de modèle → multiplicateur appliqué à la facturation par quota.", + "JSON map of model → USD cost per request. Takes precedence over ratio based billing.": "Carte JSON de modèle → coût en USD par requête. Prend le pas sur la facturation basée sur le ratio.", + "JSON Mode": "Mode JSON", "JSON must be an object": "Le JSON doit être un objet", "JSON object:": "Objet JSON :", + "JSON Text": "Texte JSON", "JSON-based access control rules. Leave empty to allow all users.": "Règles de contrôle d'accès basées sur JSON. Laisser vide pour autoriser tous les utilisateurs.", - "Japanese": "Japonais", - "Jimeng": "Jimeng", - "Jina": "Jina", "Just now": "À l'instant", "JustSong": "JustSong", "K": "K", @@ -1792,18 +1952,17 @@ "Keys, OAuth credentials, and multi-key update behavior.": "Clés, identifiants OAuth et comportement de mise à jour multi-clés.", "Kling": "Kling", "Knowledge Base ID *": "ID de la base de connaissances *", - "LLM prompt helper": "Assistant prompt LLM", "Landing page with system overview.": "Page d'accueil avec aperçu du système.", - "Language Preferences": "Préférences de langue", "Language preference saved": "Préférence de langue enregistrée", + "Language Preferences": "Préférences de langue", "Language preferences sync across your signed-in devices and affect API error messages.": "Les préférences de langue se synchronisent sur vos appareils connectés et affectent les messages d'erreur de l'API.", + "Last check time": "Dernière vérification", + "Last detected addable models": "Derniers modèles ajoutables détectés", "Last Login": "Dernière connexion", "Last Seen": "Dernière fois", "Last Tested": "Dernier testé", - "Last Used": "Dernière utilisation", - "Last check time": "Dernière vérification", - "Last detected addable models": "Derniers modèles ajoutables détectés", "Last updated:": "Dernière mise à jour :", + "Last Used": "Dernière utilisation", "Last used:": "Dernière utilisation :", "Layout": "Disposition", "Learn more": "En savoir plus", @@ -1823,15 +1982,15 @@ "Leave empty to use system temp directory": "Laisser vide pour utiliser le répertoire temporaire", "Leave empty to use username": "Laissez vide pour utiliser le nom d'utilisateur", "Legacy Format (JSON Object)": "Ancien format (objet JSON)", - "Legacy Format Template": "Modèle ancien format", "Legacy format must be a JSON object": "L'ancien format doit être un objet JSON", + "Legacy Format Template": "Modèle ancien format", "Less": "Moins", "Less Than": "Inférieur à", "Less Than or Equal": "Inférieur ou égal", "Light": "Clair", "Lightning Fast": "Extrêmement rapide", - "Limit Reached": "Limite atteinte", "Limit period": "Période de limite", + "Limit Reached": "Limite atteinte", "Limit which models can be used with this key": "Limiter les modèles pouvant être utilisés avec cette clé", "Limited": "Limité", "LingYiWanWu": "LingYiWanWu", @@ -1842,6 +2001,7 @@ "List of models supported by this channel. Use comma to separate multiple models.": "Liste des modèles pris en charge par ce canal. Utilisez une virgule pour séparer plusieurs modèles.", "List of origins (one per line) allowed for Passkey registration and authentication.": "Liste des origines (une par ligne) autorisées pour l'enregistrement et l'authentification des clés d'accès (Passkey).", "List view": "Vue en liste", + "LLM prompt helper": "Assistant prompt LLM", "Load Balancing": "Équilibrage de charge", "Load template...": "Charger le modèle...", "Loader": "Chargeur", @@ -1858,41 +2018,44 @@ "Local models": "Modèles locaux", "Locations": "Emplacements", "Locked": "Verrouillé", + "log": "journal", "Log Details": "Détails du journal", "Log Directory": "Répertoire des journaux", "Log File Count": "Nombre de fichiers journaux", + "Log files older than {{value}} days will be deleted.": "Les fichiers journaux de plus de {{value}} jours seront supprimés.", "Log IP address for usage and error logs": "Enregistrer l'adresse IP pour les journaux d'utilisation et d'erreurs", "Log Maintenance": "Maintenance des journaux", "Log Type": "Type de journal", - "Log files older than {{value}} days will be deleted.": "Les fichiers journaux de plus de {{value}} jours seront supprimés.", "Logic": "Logique", "Login failed": "Échec de la connexion", "Logo": "Logo", "Logo URL": "URL du logo", "Logs": "Journaux", + "m": "m", "Maintain a list of common questions for the dashboard help panel": "Maintenir une liste de questions courantes pour le panneau d'aide du tableau de bord", "Maintenance": "Maintenance", + "Maintenance Stripe": "Rayures de maintenance", "Make it easier for teammates to pick the right group.": "Faciliter le choix du bon groupe pour les coéquipiers.", "Manage": "Gestion", - "Manage API channels and provider configurations": "Gérer les canaux d'API et les configurations des fournisseurs", - "Manage Bindings": "Gérer les liaisons", - "Manage Keys": "Gérer les clés", - "Manage Ollama Models": "Gérer les modèles Ollama", - "Manage Subscriptions": "Gérer les abonnements", - "Manage Vendors": "Gérer les fournisseurs", "Manage account bindings for this user": "Gérer les liaisons de compte pour cet utilisateur", "Manage and configure": "Gérer et configurer", + "Manage API channels and provider configurations": "Gérer les canaux d'API et les configurations des fournisseurs", + "Manage Bindings": "Gérer les liaisons", "Manage catalog visibility and pricing.": "Gérer la visibilité du catalogue et les prix.", "Manage custom OAuth providers for user authentication": "Gérer les fournisseurs OAuth personnalisés pour l'authentification des utilisateurs", + "Manage Keys": "Gérer les clés", "Manage local models for:": "Gérer les modèles locaux pour :", "Manage model deployments": "Gérer les déploiements de modèles", "Manage model metadata and configuration": "Gérer les métadonnées et la configuration des modèles", "Manage multi-key status and configuration for this channel": "Gérer le statut multi-clés et la configuration pour ce canal", + "Manage Ollama Models": "Gérer les modèles Ollama", "Manage redemption codes for quota top-up": "Gérer les codes d'échange pour la recharge de quota", "Manage server log files. Log files accumulate over time; regular cleanup is recommended to free disk space.": "Gérer les fichiers journaux du serveur. Les fichiers journaux s'accumulent au fil du temps ; un nettoyage régulier est recommandé.", "Manage subscription plan creation, pricing and status": "Gérer la création, la tarification et le statut des abonnements", "Manage subscription plans and pricing.": "Gérer les plans d'abonnement et les tarifs.", + "Manage Subscriptions": "Gérer les abonnements", "Manage users and their permissions": "Gérer les utilisateurs et leurs permissions", + "Manage Vendors": "Gérer les fournisseurs", "Manage your API keys for accessing the service": "Gérer vos clés API pour accéder au service", "Manage your balance and payment methods": "Gérer votre solde et vos méthodes de paiement", "Manage your security settings and account access": "Gérer vos paramètres de sécurité et l'accès à votre compte", @@ -1905,14 +2068,14 @@ "Match All (AND)": "Toutes (AND)", "Match Any (OR)": "N'importe laquelle (OR)", "Match Mode": "Mode de correspondance", - "Match Text": "Texte à rechercher", - "Match Type": "Type de correspondance", - "Match Value": "Valeur de correspondance", - "Match Value (optional)": "Valeur de correspondance (optionnel)", "Match model name exactly": "Correspondance exacte du nom du modèle", "Match models containing this name": "Correspondance des modèles contenant ce nom", "Match models ending with this name": "Correspondance des modèles se terminant par ce nom", "Match models starting with this name": "Correspondance des modèles commençant par ce nom", + "Match Text": "Texte à rechercher", + "Match Type": "Type de correspondance", + "Match Value": "Valeur de correspondance", + "Match Value (optional)": "Valeur de correspondance (optionnel)", "Matched": "Correspondant", "Matched Tier": "Palier correspondant", "Matching Rules": "Règles de correspondance", @@ -1920,15 +2083,16 @@ "Max Entries": "Entrées max", "Max Requests (incl. failures)": "Max Requêtes (incl. échecs)", "Max Requests (including failures)": "Max Requêtes (incluant les échecs)", - "Max Success": "Max Succès", - "Max Successful Requests": "Max Requêtes réussies", "Max requests per period": "Nombre max de requêtes par période", + "Max Success": "Max Succès", "Max successful requests": "Nombre max de requêtes réussies", + "Max Successful Requests": "Max Requêtes réussies", "Maximum 1000 characters. Supports Markdown and HTML.": "Maximum 1000 caractères. Prend en charge Markdown et HTML.", "Maximum 200 characters": "Maximum 200 caractères", "Maximum 500 characters. Supports Markdown and HTML.": "Maximum 500 caractères. Prend en charge Markdown et HTML.", "Maximum check-in quota": "Quota maximum de connexion", "Maximum quota amount awarded for check-in": "Montant maximum de quota attribué pour la connexion", + "maxRequests ≥ 0, maxSuccess ≥ 1, both ≤ 2,147,483,647": "maxRequests ≥ 0, maxSuccess ≥ 1, les deux ≤ 2 147 483 647", "Medium": "Medium", "Memory Hits": "Hits mémoire", "Memory Threshold (%)": "Seuil mémoire (%)", @@ -1941,70 +2105,76 @@ "Min Top-up": "Recharge min.", "Min Top-up:": "Recharge min. :", "MiniMax": "MiniMax", - "Minimum LinuxDO trust level required": "Niveau de confiance minimum LinuxDO requis", - "Minimum Trust Level": "Niveau de confiance minimum", "Minimum check-in quota": "Quota minimum de connexion", + "Minimum LinuxDO trust level required": "Niveau de confiance minimum LinuxDO requis", "Minimum quota amount awarded for check-in": "Montant minimum de quota attribué pour la connexion", "Minimum recharge amount in USD": "Montant de recharge minimum en USD", "Minimum recharge amount to qualify for this discount.": "Montant minimum de recharge pour bénéficier de cette remise.", - "Minimum top-up (USD)": "Recharge minimum (USD)", "Minimum top-up (optional)": "Recharge minimum (facultatif)", + "Minimum top-up (USD)": "Recharge minimum (USD)", "Minimum top-up amount must be at least 1": "Le montant minimum de recharge doit être d'au moins 1", "Minimum top-up quantity": "Quantité minimale de recharge", "Minimum topup amount: {{amount}}": "Montant minimum de recharge : {{amount}}", + "Minimum Trust Level": "Niveau de confiance minimum", "Minimum:": "Minimum :", "Minute": "Minute", - "Missing Models": "Modèles manquants", + "minutes": "minutes", "Missing code": "Code manquant", + "Missing Models": "Modèles manquants", "Missing user data from Passkey login response": "Données utilisateur manquantes de la réponse de connexion Passkey", "Mistral": "Mistral", "Mode": "Mode", + "model": "modèle", "Model": "Modèle", "Model Access": "Accès au modèle", "Model Analytics": "Analyse des modèles", + "model billing support": "prise en charge de la facturation des modèles", "Model Call Analytics": "Analyse des appels de modèles", - "Model Description": "Description du modèle", - "Model Group": "Groupe de modèles", - "Model ID": "ID du modèle", - "Model Limits": "Limites du modèle", - "Model Mapping": "Mappage de modèle", - "Model Mapping (JSON)": "Mappage de modèle (JSON)", - "Model Mapping must be a JSON object like": "Le mappage de modèle doit être un objet JSON tel que", - "Model Name": "Nom du modèle", - "Model Name *": "Nom du modèle *", - "Model Price": "Prix du modèle", - "Model Price Not Configured": "Prix du modèle non configuré", - "Model Pricing": "Tarification des modèles", - "Model Regex": "Regex du modèle", - "Model Regex (one per line)": "Regex du modèle (un par ligne)", - "Model Square": "Place des modèles", - "Model Tags": "Tags de modèle", - "Model Version *": "Version du modèle *", "Model context usage": "Utilisation du contexte du modèle", "Model deleted": "Modèle supprimé", "Model deleted successfully": "Modèle supprimé avec succès", "Model deployment service is disabled": "Le service de déploiement de modèles est désactivé", + "Model Description": "Description du modèle", "Model disabled successfully": "Modèle désactivé avec succès", "Model enabled successfully": "Modèle activé avec succès", "Model fixed pricing": "Tarification fixe du modèle", + "Model Group": "Groupe de modèles", + "Model ID": "ID du modèle", + "Model Limits": "Limites du modèle", + "Model Mapping": "Mappage de modèle", + "Model Mapping (JSON)": "Mappage de modèle (JSON)", + "Model Mapping must be a JSON object like": "Le mappage de modèle doit être un objet JSON tel que", "Model mapping must be valid JSON": "La cartographie des modèles doit être un JSON valide", "Model name": "Nom du modèle", + "Model Name": "Nom du modèle", + "Model Name *": "Nom du modèle *", "Model name is required": "Le nom du modèle est requis", "Model names copied to clipboard": "Noms des modèles copiés dans le presse-papiers", "Model not found": "Modèle introuvable", + "Model Price": "Prix du modèle", + "Model Price Not Configured": "Prix du modèle non configuré", + "Model Pricing": "Tarification des modèles", "Model pull failed: {{msg}}": "Échec du téléchargement du modèle : {{msg}}", "Model ratio": "Ratio modèle", "Model ratios": "Ratios de modèle", "Model ratios reset successfully": "Ratios des modèles réinitialisés avec succès", + "Model Regex": "Regex du modèle", + "Model Regex (one per line)": "Regex du modèle (un par ligne)", + "Model Square": "Place des modèles", + "Model Tags": "Tags de modèle", "Model to use for testing": "Modèle à utiliser pour les tests", "Model to use when testing channel connectivity": "Modèle à utiliser lors du test de la connectivité du canal", + "Model Version *": "Version du modèle *", + "model(s) selected out of": "modèle(s) sélectionné(s) parmi", + "model(s)? This action cannot be undone.": "modèle(s) ? Cette action ne peut pas être annulée.", + "models": "modèles", "Models": "Modèles", - "Models & Groups": "Modèles & Groupes", "Models *": "Modèles *", - "Models Directory": "Répertoire des modèles", + "Models & Groups": "Modèles & Groupes", "Models appended successfully": "Modèles ajoutés avec succès", "Models are required": "Les modèles sont requis", "Models directory": "Répertoire des modèles", + "Models Directory": "Répertoire des modèles", "Models fetched successfully": "Modèles récupérés avec succès", "Models filled to form": "Modèles remplis pour le formulaire", "Models listed here will not automatically append or remove -thinking / -nothinking suffixes.": "Les modèles listés ici n'ajouteront ni ne supprimeront automatiquement les suffixes -thinking / -nothinking.", @@ -2019,21 +2189,24 @@ "Monitoring & Alerts": "Surveillance & Alertes", "Month": "Mois", "Monthly": "Mensuel", + "months": "mois", "Moonshot": "Moonshot", "More": "Plus", + "more mapping": "plus de mappage", "More templates...": "Autres modèles…", "More...": "Plus...", "Move": "Déplacer", + "Move a request header": "Déplacer un en-tête de requête", + "Move affiliate rewards to your main balance": "Transférer les récompenses d'affiliation vers votre solde principal", "Move Field": "Déplacer le champ", "Move Header": "Déplacer l'en-tête", "Move Request Header": "Déplacer un en-tête de requête", - "Move a request header": "Déplacer un en-tête de requête", - "Move affiliate rewards to your main balance": "Transférer les récompenses d'affiliation vers votre solde principal", "Move source field to target field": "Déplacer le champ source vers le champ cible", + "ms": "ms", + "Multi-key channel: Keys will be": "Canal multi-clés : Les clés seront", "Multi-Key Management": "Gestion multi-clés", "Multi-Key Mode (multiple keys, one channel)": "Mode multi-clés (plusieurs clés, un canal)", "Multi-Key Strategy": "Stratégie multi-clés", - "Multi-key channel: Keys will be": "Canal multi-clés : Les clés seront", "Multi-key: Polling rotation": "Multi-clé : Rotation par sondage", "Multi-key: Random rotation": "Multi-clé : Rotation aléatoire", "Multi-protocol Compatible": "Compatible multi-protocole", @@ -2051,20 +2224,22 @@ "Must be a valid URL": "Doit être une URL valide", "Must be at least 8 characters": "Doit contenir au moins 8 caractères", "My Subscriptions": "Mes abonnements", + "my-status": "mon-statut", "MySQL detected": "MySQL détecté", "MySQL is a production-ready relational database. Keep your credentials secure.": "MySQL est une base de données relationnelle prête pour la production. Gardez vos identifiants en sécurité.", "MySQL is production ready. Ensure automated backups and a dedicated user with the minimal required privileges are configured.": "MySQL est prêt pour la production. Assurez-vous que des sauvegardes automatisées et un utilisateur dédié avec les privilèges minimaux requis sont configurés.", "N/A": "N/A", "Name": "Nom", "Name *": "Nom *", - "Name Rule": "Règle de nommage", - "Name Suffix": "Suffixe du nom", "Name for this redemption code (1-20 characters)": "Nom pour ce code d'échange (1-20 caractères)", "Name is available": "Nom disponible", "Name is not available": "Nom non disponible", "Name must be between {{min}} and {{max}} characters": "Le nom doit contenir entre {{min}} et {{max}} caractères", + "Name Rule": "Règle de nommage", + "Name Suffix": "Suffixe du nom", "Name the channel and choose the upstream provider.": "Nommez le canal et choisissez le fournisseur amont.", "Name the channel, choose the provider, configure API access, and set credentials.": "Nommez le canal, choisissez le fournisseur, configurez l’accès API et définissez les identifiants.", + "name@example.com": "name@example.com", "Native format": "Format natif", "Need a code?": "Besoin d'un code ?", "Nested JSON defining per-group rules for adding (+:), removing (-:), or appending usable groups.": "JSON imbriqué définissant des règles par groupe pour ajouter (+:), supprimer (-:), ou ajouter des groupes utilisables.", @@ -2078,48 +2253,32 @@ "New Format Template": "Modèle nouveau format", "New Group": "Nouveau groupe", "New Models ({{count}})": "Nouveaux modèles ({{count}})", - "New Password": "Nouveau mot de passe", - "New User Quota": "Quota nouvel utilisateur", "New name will be:": "Le nouveau nom sera :", "New password": "Nouveau mot de passe", + "New Password": "Nouveau mot de passe", "New password must be different from current password": "Le nouveau mot de passe doit être différent de l'actuel", + "New User Quota": "Quota nouvel utilisateur", "New version available: {{version}}": "Nouvelle version disponible : {{version}}", "NewAPI": "NewAPI", "Next": "Suivant", "Next branch": "Branche suivante", "Next page": "Page suivante", "Next reset": "Prochaine réinitialisation", - "No API Domains yet. Click \"Add API\" to create one.": "Aucun domaine API pour l'instant. Cliquez sur \"Ajouter une API\" pour en créer un.", - "No API Keys Found": "Aucune clé API trouvée", - "No API keys available. Create your first API key to get started.": "Aucune clé API disponible. Créez votre première clé API pour commencer.", - "No API routes configured": "Aucune route API configurée", "No About Content Set": "Aucun contenu « À propos » défini", "No Active": "Aucun actif", - "No Change": "Aucun changement", - "No Channels Found": "Aucun canal trouvé", - "No Data": "Aucune donnée", - "No Deployments Found": "Aucun déploiement trouvé", - "No FAQ entries available": "Aucune entrée FAQ disponible", - "No FAQ entries yet. Click \"Add FAQ\" to create one.": "Aucune entrée FAQ pour l'instant. Cliquez sur \"Ajouter une FAQ\" pour en créer une.", - "No Inviter": "Pas d'inviteur", - "No Logs Found": "Aucun journal trouvé", - "No Models Found": "Aucun modèle trouvé", - "No Quota": "Aucun quota", - "No Redemption Codes Found": "Aucun code d'échange trouvé", - "No Reset": "Pas de réinitialisation", - "No Retry": "Pas de réessai", - "No Sync": "Pas de synchronisation", - "No Upgrade": "Pas de mise à niveau", - "No Uptime Kuma groups yet. Click \"Add Group\" to create one.": "Aucun groupe Uptime Kuma pour l'instant. Cliquez sur « Ajouter un groupe » pour en créer un.", - "No Users Found": "Aucun utilisateur trouvé", "No additional type-specific settings for this channel type.": "Aucun paramètre supplémentaire spécifique au type pour ce type de canal.", "No amount options configured. Add amounts below to get started.": "Aucune option de montant configurée. Ajoutez des montants ci-dessous pour commencer.", "No announcements at this time": "Aucune annonce pour le moment", "No announcements yet. Click \"Add Announcement\" to create one.": "Aucune annonce pour l'instant. Cliquez sur « Ajouter une annonce » pour en créer une.", - "No available Web chat links": "Aucun lien de chat Web disponible", + "No API Domains yet. Click \"Add API\" to create one.": "Aucun domaine API pour l'instant. Cliquez sur \"Ajouter une API\" pour en créer un.", + "No API keys available. Create your first API key to get started.": "Aucune clé API disponible. Créez votre première clé API pour commencer.", + "No API Keys Found": "Aucune clé API trouvée", + "No API routes configured": "Aucune route API configurée", "No available models": "Aucun modèle disponible", + "No available Web chat links": "Aucun lien de chat Web disponible", "No backup": "Pas de sauvegarde", "No billing records found": "Aucun enregistrement de facturation trouvé", + "No Change": "Aucun changement", "No changes": "Aucune modification", "No changes made": "Aucune modification effectuée", "No changes to save": "Aucune modification à enregistrer", @@ -2127,6 +2286,7 @@ "No channel type found.": "Aucun type de canal trouvé.", "No channels available. Create your first channel to get started.": "Aucun canal disponible. Créez votre premier canal pour commencer.", "No channels found": "Aucun canal trouvé", + "No Channels Found": "Aucun canal trouvé", "No channels selected": "Aucun canal sélectionné", "No chat presets configured. Click \"Add chat preset\" to get started.": "Aucun préréglage de chat configuré. Cliquez sur \"Ajouter un préréglage de chat\" pour commencer.", "No chat presets match your search": "Aucun préréglage de chat ne correspond à votre recherche", @@ -2136,21 +2296,27 @@ "No containers": "Aucun conteneur", "No custom OAuth providers configured yet.": "Aucun fournisseur OAuth personnalisé configuré pour le moment.", "No data": "Aucune donnée", + "No Data": "Aucune donnée", "No data available": "Aucune donnée disponible", "No deployments available. Create one to get started.": "Aucun déploiement disponible. Créez-en un pour commencer.", + "No Deployments Found": "Aucun déploiement trouvé", "No description available.": "Aucune description disponible.", "No discount tiers configured. Click \"Add discount tier\" to get started.": "Aucun niveau de réduction configuré. Cliquez sur « Ajouter un niveau de réduction » pour commencer.", "No duplicate keys found": "Aucune clé dupliquée trouvée", "No enabled tokens available": "Aucun token activé disponible", "No endpoints configured. Switch to JSON mode or add rows to define endpoints.": "Aucun point de terminaison configuré. Passez en mode JSON ou ajoutez des lignes pour définir les points de terminaison.", + "No FAQ entries available": "Aucune entrée FAQ disponible", + "No FAQ entries yet. Click \"Add FAQ\" to create one.": "Aucune entrée FAQ pour l'instant. Cliquez sur \"Ajouter une FAQ\" pour en créer une.", "No files match the accepted types.": "Aucun fichier ne correspond aux types acceptés.", "No group found.": "Aucun groupe trouvé.", "No group-based rate limits configured. Click \"Add group\" to get started.": "Aucune limite de taux basée sur les groupes configurée. Cliquez sur \"Ajouter un groupe\" pour commencer.", "No groups match your search": "Aucun groupe ne correspond à votre recherche", "No header overrides configured.": "Aucune surcharge d'en-têtes configurée.", + "No Inviter": "Pas d'inviteur", "No keys found": "Aucune clé trouvée", "No log entries matched the selected time.": "Aucune entrée de journal ne correspond à l'heure sélectionnée.", "No logs": "Aucun journal", + "No Logs Found": "Aucun journal trouvé", "No mappings configured. Click \"Add Row\" to get started.": "Aucun mappage configuré. Cliquez sur « Ajouter une ligne » pour commencer.", "No matches found": "Aucune correspondance trouvée", "No matching results": "Aucun résultat correspondant", @@ -2165,6 +2331,7 @@ "No models fetched from upstream": "Aucun modèle récupéré depuis l'amont", "No models fetched yet.": "Aucun modèle récupéré pour l'instant.", "No models found": "Aucun modèle trouvé", + "No Models Found": "Aucun modèle trouvé", "No models found.": "Aucun modèle trouvé.", "No models match your current filters.": "Aucun modèle ne correspond à vos filtres actuels.", "No models match your search": "Aucun modèle ne correspond à votre recherche", @@ -2186,48 +2353,60 @@ "No products configured. Click \"Add product\" to get started.": "Aucun produit configuré. Cliquez sur \"Ajouter un produit\" pour commencer.", "No products match your search": "Aucun produit ne correspond à votre recherche", "No providers available": "Aucun fournisseur disponible", + "No Quota": "Aucun quota", "No ratio differences found": "Aucune différence de ratio trouvée", "No records found. Try adjusting your filters.": "Aucun enregistrement trouvé. Essayez d'ajuster vos filtres.", "No redemption codes available. Create your first redemption code to get started.": "Aucun code d'échange disponible. Créez votre premier code d'échange pour commencer.", + "No Redemption Codes Found": "Aucun code d'échange trouvé", "No related models available for this channel type": "Aucun modèle associé disponible pour ce type de canal", "No release notes provided.": "Aucune note de version fournie.", + "No Reset": "Pas de réinitialisation", "No restriction": "Aucune restriction", "No results for \"{{query}}\". Try adjusting your search or filters.": "Aucun résultat pour \"{{query}}\". Essayez d'ajuster votre recherche ou vos filtres.", "No results found": "Aucun résultat trouvé", "No results found.": "Aucun résultat trouvé.", + "No Retry": "Pas de réessai", "No rules yet": "Aucune règle", "No rules yet. Add a group below to get started.": "Aucune règle pour le moment. Ajoutez un groupe ci-dessous pour commencer.", "No status code mappings configured.": "Aucun mappage de codes de statut configuré.", "No subscription plans yet": "Aucun plan d'abonnement pour le moment", "No subscription records": "Aucun enregistrement d'abonnement", + "No Sync": "Pas de synchronisation", "No system announcements": "Aucune annonce système", "No token found.": "Aucun jeton trouvé.", "No tools configured": "Aucun outil configuré", + "No Upgrade": "Pas de mise à niveau", "No upstream price differences found": "Aucune différence de prix amont trouvée", "No upstream ratio differences found": "Aucune différence de ratio amont trouvée", + "No Uptime Kuma groups yet. Click \"Add Group\" to create one.": "Aucun groupe Uptime Kuma pour l'instant. Cliquez sur « Ajouter un groupe » pour en créer un.", "No uptime monitoring configured": "Aucune surveillance de disponibilité configurée", "No usage logs available. Logs will appear here once API calls are made.": "Aucun journal d'utilisation. Les journaux apparaîtront ici une fois les appels API effectués.", "No user information available": "Aucune information utilisateur disponible", "No user selected": "Aucun utilisateur sélectionné", "No users available. Try adjusting your search or filters.": "Aucun utilisateur disponible. Essayez d'ajuster votre recherche ou vos filtres.", + "No Users Found": "Aucun utilisateur trouvé", "Node Name": "Nom du nœud", "Non-stream": "Non-streaming", "None": "Aucun", + "noreply@example.com": "noreply@example.com", "Normal": "Normal", "Normalized:": "Normalisé :", - "Not Equals": "Différent de", - "Not Set": "Non défini", - "Not Started": "Non démarré", - "Not Submitted": "Non soumis", "Not available": "Non disponible", "Not backed up": "Non sauvegardé", "Not bound": "Non lié", + "Not Equals": "Différent de", + "Not Set": "Non défini", "Not set yet": "Non défini", + "Not Started": "Non démarré", + "Not Submitted": "Non soumis", "Not tested": "Non testé", "Not used yet": "Pas encore utilisé", "Notice": "Avis", + "Notice Glass": "Avis verre", "Notification Email": "E-mail de notification", "Notification Method": "Méthode de notification", + "Notification Presets": "Préréglages de notification", + "Notification presets use fixed category colors and ignore the color palette.": "Les préréglages de notification utilisent des couleurs de catégorie fixes et ignorent la palette.", "Notifications": "Notifications", "Number of codes to create": "Nombre de codes à créer", "Number of keys to create": "Nombre de clés à créer", @@ -2236,33 +2415,37 @@ "Number of users invited": "Nombre d'utilisateurs invités", "OAuth Client ID": "ID client OAuth", "OAuth Client Secret": "Secret client OAuth", - "OAuth Integrations": "Intégrations OAuth", "OAuth failed": "Échec de l'OAuth", + "OAuth Integrations": "Intégrations OAuth", "OAuth start failed": "Échec du démarrage OAuth", - "OIDC": "OIDC", - "OIDC Client ID": "ID Client OIDC", - "OIDC Client Secret": "Secret Client OIDC", - "OIDC configuration fetched successfully": "Configuration OIDC récupérée avec succès", - "OIDC discovery URL. Click \"Auto-discover\" to fetch endpoints automatically.": "URL de découverte OIDC. Cliquez sur \"Découverte automatique\" pour récupérer les points de terminaison automatiquement.", - "OIDC endpoints discovered successfully": "Points de terminaison OIDC découverts avec succès", "Object Prune Rules": "Règles de nettoyage d'objets", "Observability": "Observabilité", "Obtain the API key, merchant ID, and RSA key pair from the Waffo dashboard, and configure the callback URL.": "Obtenez la clé API, l'ID du commerçant et la paire de clés RSA depuis le tableau de bord Waffo, et configurez l'URL de rappel.", "Obtain the merchant, store, product and signing keys from your Waffo dashboard. Webhook URL: /api/waffo-pancake/webhook": "Obtenez l'ID marchand, le magasin, le produit et les clés de signature dans le tableau de bord Waffo. URL du Webhook : /api/waffo-pancake/webhook", + "of": "sur", + "of 3:": "sur 3 :", + "off": "désactivé", "Official": "Officiel", + "Official documentation": "Documentation officielle", "Official Repository": "Dépôt officiel", "Official Sync": "Synchronisation Officielle", - "Official documentation": "Documentation officielle", "OhMyGPT": "OhMyGPT", + "OIDC": "OIDC", + "OIDC Client ID": "ID Client OIDC", + "OIDC Client Secret": "Secret Client OIDC", + "OIDC configuration fetched successfully": "Configuration OIDC récupérée avec succès", + "OIDC discovery URL. Click \"Auto-discover\" to fetch endpoints automatically.": "URL de découverte OIDC. Cliquez sur \"Découverte automatique\" pour récupérer les points de terminaison automatiquement.", + "OIDC endpoints discovered successfully": "Points de terminaison OIDC découverts avec succès", "Old Format Template": "Modèle Ancien Format", "Old format: Direct override. New format: Supports conditional judgment and custom JSON operations.": "Ancien format : Remplacement direct. Nouveau format : Prend en charge le jugement conditionnel et les opérations JSON personnalisées.", "Ollama": "Ollama", "Ollama Models": "Modèles Ollama", "One API": "One API", - "One IP or CIDR range per line": "Une IP ou plage CIDR par ligne", - "One IP per line (empty for no restriction)": "Une IP par ligne (laisser vide pour aucune restriction)", "One domain per line": "Un domaine par ligne", "One domain per line (only used when domain restriction is enabled)": "Un domaine par ligne (utilisé uniquement lorsque la restriction de domaine est activée)", + "One IP or CIDR range per line": "Une IP ou plage CIDR par ligne", + "One IP per line (empty for no restriction)": "Une IP par ligne (laisser vide pour aucune restriction)", + "one keyword per line": "un mot-clé par ligne", "Online payment is not enabled. Please contact the administrator.": "Le paiement en ligne n'est pas activé. Veuillez contacter l'administrateur.", "Online topup is not enabled. Please use redemption code or contact administrator.": "La recharge en ligne n'est pas activée. Veuillez utiliser un code d'échange ou contacter l'administrateur.", "Only allow specific email domains": "Autoriser uniquement des domaines d'e-mail spécifiques", @@ -2274,34 +2457,35 @@ "Oops! Page Not Found!": "Oups ! Page introuvable !", "Oops! Something went wrong": "Oups ! Quelque chose s'est mal passé", "Open": "Ouvrir", - "Open CC Switch": "Ouvrir le commutateur CC", - "Open Source": "Open source", "Open authorization page": "Ouvrir la page d'autorisation", - "Open in New Tab": "Ouvrir dans un nouvel onglet", + "Open CC Switch": "Ouvrir le commutateur CC", "Open in chat": "Ouvrir dans le chat", "Open in new tab": "Ouvrir dans un nouvel onglet", + "Open in New Tab": "Ouvrir dans un nouvel onglet", "Open menu": "Ouvrir le menu", "Open release": "Ouvrir la version", + "Open Source": "Open source", "Open the io.net console API Keys page": "Ouvrir la page Clés API de la console io.net", "Open theme settings": "Ouvrir les paramètres du thème", "OpenAI": "OpenAI", "OpenAI Compatible": "Compatible OpenAI", "OpenAI Organization": "Organisation OpenAI", "OpenAI Organization ID (optional)": "Identifiant d'organisation OpenAI (optionnel)", - "OpenAI, Anthropic, Google, etc.": "OpenAI, Anthropic, Google, etc.", "OpenAI, Anthropic, etc.": "OpenAI, Anthropic, etc.", + "OpenAI, Anthropic, Google, etc.": "OpenAI, Anthropic, Google, etc.", "OpenAIMax": "OpenAIMax", - "OpenRouter": "OpenRouter", "Opened authorization page": "Page d'autorisation ouverte", + "OpenRouter": "OpenRouter", + "opens in an external client. Trigger it from the sidebar or API key actions to launch the configured application.": "s'ouvre dans un client externe. Déclenchez-le depuis la barre latérale ou les actions de clé API pour lancer l'application configurée.", "Operation": "Opération", - "Operation Type": "Type d'opération", "Operation failed": "Opération échouée", + "Operation Type": "Type d'opération", "Operator Admin": "Admin opérateur", "Optimize system for self-hosted single-user usage": "Optimiser le système pour une utilisation auto-hébergée par un seul utilisateur", "Optimized network architecture ensures millisecond response times": "Architecture réseau optimisée garantissant des temps de réponse en millisecondes", - "Optional JSON policy to restrict access based on user info fields": "Politique JSON optionnelle pour restreindre l'accès en fonction des champs d'informations utilisateur", "Optional callback override. Leave blank to use server address": "Remplacement optionnel du callback. Laisser vide pour utiliser l'adresse du serveur", "Optional icon identifier for the login button": "Identifiant d'icône optionnel pour le bouton de connexion", + "Optional JSON policy to restrict access based on user info fields": "Politique JSON optionnelle pour restreindre l'accès en fonction des champs d'informations utilisateur", "Optional minimum recharge amount for this method.": "Montant minimum de recharge optionnel pour cette méthode.", "Optional multiplier per user group used when calculating recharge pricing. Provide a JSON object such as": "Multiplicateur optionnel par groupe d'utilisateurs utilisé lors du calcul des prix de recharge. Fournissez un objet JSON tel que", "Optional notes about this channel": "Notes optionnelles sur ce canal", @@ -2314,46 +2498,50 @@ "Opus Model": "Modèle Opus", "Or continue with": "Ou continuer avec", "Or enter this key manually:": "Ou entrez cette clé manuellement :", + "Order completed successfully": "Commande terminée avec succès", "Order History": "Historique des commandes", "Order Payment Method": "Moyen de paiement (commande)", - "Order completed successfully": "Commande terminée avec succès", + "org-...": "org-...", "Original Model": "Modèle Original", "Other": "Autre", "Output": "Sortie", - "Output Tokens": "Tokens de sortie", "Output price": "Prix de sortie", "Output tokens": "Jetons de sortie", + "Output Tokens": "Tokens de sortie", + "override": "remplacer", "Override": "Remplacer", "Override Anthropic headers, defaults, and thinking adapter behavior": "Remplacer les en-têtes, les valeurs par défaut et le comportement de l'adaptateur de réflexion d'Anthropic", - "Override Rules": "Règles de remplacement", "Override auto-discovered endpoint": "Remplacer le point de terminaison auto-découvert", "Override request headers": "Remplacer les en-têtes de requête", "Override request headers (JSON format)": "Surcharge des en-têtes de requête (format JSON)", "Override request parameters (JSON format)": "Remplacer les paramètres de requête (format JSON)", "Override request parameters. Cannot override": "Remplacer les paramètres de requête. Impossible de remplacer", "Override request parameters. Cannot override stream parameter.": "Remplace les paramètres de requête. Impossible de remplacer le paramètre stream.", + "Override Rules": "Règles de remplacement", "Override the endpoint used for testing. Leave empty to auto detect.": "Remplacer le point de terminaison utilisé pour les tests. Laisser vide pour la détection automatique.", + "overrides for matching model prefix.": "remplace le tarif si le modèle a ce préfixe.", "Overview": "Vue d'ensemble", "Overwritten": "Écrasé", - "PaLM": "PaLM", "Page": "Page", "Page {{current}} of {{total}}": "Page {{current}} sur {{total}}", + "PaLM": "PaLM", "Pan": "Panoramique", "Param Override": "Remplacement de paramètre", - "Parameter Override": "Remplacement de paramètre", - "Parameter Override Template (JSON)": "Modèle de remplacement de paramètres (JSON)", "Parameter configuration error": "Erreur de configuration des paramètres", + "Parameter Override": "Remplacement de paramètre", "Parameter override must be a valid JSON object": "La substitution de paramètres doit être un objet JSON valide", "Parameter override must be valid JSON format": "La substitution de paramètres doit être au format JSON valide", + "Parameter Override Template (JSON)": "Modèle de remplacement de paramètres (JSON)", "Parameter override template must be a JSON object": "Le modèle de remplacement de paramètres doit être un objet JSON", + "parameter.": "paramètre.", "Parameters": "Paramètres", "Parsed {{count}} service account file(s)": "{{count}} fichier(s) de compte de service analysé(s)", "Partial Submission": "Soumission partielle", "Pass Headers": "Transmettre les en-têtes", - "Pass Through Body": "Corps de transmission directe", - "Pass Through Headers": "Transmettre les en-têtes", "Pass request body directly to upstream": "Transmettre le corps de la requête directement à l'upstream", "Pass specified request headers to upstream": "Transmettre les en-têtes de requête spécifiés en amont", + "Pass Through Body": "Corps de transmission directe", + "Pass Through Headers": "Transmettre les en-têtes", "Pass through the anthropic-beta header for beta features": "Transmettre l'en-tête anthropic-beta pour les fonctionnalités bêta", "Pass through the include field for usage obfuscation": "Transmettre le champ include pour l'obfuscation d'utilisation", "Pass through the inference_geo field for Claude data residency region control": "Transmettre le champ inference_geo pour le contrôle de la région de résidence des données Claude", @@ -2366,11 +2554,11 @@ "Pass-through Headers (comma-separated or JSON array)": "En-têtes passthrough (séparés par des virgules ou tableau JSON)", "Passkey": "Passkey", "Passkey Authentication": "Authentification Passkey", - "Passkey Login": "Connexion avec Passkey", "Passkey is not available in this browser": "Passkey n'est pas disponible dans ce navigateur", "Passkey is not supported in this environment": "Passkey n'est pas pris en charge dans cet environnement", "Passkey is not supported on this device": "Passkey n'est pas pris en charge sur cet appareil", "Passkey is not supported on this device.": "La Passkey n'est pas prise en charge sur cet appareil.", + "Passkey Login": "Connexion avec Passkey", "Passkey login failed": "Échec de la connexion Passkey", "Passkey login was cancelled": "Connexion Passkey annulée", "Passkey login was cancelled or timed out": "Connexion Passkey annulée ou expirée", @@ -2382,41 +2570,43 @@ "Passthrough Template": "Modèle de transmission", "Password": "Mot de passe", "Password / Access Token": "Mot de passe / Jeton d'accès", - "Password Login": "Connexion par mot de passe", - "Password Registration": "Inscription par mot de passe", "Password changed successfully": "Mot de passe changé avec succès", "Password copied to clipboard: {{password}}": "Mot de passe copié dans le presse-papiers : {{password}}", "Password has been copied to clipboard": "Le mot de passe a été copié dans le presse-papiers", + "Password Login": "Connexion par mot de passe", "Password must be at least 8 characters": "Le mot de passe doit comporter au moins 8 caractères", "Password must be at least 8 characters long": "Le mot de passe doit comporter au moins 8 caractères", + "Password Registration": "Inscription par mot de passe", "Password reset and copied to clipboard: {{password}}": "Mot de passe réinitialisé et copié dans le presse-papiers : {{password}}", "Password reset: {{password}}": "Mot de passe réinitialisé : {{password}}", "Passwords do not match": "Les mots de passe ne correspondent pas", "Paste the full callback URL (includes code & state)": "Coller l'URL de callback complète (inclut code et state)", "Path": "Chemin", - "Path Regex (one per line)": "Regex du chemin (un par ligne)", "Path not set": "Chemin non défini", + "Path Regex (one per line)": "Regex du chemin (un par ligne)", "Path:": "Chemin :", "Pay": "Pay", "Pay-as-you-go with real-time usage monitoring": "Paiement à l'usage avec suivi de la consommation en temps réel", "Payment Channel": "Canal de paiement", "Payment Gateway": "Passerelle de paiement", - "Payment Method": "Méthode de paiement", - "Payment Methods": "Modes de paiement", "Payment initiated": "Paiement initié", + "Payment Method": "Méthode de paiement", "Payment method name": "Nom du mode de paiement", "Payment method name is required": "Le nom du mode de paiement est requis", "Payment method type": "Type de mode de paiement", "Payment method type is required": "Le type de méthode de paiement est requis", "Payment methods": "Méthodes de paiement", + "Payment Methods": "Modes de paiement", "Payment page opened": "Page de paiement ouverte", "Payment request failed": "Requête de paiement échouée", "Payment return URL": "URL de retour de paiement", "Pending": "En attente", + "per": "par", "Per 1K tokens": "Par 1K tokens", "Per 1M tokens": "Par 1M tokens", - "Per Request": "Par demande", + "per request": "par requête", "Per request": "Par requête", + "Per Request": "Par demande", "Per-call": "Par appel", "Per-feature metered windows split by model or capability.": "Fenêtres mesurées par fonction, réparties par modèle ou capacité.", "Per-request (fixed price)": "Par requête (prix fixe)", @@ -2433,14 +2623,15 @@ "Perplexity": "Perplexity", "Persist your data file": "Conserver votre fichier de données", "Personal": "Personnel", - "Personal Center Area": "Espace personnel", - "Personal Settings": "Paramètres personnels", "Personal area": "Espace personnel", + "Personal Center Area": "Espace personnel", "Personal info settings": "Paramètres d'informations personnelles", + "Personal Settings": "Paramètres personnels", "Personal settings and profile management.": "Paramètres personnels et gestion du profil.", "Personal use": "Usage personnel", "Personal use mode": "Mode usage personnel", "Pick a date": "Choisir une date", + "Pick colors from the palette or enter CSS color values manually.": "Choisissez des couleurs dans la palette ou saisissez manuellement des valeurs CSS.", "Ping Interval (seconds)": "Intervalle de ping (secondes)", "Plan": "Plan", "Plan Name": "Nom du plan", @@ -2451,29 +2642,28 @@ "Playground": "Aire de jeux", "Playground and chat functions": "Fonctions de terrain de jeu et de discussion", "Playground experiments and live conversations.": "Expériences Playground et conversations en direct.", - "Please Select user groups that can access this channel.": "Veuillez sélectionner les groupes d'utilisateurs qui peuvent accéder à ce canal.", "Please agree to the legal terms first": "Veuillez accepter les conditions légales d'abord", "Please complete the security check to continue.": "Veuillez compléter la vérification de sécurité pour continuer.", "Please confirm that you understand the consequences": "Veuillez confirmer que vous comprenez les conséquences", - "Please enable Two-factor Authentication or Passkey before proceeding": "Veuillez activer l'authentification à deux facteurs ou une Passkey avant de continuer", "Please enable io.net model deployment service and configure an API key in System Settings.": "Veuillez activer le service de déploiement de modèles io.net et configurer une clé API dans les Paramètres système.", - "Please enter API key first": "Veuillez saisir la clé API en premier", - "Please enter a Well-Known URL first": "Veuillez d'abord saisir une URL Well-Known", + "Please enable Two-factor Authentication or Passkey before proceeding": "Veuillez activer l'authentification à deux facteurs ou une Passkey avant de continuer", "Please enter a name": "Veuillez saisir un nom", "Please enter a new password": "Veuillez saisir un nouveau mot de passe", "Please enter a redemption code": "Veuillez saisir un code de rédemption", "Please enter a valid duration": "Veuillez saisir une durée valide", "Please enter a valid email address": "Veuillez saisir une adresse e-mail valide", "Please enter a valid number": "Veuillez entrer un nombre valide", + "Please enter a Well-Known URL first": "Veuillez d'abord saisir une URL Well-Known", "Please enter amount": "Veuillez saisir le montant", "Please enter an administrator username": "Veuillez saisir un nom d'utilisateur administrateur", + "Please enter API key first": "Veuillez saisir la clé API en premier", "Please enter chat client name": "Veuillez saisir le nom du client de chat", "Please enter email and verification code": "Veuillez saisir l'email et le code de vérification", "Please enter keys first": "Veuillez saisir les clés en premier", "Please enter model name": "Veuillez entrer le nom du modèle", "Please enter plan title": "Veuillez saisir le titre du plan", - "Please enter the URL": "Veuillez saisir l'URL", "Please enter the authentication code.": "Veuillez saisir le code d'authentification.", + "Please enter the URL": "Veuillez saisir l'URL", "Please enter the verification code": "Veuillez saisir le code de vérification", "Please enter your current password": "Veuillez saisir votre mot de passe actuel", "Please enter your email": "Veuillez saisir votre adresse e-mail", @@ -2490,6 +2680,7 @@ "Please select at least one channel": "Veuillez sélectionner au moins un canal", "Please select at least one model": "Veuillez sélectionner au moins un modèle", "Please select items to delete": "Veuillez sélectionner des éléments à supprimer", + "Please Select user groups that can access this channel.": "Veuillez sélectionner les groupes d'utilisateurs qui peuvent accéder à ce canal.", "Please set Ollama API Base URL first": "Veuillez d'abord définir l'URL de base de l'API Ollama", "Please try again later.": "Veuillez réessayer plus tard.", "Please upload key file(s)": "Veuillez télécharger le (s) fichier(s) clé (s)", @@ -2506,8 +2697,8 @@ "PostgreSQL offers strong reliability guarantees. Double check your maintenance window and retention policies before going live.": "PostgreSQL offre de solides garanties de fiabilité. Vérifiez votre fenêtre de maintenance et vos politiques de rétention avant la mise en production.", "Powerful API Management Platform": "Plateforme puissante de gestion d'API", "Pre-Consume for Free Models": "Pré-consommation pour les modèles gratuits", - "Pre-Consumed Quota": "Quota pré-consommé", "Pre-consumed": "Pré-consommé", + "Pre-Consumed Quota": "Quota pré-consommé", "Preference saved as {{pref}}, but no active subscription. Wallet will be used automatically.": "Préférence enregistrée comme {{pref}}, mais aucun abonnement actif. Le portefeuille sera utilisé automatiquement.", "Preferences": "Préférences", "Prefill Group Management": "Gestion des groupes de préremplissage", @@ -2527,9 +2718,9 @@ "Preserve the original field when applying this rule": "Conserver le champ original lors de l’application de cette règle", "Preset": "Preset", "Preset Background": "Preset Background", - "Preset Template": "Modèle prédéfini", "Preset recharge amounts (JSON array)": "Montants de recharge prédéfinis (tableau JSON)", "Preset recharge amounts displayed to users": "Montants de recharge prédéfinis affichés aux utilisateurs", + "Preset Template": "Modèle prédéfini", "Preset templates": "Modèles prédéfinis", "Press Enter or comma to add tags": "Appuyez sur Entrée ou sur la virgule pour ajouter des tags", "Press Enter to use \"{{value}}\"": "Appuyez sur Entrée pour utiliser « {{value}} »", @@ -2542,12 +2733,13 @@ "Price": "Prix", "Price ($/1K calls)": "Prix ($/1K appels)", "Price (local currency / USD)": "Prix (devise locale / USD)", - "Price ID": "ID du prix", "Price display": "Affichage des prix", "Price display mode": "Mode d'affichage des prix", "Price estimation": "Estimation du prix", "Price estimation description": "Après avoir configuré le type de matériel, l'emplacement de déploiement, le nombre de réplicas, etc., le prix sera calculé automatiquement.", + "Price ID": "ID du prix", "Price mode (USD per 1M tokens)": "Mode de tarification (USD par 1M de jetons)", + "price_xxx": "price_xxx", "Price:": "Prix :", "Price: High to Low": "Prix : Du plus élevé au plus bas", "Price: Low to High": "Prix : Du plus bas au plus élevé", @@ -2556,11 +2748,11 @@ "Prices vary by usage tier and request conditions": "Les prix varient selon le palier d’utilisation et les conditions de requête", "Pricing": "Tarification", "Pricing & Display": "Tarification et Affichage", + "Pricing by Group": "Tarification par groupe", "Pricing Configuration": "Configuration de la tarification", + "Pricing mode": "Mode de tarification", "Pricing Ratios": "Ratios de tarification", "Pricing Type": "Type de tarification", - "Pricing by Group": "Tarification par groupe", - "Pricing mode": "Mode de tarification", "Primary Model": "Modèle principal", "Prioritize reusing the last successful channel based on keys extracted from request context (sticky routing)": "Priorise la réutilisation du dernier canal ayant réussi, basé sur les clés extraites du contexte de la requête (routage persistant)", "Priority": "Priorité", @@ -2576,6 +2768,7 @@ "Product ID is required": "L'ID de produit est requis", "Product Name": "Nom du produit", "Products": "Produits", + "Professional": "Professionnel", "Professional team providing 24/7 technical support": "Équipe professionnelle offrant un support technique 24h/24 et 7j/7", "Profile": "Profil", "Profile updated successfully": "Profil mis à jour avec succès", @@ -2585,28 +2778,28 @@ "Promotion codes": "Codes promotionnels", "Prompt": "Invite", "Prompt (EN)": "Invite (EN)", + "Prompt cache ratio": "Ratio de cache d'invite", "Prompt Caching": "Mise en cache des invites", "Prompt Details": "Détails de l'invite", - "Prompt cache ratio": "Ratio de cache d'invite", "Prompt price ($/1M tokens)": "Prix du prompt ($/1M de jetons)", "Protect login and registration with Cloudflare Turnstile": "Protéger la connexion et l'inscription avec Cloudflare Turnstile", - "Provide Markdown, HTML, or an external URL for the privacy policy": "Fournir du Markdown, du HTML ou une URL externe pour la politique de confidentialité", - "Provide Markdown, HTML, or an external URL for the user agreement": "Fournir du Markdown, du HTML ou une URL externe pour l'accord utilisateur", "Provide a JSON object where each key maps to an endpoint definition.": "Fournissez un objet JSON où chaque clé correspond à une définition de point de terminaison.", "Provide a valid URL starting with http:// or https://": "Fournissez une URL valide commençant par http:// ou https://", + "Provide Markdown, HTML, or an external URL for the privacy policy": "Fournir du Markdown, du HTML ou une URL externe pour la politique de confidentialité", + "Provide Markdown, HTML, or an external URL for the user agreement": "Fournir du Markdown, du HTML ou une URL externe pour l'accord utilisateur", "Provide per-category safety overrides as JSON. Use `default` for fallback values.": "Fournir des remplacements de sécurité par catégorie au format JSON. Utilisez `default` pour les valeurs de secours.", "Provide per-model header overrides as JSON. Useful for enabling beta features such as expanded context windows.": "Fournir des remplacements d'en-tête par modèle au format JSON. Utile pour activer des fonctionnalités bêta telles que les fenêtres de contexte étendues.", "Provider": "Fournisseur", - "Provider Name": "Nom du fournisseur", "Provider created successfully": "Fournisseur créé avec succès", "Provider deleted successfully": "Fournisseur supprimé avec succès", + "Provider Name": "Nom du fournisseur", "Provider type (OpenAI, Anthropic, etc.)": "Type de fournisseur (OpenAI, Anthropic, etc.)", "Provider updated successfully": "Fournisseur mis à jour avec succès", "Provider-specific endpoint, account, and compatibility settings.": "Paramètres de point d’accès, de compte et de compatibilité propres au fournisseur.", "Proxy Address": "Adresse du proxy", "Prune Object Items": "Nettoyer les éléments objet", - "Prune Rule (string or JSON object)": "Règle de nettoyage (chaîne ou objet JSON)", "Prune object items by conditions": "Nettoyer les éléments d'objets par conditions", + "Prune Rule (string or JSON object)": "Règle de nettoyage (chaîne ou objet JSON)", "Publish Date": "Date de publication", "Published": "Publié", "Published:": "Publié :", @@ -2614,11 +2807,11 @@ "Pull model": "Télécharger le modèle", "Pulling...": "Téléchargement en cours...", "Pulse": "Pulse", - "Purchase Limit": "Limite d'achat", - "Purchase Subscription": "Acheter un abonnement", "Purchase a plan to enjoy model benefits": "Souscrivez un plan pour bénéficier des avantages des modèles", "Purchase here": "Acheter ici", + "Purchase Limit": "Limite d'achat", "Purchase limit reached": "Limite d'achat atteinte", + "Purchase Subscription": "Acheter un abonnement", "QR Code Image URL": "URL de l'image du code QR", "QR code is not configured. Please contact support.": "Le code QR n'est pas configuré. Veuillez contacter le support.", "Quantity": "Quantité", @@ -2628,27 +2821,24 @@ "Querying...": "Recherche en cours...", "Question": "Question", "Queued": "En file", + "Quick insert common payment methods": "Insérer rapidement les méthodes de paiement courantes", "Quick Range": "Plage rapide", "Quick Setup from Preset": "Configuration rapide à partir d'un préréglage", - "Quick insert common payment methods": "Insérer rapidement les méthodes de paiement courantes", "Quota": "Quota", "Quota ({{currency}})": "Quota ({{currency}})", - "Quota Distribution": "Distribution des quotas", - "Quota Per Unit": "Quota par unité", - "Quota Reset": "Réinitialisation du quota", - "Quota Settings": "Paramètres de quota", - "Quota Types": "Types de quotas", - "Quota Warning Threshold": "Seuil d'avertissement de quota", "Quota adjusted successfully": "Quota ajusté avec succès", "Quota consumed before charging users": "Quota consommé avant de facturer les utilisateurs", + "Quota Distribution": "Distribution des quotas", "Quota given to invited users": "Quota attribué aux utilisateurs invités", "Quota given to users who invite others": "Quota attribué aux utilisateurs qui invitent d'autres personnes", "Quota must be a positive number": "Le quota doit être un nombre positif", + "Quota Per Unit": "Quota par unité", "Quota reminder (tokens)": "Rappel de quota (jetons)", + "Quota Reset": "Réinitialisation du quota", + "Quota Settings": "Paramètres de quota", + "Quota Types": "Types de quotas", + "Quota Warning Threshold": "Seuil d'avertissement de quota", "Quota:": "Quota :", - "RPM": "RPM", - "RSA Private Key (Production)": "Clé privée RSA (Production)", - "RSA Private Key (Sandbox)": "Clé privée RSA (Sandbox)", "Rainbow": "Rainbow", "Random": "Aléatoire", "Randomly select a key from the pool for each request": "Sélectionner aléatoirement une clé du pool pour chaque requête", @@ -2656,16 +2846,16 @@ "Rate Limited": "Limitation de débit", "Rate Limiting": "Limitation du débit", "Ratio": "Ratio", - "Ratio Type": "Type de ratio", "Ratio applied to audio completions for streaming models.": "Ratio appliqué aux complétions audio pour les modèles de streaming.", "Ratio applied to audio inputs where supported by the upstream model.": "Ratio appliqué aux entrées audio lorsque pris en charge par le modèle amont.", "Ratio applied when creating cache entries for supported models.": "Ratio appliqué lors de la création d'entrées de cache pour les modèles pris en charge.", "Ratio mode": "Mode de ratio", + "Ratio Type": "Type de ratio", "Ratio: {{value}}": "Ratio : {{value}}", "Ratios synced successfully": "Ratios synchronisés avec succès", + "Raw expression": "Expression brute", "Raw JSON": "JSON brut", "Raw Quota": "Quota brut", - "Raw expression": "Expression brute", "Re-enable on success": "Réactiver en cas de succès", "Re-login": "Se reconnecter", "Ready to initialize": "Prêt à initialiser", @@ -2690,29 +2880,31 @@ "Redeem codes": "Échanger des codes", "Redeemed By": "Utilisé par", "Redeemed:": "Utilisé :", + "redemption code": "code d'échange", "Redemption Code": "Code d'échange", - "Redemption Codes": "Codes d'échange", "Redemption code deleted successfully": "Code d'échange supprimé avec succès", "Redemption code disabled successfully": "Code d'échange désactivé avec succès", "Redemption code enabled successfully": "Code d'échange activé avec succès", "Redemption code updated successfully": "Code d'échange mis à jour avec succès", "Redemption code(s) created successfully": "Code(s) d'échange créé(s) avec succès", + "Redemption Codes": "Codes d'échange", + "redemption codes.": "codes de rachat.", "Redemption failed": "Rédemption échouée", "Redemption successful! Added: {{quota}}": "Échange réussi ! Ajouté : {{quota}}", + "Redirecting to chat page...": "Redirection vers la page de discussion...", "Redirecting to Creem checkout...": "Redirection vers la caisse Creem...", "Redirecting to GitHub...": "Redirection vers GitHub...", - "Redirecting to chat page...": "Redirection vers la page de discussion...", "Redirecting to payment page...": "Redirection vers la page de paiement...", "Reference Video": "Vidéo de référence", - "Referral Program": "Programme de parrainage", "Referral link:": "Lien de parrainage :", + "Referral Program": "Programme de parrainage", "Refine models by provider, group, type, and tags.": "Affinez les modèles par fournisseur, groupe, type et tags.", "Refresh": "Actualiser", "Refresh Cache": "Actualiser le cache", - "Refresh Stats": "Actualiser les statistiques", "Refresh credential": "Actualiser l'identifiant", "Refresh failed": "Échec de l'actualisation", "Refresh interval (minutes)": "Intervalle d'actualisation (minutes)", + "Refresh Stats": "Actualiser les statistiques", "Refreshing...": "Actualisation...", "Refund": "Remboursement", "Refund Details": "Détails du remboursement", @@ -2731,30 +2923,30 @@ "Relying Party Display Name": "Nom d'affichage de la partie de confiance", "Relying Party ID": "ID de la partie de confiance", "Remaining": "Restant", - "Remaining Quota ({{currency}})": "Quota restant ({{currency}})", "Remaining quota": "Quota restant", + "Remaining Quota ({{currency}})": "Quota restant ({{currency}})", "Remaining quota units": "Unités de quota restantes", "Remaining:": "Restant :", "Remark": "Remarque", "Remove": "Supprimer", "Remove ${{amount}}": "Supprimer ${{amount}}", - "Remove Duplicates": "Supprimer les doublons", - "Remove Models": "Supprimer des modèles", - "Remove Passkey": "Supprimer le Passkey", - "Remove Passkey?": "Supprimer la clé d'accès ?", "Remove all log entries created before the selected timestamp.": "Supprimer toutes les entrées de journal créées avant l'horodatage sélectionné.", "Remove attachment": "Supprimer la pièce jointe", "Remove condition": "Supprimer la condition", + "Remove Duplicates": "Supprimer les doublons", "Remove filter": "Supprimer le filtre", "Remove functionResponse.id field": "Supprimer le champ functionResponse.id", + "Remove Models": "Supprimer des modèles", + "Remove Passkey": "Supprimer le Passkey", + "Remove Passkey?": "Supprimer la clé d'accès ?", "Remove rule group": "Supprimer le groupe de règles", "Remove string prefix": "Supprimer le préfixe de la chaîne", "Remove string suffix": "Supprimer le suffixe de la chaîne", "Remove the target field": "Supprimer le champ cible", "Remove tier": "Supprimer le palier", "Removed": "Supprimé", - "Removed Models ({{count}})": "Modèles supprimés ({{count}})", "Removed {{removed}} duplicate key(s). Before: {{before}}, After: {{after}}": "{{removed}} clé(s) en double supprimée(s). Avant : {{before}}, Après : {{after}}", + "Removed Models ({{count}})": "Modèles supprimés ({{count}})", "Removes Midjourney flags such as --fast, --relax, and --turbo from user prompts.": "Supprime les drapeaux Midjourney tels que --fast, --relax et --turbo des prompts utilisateur.", "Removing Passkey will require you to sign in with your password next time. You can re-register anytime.": "La suppression de la clé d'accès (Passkey) vous obligera à vous connecter avec votre mot de passe la prochaine fois. Vous pouvez vous réinscrire à tout moment.", "Rename": "Renommer", @@ -2763,19 +2955,25 @@ "Renamed successfully": "Renommé avec succès", "Repeat the administrator password": "Répéter le mot de passe administrateur", "Replace": "Remplacer", - "Replace With": "Remplacer par", "Replace all existing keys": "Remplacer toutes les clés existantes", "Replace channel models": "Remplacer les modèles du canal", "Replace mode: Will completely replace all existing keys": "Mode remplacement : Remplacera complètement toutes les clés existantes", + "Replace With": "Remplacer par", + "replaced": "remplacé", "Replacement Model": "Modèle de remplacement", "Replica count": "Nombre de réplicas", "Replicate": "Replicate", + "request": "requête", "Request": "Requête", "Request Body Disk Cache": "Cache disque du corps de requête", "Request Body Field": "Champ du corps de requête", "Request Body Memory Cache": "Cache mémoire du corps de requête", + "Request body pass-through is enabled. The request body will be sent directly to the upstream without any conversion.": "Le passage du corps de requête est activé. Le corps sera envoyé directement en amont sans conversion.", + "Request conversion": "Conversion de requête", "Request Conversion": "Conversion de requête", "Request Count": "Nombre de requêtes", + "Request failed": "Échec de la requête", + "Request flow": "Flux de requête", "Request Header Field": "Champ d'en-tête de requête", "Request Header Override": "Remplacement des en-têtes de requête", "Request Header Overrides": "Remplacements d'en-têtes de requête", @@ -2783,15 +2981,12 @@ "Request Limits": "Limites de requêtes", "Request Model": "Modèle demandé", "Request Model:": "Modèle demandé :", - "Request body pass-through is enabled. The request body will be sent directly to the upstream without any conversion.": "Le passage du corps de requête est activé. Le corps sera envoyé directement en amont sans conversion.", - "Request conversion": "Conversion de requête", - "Request failed": "Échec de la requête", - "Request flow": "Flux de requête", "Request overrides, routing behavior, and upstream model automation": "Surcharges de requête, comportement de routage et automatisation des modèles amont", "Request rule pricing": "Règles de tarification de requête", "Request timed out, please refresh and restart GitHub login": "Délai dépassé, veuillez actualiser la page puis relancer la connexion GitHub", "Request-based": "Selon la requête", "Requests per minute": "Requêtes par minute", + "requests served": "requêtes traitées", "Requests will be forwarded to this worker. Trailing slashes are removed automatically.": "Les requêtes seront transmises à ce worker. Les barres obliques finales sont automatiquement supprimées.", "Requests:": "Requêtes :", "Require email verification for new accounts": "Exiger la vérification de l'e-mail pour les nouveaux comptes", @@ -2806,23 +3001,23 @@ "Resend ({{seconds}}s)": "Renvoyer ({{seconds}}s)", "Reset": "Réinitialiser", "Reset 2FA": "Réinitialiser la 2FA", - "Reset Cycle": "Cycle de réinitialisation", - "Reset Passkey": "Réinitialiser le Passkey", - "Reset Period": "Période de réinitialisation", - "Reset Stats": "Réinitialiser les statistiques", - "Reset Two-Factor Authentication": "Réinitialiser 2FA", "Reset all model ratios?": "Réinitialiser tous les ratios de modèle ?", "Reset all settings to default values": "Réinitialiser tous les paramètres aux valeurs par défaut", "Reset at:": "Réinitialisation à :", "Reset balance and used quota": "Réinitialiser le solde et le quota utilisé", + "Reset Cycle": "Cycle de réinitialisation", "Reset email sent, please check your inbox": "Email de réinitialisation envoyé, veuillez vérifier votre boîte de réception", "Reset failed": "Échec de la réinitialisation", + "Reset Passkey": "Réinitialiser le Passkey", "Reset password": "Réinitialiser le mot de passe", + "Reset Period": "Période de réinitialisation", "Reset ratios": "Réinitialiser les ratios", - "Reset to Default": "Réinitialiser par défaut", + "Reset Stats": "Réinitialiser les statistiques", "Reset to default": "Réinitialiser par défaut", + "Reset to Default": "Réinitialiser par défaut", "Reset to default color": "Réinitialiser la couleur par défaut", "Reset to default configuration": "Réinitialisé à la configuration par défaut", + "Reset Two-Factor Authentication": "Réinitialiser 2FA", "Resets in:": "Réinitialise dans :", "Resolve Conflicts": "Résoudre les conflits", "Resource Configuration": "Configuration des ressources", @@ -2837,9 +3032,9 @@ "Retry Chain": "Chaîne de tentatives", "Retry Suggestion": "Suggestion de relance", "Retry Times": "Nombre de tentatives", + "Return a custom error immediately": "Retourner immédiatement une erreur personnalisée", "Return Custom Error": "Retourner une erreur personnalisée", "Return Error": "Retourner l'erreur", - "Return a custom error immediately": "Retourner immédiatement une erreur personnalisée", "Return to dashboard": "Retour au tableau de bord", "Reveal API key": "Afficher la clé API", "Reveal key": "Révéler la clé", @@ -2859,9 +3054,10 @@ "Routing & Overrides": "Routage et surcharges", "Routing Strategy": "Stratégie de routage", "Rows per page": "Lignes par page", + "RPM": "RPM", + "RSA Private Key (Production)": "Clé privée RSA (Production)", + "RSA Private Key (Sandbox)": "Clé privée RSA (Sandbox)", "Rule": "Règle", - "Rule Description (optional)": "Description de la règle (optionnel)", - "Rule group": "Groupe de règles", "Rule {{line}} is missing source field": "La règle {{line}} n'a pas de champ source", "Rule {{line}} is missing target field": "La règle {{line}} n'a pas de champ cible", "Rule {{line}} is missing target path": "La règle {{line}} n'a pas de chemin cible", @@ -2870,37 +3066,29 @@ "Rule {{line}} pass_headers is missing header names": "La règle {{line}} pass_headers n'a pas de noms d'en-têtes", "Rule {{line}} prune_objects is missing conditions": "La règle {{line}} prune_objects n'a pas de conditions", "Rule {{line}} return_error requires a message field": "La règle {{line}} return_error nécessite un champ message", + "Rule Description (optional)": "Description de la règle (optionnel)", + "Rule group": "Groupe de règles", + "rules": "règles", "Rules": "Règles", "Rules JSON": "Règles JSON", "Rules JSON must be an array": "Le JSON des règles doit être un tableau", "Run GC": "Exécuter le GC", "Run tests for the selected models": "Exécuter les tests pour les modèles sélectionnés", "Running": "En cours", - "SMTP Email": "E-mail SMTP", - "SMTP Host": "Hôte SMTP", - "SQLite stores all data in a single file. Make sure that file is persisted when running in containers.": "SQLite stocke toutes les données dans un seul fichier. Assurez-vous que ce fichier est persisté lors de l'exécution dans des conteneurs.", - "SSRF Protection": "Protection SSRF", + "s": "s", "Safety Settings": "Paramètres de sécurité", "Same as Local": "Identique au local", "Sandbox mode": "Mode sandbox", "Save": "Enregistrer", - "Save Backup Codes": "Sauvegarder les codes de secours", - "Save Changes": "Enregistrer les modifications", - "Save Creem settings": "Enregistrer les paramètres Creem", - "Save Epay settings": "Enregistrer les paramètres Epay", - "Save Models": "Enregistrer les modèles", - "Save Preferences": "Enregistrer les préférences", - "Save SMTP settings": "Enregistrer les paramètres SMTP", - "Save SSRF settings": "Enregistrer les paramètres SSRF", - "Save Settings": "Enregistrer les paramètres", - "Save Stripe settings": "Enregistrer les paramètres Stripe", - "Save Waffo Pancake settings": "Enregistrer les paramètres Waffo Pancake", - "Save Worker settings": "Enregistrer les paramètres Worker", "Save all settings": "Enregistrer tous les paramètres", + "Save Backup Codes": "Sauvegarder les codes de secours", "Save changes": "Enregistrer les modifications", + "Save Changes": "Enregistrer les modifications", "Save chat settings": "Enregistrer les paramètres de chat", "Save check-in settings": "Enregistrer les paramètres de connexion", + "Save Creem settings": "Enregistrer les paramètres Creem", "Save drawing settings": "Enregistrer les paramètres de dessin", + "Save Epay settings": "Enregistrer les paramètres Epay", "Save failed": "Échec de l'enregistrement", "Save failed, please retry": "Échec de l'enregistrement, veuillez réessayer", "Save general settings": "Enregistrer les paramètres généraux", @@ -2908,23 +3096,33 @@ "Save io.net settings": "Enregistrer les paramètres io.net", "Save log settings": "Enregistrer les paramètres de journal", "Save model ratios": "Enregistrer les ratios de modèles", + "Save Models": "Enregistrer les modèles", "Save monitoring rules": "Enregistrer les règles de surveillance", "Save navigation": "Enregistrer la navigation", "Save notice": "Enregistrer l'avis", + "Save Preferences": "Enregistrer les préférences", "Save rate limits": "Enregistrer les limites de débit", "Save sensitive words": "Enregistrer les mots sensibles", + "Save Settings": "Enregistrer les paramètres", "Save sidebar modules": "Enregistrer les modules de la barre latérale", + "Save SMTP settings": "Enregistrer les paramètres SMTP", + "Save SSRF settings": "Enregistrer les paramètres SSRF", + "Save Stripe settings": "Enregistrer les paramètres Stripe", "Save these backup codes in a safe place. Each code can only be used once.": "Enregistrez ces codes de secours dans un endroit sûr. Chaque code ne peut être utilisé qu'une seule fois.", "Save these codes in a safe place. Each code can only be used once.": "Enregistrez ces codes dans un endroit sûr. Chaque code ne peut être utilisé qu'une seule fois.", "Save tool prices": "Enregistrer les prix des outils", + "Save Waffo Pancake settings": "Enregistrer les paramètres Waffo Pancake", + "Save Worker settings": "Enregistrer les paramètres Worker", "Saved successfully": "Enregistré avec succès", "Saving...": "Enregistrement en cours...", "Scan QR Code": "Scanner le code QR", "Scan the QR code to follow the official account and reply with “验证码” to receive your verification code.": "Scannez le code QR pour suivre le compte officiel et répondez par « 验证码 » pour recevoir votre code de vérification.", "Scan the QR code with WeChat to bind your account": "Scannez le code QR avec WeChat pour lier votre compte", "Scan this QR code with your authenticator app (Google Authenticator, Microsoft Authenticator, etc.)": "Scannez ce code QR avec votre application d'authentification (Google Authenticator, Microsoft Authenticator, etc.)", + "Scanline": "Ligne de balayage", "Scenario Templates": "Modèles de scénario", "Scheduled channel tests": "Tests de canaux planifiés", + "scheduling controls": "contrôles d'ordonnancement", "Scope": "Portée", "Scopes": "Portées", "Search": "Rechercher", @@ -2952,19 +3150,15 @@ "Search tags...": "Rechercher des tags...", "Search vendors...": "Rechercher des fournisseurs...", "Search...": "Rechercher...", - "Secret Key": "Clé secrète", + "seconds": "secondes", "Secret env (JSON object)": "Environnement secret (objet JSON)", "Secret environment variables (JSON)": "Variables d'environnement secrètes (JSON)", + "Secret Key": "Clé secrète", "Secure & Reliable": "Sécurisé et fiable", "Security": "Sécurité", "Security Check": "Vérification de sécurité", "Security verification": "Vérification de sécurité", "Select": "Sélectionner", - "Select All Visible": "Sélectionner tout ce qui est visible", - "Select Language": "Sélectionner la langue", - "Select Model": "Sélectionner le modèle", - "Select Sync Channels": "Sélectionner les canaux de synchronisation", - "Select Sync Source": "Sélectionner la source de synchronisation", "Select a color": "Sélectionner une couleur", "Select a group": "Sélectionner un groupe", "Select a group type": "Sélectionner un type de groupe", @@ -2977,6 +3171,7 @@ "Select all": "Tout sélectionner", "Select all (filtered)": "Tout sélectionner (filtré)", "Select all models": "Sélectionner tous les modèles", + "Select All Visible": "Sélectionner tout ce qui est visible", "Select an operation mode and enter the amount": "Sélectionnez un mode d'opération et entrez le montant", "Select announcement type": "Sélectionner le type d'annonce", "Select at least one field to overwrite.": "Sélectionnez au moins un champ à écraser.", @@ -2994,8 +3189,10 @@ "Select items...": "Sélectionner des éléments...", "Select key format": "Sélectionner le format de clé", "Select language": "Sélectionner une langue", + "Select Language": "Sélectionner la langue", "Select layout style": "Sélectionner le style de mise en page", "Select locations": "Sélectionner des emplacements", + "Select Model": "Sélectionner le modèle", "Select models (empty for allow all)": "Sélectionner les modèles (vide pour autoriser tout)", "Select models and apply to channel models list.": "Sélectionnez les modèles et appliquez-les à la liste des modèles de canaux.", "Select models or add custom ones": "Sélectionner des modèles ou en ajouter des personnalisés", @@ -3013,14 +3210,18 @@ "Select site direction": "Sélectionner la direction du site", "Select start time": "Sélectionner l'heure de début", "Select subscription plan": "Sélectionner un plan d'abonnement", + "Select Sync Channels": "Sélectionner les canaux de synchronisation", "Select sync channels to compare prices": "Sélectionner les canaux de synchronisation pour comparer les prix", "Select sync channels to compare ratios": "Sélectionner les canaux de synchronisation pour comparer les ratios", + "Select Sync Source": "Sélectionner la source de synchronisation", "Select the API endpoint region": "Sélectionner la région du point de terminaison API", "Select the fields you want to overwrite with upstream data. Unselected fields keep their local values.": "Sélectionnez les champs que vous souhaitez écraser avec les données en amont. Les champs non sélectionnés conservent leurs valeurs locales.", "Select theme preference": "Sélectionner la préférence de thème", "Select time granularity": "Sélectionner la granularité temporelle", "Select vendor": "Sélectionner le fournisseur", "Selectable groups": "Groupes sélectionnables", + "selected": "sélectionné", + "selected channel(s). Leave empty to remove tag.": "canal(aux) sélectionné(s). Laisser vide pour supprimer l'étiquette.", "Selected conflicts were overwritten successfully.": "Les conflits sélectionnés ont été écrasés avec succès.", "Self-Use Mode": "Mode d'utilisation personnelle", "Send": "Envoyer", @@ -3033,26 +3234,26 @@ "Server Address": "Adresse du serveur", "Server IP": "IP du serveur", "Server Log Management": "Gestion des journaux serveur", - "Server Token": "Jeton de serveur", "Server logging is not enabled (log directory not configured)": "La journalisation serveur n'est pas activée (répertoire non configuré)", + "Server Token": "Jeton de serveur", "Service account JSON file(s)": "Fichier(s) JSON de compte de service", "Session expired!": "Session expirée !", "Session expired?": "Session expirée ?", "Set": "Définir", - "Set API key access restrictions": "Définir les restrictions d'accès de la clé API", - "Set API key basic information": "Définir les informations de base de la clé API", - "Set Field": "Définir le champ", - "Set Header": "Définir l'en-tête", - "Set Project to io.cloud when creating/selecting key": "Définir le projet sur io.cloud lors de la création/sélection de la clé", - "Set Request Header": "Définir un en-tête de requête", - "Set Tag": "Définir un tag", "Set a discount rate for a specific recharge amount threshold.": "Définir un taux de réduction pour un seuil de montant de recharge spécifique.", "Set a secure password (min. 8 characters)": "Définir un mot de passe sécurisé (min. 8 caractères)", "Set a tag for": "Définir un tag pour", + "Set API key access restrictions": "Définir les restrictions d'accès de la clé API", + "Set API key basic information": "Définir les informations de base de la clé API", + "Set Field": "Définir le champ", "Set filters to customize your dashboard statistics and charts.": "Définir des filtres pour personnaliser les statistiques et les graphiques de votre tableau de bord.", "Set filters to narrow down your log search results.": "Définir des filtres pour affiner vos résultats de recherche de journaux.", + "Set Header": "Définir l'en-tête", + "Set Project to io.cloud when creating/selecting key": "Définir le projet sur io.cloud lors de la création/sélection de la clé", "Set quota amount and limits": "Définir le quota et les limites", + "Set Request Header": "Définir un en-tête de requête", "Set runtime request header: override entire value, or manipulate comma-separated tokens": "Définir l'en-tête de requête : remplacer la valeur ou manipuler les tokens séparés par des virgules", + "Set Tag": "Définir un tag", "Set tag for selected channels": "Définir un tag pour les canaux sélectionnés", "Set the language used across the interface": "Définir la langue utilisée dans l'interface", "Set the user's role (cannot be Root)": "Définir le rôle de l'utilisateur (ne peut pas être Root)", @@ -3076,12 +3277,13 @@ "Show token usage statistics in the UI": "Afficher les statistiques d'utilisation des jetons dans l'interface utilisateur", "Showcase core capabilities with demo credentials and limited access.": "Présenter les fonctionnalités principales avec des identifiants de démonstration et un accès limité.", "Showing": "Affichage de", + "showing •": "affichage •", "Sidebar": "Barre latérale", - "Sidebar Personal Settings": "Paramètres personnels de la barre latérale", "Sidebar collapsed by default for new users": "Barre latérale masquée par défaut pour les nouveaux utilisateurs", "Sidebar modules": "Modules de la barre latérale", - "Sign In": "Se connecter", + "Sidebar Personal Settings": "Paramètres personnels de la barre latérale", "Sign in": "Se connecter", + "Sign In": "Se connecter", "Sign in with Passkey": "Se connecter avec Passkey", "Sign out": "Se déconnecter", "Sign up": "S'inscrire", @@ -3098,6 +3300,7 @@ "Single Key": "Clé unique", "Site Key": "Clé du site", "Size:": "Taille :", + "sk_xxx or rk_xxx": "sk_xxx ou rk_xxx", "Skip retry on failure": "Ne pas réessayer en cas d'échec", "Skip to Main": "Aller au contenu principal", "Slow": "Slow", @@ -3106,6 +3309,11 @@ "Slug is required": "Le slug est requis", "Slug must be less than 100 characters": "Le slug doit contenir moins de 100 caractères", "Smallest USD amount users can recharge (Epay)": "Montant minimum en USD que les utilisateurs peuvent recharger (Epay)", + "SMTP Email": "E-mail SMTP", + "SMTP Host": "Hôte SMTP", + "smtp.example.com": "smtp.example.com", + "socks5://user:pass@host:port": "socks5://user:pass@host:port", + "Soft": "Doux", "Soft Errors": "Erreurs douces", "Solid": "Solid", "Solid Color": "Solid Color", @@ -3114,22 +3322,27 @@ "Sonnet Model": "Modèle Sonnet", "Sora": "Sora", "Sort": "Trier", - "Sort Order": "Ordre de tri", "Sort by ID": "Trier par ID", + "Sort Order": "Ordre de tri", "Source": "Source", "Source Endpoint": "Point source", "Source Field": "Champ source", "Source Header": "En-tête source", + "sources": "sources", "Space-separated OAuth scopes": "Scopes OAuth séparés par des espaces", "Spark model version, e.g., v2.1 (version number in API URL)": "Version du modèle Spark, par exemple v2.1 (numéro de version dans l'URL de l'API)", "Special billing expression": "Expression de facturation spéciale", "Special usable group rules": "Règles spéciales de groupes utilisables", "Speed": "Speed", + "Spotlight": "Projecteur", + "SQLite stores all data in a single file. Make sure that file is persisted when running in containers.": "SQLite stocke toutes les données dans un seul fichier. Assurez-vous que ce fichier est persisté lors de l'exécution dans des conteneurs.", + "SSRF Protection": "Protection SSRF", "Standard": "Standard", "Start": "Début", - "Start Time": "Heure de début", "Start a conversation to see messages here": "Démarrez une conversation pour voir les messages ici", + "Start color": "Couleur de départ", "Start for free with generous limits. No credit card required.": "Commencez gratuitement avec des limites généreuses. Aucune carte de crédit requise.", + "Start Time": "Heure de début", "Static Gradient": "Static Gradient", "Static page describing the platform.": "Page statique décrivant la plateforme.", "Statistical count": "Nombre statistique", @@ -3150,6 +3363,7 @@ "Store ID": "ID du magasin", "Store ID is required": "L'ID de magasin est requis", "Stored value is not echoed back for security": "Par sécurité, la valeur enregistrée n'est pas affichée", + "stream": "Flux", "Stream": "Flux", "Stream Mode": "Mode streaming", "Stream Status": "Statut du flux", @@ -3161,9 +3375,9 @@ "Stripe product price ID": "ID de prix du produit Stripe", "Stripe/Creem requires creating products on the third-party platform and entering the ID": "Stripe/Creem nécessite de créer des produits sur la plateforme tierce et d'entrer l'ID", "Submit": "Soumettre", + "Submit directly": "Soumettre directement", "Submit Result": "Soumettre le résultat", "Submit Time": "Heure de soumission", - "Submit directly": "Soumettre directement", "Submitted": "Soumis", "Submitting": "Envoi en cours", "Submitting...": "Envoi...", @@ -3177,6 +3391,7 @@ "Subscription Plans": "Plans d'abonnement", "Subtract": "Soustraire", "Success": "Succès", + "Success Soft": "Succès doux", "Successfully created {{count}} API Key(s)": "{{count}} clé(s) API créée(s) avec succès", "Successfully created {{count}} redemption codes": "{{count}} codes de réduction créés avec succès", "Successfully deleted {{count}} API key(s)": "{{count}} clé(s) API supprimée(s) avec succès", @@ -3191,9 +3406,9 @@ "Support for high concurrency with automatic load balancing": "Prise en charge de la haute concurrence avec équilibrage de charge automatique", "Supported Imagine Models": "Modèles Imagine pris en charge", "Supported variables": "Variables supportées", + "Supports `-thinking`, `-thinking-": "Prend en charge `-thinking`, `-thinking-", "Supports HTML markup or iframe embedding. Enter HTML code directly, or provide a complete URL to automatically embed it as an iframe.": "Prend en charge le balisage HTML ou l'intégration d'iframe. Entrez le code HTML directement, ou fournissez une URL complète pour l'intégrer automatiquement en tant qu'iframe.", "Supports PNG, JPG, SVG, or WebP. Recommended size: 128×128 or smaller.": "Prend en charge PNG, JPG, SVG ou WebP. Taille recommandée : 128×128 ou moins.", - "Supports `-thinking`, `-thinking-": "Prend en charge `-thinking`, `-thinking-", "Swap Face": "Échanger le visage", "Switch affinity on success": "Changer l'affinité en cas de succès", "Switch between the new frontend and the classic frontend. Changes take effect after page reload.": "Basculer entre le nouveau frontend et le frontend classique. Les modifications prennent effet après le rechargement de la page.", @@ -3202,39 +3417,35 @@ "Sync Endpoint": "Point de terminaison de synchronisation", "Sync Endpoints": "Points de synchronisation", "Sync Fields": "Synchroniser les champs", - "Sync Upstream": "Synchroniser l'amont", - "Sync Upstream Models": "Synchroniser les modèles amont", "Sync from the public upstream metadata repository.": "Synchroniser depuis le dépôt de métadonnées public en amont.", "Sync this model with official upstream": "Synchroniser ce modèle avec la source amont officielle", + "Sync Upstream": "Synchroniser l'amont", + "Sync Upstream Models": "Synchroniser les modèles amont", "Synchronize models and vendors from an upstream source": "Synchroniser les modèles et les fournisseurs à partir d'une source amont", "Syncing prices, please wait...": "Synchronisation des prix, veuillez patienter...", "System": "Système", "System Administration": "Administration du système", "System Announcements": "Annonces système", "System Behavior": "Comportement du système", + "System data statistics": "Statistiques des données système", "System Information": "Informations système", + "System initialized successfully! Redirecting…": "Système initialisé avec succès ! Redirection…", + "System logo": "Logo du système", + "System maintenance": "Maintenance du système", "System Memory": "Mémoire système", "System Memory Stats": "Statistiques de la mémoire système", "System Name": "Nom du système", + "System name is required": "Le nom du système est requis", "System Notice": "Avis système", "System Performance Monitoring": "Surveillance des performances système", "System Prompt": "Invite système", "System Prompt Concatenation": "Concaténation des invites système", "System Prompt Override": "Remplacement du prompt système", - "System Settings": "Paramètres du système", - "System Version": "Version du système", - "System data statistics": "Statistiques des données système", - "System initialized successfully! Redirecting…": "Système initialisé avec succès ! Redirection…", - "System logo": "Logo du système", - "System maintenance": "Maintenance du système", - "System name is required": "Le nom du système est requis", "System settings": "Paramètres système", + "System Settings": "Paramètres du système", "System setup wizard": "Assistant de configuration du système", "System task records": "Historique des tâches système", - "TPM": "TPM", - "TTL": "TTL", - "TTL (seconds)": "TTL (secondes)", - "TTL (seconds, 0 = default)": "TTL (secondes, 0 = par défaut)", + "System Version": "Version du système", "Table view": "Vue en tableau", "Tag": "Balise", "Tag Aggregate": "Agrégat de balises", @@ -3249,19 +3460,19 @@ "Target Endpoint": "Point cible", "Target Field": "Champ cible", "Target Field Path": "Chemin du champ cible", + "Target group": "Groupe cible", "Target Header": "En-tête cible", "Target Path (optional)": "Chemin cible (optionnel)", - "Target group": "Groupe cible", "Task": "Tâche", "Task ID": "ID de la tâche", "Task ID:": "ID de tâche :", - "Task Logs": "Journaux de tâches", "Task logs": "Journaux des tâches", + "Task Logs": "Journaux de tâches", "Team Collaboration": "Collaboration d'équipe", "Technical Support": "Support technique", "Telegram": "Telegram", - "Telegram Login Widget": "Widget de connexion Telegram", "Telegram login requires widget integration; coming soon": "La connexion Telegram nécessite l'intégration d'un widget ; disponible bientôt", + "Telegram Login Widget": "Widget de connexion Telegram", "Template": "Modèle", "Template variables:": "Variables de modèle :", "Templates": "Modèles", @@ -3271,17 +3482,16 @@ "Test All Channels": "Tester tous les canaux", "Test Channel Connection": "Tester la connexion du canal", "Test Connection": "Tester la connexion", + "Test connectivity for:": "Tester la connectivité pour :", + "Test interval (minutes)": "Intervalle de test (minutes)", "Test Latency": "Tester la latence", "Test Mode": "Mode test", "Test Model": "Tester le modèle", - "Test connectivity for:": "Tester la connectivité pour :", - "Test interval (minutes)": "Intervalle de test (minutes)", "Testing all enabled channels started. Please refresh to see results.": "Test de tous les canaux activés démarré. Veuillez actualiser pour voir les résultats.", "Testing...": "Test en cours...", "Text Input": "Entrée texte", "Text Output": "Sortie texte", "Text to Video": "Texte vers vidéo", - "The URL for this chat client.": "L'URL de ce client de discussion.", "The administrator account is already initialized. You can keep your existing credentials and continue to the next step.": "Le compte administrateur est déjà initialisé. Vous pouvez conserver vos identifiants existants et passer à l'étape suivante.", "The administrator configured an external link for this document.": "L'administrateur a configuré un lien externe pour ce document.", "The administrator has not configured a privacy policy yet.": "L'administrateur n'a pas encore configuré de politique de confidentialité.", @@ -3304,6 +3514,7 @@ "The token group that will have a custom ratio": "Le groupe de jetons qui aura un ratio personnalisé", "The unique identifier for this model": "L'identifiant unique de ce modèle", "The unique name for this vendor": "Le nom unique de ce fournisseur", + "The URL for this chat client.": "L'URL de ce client de discussion.", "Theme": "Thème", "Theme Color": "Couleur du thème", "Theme Settings": "Paramètres du thème", @@ -3312,8 +3523,8 @@ "These toggles affect whether certain request fields are passed through to the upstream provider.": "Ces bascules déterminent si certains champs de demande sont transmis au fournisseur en amont.", "Thinking Adapter": "Adaptateur de réflexion", "Thinking to Content": "Réflexion vers Contenu", - "Third-party Payment Config": "Configuration de paiement tiers", "Third-party account bindings (read-only, managed by user in profile settings)": "Liaisons de comptes tiers (lecture seule, gérées par l'utilisateur dans les paramètres de profil)", + "Third-party Payment Config": "Configuration de paiement tiers", "This action cannot be undone.": "Cette action est irréversible.", "This action cannot be undone. This will permanently delete your account and remove all your data from our servers.": "Cette action est irréversible. Cela supprimera définitivement votre compte et toutes vos données de nos serveurs.", "This action will permanently remove 2FA protection from your account.": "Cette action supprimera définitivement la protection 2FA de votre compte.", @@ -3330,10 +3541,13 @@ "This model has both fixed price and ratio billing conflicts": "Ce modèle présente des conflits de facturation à la fois en prix fixe et au ratio", "This model is not available in any group, or no group pricing information is configured.": "Ce modèle n'est disponible dans aucun groupe, ou aucune information de tarification de groupe n'est configurée.", "This month": "Ce mois-ci", + "This notification preset uses fixed colors. Switch to an animation preset to customize colors.": "Ce préréglage de notification utilise des couleurs fixes. Passez à un préréglage d'animation pour personnaliser les couleurs.", "This page has not been created yet.": "Cette page n'a pas encore été créée.", "This project must be used in compliance with the": "Ce projet doit être utilisé conformément aux", "This record was written by a pre-upgrade instance and lacks audit info. Upgrade the instance to record server IP, callback IP, payment method and system version.": "Cet enregistrement provient d’une instance avant la mise à niveau et n’inclut pas d’audits. Mettez à jour l’instance pour enregistrer l’IP du serveur, l’IP de callback, le moyen de paiement et la version du système.", "This site currently has {{count}} models enabled": "Ce site compte actuellement {{count}} modèles activés", + "this token group": "ce groupe de jetons", + "this user group": "ce groupe d'utilisateurs", "This user has no bindings": "Cet utilisateur n'a aucune liaison", "This week": "Cette semaine", "This will append 2 template rules (Codex CLI and Claude CLI) to the existing rule list.": "Cela ajoutera 2 règles modèles (Codex CLI et Claude CLI) à la liste de règles existante.", @@ -3361,12 +3575,18 @@ "Time:": "Heure :", "Timed cache (1h)": "Cache limité (1h)", "Timeline": "Chronologie", + "times": "Fois", "Timing": "Durée", "Tip: The generated key is a JSON credential including access_token / refresh_token / account_id.": "Conseil : La clé générée est un identifiant JSON incluant access_token / refresh_token / account_id.", + "to access this resource.": "pour accéder à cette ressource.", + "to confirm": "pour confirmer", "To Lower": "En minuscules", "To Lowercase": "En minuscules", + "to override billing when a user in one group uses a token of another group.": "pour remplacer la facturation lorsqu'un utilisateur d'un groupe utilise un jeton d'un autre groupe.", + "to the Models list so users can use them before the mapping sends traffic upstream.": "à la liste des modèles afin que les utilisateurs puissent les utiliser avant que le mappage n'envoie le trafic en amont.", "To Upper": "En majuscules", "To Uppercase": "En majuscules", + "to view this resource.": "pour afficher cette ressource.", "Today": "Aujourd'hui", "Toggle columns": "Basculer les colonnes", "Toggle navigation menu": "Basculer le menu de navigation", @@ -3376,15 +3596,16 @@ "Token Breakdown": "Détails des tokens", "Token Endpoint": "Point de terminaison de jeton", "Token Endpoint (Optional)": "Point de terminaison du jeton (Facultatif)", + "Token estimator": "Estimation des jetons", + "Token management": "Gestion des jetons", "Token Management": "Gestion des tokens", "Token Mgmt": "Gestion des jetons", "Token Name": "Nom du jeton", - "Token estimator": "Estimation des jetons", - "Token management": "Gestion des jetons", "Token obtained from your Gotify application": "Jeton obtenu depuis votre application Gotify", "Token regenerated and copied to clipboard": "Jeton régénéré et copié dans le presse-papiers", "Token unit": "Unité de tokens", "Token-based": "Basé sur les jetons", + "tokens": "jetons", "Tokens": "Jeton", "Tokens Only": "Jetons uniquement", "Tokens per minute": "Jetons par minute", @@ -3393,60 +3614,65 @@ "Tool identifier": "Identifiant d’outil", "Tool price settings": "Paramètres de prix des outils", "Tool prices": "Prix des outils", + "Top {{count}}": "Top {{count}}", "Top Models": "Top Modèles", - "Top Users": "Top utilisateurs", "Top up balance and view billing history.": "Recharger le solde et consulter l'historique de facturation.", - "Top {{count}}": "Top {{count}}", - "Top-Up Link": "Lien de recharge", + "Top Users": "Top utilisateurs", "Top-up": "Recharge", - "Top-up Audit Info": "Audits de rechargement", "Top-up amount options": "Options de montant de recharge", + "Top-up Audit Info": "Audits de rechargement", "Top-up group ratios": "Ratios de groupe de recharge", + "Top-Up Link": "Lien de recharge", + "top-up ratio": "ratio de recharge", "Topup Amount": "Montant de la recharge", "Total": "Total", "Total Allocated": "Total alloué", - "Total Cost": "Coût total", - "Total Count": "Nombre total", - "Total Earned": "Total gagné", - "Total GPUs": "GPUs totaux", - "Total Log Size": "Taille totale des journaux", - "Total Quota": "Quota total", - "Total Tokens": "Jetons totaux", - "Total Usage": "Utilisation totale", "Total check-ins": "Total des connexions", "Total consumed": "Consommé total", "Total consumed quota": "Quota total consommé", "Total cost": "Coût total", + "Total Cost": "Coût total", + "Total Count": "Nombre total", "Total earned": "Total gagné", + "Total Earned": "Total gagné", + "Total GPUs": "GPUs totaux", "Total invitation revenue": "Revenu total des invitations", + "Total Log Size": "Taille totale des journaux", + "Total Quota": "Quota total", "Total requests allowed per period. 0 = unlimited.": "Total des requêtes autorisées par période. 0 = illimité.", "Total requests made": "Requêtes totales effectuées", + "Total Tokens": "Jetons totaux", + "Total Usage": "Utilisation totale", "Total:": "Total :", + "TPM": "TPM", "Track per-request consumption to power usage analytics. Keeping this on increases database writes.": "Suivre la consommation par requête pour l'analyse de l'utilisation. Garder ceci activé augmente les écritures en base de données.", "Track usage, costs and performance with real-time analytics": "Suivez l'utilisation, les coûts et les performances avec des analyses en temps réel", "Tracks current account base limits and additional metered usage on Codex upstream.": "Affiche les limites de base et l’utilisation supplémentaire (metered) du compte auprès de Codex en amont.", "Transfer": "Transférer", "Transfer Amount": "Montant du transfert", - "Transfer Rewards": "Transférer les récompenses", "Transfer failed": "Transfert échoué", + "Transfer Rewards": "Transférer les récompenses", "Transfer successful": "Transfert réussi", "Transfer to Balance": "Transférer vers le solde", "Translate `-thinking` suffixes into Anthropic native thinking models while keeping pricing predictable.": "Traduire les suffixes `-thinking` en modèles de réflexion natifs Anthropic tout en gardant une tarification prévisible.", "Transparent Billing": "Facturation transparente", + "Trim leading/trailing whitespace": "Supprimer les espaces en début/fin", "Trim Prefix": "Supprimer le préfixe", "Trim Space": "Supprimer les espaces", "Trim Suffix": "Supprimer le suffixe", - "Trim leading/trailing whitespace": "Supprimer les espaces en début/fin", "Trusted": "Fiable", "Try adjusting your search to locate a missing model.": "Essayez d'ajuster votre recherche pour localiser un modèle manquant.", + "TTL": "TTL", + "TTL (seconds, 0 = default)": "TTL (secondes, 0 = par défaut)", + "TTL (seconds)": "TTL (secondes)", "Tune selection priority, testing, status handling, and request overrides.": "Ajustez la priorité de sélection, les tests, la gestion des statuts et les surcharges de requête.", "Turnstile is enabled but site key is empty.": "Turnstile est activé mais la clé du site est vide.", - "Two-Factor Authentication": "Authentification à deux facteurs", - "Two-Step Verification": "Validation en deux étapes", "Two-factor Authentication": "Authentification à deux facteurs", + "Two-Factor Authentication": "Authentification à deux facteurs", "Two-factor authentication disabled": "Authentification à deux facteurs désactivée", "Two-factor authentication enabled successfully!": "Authentification à deux facteurs activée avec succès!", "Two-factor authentication reset": "Authentification à deux facteurs réinitialisée", + "Two-Step Verification": "Validation en deux étapes", "Type": "Type", "Type (common)": "Type (commun)", "Type *": "Type *", @@ -3454,11 +3680,6 @@ "Type-Specific Settings": "Paramètres spécifiques au type", "Type:": "Type :", "UI granularity only — data is still aggregated hourly": "Granularité de l'interface uniquement — les données sont toujours agrégées par heure", - "URL": "URL", - "URL is required": "L'URL est requise", - "URL to your logo image (optional)": "URL de votre image de logo (facultatif)", - "USD": "USD", - "USD Exchange Rate": "Taux de change USD", "Unable to estimate price for this deployment.": "Impossible d'estimer le prix pour ce déploiement.", "Unable to generate chat link. Please contact your administrator.": "Impossible de générer le lien de discussion. Veuillez contacter votre administrateur.", "Unable to load groups": "Impossible de charger les groupes", @@ -3473,8 +3694,8 @@ "Unexpected release payload": "Format de version inattendu", "Unified API Gateway for": "Passerelle API unifiée pour", "Unique identifier for this group.": "Identifiant unique pour ce groupe.", - "Unit price (USD)": "Prix unitaire (USD)", "Unit price (local currency / USD)": "Prix unitaire (devise locale / USD)", + "Unit price (USD)": "Prix unitaire (USD)", "Unit price must be greater than 0": "Le prix unitaire doit être supérieur à 0", "Units per USD": "Unités par USD", "Unknown": "Inconnu", @@ -3487,19 +3708,19 @@ "Untrusted upstream data:": "Données amont non fiables :", "Unused": "Inutilisé", "Update": "Mettre à jour", - "Update API Key": "Mettre à jour la clé API", "Update All Balances": "Mettre à jour tous les soldes", + "Update API Key": "Mettre à jour la clé API", "Update Balance": "Mettre à jour le solde", - "Update Channel": "Mettre à jour le canal", - "Update Model": "Mettre à jour le modèle", - "Update Provider": "Mettre à jour le fournisseur", - "Update Redemption Code": "Mettre à jour le code d'échange", "Update balance for:": "Mise à jour du solde pour :", + "Update Channel": "Mettre à jour le canal", "Update channel configuration and click save when you're done.": "Mettez à jour la configuration du canal et cliquez sur Enregistrer lorsque vous avez terminé.", "Update configuration": "Mettre à jour la configuration", "Update failed": "Échec de la mise à jour", + "Update Model": "Mettre à jour le modèle", "Update model configuration and click save when you're done.": "Mettez à jour la configuration du modèle et cliquez sur Enregistrer lorsque vous avez terminé.", "Update plan info": "Mettre à jour les informations du plan", + "Update Provider": "Mettre à jour le fournisseur", + "Update Redemption Code": "Mettre à jour le code d'échange", "Update succeeded": "Mise à jour réussie", "Update the API key by providing necessary info.": "Mettez à jour la clé API en fournissant les informations nécessaires.", "Update the configuration for this custom OAuth provider.": "Mettre à jour la configuration de ce fournisseur OAuth personnalisé.", @@ -3525,48 +3746,62 @@ "Upstream Model Detection Settings": "Paramètres de détection des modèles en amont", "Upstream Model Update Check": "Vérification des mises à jour des modèles en amont", "Upstream Model Updates": "Mises à jour des modèles en amont", - "Upstream Response": "Réponse amont", - "Upstream Updates": "Mises à jour en amont", "Upstream model updates applied: {{added}} added, {{removed}} removed, {{ignored}} ignored this time, {{totalIgnored}} total ignored models": "Mises à jour des modèles en amont appliquées : {{added}} ajoutés, {{removed}} supprimés, {{ignored}} ignorés cette fois, {{totalIgnored}} modèles ignorés au total", "Upstream price sync": "Synchronisation amont des prix", "Upstream prices fetched successfully": "Prix amont récupérés avec succès", "Upstream ratios fetched successfully": "Ratios en amont récupérés avec succès", + "Upstream Response": "Réponse amont", + "upstream services integrated": "services en amont intégrés", + "Upstream Updates": "Mises à jour en amont", + "uptime": "disponibilité", "Uptime": "Temps de fonctionnement", "Uptime Kuma": "Uptime Kuma", - "Uptime Kuma URL": "URL Uptime Kuma", "Uptime Kuma groups saved successfully": "Groupes Uptime Kuma sauvegardés avec succès", + "Uptime Kuma URL": "URL Uptime Kuma", "Uptime since": "Temps de fonctionnement depuis", + "URL": "URL", + "URL is required": "L'URL est requise", + "URL to your logo image (optional)": "URL de votre image de logo (facultatif)", "Usage": "Utilisation", - "Usage Logs": "Journaux d'utilisation", "Usage logs": "Journaux d'utilisation", + "Usage Logs": "Journaux d'utilisation", "Usage mode": "Mode d'utilisation", "Usage-based": "Basé sur l'utilisation", - "Use Passkey to sign in without entering your password.": "Utilisez une clé d'accès (Passkey) pour vous connecter sans saisir votre mot de passe.", + "USD": "USD", + "USD Exchange Rate": "Taux de change USD", "Use a compatible browser or device with biometric authentication or a security key to register a Passkey.": "Utilisez un navigateur ou un appareil compatible avec l'authentification biométrique ou une clé de sécurité pour enregistrer une clé d'accès (Passkey).", "Use authenticator code": "Utiliser le code de l'authentificateur", "Use backup code": "Utiliser un code de secours", "Use disk cache when request body exceeds this size": "Utiliser le cache disque quand le corps de requête dépasse cette taille", "Use our unified OpenAI-compatible endpoint in your applications": "Utilisez notre point de terminaison unifié compatible OpenAI dans vos applications", + "Use Passkey to sign in without entering your password.": "Utilisez une clé d'accès (Passkey) pour vous connecter sans saisir votre mot de passe.", "Use secure connection when sending emails": "Utiliser une connexion sécurisée lors de l'envoi d'e-mails", "Use sidebar shortcut": "Utiliser le raccourci de la barre latérale", "Use this token for API authentication": "Utilisez ce jeton pour l'authentification API", "Use your Passkey": "Utiliser votre clé d'accès (Passkey)", + "used": "utilisé", "Used": "Utilisé", "Used / Remaining": "Utilisé / Restant", - "Used Quota": "Quota utilisé", "Used for load balancing. Higher weight = more requests": "Utilisé pour l'équilibrage de charge. Poids plus élevé = plus de requêtes", "Used in URLs and API routes": "Utilisé dans les URLs et les routes API", + "Used Quota": "Quota utilisé", "Used to authenticate with io.net deployment API": "Utilisée pour l'authentification auprès de l'API de déploiement io.net", "Used to authenticate with the worker. Leave blank to keep the existing secret.": "Utilisé pour l'authentification auprès du worker. Laissez vide pour conserver le secret existant.", "Used:": "Utilisé :", "User": "Utilisateurs", + "User {{id}}": "Utilisateur {{id}}", "User Agreement": "Accord utilisateur", "User Analytics": "Statistiques utilisateur", "User Consumption Ranking": "Classement de consommation", "User Consumption Trend": "Tendance de consommation", + "User created successfully": "Utilisateur créé avec succès", + "User dashboard and quota controls.": "Tableau de bord utilisateur et contrôles de quotas.", "User Exclusive Ratio": "Ratio exclusif utilisateur", "User Group": "Groupe d'utilisateurs", + "User group name": "Nom du groupe d'utilisateurs", "User Group: {{ratio}}x": "Groupe utilisateur : {{ratio}}x", + "User groups that can access channels with this tag": "Groupes d'utilisateurs pouvant accéder aux canaux avec cette balise", + "User groups that can access this channel. ": "Groupes d'utilisateurs qui peuvent accéder à ce canal. ", "User ID": "ID utilisateur", "User ID Field": "Champ ID utilisateur", "User ID:": "ID utilisateur :", @@ -3574,41 +3809,37 @@ "User Info Endpoint (Optional)": "Point de terminaison d'informations utilisateur (Facultatif)", "User Information": "Informations utilisateur", "User Menu": "Menu utilisateur", - "User Subscription Management": "Gestion des abonnements utilisateur", - "User Verification": "Vérification de l'utilisateur", - "User created successfully": "Utilisateur créé avec succès", - "User dashboard and quota controls.": "Tableau de bord utilisateur et contrôles de quotas.", - "User group name": "Nom du groupe d'utilisateurs", - "User groups that can access channels with this tag": "Groupes d'utilisateurs pouvant accéder aux canaux avec cette balise", - "User groups that can access this channel. ": "Groupes d'utilisateurs qui peuvent accéder à ce canal. ", "User personal functions": "Fonctions personnelles de l'utilisateur", + "User Subscription Management": "Gestion des abonnements utilisateur", "User updated successfully": "Utilisateur mis à jour avec succès", - "User {{id}}": "Utilisateur {{id}}", + "User Verification": "Vérification de l'utilisateur", "User-Agent include (one per line)": "User-Agent inclus (un par ligne)", "Username": "Nom d'utilisateur", - "Username Field": "Champ nom d'utilisateur", "Username confirmation does not match": "La confirmation du nom d'utilisateur ne correspond pas", + "Username Field": "Champ nom d'utilisateur", "Username or Email": "Nom d'utilisateur ou e-mail", "Users": "Utilisateurs", "Users call the model on the left. The platform forwards the request to the upstream model on the right.": "Les utilisateurs appellent le modèle à gauche. La plateforme transmet la requête au modèle amont à droite.", "Users must wait for a successful drawing before upscales or variations.": "Les utilisateurs doivent attendre une génération réussie avant les upscales ou variations.", - "VIP users with premium access": "Utilisateurs VIP avec accès premium", + "uses": "utilisations", "Validity": "Validité", "Validity Period": "Période de validité", "Value": "Valeur", "Value (supports JSON or plain text)": "Valeur (JSON ou texte brut)", - "Value Regex": "Regex de valeur", "Value must be at least 0": "La valeur doit être au moins 0", + "Value Regex": "Regex de valeur", + "variable": "variable", + "variable) *": "variable) *", "Variables": "Variables", "Vary": "Varier", "Vary (Strong)": "Varier (fort)", "Vary (Subtle)": "Varier (subtil)", "Vendor": "Fournisseur", - "Vendor Name *": "Nom du fournisseur *", "Vendor deleted successfully": "Fournisseur supprimé avec succès", + "Vendor Name *": "Nom du fournisseur *", "Vendor:": "Fournisseur :", - "Verification Code": "Code de vérification", "Verification code": "Code de vérification", + "Verification Code": "Code de vérification", "Verification code must be 6 digits": "Le code de vérification doit comporter 6 chiffres", "Verification code sent! Please check your email.": "Code de vérification envoyé ! Veuillez vérifier votre email.", "Verification code updates every 30 seconds.": "Le code de vérification se met à jour toutes les 30 secondes.", @@ -3617,18 +3848,17 @@ "Verification is not configured properly": "La vérification n'est pas configurée correctement", "Verification required to reveal the saved key.": "Vérification requise pour révéler la clé enregistrée.", "Verify": "Vérifier", - "Verify Setup": "Vérifier la configuration", "Verify and Sign In": "Vérifier et se connecter", + "Verify Setup": "Vérifier la configuration", "Verify your database connection": "Vérifiez votre connexion à la base de données", "Version Overrides": "Remplacements de version", "Vertex AI": "Vertex AI", - "Vertex AI Key Format": "Format de clé Vertex AI", "Vertex AI does not support functionResponse.id. Enable this to remove the field automatically.": "Vertex AI ne prend pas en charge functionResponse.id. Activez ceci pour supprimer automatiquement ce champ.", + "Vertex AI Key Format": "Format de clé Vertex AI", "Video": "Vidéo", "Video Remix": "Remix vidéo", "Vidu": "Vidu", "View": "Afficher", - "View Pricing": "Voir les tarifs", "View all currently available models": "Voir tous les modèles actuellement disponibles", "View and manage your API usage logs": "Afficher et gérer vos journaux d'utilisation de l'API", "View and manage your drawing logs": "Afficher et gérer vos journaux de dessin", @@ -3641,6 +3871,7 @@ "View mode": "Mode d'affichage", "View model call count analytics and charts": "Afficher les analyses et graphiques du nombre d'appels par modèle", "View model statistics and charts": "Afficher les statistiques et graphiques des modèles", + "View Pricing": "Voir les tarifs", "View the complete details for this": "Voir les détails complets de ce", "View the complete details for this log entry": "Voir les détails complets de cette entrée de journal", "View the complete error message and details": "Voir le message d'erreur et les détails complets", @@ -3649,18 +3880,20 @@ "View user consumption statistics and charts": "Voir les statistiques et graphiques de consommation", "View your topup transaction records and payment history": "Afficher vos enregistrements de transactions de recharge et votre historique de paiement", "Violation Code": "Code de violation", + "Violation deduction amount": "Montant de la déduction pour violation", "Violation Fee": "Frais de violation", "Violation Marker": "Marqueur de violation", - "Violation deduction amount": "Montant de la déduction pour violation", + "vip": "vip", + "VIP users with premium access": "Utilisateurs VIP avec accès premium", "Visit Settings → General and adjust quota options...": "Visitez Paramètres → Général et ajustez les options de quota...", "Visitors must authenticate before accessing the pricing directory.": "Les visiteurs doivent s'authentifier avant d'accéder au répertoire des prix.", "Visual": "Visuel", - "Visual Editor": "Éditeur Visuel", - "Visual Mode": "Mode Visuel", - "Visual Parameter Override": "Remplacement visuel des paramètres", "Visual edit": "Édition visuelle", "Visual editor": "Éditeur visuel", + "Visual Editor": "Éditeur Visuel", "Visual indicator color for the API card": "Couleur de l'indicateur visuel pour la carte API", + "Visual Mode": "Mode Visuel", + "Visual Parameter Override": "Remplacement visuel des paramètres", "VolcEngine": "VolcEngine", "Waffo Pancake Payment Gateway": "Passerelle de paiement Waffo Pancake", "Waffo Payment": "Paiement Waffo", @@ -3672,9 +3905,11 @@ "Wallet": "Portefeuille", "Wallet First": "Portefeuille en priorité", "Wallet Management": "Gestion du portefeuille", - "Wallet Only": "Portefeuille uniquement", "Wallet management and personal preferences.": "Gestion du portefeuille et préférences personnelles.", + "Wallet Only": "Portefeuille uniquement", + "Warm": "Chaud", "Warning": "Avertissement", + "Warning Soft": "Avertissement doux", "Warning: Base URL should not end with /v1. New API will handle it automatically. This may cause request failures.": "Avertissement : L'URL de base ne doit pas se terminer par /v1. La nouvelle API le gérera automatiquement. Cela peut causer des échecs de requêtes.", "Warning: Disabling 2FA will make your account less secure.": "Avertissement : La désactivation de la 2FA rendra votre compte moins sécurisé.", "Warning: This action is permanent and irreversible!": "Avertissement : Cette action est permanente et irréversible !", @@ -3682,22 +3917,22 @@ "We could not load the setup status.": "Nous n'avons pas pu charger l'état de la configuration.", "We will prompt your device to confirm using biometrics or your hardware key.": "Nous allons demander à votre appareil de confirmer en utilisant la biométrie ou votre clé matérielle.", "We'll be back online shortly.": "Nous serons de retour en ligne sous peu.", - "WeChat": "WeChat", - "WeChat QR code will be displayed here": "Le code QR WeChat sera affiché ici", - "WeChat login QR code": "Code QR de connexion WeChat", - "WeChat sign in": "Connexion WeChat", "Web Search": "Recherche web", "Webhook Configuration:": "Configuration du Webhook :", - "Webhook Secret": "Secret du Webhook", - "Webhook URL": "URL du Webhook", - "Webhook URL:": "URL du Webhook :", "Webhook public key (production)": "Clé publique Webhook (production)", "Webhook public key (production) is required": "La clé publique Webhook (production) est requise", "Webhook public key (sandbox)": "Clé publique Webhook (sandbox)", "Webhook public key (sandbox) is required": "La clé publique Webhook (sandbox) est requise", "Webhook secret": "Secret du Webhook", + "Webhook Secret": "Secret du Webhook", "Webhook signing secret (leave blank unless updating)": "Secret de signature du Webhook (laisser vide sauf en cas de mise à jour)", + "Webhook URL": "URL du Webhook", + "Webhook URL:": "URL du Webhook :", "Website is under maintenance!": "Le site web est en maintenance !", + "WeChat": "WeChat", + "WeChat login QR code": "Code QR de connexion WeChat", + "WeChat QR code will be displayed here": "Le code QR WeChat sera affiché ici", + "WeChat sign in": "Connexion WeChat", "Week": "Semaine", "Weekday": "Jour de la semaine", "Weekly": "Hebdomadaire", @@ -3709,9 +3944,9 @@ "Well-Known URL must start with http:// or https://": "L'URL bien connue doit commencer par http:// ou https://", "What would you like to know?": "Que voulez-vous savoir ?", "When conditions match, the final price is multiplied by X. Multiple matches multiply together; values < 1 act as discounts.": "Si les conditions sont remplies, le prix final est multiplié par X. Plusieurs correspondances se multiplient ; les valeurs < 1 agissent comme des remises.", - "When enabled, Midjourney callbacks are accepted (reveals server IP).": "Lorsque activé, les callbacks Midjourney sont acceptés (révèle l'IP du serveur).", "When enabled, if channels in the current group fail, it will try channels in the next group in order.": "Lorsqu'elle est activée, si les canaux du groupe actuel échouent, le système essaiera les canaux du groupe suivant dans l'ordre.", "When enabled, large request bodies are temporarily stored on disk instead of memory, significantly reducing memory usage. SSD recommended.": "Lorsqu'activé, les corps de requête volumineux sont temporairement stockés sur disque, réduisant considérablement l'utilisation mémoire. SSD recommandé.", + "When enabled, Midjourney callbacks are accepted (reveals server IP).": "Lorsque activé, les callbacks Midjourney sont acceptés (révèle l'IP du serveur).", "When enabled, newly created tokens start in the first auto group.": "Lorsqu'elle est activée, les jetons nouvellement créés commencent dans le premier groupe automatique.", "When enabled, prompts are scanned before reaching upstream models.": "Lorsqu'elle est activée, les invites sont scannées avant d'atteindre les modèles en amont.", "When enabled, the store field will be blocked": "Lorsqu'il est activé, le champ de la boutique sera bloqué", @@ -3721,19 +3956,24 @@ "When performance monitoring is enabled and system resource usage exceeds the set threshold, new Relay requests will be rejected.": "Lorsque la surveillance des performances est activée et que les ressources dépassent le seuil, les nouvelles requêtes Relay seront rejetées.", "When running in containers or ephemeral environments, ensure the SQLite file is mapped to persistent storage to avoid data loss on restart.": "Lors de l'exécution dans des conteneurs ou des environnements éphémères, assurez-vous que le fichier SQLite est mappé à un stockage persistant pour éviter la perte de données au redémarrage.", "Whitelist": "Liste blanche", - "Whitelist (Only allow listed IPs)": "Liste blanche (Autoriser uniquement les adresses IP listées)", "Whitelist (Only allow listed domains)": "Liste blanche (Autoriser uniquement les domaines listés)", + "Whitelist (Only allow listed IPs)": "Liste blanche (Autoriser uniquement les adresses IP listées)", + "whsec_xxx": "whsec_xxx", "Window:": "Fenêtre :", + "with conflicts": "avec des conflits", "Without additional conditions, only the type above is used for pruning.": "Sans conditions supplémentaires, seul le type ci-dessus est utilisé pour le nettoyage.", "Worker Access Key": "Clé d'accès du Worker", "Worker Proxy": "Proxy Worker", "Worker URL": "URL du Worker", "Workspaces": "Espaces de travail", "Write custom CSS for the banner background. CSS is scoped to .top-banner.": "Write custom CSS for the banner background. CSS is scoped to .top-banner.", + "Write custom CSS for the banner. Use declarations directly, or use & for scoped selectors such as &::before and & .top-banner-icon.": "Écrivez du CSS personnalisé pour la bannière. Utilisez directement des déclarations ou & pour des sélecteurs limités, comme &::before et & .top-banner-icon.", "Write value to the target field": "Écrire la valeur dans le champ cible", + "x": "x", + "xAI": "xAI", "Xinference": "Xinference", "Xunfei": "Xunfei", - "You Pay": "Vous payez", + "years": "ans", "You are about to delete {{count}} API key(s).": "Vous êtes sur le point de supprimer {{count}} clé(s) API.", "You are running the latest version ({{version}}).": "Vous utilisez la dernière version ({{version}}).", "You can close this tab once the binding completes or a success message appears in the original window.": "Vous pouvez fermer cet onglet une fois la liaison terminée ou qu'un message de succès apparaît dans la fenêtre d'origine.", @@ -3742,9 +3982,11 @@ "You don't have necessary permission": "Vous n'avez pas la permission nécessaire", "You have unsaved changes": "Vous avez des modifications non enregistrées", "You have unsaved changes. Are you sure you want to leave?": "Vous avez des modifications non enregistrées. Êtes-vous sûr de vouloir quitter ?", + "You Pay": "Vous payez", "You save": "Vous économisez", "You will be redirected to Telegram to complete the binding process.": "Vous serez redirigé vers Telegram pour terminer le processus de liaison.", "You'll be redirected automatically. You can return to the previous page if nothing happens after a few seconds.": "Vous serez redirigé automatiquement. Vous pouvez revenir à la page précédente si rien ne se passe après quelques secondes.", + "your AI integration?": "votre intégration IA ?", "Your Azure OpenAI endpoint URL": "Votre URL de point de terminaison Azure OpenAI", "Your Bot Name": "Nom de votre Bot", "Your Cloudflare Account ID": "Votre ID de compte Cloudflare", @@ -3752,228 +3994,14 @@ "Your Discord OAuth Client Secret": "Votre secret client OAuth Discord", "Your GitHub OAuth Client ID": "Votre ID Client OAuth GitHub", "Your GitHub OAuth Client Secret": "Votre Secret Client OAuth GitHub", + "Your new backup codes are ready": "Vos nouveaux codes de secours sont prêts", "Your Referral Link": "Votre lien de parrainage", + "Your system access token for API authentication. Keep it secure and don't share it with others.": "Votre jeton d'accès système pour l'authentification API. Gardez-le en sécurité et ne le partagez pas avec d'autres.", "Your Telegram Bot Token": "Votre Jeton de Bot Telegram", "Your Turnstile secret key": "Votre clé secrète Turnstile", "Your Turnstile site key": "Votre clé de site Turnstile", - "Your new backup codes are ready": "Vos nouveaux codes de secours sont prêts", - "Your system access token for API authentication. Keep it secure and don't share it with others.": "Votre jeton d'accès système pour l'authentification API. Gardez-le en sécurité et ne le partagez pas avec d'autres.", "Zhipu": "Zhipu", "Zhipu V4": "Zhipu V4", - "Zoom": "Zoom", - "[{\"ChatGPT\":\"https://chat.openai.com\"},{\"Lobe Chat\":\"https://chat-preview.lobehub.com/?settings={...}\"}]": "[{\"ChatGPT\":\"https://chat.openai.com\"},{\"Lobe Chat\":\"https://chat-preview.lobehub.com/?settings={...}\"}]", - "[{\"name\":\"支付宝\",\"type\":\"alipay\",\"color\":\"#1677FF\"}]": "[{\"name\":\"Alipay\",\"type\":\"alipay\",\"color\":\"#1677FF\"}]", - "_copy": "_copie", - "`, and `-nothinking` suffixes while routing to the correct Gemini variant.": "`, et les suffixes `-nothinking` lors du routage vers la variante Gemini correcte.", - "active": "actif", - "active users": "utilisateurs actifs", - "aggregates 50+ AI providers behind one unified API. Manage access, track costs, and scale effortlessly.": "agrège plus de 50 fournisseurs IA derrière une API unifiée. Gérez l'accès, suivez les coûts et évoluez sans effort.", - "and": "et", - "appended": "ajouté", - "are also listed here. Remove them from Models to keep the `/v1/models` response user-friendly and hide vendor-specific names.": "sont également listés ici. Supprimez-les des Modèles pour que la réponse `/v1/models` reste conviviale et pour masquer les noms spécifiques aux fournisseurs.", - "by": "par", - "channel(s)? This action cannot be undone.": "canal(aux) ? Cette action ne peut pas être annulée.", - "checkout.session.completed": "checkout.session.completed", - "checkout.session.expired": "checkout.session.expired", - "compatible API routes": "routes API compatibles", - "days": "jours", - "default": "par défaut", - "designed for scale": "conçu pour la scalabilité", - "disabled": "désactivé", - "does not exist or might have been removed.": "n'existe pas ou a peut-être été supprimé.", - "e.g. 401, 403, 429, 500-599": "ex. 401, 403, 429, 500-599", - "e.g. 8 means 1 USD = 8 units": "par ex. 8 signifie 1 USD = 8 unités", - "e.g. Basic Plan": "ex. Plan de base", - "e.g. Clean tool parameters to avoid upstream validation errors": "ex. Nettoyer les paramètres d'outils pour éviter les erreurs de validation en amont", - "e.g. My GitLab": "par ex. Mon GitLab", - "e.g. New API Console": "par ex. console New API", - "e.g. Suitable for light usage": "ex. Adapté à une utilisation légère", - "e.g. This request does not meet access policy": "ex. Cette requête ne satisfait pas la politique d'accès", - "e.g. example.com": "par ex. example.com", - "e.g. llama3.1:8b": "p. ex. llama3.1:8b", - "e.g. my-gitlab": "par ex. mon-gitlab", - "e.g. openid profile email": "par ex. openid profile email", - "e.g. ¥ or HK$": "par ex. ¥ ou HK$", - "e.g., #3b82f6,#8b5cf6": "e.g., #3b82f6,#8b5cf6", - "e.g., #ff0000,#0000ff": "e.g., #ff0000,#0000ff", - "e.g., #ffffff or white": "e.g., #ffffff or white", - "e.g., 0.95": "par ex., 0.95", - "e.g., 100": "par ex., 100", - "e.g., 123456": "par ex., 123456", - "e.g., 2025-04-01-preview": "par ex., 2025-04-01-preview", - "e.g., 50": "par ex., 50", - "e.g., 500000": "p. ex., 500000", - "e.g., 7342866812345": "par ex., 7342866812345", - "e.g., 8 means 8 local currency per USD": "par ex., 8 signifie 8 unités de monnaie locale par USD", - "e.g., Alipay, WeChat": "par ex., Alipay, WeChat", - "e.g., Basic Package": "p. ex., Forfait de base", - "e.g., CN2 GIA": "par ex., CN2 GIA", - "e.g., Core APIs, OpenAI, Claude": "par ex., API principales, OpenAI, Claude", - "e.g., OpenAI GPT-4 Production": "p. ex., OpenAI GPT-4 Production", - "e.g., Recommended for China Mainland Users": "par ex., Recommandé pour les utilisateurs de Chine continentale", - "e.g., d6b5da8hk1awo8nap34ube6gh": "par ex., d6b5da8hk1awo8nap34ube6gh", - "e.g., default, vip, premium": "par ex., par défaut, vip, premium", - "e.g., gpt-4, claude-3": "ex. gpt-4, claude-3", - "e.g., gpt-4.1-nano,regex:^claude-.*$,regex:^sora-.*$": "ex. : gpt-4.1-nano,regex:^claude-.*$,regex:^sora-.*$", - "e.g., https://api.example.com (path before /suno)": "par ex., https://api.example.com (chemin avant /suno)", - "e.g., https://api.openai.com/v1/chat/completions": "par ex., https://api.openai.com/v1/chat/completions", - "e.g., https://ark.cn-beijing.volces.com": "p. ex., https://ark.cn-beijing.volces.com", - "e.g., https://docs-test-001.openai.azure.com": "par ex., https://docs-test-001.openai.azure.com", - "e.g., https://fastgpt.run/api/openapi": "par ex., https://fastgpt.run/api/openapi", - "e.g., preview": "par ex., prévisualisation", - "e.g., prod_xxx": "p. ex., prod_xxx", - "e.g., us-central1 or JSON format for model-specific regions": "par ex., us-central1 ou format JSON pour les régions spécifiques au modèle", - "e.g., v2.1": "par ex., v2.1", - "edit_this": "modifier_ceci", - "example.com blocked-site.com": "example.com blocked-site.com", - "example.com company.com": "example.com company.com", - "expired": "expiré", - "field": "champ", - "footer.columns.about.links.aboutProject": "À propos du projet", - "footer.columns.about.links.contact": "Contactez-nous", - "footer.columns.about.links.features": "Fonctionnalités", - "footer.columns.about.title": "À propos de nous", - "footer.columns.docs.links.apiDocs": "Documentation API", - "footer.columns.docs.links.installation": "Guide d'installation", - "footer.columns.docs.links.quickStart": "Démarrage rapide", - "footer.columns.docs.title": "Documentation", - "footer.columns.related.links.midjourney": "Midjourney-Proxy", - "footer.columns.related.links.neko": "neko-api-key-tool", - "footer.columns.related.links.oneApi": "One API", - "footer.columns.related.title": "Projets liés", - "footer.defaultCopyright": "Tous droits réservés.", - "footer.new\u0061pi.projectAttributionSuffix": "Tous droits réservés. Conçu et développé par les contributeurs du projet.", - "gpt-3.5-turbo": "gpt-3.5-turbo", - "gpt-3.5-turbo-0125": "gpt-3.5-turbo-0125", - "gpt-4": "gpt-4", - "gpt-4, claude-3-opus, etc.": "gpt-4, claude-3-opus, etc.", - "group ratio": "ratio de groupe", - "h": "h", - "hours": "heures", - "https://api.day.app/yourkey/{{title}}/{{content}}": "https://api.day.app/yourkey/{{title}}/{{content}}", - "https://api.example.com": "https://api.example.com", - "https://ark.ap-southeast.bytepluses.com": "https://ark.ap-southeast.bytepluses.com", - "https://ark.cn-beijing.volces.com": "https://ark.cn-beijing.volces.com", - "https://cloud.siliconflow.cn/i/hij0YNTZ": "https://cloud.siliconflow.cn/i/hij0YNTZ", - "https://docs.example.com": "https://docs.example.com", - "https://example.com": "https://example.com", - "https://example.com/logo.png": "https://example.com/logo.png", - "https://example.com/qr-code.png": "https://example.com/qr-code.png", - "https://example.com/topup": "https://example.com/topup", - "https://example.com/webhook": "https://example.com/webhook", - "https://gateway.example.com": "https://gateway.example.com", - "https://github.com/QuantumNous/new-api": "https://github.com/QuantumNous/new-api", - "https://gotify.example.com": "https://gotify.example.com", - "https://pay.example.com": "https://pay.example.com", - "https://provider.com/.well-known/openid-configuration": "https://provider.com/.well-known/openid-configuration", - "https://status.example.com": "https://status.example.com", - "https://wechat-server.example.com": "https://wechat-server.example.com", - "https://worker.example.workers.dev": "https://worker.example.workers.dev", - "https://your-server.example.com": "https://votre-serveur.example.com", - "https://yourdomain.com": "https://yourdomain.com", - "io.net API Key": "Clé API io.net", - "io.net Deployments": "Déploiements io.net", - "is an open-source AI API gateway for self-hosted deployments. Connect multiple upstream services, manage models, keys, quotas, logs, and routing policies in one place.": "est une passerelle API IA open source pour les déploiements auto-hébergés. Connectez plusieurs services en amont et gérez au même endroit les modèles, les clés, les quotas, les journaux et les politiques de routage.", - "is less than the configured maximum cache size": "est inférieur à la taille maximale du cache configurée", - "is the default price; ": "est le prix par défaut ; ", - "log": "journal", - "m": "m", - "maxRequests ≥ 0, maxSuccess ≥ 1, both ≤ 2,147,483,647": "maxRequests ≥ 0, maxSuccess ≥ 1, les deux ≤ 2 147 483 647", - "minutes": "minutes", - "model": "modèle", - "model billing support": "prise en charge de la facturation des modèles", - "model(s) selected out of": "modèle(s) sélectionné(s) parmi", - "model(s)? This action cannot be undone.": "modèle(s) ? Cette action ne peut pas être annulée.", - "models": "modèles", - "months": "mois", - "more mapping": "plus de mappage", - "ms": "ms", - "my-status": "mon-statut", - "name@example.com": "name@example.com", - "noreply@example.com": "noreply@example.com", - "of": "sur", - "of 3:": "sur 3 :", - "off": "désactivé", - "one keyword per line": "un mot-clé par ligne", - "opens in an external client. Trigger it from the sidebar or API key actions to launch the configured application.": "s'ouvre dans un client externe. Déclenchez-le depuis la barre latérale ou les actions de clé API pour lancer l'application configurée.", - "org-...": "org-...", - "override": "remplacer", - "overrides for matching model prefix.": "remplace le tarif si le modèle a ce préfixe.", - "parameter.": "paramètre.", - "per": "par", - "per request": "par requête", - "price_xxx": "price_xxx", - "redemption code": "code d'échange", - "redemption codes.": "codes de rachat.", - "replaced": "remplacé", - "request": "requête", - "requests served": "requêtes traitées", - "rules": "règles", - "s": "s", - "scheduling controls": "contrôles d'ordonnancement", - "seconds": "secondes", - "selected": "sélectionné", - "selected channel(s). Leave empty to remove tag.": "canal(aux) sélectionné(s). Laisser vide pour supprimer l'étiquette.", - "showing •": "affichage •", - "sk_xxx or rk_xxx": "sk_xxx ou rk_xxx", - "smtp.example.com": "smtp.example.com", - "socks5://user:pass@host:port": "socks5://user:pass@host:port", - "sources": "sources", - "stream": "Flux", - "this token group": "ce groupe de jetons", - "this user group": "ce groupe d'utilisateurs", - "times": "Fois", - "to access this resource.": "pour accéder à cette ressource.", - "to confirm": "pour confirmer", - "to override billing when a user in one group uses a token of another group.": "pour remplacer la facturation lorsqu'un utilisateur d'un groupe utilise un jeton d'un autre groupe.", - "to the Models list so users can use them before the mapping sends traffic upstream.": "à la liste des modèles afin que les utilisateurs puissent les utiliser avant que le mappage n'envoie le trafic en amont.", - "to view this resource.": "pour afficher cette ressource.", - "tokens": "jetons", - "top-up ratio": "ratio de recharge", - "upstream services integrated": "services en amont intégrés", - "uptime": "disponibilité", - "used": "utilisé", - "uses": "utilisations", - "variable": "variable", - "variable) *": "variable) *", - "vip": "vip", - "whsec_xxx": "whsec_xxx", - "with conflicts": "avec des conflits", - "x": "x", - "xAI": "xAI", - "years": "ans", - "your AI integration?": "votre intégration IA ?", - "{\"original-model\": \"replacement-model\"}": "{\"original-model\": \"replacement-model\"}", - "{{category}} Models": "Modèles {{category}}", - "{{count}} IP(s)": "{{count}} IP", - "{{count}} channel(s) deleted": "{{count}} canal(canaux) supprimé(s)", - "{{count}} channel(s) disabled": "{{count}} canal(canaux) désactivé(s)", - "{{count}} channel(s) enabled": "{{count}} canal(canaux) activé(s)", - "{{count}} channel(s) failed to disable": "{{count}} canal(canaux) n'ont pas pu être désactivé(s)", - "{{count}} channel(s) failed to enable": "{{count}} canal(canaux) n'ont pas pu être activé(s)", - "{{count}} days ago": "il y a {{count}} jours", - "{{count}} days remaining": "{{count}} days remaining", - "{{count}} disabled channel(s) deleted": "{{count}} canal(canaux) désactivé(s) supprimé(s)", - "{{count}} hours ago": "il y a {{count}} heures", - "{{count}} log entries removed.": "{{count}} entrées de journal supprimées.", - "{{count}} minutes ago": "il y a {{count}} minutes", - "{{count}} model(s)": "{{count}} modèle(s)", - "{{count}} months ago": "il y a {{count}} mois", - "{{count}} override": "{{count}} remplacement", - "{{count}} tiers": "{{count}} paliers", - "{{count}} weeks ago": "il y a {{count}} semaines", - "{{field}} updated to {{value}}": "{{field}} mis à jour en {{value}}", - "{{field}} updated to {{value}} for tag: {{tag}}": "{{field}} mis à jour en {{value}} pour le tag : {{tag}}", - "{{n}} model(s) selected": "{{n}} modèle(s) sélectionné(s)", - "{{value}}ms": "{{value}} ms", - "{{value}}s": "{{value}} s", - "| Based on": "| Basé sur", - "© 2025 Your Company. All rights reserved.": "© 2025 Votre entreprise. Tous droits réservés.", - "← Left": "← Left", - "↑ Up": "↑ Up", - "→ Right": "→ Right", - "↓ Down": "↓ Down", - "↘ Diagonal": "↘ Diagonal", - "⊙ Radial": "⊙ Radial" + "Zoom": "Zoom" } } diff --git a/web/default/src/i18n/locales/ja.json b/web/default/src/i18n/locales/ja.json index 17df9649153..55883ddcc08 100644 --- a/web/default/src/i18n/locales/ja.json +++ b/web/default/src/i18n/locales/ja.json @@ -3,31 +3,70 @@ "360": "360", "1000": "1000", "10000": "10000", + "_copy": "_copy", + ", and": "、および", + "? This action cannot be undone.": "? この操作は元に戻せません。", + ". Please fix the JSON before saving.": "。保存する前にJSONを修正してください。", + ". This action cannot be undone.": "。この操作は元に戻せません。", + "...": "...", "\"default\": \"us-central1\", \"claude-3-5-sonnet-20240620\": \"europe-west1\"": "\"default \":\" us - central 1 \", \"claude -3 -5 - sonnet -20240620 \":\" europe - west 1 \"", - "% off": "% OFF", + "({{total}} total, {{omit}} omitted)": "(合計 {{total}} 件、{{omit}} 件を省略)", "(Leave empty to dissolve tag)": "(タグを解除するには空欄のままにしてください)", "(Optional: redirect model names)": "(オプション: モデル名をリダイレクト)", "(Override all channels' groups)": "(全チャンネルのグループを上書き)", "(Override all channels' models)": "(全チャンネルのモデルを上書き)", - "({{total}} total, {{omit}} omitted)": "(合計 {{total}} 件、{{omit}} 件を省略)", - ", and": "、および", - ". Please fix the JSON before saving.": "。保存する前にJSONを修正してください。", - ". This action cannot be undone.": "。この操作は元に戻せません。", - "...": "...", + "[{\"ChatGPT\":\"https://chat.openai.com\"},{\"Lobe Chat\":\"https://chat-preview.lobehub.com/?settings={...}\"}]": "[{\"ChatGPT\":\"https://chat.openai.com\"},{\"Lobe Chat\":\"https://chat-preview.lobehub.com/?settings={...}\"}]", + "[{\"name\":\"支付宝\",\"type\":\"alipay\",\"color\":\"#1677FF\"}]": "[{\"name\":\"Alipay\",\"type\":\"alipay\",\"color\":\"#1677FF\"}]", + "{\"original-model\": \"replacement-model\"}": "{\" original - model \":\" replacement - model \"}", + "{{category}} Models": "{{category}} モデル", + "{{count}} channel(s) deleted": "{{count}} 個のチャネルを削除しました", + "{{count}} channel(s) disabled": "{{count}} 個のチャネルを無効にしました", + "{{count}} channel(s) enabled": "{{count}} 個のチャネルを有効にしました", + "{{count}} channel(s) failed to disable": "{{count}} 個のチャネルの無効化に失敗しました", + "{{count}} channel(s) failed to enable": "{{count}} 個のチャネルの有効化に失敗しました", + "{{count}} days ago": "{{count}} 日前", + "{{count}} days remaining": "残り {{count}} 日", + "{{count}} disabled channel(s) deleted": "{{count}} 個の無効チャネルを削除しました", + "{{count}} hours ago": "{{count}} 時間前", + "{{count}} IP(s)": "{{count}} IP", + "{{count}} log entries removed.": "{{count}} 件のログエントリを削除しました。", + "{{count}} minutes ago": "{{count}} 分前", + "{{count}} model(s)": "{{count}} モデル", + "{{count}} months ago": "{{count}} ヶ月前", + "{{count}} override": "{{count}} 個のオーバーライド", + "{{count}} tiers": "{{count}} 段階", + "{{count}} weeks ago": "{{count}} 週間前", + "{{field}} updated to {{value}}": "{{field}} を {{value}} に更新しました", + "{{field}} updated to {{value}} for tag: {{tag}}": "タグ「{{tag}}」の {{field}} を {{value}} に更新しました", + "{{n}} model(s) selected": "{{n}} 件のモデルを選択済み", + "{{value}}ms": "{{value}}ミリ秒", + "{{value}}s": "{{value}}秒", + "@lobehub/icons key": "@lobehub/icons キー", + "@lobehub/icons key name": "@lobehub/icons キー名", "/status/": "/status/", "/your/endpoint": "/your/endpoint", + "% off": "% OFF", + "`, and `-nothinking` suffixes while routing to the correct Gemini variant.": "`, および `-nothinking` サフィックスを、正しい Gemini バリアントにルーティングする際に使用します。", + "© 2025 Your Company. All rights reserved.": "© 2025 Your Company. 全著作権所有。", + "← Left": "← Left", + "→ Right": "→ Right", + "↑ Up": "↑ Up", + "↓ Down": "↓ Down", + "↘ Diagonal": "↘ Diagonal", + "| Based on": "| に基づく", + "⊙ Radial": "⊙ Radial", "0 means unlimited": "0は無制限を意味します", "1 Day": "1日", - "1 Hour": "1時間", - "1 Month": "1ヶ月", "1 day ago": "1日前", + "1 Hour": "1時間", "1 hour ago": "1時間前", "1 minute ago": "1分前", + "1 Month": "1ヶ月", "1 month ago": "1ヶ月前", "1 week ago": "1週間前", "1 year ago": "1年前", - "1) Click \"Open authorization page\" and complete login. 2) Your browser may redirect to localhost (it is OK if the page does not load). 3) Copy the full URL from the address bar and paste it below. 4) Click \"Generate credential\".": "1)「認証ページを開く」をクリックしてログイン。2) ブラウザが localhost にリダイレクトしても構いません。3) アドレスバーのURL全体をコピーして下に貼り付け。4)「認証情報を生成」をクリック。", "1. Create an application in your Gotify server": "1. Gotifyサーバーでアプリケーションを作成します", + "1) Click \"Open authorization page\" and complete login. 2) Your browser may redirect to localhost (it is OK if the page does not load). 3) Copy the full URL from the address bar and paste it below. 4) Click \"Generate credential\".": "1)「認証ページを開く」をクリックしてログイン。2) ブラウザが localhost にリダイレクトしても構いません。3) アドレスバーのURL全体をコピーして下に貼り付け。4)「認証情報を生成」をクリック。", "10 / page": "10 / ページ", "100 / page": "100 / ページ", "14 Days": "14日", @@ -47,56 +86,7 @@ "7 Days": "7日", "7 days ago": "7日前", "80,443,8080": "80,443,8080", - "? This action cannot be undone.": "? この操作は元に戻せません。", - "@lobehub/icons key": "@lobehub/icons キー", - "@lobehub/icons key name": "@lobehub/icons キー名", "A text banner displayed at the top of all pages. Leave empty to disable.": "A text banner displayed at the top of all pages. Leave empty to disable.", - "AGPL v3.0 License": "AGPL v3.0ライセンス", - "AI Proxy": "AIプロキシ", - "AI Proxy Library": "AIプロキシライブラリ", - "AI model testing environment": "AIモデルテスト環境", - "AI models": "AIモデル", - "AI models supported": "AIモデル対応", - "AIGC2D": "AIGC2D", - "AILS": "AILS", - "AK/SK mode: use AccessKey|SecretAccessKey|Region": "AK/SKモード: AccessKey | SecretAccessKey | Regionを使用", - "API Access": "API アクセス", - "API Addresses": "APIアドレス", - "API Base URL (Important: Not Chat API) *": "APIベースURL (重要: チャットAPIではありません) *", - "API Base URL *": "APIベースURL *", - "API Endpoints": "APIエンドポイント", - "API Info": "API情報", - "API Key": "APIキー", - "API Key (Production)": "APIキー(本番)", - "API Key (Sandbox)": "APIキー(サンドボックス)", - "API Key (one per line for batch mode)": "API キー (バッチモード時は1行に1つ)", - "API Key *": "APIキー *", - "API Key created successfully": "APIキーが正常に作成されました", - "API Key deleted successfully": "APIキーが正常に削除されました", - "API Key disabled successfully": "APIキーが正常に無効化されました", - "API Key enabled successfully": "APIキーが正常に有効化されました", - "API Key mode (does not support batch creation)": "APIキー モード(一括作成には対応していません)", - "API Key mode: use APIKey|Region": "APIキーモード: use APIKey | Region", - "API Key updated successfully": "APIキーが正常に更新されました", - "API Keys": "APIキー", - "API Private Key": "API 秘密鍵", - "API Requests": "APIリクエスト", - "API URL": "API URL", - "API info added. Click \"Save Settings\" to apply.": "API情報が追加されました。「Save Settings」をクリックして適用してください。", - "API info deleted. Click \"Save Settings\" to apply.": "API情報が削除されました。「Save Settings」をクリックして適用してください。", - "API info saved successfully": "API情報が正常に保存されました", - "API info updated. Click \"Save Settings\" to apply.": "API情報が更新されました。「Save Settings」をクリックして適用してください。", - "API key": "APIキー", - "API key from the provider": "プロバイダからのAPIキー", - "API key is required": "APIキーが必要です", - "API secret": "APIシークレット", - "API token management": "APIトークン管理", - "API usage records": "API使用記録", - "API2GPT": "API2GPT", - "AWS": "AWS", - "AWS Bedrock Claude Compat": "AWS Bedrock Claude 互換テンプレート", - "AWS Key Format": "AWSキーフォーマット", - "AZURE_OPENAI_ENDPOINT *": "AZURE_OPENAI_ENDPOINT *", "About": "このサービスについて", "Accept Unpriced Models": "価格設定されていないモデルを許可", "Accepts a JSON array of model identifiers that support the Imagine API.": "Imagine APIをサポートするモデル識別子のJSON配列を受け入れます。", @@ -104,43 +94,28 @@ "Access Denied Message": "アクセス拒否メッセージ", "Access Forbidden": "アクセス禁止", "Access Policy (JSON)": "アクセスポリシー (JSON)", - "Access Token": "アクセストークン", "Access previous conversations and start new ones.": "以前の会話にアクセスし、新しい会話を開始します。", + "Access Token": "アクセストークン", "AccessKey / SecretAccessKey": "AccessKey/SecretAccessKey", "Account Binding Management": "アカウント連携管理", "Account Bindings": "アカウントバインディング", - "Account ID *": "アカウントID *", - "Account Info": "アカウント情報", "Account created! Please sign in": "アカウントが作成されました!ログインしてください", "Account deleted successfully": "アカウントが正常に削除されました", + "Account ID *": "アカウントID *", + "Account Info": "アカウント情報", "Account used when authenticating with the SMTP server": "SMTPサーバーで認証する際に使用されるアカウント", "Action confirmation": "操作確認", "Actions": "操作", + "active": "有効", "Active": "有効", "Active Cache Count": "アクティブキャッシュ数", "Active Files": "アクティブファイル", + "active users": "アクティブユーザー", "Actual Amount": "実際の金額", "Actual Model": "実際のモデル", "Actual Model:": "実際のモデル:", "Add": "追加", - "Add API": "API追加", - "Add API Shortcut": "API ショートカットを追加", - "Add Announcement": "お知らせを追加", - "Add Condition": "条件を追加", - "Add FAQ": "FAQ追加", - "Add Funds": "残高チャージ", - "Add Group": "グループを追加", - "Add Mapping": "マッピングを追加", - "Add Mode": "モードを追加", - "Add Model": "モデルを追加", - "Add Models": "モデルを追加", - "Add OAuth Provider": "OAuthプロバイダーを追加", - "Add Provider": "プロバイダーを追加", - "Add Quota": "クォータを追加", - "Add Row": "行を追加", - "Add Rule": "ルールを追加", - "Add Uptime Kuma Group": "Uptime Kuma グループを追加", - "Add User": "ユーザーを追加", + "Add {{title}}": "{{title}}を追加", "Add a group identifier to the auto assignment list.": "自動割り当てリストにグループ識別子を追加します。", "Add a new API key by providing necessary info.": "必要な情報を提供して新しいAPIキーを追加。", "Add a new channel by providing the necessary information.": "必要な情報を提供して新しいチャンネルを追加。", @@ -150,25 +125,41 @@ "Add an extra layer of security to your account": "アカウントにセキュリティの追加レイヤーを追加します", "Add and submit": "追加して送信", "Add animation effects to the banner background.": "Add animation effects to the banner background.", + "Add Announcement": "お知らせを追加", + "Add API": "API追加", + "Add API Shortcut": "API ショートカットを追加", "Add auto group": "自動グループを追加", "Add chat preset": "チャットプリセットを追加", "Add condition": "条件を追加", + "Add Condition": "条件を追加", "Add custom model(s), comma-separated": "カスタムモデルを追加 (コンマ区切り)", "Add discount tier": "割引ティアを追加", "Add each model or tag you want to include.": "含めたい各モデルまたはタグを追加。", + "Add FAQ": "FAQ追加", "Add from available models...": "利用可能なモデルから追加...", + "Add Funds": "残高チャージ", "Add group": "グループを追加", + "Add Group": "グループを追加", "Add group rate limit": "グループレート制限を追加", "Add group rules": "グループルールを追加", + "Add Mapping": "マッピングを追加", "Add method": "メソッドを追加", + "Add Mode": "モードを追加", "Add model": "モデル追加", + "Add Model": "モデルを追加", + "Add Models": "モデルを追加", "Add new amount": "新しい金額を追加", "Add new redemption code(s) by providing necessary info.": "必要な情報を提供して新しい引き換えコードを追加します。", + "Add OAuth Provider": "OAuthプロバイダーを追加", "Add param/header": "パラメータ/ヘッダーを追加", "Add payment method": "決済方法を追加", "Add photos or files": "写真やファイルを追加", "Add product": "製品を追加", + "Add Provider": "プロバイダーを追加", + "Add Quota": "クォータを追加", "Add ratio override": "倍率オーバーライドを追加", + "Add Row": "行を追加", + "Add Rule": "ルールを追加", "Add rule group": "ルールグループを追加", "Add selectable group": "選択可能なグループを追加", "Add subscription": "サブスクリプションを追加", @@ -176,35 +167,36 @@ "Add tier": "ティアを追加", "Add time condition": "時間条件を追加", "Add time rule group": "時間ルールグループを追加", + "Add Uptime Kuma Group": "Uptime Kuma グループを追加", + "Add User": "ユーザーを追加", "Add user group": "ユーザーグループを追加", "Add your API keys, set up channels and configure access permissions": "APIキーを追加し、チャネルを設定してアクセス権限を構成します", - "Add {{title}}": "{{title}}を追加", - "Added successfully": "追加に成功しました", "Added {{count}} custom model(s)": "{{count}} 個のカスタムモデルを追加しました", "Added {{count}} model(s)": "{{count}} 個のモデルを追加しました", + "Added successfully": "追加に成功しました", "Additional Conditions": "追加条件", + "Additional information": "追加情報", "Additional Information": "追加情報", "Additional Limit": "追加上限", "Additional Limits": "追加上限", - "Additional information": "追加情報", "Additional metered capability": "追加の従量制機能", "Adjust Quota": "クォータを調整", "Adjust response formatting, prompt behavior, proxy, and upstream automation.": "レスポンス形式、プロンプト動作、プロキシ、上流自動化を調整します。", "Adjust the appearance and layout to suit your preferences.": "好みに合わせて外観とレイアウトを調整します。", "Admin": "管理者", - "Admin Only": "管理者のみ", "Admin access required": "管理者アクセスが必要です", "Admin area": "管理者エリア", "Admin notes (only visible to admins)": "管理者メモ (管理者のみに表示)", + "Admin Only": "管理者のみ", "Administer user accounts and roles.": "ユーザーアカウントとロールを管理します。", "Administrator account": "管理者アカウント", "Administrator username": "管理者ユーザー名", "Advanced": "高度な設定", "Advanced Configuration": "詳細設定", - "Advanced Options": "詳細オプション", - "Advanced Settings": "詳細設定", "Advanced options": "詳細オプション", + "Advanced Options": "詳細オプション", "Advanced platform configuration.": "高度なプラットフォーム設定。", + "Advanced Settings": "詳細設定", "Advanced text editing": "高度なテキスト編集", "After clicking the button, you'll be asked to authorize the bot": "ボタンをクリックすると、ボットの認証を求められます", "After disabling, it will no longer be shown to users, but historical orders are not affected. Continue?": "無効化するとユーザーに表示されなくなりますが、過去の注文には影響しません。続行しますか?", @@ -213,40 +205,51 @@ "After scanning, the binding will complete automatically": "スキャン後、バインドは自動的に完了します", "Agent ID *": "エージェントID *", "Aggregated usage metrics and trend charts.": "集計された使用量メトリクスとトレンドチャート。", + "aggregates 50+ AI providers behind one unified API. Manage access, track costs, and scale effortlessly.": "50以上のAIプロバイダーを統一APIで集約。アクセス管理、コスト追跡、スケーリングを簡単に。", + "AGPL v3.0 License": "AGPL v3.0ライセンス", + "AI model testing environment": "AIモデルテスト環境", + "AI models": "AIモデル", + "AI models supported": "AIモデル対応", + "AI Proxy": "AIプロキシ", + "AI Proxy Library": "AIプロキシライブラリ", + "AIGC2D": "AIGC2D", + "AILS": "AILS", + "AK/SK mode: use AccessKey|SecretAccessKey|Region": "AK/SKモード: AccessKey | SecretAccessKey | Regionを使用", "Ali": "Ali", "All": "すべて", + "All edits are overwrite operations. Leave fields empty to keep current values unchanged.": "すべての編集は上書き操作です。現在の値を変更しないままにするには、フィールドを空のままにしてください。", + "All files exceed the maximum size.": "すべてのファイルが最大サイズを超えています。", "All Groups": "すべてのグループ", "All Models": "すべてのモデル", + "All models in use are properly configured.": "使用中のすべてのモデルが適切に構成されています。", "All Must Match (AND)": "すべて一致(AND)", "All Status": "すべてのステータス", "All Sync Status": "すべての同期状態", "All Tags": "すべてのタグ", "All Types": "すべてのタイプ", + "All upstream data is trusted": "すべてのアップストリームデータは信頼されています", "All Vendors": "すべてのベンダー", "All Your AI Models": "すべてのAIモデル", - "All edits are overwrite operations. Leave fields empty to keep current values unchanged.": "すべての編集は上書き操作です。現在の値を変更しないままにするには、フィールドを空のままにしてください。", - "All files exceed the maximum size.": "すべてのファイルが最大サイズを超えています。", - "All models in use are properly configured.": "使用中のすべてのモデルが適切に構成されています。", - "All upstream data is trusted": "すべてのアップストリームデータは信頼されています", "Allocated Memory": "割り当て済みメモリ", - "Allow Claude beta query passthrough": "Claude ベータクエリのパススルーを許可", - "Allow HTTP image requests": "HTTP画像リクエストを許可", - "Allow Insecure Origins": "安全でないオリジンを許可", - "Allow Private IPs": "プライベートIPを許可", - "Allow Retry": "リトライ許可", "Allow accountFilter parameter": "accountFilter パラメータを許可", + "Allow Claude beta query passthrough": "Claude ベータクエリのパススルーを許可", "Allow clients to query configured ratios via `/api/ratio`.": "クライアントが `/api/ratio` 経由で設定された比率を照会できるようにします。", + "Allow HTTP image requests": "HTTP画像リクエストを許可", "Allow include usage obfuscation passthrough": "使用量難読化のパススルーを許可", "Allow inference geography passthrough": "推論ジオグラフィのパススルーを許可", "Allow inference_geo passthrough": "inference_geo パススルーを許可", + "Allow Insecure Origins": "安全でないオリジンを許可", "Allow new users to register": "新規ユーザーの登録を許可", + "Allow Private IPs": "プライベートIPを許可", "Allow registration with password": "パスワードによる登録を許可", "Allow requests to private IP ranges (10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16)": "プライベートIP範囲へのリクエストを許可 (10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16)", + "Allow Retry": "リトライ許可", "Allow safety_identifier passthrough": "SAFETY_IDENTIFIERパススルーを許可する", "Allow service_tier passthrough": "Service_tierパススルーを許可する", "Allow speed passthrough": "speed パススルーを許可", "Allow upstream callbacks": "アップストリームコールバックを許可", "Allow users to check in daily for random quota rewards": "ユーザーが毎日チェックインしてランダムなクォータ報酬を受け取れるようにする", + "Allow users to close this banner. If disabled, the close button is hidden.": "ユーザーがこのバナーを閉じられるようにします。無効にすると閉じるボタンは非表示になります。", "Allow users to enter promo codes": "ユーザーがプロモーションコードを入力できるようにする", "Allow users to log in with password": "ユーザーがパスワードでログインできるようにする", "Allow users to register and sign in with Passkey (WebAuthn)": "ユーザーがPasskey (WebAuthn) で登録およびサインインできるようにする", @@ -255,8 +258,8 @@ "Allow users to sign in with LinuxDO": "ユーザーがLinuxDOでサインインできるようにする", "Allow users to sign in with OpenID Connect": "ユーザーがOpenID Connectでサインインできるようにする", "Allow users to sign in with Telegram": "ユーザーがTelegramでサインインできるようにする", - "Allow users to sign in with WeChat": "ユーザーがWeChatでサインインできるようにする", "Allow users to sign in with this provider": "このプロバイダーでサインインを許可する", + "Allow users to sign in with WeChat": "ユーザーがWeChatでサインインできるようにする", "Allow using models without price configuration": "価格設定なしでモデルの使用を許可", "Allowed": "許可", "Allowed Origins": "許可するオリジン", @@ -265,21 +268,24 @@ "Alternate": "Alternate", "Always matches (default tier).": "常に一致(デフォルト ティア)。", "Amount": "金額", - "Amount Due": "お支払い金額", "Amount cannot be changed when editing.": "編集時は金額を変更できません。", "Amount discount": "割引額", + "Amount Due": "お支払い金額", "Amount must be a whole number": "金額は整数でなければなりません", "Amount must be greater than 0": "金額は 0 より大きくなければなりません", "Amount of quota to credit to user account.": "ユーザーアカウントに付与するクォータの量。", "Amount options must be a JSON array": "金額オプションは JSON 配列でなければなりません", "Amount to pay:": "支払い金額:", "An unexpected error occurred": "予期せぬエラーが発生しました", + "and": "および", "Animation": "Animation", + "Animation Presets": "アニメーションプリセット", + "Animation presets can use custom colors and speed.": "アニメーションプリセットでは、色と速度をカスタマイズできます。", "Animation Type": "Animation Type", - "Announcement Details": "お知らせの詳細", "Announcement added. Click \"Save Settings\" to apply.": "お知らせが追加されました。\"設定を保存\" をクリックして適用してください。", "Announcement content": "お知らせの内容", "Announcement deleted. Click \"Save Settings\" to apply.": "お知らせが削除されました。\"設定を保存\" をクリックして適用してください。", + "Announcement Details": "お知らせの詳細", "Announcement displayed to users (supports Markdown & HTML)": "ユーザーに表示されるお知らせ (Markdown & HTML対応)", "Announcement updated. Click \"Save Settings\" to apply.": "お知らせが更新されました。\"設定を保存\" をクリックして適用してください。", "Announcements": "お知らせ", @@ -287,13 +293,47 @@ "Answer": "回答", "Anthropic": "Anthropic", "Any Match (OR)": "いずれか一致(OR)", + "API Access": "API アクセス", + "API Addresses": "APIアドレス", + "API Base URL (Important: Not Chat API) *": "APIベースURL (重要: チャットAPIではありません) *", + "API Base URL *": "APIベースURL *", + "API Endpoints": "APIエンドポイント", + "API Info": "API情報", + "API info added. Click \"Save Settings\" to apply.": "API情報が追加されました。「Save Settings」をクリックして適用してください。", + "API info deleted. Click \"Save Settings\" to apply.": "API情報が削除されました。「Save Settings」をクリックして適用してください。", + "API info saved successfully": "API情報が正常に保存されました", + "API info updated. Click \"Save Settings\" to apply.": "API情報が更新されました。「Save Settings」をクリックして適用してください。", + "API key": "APIキー", + "API Key": "APIキー", + "API Key (one per line for batch mode)": "API キー (バッチモード時は1行に1つ)", + "API Key (Production)": "APIキー(本番)", + "API Key (Sandbox)": "APIキー(サンドボックス)", + "API Key *": "APIキー *", + "API Key created successfully": "APIキーが正常に作成されました", + "API Key deleted successfully": "APIキーが正常に削除されました", + "API Key disabled successfully": "APIキーが正常に無効化されました", + "API Key enabled successfully": "APIキーが正常に有効化されました", + "API key from the provider": "プロバイダからのAPIキー", + "API key is required": "APIキーが必要です", + "API Key mode (does not support batch creation)": "APIキー モード(一括作成には対応していません)", + "API Key mode: use APIKey|Region": "APIキーモード: use APIKey | Region", + "API Key updated successfully": "APIキーが正常に更新されました", + "API Keys": "APIキー", + "API Private Key": "API 秘密鍵", + "API Requests": "APIリクエスト", + "API secret": "APIシークレット", + "API token management": "APIトークン管理", + "API URL": "API URL", + "API usage records": "API使用記録", + "API2GPT": "API2GPT", "Append": "末尾に追加", - "Append Template": "テンプレートを追加", "Append mode: New keys will be added to the end of the existing key list": "追記モード: 新しいキーは既存のキー一覧の末尾に追加されます", - "Append to End": "末尾に追加", + "Append Template": "テンプレートを追加", "Append to channel": "チャンネルに追加", + "Append to End": "末尾に追加", "Append to existing keys": "既存のキーに追加", "Append value to array / string / object end": "配列/文字列/オブジェクトの末尾に値を追加", + "appended": "追加済み", "Application": "アプリケーション", "Applies to custom completion endpoints. JSON map of model → ratio.": "カスタム補完エンドポイントに適用されます。モデル → 比率のJSONマップ。", "Apply All Upstream Updates": "すべてのアップストリーム更新を適用", @@ -303,6 +343,7 @@ "Apply Sync": "同期を適用", "Applying...": "適用中...", "Approx.": "約", + "are also listed here. Remove them from Models to keep the `/v1/models` response user-friendly and hide vendor-specific names.": "もここにリストされています。`/v1/models` レスポンスをユーザーフレンドリーに保ち、ベンダー固有の名前を隠すために、Models からこれらを削除します。", "Are you sure you want to delete": "削除してもよろしいですか", "Are you sure you want to delete all auto-disabled keys? This action cannot be undone.": "すべての自動無効化されたキーを削除してもよろしいですか?この操作は元に戻せません。", "Are you sure you want to delete deployment \"{{name}}\"? This action cannot be undone.": "デプロイ \"{{name}}\" を削除してもよろしいですか?この操作は元に戻せません。", @@ -324,19 +365,20 @@ "At least one valid key source is required": "少なくとも1つの有効なキーソースが必要です", "Attach": "添付", "Audio": "音声", + "Audio comp.": "音声補完", + "Audio completion ratio": "音声補完倍率", "Audio In": "音声入力", + "Audio input": "音声入力", "Audio Input": "音声入力", "Audio Input Price": "音声入力価格", "Audio Out": "音声出力", - "Audio Output": "音声出力", - "Audio Preview": "音声プレビュー", - "Audio Tokens": "音声トークン", - "Audio comp.": "音声補完", - "Audio completion ratio": "音声補完倍率", - "Audio input": "音声入力", "Audio output": "音声出力", + "Audio Output": "音声出力", "Audio playback failed": "音声の再生に失敗しました", + "Audio Preview": "音声プレビュー", "Audio ratio": "音声倍率", + "Audio Tokens": "音声トークン", + "Aurora": "オーロラ", "Auth Style": "認証スタイル", "Authentication": "認証", "Authenticator code": "認証コード", @@ -345,13 +387,13 @@ "Authorize": "認証", "Auto": "自動", "Auto (Circuit Breaker)": "自動(サーキットブレーカー)", + "Auto assignment order": "自動割り当て順序", "Auto Ban": "自動BAN", + "Auto detect (default)": "自動検出 (デフォルト)", "Auto Disabled": "自動無効化", "Auto Group Chain": "自動グループチェーン", - "Auto Sync Upstream Models": "アップストリームモデルの自動同期", - "Auto assignment order": "自動割り当て順序", - "Auto detect (default)": "自動検出 (デフォルト)", "Auto refresh": "自動更新", + "Auto Sync Upstream Models": "アップストリームモデルの自動同期", "Auto-Accept Unpriced Models on Registration": "登録時に未価格設定モデルを自動許可", "Auto-disable status codes": "自動無効化するステータスコード", "Auto-discover": "自動検出", @@ -372,19 +414,24 @@ "Availability Panel": "可用性パネル", "Availability Status Monitor": "可用性ステータスモニター", "Available": "空き", + "Available disk space": "利用可能なディスク容量", "Available Models": "利用可能なモデル", "Available Rewards": "利用可能な報酬", - "Available disk space": "利用可能なディスク容量", "Average RPM": "平均RPM", "Average TPM": "平均TPM", - "Azure": "Azure", + "AWS": "AWS", + "AWS Bedrock Claude Compat": "AWS Bedrock Claude 互換テンプレート", + "AWS Key Format": "AWSキーフォーマット", + "Azure": "Azure", + "AZURE_OPENAI_ENDPOINT *": "AZURE_OPENAI_ENDPOINT *", "Back": "戻る", "Back to Home": "ホームに戻る", - "Back to Models": "モデルに戻る", "Back to login": "ログインに戻る", + "Back to Models": "モデルに戻る", "Backed up": "バックアップ済み", - "Background Type": "Background Type", + "Background color": "背景色", "Background job tracker for queued work.": "キューされた作業のためのバックグラウンドジョブトラッカー。", + "Background Type": "Background Type", "Backup Code": "バックアップコード", "Backup code must be in format XXXX-XXXX": "バックアップコードはXXXX-XXXX形式で入力してください", "Backup codes regenerated successfully": "バックアップコードが正常に再生成されました", @@ -399,54 +446,56 @@ "Balance updated successfully": "残高が正常に更新されました", "Balance updated: {{balance}}": "残高更新:{{balance}}", "Banner Content": "Banner Content", + "Banner Dismissible": "バナーを閉じられる", "Banner Font Color": "Banner Font Color", + "Banner Type": "バナータイプ", "Bar Chart": "棒グラフ", "Bark Push URL": "BarkプッシュURL", - "Base Limits": "基本枠", - "Base Price": "基本価格", - "Base URL": "ベースURL", - "Base URL of your Uptime Kuma instance": "Uptime KumaインスタンスのベースURL", "Base address provided by your Epay service": "Epayサービスによって提供されるベースアドレス", "Base amount. Actual deduction = base amount × system group rate.": "基本金額。実際の控除 = 基本金額 × システムグループ倍率。", + "Base Limits": "基本枠", "Base multipliers applied when users select specific groups.": "ユーザーが特定のグループを選択したときに適用される基本乗数。", + "Base Price": "基本価格", "Base rate limit windows for this account.": "このアカウント向けの基本レート制限ウィンドウ。", + "Base URL": "ベースURL", + "Base URL of your Uptime Kuma instance": "Uptime KumaインスタンスのベースURL", "Basic Authentication": "基本認証", "Basic Configuration": "基本設定", "Basic Info": "基本情報", "Basic Information": "基本情報", "Basic Templates": "基本テンプレート", "Batch Add (one key per line)": "一括追加(1行に1つのキー)", - "Batch Edit": "一括編集", - "Batch Edit by Tag": "タグによる一括編集", "Batch delete failed": "一括削除に失敗しました", "Batch detection complete: {{channels}} channels, {{add}} to add, {{remove}} to remove, {{fails}} failed": "一括検出完了:{{channels}} チャネル、{{add}} 個追加、{{remove}} 個削除、{{fails}} 個失敗", "Batch detection failed": "一括検出に失敗しました", "Batch disable failed": "一括無効化に失敗しました", + "Batch Edit": "一括編集", "Batch edit all channels with this tag. Leave fields empty to keep current values.": "このタグを持つすべてのチャネルを一括編集します。現在の値を維持するには、フィールドを空のままにしてください。", + "Batch Edit by Tag": "タグによる一括編集", "Batch enable failed": "一括有効化に失敗しました", "Batch processing failed": "一括処理に失敗しました", "Batch upstream model updates applied: {{channels}} channels, {{added}} added, {{removed}} removed, {{fails}} failed": "一括上流モデル更新を処理しました:{{channels}} チャネル、{{added}} 個追加、{{removed}} 個削除、{{fails}} 個失敗", "Best for single-tenant deployments. Pricing and billing options stay hidden.": "シングルテナント環境に最適です。料金設定や請求オプションは非表示になります。", "Billing": "請求", + "Billing currency": "請求通貨", "Billing Details": "課金詳細", "Billing History": "請求履歴", "Billing Mode": "課金モード", "Billing Process": "課金プロセス", "Billing Source": "課金ソース", - "Billing currency": "請求通貨", "Bind": "バインド", + "Bind an email address to your account.": "アカウントにメールアドレスを紐付けます。", "Bind Email": "メールアドレス連携", "Bind Telegram Account": "Telegram連携", "Bind WeChat Account": "WeChatアカウント連携", - "Bind an email address to your account.": "アカウントにメールアドレスを紐付けます。", "Binding Information": "連携情報", "Binding successful!": "紐付けが成功しました!", "Binding your {{provider}} account": "{{provider}} アカウントをバインド中", "Binding...": "連携中...", "Bindings": "バインド", "Blacklist": "ブラックリスト", - "Blacklist (Block listed IPs)": "ブラックリスト (ブロックされたIPアドレス)", "Blacklist (Block listed domains)": "ブラックリスト (ブロックされたドメイン)", + "Blacklist (Block listed IPs)": "ブラックリスト (ブロックされたIPアドレス)", "Blank Rule": "空のルール", "Blend": "ブレンド", "Blink": "Blink", @@ -465,18 +514,15 @@ "Broadcast a global banner to users. Markdown is supported.": "ユーザーにグローバルバナーをブロードキャストします。Markdownがサポートされています。", "Broadcast short system notices on the dashboard": "ダッシュボードに短いシステム通知をブロードキャストします", "Browse and compare": "参照と比較", - "Budget Tokens Ratio": "予算トークン比率", "Budget tokens = max tokens × ratio. Accepts a decimal between 0.002 and 1. Recommended to keep aligned with upstream billing.": "予算トークン = 最大トークン × 比率。0.002から1までの小数を指定できます。アップストリームの請求と一致させることを推奨します。", "Budget tokens = max tokens × ratio. Accepts a decimal between 0.1 and 1.": "予算トークン = 最大トークン × 比率。0.1から1までの小数を指定できます。", + "Budget Tokens Ratio": "予算トークン比率", "Budgets": "予算", "Built for developers,": "開発者のために構築、", "Built-in": "組み込み", "Built-in Device": "内蔵デバイス", "Built-in: phone fingerprint/face, or Windows Hello; External: USB security key": "内蔵: 電話の指紋/顔認証、またはWindows Hello。外部: USBセキュリティキー", - "CC Switch": "CC 切替", - "CNY": "CNY", - "CNY per USD": "1 USD あたりの CNY", - "CPU Threshold (%)": "CPU 閾値 (%)", + "by": "によって", "Cache": "キャッシュ", "Cache Creation": "キャッシュ作成", "Cache Creation (1h)": "キャッシュ作成 (1h)", @@ -485,13 +531,13 @@ "Cache Directory Disk Space": "キャッシュディレクトリのディスク容量", "Cache Directory Info": "キャッシュディレクトリ情報", "Cache Entries": "キャッシュエントリ", + "Cache mode": "キャッシュモード", + "Cache ratio": "キャッシュ倍率", "Cache Read": "キャッシュ読み取り", + "Cache write": "キャッシュ書き込み", "Cache Write": "キャッシュ書き込み", "Cache Write (1h)": "キャッシュ書込 (1h)", "Cache Write (5m)": "キャッシュ書込 (5m)", - "Cache mode": "キャッシュモード", - "Cache ratio": "キャッシュ倍率", - "Cache write": "キャッシュ書き込み", "Cached": "キャッシュ", "Cached input": "キャッシュ入力", "Calculated price: ${{price}} per 1M tokens": "計算価格:${{price}} / 1M トークン", @@ -501,11 +547,11 @@ "Call Count Ranking": "呼び出し回数ランキング", "Call Proportion": "呼び出し比率", "Call Trend": "呼び出し傾向", + "Callback address": "コールバックアドレス", "Callback Caller IP": "コールバック呼び出し元 IP", + "Callback notification URL": "コールバック通知URL", "Callback Payment Method": "コールバック支払い方法", "Callback URL": "コールバックURL", - "Callback address": "コールバックアドレス", - "Callback notification URL": "コールバック通知URL", "Cancel": "キャンセル", "Cancelled": "キャンセル", "Cancelled at": "キャンセル日時", @@ -515,60 +561,63 @@ "Category name is required": "カテゴリ名は必須です", "Category name must be less than 50 characters": "カテゴリ名は50文字以内にしてください", "Caution": "注意", + "CC Switch": "CC 切替", "Chain": "チェーン", "Change": "変更", + "Change language": "言語を変更", "Change Password": "パスワードの変更", "Change To": "変更先", - "Change language": "言語を変更", "Changing...": "変更中...", "Channel": "チャネル", "Channel Affinity": "チャネルアフィニティ", - "Channel Affinity: Upstream Cache Hit": "チャネルアフィニティ:上流キャッシュヒット", - "Channel Extra Settings": "チャネル詳細設定", - "Channel ID": "チャネルID", - "Channel Provider": "チャネルプロバイダー", "Channel affinity reuses the last successful channel based on keys extracted from the request context or JSON body.": "チャネルアフィニティは、リクエストコンテキストまたは JSON Body から抽出したキーに基づいて、前回成功したチャネルを優先的に再利用します。", + "Channel Affinity: Upstream Cache Hit": "チャネルアフィニティ:上流キャッシュヒット", "Channel copied successfully": "チャンネルが正常にコピーされました", "Channel created successfully": "チャンネルが正常に作成されました", "Channel deleted successfully": "チャンネルが正常に削除されました", "Channel disabled successfully": "チャンネルが正常に無効化されました", "Channel enabled successfully": "チャンネルが正常に有効化されました", + "Channel Extra Settings": "チャネル詳細設定", + "Channel ID": "チャネルID", "Channel key": "チャネルキー", "Channel key unlocked": "チャンネルキーが解除されました", "Channel models": "チャネルモデル", "Channel name is required": "チャンネル名が必要です", + "Channel Provider": "チャネルプロバイダー", "Channel test completed": "チャンネルテストが完了しました", "Channel type is required": "チャンネルタイプが必要です", "Channel updated successfully": "チャンネルが正常に更新されました", "Channel-specific settings (JSON format)": "チャンネル固有の設定 (JSON 形式)", "Channel:": "チャンネル:", + "channel(s)? This action cannot be undone.": "チャネルを削除しますか?この操作は元に戻せません。", "Channels": "チャネル", "Channels deleted successfully": "チャンネルが正常に削除されました", "Chart Preferences": "チャートの環境設定", "Chart Settings": "チャート設定", "Chat": "チャット", + "Chat area": "チャットエリア", "Chat Area": "チャットエリア", "Chat Client Name": "チャットクライアント名", - "Chat Presets": "チャットプリセット", - "Chat area": "チャットエリア", "Chat client name is required": "チャットクライアント名は必須です", "Chat configuration JSON": "チャット設定JSON", "Chat preset not found": "チャットプリセットが見つかりません", + "Chat Presets": "チャットプリセット", "Chat session management": "チャットセッション管理", "ChatCompletions -> Responses Compatibility": "ChatCompletions → レスポンス互換", "Check for updates": "更新を確認", "Check in daily to receive random quota rewards": "毎日チェックインして、ランダムなノルマ報酬を受け取りましょう", "Check in now": "今すぐチェックイン", "Check resolved IPs against IP filters even when accessing by domain": "ドメインによるアクセスであっても、解決されたIPをIPフィルターと照合してチェックします", - "Check-in Settings": "チェックイン設定", "Check-in failed": "チェックインできませんでした", + "Check-in Settings": "チェックイン設定", "Check-in successful! Received": "チェックインに成功しました!受け取りました", "Checked in": "チェックイン済み", "Checking connection": "接続を確認しています", "Checking name...": "名前をチェック中...", "Checking updates...": "更新を確認中...", + "checkout.session.completed": "checkout.session.completed", + "checkout.session.expired": "checkout.session.expired", "Chinese": "中国語", - "Choose Group": "グループを選択", "Choose a preset effect and customize colors and speed.": "Choose a preset effect and customize colors and speed.", "Choose a primary color for the interface": "インターフェースのメインカラーを選択", "Choose a username": "ユーザー名を選択", @@ -578,10 +627,12 @@ "Choose between left-to-right or right-to-left site direction": "左から右、または右から左のサイトの方向を選択します", "Choose between system preference, light mode, or dark mode": "システム設定、ライトモード、またはダークモードから選択します", "Choose channels to sync upstream ratio configurations from": "アップストリームの比率設定を同期するチャネルを選択してください", + "Choose Group": "グループを選択", "Choose how quota values are shown to users": "クォータ値がユーザーにどのように表示されるかを選択してください", "Choose how the platform will operate": "プラットフォームの運用方法を選択", - "Choose how to filter IP addresses": "IPアドレスをフィルタリングする方法を選択してください", "Choose how to filter domains": "ドメインをフィルタリングする方法を選択してください", + "Choose how to filter IP addresses": "IPアドレスをフィルタリングする方法を選択してください", + "Choose the banner category. Each category uses a matching visual style.": "バナーのカテゴリを選択します。カテゴリごとに対応する見た目が適用されます。", "Choose the bundle type and define the items inside it.": "バンドルタイプを選択し、その中のアイテムを定義してください。", "Choose the default charts, range, and time granularity for model analytics.": "モデル分析のデフォルトチャート、範囲、時間粒度を選択します。", "Choose where to fetch upstream metadata.": "アップストリームのメタデータをどこからフェッチするかを選択してください。", @@ -589,22 +640,22 @@ "Classic (Legacy Frontend)": "クラシック(旧フロントエンド)", "Claude": "Claude", "Claude CLI Header Passthrough": "Claude CLI ヘッダーパススルー", - "Clean Up Log Files": "ログファイルをクリーンアップ", "Clean history logs": "履歴ログをクリーンアップ", "Clean logs": "ログをクリア", "Clean up inactive cache": "非アクティブキャッシュをクリーンアップ", + "Clean Up Log Files": "ログファイルをクリーンアップ", "Cleaned up {{count}} log files, freed {{size}}": "{{count}}個のログファイルをクリーンアップし、{{size}}を解放しました", "Cleaning...": "クリア中...", - "Cleanup Mode": "クリーンアップ方式", "Cleanup failed": "クリーンアップ失敗", + "Cleanup Mode": "クリーンアップ方式", "Clear": "クリア", + "Clear all": "すべてクリア", "Clear All": "すべてクリア", "Clear All Cache": "全キャッシュをクリア", - "Clear Mapping": "マッピングをクリア", - "Clear all": "すべてクリア", "Clear all filters": "すべてのフィルターをクリア", "Clear cache for this rule": "このルールのキャッシュをクリア", "Clear filters": "フィルターをクリア", + "Clear Mapping": "マッピングをクリア", "Clear mode flags in prompts": "プロンプト内のモードフラグをクリア", "Clear search": "検索をクリア", "Clear selection": "選択をクリア", @@ -614,8 +665,8 @@ "Click \"Create Plan\" to create your first subscription plan": "「プラン作成」をクリックして最初のプランを作成してください", "Click \"Generate\" to create a token": "「生成」をクリックしてトークンを作成", "Click for details": "クリックして詳細を表示", - "Click save when you're done.": "完了したら保存をクリックしてください。", "Click save when you're done.": "完了したら「保存」をクリックしてください。", + "Click save when you're done.": "完了したら保存をクリックしてください。", "Click the button below to bind your Telegram account": "下のボタンをクリックしてTelegramアカウントをバインドしてください", "Click to open deployment": "クリックして展開を開く", "Click to preview audio": "クリックして音声をプレビュー", @@ -625,27 +676,29 @@ "Click to view full details": "クリックして詳細を表示", "Click to view full error message": "クリックしてエラーメッセージ全文を表示", "Click to view full prompt": "クリックしてプロンプト全文を表示", + "Client header value": "クライアントヘッダー値", "Client ID": "クライアントID", "Client Secret": "クライアントシークレット", - "Client header value": "クライアントヘッダー値", "Close": "閉じる", - "Close Today": "今日は表示しない", "Close dialog": "ダイアログを閉じる", "Close menu": "メニューを閉じる", + "Close Today": "今日は表示しない", "Cloudflare": "Cloudflare", + "CNY": "CNY", + "CNY per USD": "1 USD あたりの CNY", "Code": "コード", "Codes copied!": "コードをコピーしました!", "Codex": "Codex", "Codex Account & Usage": "Codex アカウントと使用量", "Codex Authorization": "Codex認証", - "Codex CLI Header Passthrough": "Codex CLI ヘッダーパススルー", "Codex channels use an OAuth JSON credential as the key.": "CodexチャンネルはOAuth JSON認証情報をキーとして使用します。", + "Codex CLI Header Passthrough": "Codex CLI ヘッダーパススルー", "Cohere": "Cohere", "Collapse": "折りたたむ", "Collapse All": "すべて折りたたむ", "Color": "カラー", - "Color Stops": "Color Stops", "Color is required": "色は必須です", + "Color Stops": "Color Stops", "Color:": "色:", "Coming Soon!": "近日公開!", "Comma-separated color values for the gradient.": "Comma-separated color values for the gradient.", @@ -658,9 +711,10 @@ "Common": "共通", "Common Keys": "よく使うキー", "Common Logs": "一般的なログ", - "Common User": "一般ユーザー", "Common ports include 25, 465, and 587": "一般的なポートには 25, 465, 587 が含まれます", + "Common User": "一般ユーザー", "Community driven, self-hosted, and extensible": "コミュニティ主導、セルフホスト可能、拡張可能", + "compatible API routes": "互換APIルート", "Compatible API routes for common AI application workflows": "一般的なAIアプリケーションワークフロー向けの互換APIルート", "Complete API documentation with multi-language SDK support": "多言語SDKをサポートする完全なAPIドキュメント", "Complete Order": "手動チャージ", @@ -684,12 +738,6 @@ "Configuration for Stripe payment integration": "Stripe決済連携のための設定", "Configuration required": "設定が必要です", "Configure": "設定", - "Configure API documentation links for the dashboard": "ダッシュボード用のAPIドキュメントリンクを設定", - "Configure Creem products. Provide a JSON array.": "Creem製品を設定。JSON配列を提供してください。", - "Configure Gemini safety behavior, version overrides, and thinking adapter": "Geminiの安全動作、バージョン上書き、および思考アダプターを設定", - "Configure Passkey (WebAuthn) login settings": "パスキー (WebAuthn) ログイン設定を設定", - "Configure Waffo Pancake hosted checkout integration for USD-priced top-ups": "USD 建てのチャージ用に Waffo Pancake のホスト型チェックアウト連携を設定", - "Configure Waffo payment aggregation platform integration": "Waffo決済アグリゲーションプラットフォームの連携を設定", "Configure a Creem product for user recharge options.": "ユーザー チャージオプション用の Creem 製品を設定。", "Configure a custom ratio for when users use a specific token group.": "ユーザーが特定のトークングループを使用する際のカスタム倍率を設定します。", "Configure a group that users can select when creating API keys.": "ユーザーがAPIキー作成時に選択できるグループを設定します。", @@ -697,21 +745,25 @@ "Configure a payment method for user recharge options.": "ユーザーのチャージオプションのための支払い方法を設定します。", "Configure a predefined chat link for end users.": "エンドユーザー向けの事前定義されたチャットリンクを設定します。", "Configure and deploy a new container instance.": "新しいコンテナインスタンスを設定してデプロイします。", + "Configure API documentation links for the dashboard": "ダッシュボード用のAPIドキュメントリンクを設定", "Configure at:": "設定場所:", "Configure availability monitoring panel": "可用性モニタリングパネルを設定", "Configure available payment methods. Provide a JSON array.": "利用可能な支払い方法を設定します。JSON配列を提供してください。", "Configure basic system information and branding": "基本的なシステム情報とブランディングを設定", "Configure channel affinity (sticky routing) rules": "チャネルアフィニティ(スティッキールーティング)ルールの設定", + "Configure Creem products. Provide a JSON array.": "Creem製品を設定。JSON配列を提供してください。", "Configure custom OAuth providers for user authentication": "ユーザー認証のためのカスタムOAuthプロバイダーを設定", "Configure daily check-in rewards for users": "ユーザーの毎日のチェックイン報酬を設定する", "Configure discount rates based on recharge amounts": "チャージ金額に基づいた割引率を設定", "Configure experimental data export for the dashboard": "ダッシュボード用の実験的なデータエクスポートを設定", + "Configure Gemini safety behavior, version overrides, and thinking adapter": "Geminiの安全動作、バージョン上書き、および思考アダプターを設定", "Configure in your Creem dashboard": "Creem ダッシュボードで設定", "Configure io.net API key for model deployments": "モデルデプロイ用の io.net API キーを設定します", "Configure keyword filtering for prompts and responses.": "プロンプトと応答のキーワードフィルタリングを設定します。", "Configure model, caching, and group ratios used for billing": "請求に使用されるモデル、キャッシュ、およびグループ比率を設定します。", "Configure monitoring status page groups for the dashboard": "ダッシュボードの監視ステータスページグループを設定します。", "Configure outgoing email server for notifications": "通知用の送信メールサーバーを設定します。", + "Configure Passkey (WebAuthn) login settings": "パスキー (WebAuthn) ログイン設定を設定", "Configure password-based login and registration": "パスワードベースのログインと登録を設定します。", "Configure per-model ratio for image inputs or outputs.": "画像の入力または出力のモデルごとの比率を設定します。", "Configure per-tool unit prices ($/1K calls). Per-request models do not incur additional tool fees.": "ツールごとの単価($/1K 回)を設定します。リクエスト課金モデルでは追加工具料金はかかりません。", @@ -727,6 +779,8 @@ "Configure upstream providers and routing.": "アップストリームプロバイダーとルーティングを設定。", "Configure upstream worker or proxy service for outbound requests": "アウトバウンドリクエストのアップストリームワーカーまたはプロキシサービスを設定します。", "Configure user quota allocation and rewards": "ユーザーのクォータ割り当てと報酬を設定します。", + "Configure Waffo Pancake hosted checkout integration for USD-priced top-ups": "USD 建てのチャージ用に Waffo Pancake のホスト型チェックアウト連携を設定", + "Configure Waffo payment aggregation platform integration": "Waffo決済アグリゲーションプラットフォームの連携を設定", "Configure xAI Grok model settings": "xAI Grokモデルの設定", "Configure xAI Grok model specific settings": "xAI Grok モデル固有の設定を構成", "Configure your account behavior preferences": "アカウントの動作設定を設定します。", @@ -737,22 +791,22 @@ "Confirm Billing Conflicts": "請求の競合を確認", "Confirm Changes": "変更を確認", "Confirm Cleanup": "クリーンアップを確認", - "Confirm Creem Purchase": "Creem 購入を確認", - "Confirm New Password": "新しいパスワードの確認", - "Confirm Payment": "支払いの確認", - "Confirm Selection": "選択の確認", - "Confirm Unbind": "連携解除を確認", "Confirm cleanup of inactive disk cache?": "非アクティブなディスクキャッシュをクリーンアップしますか?", "Confirm clearing all channel affinity cache": "全チャネルアフィニティキャッシュのクリアを確認", "Confirm clearing cache for this rule": "このルールのキャッシュクリアを確認", + "Confirm Creem Purchase": "Creem 購入を確認", "Confirm delete": "削除の確認", "Confirm disable": "無効化を確認", "Confirm enable": "有効化を確認", "Confirm invalidate": "無効化を確認", "Confirm log cleanup": "ログクリーンアップの確認", "Confirm log file cleanup?": "ログファイルをクリーンアップしますか?", + "Confirm New Password": "新しいパスワードの確認", "Confirm password": "パスワードの確認", + "Confirm Payment": "支払いの確認", + "Confirm Selection": "選択の確認", "Confirm settings and finish setup": "設定を確認してセットアップを完了", + "Confirm Unbind": "連携解除を確認", "Confirm your identity before removing this Passkey from your account.": "このパスキーをアカウントから削除する前に、本人確認を行ってください。", "Confirm your identity with Two-factor Authentication before registering a Passkey.": "パスキーを登録する前に、二要素認証で本人確認を行ってください。", "Conflict": "競合", @@ -763,8 +817,8 @@ "Connection failed": "接続に失敗しました", "Connection successful": "接続に成功しました", "Console": "コンソール", - "Console Area": "コンソールエリア", "Console area": "コンソールエリア", + "Console Area": "コンソールエリア", "Consume": "消費", "Container": "コンテナ", "Container name": "コンテナ名", @@ -776,13 +830,13 @@ "Content not found.": "コンテンツが見つかりません。", "Content not modified!": "コンテンツが変更されていません!", "Continue": "続行", + "Continue with {{name}}": "{{name}} で続行", "Continue with Discord": "Discord で続行", "Continue with GitHub": "GitHub で続行", "Continue with LinuxDO": "LinuxDO で続行", "Continue with OIDC": "OIDC で続行", "Continue with Telegram": "Telegram で続行", "Continue with WeChat": "WeChat で続行", - "Continue with {{name}}": "{{name}} で続行", "Control log retention and clean historical data.": "ログの保持を制御し、履歴データをクリーンアップします。", "Control passthrough behavior and connection keep-alive settings": "パススルーの動作と接続のキープアライブ設定を制御します。", "Control request frequency to prevent abuse and manage system load.": "乱用を防ぎ、システム負荷を管理するためにリクエスト頻度を制御します。", @@ -794,32 +848,31 @@ "Convert string to lowercase": "文字列を小文字に変換", "Convert string to uppercase": "文字列を大文字に変換", "Copied": "コピーしました", - "Copied to clipboard": "クリップボードにコピーしました", "Copied {{count}} key(s)": "{{count}} 件のキーをコピーしました", - "Copied!": "コピーしました!", + "Copied to clipboard": "クリップボードにコピーしました", "Copied: {{model}}": "コピーしました: {{model}}", + "Copied!": "コピーしました!", "Copy": "コピー", - "Copy API key": "APIキーをコピー", + "Copy a request header": "リクエストヘッダーをコピー", "Copy All": "すべてコピー", + "Copy all backup codes": "すべてのバックアップコードをコピー", "Copy All Codes": "すべてのコードをコピー", + "Copy API key": "APIキーをコピー", + "Copy authorization link": "認証リンクをコピー", "Copy Channel": "チャネルをコピー", + "Copy code": "コードをコピー", "Copy Connection Info": "接続情報をコピー", + "Copy failed": "コピーに失敗しました", "Copy Field": "フィールドをコピー", "Copy Header": "ヘッダーをコピー", "Copy Key": "キーをコピー", "Copy Link": "リンクをコピー", - "Copy Request Header": "リクエストヘッダーをコピー", - "Copy URL": "URLをコピー", - "Copy a request header": "リクエストヘッダーをコピー", - "Copy all backup codes": "すべてのバックアップコードをコピー", - "Copy authorization link": "認証リンクをコピー", - "Copy code": "コードをコピー", - "Copy failed": "コピーに失敗しました", "Copy model name": "モデル名をコピー", "Copy model names": "モデル名をコピー", "Copy prompt": "プロンプトをコピー", "Copy redemption code": "引き換えコードをコピー", "Copy referral link": "紹介リンクをコピー", + "Copy Request Header": "リクエストヘッダーをコピー", "Copy secret key": "シークレットキーをコピー", "Copy selected codes": "選択したコードをコピー", "Copy selected keys": "選択したキーをコピー", @@ -828,42 +881,44 @@ "Copy this prompt and send it to an LLM (e.g. ChatGPT / Claude) to help design your billing expression.": "このプロンプトをコピーしてLLM(ChatGPT / Claudeなど)に送り、課金式の設計を依頼してください。", "Copy to clipboard": "クリップボードにコピー", "Copy token": "トークンをコピー", + "Copy URL": "URLをコピー", "Core Configuration": "コア設定", "Core Features": "主要機能", "Cost": "コスト", - "Cost Tracking": "コスト追跡", "Cost in USD per request, regardless of tokens used.": "使用されたトークンに関係なく、リクエストあたりのUSDでのコスト。", + "Cost Tracking": "コスト追跡", "Count must be between {{min}} and {{max}}": "カウントは{{min}}から{{max}}の間である必要があります", "Coze": "Coze", + "CPU Threshold (%)": "CPU 閾値 (%)", "Create": "新規作成", - "Create API Key": "APIキーを作成", - "Create Channel": "チャネルを作成", - "Create Code": "コードを作成", - "Create Model": "モデルを作成", - "Create Plan": "プラン作成", - "Create Prefill Group": "プレフィルグループを作成", - "Create Provider": "プロバイダーを作成", - "Create Redemption Code": "引き換えコードを作成", - "Create Vendor": "ベンダーを作成", "Create a copy of:": "コピーを作成:", "Create a new user group to configure ratio overrides for.": "レートの上書きを設定するための新しいユーザーグループを作成します。", "Create account": "アカウントを作成", "Create an account": "アカウントを作成", "Create and review invite or credit codes.": "招待コードまたはクレジットコードを作成および確認。", + "Create API Key": "APIキーを作成", "Create cache": "キャッシュを作成", "Create cache ratio": "キャッシュ倍率を作成", + "Create Channel": "チャネルを作成", + "Create Code": "コードを作成", "Create credentials for the root user": "管理者アカウントの認証情報を作成", "Create deployment": "デプロイを作成", + "Create Model": "モデルを作成", "Create multiple API keys at once (random suffix will be added to names)": "一度に複数のAPIキーを一括作成(名前にランダムな接尾辞が追加されます)", "Create multiple channels from multiple keys": "複数のキーから複数のチャンネルを作成", "Create multiple redemption codes at once (1-100)": "複数の引き換えコードを一度に作成します (1-100)", "Create new subscription plan": "新しいサブスクリプションプランを作成", "Create or update frequently asked questions for users": "ユーザー向けのよくある質問を作成または更新します", "Create or update system announcements for the dashboard": "ダッシュボードのシステムアナウンスを作成または更新します", + "Create Plan": "プラン作成", + "Create Prefill Group": "プレフィルグループを作成", + "Create Provider": "プロバイダーを作成", + "Create Redemption Code": "引き換えコードを作成", "Create request parameter override rules with a visual editor or raw JSON.": "ビジュアルエディタまたは生のJSONでリクエストパラメータオーバーライドルールを作成します。", "Create request parameter override rules without editing raw JSON.": "生の JSON を編集せずにリクエストパラメータ上書きルールを作成します。", "Create reusable bundles of models, tags, endpoints, and user groups to speed up configuration elsewhere in the console.": "モデル、タグ、エンドポイント、およびユーザーグループの再利用可能なバンドルを作成し、コンソールの他の場所での設定を高速化します。", "Create succeeded": "作成に成功しました", + "Create Vendor": "ベンダーを作成", "Create your first group to reuse model, tag, or endpoint selections anywhere in the dashboard.": "ダッシュボードのどこでもモデル、タグ、またはエンドポイントの選択を再利用するために、最初のグループを作成します。", "Create, revoke, and audit API tokens.": "APIトークンを作成、取り消し、監査。", "Created": "作成済み", @@ -883,40 +938,40 @@ "Current Balance": "現在の残高", "Current Billing": "現在の請求", "Current Cache Size": "現在のキャッシュサイズ", - "Current Level Only": "現在の階層のみ", - "Current Password": "現在のパスワード", - "Current Price": "現在の価格", - "Current Value": "現在の値", "Current email: {{email}}. Enter a new email to change.": "現在のメール: {{email}}。変更するには新しいメールアドレスを入力してください。", "Current key": "現在のキー", "Current legacy JSON is invalid, cannot append": "現在の旧形式JSONが無効なため、追加できません", + "Current Level Only": "現在の階層のみ", "Current models for the longest channel in this tag. May not include all models from all channels.": "このタグ内の最も長いチャネルの現在のモデル。すべてのチャネルのすべてのモデルが含まれているわけではない場合があります。", + "Current Password": "現在のパスワード", + "Current Price": "現在の価格", "Current quota": "現在のクォータ", + "Current Value": "現在の値", "Current version": "現在のバージョン", "Current:": "現在:", "Custom": "カスタム", "Custom (seconds)": "カスタム(秒)", + "Custom Amount": "カスタム金額", "Custom API base URL. For official channels, New API has built-in addresses. Only fill this for third-party proxy sites or special endpoints. Do not add /v1 or trailing slash.": "カスタムAPIベースURL。公式チャンネルの場合、New APIには組み込みのアドレスがあります。これは、サードパーティのプロキシサイトまたは特別なエンドポイントに対してのみ入力してください。/v1 や末尾のスラッシュを追加しないでください。", "Custom API base URL. Leave empty to use provider default.": "カスタム API ベース URL。プロバイダのデフォルトを使用する場合は空にしてください。", - "Custom Amount": "カスタム金額", + "Custom color": "カスタムカラー", "Custom CSS": "Custom CSS", "Custom Currency": "カスタム通貨", "Custom Currency Symbol": "カスタム通貨記号", - "Custom Error Response": "カスタムエラーレスポンス", - "Custom Home Page": "カスタムホームページ", - "Custom OAuth": "カスタム OAuth", - "Custom OAuth Providers": "カスタムOAuthプロバイダー", - "Custom Seconds": "カスタム秒数", - "Custom Time Range": "カスタム時間範囲", - "Custom Zoom": "カスタムズーム", - "Custom color": "カスタムカラー", "Custom currency symbol is required": "カスタム通貨記号は必須です", "Custom database driver detected.": "カスタムデータベースドライバーが検出されました。", + "Custom Error Response": "カスタムエラーレスポンス", + "Custom Home Page": "カスタムホームページ", "Custom message shown when access is denied": "アクセス拒否時に表示されるカスタムメッセージ", "Custom model (comma-separated)": "カスタムモデル (コンマ区切り)", "Custom module": "カスタムモジュール", "Custom multipliers when specific user groups use specific token groups. Example: VIP users get 0.9x rate when using \"edit_this\" group tokens.": "特定のユーザーグループが特定のトークングループを使用する場合のカスタム乗数。例: VIPユーザーが「edit_this」グループトークンを使用する場合、0.9倍のレートが適用されます。", + "Custom OAuth": "カスタム OAuth", + "Custom OAuth Providers": "カスタムOAuthプロバイダー", + "Custom Seconds": "カスタム秒数", "Custom sidebar section": "カスタムサイドバーセクション", + "Custom Time Range": "カスタム時間範囲", + "Custom Zoom": "カスタムズーム", "Customize sidebar display content": "サイドバーの表示内容をカスタマイズ", "Daily": "毎日", "Daily Check-in": "毎日のチェックイン", @@ -930,74 +985,76 @@ "Data management and log viewing": "データ管理とログ閲覧", "Database": "データベース", "Database check": "データベース確認", - "Date Range": "期間", "Date and time when this announcement should be displayed": "このアナウンスが表示されるべき日時", + "Date Range": "期間", "Day": "日", + "days": "日", "Days to Retain": "保持日数", "Deducted by subscription": "サブスクリプションで控除", "DeepSeek": "DeepSeek", + "default": "デフォルト", "Default": "デフォルト", "Default (New Frontend)": "デフォルト(新フロントエンド)", "Default API Version *": "デフォルトのAPIバージョン *", "Default API version for this channel": "このチャンネルのデフォルトのAPIバージョン", "Default Collapse Sidebar": "デフォルトのサイドバー折りたたみ", - "Default Max Tokens": "デフォルトの最大トークン", - "Default Responses API version, if empty, will use the API version above": "デフォルトの応答APIバージョン。空の場合、上記のAPIバージョンが使用されます", - "Default TTL (seconds)": "デフォルト TTL(秒)", "Default consumption chart": "デフォルトの消費チャート", + "Default Max Tokens": "デフォルトの最大トークン", "Default model call chart": "デフォルトのモデル呼び出しチャート", "Default range": "デフォルト範囲", + "Default Responses API version, if empty, will use the API version above": "デフォルトの応答APIバージョン。空の場合、上記のAPIバージョンが使用されます", "Default system prompt for this channel": "このチャンネルのデフォルトのシステムプロンプト", "Default time granularity": "デフォルトの時間粒度", "Default to auto groups": "デフォルトで自動グループ化", + "Default TTL (seconds)": "デフォルト TTL(秒)", "Defaults to the wallet page when empty": "空欄の場合はウォレットページを既定にします", "Define API endpoints for this model (JSON format)": "このモデルのAPIエンドポイントを定義します (JSON形式)", "Define endpoint mappings for each provider.": "各プロバイダーごとにエンドポイントのマッピングを定義してください。", "Define per-group rules to add, remove, or append selectable groups for specific user groups.": "特定のユーザーグループに対して選択可能なグループを追加、削除、または追加するグループごとのルールを定義します。", "Delete": "削除", "Delete (": "削除 (", + "Delete {{count}} API key(s)?": "{{count}}個のAPIキーを削除しますか?", + "Delete a runtime request header": "ランタイムリクエストヘッダーを削除", "Delete Account": "アカウント削除", "Delete All Disabled": "すべての無効なものを削除", "Delete All Disabled Channels?": "すべての無効なチャンネルを削除しますか?", "Delete Auto-Disabled": "自動無効化されたものを削除", "Delete Channel": "チャネルを削除", "Delete Channels?": "チャネルを削除しますか?", + "Delete condition": "条件を削除", "Delete Condition": "条件を削除", + "Delete failed": "削除に失敗しました", "Delete Field": "フィールドを削除", + "Delete group": "グループを削除", "Delete Header": "ヘッダーを削除", "Delete Invalid": "無効を削除", + "Delete invalid codes": "無効なコードを削除", + "Delete invalid codes (used/disabled/expired)": "無効なコード(使用済み/無効/期限切れ)を削除", + "Delete invalid redemption codes": "無効な引き換えコードを削除", "Delete Invalid Redemption Codes?": "無効な引き換えコードを削除しますか?", + "Delete logs": "ログを削除", "Delete Model": "モデルを削除", "Delete Models?": "モデルを削除しますか?", "Delete Provider": "プロバイダーを削除", "Delete Request Header": "リクエストヘッダーを削除", - "Delete a runtime request header": "ランタイムリクエストヘッダーを削除", - "Delete condition": "条件を削除", - "Delete failed": "削除に失敗しました", - "Delete group": "グループを削除", - "Delete invalid codes": "無効なコードを削除", - "Delete invalid codes (used/disabled/expired)": "無効なコード(使用済み/無効/期限切れ)を削除", - "Delete invalid redemption codes": "無効な引き換えコードを削除", - "Delete logs": "ログを削除", "Delete selected API keys": "選択したAPIキーを削除", "Delete selected channels": "選択したチャネルを削除", "Delete selected models": "選択したモデルを削除", - "Delete {{count}} API key(s)?": "{{count}}個のAPIキーを削除しますか?", "Deleted": "削除済み", "Deleted successfully": "削除しました", "Deleting will permanently remove this subscription record (including benefit details). Continue?": "削除するとこのサブスクリプション記録(特典詳細を含む)が完全に削除されます。続行しますか?", "Deleting...": "削除中...", - "Demo Site Mode": "デモサイトモード", "Demo site": "デモサイト", "Demo site mode": "デモサイトモード", + "Demo Site Mode": "デモサイトモード", "Demote": "降格", "Deploy your own gateway and start routing requests through your configured upstream services.": "独自のゲートウェイをデプロイし、設定済みのアップストリームサービスへリクエストをルーティングできます。", - "Deployment ID": "デプロイ ID", - "Deployment Region *": "デプロイリージョン *", "Deployment created successfully": "デプロイを作成しました", "Deployment details": "デプロイメントの詳細", + "Deployment ID": "デプロイ ID", "Deployment location": "デプロイ先", "Deployment logs": "デプロイログ", + "Deployment Region *": "デプロイリージョン *", "Deployment requested": "デプロイメントが要求されました", "Deployments": "デプロイ", "Desc": "説明", @@ -1007,6 +1064,7 @@ "Description": "説明", "Description is required": "説明は必須です", "Designed and Developed by": "設計・開発", + "designed for scale": "スケールのために設計", "Destroyed": "破棄済み", "Detailed request logs for investigations.": "調査のための詳細なリクエストログ。", "Details": "詳細", @@ -1027,7 +1085,6 @@ "Disable": "無効にする", "Disable 2FA": "2FAを無効にする", "Disable All": "すべて無効にする", - "Disable Two-Factor Authentication": "二要素認証を無効にする", "Disable on failure": "失敗時に無効にする", "Disable selected channels": "選択したチャネルを無効にする", "Disable selected models": "選択したモデルを無効にする", @@ -1035,40 +1092,42 @@ "Disable thinking processing models": "思考処理モデルを無効にする", "Disable this key?": "このキーを無効にしますか?", "Disable threshold (seconds)": "無効化しきい値(秒)", + "Disable Two-Factor Authentication": "二要素認証を無効にする", + "disabled": "無効", "Disabled": "無効", + "Disabled all channels with tag: {{tag}}": "タグ「{{tag}}」の全チャネルを無効にしました", "Disabled Reason": "無効化の理由", "Disabled Time": "無効化された時刻", - "Disabled all channels with tag: {{tag}}": "タグ「{{tag}}」の全チャネルを無効にしました", "Disabling...": "無効化中...", "Discord": "Discord", "Discount": "特典", - "Discount Rate": "割引率", - "Discount Rate:": "割引率:", "Discount map by recharge amount (JSON object)": "リチャージ額による割引マップ(JSONオブジェクト)", - "Discount rate must be greater than 0": "割引率は 0 より大きくなければなりません", + "Discount Rate": "割引率", "Discount rate must be ≤ 1": "割引率は 1 以下でなければなりません", + "Discount rate must be greater than 0": "割引率は 0 より大きくなければなりません", + "Discount Rate:": "割引率:", "Discount ratio for cache hits.": "キャッシュヒットに対する割引率。", "Discouraged": "非推奨", "Discover curated AI models, compare pricing and capabilities, and choose the right model for every scenario.": "厳選された AI モデルを見つけ、価格と機能を比較し、あらゆるシナリオに適したモデルを選択できます。", "Discovering...": "検出中...", + "Disk cache cleared": "ディスクキャッシュをクリアしました", "Disk Cache Settings": "ディスクキャッシュ設定", "Disk Cache Threshold (MB)": "ディスクキャッシュ閾値 (MB)", + "Disk cache, system performance monitoring, and operation statistics": "ディスクキャッシュ、システムパフォーマンス監視、運用統計", "Disk Hits": "ディスクヒット", "Disk Threshold (%)": "ディスク閾値 (%)", - "Disk cache cleared": "ディスクキャッシュをクリアしました", - "Disk cache, system performance monitoring, and operation statistics": "ディスクキャッシュ、システムパフォーマンス監視、運用統計", - "Display Mode": "表示モード", - "Display Name": "表示名", - "Display Name Field": "表示名フィールド", - "Display Options": "表示オプション", - "Display Token Statistics": "トークン統計を表示", "Display in Currency": "通貨で表示", + "Display Mode": "表示モード", "Display name": "表示名", + "Display Name": "表示名", "Display name and email used in outgoing messages": "送信メッセージで使用される表示名とメールアドレス", + "Display Name Field": "表示名フィールド", "Display name for this chat client.": "このチャットクライアントの表示名。", "Display name for this monitoring group (max 50 characters)": "この監視グループの表示名(最大50文字)", "Display name for this payment method.": "この支払い方法の表示名。", "Display name shown to users.": "ユーザーに表示される表示名。", + "Display Options": "表示オプション", + "Display Token Statistics": "トークン統計を表示", "Displays the mobile sidebar.": "モバイルサイドバーを表示します。", "Do not over-trust this feature. IP may be spoofed. Please use with nginx, CDN and other gateways.": "この機能を過信しないでください。IPは偽装される可能性があります。nginx、CDNなどのゲートウェイと併用してください。", "Do not repeat check-in; only once per day": "チェックインを繰り返さないでください;1日1回のみ", @@ -1077,6 +1136,7 @@ "Docs": "ドキュメント", "Documentation Link": "ドキュメントリンク", "Documentation or external knowledge base.": "ドキュメントまたは外部知識ベース。", + "does not exist or might have been removed.": "存在しないか、削除された可能性があります。", "Domain": "ドメイン", "Domain Filter Mode": "ドメインフィルターモード", "Don't have an account?": "アカウントをお持ちでないですか?", @@ -1088,8 +1148,8 @@ "Download": "ダウンロード", "Draw": "描画", "Drawing": "画像生成", - "Drawing Logs": "画像生成履歴", "Drawing logs": "描画ログ", + "Drawing Logs": "画像生成履歴", "Drawing task records": "描画タスク記録", "Duplicate": "複製", "Duration": "所要時間", @@ -1098,103 +1158,148 @@ "Duration Unit": "期間単位", "Duration Value": "期間値", "Dynamic Pricing": "ダイナミック価格設定", - "Each backup code can only be used once.": "各バックアップコードは1回しか使用できません。", - "Each item must be an object with a single key-value pair.": "各項目は単一のキーと値のペアを持つオブジェクトでなければなりません。", - "Each item must have exactly one key-value pair.": "各項目には正確に 1 つのキーと値のペアが必要です。", - "Each line represents one keyword. Leave blank to disable the list but keep the switch states.": "各行は1つのキーワードを表します。リストを無効にするが、スイッチの状態を維持するには、空白のままにしてください。", - "Each tier supports 0~2 conditions (over len, p, c); the last tier is the catch-all without conditions. Use len (full input length, including cache hits) for tier conditions to avoid mis-routing when cache hits reduce p.": "各層は 0~2 個の条件(len、p、c に対して)を設定でき、最後の層は条件なしのキャッチオール層です。キャッシュヒットによって p が下がり層が誤判定されるのを防ぐため、層の条件には len(キャッシュヒットを含む完全な入力長)を使用してください。", - "Earn rewards when your referrals add funds. Transfer accumulated rewards to your balance anytime.": "紹介者が資金を追加すると報酬を獲得できます。いつでも蓄積された報酬を残高に振り替えることができます。", - "Edit": "編集", - "Edit API Shortcut": "API ショートカットを編集", - "Edit Announcement": "お知らせを編集", + "e.g. ¥ or HK$": "例: ¥ または HK$", + "e.g. 401, 403, 429, 500-599": "例:401, 403, 429, 500-599", + "e.g. 8 means 1 USD = 8 units": "例: 8 は 1 USD = 8 単位 を意味します", + "e.g. Basic Plan": "例:ベーシックプラン", + "e.g. Clean tool parameters to avoid upstream validation errors": "例:ツールパラメータを整理して上流の検証エラーを回避", + "e.g. example.com": "例: example.com", + "e.g. llama3.1:8b": "例: llama3.1:8b", + "e.g. My GitLab": "例: My GitLab", + "e.g. my-gitlab": "例: my-gitlab", + "e.g. New API Console": "例: New API コンソール", + "e.g. openid profile email": "例: openid profile email", + "e.g. Suitable for light usage": "例:ライトユーザー向け", + "e.g. This request does not meet access policy": "例:このリクエストはアクセスポリシーを満たしていません", + "e.g., #3b82f6,#8b5cf6": "e.g., #3b82f6,#8b5cf6", + "e.g., #ff0000,#0000ff": "e.g., #ff0000,#0000ff", + "e.g., #ffffff or white": "e.g., #ffffff or white", + "e.g., 0.95": "例: 0.95", + "e.g., 100": "例: 100", + "e.g., 123456": "例: 123456", + "e.g., 2025-04-01-preview": "例: 2025-04-01-preview", + "e.g., 50": "例: 50", + "e.g., 500000": "例: 500000", + "e.g., 7342866812345": "例: 7342866812345", + "e.g., 8 means 8 local currency per USD": "例: 8 は 1 USD あたり 8 現地通貨 を意味します", + "e.g., Alipay, WeChat": "例: Alipay、WeChat", + "e.g., Basic Package": "例: 基本パッケージ", + "e.g., CN2 GIA": "例: CN2 GIA", + "e.g., Core APIs, OpenAI, Claude": "例: Core APIs、OpenAI、Claude", + "e.g., d6b5da8hk1awo8nap34ube6gh": "例: d6b5da8hk1awo8nap34ube6gh", + "e.g., default, vip, premium": "例: default、vip、premium", + "e.g., gpt-4, claude-3": "例:gpt-4、claude-3", + "e.g., gpt-4.1-nano,regex:^claude-.*$,regex:^sora-.*$": "例: gpt-4.1-nano,regex:^claude-.*$,regex:^sora-.*$", + "e.g., https://api.example.com (path before /suno)": "例: https://api.example.com (/suno の前のパス)", + "e.g., https://api.openai.com/v1/chat/completions": "例: https://api.openai.com/v1/chat/completions", + "e.g., https://ark.cn-beijing.volces.com": "例: https://ark.cn-beijing.volces.com", + "e.g., https://docs-test-001.openai.azure.com": "例: https://docs-test-001.openai.azure.com", + "e.g., https://fastgpt.run/api/openapi": "例: https://fastgpt.run/api/openapi", + "e.g., OpenAI GPT-4 Production": "例: OpenAI GPT -4 Production", + "e.g., preview": "例: preview", + "e.g., prod_xxx": "例: prod_xxx", + "e.g., Recommended for China Mainland Users": "例: 中国本土ユーザーにおすすめ", + "e.g., us-central1 or JSON format for model-specific regions": "例: us-central1 またはモデル固有のリージョンを示す JSON 形式", + "e.g., v2.1": "例: v2.1", + "Each backup code can only be used once.": "各バックアップコードは1回しか使用できません。", + "Each item must be an object with a single key-value pair.": "各項目は単一のキーと値のペアを持つオブジェクトでなければなりません。", + "Each item must have exactly one key-value pair.": "各項目には正確に 1 つのキーと値のペアが必要です。", + "Each line represents one keyword. Leave blank to disable the list but keep the switch states.": "各行は1つのキーワードを表します。リストを無効にするが、スイッチの状態を維持するには、空白のままにしてください。", + "Each tier supports 0~2 conditions (over len, p, c); the last tier is the catch-all without conditions. Use len (full input length, including cache hits) for tier conditions to avoid mis-routing when cache hits reduce p.": "各層は 0~2 個の条件(len、p、c に対して)を設定でき、最後の層は条件なしのキャッチオール層です。キャッシュヒットによって p が下がり層が誤判定されるのを防ぐため、層の条件には len(キャッシュヒットを含む完全な入力長)を使用してください。", + "Earn rewards when your referrals add funds. Transfer accumulated rewards to your balance anytime.": "紹介者が資金を追加すると報酬を獲得できます。いつでも蓄積された報酬を残高に振り替えることができます。", + "Edit": "編集", + "Edit {{title}}": "{{title}}を編集", + "Edit all channels with tag:": "タグを持つすべてのチャネルを編集:", + "Edit Announcement": "お知らせを編集", + "Edit API Shortcut": "API ショートカットを編集", "Edit Channel": "チャンネルを編集", + "Edit chat preset": "チャットプリセットを編集", + "Edit discount tier": "割引ティアを編集", "Edit FAQ": "FAQ を編集", + "Edit group rate limit": "グループレート制限を編集", "Edit JSON object directly. Suitable for simple parameter overrides.": "JSONオブジェクトを直接編集します。シンプルなパラメータオーバーライドに適しています。", "Edit JSON text directly. Format will be validated on save.": "JSONテキストを直接編集します。保存時にフォーマットが検証されます。", + "Edit model": "モデルを編集", "Edit Model": "モデルを編集", "Edit OAuth Provider": "OAuthプロバイダーを編集", + "Edit payment method": "決済方法を編集", "Edit Prefill Group": "プリフィルグループを編集", + "Edit product": "製品を編集", + "Edit ratio override": "倍率オーバーライドを編集", "Edit Rule": "ルール編集", + "Edit selectable group": "選択可能なグループを編集", "Edit Tag": "タグ編集", "Edit Tag:": "タグを編集:", "Edit Uptime Kuma Group": "Uptime Kuma グループを編集", "Edit Vendor": "ベンダーを編集", - "Edit all channels with tag:": "タグを持つすべてのチャネルを編集:", - "Edit chat preset": "チャットプリセットを編集", - "Edit discount tier": "割引ティアを編集", - "Edit group rate limit": "グループレート制限を編集", - "Edit model": "モデルを編集", - "Edit payment method": "決済方法を編集", - "Edit product": "製品を編集", - "Edit ratio override": "倍率オーバーライドを編集", - "Edit selectable group": "選択可能なグループを編集", - "Edit {{title}}": "{{title}}を編集", + "edit_this": "edit_this", "Editor mode": "エディターモード", "Effect": "Effect", "Email": "メールアドレス", "Email (required for verification)": "メールアドレス(認証に必須)", "Email Address": "メールアドレス", "Email Alias Restriction": "メールエイリアスの制限", + "Email bound successfully!": "メールが正常に紐付けられました!", "Email Domain Restriction": "メールドメインの制限", "Email Domain Whitelist": "メールドメインのホワイトリスト", "Email Field": "メールフィールド", "Email Verification": "メール認証", - "Email bound successfully!": "メールが正常に紐付けられました!", "Embeddings": "埋め込み", "Empty value will be saved as {}.": "空の値は {} として保存されます。", "Enable": "有効にする", "Enable 2FA": "2FA を有効にする", "Enable All": "すべて有効にする", + "Enable check-in feature": "チェックイン機能を有効にする", "Enable Data Dashboard": "データダッシュボードを有効にする", + "Enable demo mode with limited functionality": "機能が制限されたデモモードを有効にする", "Enable Discord OAuth": "Discord OAuthを有効にする", "Enable Disk Cache": "ディスクキャッシュを有効にする", + "Enable drawing features": "描画機能を有効にする", + "Enable filtering": "フィルタリングを有効にする", "Enable FunctionCall thoughtSignature Fill": "FunctionCall用のthoughtSignature自動付与を有効化", "Enable GitHub OAuth": "GitHub OAuthを有効にする", "Enable Groups": "グループを有効にする", - "Enable LinuxDO OAuth": "LinuxDO OAuthを有効にする", - "Enable OIDC": "OIDCを有効にする", - "Enable Passkey": "Passkeyを有効にする", - "Enable Performance Monitoring": "パフォーマンス監視を有効にする", - "Enable Request Passthrough": "リクエストパススルーを有効にする", - "Enable SSL/TLS": "SSL/TLSを有効にする", - "Enable SSRF Protection": "SSRF保護を有効にする", - "Enable Telegram OAuth": "Telegram OAuthを有効にする", - "Enable Turnstile": "Turnstileを有効にする", - "Enable Two-factor Authentication or Passkey in your profile to unlock sensitive operations.": "機密性の高い操作を解除するには、プロフィールで二要素認証またはPasskeyを有効にしてください。", - "Enable Waffo": "Waffoを有効化", - "Enable Waffo Pancake": "Waffo Pancake を有効にする", - "Enable WeChat Auth": "WeChat認証を有効にする", - "Enable check-in feature": "チェックイン機能を有効にする", - "Enable demo mode with limited functionality": "機能が制限されたデモモードを有効にする", - "Enable drawing features": "描画機能を有効にする", - "Enable filtering": "フィルタリングを有効にする", "Enable if this is an OpenRouter enterprise account with special response format": "特別な応答形式を持つOpenRouterエンタープライズアカウントである場合に有効にします", "Enable io.net deployments": "io.net デプロイを有効化", "Enable io.net model deployment service in console": "コンソールで io.net モデルデプロイサービスを有効化", + "Enable LinuxDO OAuth": "LinuxDO OAuthを有効にする", + "Enable OIDC": "OIDCを有効にする", "Enable or disable this channel": "このチャネルを有効または無効にする", "Enable or disable this model": "このモデルを有効または無効にする", "Enable or disable top navigation modules globally.": "トップナビゲーションモジュールをグローバルに有効または無効にします。", + "Enable Passkey": "Passkeyを有効にする", + "Enable Performance Monitoring": "パフォーマンス監視を有効にする", "Enable rate limiting": "レート制限を有効にする", + "Enable Request Passthrough": "リクエストパススルーを有効にする", "Enable selected channels": "選択したチャネルを有効にする", "Enable selected models": "選択したモデルを有効にする", + "Enable SSL/TLS": "SSL/TLSを有効にする", + "Enable SSRF Protection": "SSRF保護を有効にする", "Enable streaming mode for the test request.": "テストリクエストのストリーミングモードを有効にします。", + "Enable Telegram OAuth": "Telegram OAuthを有効にする", "Enable test mode for Creem payments": "Creem 決済のテストモードを有効にする", "Enable this key?": "このキーを有効にしますか?", + "Enable Turnstile": "Turnstileを有効にする", + "Enable Two-factor Authentication or Passkey in your profile to unlock sensitive operations.": "機密性の高い操作を解除するには、プロフィールで二要素認証またはPasskeyを有効にしてください。", "Enable unlimited quota for this API key": "このAPIキーの無制限のクォータを有効にする", "Enable violation deduction": "違反料金控除を有効にする", + "Enable Waffo": "Waffoを有効化", + "Enable Waffo Pancake": "Waffo Pancake を有効にする", + "Enable WeChat Auth": "WeChat認証を有効にする", "Enable when proxying workers that fetch images over HTTP.": "HTTP経由で画像をフェッチするワーカーをプロキシする場合に有効にします。", "Enabled": "有効", - "Enabled Status": "有効ステータス", "Enabled all channels with tag: {{tag}}": "タグ「{{tag}}」の全チャネルを有効にしました", + "Enabled Status": "有効ステータス", "Enabling...": "有効化中...", "End": "終了", + "End color": "終了色", "End Error": "終了エラー", "End Reason": "終了理由", "End Time": "終了時間", "Endpoint": "エンドポイント", + "Endpoint config": "エンドポイント設定", "Endpoint Configuration": "エンドポイント設定", "Endpoint Type": "エンドポイントタイプ", - "Endpoint config": "エンドポイント設定", "Endpoint:": "エンドポイント:", "Endpoints": "エンドポイント", "English": "英語", @@ -1203,34 +1308,33 @@ "Ensure the string has a specified prefix": "文字列に指定のプレフィックスがあることを確認", "Ensure the string has a specified suffix": "文字列に指定のサフィックスがあることを確認", "Enter 6-digit code": "6桁のコードを入力", - "Enter API Key": "API キーを入力", - "Enter API Key, format: APIKey|Region": "APIキーを入力してください。形式: APIKey | Region", - "Enter API Key, one per line, format: APIKey|Region": "APIキーを1行に1つずつ入力してください。形式: APIKey | Region", - "Enter Completion price to calculate ratio": "比率を計算するために Completion 価格を入力", - "Enter Creem API key": "Creem API キーを入力", - "Enter HTML code (e.g.,

About us...

) or a URL (e.g., https://example.com) to embed as iframe": "HTMLコード(例:

About us...

)またはURL(例:https://example.com)を入力してiframeとして埋め込みます", - "Enter Input price to calculate ratio": "比率を計算するために Input 価格を入力", - "Enter JSON to override request headers": "リクエストヘッダーを上書きする JSON を入力", - "Enter URL...": "URLを入力...", "Enter a name": "名前を入力", "Enter a new name": "新しい名前を入力してください", "Enter a positive or negative amount to adjust the quota": "クォータを調整するために正または負の値を入力してください", "Enter a valid email or leave blank": "有効なメールアドレスを入力するか空白にしてください", "Enter a value and press Enter": "値を入力してEnterを押してください", - "Enter amount in tokens": "トークンで金額を入力", "Enter amount in {{currency}}": "{{currency}}で金額を入力", + "Enter amount in tokens": "トークンで金額を入力", "Enter announcement content (supports Markdown & HTML)": "アナウンス内容を入力(Markdown & HTML対応)", "Enter announcement content (supports Markdown/HTML)": "アナウンス内容を入力(Markdown/HTML対応)", + "Enter API Key": "API キーを入力", + "Enter API Key, format: APIKey|Region": "APIキーを入力してください。形式: APIKey | Region", + "Enter API Key, one per line, format: APIKey|Region": "APIキーを1行に1つずつ入力してください。形式: APIKey | Region", "Enter application token": "アプリケーショントークンを入力", "Enter authenticator code": "認証コードを入力", "Enter backup code (e.g., CAWD-OQDV)": "バックアップコードを入力(例:CAWD-OQDV)", "Enter banner content to display at the top of the page": "Enter banner content to display at the top of the page", "Enter code": "コードを入力", "Enter code or backup code": "コードまたはバックアップコードを入力", + "Enter Completion price to calculate ratio": "比率を計算するために Completion 価格を入力", + "Enter Creem API key": "Creem API キーを入力", "Enter custom API endpoint URL": "カスタムAPIエンドポイントURLを入力", "Enter custom CSS...": "Enter custom CSS...", "Enter deployment region or JSON mapping:": "デプロイリージョンまたはJSONマッピングを入力:", "Enter display name": "表示名を入力", + "Enter HTML code (e.g.,

About us...

) or a URL (e.g., https://example.com) to embed as iframe": "HTMLコード(例:

About us...

)またはURL(例:https://example.com)を入力してiframeとして埋め込みます", + "Enter Input price to calculate ratio": "比率を計算するために Input 価格を入力", + "Enter JSON to override request headers": "リクエストヘッダーを上書きする JSON を入力", "Enter key, format: AccessKey|SecretAccessKey|Region": "キーを入力してください、形式: AccessKey | SecretAccessKey | Region", "Enter key, one per line, format: AccessKey|SecretAccessKey|Region": "キーを入力してください。1行に1つ、形式: AccessKey | SecretAccessKey | Region", "Enter model name": "モデル名を入力", @@ -1245,23 +1349,24 @@ "Enter password": "パスワードを入力", "Enter password (8-20 characters)": "パスワードを入力 (8~20文字)", "Enter password (min 8 characters)": "パスワードを入力(最小8文字)", - "Enter quota in tokens": "トークン単位でクォータを入力", "Enter quota in {{currency}}": "{{currency}} でクォータを入力", + "Enter quota in tokens": "トークン単位でクォータを入力", "Enter secret key": "シークレットキーを入力", "Enter system prompt (user prompt takes priority)": "システムプロンプトを入力 (ユーザープロンプトが優先されます)", "Enter tag name (optional)": "タグ名を入力 (オプション)", - "Enter the 6-digit Time-based One-Time Password or 8-character backup code from your authenticator app.": "認証アプリからの6桁のワンタイムパスワードまたは8文字のバックアップコードを入力してください。", "Enter the 6-digit code from your authenticator app": "認証アプリからの6桁のコードを入力", - "Enter the Coze agent ID": "CozeエージェントIDを入力", + "Enter the 6-digit Time-based One-Time Password or 8-character backup code from your authenticator app.": "認証アプリからの6桁のワンタイムパスワードまたは8文字のバックアップコードを入力してください。", "Enter the complete URL, supports": "完全なURLを入力、サポート", + "Enter the Coze agent ID": "CozeエージェントIDを入力", "Enter the full URL of your Gotify server": "Gotifyサーバーの完全なURLを入力", "Enter the knowledge base ID": "ナレッジベースIDを入力", "Enter the path before /suno, usually just the domain": "/suno の前のパスを入力してください。通常はドメインのみです", - "Enter the quota amount in tokens": "トークン単位でクォータ額を入力", "Enter the quota amount in {{currency}}": "{{currency}} でクォータ数を入力", + "Enter the quota amount in tokens": "トークン単位でクォータ額を入力", "Enter the verification code": "確認コードを入力", "Enter threshold": "しきい値を入力", "Enter token counts to preview the estimated cost (excluding group multipliers).": "トークン数を入力して、推定コストを表示します(グループ倍率は除く)。", + "Enter URL...": "URLを入力...", "Enter username": "ユーザー名を入力", "Enter verification code": "確認コードを入力", "Enter webhook secret": "Webhook シークレットを入力", @@ -1277,8 +1382,8 @@ "Env (JSON object)": "Env (JSON オブジェクト)", "Environment variables": "環境変数", "Environment variables (JSON)": "環境変数(JSON)", - "Epay Gateway": "Epayゲートウェイ", "Epay endpoint": "Epayエンドポイント", + "Epay Gateway": "Epayゲートウェイ", "Epay merchant ID": "Epay マーチャントID", "Epay secret key": "Epayシークレットキー", "Equals": "等しい", @@ -1295,17 +1400,20 @@ "Example (all channels):": "例(全チャンネル):", "Example (specific channels):": "例(特定チャンネル):", "Example:": "例:", + "example.com blocked-site.com": "example.com blocked-site.com", + "example.com company.com": "example.com company.com", "Excellent": "優秀", "Exchange rate is required": "為替レートは必須です", "Exchange rate must be greater than 0": "為替レートは 0 より大きくする必要があります", "Exhausted": "使い切り", - "Existing Models ({{count}})": "既存のモデル ({{count}})", "Existing account will be reused": "既存のアカウントが再利用されます", + "Existing Models ({{count}})": "既存のモデル ({{count}})", "Exists": "存在", "Expand All": "すべて展開", "Expected a JSON array.": "JSON 配列が必要です。", "Experiment with prompts and models in real time.": "プロンプトとモデルをリアルタイムで実験する。", "Expiration Time": "有効期限", + "expired": "期限切れ", "Expired": "有効期限切れ", "Expired at": "有効期限", "Expired time cannot be earlier than current time": "有効期限は現在時刻より早く設定できません", @@ -1321,28 +1429,24 @@ "Extend failed": "延長に失敗しました", "Extended successfully": "正常に延長されました", "External Device": "外部デバイス", - "External Speed Test": "外部スピードテスト", "External link for users to purchase quota": "ユーザーがクォータを購入するための外部リンク", "External operations": "外部運用", "External operations mode": "外部運用モード", + "External Speed Test": "外部スピードテスト", "Extra": "追加", "Extra Notes (Optional)": "追加のメモ (オプション)", - "FAQ": "FAQ", - "FAQ added. Click \"Save Settings\" to apply.": "FAQ が追加されました。「設定を保存」をクリックして適用してください。", - "FAQ deleted. Click \"Save Settings\" to apply.": "FAQ が削除されました。「設定を保存」をクリックして適用してください。", - "FAQ saved successfully": "FAQ が正常に保存されました", - "FAQ updated. Click \"Save Settings\" to apply.": "FAQ が更新されました。「設定を保存」をクリックして適用してください。", "Fail Reason": "失敗理由", "Fail Reason Details": "失敗理由の詳細", "Failed": "失敗", + "Failed to {{action}} user": "ユーザーの{{action}}に失敗しました", "Failed to adjust quota": "クォータの調整に失敗しました", "Failed to apply overwrite.": "オーバーライトの適用に失敗しました。", "Failed to bind email": "メールのバインドに失敗しました", "Failed to change password": "パスワードの変更に失敗しました", "Failed to check for updates": "更新の確認に失敗しました", "Failed to clean logs": "ログのクリーンアップに失敗しました", - "Failed to complete Passkey login": "Passkeyログインの完了に失敗しました", "Failed to complete order": "注文の完了に失敗しました", + "Failed to complete Passkey login": "Passkeyログインの完了に失敗しました", "Failed to contact GitHub releases API": "GitHub Releases API に接続できませんでした", "Failed to copy": "コピーに失敗しました", "Failed to copy channel": "チャネルのコピーに失敗しました", @@ -1355,9 +1459,10 @@ "Failed to create provider": "プロバイダーの作成に失敗しました", "Failed to create redemption code": "引き換えコードの作成に失敗しました", "Failed to create user": "ユーザーの作成に失敗しました", + "Failed to delete {{count}} model(s)": "{{count}} 個のモデルの削除に失敗しました", + "Failed to delete account": "アカウントの削除に失敗しました", "Failed to delete API key": "APIキーの削除に失敗しました", "Failed to delete API keys": "APIキーの削除に失敗しました", - "Failed to delete account": "アカウントの削除に失敗しました", "Failed to delete channel": "チャンネルの削除に失敗しました", "Failed to delete disabled channels": "無効化されたチャネルの削除に失敗しました", "Failed to delete invalid redemption codes": "無効な引き換えコードの削除に失敗しました", @@ -1366,22 +1471,21 @@ "Failed to delete redemption code": "引き換えコードの削除に失敗しました", "Failed to delete user": "ユーザーの削除に失敗しました", "Failed to delete vendor": "ベンダーの削除に失敗しました", - "Failed to delete {{count}} model(s)": "{{count}} 個のモデルの削除に失敗しました", + "Failed to disable {{count}} model(s)": "{{count}} 個のモデルの無効化に失敗しました", "Failed to disable 2FA": "2FAの無効化に失敗しました", "Failed to disable channels": "チャネルの無効化に失敗しました", "Failed to disable model": "モデルの無効化に失敗しました", "Failed to disable tag channels": "タグチャネルの無効化に失敗しました", - "Failed to disable {{count}} model(s)": "{{count}} 個のモデルの無効化に失敗しました", "Failed to discover OIDC endpoints": "OIDCエンドポイントの検出に失敗しました", + "Failed to enable {{count}} model(s)": "{{count}} 個のモデルの有効化に失敗しました", "Failed to enable 2FA": "2FA の有効化に失敗しました", "Failed to enable channels": "チャンネルの有効化に失敗しました", "Failed to enable model": "モデルの有効化に失敗しました", "Failed to enable tag channels": "タグチャンネルの有効化に失敗しました", - "Failed to enable {{count}} model(s)": "{{count}} 個のモデルの有効化に失敗しました", - "Failed to fetch OIDC configuration. Please check the URL and network status": "OIDC構成の取得に失敗しました。URLとネットワーク状態を確認してください", "Failed to fetch checkin status": "チェックインステータスの取得に失敗しました", "Failed to fetch deployment details": "デプロイメント詳細の取得に失敗しました", "Failed to fetch models": "モデルの取得に失敗しました", + "Failed to fetch OIDC configuration. Please check the URL and network status": "OIDC構成の取得に失敗しました。URLとネットワーク状態を確認してください", "Failed to fetch upstream prices": "上流価格の取得に失敗しました", "Failed to fetch upstream ratios": "アップストリーム比率の取得に失敗しました", "Failed to fetch usage": "利用状況の取得に失敗しました", @@ -1392,38 +1496,39 @@ "Failed to initialize system": "システムの初期化に失敗しました", "Failed to load": "読み込みに失敗しました", "Failed to load API keys": "APIキーの読み込みに失敗しました", - "Failed to load Passkey status": "Passkeyのステータスの読み込みに失敗しました", "Failed to load billing history": "請求履歴の読み込みに失敗しました", "Failed to load home page content": "ホームページの内容の読み込みに失敗しました", "Failed to load image": "画像の読み込みに失敗しました", "Failed to load logs": "ログの読み込みに失敗しました", + "Failed to load Passkey status": "Passkeyのステータスの読み込みに失敗しました", "Failed to load profile": "プロファイルの読み込みに失敗しました", "Failed to load redemption codes": "引き換えコードの読み込みに失敗しました", "Failed to load setup data": "セットアップデータの読み込みに失敗しました", "Failed to load setup status": "セットアップ状態の読み込みに失敗しました", "Failed to load tag data": "タグデータの読み込みに失敗しました", "Failed to load users": "ユーザーの読み込みに失敗しました", - "Failed to parse JSON file: {{name}}": "JSONファイルの解析に失敗しました: __ PH_0 __", "Failed to parse group items": "グループアイテムの解析に失敗しました", + "Failed to parse JSON file: {{name}}": "JSONファイルの解析に失敗しました: __ PH_0 __", "Failed to query balance": "残高の取得に失敗しました", "Failed to refresh cache stats": "キャッシュ統計の更新に失敗", "Failed to regenerate backup codes": "バックアップコードの再生成に失敗しました", "Failed to register Passkey": "Passkeyの登録に失敗しました", "Failed to remove Passkey": "パスキーの削除に失敗しました", "Failed to reset 2FA": "2FAのリセットに失敗しました", - "Failed to reset Passkey": "パスキーのリセットに失敗しました", "Failed to reset model ratios": "モデル比率のリセットに失敗しました", + "Failed to reset Passkey": "パスキーのリセットに失敗しました", "Failed to save": "保存に失敗", + "Failed to save announcements": "お知らせの保存に失敗しました", "Failed to save API info": "API情報の保存に失敗しました", "Failed to save FAQ": "FAQの保存に失敗しました", "Failed to save Uptime Kuma groups": "Uptime Kumaグループの保存に失敗しました", - "Failed to save announcements": "お知らせの保存に失敗しました", "Failed to search API keys": "APIキーの検索に失敗しました", "Failed to search redemption codes": "引き換えコードの検索に失敗しました", "Failed to search users": "ユーザーの検索に失敗しました", "Failed to send verification code": "認証コードの送信に失敗しました", "Failed to set tag": "タグの設定に失敗しました", "Failed to setup 2FA": "2FA の設定に失敗しました", + "Failed to start {{provider}} login": "{{provider}} ログインの開始に失敗しました", "Failed to start Discord login": "Discordログインの開始に失敗しました", "Failed to start GitHub login": "GitHubログインの開始に失敗しました", "Failed to start LinuxDO login": "LinuxDOログインの開始に失敗しました", @@ -1431,14 +1536,13 @@ "Failed to start Passkey login": "Passkeyログインの開始に失敗しました", "Failed to start Passkey registration": "パスキー登録の開始に失敗しました", "Failed to start testing all channels": "すべてのチャネルのテストを開始できませんでした", - "Failed to start {{provider}} login": "{{provider}} ログインの開始に失敗しました", "Failed to sync prices": "価格の同期に失敗しました", "Failed to sync ratios": "比率の同期に失敗しました", "Failed to test all channels": "すべてのチャネルのテストに失敗しました", "Failed to test channel": "チャネルのテストに失敗しました", + "Failed to update all balances": "すべての残高を更新できませんでした", "Failed to update API key": "APIキーの更新に失敗しました", "Failed to update API key status": "APIキー状態の更新に失敗しました", - "Failed to update all balances": "すべての残高を更新できませんでした", "Failed to update balance": "残高を更新できませんでした", "Failed to update channel": "チャネルの更新に失敗しました", "Failed to update models": "モデルの更新に失敗しました", @@ -1450,43 +1554,47 @@ "Failed to update settings": "設定を更新できませんでした", "Failed to update tag": "タグの更新に失敗しました", "Failed to update user": "ユーザーの更新に失敗しました", - "Failed to {{action}} user": "ユーザーの{{action}}に失敗しました", "Failure keywords": "失敗キーワード", "Fair": "公平", + "FAQ": "FAQ", + "FAQ added. Click \"Save Settings\" to apply.": "FAQ が追加されました。「設定を保存」をクリックして適用してください。", + "FAQ deleted. Click \"Save Settings\" to apply.": "FAQ が削除されました。「設定を保存」をクリックして適用してください。", + "FAQ saved successfully": "FAQ が正常に保存されました", + "FAQ updated. Click \"Save Settings\" to apply.": "FAQ が更新されました。「設定を保存」をクリックして適用してください。", "Fast": "Fast", "FastGPT": "FastGPT", "Feature in development": "開発中の機能です", "Fee": "手数料", "Fee Amount": "料金額", - "Fetch Models": "モデルを取得", "Fetch available models for:": "利用可能なモデルを取得:", "Fetch from Upstream": "Upstreamからフェッチ", + "Fetch Models": "モデルを取得", "Fetched {{count}} model(s) from upstream": "上流から {{count}} 個のモデルを取得しました", "Fetched {{count}} models": "{{count}} 個のモデルを取得しました", "Fetching prefill groups...": "プリフィルグループをフェッチ中...", "Fetching upstream prices...": "上流価格を取得中...", "Fetching upstream ratios...": "アップストリーム比率をフェッチ中...", + "field": "フィールド", "Field Mapping": "フィールドマッピング", - "Field Path": "フィールドパス", "Field passthrough controls": "フィールドパススルーコントロール", + "Field Path": "フィールドパス", "File Search": "ファイル検索", "Files to Retain": "保持ファイル数", "Fill All Models": "すべてのモデルを埋める", "Fill Codex CLI / Claude CLI Templates": "Codex CLI / Claude CLI テンプレートを入力", - "Fill Related Models": "関連モデルを入力", - "Fill Template": "テンプレートを入力", - "Fill Templates": "テンプレートを入力", "Fill example (all channels)": "例を入力(全チャンネル)", "Fill example (specific channels)": "例を入力(特定チャンネル)", "Fill in the following info to create a new subscription plan": "以下の情報を入力して新しいサブスクリプションプランを作成", + "Fill Related Models": "関連モデルを入力", + "Fill Template": "テンプレートを入力", + "Fill Templates": "テンプレートを入力", "Fill thoughtSignature only for Gemini/Vertex channels using the OpenAI format": "OpenAI形式を利用するGemini/VertexチャネルにのみthoughtSignatureを付与します", "Filled {{count}} model(s)": "{{count}} 個のモデルを補完しました", "Filled {{count}} related model(s)": "{{count}} 個の関連モデルを補完しました", "Filter": "フィルター", - "Filter Dashboard Models": "ダッシュボードモデルをフィルタリング", - "Filter by Midjourney task ID": "MidjourneyタスクIDでフィルター", "Filter by channel ID": "チャンネルIDでフィルター", "Filter by group": "グループでフィルター", + "Filter by Midjourney task ID": "MidjourneyタスクIDでフィルター", "Filter by model name...": "モデル名でフィルター...", "Filter by model...": "モデルでフィルタリング...", "Filter by name or ID...": "名前またはIDでフィルター...", @@ -1499,6 +1607,7 @@ "Filter by token name": "トークン名でフィルター", "Filter by username": "ユーザー名でフィルター", "Filter by username, name or email...": "ユーザー名、名前またはメールアドレスでフィルター...", + "Filter Dashboard Models": "ダッシュボードモデルをフィルタリング", "Filter models by provider, group, type, endpoint, and tags.": "プロバイダー、グループ、タイプ、エンドポイント、タグでモデルを絞り込みます。", "Filter models by type, endpoint, vendor, group and tags": "タイプ、エンドポイント、ベンダー、グループ、タグでモデルをフィルタリング", "Filter models...": "モデルをフィルタリング...", @@ -1522,24 +1631,38 @@ "Font color for the banner text. Supports any CSS color value. Leave empty for default.": "Font color for the banner text. Supports any CSS color value. Leave empty for default.", "Footer": "フッター", "Footer text displayed at the bottom of pages": "ページ下部に表示されるフッターテキスト", + "footer.columns.about.links.aboutProject": "プロジェクトについて", + "footer.columns.about.links.contact": "お問い合わせ", + "footer.columns.about.links.features": "機能", + "footer.columns.about.title": "私たちについて", + "footer.columns.docs.links.apiDocs": "APIドキュメント", + "footer.columns.docs.links.installation": "インストールガイド", + "footer.columns.docs.links.quickStart": "クイックスタート", + "footer.columns.docs.title": "ドキュメント", + "footer.columns.related.links.midjourney": "Midjourney-Proxy", + "footer.columns.related.links.neko": "neko-api-key-tool", + "footer.columns.related.links.oneApi": "1つのAPI", + "footer.columns.related.title": "関連プロジェクト", + "footer.defaultCopyright": "すべての権利を留保します。", + "footer.new\u0061pi.projectAttributionSuffix": "すべての権利を留保します。プロジェクトコントリビューターにより設計・開発されています。", "For channels added after May 10, 2025, no need to remove \".\" from model names during deployment": "2025 年 5 月 10 日以降に追加されたチャネルの場合、デプロイ時にモデル名から「.」を削除する必要はありません", "For private deployments, format: https://fastgpt.run/api/openapi": "プライベートデプロイメントの場合、形式: https://fastgpt.run/api/openapi", "Force AUTH LOGIN": "AUTH LOGINを強制", "Force Format": "強制フォーマット", - "Force SMTP authentication using AUTH LOGIN method": "AUTH LOGIN方式を使用してSMTP認証を強制する", "Force format response to OpenAI standard (OpenAI channel only)": "応答をOpenAI標準に強制フォーマット (OpenAIチャンネルのみ)", + "Force SMTP authentication using AUTH LOGIN method": "AUTH LOGIN方式を使用してSMTP認証を強制する", "Forgot password": "パスワードを忘れた場合", "Forgot password?": "パスワードをお忘れですか?", "Form reset to saved values": "フォームが保存された値にリセットされました", "Format": "形式", "Format JSON": "JSONをフォーマット", "Format:": "形式:", - "Format: APIKey-AppId, e.g., fastgpt-0sp2gtvfdgyi4k30jwlgwf1i-64f335d84283f05518e9e041": "形式: APIKey-AppId、例: fastgpt-0sp2gtvfdgyi4k30jwlgwf1i-64f335d84283f05518e9e041", - "Format: APIKey|SecretKey": "形式: APIKey|SecretKey", - "Format: APPID|APISecret|APIKey": "形式: APPID|APISecret|APIKey", "Format: Access Key ID|Secret Access Key": "形式: Access Key ID|Secret Access Key", "Format: AccessKey|SecretKey (or just ApiKey if upstream is New API)": "形式: AccessKey|SecretKey (upstream が New API の場合、ApiKey のみ)", "Format: Ak|Sk|Region": "形式: Ak|Sk|Region", + "Format: APIKey-AppId, e.g., fastgpt-0sp2gtvfdgyi4k30jwlgwf1i-64f335d84283f05518e9e041": "形式: APIKey-AppId、例: fastgpt-0sp2gtvfdgyi4k30jwlgwf1i-64f335d84283f05518e9e041", + "Format: APIKey|SecretKey": "形式: APIKey|SecretKey", + "Format: APPID|APISecret|APIKey": "形式: APPID|APISecret|APIKey", "Format: AppId|SecretId|SecretKey": "形式: AppId|SecretId|SecretKey", "Forward requests directly to upstream providers without any post-processing.": "ポストプロセスなしで、リクエストをアップストリームプロバイダーに直接転送します。", "Free: {{free}} / Total: {{total}}": "空き容量: {{free}} / 合計: {{total}}", @@ -1555,45 +1678,49 @@ "GC Count": "GC 回数", "GC executed": "GC 実行完了", "GC execution failed": "GC 実行失敗", - "GPU count": "GPU 数", "Gemini": "Gemini", "Gemini Image 4K": "Gemini Image 4K", "Gemini will continue to auto-detect thinking mode even with the adapter disabled. Enable this only when you need finer control over pricing and budgeting.": "アダプターが無効になっていても、Geminiは思考モードを自動検出します。価格設定と予算編成をより細かく制御する必要がある場合にのみ、これを有効にしてください。", "General": "一般", "General Settings": "一般設定", - "Generate Lyrics": "歌詞を生成", - "Generate Music": "音楽を生成", - "Generate New Codes": "新しいコードを生成", "Generate a Codex OAuth credential and paste it into the channel key field.": "Codex OAuth認証情報を生成し、チャンネルキー欄に貼り付けてください。", "Generate and manage your API access token": "API アクセス トークンを生成および管理", "Generate credential": "認証情報を生成", + "Generate Lyrics": "歌詞を生成", + "Generate Music": "音楽を生成", "Generate new backup codes for account recovery": "アカウント復旧用の新しいバックアップコードを生成", + "Generate New Codes": "新しいコードを生成", "Generated image": "生成された画像", "Generating new codes will invalidate all existing backup codes.": "新しいコードを生成すると、既存のすべてのバックアップコードが無効になります。", "Generating...": "生成中...", "Generic cache": "汎用キャッシュ", - "Get Started": "開始する", "Get notified when balance falls below this value": "残高がこの値を下回ったときに通知を受け取る", + "Get Started": "開始する", "GitHub": "GitHub", "Give the group a recognizable name and optional description.": "グループに認識しやすい名前とオプションの説明を付けます。", "Give this group a recognizable name.": "このグループに認識しやすい名前を付けます。", + "Global configuration and administrative tools.": "グローバル設定と管理ツール。", "Global Coverage": "グローバルカバレッジ", "Global Model Configuration": "グローバルモデル設定", - "Global configuration and administrative tools.": "グローバル設定と管理ツール。", "Go Back": "戻る", "Go back and edit": "戻って編集", "Go to Dashboard": "ダッシュボードへ移動", - "Go to Settings": "設定へ移動", "Go to first page": "最初のページへ移動", "Go to io.net API Keys": "io.net API キーへ移動", "Go to last page": "最後のページへ移動", "Go to next page": "次のページへ移動", "Go to previous page": "前のページへ移動", "Go to settings": "設定へ", + "Go to Settings": "設定へ移動", "Good": "良好", "Gotify Application Token": "Gotify アプリケーショントークン", "Gotify Documentation": "Gotify ドキュメント", "Gotify Server URL": "Gotify サーバー URL", + "gpt-3.5-turbo": "gpt-3.5-turbo", + "gpt-3.5-turbo-0125": "gpt-3.5-turbo-0125", + "gpt-4": "gpt-4", + "gpt-4, claude-3-opus, etc.": "gpt-4、claude-3-opus など", + "GPU count": "GPU 数", "Gradient": "Gradient", "Greater Than": "より大きい", "Greater Than or Equal": "以上", @@ -1601,8 +1728,6 @@ "Grok Settings": "Grok 設定", "Group": "グループ", "Group & Quota": "グループとクォータ", - "Group Name": "グループ名", - "Group Ratio": "グループ倍率", "Group added. Click \"Save Settings\" to apply.": "グループが追加されました。「Save Settings」をクリックして適用してください。", "Group channels by tag for batch operations": "バッチ操作のためにタグでチャネルをグループ化", "Group config overrides global limits, shares the same period": "グループ設定はグローバル制限を上書きし、同じ期間を共有します", @@ -1611,8 +1736,11 @@ "Group identifier": "グループ識別子", "Group is required": "グループは必須です", "Group name": "グループ名", + "Group Name": "グループ名", "Group name cannot be changed when editing.": "編集時はグループ名を変更できません。", "Group prices cannot be expanded because this expression is not a standard tiered pricing expression.": "この式は標準の段階制料金式ではないため、グループ別価格を展開できません。", + "group ratio": "グループ倍率", + "Group Ratio": "グループ倍率", "Group ratios": "グループ比率", "Group updated. Click \"Save Settings\" to apply.": "グループが更新されました。「Save Settings」をクリックして適用してください。", "Group-based rate limits": "グループベースのレート制限", @@ -1623,6 +1751,7 @@ "Groups that users can select when creating API keys.": "ユーザーが API キー作成時に選択できるグループ。", "Guardrails": "ガードレール", "Guest": "ゲスト", + "h": "h", "Haiku Model": "Haiku モデル", "Hang tight while we finish connecting your account.": "アカウントの接続を完了するまでお待ちください。", "Hang tight while we securely link this account to your profile.": "このアカウントをプロファイルに安全にリンクするまでお待ちください。", @@ -1634,12 +1763,12 @@ "Have a Code?": "コードをお持ちですか?", "Header": "ヘッダー", "Header Name": "ヘッダー名", + "Header navigation": "ヘッダーナビゲーション", "Header Override": "ヘッダー上書き", "Header Passthrough (X-Request-Id)": "ヘッダーパススルー(X-Request-Id)", "Header Value (supports string or JSON mapping)": "ヘッダー値(文字列またはJSONマッピング対応)", - "Header navigation": "ヘッダーナビゲーション", - "Hidden Channels": "非表示チャネル", "Hidden — verify to reveal": "非表示 — 確認して表示", + "Hidden Channels": "非表示チャネル", "Hide": "非表示にする", "Hide API key": "APIキーを非表示", "High Performance": "高パフォーマンス", @@ -1655,16 +1784,17 @@ "Higher priority channels are selected first": "優先度の高いチャネルが先に選択されます", "Historical Usage": "履歴使用状況", "History of Midjourney-style image tasks.": "Midjourneyスタイルの画像タスクの履歴。", - "Hit Rate": "ヒット率", "Hit criteria: If cached tokens exist in usage, it counts as a hit.": "ヒット判定:usage に cached tokens が存在すればヒットとみなします。", + "Hit Rate": "ヒット率", "Hit tier": "一致したティア", "Home": "ホーム", "Home Page Content": "ホームコンテンツ", "Hostname or IP of your SMTP provider": "SMTP プロバイダーのホスト名または IP", "Hour": "時間", - "How It Works": "仕組み", + "hours": "時間", "How client credentials are sent to the token endpoint": "クライアント認証情報がトークンエンドポイントに送信される方法", "How frequently the system tests all channels": "システムがすべてのチャネルをテストする頻度", + "How It Works": "仕組み", "How model mapping works": "モデルマッピングの仕組み", "How much to charge for each US dollar of balance (Epay)": "残高の 1 米ドルあたりに請求する金額 (Epay)", "How this model name should match requests": "このモデル名がリクエストとどのように一致すべきか", @@ -1672,19 +1802,35 @@ "How to reset my quota?": "クォータをリセットするには?", "How to select keys: random or sequential polling": "キーの選択方法: ランダムまたは順次ポーリング", "How will you use the platform?": "プラットフォームをどのように使用しますか?", + "https://api.day.app/yourkey/{{title}}/{{content}}": "https://api.day.app/yourkey/{{title}}/{{content}}", + "https://api.example.com": "https://api.example.com", + "https://ark.ap-southeast.bytepluses.com": "https://ark.ap-southeast.bytepluses.com", + "https://ark.cn-beijing.volces.com": "https://ark.cn-beijing.volces.com", + "https://cloud.siliconflow.cn/i/hij0YNTZ": "https://cloud.siliconflow.cn/i/hij0YNTZ", + "https://docs.example.com": "https://docs.example.com", + "https://example.com": "https://example.com", + "https://example.com/logo.png": "https://example.com/logo.png", + "https://example.com/qr-code.png": "https://example.com/qr-code.png", + "https://example.com/topup": "https://example.com/topup", + "https://example.com/webhook": "https://example.com/webhook", + "https://gateway.example.com": "https://gateway.example.com", + "https://github.com/QuantumNous/new-api": "https://github.com/QuantumNous/new-api", + "https://gotify.example.com": "https://gotify.example.com", + "https://pay.example.com": "https://pay.example.com", + "https://provider.com/.well-known/openid-configuration": "https://provider.com/.well-known/openid-configuration", + "https://status.example.com": "https://status.example.com", + "https://wechat-server.example.com": "https://wechat-server.example.com", + "https://worker.example.workers.dev": "https://worker.example.workers.dev", + "https://your-server.example.com": "https://your-server.example.com", + "https://yourdomain.com": "https://yourdomain.com", "Human-readable name shown to users during Passkey prompts.": "パスキーのプロンプト中にユーザーに表示される、人間が読める名前。", "I confirm enabling high-risk retry": "高リスクリトライの有効化を確認します", "I have read and agree to the": "私は以下を読み、同意します", "I understand that disabling 2FA will remove all protection and backup codes": "2FA を無効にすると、すべての保護とバックアップコードが削除されることを理解しています", - "ID": "ID", - "IP": "IP", - "IP Address": "IPアドレス", - "IP Filter Mode": "IP フィルターモード", - "IP Restriction": "IP制限", - "IP Whitelist (supports CIDR)": "IP ホワイトリスト(CIDR対応)", "Icon": "アイコン", "Icon file must be 100 KB or smaller": "アイコンファイルは100KB以下である必要があります", "Icon identifier (e.g. github, gitlab)": "アイコン識別子 (例: github, gitlab)", + "ID": "ID", "If an upstream error contains any of these keywords (case insensitive), the channel will be disabled automatically.": "アップストリームエラーにこれらのキーワードのいずれかが含まれている場合 (大文字と小文字を区別しない)、チャネルは自動的に無効になります。", "If authorization succeeds, the generated JSON will be inserted into the key field. You still need to save the channel to persist it.": "認証が成功すると、生成されたJSONがキー欄に挿入されます。保存するにはチャンネルを保存してください。", "If connecting to upstream One API or New API relay projects, use OpenAI type instead unless you know what you are doing": "上流の One API または New API リレープロジェクトに接続する場合、知っている場合を除き OpenAI タイプを使用してください", @@ -1693,15 +1839,19 @@ "Image": "画像", "Image Generation": "画像生成", "Image In": "画像入力", + "Image input": "画像入力", "Image Out": "画像出力", "Image Preview": "画像プレビュー", - "Image Tokens": "画像トークン", - "Image input": "画像入力", "Image ratio": "画像倍率", "Image to Video": "画像から動画", + "Image Tokens": "画像トークン", "Import to CC Switch": "CC Switch にインポート", + "Important Alert": "重要アラート", + "Important Notice": "重要なお知らせ", "In Progress": "処理中", "In:": "入力:", + "Incident": "障害", + "Incident Critical": "重大インシデント", "Include Group": "グループを含む", "Include Model": "モデルを含む", "Include Rule Name": "ルール名を含む", @@ -1714,10 +1864,10 @@ "Initializing…": "初期化中…", "Inpaint": "インペイント", "Input": "入力", - "Input Tokens": "入力トークン", "Input mode": "入力モード", "Input price": "入力価格", "Input tokens": "入力トークン", + "Input Tokens": "入力トークン", "Inspect user prompts": "ユーザープロンプトの検査", "Instance": "インスタンス", "Integrations": "統合", @@ -1726,19 +1876,19 @@ "Inter-group ratio overrides": "グループ間比率上書き", "Interface Language": "インターフェース言語", "Internal Notes": "内部メモ", - "Internal Server Error!": "内部サーバーエラー!", "Internal notes (not shown to users)": ":内部メモ(ユーザーには表示されません)", + "Internal Server Error!": "内部サーバーエラー!", + "Invalid chat link. Please contact the administrator.": "無効なチャットリンクです。管理者に連絡してください。", + "Invalid chat link. Please contact your administrator.": "無効なチャットリンクです。管理者に連絡してください。", + "Invalid code": "無効なコード", "Invalid JSON": "JSON が無効です", "Invalid JSON format": "無効な JSON 形式", "Invalid JSON format or values out of allowed range": "無効な JSON 形式または値が許可された範囲外です", "Invalid JSON in parameter override template": "パラメータオーバーライドテンプレートのJSONが無効です", "Invalid JSON string.": "無効な JSON 文字列です。", + "Invalid model mapping format": "無効なモデルマッピング形式", "Invalid Passkey registration response": "無効なパスキー登録応答", "Invalid Passkey response": "無効なパスキー応答", - "Invalid chat link. Please contact the administrator.": "無効なチャットリンクです。管理者に連絡してください。", - "Invalid chat link. Please contact your administrator.": "無効なチャットリンクです。管理者に連絡してください。", - "Invalid code": "無効なコード", - "Invalid model mapping format": "無効なモデルマッピング形式", "Invalid payment redirect URL": "無効な支払いリダイレクトURL", "Invalid reset link, please request a new password reset": "無効なリセットリンクです。新しいパスワードリセットをリクエストしてください", "Invalid reset link, please request a new password reset.": "無効なリセットリンクです。新しいパスワードリセットをリクエストしてください。", @@ -1751,31 +1901,41 @@ "Invitation Quota": "招待クォータ", "Invite Info": "招待情報", "Invited": "招待済み", - "Invited Users": "招待されたユーザー", "Invited by user ID": "ユーザーIDによる招待", + "Invited Users": "招待されたユーザー", "Invitee Reward": "招待された側の報酬", "Inviter": "招待者", "Inviter Reward": "招待した側の報酬", "Invites": "招待", + "io.net API Key": "io.net API キー", + "io.net Deployments": "io.net デプロイ", + "IP": "IP", + "IP Address": "IPアドレス", + "IP Filter Mode": "IP フィルターモード", + "IP Restriction": "IP制限", + "IP Whitelist (supports CIDR)": "IP ホワイトリスト(CIDR対応)", + "is an open-source AI API gateway for self-hosted deployments. Connect multiple upstream services, manage models, keys, quotas, logs, and routing policies in one place.": "はセルフホスト運用向けのオープンソースAI APIゲートウェイです。複数のアップストリームサービスを接続し、モデル、キー、クォータ、ログ、ルーティングポリシーを一元管理できます。", + "is less than the configured maximum cache size": "設定された最大キャッシュサイズより小さい", + "is the default price; ": "はデフォルト価格です; ", "It seems like the page you're looking for": "お探しのページは", "Items": "項目", + "Japanese": "日本語", + "Jimeng": "Jimeng", + "Jina": "Jina", "JSON": "JSON", - "JSON Editor": "JSON編集", - "JSON Mode": "JSONモード", - "JSON Text": "JSONテキスト", "JSON array of group identifiers. When enabled below, new tokens rotate through this list.": "グループ識別子のJSON配列。以下で有効にすると、新しいトークンはこのリストをローテーションします。", + "JSON Editor": "JSON編集", "JSON format error": "JSONフォーマットエラー", "JSON format supports service account JSON files": "JSON形式はサービスアカウントJSONファイルをサポートします", "JSON map of group → description exposed when users create API keys.": "ユーザーがAPIキーを作成する際に公開される、グループ → 説明のJSONマップ。", "JSON map of group → ratio applied when the user selects the group explicitly.": "ユーザーがグループを明示的に選択したときに適用される、グループ → 比率のJSONマップ。", - "JSON map of model → USD cost per request. Takes precedence over ratio based billing.": "モデル → リクエストあたりのUSDコストのJSONマップ。比率ベースの請求よりも優先されます。", "JSON map of model → multiplier applied to quota billing.": "モデル → クォータ請求に適用される乗数のJSONマップ。", + "JSON map of model → USD cost per request. Takes precedence over ratio based billing.": "モデル → リクエストあたりのUSDコストのJSONマップ。比率ベースの請求よりも優先されます。", + "JSON Mode": "JSONモード", "JSON must be an object": "JSON はオブジェクトである必要があります", "JSON object:": "JSONオブジェクト:", + "JSON Text": "JSONテキスト", "JSON-based access control rules. Leave empty to allow all users.": "JSONベースのアクセス制御ルール。すべてのユーザーを許可する場合は空のままにしてください。", - "Japanese": "日本語", - "Jimeng": "Jimeng", - "Jina": "Jina", "Just now": "たった今", "JustSong": "JustSong", "K": "K", @@ -1792,18 +1952,17 @@ "Keys, OAuth credentials, and multi-key update behavior.": "キー、OAuth 認証情報、マルチキー更新動作を管理します。", "Kling": "Kling", "Knowledge Base ID *": "ナレッジベースID *", - "LLM prompt helper": "LLMプロンプトヘルパー", "Landing page with system overview.": "システム概要付きランディングページ。", - "Language Preferences": "言語設定", "Language preference saved": "言語設定を保存しました", + "Language Preferences": "言語設定", "Language preferences sync across your signed-in devices and affect API error messages.": "言語設定はログイン中のすべてのデバイスで同期され、API のエラーメッセージ言語にも反映されます。", + "Last check time": "最終チェック時刻", + "Last detected addable models": "最後に検出された追加可能モデル", "Last Login": "最終ログイン", "Last Seen": "最終確認", "Last Tested": "最終テスト日時", - "Last Used": "最終使用", - "Last check time": "最終チェック時刻", - "Last detected addable models": "最後に検出された追加可能モデル", "Last updated:": "最終更新日:", + "Last Used": "最終使用", "Last used:": "最終使用日:", "Layout": "レイアウト", "Learn more": "詳細はこちら", @@ -1823,15 +1982,15 @@ "Leave empty to use system temp directory": "空欄でシステムの一時ディレクトリを使用", "Leave empty to use username": "ユーザー名を使用するには空のままにしてください", "Legacy Format (JSON Object)": "旧形式(JSONオブジェクト)", - "Legacy Format Template": "旧フォーマットテンプレート", "Legacy format must be a JSON object": "旧形式はJSONオブジェクトである必要があります", + "Legacy Format Template": "旧フォーマットテンプレート", "Less": "少ない", "Less Than": "より小さい", "Less Than or Equal": "以下", "Light": "ライト", "Lightning Fast": "超高速", - "Limit Reached": "上限に達しました", "Limit period": "制限期間", + "Limit Reached": "上限に達しました", "Limit which models can be used with this key": "このキーで使用できるモデルを制限する", "Limited": "制限", "LingYiWanWu": "LingYiWanWu", @@ -1842,6 +2001,7 @@ "List of models supported by this channel. Use comma to separate multiple models.": "このチャネルがサポートするモデルのリストです。複数のモデルはカンマで区切ってください。", "List of origins (one per line) allowed for Passkey registration and authentication.": "Passkeyの登録と認証が許可されているオリジン(1行に1つ)のリスト。", "List view": "リスト表示", + "LLM prompt helper": "LLMプロンプトヘルパー", "Load Balancing": "ロードバランシング", "Load template...": "テンプレートをロード...", "Loader": "ローダー", @@ -1858,41 +2018,44 @@ "Local models": "ローカルモデル", "Locations": "場所", "Locked": "ロック済み", + "log": "ログ", "Log Details": "ログの詳細", "Log Directory": "ログディレクトリ", "Log File Count": "ログファイル数", + "Log files older than {{value}} days will be deleted.": "{{value}}日前より古いログファイルが削除されます。", "Log IP address for usage and error logs": "使用状況およびエラーログのためにIPアドレスを記録する", "Log Maintenance": "ログのメンテナンス", "Log Type": "ログタイプ", - "Log files older than {{value}} days will be deleted.": "{{value}}日前より古いログファイルが削除されます。", "Logic": "ロジック", "Login failed": "ログインに失敗しました", "Logo": "ロゴ", "Logo URL": "ロゴURL", "Logs": "ログ", + "m": "m", "Maintain a list of common questions for the dashboard help panel": "ダッシュボードのヘルプパネル用のよくある質問のリストを維持する", "Maintenance": "メンテナンス", + "Maintenance Stripe": "メンテナンスストライプ", "Make it easier for teammates to pick the right group.": "チームメイトが適切なグループを選択しやすくする。", "Manage": "管理", - "Manage API channels and provider configurations": "APIチャネルとプロバイダー構成を管理する", - "Manage Bindings": "バインド管理", - "Manage Keys": "キーの管理", - "Manage Ollama Models": "オラマモデルの管理", - "Manage Subscriptions": "サブスクリプションの管理", - "Manage Vendors": "ベンダーの管理", "Manage account bindings for this user": "このユーザーのアカウントバインドを管理", "Manage and configure": "管理と設定", + "Manage API channels and provider configurations": "APIチャネルとプロバイダー構成を管理する", + "Manage Bindings": "バインド管理", "Manage catalog visibility and pricing.": "カタログの表示と価格設定を管理。", "Manage custom OAuth providers for user authentication": "ユーザー認証用のカスタムOAuthプロバイダーの管理", + "Manage Keys": "キーの管理", "Manage local models for:": "次のローカルモデルを管理します。", "Manage model deployments": "モデルデプロイを管理する", "Manage model metadata and configuration": "モデルのメタデータと設定を管理する", "Manage multi-key status and configuration for this channel": "このチャネルのマルチキーのステータスと構成を管理する", + "Manage Ollama Models": "オラマモデルの管理", "Manage redemption codes for quota top-up": "クォータのチャージ用の引き換えコードを管理する", "Manage server log files. Log files accumulate over time; regular cleanup is recommended to free disk space.": "サーバーログファイルを管理します。ログファイルは時間とともに蓄積されるため、定期的なクリーンアップでディスク容量を解放することを推奨します。", "Manage subscription plan creation, pricing and status": "サブスクリプションプランの作成、価格設定、ステータスを管理", "Manage subscription plans and pricing.": "サブスクリプションプランと価格設定を管理します。", + "Manage Subscriptions": "サブスクリプションの管理", "Manage users and their permissions": "ユーザーとその権限を管理する", + "Manage Vendors": "ベンダーの管理", "Manage your API keys for accessing the service": "サービスにアクセスするためのAPIキーを管理する", "Manage your balance and payment methods": "残高と支払い方法を管理する", "Manage your security settings and account access": "セキュリティ設定とアカウントアクセスを管理する", @@ -1905,14 +2068,14 @@ "Match All (AND)": "すべて一致(AND)", "Match Any (OR)": "いずれか一致(OR)", "Match Mode": "マッチモード", - "Match Text": "一致テキスト", - "Match Type": "一致タイプ", - "Match Value": "マッチ値", - "Match Value (optional)": "マッチ値(任意)", "Match model name exactly": "モデル名を正確に一致", "Match models containing this name": "この名前を含むモデルを一致", "Match models ending with this name": "この名前で終わるモデルを一致", "Match models starting with this name": "この名前で始まるモデルを一致", + "Match Text": "一致テキスト", + "Match Type": "一致タイプ", + "Match Value": "マッチ値", + "Match Value (optional)": "マッチ値(任意)", "Matched": "一致", "Matched Tier": "一致した階層", "Matching Rules": "マッチングルール", @@ -1920,15 +2083,16 @@ "Max Entries": "最大エントリ数", "Max Requests (incl. failures)": "最大リクエスト数(失敗を含む)", "Max Requests (including failures)": "最大リクエスト数(失敗を含む)", - "Max Success": "最大成功数", - "Max Successful Requests": "最大成功リクエスト数", "Max requests per period": "期間あたりの最大リクエスト数", + "Max Success": "最大成功数", "Max successful requests": "最大成功リクエスト数", + "Max Successful Requests": "最大成功リクエスト数", "Maximum 1000 characters. Supports Markdown and HTML.": "最大1000文字。MarkdownとHTMLをサポートしています。", "Maximum 200 characters": "最大200文字", "Maximum 500 characters. Supports Markdown and HTML.": "最大500文字。MarkdownとHTMLをサポートしています。", "Maximum check-in quota": "最大チェックインクォータ", "Maximum quota amount awarded for check-in": "チェックインで付与される最大クォータ量", + "maxRequests ≥ 0, maxSuccess ≥ 1, both ≤ 2,147,483,647": "maxRequests ≥ 0、maxSuccess ≥ 1、両方とも ≤ 2,147,483,647", "Medium": "Medium", "Memory Hits": "メモリヒット", "Memory Threshold (%)": "メモリ閾値 (%)", @@ -1941,70 +2105,76 @@ "Min Top-up": "最低チャージ額", "Min Top-up:": "最小チャージ額:", "MiniMax": "MiniMax", - "Minimum LinuxDO trust level required": "必要な最小LinuxDOトラストレベル", - "Minimum Trust Level": "最小トラストレベル", "Minimum check-in quota": "最小チェックインクォータ", + "Minimum LinuxDO trust level required": "必要な最小LinuxDOトラストレベル", "Minimum quota amount awarded for check-in": "チェックインで付与される最小クォータ量", "Minimum recharge amount in USD": "米ドルでの最小リチャージ額", "Minimum recharge amount to qualify for this discount.": "この割引の対象となる最小チャージ額。", - "Minimum top-up (USD)": "最小チャージ額(USD)", "Minimum top-up (optional)": "最小チャージ額(オプション)", + "Minimum top-up (USD)": "最小チャージ額(USD)", "Minimum top-up amount must be at least 1": "最低チャージ額は 1 以上である必要があります", "Minimum top-up quantity": "最小チャージ数量", "Minimum topup amount: {{amount}}": "最低チャージ金額:{{amount}}", + "Minimum Trust Level": "最小トラストレベル", "Minimum:": "最小:", "Minute": "分", - "Missing Models": "不足しているモデル", + "minutes": "分", "Missing code": "コードが不足しています", + "Missing Models": "不足しているモデル", "Missing user data from Passkey login response": "パスキーログイン応答からユーザーデータが欠落しています", "Mistral": "Mistral", "Mode": "モード", + "model": "モデル", "Model": "モデル", "Model Access": "モデルアクセス", "Model Analytics": "モデル分析", + "model billing support": "モデル課金対応", "Model Call Analytics": "モデル呼び出し分析", - "Model Description": "モデルの説明", - "Model Group": "モデルグループ", - "Model ID": "モデル ID", - "Model Limits": "モデル制限", - "Model Mapping": "モデルマッピング", - "Model Mapping (JSON)": "モデルマッピング (JSON)", - "Model Mapping must be a JSON object like": "モデルマッピングは次のようなJSONオブジェクトである必要があります", - "Model Name": "モデル名", - "Model Name *": "モデル名 *", - "Model Price": "モデル価格", - "Model Price Not Configured": "モデル価格が未設定", - "Model Pricing": "モデル料金", - "Model Regex": "モデル正規表現", - "Model Regex (one per line)": "モデル正規表現(1行に1つ)", - "Model Square": "モデル広場", - "Model Tags": "モデルタグ", - "Model Version *": "モデルバージョン *", "Model context usage": "モデルのコンテキスト使用量", "Model deleted": "モデルが削除されました", "Model deleted successfully": "モデルが正常に削除されました", "Model deployment service is disabled": "モデルデプロイサービスが無効です", + "Model Description": "モデルの説明", "Model disabled successfully": "モデルが正常に無効化されました", "Model enabled successfully": "モデルが正常に有効化されました", "Model fixed pricing": "モデルの固定価格設定", + "Model Group": "モデルグループ", + "Model ID": "モデル ID", + "Model Limits": "モデル制限", + "Model Mapping": "モデルマッピング", + "Model Mapping (JSON)": "モデルマッピング (JSON)", + "Model Mapping must be a JSON object like": "モデルマッピングは次のようなJSONオブジェクトである必要があります", "Model mapping must be valid JSON": "モデルマッピングは有効な JSON である必要があります", "Model name": "モデル名", + "Model Name": "モデル名", + "Model Name *": "モデル名 *", "Model name is required": "モデル名は必須です", "Model names copied to clipboard": "モデル名がクリップボードにコピーされました", "Model not found": "モデルが見つかりません", + "Model Price": "モデル価格", + "Model Price Not Configured": "モデル価格が未設定", + "Model Pricing": "モデル料金", "Model pull failed: {{msg}}": "モデルのプルに失敗しました: __ PH_0 __", "Model ratio": "モデル倍率", "Model ratios": "モデル比率", "Model ratios reset successfully": "モデル比率が正常にリセットされました", + "Model Regex": "モデル正規表現", + "Model Regex (one per line)": "モデル正規表現(1行に1つ)", + "Model Square": "モデル広場", + "Model Tags": "モデルタグ", "Model to use for testing": "テストに使用するモデル", "Model to use when testing channel connectivity": "チャネル接続性をテストする際に使用するモデル", + "Model Version *": "モデルバージョン *", + "model(s) selected out of": "選択されたモデル", + "model(s)? This action cannot be undone.": "モデルを削除しますか?この操作は元に戻せません。", + "models": "モデル", "Models": "モデル", - "Models & Groups": "モデルとグループ", "Models *": "モデル *", - "Models Directory": "モデルディレクトリ", + "Models & Groups": "モデルとグループ", "Models appended successfully": "モデルが正常に追加されました", "Models are required": "モデルが必要です", "Models directory": "モデルディレクトリ", + "Models Directory": "モデルディレクトリ", "Models fetched successfully": "モデルが正常に取得されました", "Models filled to form": "フォームにモデルが記入されました", "Models listed here will not automatically append or remove -thinking / -nothinking suffixes.": "ここに記載されたモデルは、-thinking / -nothinking サフィックスの自動付与・削除を行いません。", @@ -2019,21 +2189,24 @@ "Monitoring & Alerts": "監視とアラート", "Month": "月", "Monthly": "毎月", + "months": "ヶ月", "Moonshot": "Moonshot", "More": "もっと見る", + "more mapping": "さらにマッピング", "More templates...": "ほかのテンプレート…", "More...": "その他...", "Move": "移動", + "Move a request header": "リクエストヘッダーを移動", + "Move affiliate rewards to your main balance": "アフィリエイト報酬をメイン残高に移動する", "Move Field": "フィールドを移動", "Move Header": "ヘッダーを移動", "Move Request Header": "リクエストヘッダーを移動", - "Move a request header": "リクエストヘッダーを移動", - "Move affiliate rewards to your main balance": "アフィリエイト報酬をメイン残高に移動する", "Move source field to target field": "ソースフィールドをターゲットフィールドに移動", + "ms": "ms", + "Multi-key channel: Keys will be": "マルチキーチャネル: キーは", "Multi-Key Management": "マルチキー管理", "Multi-Key Mode (multiple keys, one channel)": "マルチキー モード (複数のキー、1つのチャネル)", "Multi-Key Strategy": "マルチキー戦略", - "Multi-key channel: Keys will be": "マルチキーチャネル: キーは", "Multi-key: Polling rotation": "マルチキー:ポーリングローテーション", "Multi-key: Random rotation": "マルチキー:ランダムローテーション", "Multi-protocol Compatible": "マルチプロトコル互換", @@ -2051,20 +2224,22 @@ "Must be a valid URL": "有効な URL を入力してください", "Must be at least 8 characters": "8文字以上である必要があります", "My Subscriptions": "マイサブスクリプション", + "my-status": "my-status", "MySQL detected": "MySQLが検出されました", "MySQL is a production-ready relational database. Keep your credentials secure.": "MySQL は本番環境対応のリレーショナルデータベースです。認証情報を安全に管理してください。", "MySQL is production ready. Ensure automated backups and a dedicated user with the minimal required privileges are configured.": "MySQLは本番環境に対応しています。自動バックアップと、最小限必要な権限を持つ専用ユーザーが設定されていることを確認してください。", "N/A": "該当なし", "Name": "名称", "Name *": "名前 *", - "Name Rule": "名前ルール", - "Name Suffix": "名前サフィックス", "Name for this redemption code (1-20 characters)": "この引き換えコードの名前(1~20文字)", "Name is available": "名前が利用可能です", "Name is not available": "名前が利用できません", "Name must be between {{min}} and {{max}} characters": "名前は{{min}}文字以上{{max}}文字以下である必要があります", + "Name Rule": "名前ルール", + "Name Suffix": "名前サフィックス", "Name the channel and choose the upstream provider.": "チャンネル名を設定し、上流プロバイダーを選択します。", "Name the channel, choose the provider, configure API access, and set credentials.": "チャンネル名を設定し、プロバイダーを選択し、API アクセスと認証情報を設定します。", + "name@example.com": "name@example.com", "Native format": "ネイティブ形式", "Need a code?": "コードが必要ですか?", "Nested JSON defining per-group rules for adding (+:), removing (-:), or appending usable groups.": "追加 (+:)、削除 (-:)、または使用可能なグループの追加を行うグループごとのルールを定義するネストされたJSON。", @@ -2078,48 +2253,32 @@ "New Format Template": "新フォーマットテンプレート", "New Group": "新しいグループ", "New Models ({{count}})": "新しいモデル ({{count}})", - "New Password": "新しいパスワード", - "New User Quota": "新しいユーザー割り当て", "New name will be:": "新しい名前は次のようになります:", "New password": "新しいパスワード", + "New Password": "新しいパスワード", "New password must be different from current password": "新しいパスワードは現在のものと異なっていなければなりません", + "New User Quota": "新しいユーザー割り当て", "New version available: {{version}}": "新しいバージョンが利用可能です:{{version}}", "NewAPI": "NewAPI", "Next": "次へ", "Next branch": "次のブランチ", "Next page": "次のページ", "Next reset": "次のリセット", - "No API Domains yet. Click \"Add API\" to create one.": "まだAPIドメインはありません。「APIを追加」をクリックして作成してください。", - "No API Keys Found": "APIキーが見つかりません", - "No API keys available. Create your first API key to get started.": "利用可能なAPIキーがありません。最初のAPIキーを作成して開始してください。", - "No API routes configured": "APIルートが設定されていません", "No About Content Set": "概要コンテンツが設定されていません", "No Active": "アクティブなし", - "No Change": "変更なし", - "No Channels Found": "チャネルが見つかりません", - "No Data": "データなし", - "No Deployments Found": "デプロイメントが見つかりません", - "No FAQ entries available": "FAQエントリがありません", - "No FAQ entries yet. Click \"Add FAQ\" to create one.": "FAQエントリはまだありません。「FAQを追加」をクリックして作成してください。", - "No Inviter": "招待者なし", - "No Logs Found": "ログが見つかりません", - "No Models Found": "モデルが見つかりません", - "No Quota": "クォータなし", - "No Redemption Codes Found": "引き換えコードが見つかりません", - "No Reset": "リセットなし", - "No Retry": "リトライなし", - "No Sync": "同期なし", - "No Upgrade": "アップグレードなし", - "No Uptime Kuma groups yet. Click \"Add Group\" to create one.": "Uptime Kumaグループはまだありません。「グループを追加」をクリックして作成してください。", - "No Users Found": "ユーザーが見つかりません", "No additional type-specific settings for this channel type.": "このチャネルタイプには、追加のタイプ固有の設定はありません。", "No amount options configured. Add amounts below to get started.": "金額オプションは設定されていません。開始するには、以下の金額を追加してください。", "No announcements at this time": "現在のお知らせはありません", "No announcements yet. Click \"Add Announcement\" to create one.": "お知らせはまだありません。「お知らせを追加」をクリックして作成してください。", - "No available Web chat links": "利用可能なWebチャットリンクがありません", + "No API Domains yet. Click \"Add API\" to create one.": "まだAPIドメインはありません。「APIを追加」をクリックして作成してください。", + "No API keys available. Create your first API key to get started.": "利用可能なAPIキーがありません。最初のAPIキーを作成して開始してください。", + "No API Keys Found": "APIキーが見つかりません", + "No API routes configured": "APIルートが設定されていません", "No available models": "利用可能なモデルがありません", + "No available Web chat links": "利用可能なWebチャットリンクがありません", "No backup": "バックアップなし", "No billing records found": "請求記録が見つかりません", + "No Change": "変更なし", "No changes": "変更なし", "No changes made": "変更はありません", "No changes to save": "保存する変更がありません", @@ -2127,6 +2286,7 @@ "No channel type found.": "チャンネルタイプが見つかりません。", "No channels available. Create your first channel to get started.": "利用可能なチャネルがありません。最初のチャネルを作成して開始してください。", "No channels found": "チャネルが見つかりません", + "No Channels Found": "チャネルが見つかりません", "No channels selected": "チャネルが選択されていません", "No chat presets configured. Click \"Add chat preset\" to get started.": "チャットプリセットが設定されていません。「チャットプリセットを追加」をクリックして開始してください。", "No chat presets match your search": "検索に一致するチャットプリセットがありません", @@ -2136,21 +2296,27 @@ "No containers": "コンテナがありません", "No custom OAuth providers configured yet.": "カスタムOAuthプロバイダーはまだ設定されていません。", "No data": "データがありません", + "No Data": "データなし", "No data available": "データがありません", "No deployments available. Create one to get started.": "利用可能なデプロイメントがありません。開始するには1つ作成してください。", + "No Deployments Found": "デプロイメントが見つかりません", "No description available.": "説明はありません。", "No discount tiers configured. Click \"Add discount tier\" to get started.": "割引ティアは設定されていません。「割引ティアを追加」をクリックして開始してください。", "No duplicate keys found": "重複キーが見つかりませんでした", "No enabled tokens available": "有効なトークンがありません", "No endpoints configured. Switch to JSON mode or add rows to define endpoints.": "エンドポイントが設定されていません。JSONモードに切り替えるか、エンドポイントを定義するために行を追加してください。", + "No FAQ entries available": "FAQエントリがありません", + "No FAQ entries yet. Click \"Add FAQ\" to create one.": "FAQエントリはまだありません。「FAQを追加」をクリックして作成してください。", "No files match the accepted types.": "許可された種類に一致するファイルがありません。", "No group found.": "グループが見つかりません。", "No group-based rate limits configured. Click \"Add group\" to get started.": "グループベースのレート制限が設定されていません。\"グループを追加\" をクリックして開始してください。", "No groups match your search": "検索に一致するグループがありません", "No header overrides configured.": "ヘッダーのオーバーライドが設定されていません。", + "No Inviter": "招待者なし", "No keys found": "キーが見つかりません", "No log entries matched the selected time.": "選択した時間に一致するログエントリはありません。", "No logs": "ログがありません", + "No Logs Found": "ログが見つかりません", "No mappings configured. Click \"Add Row\" to get started.": "マッピングが設定されていません。「行を追加」をクリックして開始してください。", "No matches found": "一致するものが見つかりません", "No matching results": "一致する結果がありません", @@ -2165,6 +2331,7 @@ "No models fetched from upstream": "アップストリームからモデルを取得できませんでした", "No models fetched yet.": "まだモデルはフェッチされていません。", "No models found": "モデルが見つかりません", + "No Models Found": "モデルが見つかりません", "No models found.": "モデルが見つかりません。", "No models match your current filters.": "現在のフィルターに一致するモデルはありません。", "No models match your search": "検索に一致するモデルがありません", @@ -2186,48 +2353,60 @@ "No products configured. Click \"Add product\" to get started.": "製品が設定されていません。「製品を追加」をクリックして開始してください。", "No products match your search": "検索に一致する製品がありません", "No providers available": "利用可能なプロバイダーがありません", + "No Quota": "クォータなし", "No ratio differences found": "比率の差異は見つかりませんでした", "No records found. Try adjusting your filters.": "記録が見つかりません。フィルターを調整してみてください。", "No redemption codes available. Create your first redemption code to get started.": "利用可能な引き換えコードがありません。最初の引き換えコードを作成して開始してください。", + "No Redemption Codes Found": "引き換えコードが見つかりません", "No related models available for this channel type": "このチャンネルタイプに関連するモデルが利用できません", "No release notes provided.": "リリースノートは提供されていません。", + "No Reset": "リセットなし", "No restriction": "制限なし", "No results for \"{{query}}\". Try adjusting your search or filters.": "\"{{query}}\" の結果が見つかりません。検索条件やフィルターを調整してみてください。", "No results found": "検索結果がありません", "No results found.": "結果が見つかりません。", + "No Retry": "リトライなし", "No rules yet": "ルールがありません", "No rules yet. Add a group below to get started.": "まだルールがありません。下にグループを追加して開始してください。", "No status code mappings configured.": "ステータスコードのマッピングが設定されていません。", "No subscription plans yet": "サブスクリプションプランがありません", "No subscription records": "サブスクリプション記録がありません", + "No Sync": "同期なし", "No system announcements": "システムのお知らせがありません", "No token found.": "トークンが見つかりません。", "No tools configured": "ツールが未設定です", + "No Upgrade": "アップグレードなし", "No upstream price differences found": "上流価格の差異は見つかりませんでした", "No upstream ratio differences found": "アップストリームの比率の差は見つかりません", + "No Uptime Kuma groups yet. Click \"Add Group\" to create one.": "Uptime Kumaグループはまだありません。「グループを追加」をクリックして作成してください。", "No uptime monitoring configured": "アップタイム監視が設定されていません", "No usage logs available. Logs will appear here once API calls are made.": "使用ログはありません。API呼び出し後にログがここに表示されます。", "No user information available": "ユーザー情報はありません", "No user selected": "ユーザーが選択されていません", "No users available. Try adjusting your search or filters.": "利用可能なユーザーがいません。検索またはフィルターを調整してみてください。", + "No Users Found": "ユーザーが見つかりません", "Node Name": "ノード名", "Non-stream": "非ストリーミング", "None": "なし", + "noreply@example.com": "noreply@example.com", "Normal": "Normal", "Normalized:": "正規化:", - "Not Equals": "等しくない", - "Not Set": "未設定", - "Not Started": "未開始", - "Not Submitted": "未送信", "Not available": "利用できません", "Not backed up": "未バックアップ", "Not bound": "未バインド", + "Not Equals": "等しくない", + "Not Set": "未設定", "Not set yet": "未設定", + "Not Started": "未開始", + "Not Submitted": "未送信", "Not tested": "未テスト", "Not used yet": "未使用", "Notice": "通知", + "Notice Glass": "通知グラス", "Notification Email": "通知メール", "Notification Method": "通知方法", + "Notification Presets": "通知プリセット", + "Notification presets use fixed category colors and ignore the color palette.": "通知プリセットは固定のカテゴリ色を使用し、カラーパレットは無視されます。", "Notifications": "通知", "Number of codes to create": "作成するコードの数", "Number of keys to create": "作成するキーの数", @@ -2236,33 +2415,37 @@ "Number of users invited": "招待されたユーザー数", "OAuth Client ID": "OAuthクライアントID", "OAuth Client Secret": "OAuthクライアントシークレット", - "OAuth Integrations": "OAuth連携", "OAuth failed": "OAuth に失敗しました", + "OAuth Integrations": "OAuth連携", "OAuth start failed": "OAuth開始に失敗しました", - "OIDC": "OIDC", - "OIDC Client ID": "OIDCクライアントID", - "OIDC Client Secret": "OIDCクライアントシークレット", - "OIDC configuration fetched successfully": "OIDC 設定が正常に取得されました", - "OIDC discovery URL. Click \"Auto-discover\" to fetch endpoints automatically.": "OIDCディスカバリーURL。「自動検出」をクリックすると、エンドポイントを自動的に取得します。", - "OIDC endpoints discovered successfully": "OIDCエンドポイントの検出に成功しました", "Object Prune Rules": "オブジェクト削除ルール", "Observability": "可観測性", "Obtain the API key, merchant ID, and RSA key pair from the Waffo dashboard, and configure the callback URL.": "Waffoダッシュボードから APIキー、マーチャントID、RSAキーペアを取得し、コールバックURLを設定してください。", "Obtain the merchant, store, product and signing keys from your Waffo dashboard. Webhook URL: /api/waffo-pancake/webhook": "Waffo ダッシュボードでマーチャント、ストア、プロダクト、署名用キーを取得してください。Webhook URL: /api/waffo-pancake/webhook", + "of": "件、合計", + "of 3:": "3のうち:", + "off": "オフ", "Official": "公式", + "Official documentation": "公式ドキュメント", "Official Repository": "公式リポジトリ", "Official Sync": "公式同期", - "Official documentation": "公式ドキュメント", "OhMyGPT": "OhMyGPT", + "OIDC": "OIDC", + "OIDC Client ID": "OIDCクライアントID", + "OIDC Client Secret": "OIDCクライアントシークレット", + "OIDC configuration fetched successfully": "OIDC 設定が正常に取得されました", + "OIDC discovery URL. Click \"Auto-discover\" to fetch endpoints automatically.": "OIDCディスカバリーURL。「自動検出」をクリックすると、エンドポイントを自動的に取得します。", + "OIDC endpoints discovered successfully": "OIDCエンドポイントの検出に成功しました", "Old Format Template": "旧形式テンプレート", "Old format: Direct override. New format: Supports conditional judgment and custom JSON operations.": "旧形式: 直接上書き。新形式: 条件判定とカスタムJSON操作をサポートします。", "Ollama": "Ollama", "Ollama Models": "Ollamaモデル", "One API": "1つのAPI", - "One IP or CIDR range per line": "1行に1つのIPまたはCIDR範囲", - "One IP per line (empty for no restriction)": "1行に1つのIP (制限なしの場合は空欄)", "One domain per line": "1行に1つのドメイン", "One domain per line (only used when domain restriction is enabled)": "1行に1つのドメイン (ドメイン制限が有効な場合のみ使用されます)", + "One IP or CIDR range per line": "1行に1つのIPまたはCIDR範囲", + "One IP per line (empty for no restriction)": "1行に1つのIP (制限なしの場合は空欄)", + "one keyword per line": "1行に1つのキーワード", "Online payment is not enabled. Please contact the administrator.": "オンライン決済が有効になっていません。管理者にお問い合わせください。", "Online topup is not enabled. Please use redemption code or contact administrator.": "オンラインチャージは有効になっていません。引き換えコードを使用するか、管理者に連絡してください。", "Only allow specific email domains": "特定のEメール ドメインのみを許可する", @@ -2274,34 +2457,35 @@ "Oops! Page Not Found!": "おっと!ページが見つかりません!", "Oops! Something went wrong": "おっと!何か問題が発生しました", "Open": "開く", - "Open CC Switch": "CC Switch を開く", - "Open Source": "オープンソース", "Open authorization page": "認証ページを開く", - "Open in New Tab": "新しいタブで開く", + "Open CC Switch": "CC Switch を開く", "Open in chat": "チャットで開く", "Open in new tab": "新しいタブで開く", + "Open in New Tab": "新しいタブで開く", "Open menu": "メニューを開く", "Open release": "リリースを開く", + "Open Source": "オープンソース", "Open the io.net console API Keys page": "io.netコンソールAPIキーページを開く", "Open theme settings": "テーマ設定を開く", "OpenAI": "OpenAI", "OpenAI Compatible": "OpenAI互換", "OpenAI Organization": "OpenAI組織", "OpenAI Organization ID (optional)": "OpenAI 組織 ID (オプション)", - "OpenAI, Anthropic, Google, etc.": "OpenAI、Anthropic、Googleなど", "OpenAI, Anthropic, etc.": "OpenAI、Anthropicなど", + "OpenAI, Anthropic, Google, etc.": "OpenAI、Anthropic、Googleなど", "OpenAIMax": "OpenAIMax", - "OpenRouter": "OpenRouter", "Opened authorization page": "認証ページを開きました", + "OpenRouter": "OpenRouter", + "opens in an external client. Trigger it from the sidebar or API key actions to launch the configured application.": "外部クライアントで開きます。サイドバーまたはAPIキーアクションからトリガーして、設定されたアプリケーションを起動します。", "Operation": "操作", - "Operation Type": "操作タイプ", "Operation failed": "操作に失敗しました", + "Operation Type": "操作タイプ", "Operator Admin": "オペレーター管理", "Optimize system for self-hosted single-user usage": "セルフホスト型の単一ユーザー使用向けにシステムを最適化する", "Optimized network architecture ensures millisecond response times": "最適化されたネットワークアーキテクチャによりミリ秒単位の応答時間を保証", - "Optional JSON policy to restrict access based on user info fields": "ユーザー情報フィールドに基づいてアクセスを制限するためのオプションのJSONポリシー", "Optional callback override. Leave blank to use server address": "オプションのコールバック上書き。サーバーアドレスを使用するには空欄のままにします", "Optional icon identifier for the login button": "ログインボタン用のオプションのアイコン識別子", + "Optional JSON policy to restrict access based on user info fields": "ユーザー情報フィールドに基づいてアクセスを制限するためのオプションのJSONポリシー", "Optional minimum recharge amount for this method.": "この方法のオプションの最小チャージ額。", "Optional multiplier per user group used when calculating recharge pricing. Provide a JSON object such as": "チャージ料金を計算する際に使用されるユーザーグループごとのオプションの乗数。次のようなJSONオブジェクトを提供してください", "Optional notes about this channel": "このチャンネルに関するオプションのノート", @@ -2314,46 +2498,50 @@ "Opus Model": "Opus モデル", "Or continue with": "または、以下で続行", "Or enter this key manually:": "または、このキーを手動で入力してください:", + "Order completed successfully": "注文が正常に完了しました", "Order History": "注文履歴", "Order Payment Method": "注文の支払い方法", - "Order completed successfully": "注文が正常に完了しました", + "org-...": "org-...", "Original Model": "オリジナルモデル", "Other": "その他", "Output": "出力", - "Output Tokens": "出力トークン", "Output price": "出力価格", "Output tokens": "出力トークン", + "Output Tokens": "出力トークン", + "override": "上書き", "Override": "上書き", "Override Anthropic headers, defaults, and thinking adapter behavior": "Anthropicのヘッダー、デフォルト、および思考アダプターの動作を上書きする", - "Override Rules": "上書きルール", "Override auto-discovered endpoint": "自動検出されたエンドポイントを上書きする", "Override request headers": "リクエストヘッダーを上書きする", "Override request headers (JSON format)": "リクエストヘッダーのオーバーライド (JSON 形式)", "Override request parameters (JSON format)": "リクエストパラメータの上書き (JSON形式)", "Override request parameters. Cannot override": "リクエストパラメーターを上書きします。上書きできません", "Override request parameters. Cannot override stream parameter.": "リクエストパラメータを上書きします。stream パラメータは上書きできません。", + "Override Rules": "上書きルール", "Override the endpoint used for testing. Leave empty to auto detect.": "テストに使用されるエンドポイントを上書きします。自動検出するには空のままにします。", + "overrides for matching model prefix.": "は一致するモデル接頭辞に上書きします。", "Overview": "概要", "Overwritten": "上書き済み", - "PaLM": "PaLM", "Page": "ページ", "Page {{current}} of {{total}}": "{{total}} ページ中 {{current}} ページ目", + "PaLM": "PaLM", "Pan": "パン", "Param Override": "パラメータ上書き", - "Parameter Override": "パラメータのオーバーライド", - "Parameter Override Template (JSON)": "パラメータオーバーライドテンプレート (JSON)", "Parameter configuration error": "パラメータ設定エラー", + "Parameter Override": "パラメータのオーバーライド", "Parameter override must be a valid JSON object": "パラメータオーバーライドは有効なJSONオブジェクトである必要があります", "Parameter override must be valid JSON format": "パラメータオーバーライドは有効なJSON形式である必要があります", + "Parameter Override Template (JSON)": "パラメータオーバーライドテンプレート (JSON)", "Parameter override template must be a JSON object": "パラメータオーバーライドテンプレートはJSONオブジェクトである必要があります", + "parameter.": "パラメーター。", "Parameters": "パラメータ", "Parsed {{count}} service account file(s)": "__ PH_0 __サービスアカウントファイルを解析しました", "Partial Submission": "部分送信", "Pass Headers": "ヘッダーをパススルー", - "Pass Through Body": "ボディをパススルー", - "Pass Through Headers": "ヘッダー透過", "Pass request body directly to upstream": "リクエストボディを直接アップストリームに渡す", "Pass specified request headers to upstream": "指定のリクエストヘッダーを上流に透過", + "Pass Through Body": "ボディをパススルー", + "Pass Through Headers": "ヘッダー透過", "Pass through the anthropic-beta header for beta features": "ベータ機能用に anthropic-beta ヘッダーをパススルー", "Pass through the include field for usage obfuscation": "使用量難読化用に include フィールドをパススルー", "Pass through the inference_geo field for Claude data residency region control": "Claude データ駐留推論リージョン制御用に inference_geo フィールドをパススルー", @@ -2366,11 +2554,11 @@ "Pass-through Headers (comma-separated or JSON array)": "パススルーヘッダー(カンマ区切りまたはJSON配列)", "Passkey": "Passkey", "Passkey Authentication": "パスキー認証", - "Passkey Login": "Passkeyログイン", "Passkey is not available in this browser": "このブラウザではパスキーが利用できません", "Passkey is not supported in this environment": "この環境ではパスキーはサポートされていません", "Passkey is not supported on this device": "このデバイスではパスキーがサポートされていません", "Passkey is not supported on this device.": "このデバイスではパスキーはサポートされていません。", + "Passkey Login": "Passkeyログイン", "Passkey login failed": "パスキーログインに失敗しました", "Passkey login was cancelled": "パスキーログインがキャンセルされました", "Passkey login was cancelled or timed out": "パスキーログインがキャンセルまたはタイムアウトされました", @@ -2382,41 +2570,43 @@ "Passthrough Template": "透過テンプレート", "Password": "パスワード", "Password / Access Token": "パスワード / アクセストークン", - "Password Login": "パスワードログイン", - "Password Registration": "パスワード登録", "Password changed successfully": "パスワードが正常に変更されました", "Password copied to clipboard: {{password}}": "パスワードがクリップボードにコピーされました:{{password}}", "Password has been copied to clipboard": "パスワードがクリップボードにコピーされました", + "Password Login": "パスワードログイン", "Password must be at least 8 characters": "パスワードは少なくとも8文字である必要があります", "Password must be at least 8 characters long": "パスワードは8文字以上である必要があります", + "Password Registration": "パスワード登録", "Password reset and copied to clipboard: {{password}}": "パスワードがリセットされ、クリップボードにコピーされました:{{password}}", "Password reset: {{password}}": "パスワードがリセットされました:{{password}}", "Passwords do not match": "パスワードが一致しません", "Paste the full callback URL (includes code & state)": "コールバックURL全体を貼り付け(code と state を含む)", "Path": "パス", - "Path Regex (one per line)": "パス正規表現(1行に1つ)", "Path not set": "パス未設定", + "Path Regex (one per line)": "パス正規表現(1行に1つ)", "Path:": "パス:", "Pay": "Pay", "Pay-as-you-go with real-time usage monitoring": "リアルタイム使用量監視付き従量課金制", "Payment Channel": "決済チャネル", "Payment Gateway": "決済ゲートウェイ", - "Payment Method": "チャージ方法", - "Payment Methods": "決済方法", "Payment initiated": "支払いが開始されました", + "Payment Method": "チャージ方法", "Payment method name": "決済方法名", "Payment method name is required": "決済方法名は必須です", "Payment method type": "決済方法タイプ", "Payment method type is required": "支払い方法のタイプは必須です", "Payment methods": "支払方法", + "Payment Methods": "決済方法", "Payment page opened": "決済ページが開きました", "Payment request failed": "支払いリクエストが失敗しました", "Payment return URL": "決済完了後のリダイレクトURL", "Pending": "保留中", + "per": "あたり", "Per 1K tokens": "1Kトークンあたり", "Per 1M tokens": "1Mトークンあたり", - "Per Request": "リクエストごと", + "per request": "リクエストごと", "Per request": "リクエストごと", + "Per Request": "リクエストごと", "Per-call": "呼び出しごと", "Per-feature metered windows split by model or capability.": "機能ごとの従量制ウィンドウ。モデルまたは能力別に分かれます。", "Per-request (fixed price)": "リクエストごと (固定価格)", @@ -2433,14 +2623,15 @@ "Perplexity": "Perplexity", "Persist your data file": "データファイルを永続化する", "Personal": "個人", - "Personal Center Area": "パーソナルセンターエリア", - "Personal Settings": "個人設定", "Personal area": "個人エリア", + "Personal Center Area": "パーソナルセンターエリア", "Personal info settings": "個人情報設定", + "Personal Settings": "個人設定", "Personal settings and profile management.": "個人設定とプロフィール管理。", "Personal use": "個人利用", "Personal use mode": "個人利用モード", "Pick a date": "日付を選択", + "Pick colors from the palette or enter CSS color values manually.": "パレットから色を選択するか、CSS の色値を手動で入力します。", "Ping Interval (seconds)": "Ping間隔(秒)", "Plan": "プラン", "Plan Name": "プラン名", @@ -2451,29 +2642,28 @@ "Playground": "プレイグラウンド", "Playground and chat functions": "プレイグラウンドとチャット機能", "Playground experiments and live conversations.": "Playgroundの実験とライブ会話。", - "Please Select user groups that can access this channel.": "このチャネルにアクセスできるユーザーグループを選択してください。", "Please agree to the legal terms first": "先に利用規約に同意してください", "Please complete the security check to continue.": "続行するにはセキュリティチェックを完了してください。", "Please confirm that you understand the consequences": "結果を理解したことを確認してください", - "Please enable Two-factor Authentication or Passkey before proceeding": "続行する前に、二要素認証またはパスキーを有効にしてください", "Please enable io.net model deployment service and configure an API key in System Settings.": "システム設定で io.net モデルデプロイサービスを有効にし、API キーを設定してください。", - "Please enter API key first": "まずAPIキーを入力してください", - "Please enter a Well-Known URL first": "まずWell-Known URLを入力してください", + "Please enable Two-factor Authentication or Passkey before proceeding": "続行する前に、二要素認証またはパスキーを有効にしてください", "Please enter a name": "名前を入力してください", "Please enter a new password": "新しいパスワードを入力してください", "Please enter a redemption code": "引き換えコードを入力してください", "Please enter a valid duration": "有効な期間を入力してください", "Please enter a valid email address": "有効なメールアドレスを入力してください", "Please enter a valid number": "有効な数値を入力してください", + "Please enter a Well-Known URL first": "まずWell-Known URLを入力してください", "Please enter amount": "金額を入力してください", "Please enter an administrator username": "管理者ユーザー名を入力してください", + "Please enter API key first": "まずAPIキーを入力してください", "Please enter chat client name": "チャットクライアント名を入力してください", "Please enter email and verification code": "メールアドレスと認証コードを入力してください", "Please enter keys first": "まずキーを入力してください", "Please enter model name": "サブモデルを入力してください", "Please enter plan title": "プラン名を入力してください", - "Please enter the URL": "URLを入力してください", "Please enter the authentication code.": "認証コードを入力してください。", + "Please enter the URL": "URLを入力してください", "Please enter the verification code": "確認コードを入力してください", "Please enter your current password": "現在のパスワードを入力してください", "Please enter your email": "メールアドレスを入力してください", @@ -2490,6 +2680,7 @@ "Please select at least one channel": "少なくとも1つのチャンネルを選択してください", "Please select at least one model": "少なくとも1つのモデルを選択してください", "Please select items to delete": "削除する項目を選択してください", + "Please Select user groups that can access this channel.": "このチャネルにアクセスできるユーザーグループを選択してください。", "Please set Ollama API Base URL first": "最初にOllama APIベースURLを設定してください", "Please try again later.": "後でもう一度お試しください。", "Please upload key file(s)": "キーファイルをアップロードしてください", @@ -2506,8 +2697,8 @@ "PostgreSQL offers strong reliability guarantees. Double check your maintenance window and retention policies before going live.": "PostgreSQLは強力な信頼性保証を提供します。本番稼働する前に、メンテナンスウィンドウと保持ポリシーを再確認してください。", "Powerful API Management Platform": "強力なAPI管理プラットフォーム", "Pre-Consume for Free Models": "無料モデルの事前消費", - "Pre-Consumed Quota": "事前消費クォータ", "Pre-consumed": "事前消費", + "Pre-Consumed Quota": "事前消費クォータ", "Preference saved as {{pref}}, but no active subscription. Wallet will be used automatically.": "設定は{{pref}}として保存されましたが、アクティブなサブスクリプションがありません。ウォレットが自動的に使用されます。", "Preferences": "環境設定", "Prefill Group Management": "プリフィルグループ管理", @@ -2527,9 +2718,9 @@ "Preserve the original field when applying this rule": "このルール適用時に元のフィールドを保持します", "Preset": "Preset", "Preset Background": "Preset Background", - "Preset Template": "プリセットテンプレート", "Preset recharge amounts (JSON array)": "プリセットチャージ金額 (JSON配列)", "Preset recharge amounts displayed to users": "ユーザーに表示されるプリセットチャージ金額", + "Preset Template": "プリセットテンプレート", "Preset templates": "プリセットのテンプレート", "Press Enter or comma to add tags": "Enterキーまたはコンマを押してタグを追加", "Press Enter to use \"{{value}}\"": "Enter キーを押して「{{value}}」を使用", @@ -2542,12 +2733,13 @@ "Price": "価格", "Price ($/1K calls)": "価格($/1K 回)", "Price (local currency / USD)": "価格 (現地通貨 / USD)", - "Price ID": "価格 ID", "Price display": "価格表示", "Price display mode": "価格表示モード", "Price estimation": "料金見積もり", "Price estimation description": "ハードウェアタイプ、デプロイ場所、レプリカ数などを設定すると、料金が自動的に計算されます。", + "Price ID": "価格 ID", "Price mode (USD per 1M tokens)": "価格モード (100万トークンあたりのUSD)", + "price_xxx": "price_xxx", "Price:": "価格:", "Price: High to Low": "価格:高い順", "Price: Low to High": "価格:低い順", @@ -2556,11 +2748,11 @@ "Prices vary by usage tier and request conditions": "価格は利用ティアとリクエスト条件で変動します", "Pricing": "価格設定", "Pricing & Display": "価格設定と表示", + "Pricing by Group": "グループ別価格設定", "Pricing Configuration": "価格設定", + "Pricing mode": "価格モード", "Pricing Ratios": "価格比率", "Pricing Type": "価格タイプ", - "Pricing by Group": "グループ別価格設定", - "Pricing mode": "価格モード", "Primary Model": "プライマリモデル", "Prioritize reusing the last successful channel based on keys extracted from request context (sticky routing)": "リクエストコンテキストから抽出したキーに基づいて、前回成功したチャネルを優先的に再利用します(スティッキールーティング)", "Priority": "優先度", @@ -2576,6 +2768,7 @@ "Product ID is required": "プロダクト ID は必須です", "Product Name": "商品名", "Products": "商品", + "Professional": "プロフェッショナル", "Professional team providing 24/7 technical support": "24時間年中無休のテクニカルサポートを提供するプロフェッショナルチーム", "Profile": "プロフィール", "Profile updated successfully": "プロフィールが正常に更新されました", @@ -2585,28 +2778,28 @@ "Promotion codes": "プロモーションコード", "Prompt": "プロンプト", "Prompt (EN)": "プロンプト(英語)", + "Prompt cache ratio": "プロンプトキャッシュ倍率", "Prompt Caching": "プロンプトキャッシング", "Prompt Details": "プロンプトの詳細", - "Prompt cache ratio": "プロンプトキャッシュ倍率", "Prompt price ($/1M tokens)": "プロンプト価格 (100万トークンあたり$)", "Protect login and registration with Cloudflare Turnstile": "Cloudflare Turnstileでログインと登録を保護する", - "Provide Markdown, HTML, or an external URL for the privacy policy": "プライバシーポリシーにMarkdown、HTML、または外部URLを提供する", - "Provide Markdown, HTML, or an external URL for the user agreement": "ユーザー同意書にMarkdown、HTML、または外部URLを提供する", "Provide a JSON object where each key maps to an endpoint definition.": "各キーがエンドポイント定義にマップされる JSON オブジェクトを提供してください。", "Provide a valid URL starting with http:// or https://": "http:// または https:// で始まる有効な URL を入力してください", + "Provide Markdown, HTML, or an external URL for the privacy policy": "プライバシーポリシーにMarkdown、HTML、または外部URLを提供する", + "Provide Markdown, HTML, or an external URL for the user agreement": "ユーザー同意書にMarkdown、HTML、または外部URLを提供する", "Provide per-category safety overrides as JSON. Use `default` for fallback values.": "カテゴリごとの安全オーバーライドをJSONとして提供します。フォールバック値には`default`を使用してください。", "Provide per-model header overrides as JSON. Useful for enabling beta features such as expanded context windows.": "モデルごとのヘッダーオーバーライドをJSONとして提供します。拡張コンテキストウィンドウなどのベータ機能を有効にするのに役立ちます。", "Provider": "プロバイダ", - "Provider Name": "プロバイダー名", "Provider created successfully": "プロバイダーの作成に成功しました", "Provider deleted successfully": "プロバイダーの削除に成功しました", + "Provider Name": "プロバイダー名", "Provider type (OpenAI, Anthropic, etc.)": "プロバイダタイプ (OpenAI, Anthropic など)", "Provider updated successfully": "プロバイダーが正常に更新されました", "Provider-specific endpoint, account, and compatibility settings.": "プロバイダー固有のエンドポイント、アカウント、互換性設定です。", "Proxy Address": "プロキシアドレス", "Prune Object Items": "オブジェクト項目を整理", - "Prune Rule (string or JSON object)": "削除ルール(文字列またはJSONオブジェクト)", "Prune object items by conditions": "条件に基づいてオブジェクト項目を削除", + "Prune Rule (string or JSON object)": "削除ルール(文字列またはJSONオブジェクト)", "Publish Date": "公開日", "Published": "公開済み", "Published:": "公開済み:", @@ -2614,11 +2807,11 @@ "Pull model": "モデルをプル", "Pulling...": "プル中...", "Pulse": "Pulse", - "Purchase Limit": "購入上限", - "Purchase Subscription": "サブスクリプションを購入", "Purchase a plan to enjoy model benefits": "プランを購入してモデルの特典を享受", "Purchase here": "ここで購入", + "Purchase Limit": "購入上限", "Purchase limit reached": "購入上限に達しました", + "Purchase Subscription": "サブスクリプションを購入", "QR Code Image URL": "QRコード画像URL", "QR code is not configured. Please contact support.": "QRコードが設定されていません。サポートにお問い合わせください。", "Quantity": "数量", @@ -2628,27 +2821,24 @@ "Querying...": "クエリ中...", "Question": "質問", "Queued": "キュー中", + "Quick insert common payment methods": "一般的な支払い方法をすばやく挿入", "Quick Range": "クイック範囲", "Quick Setup from Preset": "プリセットからクイックセットアップ", - "Quick insert common payment methods": "一般的な支払い方法をすばやく挿入", "Quota": "クォータ", "Quota ({{currency}})": "クォータ ({{currency}})", - "Quota Distribution": "クォータの分配", - "Quota Per Unit": "ユニットあたりのクォータ", - "Quota Reset": "クォータリセット", - "Quota Settings": "クォータ設定", - "Quota Types": "クォータタイプ", - "Quota Warning Threshold": "クォータ警告しきい値", "Quota adjusted successfully": "クォータの調整に成功しました", "Quota consumed before charging users": "ユーザーに請求する前に消費されるクォータ", + "Quota Distribution": "クォータの分配", "Quota given to invited users": "招待されたユーザーに付与されるクォータ", "Quota given to users who invite others": "他のユーザーを招待したユーザーに付与されるクォータ", "Quota must be a positive number": "クォータは正の数である必要があります", + "Quota Per Unit": "ユニットあたりのクォータ", "Quota reminder (tokens)": "クォータリマインダー (トークン)", + "Quota Reset": "クォータリセット", + "Quota Settings": "クォータ設定", + "Quota Types": "クォータタイプ", + "Quota Warning Threshold": "クォータ警告しきい値", "Quota:": "クォータ:", - "RPM": "RPM", - "RSA Private Key (Production)": "RSA秘密鍵(本番)", - "RSA Private Key (Sandbox)": "RSA秘密鍵(サンドボックス)", "Rainbow": "Rainbow", "Random": "ランダム", "Randomly select a key from the pool for each request": "各リクエストごとにプールからランダムにキーを選択", @@ -2656,16 +2846,16 @@ "Rate Limited": "レート制限", "Rate Limiting": "レート制限", "Ratio": "倍率", - "Ratio Type": "比率タイプ", "Ratio applied to audio completions for streaming models.": "ストリーミングモデルの音声補完に適用される比率。", "Ratio applied to audio inputs where supported by the upstream model.": "アップストリームモデルでサポートされている場合の音声入力に適用される比率。", "Ratio applied when creating cache entries for supported models.": "サポートされているモデルのキャッシュエントリ作成時に適用される倍率", "Ratio mode": "比率モード", + "Ratio Type": "比率タイプ", "Ratio: {{value}}": "倍率:{{value}}", "Ratios synced successfully": "比率が正常に同期されました", + "Raw expression": "元の式", "Raw JSON": "生 JSON", "Raw Quota": "元のクォータ", - "Raw expression": "元の式", "Re-enable on success": "成功時に再有効化", "Re-login": "再ログイン", "Ready to initialize": "初期化準備完了", @@ -2690,29 +2880,31 @@ "Redeem codes": "コードを交換", "Redeemed By": "引き換え元", "Redeemed:": "引き換え済み:", + "redemption code": "引き換えコード", "Redemption Code": "引き換えコード", - "Redemption Codes": "引き換えコード", "Redemption code deleted successfully": "引き換えコードを正常に削除しました", "Redemption code disabled successfully": "引き換えコードを正常に無効にしました", "Redemption code enabled successfully": "引き換えコードを正常に有効にしました", "Redemption code updated successfully": "引き換えコードを正常に更新しました", "Redemption code(s) created successfully": "引き換えコードが正常に作成されました", + "Redemption Codes": "引き換えコード", + "redemption codes.": "引き換えコード。", "Redemption failed": "交換に失敗しました", "Redemption successful! Added: {{quota}}": "引き換え成功!追加:{{quota}}", + "Redirecting to chat page...": "チャットページにリダイレクト中...", "Redirecting to Creem checkout...": "Creemチェックアウトにリダイレクト中...", "Redirecting to GitHub...": "GitHub にリダイレクトしています...", - "Redirecting to chat page...": "チャットページにリダイレクト中...", "Redirecting to payment page...": "支払いページにリダイレクト中...", "Reference Video": "参照動画", - "Referral Program": "紹介プログラム", "Referral link:": "紹介リンク:", + "Referral Program": "紹介プログラム", "Refine models by provider, group, type, and tags.": "プロバイダー、グループ、タイプ、タグでモデルを絞り込みます。", "Refresh": "更新", "Refresh Cache": "キャッシュ更新", - "Refresh Stats": "統計を更新", "Refresh credential": "認証情報を更新", "Refresh failed": "更新に失敗しました", "Refresh interval (minutes)": "更新間隔 (分)", + "Refresh Stats": "統計を更新", "Refreshing...": "更新中...", "Refund": "返金", "Refund Details": "返金詳細", @@ -2731,30 +2923,30 @@ "Relying Party Display Name": "依拠当事者表示名", "Relying Party ID": "依拠当事者ID", "Remaining": "残り", - "Remaining Quota ({{currency}})": "残りのクォータ ({{currency}})", "Remaining quota": "残りクォータ", + "Remaining Quota ({{currency}})": "残りのクォータ ({{currency}})", "Remaining quota units": "残りクォータ単位", "Remaining:": "残り:", "Remark": "備考", "Remove": "削除", "Remove ${{amount}}": "${{amount}}を削除", - "Remove Duplicates": "重複を削除", - "Remove Models": "モデルを削除", - "Remove Passkey": "Passkey連携解除", - "Remove Passkey?": "Passkeyを削除しますか?", "Remove all log entries created before the selected timestamp.": "選択したタイムスタンプより前に作成されたすべてのログエントリを削除します。", "Remove attachment": "添付ファイルを削除", "Remove condition": "条件を削除", + "Remove Duplicates": "重複を削除", "Remove filter": "フィルターを削除", "Remove functionResponse.id field": "functionResponse.id フィールドを削除", + "Remove Models": "モデルを削除", + "Remove Passkey": "Passkey連携解除", + "Remove Passkey?": "Passkeyを削除しますか?", "Remove rule group": "ルールグループを削除", "Remove string prefix": "文字列のプレフィックスを除去", "Remove string suffix": "文字列のサフィックスを除去", "Remove the target field": "ターゲットフィールドを削除", "Remove tier": "ティアを削除", "Removed": "削除済み", - "Removed Models ({{count}})": "削除済みモデル ({{count}})", "Removed {{removed}} duplicate key(s). Before: {{before}}, After: {{after}}": "{{removed}} 個の重複キーを削除しました。削除前:{{before}}、削除後:{{after}}", + "Removed Models ({{count}})": "削除済みモデル ({{count}})", "Removes Midjourney flags such as --fast, --relax, and --turbo from user prompts.": "ユーザー プロンプトから --fast、--relax、--turbo などの Midjourney フラグを削除します。", "Removing Passkey will require you to sign in with your password next time. You can re-register anytime.": "Passkeyを削除すると、次回からパスワードでサインインする必要があります。いつでも再登録できます。", "Rename": "名前変更", @@ -2763,19 +2955,25 @@ "Renamed successfully": "名前が正常に変更されました", "Repeat the administrator password": "管理者パスワードの再入力", "Replace": "置換", - "Replace With": "置換後", "Replace all existing keys": "既存のすべてのキーを置き換える", "Replace channel models": "チャネルモデルを置き換える", "Replace mode: Will completely replace all existing keys": "置換モード: 既存のすべてのキーを完全に置き換えます", + "Replace With": "置換後", + "replaced": "置換済み", "Replacement Model": "代替モデル", "Replica count": "レプリカ数", "Replicate": "Replicate", + "request": "リクエスト", "Request": "リクエスト", "Request Body Disk Cache": "リクエストボディのディスクキャッシュ", "Request Body Field": "リクエストボディフィールド", "Request Body Memory Cache": "リクエストボディのメモリキャッシュ", + "Request body pass-through is enabled. The request body will be sent directly to the upstream without any conversion.": "リクエストボディのパススルーが有効です。リクエストボディは変換なしで直接アップストリームに送信されます。", + "Request conversion": "リクエスト変換", "Request Conversion": "リクエスト変換", "Request Count": "リクエスト数", + "Request failed": "リクエスト失敗", + "Request flow": "リクエストフロー", "Request Header Field": "リクエストヘッダーフィールド", "Request Header Override": "リクエストヘッダー上書き", "Request Header Overrides": "リクエストヘッダーの上書き", @@ -2783,15 +2981,12 @@ "Request Limits": "リクエスト制限", "Request Model": "リクエストモデル", "Request Model:": "リクエストモデル:", - "Request body pass-through is enabled. The request body will be sent directly to the upstream without any conversion.": "リクエストボディのパススルーが有効です。リクエストボディは変換なしで直接アップストリームに送信されます。", - "Request conversion": "リクエスト変換", - "Request failed": "リクエスト失敗", - "Request flow": "リクエストフロー", "Request overrides, routing behavior, and upstream model automation": "リクエスト上書き、ルーティング動作、上流モデル自動化", "Request rule pricing": "リクエストルールの課金", "Request timed out, please refresh and restart GitHub login": "タイムアウトしました。ページをリロードして GitHub ログインをやり直してください", "Request-based": "リクエスト条件あり", "Requests per minute": "1分あたりのリクエスト数", + "requests served": "処理されたリクエスト", "Requests will be forwarded to this worker. Trailing slashes are removed automatically.": "リクエストはこのワーカーに転送されます。末尾のスラッシュは自動的に削除されます。", "Requests:": "リクエスト:", "Require email verification for new accounts": "新しいアカウントにメール認証を要求する", @@ -2806,23 +3001,23 @@ "Resend ({{seconds}}s)": "再送信 ({{seconds}}秒)", "Reset": "リセット", "Reset 2FA": "2FAをリセット", - "Reset Cycle": "リセット周期", - "Reset Passkey": "Passkeyリセット", - "Reset Period": "リセット期間", - "Reset Stats": "統計をリセット", - "Reset Two-Factor Authentication": "2要素認証のリセット", "Reset all model ratios?": "すべてのモデル比率をリセットしますか?", "Reset all settings to default values": "すべての設定をデフォルト値にリセット", "Reset at:": "リセット日時:", "Reset balance and used quota": "残高と使用済みクォータをリセット", + "Reset Cycle": "リセット周期", "Reset email sent, please check your inbox": "リセットメールを送信しました、受信箱を確認してください", "Reset failed": "リセット失敗", + "Reset Passkey": "Passkeyリセット", "Reset password": "パスワードをリセット", + "Reset Period": "リセット期間", "Reset ratios": "比率をリセット", - "Reset to Default": "デフォルトにリセット", + "Reset Stats": "統計をリセット", "Reset to default": "デフォルトにリセット", + "Reset to Default": "デフォルトにリセット", "Reset to default color": "デフォルトの色にリセット", "Reset to default configuration": "デフォルト設定にリセットしました", + "Reset Two-Factor Authentication": "2要素認証のリセット", "Resets in:": "リセットまで:", "Resolve Conflicts": "競合を解決", "Resource Configuration": "リソース設定", @@ -2837,9 +3032,9 @@ "Retry Chain": "リトライチェーン", "Retry Suggestion": "リトライ提案", "Retry Times": "再試行回数", + "Return a custom error immediately": "即座にカスタムエラーを返す", "Return Custom Error": "カスタムエラーを返す", "Return Error": "エラーを返す", - "Return a custom error immediately": "即座にカスタムエラーを返す", "Return to dashboard": "ダッシュボードに戻る", "Reveal API key": "APIキーを表示", "Reveal key": "キーを表示", @@ -2859,9 +3054,10 @@ "Routing & Overrides": "ルーティングと上書き", "Routing Strategy": "ルーティング戦略", "Rows per page": "ページあたりの行数", + "RPM": "RPM", + "RSA Private Key (Production)": "RSA秘密鍵(本番)", + "RSA Private Key (Sandbox)": "RSA秘密鍵(サンドボックス)", "Rule": "ルール", - "Rule Description (optional)": "ルール説明(任意)", - "Rule group": "ルールグループ", "Rule {{line}} is missing source field": "ルール {{line}} にソースフィールドがありません", "Rule {{line}} is missing target field": "ルール {{line}} にターゲットフィールドがありません", "Rule {{line}} is missing target path": "ルール {{line}} にターゲットパスがありません", @@ -2870,37 +3066,29 @@ "Rule {{line}} pass_headers is missing header names": "ルール {{line}} のpass_headersにヘッダー名がありません", "Rule {{line}} prune_objects is missing conditions": "ルール {{line}} のprune_objectsに条件がありません", "Rule {{line}} return_error requires a message field": "ルール {{line}} のreturn_errorにはmessageフィールドが必要です", + "Rule Description (optional)": "ルール説明(任意)", + "Rule group": "ルールグループ", + "rules": "ルール", "Rules": "ルール", "Rules JSON": "ルール JSON", "Rules JSON must be an array": "ルール JSON は配列である必要があります", "Run GC": "GC 実行", "Run tests for the selected models": "選択したモデルのテストを実行", "Running": "実行中", - "SMTP Email": "SMTPメール", - "SMTP Host": "SMTPホスト", - "SQLite stores all data in a single file. Make sure that file is persisted when running in containers.": "SQLite はすべてのデータを単一ファイルに保存します。コンテナで実行する場合は、ファイルが永続化されていることを確認してください。", - "SSRF Protection": "SSRF保護", + "s": "s", "Safety Settings": "安全設定", "Same as Local": "ローカルと同じ", "Sandbox mode": "サンドボックスモード", "Save": "保存", - "Save Backup Codes": "バックアップコードを保存", - "Save Changes": "変更を保存", - "Save Creem settings": "Creem設定を保存", - "Save Epay settings": "Epay設定を保存", - "Save Models": "モデルを保存", - "Save Preferences": "設定を保存", - "Save SMTP settings": "SMTP設定を保存", - "Save SSRF settings": "SSRF 設定を保存", - "Save Settings": "設定を保存", - "Save Stripe settings": "Stripe設定を保存", - "Save Waffo Pancake settings": "Waffo Pancake 設定を保存", - "Save Worker settings": "Worker設定を保存", "Save all settings": "すべての設定を保存", + "Save Backup Codes": "バックアップコードを保存", "Save changes": "変更を保存", + "Save Changes": "変更を保存", "Save chat settings": "チャット設定を保存", "Save check-in settings": "チェックイン設定を保存", + "Save Creem settings": "Creem設定を保存", "Save drawing settings": "描画設定を保存", + "Save Epay settings": "Epay設定を保存", "Save failed": "保存に失敗しました", "Save failed, please retry": "保存に失敗しました。もう一度お試しください", "Save general settings": "一般設定を保存", @@ -2908,23 +3096,33 @@ "Save io.net settings": "io.net設定を保存", "Save log settings": "ログ設定を保存", "Save model ratios": "モデル比率を保存", + "Save Models": "モデルを保存", "Save monitoring rules": "監視ルールを保存", "Save navigation": "ナビゲーションを保存", "Save notice": "通知を保存", + "Save Preferences": "設定を保存", "Save rate limits": "レート制限を保存", "Save sensitive words": "敏感な言葉を保存", + "Save Settings": "設定を保存", "Save sidebar modules": "サイドバーモジュールを保存", + "Save SMTP settings": "SMTP設定を保存", + "Save SSRF settings": "SSRF 設定を保存", + "Save Stripe settings": "Stripe設定を保存", "Save these backup codes in a safe place. Each code can only be used once.": "これらのバックアップコードを安全な場所に保存してください。各コードは一度だけ使用できます。", "Save these codes in a safe place. Each code can only be used once.": "これらのコードを安全な場所に保存してください。各コードは一度だけ使用できます。", "Save tool prices": "ツール価格を保存", + "Save Waffo Pancake settings": "Waffo Pancake 設定を保存", + "Save Worker settings": "Worker設定を保存", "Saved successfully": "保存しました", "Saving...": "保存中...", "Scan QR Code": "QRコードをスキャン", "Scan the QR code to follow the official account and reply with “验证码” to receive your verification code.": "公式アカウントのQRコードを読み取り、「验证码」と返信して認証コードを受け取ってください。", "Scan the QR code with WeChat to bind your account": "WeChatでQRコードをスキャンしてアカウントをバインド", "Scan this QR code with your authenticator app (Google Authenticator, Microsoft Authenticator, etc.)": "このQRコードを認証アプリ(Google Authenticator、Microsoft Authenticatorなど)でスキャンしてください。", + "Scanline": "スキャンライン", "Scenario Templates": "シナリオテンプレート", "Scheduled channel tests": "スケジュールされたチャネルテスト", + "scheduling controls": "スケジューリング制御", "Scope": "スコープ", "Scopes": "スコープ", "Search": "検索", @@ -2952,19 +3150,15 @@ "Search tags...": "タグを検索...", "Search vendors...": "ベンダーを検索...", "Search...": "検索...", - "Secret Key": "シークレットキー", + "seconds": "秒", "Secret env (JSON object)": "シークレット env (JSON オブジェクト)", "Secret environment variables (JSON)": "シークレット環境変数(JSON)", + "Secret Key": "シークレットキー", "Secure & Reliable": "セキュア&信頼性", "Security": "セキュリティ", "Security Check": "セキュリティチェック", "Security verification": "セキュリティ確認", "Select": "選択", - "Select All Visible": "表示中のすべてを選択", - "Select Language": "言語を選択", - "Select Model": "モデルを選択", - "Select Sync Channels": "同期チャネルを選択", - "Select Sync Source": "同期元を選択", "Select a color": "色を選択", "Select a group": "グループを選択", "Select a group type": "グループタイプを選択", @@ -2977,6 +3171,7 @@ "Select all": "すべて選択", "Select all (filtered)": "フィルタ結果をすべて選択(S)", "Select all models": "すべてのモデルを選択", + "Select All Visible": "表示中のすべてを選択", "Select an operation mode and enter the amount": "操作モードを選択し、金額を入力してください", "Select announcement type": "アナウンスメントタイプを選択", "Select at least one field to overwrite.": "上書きするフィールドを少なくとも 1 つ選択してください。", @@ -2994,8 +3189,10 @@ "Select items...": "項目を選択...", "Select key format": "キーフォーマットを選択", "Select language": "言語を選択", + "Select Language": "言語を選択", "Select layout style": "レイアウトスタイルを選択", "Select locations": "ロケーションを選択", + "Select Model": "モデルを選択", "Select models (empty for allow all)": "モデルを選択 (すべて許可する場合は空)", "Select models and apply to channel models list.": "モデルを選択し、チャンネルモデルリストに適用します。", "Select models or add custom ones": "モデルを選択するか、カスタムモデルを追加", @@ -3013,14 +3210,18 @@ "Select site direction": "サイトの方向を選択", "Select start time": "開始時間を選択", "Select subscription plan": "サブスクリプションプランを選択", + "Select Sync Channels": "同期チャネルを選択", "Select sync channels to compare prices": "価格比較のために同期チャンネルを選択してください", "Select sync channels to compare ratios": "比率を比較するために同期チャネルを選択", + "Select Sync Source": "同期元を選択", "Select the API endpoint region": "APIエンドポイントのリージョンを選択", "Select the fields you want to overwrite with upstream data. Unselected fields keep their local values.": "アップストリームデータで上書きしたいフィールドを選択してください。選択されていないフィールドはローカル値を保持します。", "Select theme preference": "テーマの好みを選択", "Select time granularity": "時間の粒度を選択", "Select vendor": "ベンダーを選択", "Selectable groups": "選択可能なグループ", + "selected": "選択済み", + "selected channel(s). Leave empty to remove tag.": "選択されたチャンネル。タグを削除するには空のままにしてください。", "Selected conflicts were overwritten successfully.": "選択した競合が正常に上書きされました。", "Self-Use Mode": "セルフユースモード", "Send": "送信", @@ -3033,26 +3234,26 @@ "Server Address": "サーバーURL", "Server IP": "サーバー IP", "Server Log Management": "サーバーログ管理", - "Server Token": "サーバートークン", "Server logging is not enabled (log directory not configured)": "サーバーログが有効になっていません(ログディレクトリが未設定)", + "Server Token": "サーバートークン", "Service account JSON file(s)": "サービスアカウントJSONファイル", "Session expired!": "セッションが期限切れです!", "Session expired?": "セッションが期限切れになりましたか?", "Set": "設定", - "Set API key access restrictions": "API キーのアクセス制限を設定", - "Set API key basic information": "API キーの基本情報を設定", - "Set Field": "フィールドを設定", - "Set Header": "ヘッダーを設定", - "Set Project to io.cloud when creating/selecting key": "キーを作成/選択する際にプロジェクトを io.cloud に設定", - "Set Request Header": "リクエストヘッダーを設定", - "Set Tag": "タグを設定", "Set a discount rate for a specific recharge amount threshold.": "特定のチャージ金額のしきい値に対して割引率を設定します。", "Set a secure password (min. 8 characters)": "安全なパスワードを設定してください (最低8文字)", "Set a tag for": "のタグを設定", + "Set API key access restrictions": "API キーのアクセス制限を設定", + "Set API key basic information": "API キーの基本情報を設定", + "Set Field": "フィールドを設定", "Set filters to customize your dashboard statistics and charts.": "ダッシュボードの統計とグラフをカスタマイズするためにフィルターを設定します。", "Set filters to narrow down your log search results.": "ログ検索結果を絞り込むためにフィルターを設定します。", + "Set Header": "ヘッダーを設定", + "Set Project to io.cloud when creating/selecting key": "キーを作成/選択する際にプロジェクトを io.cloud に設定", "Set quota amount and limits": "クォータ量と制限を設定", + "Set Request Header": "リクエストヘッダーを設定", "Set runtime request header: override entire value, or manipulate comma-separated tokens": "ランタイムリクエストヘッダーを設定:値全体を上書き、またはカンマ区切りトークンを操作", + "Set Tag": "タグを設定", "Set tag for selected channels": "選択したチャネルにタグを設定", "Set the language used across the interface": "インターフェースで使用する言語を設定します", "Set the user's role (cannot be Root)": "ユーザーのロールを設定します(Rootにはできません)", @@ -3076,12 +3277,13 @@ "Show token usage statistics in the UI": "UIでトークン使用統計を表示", "Showcase core capabilities with demo credentials and limited access.": "デモ用の認証情報と制限付きアクセスでコア機能を紹介します。", "Showing": "表示", + "showing •": "表示中 •", "Sidebar": "サイドバー", - "Sidebar Personal Settings": "サイドバー個人設定", "Sidebar collapsed by default for new users": "新規ユーザー向けにサイドバーをデフォルトで折りたたむ", "Sidebar modules": "サイドバーモジュール", - "Sign In": "ログイン", + "Sidebar Personal Settings": "サイドバー個人設定", "Sign in": "ログイン", + "Sign In": "ログイン", "Sign in with Passkey": "Passkeyでログイン", "Sign out": "ログアウト", "Sign up": "サインアップ", @@ -3098,6 +3300,7 @@ "Single Key": "単一キー", "Site Key": "サイトキー", "Size:": "サイズ:", + "sk_xxx or rk_xxx": "sk_xxx または rk_xxx", "Skip retry on failure": "失敗時にリトライしない", "Skip to Main": "メインコンテンツへスキップ", "Slow": "Slow", @@ -3106,6 +3309,11 @@ "Slug is required": "スラッグは必須です", "Slug must be less than 100 characters": "スラッグは100文字以内にしてください", "Smallest USD amount users can recharge (Epay)": "ユーザーがチャージできる最小USD金額 (Epay)", + "SMTP Email": "SMTPメール", + "SMTP Host": "SMTPホスト", + "smtp.example.com": "smtp.example.com", + "socks5://user:pass@host:port": "socks5://user:pass@host:port", + "Soft": "ソフト", "Soft Errors": "ソフトエラー", "Solid": "Solid", "Solid Color": "Solid Color", @@ -3114,22 +3322,27 @@ "Sonnet Model": "Sonnet モデル", "Sora": "Sora", "Sort": "並べ替え", - "Sort Order": "並び順", "Sort by ID": "IDでソート", + "Sort Order": "並び順", "Source": "ソース", "Source Endpoint": "ソースエンドポイント", "Source Field": "コピー元フィールド", "Source Header": "コピー元ヘッダー", + "sources": "ソース", "Space-separated OAuth scopes": "スペース区切りのOAuthスコープ", "Spark model version, e.g., v2.1 (version number in API URL)": "Sparkモデルバージョン(例:v2.1、API URLのバージョン番号)", "Special billing expression": "特殊な課金式", "Special usable group rules": "特別な使用可能グループルール", "Speed": "Speed", + "Spotlight": "スポットライト", + "SQLite stores all data in a single file. Make sure that file is persisted when running in containers.": "SQLite はすべてのデータを単一ファイルに保存します。コンテナで実行する場合は、ファイルが永続化されていることを確認してください。", + "SSRF Protection": "SSRF保護", "Standard": "標準", "Start": "開始", - "Start Time": "開始時間", "Start a conversation to see messages here": "会話を開始すると、ここにメッセージが表示されます", + "Start color": "開始色", "Start for free with generous limits. No credit card required.": "豊富な無料枠で始められます。クレジットカードは不要です。", + "Start Time": "開始時間", "Static Gradient": "Static Gradient", "Static page describing the platform.": "プラットフォームを説明する静的ページ。", "Statistical count": "統計数", @@ -3150,6 +3363,7 @@ "Store ID": "ストア ID", "Store ID is required": "ストア ID は必須です", "Stored value is not echoed back for security": "セキュリティのため、保存済みの値は表示されません", + "stream": "ストリーム", "Stream": "ストリーム", "Stream Mode": "ストリーミングモード", "Stream Status": "ストリーム状態", @@ -3161,9 +3375,9 @@ "Stripe product price ID": "Stripe製品価格ID", "Stripe/Creem requires creating products on the third-party platform and entering the ID": "Stripe/Creem はサードパーティプラットフォームで商品を作成し、IDを入力する必要があります", "Submit": "送信", + "Submit directly": "直接送信", "Submit Result": "結果を送信", "Submit Time": "送信時刻", - "Submit directly": "直接送信", "Submitted": "送信済み", "Submitting": "送信中", "Submitting...": "送信中...", @@ -3177,6 +3391,7 @@ "Subscription Plans": "サブスクリプションプラン", "Subtract": "減算", "Success": "成功", + "Success Soft": "ソフト成功", "Successfully created {{count}} API Key(s)": "{{count}}個のAPIキーが正常に作成されました", "Successfully created {{count}} redemption codes": "{{count}}件の引き換えコードが正常に作成されました", "Successfully deleted {{count}} API key(s)": "{{count}}個のAPIキーが正常に削除されました", @@ -3191,9 +3406,9 @@ "Support for high concurrency with automatic load balancing": "自動ロードバランシングによる高並行性のサポート", "Supported Imagine Models": "対応Imagineモデル", "Supported variables": "サポートされる変数", + "Supports `-thinking`, `-thinking-": "「-thinking」、「-thinking-」をサポートします", "Supports HTML markup or iframe embedding. Enter HTML code directly, or provide a complete URL to automatically embed it as an iframe.": "HTMLマークアップまたはiframe埋め込みをサポートします。HTMLコードを直接入力するか、完全なURLを提供してiframeとして自動的に埋め込みます。", "Supports PNG, JPG, SVG, or WebP. Recommended size: 128×128 or smaller.": "PNG、JPG、SVG、WebPに対応。推奨サイズ: 128×128以下。", - "Supports `-thinking`, `-thinking-": "「-thinking」、「-thinking-」をサポートします", "Swap Face": "顔入れ替え", "Switch affinity on success": "成功時にアフィニティを切替", "Switch between the new frontend and the classic frontend. Changes take effect after page reload.": "新フロントエンドとクラシックフロントエンドを切り替えます。保存後、ページを再読み込みすると反映されます。", @@ -3202,39 +3417,35 @@ "Sync Endpoint": "同期エンドポイント", "Sync Endpoints": "同期エンドポイント", "Sync Fields": "フィールド同期", - "Sync Upstream": "アップストリームを同期", - "Sync Upstream Models": "アップストリームモデルを同期", "Sync from the public upstream metadata repository.": "公開上流メタデータリポジトリから同期します。", "Sync this model with official upstream": "このモデルを公式アップストリームと同期", + "Sync Upstream": "アップストリームを同期", + "Sync Upstream Models": "アップストリームモデルを同期", "Synchronize models and vendors from an upstream source": "アップストリームソースからモデルとベンダーを同期", "Syncing prices, please wait...": "価格を同期中、しばらくお待ちください...", "System": "システム", "System Administration": "システム管理", "System Announcements": "システムのお知らせ", "System Behavior": "システムの動作", + "System data statistics": "システムデータ統計", "System Information": "システム情報", + "System initialized successfully! Redirecting…": "システムが正常に初期化されました!リダイレクト中…", + "System logo": "システムロゴ", + "System maintenance": "システムメンテナンス", "System Memory": "システムメモリ", "System Memory Stats": "システムメモリ統計", "System Name": "システム名称", + "System name is required": "システム名は必須です", "System Notice": "システムからのお知らせ", "System Performance Monitoring": "システムパフォーマンス監視", "System Prompt": "システムプロンプト", "System Prompt Concatenation": "システムプロンプトの連結", "System Prompt Override": "システムプロンプト上書き", - "System Settings": "システム設定", - "System Version": "システムバージョン", - "System data statistics": "システムデータ統計", - "System initialized successfully! Redirecting…": "システムが正常に初期化されました!リダイレクト中…", - "System logo": "システムロゴ", - "System maintenance": "システムメンテナンス", - "System name is required": "システム名は必須です", "System settings": "システム設定", + "System Settings": "システム設定", "System setup wizard": "システムセットアップウィザード", "System task records": "システムタスク記録", - "TPM": "TPM", - "TTL": "TTL", - "TTL (seconds)": "TTL(秒)", - "TTL (seconds, 0 = default)": "TTL(秒、0 = デフォルト)", + "System Version": "システムバージョン", "Table view": "テーブル表示", "Tag": "タグ", "Tag Aggregate": "タグ集計", @@ -3249,19 +3460,19 @@ "Target Endpoint": "ターゲットエンドポイント", "Target Field": "コピー先フィールド", "Target Field Path": "ターゲットフィールドパス", + "Target group": "ターゲットグループ", "Target Header": "コピー先ヘッダー", "Target Path (optional)": "ターゲットパス(任意)", - "Target group": "ターゲットグループ", "Task": "タスク", "Task ID": "タスクID", "Task ID:": "タスクID:", - "Task Logs": "タスク履歴", "Task logs": "タスクログ", + "Task Logs": "タスク履歴", "Team Collaboration": "チームコラボレーション", "Technical Support": "テクニカルサポート", "Telegram": "Telegram", - "Telegram Login Widget": "Telegramログインウィジェット", "Telegram login requires widget integration; coming soon": "Telegramログインにはウィジェット統合が必要です;近日公開", + "Telegram Login Widget": "Telegramログインウィジェット", "Template": "テンプレート", "Template variables:": "テンプレート変数:", "Templates": "テンプレート", @@ -3271,17 +3482,16 @@ "Test All Channels": "すべてのチャネルをテスト", "Test Channel Connection": "チャネル接続をテスト", "Test Connection": "接続をテスト", + "Test connectivity for:": "接続性をテスト:", + "Test interval (minutes)": "テスト間隔(分)", "Test Latency": "レイテンシをテスト", "Test Mode": "テストモード", "Test Model": "モデルをテスト", - "Test connectivity for:": "接続性をテスト:", - "Test interval (minutes)": "テスト間隔(分)", "Testing all enabled channels started. Please refresh to see results.": "有効な全チャネルのテストを開始しました。結果を確認するにはページを更新してください。", "Testing...": "テスト中...", "Text Input": "テキスト入力", "Text Output": "テキスト出力", "Text to Video": "テキストから動画", - "The URL for this chat client.": "このチャットクライアントのURL。", "The administrator account is already initialized. You can keep your existing credentials and continue to the next step.": "管理者アカウントはすでに初期化されています。既存の認証情報を保持して、次のステップに進むことができます。", "The administrator configured an external link for this document.": "管理者がこのドキュメントの外部リンクを設定しました。", "The administrator has not configured a privacy policy yet.": "管理者がまだプライバシーポリシーを設定していません。", @@ -3304,6 +3514,7 @@ "The token group that will have a custom ratio": "カスタム比率を持つトークングループ", "The unique identifier for this model": "このモデルの一意の識別子", "The unique name for this vendor": "このベンダーの一意の名前", + "The URL for this chat client.": "このチャットクライアントのURL。", "Theme": "テーマ", "Theme Color": "テーマカラー", "Theme Settings": "テーマ設定", @@ -3312,8 +3523,8 @@ "These toggles affect whether certain request fields are passed through to the upstream provider.": "これらの切り替えは、特定の要求フィールドがアップストリームプロバイダーに渡されるかどうかに影響します。", "Thinking Adapter": "思考アダプター", "Thinking to Content": "思考からコンテンツへ", - "Third-party Payment Config": "サードパーティ決済設定", "Third-party account bindings (read-only, managed by user in profile settings)": "サードパーティアカウントのバインディング(読み取り専用、プロファイル設定でユーザーが管理)", + "Third-party Payment Config": "サードパーティ決済設定", "This action cannot be undone.": "この操作は元に戻せません。", "This action cannot be undone. This will permanently delete your account and remove all your data from our servers.": "この操作は元に戻せません。これにより、あなたのアカウントは完全に削除され、すべてのデータがサーバーから削除されます。", "This action will permanently remove 2FA protection from your account.": "この操作により、アカウントから2FA保護が完全に削除されます。", @@ -3330,10 +3541,13 @@ "This model has both fixed price and ratio billing conflicts": "このモデルには固定価格と比率請求の両方の競合があります", "This model is not available in any group, or no group pricing information is configured.": "このモデルはどのグループでも利用できないか、グループの料金情報が設定されていません。", "This month": "今月", + "This notification preset uses fixed colors. Switch to an animation preset to customize colors.": "この通知プリセットは固定色を使用します。色をカスタマイズするにはアニメーションプリセットに切り替えてください。", "This page has not been created yet.": "このページはまだ作成されていません。", "This project must be used in compliance with the": "このプロジェクトは、以下を遵守して使用する必要があります", "This record was written by a pre-upgrade instance and lacks audit info. Upgrade the instance to record server IP, callback IP, payment method and system version.": "古いバージョンのインスタンスがこの記録を書き込み、監査情報がありません。最新に更新し、サーバーIP・コールバックIP・支払方法・OSバージョンの記録を有効にしてください。", "This site currently has {{count}} models enabled": "このサイトでは現在 {{count}} 個のモデルが有効です", + "this token group": "このトークングループ", + "this user group": "このユーザーグループ", "This user has no bindings": "このユーザーには連携がありません", "This week": "今週", "This will append 2 template rules (Codex CLI and Claude CLI) to the existing rule list.": "既存のルールリストに2つのテンプレートルール(Codex CLIとClaude CLI)を追加します。", @@ -3361,12 +3575,18 @@ "Time:": "時間:", "Timed cache (1h)": "有効期限付きキャッシュ(1h)", "Timeline": "タイムライン", + "times": "回", "Timing": "所要時間", "Tip: The generated key is a JSON credential including access_token / refresh_token / account_id.": "ヒント:生成されたキーは access_token / refresh_token / account_id を含むJSON認証情報です。", + "to access this resource.": "このリソースにアクセスするには。", + "to confirm": "確認する", "To Lower": "小文字に変換", "To Lowercase": "小文字化", + "to override billing when a user in one group uses a token of another group.": "あるグループのユーザーが別のグループのトークンを使用する場合に、請求を上書きするため。", + "to the Models list so users can use them before the mapping sends traffic upstream.": "マッピングがトラフィックをアップストリームに送信する前にユーザーが使用できるように、モデルリストに追加します。", "To Upper": "大文字に変換", "To Uppercase": "大文字化", + "to view this resource.": "このリソースを表示するには。", "Today": "今日", "Toggle columns": "列の切り替え", "Toggle navigation menu": "ナビゲーションメニューの切り替え", @@ -3376,15 +3596,16 @@ "Token Breakdown": "トークン内訳", "Token Endpoint": "トークンエンドポイント", "Token Endpoint (Optional)": "トークンエンドポイント (オプション)", + "Token estimator": "トークン見積り", + "Token management": "トークン管理", "Token Management": "トークン管理", "Token Mgmt": "トークン管理", "Token Name": "トークン名", - "Token estimator": "トークン見積り", - "Token management": "トークン管理", "Token obtained from your Gotify application": "Gotifyアプリケーションから取得したトークン", "Token regenerated and copied to clipboard": "トークンが再生成され、クリップボードにコピーされました", "Token unit": "トークン単位", "Token-based": "トークンベース", + "tokens": "トークン", "Tokens": "トークン", "Tokens Only": "トークンのみ", "Tokens per minute": "1分あたりのトークン", @@ -3393,60 +3614,65 @@ "Tool identifier": "ツールID", "Tool price settings": "ツール価格設定", "Tool prices": "ツール価格", + "Top {{count}}": "上位 {{count}}", "Top Models": "トップモデル", - "Top Users": "上位ユーザー", "Top up balance and view billing history.": "残高をチャージし、請求履歴を確認。", - "Top {{count}}": "上位 {{count}}", - "Top-Up Link": "チャージリンク", + "Top Users": "上位ユーザー", "Top-up": "チャージ", - "Top-up Audit Info": "入金の監査情報", "Top-up amount options": "トップアップ金額オプション", + "Top-up Audit Info": "入金の監査情報", "Top-up group ratios": "トップアップグループ比率", + "Top-Up Link": "チャージリンク", + "top-up ratio": "チャージ倍率", "Topup Amount": "チャージ額", "Total": "合計", "Total Allocated": "総割り当て", - "Total Cost": "総コスト", - "Total Count": "合計数", - "Total Earned": "総収益", - "Total GPUs": "合計 GPU", - "Total Log Size": "ログ合計サイズ", - "Total Quota": "合計クォータ", - "Total Tokens": "合計トークン", - "Total Usage": "総使用量", "Total check-ins": "総チェックイン数", "Total consumed": "合計消費量", "Total consumed quota": "合計消費クォータ", "Total cost": "総費用", + "Total Cost": "総コスト", + "Total Count": "合計数", "Total earned": "总收入", + "Total Earned": "総収益", + "Total GPUs": "合計 GPU", "Total invitation revenue": "招待による総収益", + "Total Log Size": "ログ合計サイズ", + "Total Quota": "合計クォータ", "Total requests allowed per period. 0 = unlimited.": "期間ごとに許可されるリクエストの総数。0 = 無制限。", "Total requests made": "合計リクエスト数", + "Total Tokens": "合計トークン", + "Total Usage": "総使用量", "Total:": "合計:", + "TPM": "TPM", "Track per-request consumption to power usage analytics. Keeping this on increases database writes.": "リクエストごとの消費を追跡し、使用状況分析に利用します。これをオンにすると、データベースへの書き込みが増加します。", "Track usage, costs and performance with real-time analytics": "リアルタイム分析で使用量、コスト、パフォーマンスを追跡", "Tracks current account base limits and additional metered usage on Codex upstream.": "Codex 上でのアカウント基礎枠と追加従量の利用量を表示します。", "Transfer": "振替", "Transfer Amount": "振替金額", - "Transfer Rewards": "報酬の振替", "Transfer failed": "転送に失敗しました", + "Transfer Rewards": "報酬の振替", "Transfer successful": "転送が成功しました", "Transfer to Balance": "残高への振替", "Translate `-thinking` suffixes into Anthropic native thinking models while keeping pricing predictable.": "`-thinking` サフィックスをAnthropicネイティブの思考モデルに変換し、価格設定を予測可能に保ちます。", "Transparent Billing": "透明性のある請求", + "Trim leading/trailing whitespace": "先頭/末尾の空白を除去", "Trim Prefix": "プレフィックス削除", "Trim Space": "空白削除", "Trim Suffix": "サフィックス削除", - "Trim leading/trailing whitespace": "先頭/末尾の空白を除去", "Trusted": "信頼済み", "Try adjusting your search to locate a missing model.": "見つからないモデルを見つけるには、検索を調整してみてください。", + "TTL": "TTL", + "TTL (seconds, 0 = default)": "TTL(秒、0 = デフォルト)", + "TTL (seconds)": "TTL(秒)", "Tune selection priority, testing, status handling, and request overrides.": "選択優先度、テスト、ステータス処理、リクエスト上書きを調整します。", "Turnstile is enabled but site key is empty.": "Turnstile が有効ですが、サイトキーが空です。", - "Two-Factor Authentication": "2要素認証", - "Two-Step Verification": "2段階認証", "Two-factor Authentication": "2要素認証", + "Two-Factor Authentication": "2要素認証", "Two-factor authentication disabled": "二要素認証が無効になりました", "Two-factor authentication enabled successfully!": "二要素認証が正常に有効化されました!", "Two-factor authentication reset": "二要素認証がリセットされました", + "Two-Step Verification": "2段階認証", "Type": "タイプ", "Type (common)": "タイプ(共通)", "Type *": "タイプ *", @@ -3454,11 +3680,6 @@ "Type-Specific Settings": "タイプ固有の設定", "Type:": "タイプ:", "UI granularity only — data is still aggregated hourly": "UIの粒度のみ — データは引き続き時間単位で集計されます", - "URL": "URL", - "URL is required": "URL は必須です", - "URL to your logo image (optional)": "ロゴ画像のURL (オプション)", - "USD": "USD", - "USD Exchange Rate": "USD 為替レート", "Unable to estimate price for this deployment.": "このデプロイメントの価格を推定できません。", "Unable to generate chat link. Please contact your administrator.": "チャットリンクを生成できません。管理者にご連絡ください。", "Unable to load groups": "グループをロードできません", @@ -3473,8 +3694,8 @@ "Unexpected release payload": "予期しないリリースデータ", "Unified API Gateway for": "統合APIゲートウェイ -", "Unique identifier for this group.": "このグループの一意の識別子。", - "Unit price (USD)": "単価 (USD)", "Unit price (local currency / USD)": "単価 (現地通貨 / USD)", + "Unit price (USD)": "単価 (USD)", "Unit price must be greater than 0": "単価は 0 より大きい必要があります", "Units per USD": "USDあたりのユニット数", "Unknown": "不明", @@ -3487,19 +3708,19 @@ "Untrusted upstream data:": "信頼されていないアップストリームデータ:", "Unused": "未使用", "Update": "更新", - "Update API Key": "API キーを更新", "Update All Balances": "すべての残高を更新", + "Update API Key": "API キーを更新", "Update Balance": "残高を更新", - "Update Channel": "チャネルを更新", - "Update Model": "モデルを更新", - "Update Provider": "プロバイダーを更新", - "Update Redemption Code": "引き換えコードを更新", "Update balance for:": "残高を更新:", + "Update Channel": "チャネルを更新", "Update channel configuration and click save when you're done.": "チャネル設定を更新し、完了したら保存をクリックしてください。", "Update configuration": "設定を更新", "Update failed": "更新に失敗しました", + "Update Model": "モデルを更新", "Update model configuration and click save when you're done.": "モデル設定を更新し、完了したら保存をクリックしてください。", "Update plan info": "プラン情報を更新", + "Update Provider": "プロバイダーを更新", + "Update Redemption Code": "引き換えコードを更新", "Update succeeded": "更新に成功しました", "Update the API key by providing necessary info.": "必要な情報を提供して API キーを更新してください。", "Update the configuration for this custom OAuth provider.": "このカスタムOAuthプロバイダーの設定を更新します。", @@ -3525,48 +3746,62 @@ "Upstream Model Detection Settings": "アップストリームモデル検出設定", "Upstream Model Update Check": "アップストリームモデル更新チェック", "Upstream Model Updates": "上流モデルの更新", - "Upstream Response": "アップストリームレスポンス", - "Upstream Updates": "アップストリーム更新", "Upstream model updates applied: {{added}} added, {{removed}} removed, {{ignored}} ignored this time, {{totalIgnored}} total ignored models": "上流モデル更新を処理しました:{{added}} 個追加、{{removed}} 個削除、今回 {{ignored}} 個無視、合計 {{totalIgnored}} 個の無視モデル", "Upstream price sync": "アップストリーム価格同期", "Upstream prices fetched successfully": "上流価格を正常に取得しました", "Upstream ratios fetched successfully": "アップストリーム比率が正常に取得されました", + "Upstream Response": "アップストリームレスポンス", + "upstream services integrated": "アップストリームサービス連携", + "Upstream Updates": "アップストリーム更新", + "uptime": "稼働時間", "Uptime": "稼働時間", "Uptime Kuma": "稼働時間Kuma", - "Uptime Kuma URL": "稼働時間KUMA URL", "Uptime Kuma groups saved successfully": "Uptime Kuma グループが正常に保存されました", + "Uptime Kuma URL": "稼働時間KUMA URL", "Uptime since": "稼働開始日時", + "URL": "URL", + "URL is required": "URL は必須です", + "URL to your logo image (optional)": "ロゴ画像のURL (オプション)", "Usage": "使用量", - "Usage Logs": "利用履歴", "Usage logs": "使用ログ", + "Usage Logs": "利用履歴", "Usage mode": "利用モード", "Usage-based": "使用量ベース", - "Use Passkey to sign in without entering your password.": "パスワードを入力せずにサインインするには、パスキーを使用してください。", + "USD": "USD", + "USD Exchange Rate": "USD 為替レート", "Use a compatible browser or device with biometric authentication or a security key to register a Passkey.": "生体認証またはセキュリティキーを備えた互換性のあるブラウザまたはデバイスを使用して、パスキーを登録してください。", "Use authenticator code": "認証コードを使用", "Use backup code": "バックアップコードを使用", "Use disk cache when request body exceeds this size": "リクエストボディがこのサイズを超えた場合にディスクキャッシュを使用", "Use our unified OpenAI-compatible endpoint in your applications": "アプリケーションでOpenAI互換の統一エンドポイントを使用", + "Use Passkey to sign in without entering your password.": "パスワードを入力せずにサインインするには、パスキーを使用してください。", "Use secure connection when sending emails": "メール送信時に安全な接続を使用する", "Use sidebar shortcut": "サイドバーのショートカットを使用", "Use this token for API authentication": "API認証にはこのトークンを使用してください", "Use your Passkey": "パスキーを使用", + "used": "使用済み", "Used": "使用済み", "Used / Remaining": "使用済み / 残り", - "Used Quota": "使用済みクォータ", "Used for load balancing. Higher weight = more requests": "ロードバランシングに使用されます。重みが高いほどリクエスト数が増えます", "Used in URLs and API routes": "URLとAPIルートで使用されます", + "Used Quota": "使用済みクォータ", "Used to authenticate with io.net deployment API": "io.net デプロイ API の認証に使用します", "Used to authenticate with the worker. Leave blank to keep the existing secret.": "ワーカーの認証に使用されます。既存のシークレットを保持するには、空欄のままにしてください。", "Used:": "使用済み:", "User": "ユーザー", + "User {{id}}": "ユーザー {{id}}", "User Agreement": "ユーザー利用規約", "User Analytics": "ユーザー統計", "User Consumption Ranking": "ユーザー消費ランキング", "User Consumption Trend": "ユーザー消費トレンド", + "User created successfully": "ユーザーの作成に成功しました", + "User dashboard and quota controls.": "ユーザーダッシュボードとクォータ制御。", "User Exclusive Ratio": "専用倍率", "User Group": "ユーザーグループ", + "User group name": "ユーザーグループ名", "User Group: {{ratio}}x": "ユーザーグループ:{{ratio}}x", + "User groups that can access channels with this tag": "このタグを持つチャンネルにアクセスできるユーザーグループ", + "User groups that can access this channel. ": "このチャネルにアクセスできるユーザグループ。", "User ID": "ユーザー ID", "User ID Field": "ユーザーIDフィールド", "User ID:": "ユーザーID:", @@ -3574,41 +3809,37 @@ "User Info Endpoint (Optional)": "ユーザー情報エンドポイント(オプション)", "User Information": "ユーザー情報", "User Menu": "ユーザーメニュー", - "User Subscription Management": "ユーザーサブスクリプション管理", - "User Verification": "ユーザー認証", - "User created successfully": "ユーザーの作成に成功しました", - "User dashboard and quota controls.": "ユーザーダッシュボードとクォータ制御。", - "User group name": "ユーザーグループ名", - "User groups that can access channels with this tag": "このタグを持つチャンネルにアクセスできるユーザーグループ", - "User groups that can access this channel. ": "このチャネルにアクセスできるユーザグループ。", "User personal functions": "ユーザー個人機能", + "User Subscription Management": "ユーザーサブスクリプション管理", "User updated successfully": "ユーザーの更新に成功しました", - "User {{id}}": "ユーザー {{id}}", + "User Verification": "ユーザー認証", "User-Agent include (one per line)": "User-Agent include(1行に1つ)", "Username": "ユーザー名", - "Username Field": "ユーザー名フィールド", "Username confirmation does not match": "ユーザー名の確認が一致しません", + "Username Field": "ユーザー名フィールド", "Username or Email": "ユーザー名またはメールアドレス", "Users": "ユーザー", "Users call the model on the left. The platform forwards the request to the upstream model on the right.": "ユーザーは左側のモデルを呼び出します。プラットフォームはリクエストを右側のアップストリームモデルに転送します。", "Users must wait for a successful drawing before upscales or variations.": "アップスケールやバリエーションを行う前に、ユーザーは成功した描画を待つ必要があります。", - "VIP users with premium access": "プレミアムアクセス権を持つVIPユーザー", + "uses": "使用回数", "Validity": "有効期間", "Validity Period": "有効期間", "Value": "値", "Value (supports JSON or plain text)": "値(JSONまたはプレーンテキスト対応)", - "Value Regex": "Value 正規表現", "Value must be at least 0": "値は 0 以上である必要があります", + "Value Regex": "Value 正規表現", + "variable": "変数", + "variable) *": "変数) *", "Variables": "変数", "Vary": "バリエーション", "Vary (Strong)": "バリエーション(強)", "Vary (Subtle)": "バリエーション(微)", "Vendor": "ベンダー", - "Vendor Name *": "ベンダー名 *", "Vendor deleted successfully": "ベンダーが正常に削除されました", + "Vendor Name *": "ベンダー名 *", "Vendor:": "ベンダー:", - "Verification Code": "認証コード", "Verification code": "確認コード", + "Verification Code": "認証コード", "Verification code must be 6 digits": "認証コードは6桁である必要があります", "Verification code sent! Please check your email.": "認証コードを送信しました!メールを確認してください。", "Verification code updates every 30 seconds.": "認証コードは 30 秒ごとに更新されます。", @@ -3617,18 +3848,17 @@ "Verification is not configured properly": "認証が正しく設定されていません", "Verification required to reveal the saved key.": "保存されたキーを表示するには、認証が必要です。", "Verify": "認証", - "Verify Setup": "設定を確認", "Verify and Sign In": "確認してサインイン", + "Verify Setup": "設定を確認", "Verify your database connection": "データベース接続を確認", "Version Overrides": "バージョンオーバーライド", "Vertex AI": "Vertex AI", - "Vertex AI Key Format": "Vertex AIキー形式", "Vertex AI does not support functionResponse.id. Enable this to remove the field automatically.": "Vertex AI は functionResponse.id フィールドをサポートしません。有効にすると自動的に削除します。", + "Vertex AI Key Format": "Vertex AIキー形式", "Video": "動画", "Video Remix": "動画 Remix", "Vidu": "Vidu", "View": "表示", - "View Pricing": "価格を見る", "View all currently available models": "現在利用可能なすべてのモデルを表示", "View and manage your API usage logs": "API使用ログの表示と管理", "View and manage your drawing logs": "描画ログの表示と管理", @@ -3641,6 +3871,7 @@ "View mode": "表示モード", "View model call count analytics and charts": "モデル呼び出し回数の分析とグラフを表示", "View model statistics and charts": "モデルの統計とグラフを表示", + "View Pricing": "価格を見る", "View the complete details for this": "この", "View the complete details for this log entry": "このログエントリの完全な詳細を表示", "View the complete error message and details": "エラーメッセージと詳細を表示", @@ -3649,18 +3880,20 @@ "View user consumption statistics and charts": "ユーザー消費統計とチャートを表示", "View your topup transaction records and payment history": "チャージ取引記録と支払い履歴を表示", "Violation Code": "違反コード", + "Violation deduction amount": "違反控除金額", "Violation Fee": "違反料金", "Violation Marker": "違反マーカー", - "Violation deduction amount": "違反控除金額", + "vip": "vip", + "VIP users with premium access": "プレミアムアクセス権を持つVIPユーザー", "Visit Settings → General and adjust quota options...": "「設定」→「一般」にアクセスして、クォータオプションを調整してください...", "Visitors must authenticate before accessing the pricing directory.": "訪問者は料金ディレクトリにアクセスする前に認証を行う必要があります。", "Visual": "ビジュアル", - "Visual Editor": "ビジュアルエディタ", - "Visual Mode": "ビジュアルモード", - "Visual Parameter Override": "パラメータ上書きのビジュアル編集", "Visual edit": "ビジュアル編集", "Visual editor": "ビジュアルエディター", + "Visual Editor": "ビジュアルエディタ", "Visual indicator color for the API card": "APIカードの視覚的なインジケーターの色", + "Visual Mode": "ビジュアルモード", + "Visual Parameter Override": "パラメータ上書きのビジュアル編集", "VolcEngine": "VolcEngine", "Waffo Pancake Payment Gateway": "Waffo Pancake 決済ゲートウェイ", "Waffo Payment": "Waffo決済", @@ -3672,9 +3905,11 @@ "Wallet": "ウォレット", "Wallet First": "ウォレット優先", "Wallet Management": "ウォレット管理", - "Wallet Only": "ウォレットのみ", "Wallet management and personal preferences.": "ウォレット管理と個人設定。", + "Wallet Only": "ウォレットのみ", + "Warm": "暖色", "Warning": "警告", + "Warning Soft": "ソフト警告", "Warning: Base URL should not end with /v1. New API will handle it automatically. This may cause request failures.": "警告: Base URL は /v1 で終わってはいけません。New API が自動的に処理します。これによりリクエストが失敗する可能性があります。", "Warning: Disabling 2FA will make your account less secure.": "警告: 2FAを無効にすると、アカウントのセキュリティが低下します。", "Warning: This action is permanent and irreversible!": "警告: この操作は永続的で元に戻せません!", @@ -3682,22 +3917,22 @@ "We could not load the setup status.": "セットアップステータスを読み込めませんでした。", "We will prompt your device to confirm using biometrics or your hardware key.": "生体認証またはハードウェアキーを使用して確認するよう、デバイスにプロンプトが表示されます。", "We'll be back online shortly.": "まもなくオンラインに戻ります。", - "WeChat": "WeChat Pay", - "WeChat QR code will be displayed here": "WeChat QRコードがここに表示されます", - "WeChat login QR code": "WeChatログインQRコード", - "WeChat sign in": "WeChatでサインイン", "Web Search": "Web 検索", "Webhook Configuration:": "Webhook設定:", - "Webhook Secret": "Webhookシークレット", - "Webhook URL": "Webhook URL", - "Webhook URL:": "Webhook URL:", "Webhook public key (production)": "Webhook 公開鍵(本番)", "Webhook public key (production) is required": "本番用 Webhook 公開鍵は必須です", "Webhook public key (sandbox)": "Webhook 公開鍵(サンドボックス)", "Webhook public key (sandbox) is required": "サンドボックス用 Webhook 公開鍵は必須です", "Webhook secret": "Webhookシークレット", + "Webhook Secret": "Webhookシークレット", "Webhook signing secret (leave blank unless updating)": "Webhook署名シークレット (更新する場合を除き、空白のままにしてください)", + "Webhook URL": "Webhook URL", + "Webhook URL:": "Webhook URL:", "Website is under maintenance!": "ウェブサイトはメンテナンス中です!", + "WeChat": "WeChat Pay", + "WeChat login QR code": "WeChatログインQRコード", + "WeChat QR code will be displayed here": "WeChat QRコードがここに表示されます", + "WeChat sign in": "WeChatでサインイン", "Week": "週", "Weekday": "曜日", "Weekly": "毎週", @@ -3709,9 +3944,9 @@ "Well-Known URL must start with http:// or https://": "Well-Known URL は http:// または https:// で始まる必要があります", "What would you like to know?": "何を知りたいですか?", "When conditions match, the final price is multiplied by X. Multiple matches multiply together; values < 1 act as discounts.": "条件に一致したとき、最終価格に X を掛けます。複数一致は掛け合わさり、1 未満は割引として効きます。", - "When enabled, Midjourney callbacks are accepted (reveals server IP).": "有効にすると、Midjourney のコールバックを受け入れます (サーバーの IP を公開します)。", "When enabled, if channels in the current group fail, it will try channels in the next group in order.": "有効にすると、現在のグループのチャンネルが失敗した場合、次のグループのチャンネルを順番に試します。", "When enabled, large request bodies are temporarily stored on disk instead of memory, significantly reducing memory usage. SSD recommended.": "有効にすると、大きなリクエストボディはメモリではなくディスクに一時保存され、メモリ使用量が大幅に削減されます。SSD環境での使用を推奨します。", + "When enabled, Midjourney callbacks are accepted (reveals server IP).": "有効にすると、Midjourney のコールバックを受け入れます (サーバーの IP を公開します)。", "When enabled, newly created tokens start in the first auto group.": "有効にすると、新しく作成されたトークンは最初の自動グループで開始されます。", "When enabled, prompts are scanned before reaching upstream models.": "有効にすると、プロンプトはアップストリームモデルに到達する前にスキャンされます。", "When enabled, the store field will be blocked": "有効にすると、ストアフィールドはブロックされます", @@ -3721,19 +3956,24 @@ "When performance monitoring is enabled and system resource usage exceeds the set threshold, new Relay requests will be rejected.": "パフォーマンス監視を有効にすると、システムリソース使用率が閾値を超えた場合、新しいRelayリクエストが拒否されます。", "When running in containers or ephemeral environments, ensure the SQLite file is mapped to persistent storage to avoid data loss on restart.": "コンテナまたは一時的な環境で実行する場合、再起動時のデータ損失を防ぐために、SQLiteファイルが永続ストレージにマッピングされていることを確認してください。", "Whitelist": "ホワイトリスト", - "Whitelist (Only allow listed IPs)": "ホワイトリスト (リストされたIPのみを許可)", "Whitelist (Only allow listed domains)": "ホワイトリスト (リストされたドメインのみを許可)", + "Whitelist (Only allow listed IPs)": "ホワイトリスト (リストされたIPのみを許可)", + "whsec_xxx": "whsec_xxx", "Window:": "ウィンドウ:", + "with conflicts": "競合あり", "Without additional conditions, only the type above is used for pruning.": "追加条件がない場合、上記のtypeのみが削除に使用されます。", "Worker Access Key": "Workerアクセスキー", "Worker Proxy": "Workerプロキシ", "Worker URL": "ワーカーURL", "Workspaces": "ワークスペース", "Write custom CSS for the banner background. CSS is scoped to .top-banner.": "Write custom CSS for the banner background. CSS is scoped to .top-banner.", + "Write custom CSS for the banner. Use declarations directly, or use & for scoped selectors such as &::before and & .top-banner-icon.": "バナー用のカスタム CSS を記述します。宣言を直接書くか、&::before や & .top-banner-icon のように & でスコープ付きセレクターを使えます。", "Write value to the target field": "ターゲットフィールドに値を書き込む", + "x": "x", + "xAI": "xAI", "Xinference": "Xinference", "Xunfei": "Xunfei", - "You Pay": "お支払い額", + "years": "年", "You are about to delete {{count}} API key(s).": "{{count}}個のAPIキーを削除しようとしています。", "You are running the latest version ({{version}}).": "最新バージョン ({{version}}) を使用中です。", "You can close this tab once the binding completes or a success message appears in the original window.": "バインディングが完了するか、元のウィンドウに成功メッセージが表示されたら、このタブを閉じることができます。", @@ -3742,9 +3982,11 @@ "You don't have necessary permission": "必要な権限がありません", "You have unsaved changes": "未保存の変更があります", "You have unsaved changes. Are you sure you want to leave?": "未保存の変更があります。離れてもよろしいですか?", + "You Pay": "お支払い額", "You save": "節約額", "You will be redirected to Telegram to complete the binding process.": "バインドプロセスを完了するためにTelegramにリダイレクトされます。", "You'll be redirected automatically. You can return to the previous page if nothing happens after a few seconds.": "自動的にリダイレクトされます。数秒経っても何も起こらない場合は、前のページに戻ることができます。", + "your AI integration?": "AIインテグレーションを?", "Your Azure OpenAI endpoint URL": "あなたのAzure OpenAIエンドポイント URL", "Your Bot Name": "あなたのボット名", "Your Cloudflare Account ID": "あなたのCloudflareアカウントID", @@ -3752,228 +3994,14 @@ "Your Discord OAuth Client Secret": "Discord OAuth クライアント シークレット", "Your GitHub OAuth Client ID": "あなたのGitHub OAuthクライアントID", "Your GitHub OAuth Client Secret": "あなたのGitHub OAuthクライアントシークレット", + "Your new backup codes are ready": "新しいバックアップコードの準備ができました", "Your Referral Link": "あなたの紹介リンク", + "Your system access token for API authentication. Keep it secure and don't share it with others.": "API認証用のシステムアクセストークンです。安全に保管し、他者と共有しないでください。", "Your Telegram Bot Token": "あなたのTelegramボットトークン", "Your Turnstile secret key": "あなたのTurnstileシークレットキー", "Your Turnstile site key": "あなたのTurnstileサイトキー", - "Your new backup codes are ready": "新しいバックアップコードの準備ができました", - "Your system access token for API authentication. Keep it secure and don't share it with others.": "API認証用のシステムアクセストークンです。安全に保管し、他者と共有しないでください。", "Zhipu": "Zhipu", "Zhipu V4": "Zhipu V 4", - "Zoom": "ズーム", - "[{\"ChatGPT\":\"https://chat.openai.com\"},{\"Lobe Chat\":\"https://chat-preview.lobehub.com/?settings={...}\"}]": "[{\"ChatGPT\":\"https://chat.openai.com\"},{\"Lobe Chat\":\"https://chat-preview.lobehub.com/?settings={...}\"}]", - "[{\"name\":\"支付宝\",\"type\":\"alipay\",\"color\":\"#1677FF\"}]": "[{\"name\":\"Alipay\",\"type\":\"alipay\",\"color\":\"#1677FF\"}]", - "_copy": "_copy", - "`, and `-nothinking` suffixes while routing to the correct Gemini variant.": "`, および `-nothinking` サフィックスを、正しい Gemini バリアントにルーティングする際に使用します。", - "active": "有効", - "active users": "アクティブユーザー", - "aggregates 50+ AI providers behind one unified API. Manage access, track costs, and scale effortlessly.": "50以上のAIプロバイダーを統一APIで集約。アクセス管理、コスト追跡、スケーリングを簡単に。", - "and": "および", - "appended": "追加済み", - "are also listed here. Remove them from Models to keep the `/v1/models` response user-friendly and hide vendor-specific names.": "もここにリストされています。`/v1/models` レスポンスをユーザーフレンドリーに保ち、ベンダー固有の名前を隠すために、Models からこれらを削除します。", - "by": "によって", - "channel(s)? This action cannot be undone.": "チャネルを削除しますか?この操作は元に戻せません。", - "checkout.session.completed": "checkout.session.completed", - "checkout.session.expired": "checkout.session.expired", - "compatible API routes": "互換APIルート", - "days": "日", - "default": "デフォルト", - "designed for scale": "スケールのために設計", - "disabled": "無効", - "does not exist or might have been removed.": "存在しないか、削除された可能性があります。", - "e.g. 401, 403, 429, 500-599": "例:401, 403, 429, 500-599", - "e.g. 8 means 1 USD = 8 units": "例: 8 は 1 USD = 8 単位 を意味します", - "e.g. Basic Plan": "例:ベーシックプラン", - "e.g. Clean tool parameters to avoid upstream validation errors": "例:ツールパラメータを整理して上流の検証エラーを回避", - "e.g. My GitLab": "例: My GitLab", - "e.g. New API Console": "例: New API コンソール", - "e.g. Suitable for light usage": "例:ライトユーザー向け", - "e.g. This request does not meet access policy": "例:このリクエストはアクセスポリシーを満たしていません", - "e.g. example.com": "例: example.com", - "e.g. llama3.1:8b": "例: llama3.1:8b", - "e.g. my-gitlab": "例: my-gitlab", - "e.g. openid profile email": "例: openid profile email", - "e.g. ¥ or HK$": "例: ¥ または HK$", - "e.g., #3b82f6,#8b5cf6": "e.g., #3b82f6,#8b5cf6", - "e.g., #ff0000,#0000ff": "e.g., #ff0000,#0000ff", - "e.g., #ffffff or white": "e.g., #ffffff or white", - "e.g., 0.95": "例: 0.95", - "e.g., 100": "例: 100", - "e.g., 123456": "例: 123456", - "e.g., 2025-04-01-preview": "例: 2025-04-01-preview", - "e.g., 50": "例: 50", - "e.g., 500000": "例: 500000", - "e.g., 7342866812345": "例: 7342866812345", - "e.g., 8 means 8 local currency per USD": "例: 8 は 1 USD あたり 8 現地通貨 を意味します", - "e.g., Alipay, WeChat": "例: Alipay、WeChat", - "e.g., Basic Package": "例: 基本パッケージ", - "e.g., CN2 GIA": "例: CN2 GIA", - "e.g., Core APIs, OpenAI, Claude": "例: Core APIs、OpenAI、Claude", - "e.g., OpenAI GPT-4 Production": "例: OpenAI GPT -4 Production", - "e.g., Recommended for China Mainland Users": "例: 中国本土ユーザーにおすすめ", - "e.g., d6b5da8hk1awo8nap34ube6gh": "例: d6b5da8hk1awo8nap34ube6gh", - "e.g., default, vip, premium": "例: default、vip、premium", - "e.g., gpt-4, claude-3": "例:gpt-4、claude-3", - "e.g., gpt-4.1-nano,regex:^claude-.*$,regex:^sora-.*$": "例: gpt-4.1-nano,regex:^claude-.*$,regex:^sora-.*$", - "e.g., https://api.example.com (path before /suno)": "例: https://api.example.com (/suno の前のパス)", - "e.g., https://api.openai.com/v1/chat/completions": "例: https://api.openai.com/v1/chat/completions", - "e.g., https://ark.cn-beijing.volces.com": "例: https://ark.cn-beijing.volces.com", - "e.g., https://docs-test-001.openai.azure.com": "例: https://docs-test-001.openai.azure.com", - "e.g., https://fastgpt.run/api/openapi": "例: https://fastgpt.run/api/openapi", - "e.g., preview": "例: preview", - "e.g., prod_xxx": "例: prod_xxx", - "e.g., us-central1 or JSON format for model-specific regions": "例: us-central1 またはモデル固有のリージョンを示す JSON 形式", - "e.g., v2.1": "例: v2.1", - "edit_this": "edit_this", - "example.com blocked-site.com": "example.com blocked-site.com", - "example.com company.com": "example.com company.com", - "expired": "期限切れ", - "field": "フィールド", - "footer.columns.about.links.aboutProject": "プロジェクトについて", - "footer.columns.about.links.contact": "お問い合わせ", - "footer.columns.about.links.features": "機能", - "footer.columns.about.title": "私たちについて", - "footer.columns.docs.links.apiDocs": "APIドキュメント", - "footer.columns.docs.links.installation": "インストールガイド", - "footer.columns.docs.links.quickStart": "クイックスタート", - "footer.columns.docs.title": "ドキュメント", - "footer.columns.related.links.midjourney": "Midjourney-Proxy", - "footer.columns.related.links.neko": "neko-api-key-tool", - "footer.columns.related.links.oneApi": "1つのAPI", - "footer.columns.related.title": "関連プロジェクト", - "footer.defaultCopyright": "すべての権利を留保します。", - "footer.new\u0061pi.projectAttributionSuffix": "すべての権利を留保します。プロジェクトコントリビューターにより設計・開発されています。", - "gpt-3.5-turbo": "gpt-3.5-turbo", - "gpt-3.5-turbo-0125": "gpt-3.5-turbo-0125", - "gpt-4": "gpt-4", - "gpt-4, claude-3-opus, etc.": "gpt-4、claude-3-opus など", - "group ratio": "グループ倍率", - "h": "h", - "hours": "時間", - "https://api.day.app/yourkey/{{title}}/{{content}}": "https://api.day.app/yourkey/{{title}}/{{content}}", - "https://api.example.com": "https://api.example.com", - "https://ark.ap-southeast.bytepluses.com": "https://ark.ap-southeast.bytepluses.com", - "https://ark.cn-beijing.volces.com": "https://ark.cn-beijing.volces.com", - "https://cloud.siliconflow.cn/i/hij0YNTZ": "https://cloud.siliconflow.cn/i/hij0YNTZ", - "https://docs.example.com": "https://docs.example.com", - "https://example.com": "https://example.com", - "https://example.com/logo.png": "https://example.com/logo.png", - "https://example.com/qr-code.png": "https://example.com/qr-code.png", - "https://example.com/topup": "https://example.com/topup", - "https://example.com/webhook": "https://example.com/webhook", - "https://gateway.example.com": "https://gateway.example.com", - "https://github.com/QuantumNous/new-api": "https://github.com/QuantumNous/new-api", - "https://gotify.example.com": "https://gotify.example.com", - "https://pay.example.com": "https://pay.example.com", - "https://provider.com/.well-known/openid-configuration": "https://provider.com/.well-known/openid-configuration", - "https://status.example.com": "https://status.example.com", - "https://wechat-server.example.com": "https://wechat-server.example.com", - "https://worker.example.workers.dev": "https://worker.example.workers.dev", - "https://your-server.example.com": "https://your-server.example.com", - "https://yourdomain.com": "https://yourdomain.com", - "io.net API Key": "io.net API キー", - "io.net Deployments": "io.net デプロイ", - "is an open-source AI API gateway for self-hosted deployments. Connect multiple upstream services, manage models, keys, quotas, logs, and routing policies in one place.": "はセルフホスト運用向けのオープンソースAI APIゲートウェイです。複数のアップストリームサービスを接続し、モデル、キー、クォータ、ログ、ルーティングポリシーを一元管理できます。", - "is less than the configured maximum cache size": "設定された最大キャッシュサイズより小さい", - "is the default price; ": "はデフォルト価格です; ", - "log": "ログ", - "m": "m", - "maxRequests ≥ 0, maxSuccess ≥ 1, both ≤ 2,147,483,647": "maxRequests ≥ 0、maxSuccess ≥ 1、両方とも ≤ 2,147,483,647", - "minutes": "分", - "model": "モデル", - "model billing support": "モデル課金対応", - "model(s) selected out of": "選択されたモデル", - "model(s)? This action cannot be undone.": "モデルを削除しますか?この操作は元に戻せません。", - "models": "モデル", - "months": "ヶ月", - "more mapping": "さらにマッピング", - "ms": "ms", - "my-status": "my-status", - "name@example.com": "name@example.com", - "noreply@example.com": "noreply@example.com", - "of": "件、合計", - "of 3:": "3のうち:", - "off": "オフ", - "one keyword per line": "1行に1つのキーワード", - "opens in an external client. Trigger it from the sidebar or API key actions to launch the configured application.": "外部クライアントで開きます。サイドバーまたはAPIキーアクションからトリガーして、設定されたアプリケーションを起動します。", - "org-...": "org-...", - "override": "上書き", - "overrides for matching model prefix.": "は一致するモデル接頭辞に上書きします。", - "parameter.": "パラメーター。", - "per": "あたり", - "per request": "リクエストごと", - "price_xxx": "price_xxx", - "redemption code": "引き換えコード", - "redemption codes.": "引き換えコード。", - "replaced": "置換済み", - "request": "リクエスト", - "requests served": "処理されたリクエスト", - "rules": "ルール", - "s": "s", - "scheduling controls": "スケジューリング制御", - "seconds": "秒", - "selected": "選択済み", - "selected channel(s). Leave empty to remove tag.": "選択されたチャンネル。タグを削除するには空のままにしてください。", - "showing •": "表示中 •", - "sk_xxx or rk_xxx": "sk_xxx または rk_xxx", - "smtp.example.com": "smtp.example.com", - "socks5://user:pass@host:port": "socks5://user:pass@host:port", - "sources": "ソース", - "stream": "ストリーム", - "this token group": "このトークングループ", - "this user group": "このユーザーグループ", - "times": "回", - "to access this resource.": "このリソースにアクセスするには。", - "to confirm": "確認する", - "to override billing when a user in one group uses a token of another group.": "あるグループのユーザーが別のグループのトークンを使用する場合に、請求を上書きするため。", - "to the Models list so users can use them before the mapping sends traffic upstream.": "マッピングがトラフィックをアップストリームに送信する前にユーザーが使用できるように、モデルリストに追加します。", - "to view this resource.": "このリソースを表示するには。", - "tokens": "トークン", - "top-up ratio": "チャージ倍率", - "upstream services integrated": "アップストリームサービス連携", - "uptime": "稼働時間", - "used": "使用済み", - "uses": "使用回数", - "variable": "変数", - "variable) *": "変数) *", - "vip": "vip", - "whsec_xxx": "whsec_xxx", - "with conflicts": "競合あり", - "x": "x", - "xAI": "xAI", - "years": "年", - "your AI integration?": "AIインテグレーションを?", - "{\"original-model\": \"replacement-model\"}": "{\" original - model \":\" replacement - model \"}", - "{{category}} Models": "{{category}} モデル", - "{{count}} IP(s)": "{{count}} IP", - "{{count}} channel(s) deleted": "{{count}} 個のチャネルを削除しました", - "{{count}} channel(s) disabled": "{{count}} 個のチャネルを無効にしました", - "{{count}} channel(s) enabled": "{{count}} 個のチャネルを有効にしました", - "{{count}} channel(s) failed to disable": "{{count}} 個のチャネルの無効化に失敗しました", - "{{count}} channel(s) failed to enable": "{{count}} 個のチャネルの有効化に失敗しました", - "{{count}} days ago": "{{count}} 日前", - "{{count}} days remaining": "残り {{count}} 日", - "{{count}} disabled channel(s) deleted": "{{count}} 個の無効チャネルを削除しました", - "{{count}} hours ago": "{{count}} 時間前", - "{{count}} log entries removed.": "{{count}} 件のログエントリを削除しました。", - "{{count}} minutes ago": "{{count}} 分前", - "{{count}} model(s)": "{{count}} モデル", - "{{count}} months ago": "{{count}} ヶ月前", - "{{count}} override": "{{count}} 個のオーバーライド", - "{{count}} tiers": "{{count}} 段階", - "{{count}} weeks ago": "{{count}} 週間前", - "{{field}} updated to {{value}}": "{{field}} を {{value}} に更新しました", - "{{field}} updated to {{value}} for tag: {{tag}}": "タグ「{{tag}}」の {{field}} を {{value}} に更新しました", - "{{n}} model(s) selected": "{{n}} 件のモデルを選択済み", - "{{value}}ms": "{{value}}ミリ秒", - "{{value}}s": "{{value}}秒", - "| Based on": "| に基づく", - "© 2025 Your Company. All rights reserved.": "© 2025 Your Company. 全著作権所有。", - "← Left": "← Left", - "↑ Up": "↑ Up", - "→ Right": "→ Right", - "↓ Down": "↓ Down", - "↘ Diagonal": "↘ Diagonal", - "⊙ Radial": "⊙ Radial" + "Zoom": "ズーム" } } diff --git a/web/default/src/i18n/locales/ru.json b/web/default/src/i18n/locales/ru.json index 44e2cfec6b6..1567113b9d4 100644 --- a/web/default/src/i18n/locales/ru.json +++ b/web/default/src/i18n/locales/ru.json @@ -3,31 +3,70 @@ "360": "360", "1000": "1000", "10000": "10000", + "_copy": "_копировать", + ", and": ", и", + "? This action cannot be undone.": "? Это действие невозможно отменить.", + ". Please fix the JSON before saving.": ". Пожалуйста, исправьте JSON перед сохранением.", + ". This action cannot be undone.": ". Это действие невозможно отменить.", + "...": "...", "\"default\": \"us-central1\", \"claude-3-5-sonnet-20240620\": \"europe-west1\"": "\"default\": \"us-central1\", \"claude-3-5-sonnet-20240620\": \"europe-west1\"", - "% off": "скидка", + "({{total}} total, {{omit}} omitted)": "({{total}} всего, {{omit}} скрыто)", "(Leave empty to dissolve tag)": "(Оставьте пустым, чтобы удалить тег)", "(Optional: redirect model names)": "(Необязательно: перенаправить имена моделей)", "(Override all channels' groups)": "(Переопределить группы всех каналов)", "(Override all channels' models)": "(Переопределить модели всех каналов)", - "({{total}} total, {{omit}} omitted)": "({{total}} всего, {{omit}} скрыто)", - ", and": ", и", - ". Please fix the JSON before saving.": ". Пожалуйста, исправьте JSON перед сохранением.", - ". This action cannot be undone.": ". Это действие невозможно отменить.", - "...": "...", + "[{\"ChatGPT\":\"https://chat.openai.com\"},{\"Lobe Chat\":\"https://chat-preview.lobehub.com/?settings={...}\"}]": "[{\"ChatGPT\":\"https://chat.openai.com\"},{\"Lobe Chat\":\"https://chat-preview.lobehub.com/?settings={...}\"}]", + "[{\"name\":\"支付宝\",\"type\":\"alipay\",\"color\":\"#1677FF\"}]": "[{\"name\":\"Alipay\",\"type\":\"alipay\",\"color\":\"#1677FF\"}]", + "{\"original-model\": \"replacement-model\"}": "{\"original-model\": \"replacement-model\"}", + "{{category}} Models": "Модели {{category}}", + "{{count}} channel(s) deleted": "Удалено {{count}} каналов", + "{{count}} channel(s) disabled": "Отключено {{count}} каналов", + "{{count}} channel(s) enabled": "Включено {{count}} каналов", + "{{count}} channel(s) failed to disable": "Не удалось отключить {{count}} каналов", + "{{count}} channel(s) failed to enable": "Не удалось включить {{count}} каналов", + "{{count}} days ago": "{{count}} дней назад", + "{{count}} days remaining": "Осталось {{count}} дней", + "{{count}} disabled channel(s) deleted": "Удалено {{count}} отключённых каналов", + "{{count}} hours ago": "{{count}} часов назад", + "{{count}} IP(s)": "{{count}} IP", + "{{count}} log entries removed.": "Удалено {{count}} записей журнала.", + "{{count}} minutes ago": "{{count}} минут назад", + "{{count}} model(s)": "{{count}} модел(ей)", + "{{count}} months ago": "{{count}} месяцев назад", + "{{count}} override": "{{count}} переопределений", + "{{count}} tiers": "{{count}} уровней", + "{{count}} weeks ago": "{{count}} недель назад", + "{{field}} updated to {{value}}": "{{field}} обновлено на {{value}}", + "{{field}} updated to {{value}} for tag: {{tag}}": "{{field}} обновлено на {{value}} для тега: {{tag}}", + "{{n}} model(s) selected": "Выбрано моделей: {{n}}", + "{{value}}ms": "{{value}} мс", + "{{value}}s": "{{value}} с", + "@lobehub/icons key": "Ключ @lobehub/icons", + "@lobehub/icons key name": "Имя ключа @lobehub/icons", "/status/": "/status/", "/your/endpoint": "/your/endpoint", + "% off": "скидка", + "`, and `-nothinking` suffixes while routing to the correct Gemini variant.": "суффиксы `, и `-nothinking` при маршрутизации к правильному варианту Gemini.", + "© 2025 Your Company. All rights reserved.": "© 2025 Ваша Компания. Все права защищены.", + "← Left": "← Left", + "→ Right": "→ Right", + "↑ Up": "↑ Up", + "↓ Down": "↓ Down", + "↘ Diagonal": "↘ Diagonal", + "| Based on": "| На основе", + "⊙ Radial": "⊙ Radial", "0 means unlimited": "0 означает без ограничений", "1 Day": "1 день", - "1 Hour": "1 ч.", - "1 Month": "1 мес.", "1 day ago": "1 день назад", + "1 Hour": "1 ч.", "1 hour ago": "1 час назад", "1 minute ago": "1 минуту назад", + "1 Month": "1 мес.", "1 month ago": "1 месяц назад", "1 week ago": "1 неделю назад", "1 year ago": "1 год назад", - "1) Click \"Open authorization page\" and complete login. 2) Your browser may redirect to localhost (it is OK if the page does not load). 3) Copy the full URL from the address bar and paste it below. 4) Click \"Generate credential\".": "1) Нажмите «Открыть страницу авторизации» и войдите. 2) Браузер может перенаправить на localhost — это нормально. 3) Скопируйте полный URL из адресной строки и вставьте ниже. 4) Нажмите «Создать учётные данные».", "1. Create an application in your Gotify server": "1. Создайте приложение на вашем сервере Gotify", + "1) Click \"Open authorization page\" and complete login. 2) Your browser may redirect to localhost (it is OK if the page does not load). 3) Copy the full URL from the address bar and paste it below. 4) Click \"Generate credential\".": "1) Нажмите «Открыть страницу авторизации» и войдите. 2) Браузер может перенаправить на localhost — это нормально. 3) Скопируйте полный URL из адресной строки и вставьте ниже. 4) Нажмите «Создать учётные данные».", "10 / page": "10 / страница", "100 / page": "100 / страница", "14 Days": "14 дней", @@ -47,56 +86,7 @@ "7 Days": "7 дней", "7 days ago": "7 дней назад", "80,443,8080": "80,443,8080", - "? This action cannot be undone.": "? Это действие невозможно отменить.", - "@lobehub/icons key": "Ключ @lobehub/icons", - "@lobehub/icons key name": "Имя ключа @lobehub/icons", "A text banner displayed at the top of all pages. Leave empty to disable.": "A text banner displayed at the top of all pages. Leave empty to disable.", - "AGPL v3.0 License": "Лицензия AGPL v3.0", - "AI Proxy": "AI Proxy", - "AI Proxy Library": "Библиотека прокси AI", - "AI model testing environment": "Среда тестирования ИИ моделей", - "AI models": "Модели ИИ", - "AI models supported": "Поддерживаемые модели ИИ", - "AIGC2D": "AIGC2D", - "AILS": "AILS", - "AK/SK mode: use AccessKey|SecretAccessKey|Region": "Режим AK/SK: используйте AccessKey|SecretAccessKey|Region", - "API Access": "Доступ к API", - "API Addresses": "Адреса API", - "API Base URL (Important: Not Chat API) *": "Базовый URL API (Важно: Не Chat API) *", - "API Base URL *": "Базовый URL API *", - "API Endpoints": "Конечные точки API", - "API Info": "Информация об API", - "API Key": "Ключ API", - "API Key (Production)": "API-ключ (Продакшн)", - "API Key (Sandbox)": "API-ключ (Песочница)", - "API Key (one per line for batch mode)": "Ключ API (по одному на строку для пакетного режима)", - "API Key *": "Ключ API *", - "API Key created successfully": "API ключ успешно создан", - "API Key deleted successfully": "API ключ успешно удален", - "API Key disabled successfully": "API ключ успешно отключен", - "API Key enabled successfully": "API ключ успешно включен", - "API Key mode (does not support batch creation)": "Режим API-ключа (не поддерживает пакетное создание)", - "API Key mode: use APIKey|Region": "Режим API Key: use APIKey|Region", - "API Key updated successfully": "API ключ успешно обновлен", - "API Keys": "Ключи API", - "API Private Key": "Секретный ключ API", - "API Requests": "Запросы API", - "API URL": "URL API", - "API info added. Click \"Save Settings\" to apply.": "Информация API добавлена. Нажмите «Сохранить настройки», чтобы применить.", - "API info deleted. Click \"Save Settings\" to apply.": "Информация API удалена. Нажмите «Сохранить настройки», чтобы применить.", - "API info saved successfully": "Информация API успешно сохранена", - "API info updated. Click \"Save Settings\" to apply.": "Информация API обновлена. Нажмите «Сохранить настройки», чтобы применить.", - "API key": "Ключ API", - "API key from the provider": "Ключ API от провайдера", - "API key is required": "Требуется ключ API", - "API secret": "Секрет API", - "API token management": "Управление API токенами", - "API usage records": "Записи использования API", - "API2GPT": "API2GPT", - "AWS": "AWS", - "AWS Bedrock Claude Compat": "AWS Bedrock Claude совместимость", - "AWS Key Format": "Формат ключа AWS", - "AZURE_OPENAI_ENDPOINT *": "AZURE_OPENAI_ENDPOINT *", "About": "О проекте", "Accept Unpriced Models": "Принимать модели без цены", "Accepts a JSON array of model identifiers that support the Imagine API.": "Принимает JSON-массив идентификаторов моделей, поддерживающих Imagine API.", @@ -104,43 +94,28 @@ "Access Denied Message": "Сообщение об отказе в доступе", "Access Forbidden": "Доступ запрещен", "Access Policy (JSON)": "Политика доступа (JSON)", - "Access Token": "Токен доступа", "Access previous conversations and start new ones.": "Доступ к предыдущим разговорам и начало новых.", + "Access Token": "Токен доступа", "AccessKey / SecretAccessKey": "AccessKey / SecretAccessKey", "Account Binding Management": "Управление привязкой аккаунта", "Account Bindings": "Привязки аккаунта", - "Account ID *": "ID аккаунта *", - "Account Info": "Информация об аккаунте", "Account created! Please sign in": "Аккаунт создан! Пожалуйста, войдите в систему", "Account deleted successfully": "Аккаунт успешно удалён", + "Account ID *": "ID аккаунта *", + "Account Info": "Информация об аккаунте", "Account used when authenticating with the SMTP server": "Учетная запись, используемая при аутентификации с SMTP-сервером", "Action confirmation": "Подтверждение действия", "Actions": "Операции", + "active": "активный", "Active": "Активна", "Active Cache Count": "Активных кэшей", "Active Files": "Активных файлов", + "active users": "активных пользователей", "Actual Amount": "Фактическая сумма", "Actual Model": "Фактическая модель", "Actual Model:": "Фактическая модель:", "Add": "Добавить", - "Add API": "Добавить API", - "Add API Shortcut": "Добавить ярлык API", - "Add Announcement": "Добавить объявление", - "Add Condition": "Добавить условие", - "Add FAQ": "Добавить вопрос-ответ", - "Add Funds": "Добавить средства", - "Add Group": "Добавить группу", - "Add Mapping": "Добавить сопоставление", - "Add Mode": "Добавить режим", - "Add Model": "Добавить модель", - "Add Models": "Добавить модели", - "Add OAuth Provider": "Добавить поставщика OAuth", - "Add Provider": "Добавить поставщика", - "Add Quota": "Добавить квоту", - "Add Row": "Добавить строку", - "Add Rule": "Добавить правило", - "Add Uptime Kuma Group": "Добавить группу Uptime Kuma", - "Add User": "Добавить пользователя", + "Add {{title}}": "Добавить {{title}}", "Add a group identifier to the auto assignment list.": "Добавить идентификатор группы в список автоматического назначения.", "Add a new API key by providing necessary info.": "Добавьте новый API-ключ, предоставив необходимую информацию.", "Add a new channel by providing the necessary information.": "Добавьте новый канал, предоставив необходимую информацию.", @@ -150,25 +125,41 @@ "Add an extra layer of security to your account": "Добавьте дополнительный уровень безопасности к вашей учетной записи", "Add and submit": "Добавить и отправить", "Add animation effects to the banner background.": "Add animation effects to the banner background.", + "Add Announcement": "Добавить объявление", + "Add API": "Добавить API", + "Add API Shortcut": "Добавить ярлык API", "Add auto group": "Добавить автогруппу", "Add chat preset": "Добавить предустановку чата", "Add condition": "Добавить условие", + "Add Condition": "Добавить условие", "Add custom model(s), comma-separated": "Добавить пользовательскую модель(и), через запятую", "Add discount tier": "Добавить уровень скидки", "Add each model or tag you want to include.": "Добавьте каждую модель или тег, который хотите включить.", + "Add FAQ": "Добавить вопрос-ответ", "Add from available models...": "Добавить из доступных моделей...", + "Add Funds": "Добавить средства", "Add group": "Добавить группу", + "Add Group": "Добавить группу", "Add group rate limit": "Добавить ограничение скорости группы", "Add group rules": "Добавить правила группы", + "Add Mapping": "Добавить сопоставление", "Add method": "Добавить метод", + "Add Mode": "Добавить режим", "Add model": "Добавить модель", + "Add Model": "Добавить модель", + "Add Models": "Добавить модели", "Add new amount": "Добавить новую сумму", "Add new redemption code(s) by providing necessary info.": "Добавьте новый(-ые) код(-ы) активации, предоставив необходимую информацию.", + "Add OAuth Provider": "Добавить поставщика OAuth", "Add param/header": "Добавить param / header", "Add payment method": "Добавить способ оплаты", "Add photos or files": "Добавить фото или файлы", "Add product": "Добавить продукт", + "Add Provider": "Добавить поставщика", + "Add Quota": "Добавить квоту", "Add ratio override": "Добавить переопределение коэффициента", + "Add Row": "Добавить строку", + "Add Rule": "Добавить правило", "Add rule group": "Добавить группу правил", "Add selectable group": "Добавить выбираемую группу", "Add subscription": "Добавить подписку", @@ -176,35 +167,36 @@ "Add tier": "Добавить уровень", "Add time condition": "Добавить условие по времени", "Add time rule group": "Добавить группу правил по времени", + "Add Uptime Kuma Group": "Добавить группу Uptime Kuma", + "Add User": "Добавить пользователя", "Add user group": "Добавить группу пользователей", "Add your API keys, set up channels and configure access permissions": "Добавьте ваши API-ключи, настройте каналы и права доступа", - "Add {{title}}": "Добавить {{title}}", - "Added successfully": "Успешно добавлено", "Added {{count}} custom model(s)": "Добавлено {{count}} пользовательских моделей", "Added {{count}} model(s)": "Добавлено {{count}} моделей", + "Added successfully": "Успешно добавлено", "Additional Conditions": "Дополнительные условия", + "Additional information": "Дополнительная информация", "Additional Information": "Дополнительная информация", "Additional Limit": "Доп. лимит", "Additional Limits": "Дополнительные лимиты", - "Additional information": "Дополнительная информация", "Additional metered capability": "Дополнительная зарезервированная ёмкость (metered)", "Adjust Quota": "Изменить квоту", "Adjust response formatting, prompt behavior, proxy, and upstream automation.": "Настройте форматирование ответов, поведение промпта, прокси и автоматизацию upstream.", "Adjust the appearance and layout to suit your preferences.": "Настройте внешний вид и макет в соответствии с вашими предпочтениями.", "Admin": "Администратор", - "Admin Only": "Только для администраторов", "Admin access required": "Требуется доступ администратора", "Admin area": "Область администратора", "Admin notes (only visible to admins)": "Заметки администратора (видны только администраторам)", + "Admin Only": "Только для администраторов", "Administer user accounts and roles.": "Управление учетными записями пользователей и ролями.", "Administrator account": "Учетная запись администратора", "Administrator username": "Имя пользователя администратора", "Advanced": "Расширенные", "Advanced Configuration": "Расширенная конфигурация", - "Advanced Options": "Расширенные параметры", - "Advanced Settings": "Расширенные настройки", "Advanced options": "Расширенные параметры", + "Advanced Options": "Расширенные параметры", "Advanced platform configuration.": "Расширенная настройка платформы.", + "Advanced Settings": "Расширенные настройки", "Advanced text editing": "Расширенное редактирование текста", "After clicking the button, you'll be asked to authorize the bot": "После нажатия кнопки вам будет предложено авторизовать бота", "After disabling, it will no longer be shown to users, but historical orders are not affected. Continue?": "После отключения план не будет отображаться пользователям, но исторические заказы не затронуты. Продолжить?", @@ -213,40 +205,51 @@ "After scanning, the binding will complete automatically": "После сканирования привязка завершится автоматически", "Agent ID *": "Идентификатор агента *", "Aggregated usage metrics and trend charts.": "Агрегированные метрики использования и графики трендов.", + "aggregates 50+ AI providers behind one unified API. Manage access, track costs, and scale effortlessly.": "объединяет 50+ ИИ-провайдеров за единым API. Управляйте доступом, отслеживайте затраты и масштабируйтесь без усилий.", + "AGPL v3.0 License": "Лицензия AGPL v3.0", + "AI model testing environment": "Среда тестирования ИИ моделей", + "AI models": "Модели ИИ", + "AI models supported": "Поддерживаемые модели ИИ", + "AI Proxy": "AI Proxy", + "AI Proxy Library": "Библиотека прокси AI", + "AIGC2D": "AIGC2D", + "AILS": "AILS", + "AK/SK mode: use AccessKey|SecretAccessKey|Region": "Режим AK/SK: используйте AccessKey|SecretAccessKey|Region", "Ali": "Ali", "All": "Все", + "All edits are overwrite operations. Leave fields empty to keep current values unchanged.": "Все изменения являются операциями перезаписи. Оставьте поля пустыми, чтобы сохранить текущие значения без изменений.", + "All files exceed the maximum size.": "Все файлы превышают максимальный размер.", "All Groups": "Все группы", "All Models": "Все модели", + "All models in use are properly configured.": "Все используемые модели настроены правильно.", "All Must Match (AND)": "Все должны совпасть (AND)", "All Status": "Все статусы", "All Sync Status": "Все статусы синхронизации", "All Tags": "Все теги", "All Types": "Все типы", + "All upstream data is trusted": "Все вышестоящие данные являются доверенными", "All Vendors": "Все поставщики", "All Your AI Models": "Все ваши ИИ-модели", - "All edits are overwrite operations. Leave fields empty to keep current values unchanged.": "Все изменения являются операциями перезаписи. Оставьте поля пустыми, чтобы сохранить текущие значения без изменений.", - "All files exceed the maximum size.": "Все файлы превышают максимальный размер.", - "All models in use are properly configured.": "Все используемые модели настроены правильно.", - "All upstream data is trusted": "Все вышестоящие данные являются доверенными", "Allocated Memory": "Выделенная память", - "Allow Claude beta query passthrough": "Разрешить проброс бета-запросов Claude", - "Allow HTTP image requests": "Разрешить HTTP-запросы изображений", - "Allow Insecure Origins": "Разрешить небезопасные источники", - "Allow Private IPs": "Разрешить частные IP-адреса", - "Allow Retry": "Разрешить повтор", "Allow accountFilter parameter": "Разрешить параметр accountFilter", + "Allow Claude beta query passthrough": "Разрешить проброс бета-запросов Claude", "Allow clients to query configured ratios via `/api/ratio`.": "Разрешить клиентам запрашивать настроенные соотношения через `/api/ratio`.", + "Allow HTTP image requests": "Разрешить HTTP-запросы изображений", "Allow include usage obfuscation passthrough": "Разрешить проброс обфускации использования", "Allow inference geography passthrough": "Разрешить проброс географии инференса", "Allow inference_geo passthrough": "Разрешить передачу inference_geo", + "Allow Insecure Origins": "Разрешить небезопасные источники", "Allow new users to register": "Разрешить регистрацию новым пользователям", + "Allow Private IPs": "Разрешить частные IP-адреса", "Allow registration with password": "Разрешить регистрацию по паролю", "Allow requests to private IP ranges (10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16)": "Разрешить запросы к частным диапазонам IP-адресов (10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16)", + "Allow Retry": "Разрешить повтор", "Allow safety_identifier passthrough": "Разрешить сквозную передачу Safety_Identifier", "Allow service_tier passthrough": "Разрешить сквозную передачу service_tier", "Allow speed passthrough": "Разрешить передачу speed", "Allow upstream callbacks": "Разрешить обратные вызовы upstream", "Allow users to check in daily for random quota rewards": "Разрешить пользователям регистрироваться ежедневно для получения случайных квотных наград", + "Allow users to close this banner. If disabled, the close button is hidden.": "Разрешить пользователям закрывать этот баннер. Если отключено, кнопка закрытия скрывается.", "Allow users to enter promo codes": "Разрешить пользователям вводить промокоды", "Allow users to log in with password": "Разрешить пользователям входить по паролю", "Allow users to register and sign in with Passkey (WebAuthn)": "Разрешить пользователям регистрироваться и входить с помощью Passkey (WebAuthn)", @@ -255,8 +258,8 @@ "Allow users to sign in with LinuxDO": "Разрешить пользователям входить через LinuxDO", "Allow users to sign in with OpenID Connect": "Разрешить пользователям входить через OpenID Connect", "Allow users to sign in with Telegram": "Разрешить пользователям входить через Telegram", - "Allow users to sign in with WeChat": "Разрешить пользователям входить через WeChat", "Allow users to sign in with this provider": "Разрешить пользователям входить через этого поставщика", + "Allow users to sign in with WeChat": "Разрешить пользователям входить через WeChat", "Allow using models without price configuration": "Разрешить использование моделей без настройки цен", "Allowed": "Разрешено", "Allowed Origins": "Разрешенные Origins", @@ -265,21 +268,24 @@ "Alternate": "Alternate", "Always matches (default tier).": "Всегда совпадает (уровень по умолчанию).", "Amount": "Сумма", - "Amount Due": "Сумма к оплате", "Amount cannot be changed when editing.": "Количество нельзя изменить при редактировании.", "Amount discount": "Скидка на сумму", + "Amount Due": "Сумма к оплате", "Amount must be a whole number": "Сумма должна быть целым числом", "Amount must be greater than 0": "Сумма должна быть больше 0", "Amount of quota to credit to user account.": "Количество квоты для зачисления на счет пользователя.", "Amount options must be a JSON array": "Варианты сумм должны быть JSON-массивом", "Amount to pay:": "Сумма к оплате:", "An unexpected error occurred": "Произошла непредвиденная ошибка", + "and": "и", "Animation": "Animation", + "Animation Presets": "Пресеты анимации", + "Animation presets can use custom colors and speed.": "Для пресетов анимации можно настроить цвета и скорость.", "Animation Type": "Animation Type", - "Announcement Details": "Детали объявления", "Announcement added. Click \"Save Settings\" to apply.": "Объявление добавлено. Нажмите \"Сохранить настройки\", чтобы применить.", "Announcement content": "Содержимое объявления", "Announcement deleted. Click \"Save Settings\" to apply.": "Объявление удалено. Нажмите \"Сохранить настройки\", чтобы применить.", + "Announcement Details": "Детали объявления", "Announcement displayed to users (supports Markdown & HTML)": "Объявление, отображаемое пользователям (поддерживает Markdown и HTML)", "Announcement updated. Click \"Save Settings\" to apply.": "Объявление обновлено. Нажмите \"Сохранить настройки\", чтобы применить.", "Announcements": "Объявления", @@ -287,13 +293,47 @@ "Answer": "Ответ", "Anthropic": "Anthropic", "Any Match (OR)": "Любое совпадение (OR)", + "API Access": "Доступ к API", + "API Addresses": "Адреса API", + "API Base URL (Important: Not Chat API) *": "Базовый URL API (Важно: Не Chat API) *", + "API Base URL *": "Базовый URL API *", + "API Endpoints": "Конечные точки API", + "API Info": "Информация об API", + "API info added. Click \"Save Settings\" to apply.": "Информация API добавлена. Нажмите «Сохранить настройки», чтобы применить.", + "API info deleted. Click \"Save Settings\" to apply.": "Информация API удалена. Нажмите «Сохранить настройки», чтобы применить.", + "API info saved successfully": "Информация API успешно сохранена", + "API info updated. Click \"Save Settings\" to apply.": "Информация API обновлена. Нажмите «Сохранить настройки», чтобы применить.", + "API key": "Ключ API", + "API Key": "Ключ API", + "API Key (one per line for batch mode)": "Ключ API (по одному на строку для пакетного режима)", + "API Key (Production)": "API-ключ (Продакшн)", + "API Key (Sandbox)": "API-ключ (Песочница)", + "API Key *": "Ключ API *", + "API Key created successfully": "API ключ успешно создан", + "API Key deleted successfully": "API ключ успешно удален", + "API Key disabled successfully": "API ключ успешно отключен", + "API Key enabled successfully": "API ключ успешно включен", + "API key from the provider": "Ключ API от провайдера", + "API key is required": "Требуется ключ API", + "API Key mode (does not support batch creation)": "Режим API-ключа (не поддерживает пакетное создание)", + "API Key mode: use APIKey|Region": "Режим API Key: use APIKey|Region", + "API Key updated successfully": "API ключ успешно обновлен", + "API Keys": "Ключи API", + "API Private Key": "Секретный ключ API", + "API Requests": "Запросы API", + "API secret": "Секрет API", + "API token management": "Управление API токенами", + "API URL": "URL API", + "API usage records": "Записи использования API", + "API2GPT": "API2GPT", "Append": "Добавить в конец", - "Append Template": "Добавить шаблон", "Append mode: New keys will be added to the end of the existing key list": "Режим добавления: Новые ключи будут добавлены в конец существующего списка ключей", - "Append to End": "Добавить в конец", + "Append Template": "Добавить шаблон", "Append to channel": "Добавить в канал", + "Append to End": "Добавить в конец", "Append to existing keys": "Добавить к существующим ключам", "Append value to array / string / object end": "Добавить значение в конец массива / строки / объекта", + "appended": "добавлено", "Application": "Приложение", "Applies to custom completion endpoints. JSON map of model → ratio.": "Применяется к пользовательским конечным точкам завершения. JSON-карта модель → коэффициент.", "Apply All Upstream Updates": "Применить все обновления из upstream", @@ -303,6 +343,7 @@ "Apply Sync": "Применить синхронизацию", "Applying...": "Применение...", "Approx.": "Примерно.", + "are also listed here. Remove them from Models to keep the `/v1/models` response user-friendly and hide vendor-specific names.": "также перечислены здесь. Удалите их из Моделей, чтобы ответ `/v1/models` был удобным для пользователя и скрывал имена, специфичные для поставщиков.", "Are you sure you want to delete": "Вы уверены, что хотите удалить", "Are you sure you want to delete all auto-disabled keys? This action cannot be undone.": "Вы уверены, что хотите удалить все автоматически отключённые ключи? Это действие нельзя отменить.", "Are you sure you want to delete deployment \"{{name}}\"? This action cannot be undone.": "Вы уверены, что хотите удалить развертывание \"{{name}}\"? Это действие нельзя отменить.", @@ -324,19 +365,20 @@ "At least one valid key source is required": "Требуется хотя бы один действительный источник ключа", "Attach": "Прикрепить", "Audio": "Аудио", + "Audio comp.": "Аудио-вывод", + "Audio completion ratio": "Коэффициент завершения аудио", "Audio In": "Аудиовход", + "Audio input": "Аудиовход", "Audio Input": "Аудио вход", "Audio Input Price": "Цена аудиовхода", "Audio Out": "Аудиовыход", - "Audio Output": "Аудио выход", - "Audio Preview": "Предпросмотр аудио", - "Audio Tokens": "Аудио токены", - "Audio comp.": "Аудио-вывод", - "Audio completion ratio": "Коэффициент завершения аудио", - "Audio input": "Аудиовход", "Audio output": "Аудиовыход", + "Audio Output": "Аудио выход", "Audio playback failed": "Ошибка воспроизведения аудио", + "Audio Preview": "Предпросмотр аудио", "Audio ratio": "Коэффициент аудио", + "Audio Tokens": "Аудио токены", + "Aurora": "Аврора", "Auth Style": "Стиль аутентификации", "Authentication": "Аутентификация", "Authenticator code": "Код аутентификатора", @@ -345,13 +387,13 @@ "Authorize": "Авторизовать", "Auto": "Авто", "Auto (Circuit Breaker)": "Авто (Автовыключатель)", + "Auto assignment order": "Порядок автоматического назначения", "Auto Ban": "Автоматическая блокировка", + "Auto detect (default)": "Автоматическое определение (по умолчанию)", "Auto Disabled": "Автоматически отключено", "Auto Group Chain": "Автоматическая цепочка групп", - "Auto Sync Upstream Models": "Автоматическая синхронизация моделей провайдера", - "Auto assignment order": "Порядок автоматического назначения", - "Auto detect (default)": "Автоматическое определение (по умолчанию)", "Auto refresh": "Автообновление", + "Auto Sync Upstream Models": "Автоматическая синхронизация моделей провайдера", "Auto-Accept Unpriced Models on Registration": "Автоматически принимать модели без цены при регистрации", "Auto-disable status codes": "Коды автоотключения", "Auto-discover": "Автообнаружение", @@ -372,19 +414,24 @@ "Availability Panel": "Панель доступности", "Availability Status Monitor": "Мониторинг доступности", "Available": "Доступно", + "Available disk space": "Доступное дисковое пространство", "Available Models": "Доступные модели", "Available Rewards": "Доступные награды", - "Available disk space": "Доступное дисковое пространство", "Average RPM": "Среднее число оборотов в минуту", "Average TPM": "Среднее число транзакций в минуту", - "Azure": "Azure", + "AWS": "AWS", + "AWS Bedrock Claude Compat": "AWS Bedrock Claude совместимость", + "AWS Key Format": "Формат ключа AWS", + "Azure": "Azure", + "AZURE_OPENAI_ENDPOINT *": "AZURE_OPENAI_ENDPOINT *", "Back": "Назад", "Back to Home": "Вернуться на главную", - "Back to Models": "Вернуться к моделям", "Back to login": "Вернуться к входу", + "Back to Models": "Вернуться к моделям", "Backed up": "Резервная копия создана", - "Background Type": "Background Type", + "Background color": "Цвет фона", "Background job tracker for queued work.": "Отслеживатель фоновых заданий для задач в очереди.", + "Background Type": "Background Type", "Backup Code": "Резервный код", "Backup code must be in format XXXX-XXXX": "Резервный код должен быть в формате XXXX-XXXX", "Backup codes regenerated successfully": "Резервные коды успешно перегенерированы", @@ -399,54 +446,56 @@ "Balance updated successfully": "Баланс успешно обновлён", "Balance updated: {{balance}}": "Баланс обновлён: {{balance}}", "Banner Content": "Banner Content", + "Banner Dismissible": "Баннер можно закрыть", "Banner Font Color": "Banner Font Color", + "Banner Type": "Тип баннера", "Bar Chart": "Столбчатая диаграмма", "Bark Push URL": "URL для push-уведомлений Bark", - "Base Limits": "Базовые лимиты", - "Base Price": "Базовая цена", - "Base URL": "Адрес API", - "Base URL of your Uptime Kuma instance": "Базовый URL вашего экземпляра Uptime Kuma", "Base address provided by your Epay service": "Базовый адрес, предоставленный вашим сервисом Epay", "Base amount. Actual deduction = base amount × system group rate.": "Базовая сумма. Фактический вычет = базовая сумма × коэффициент группы.", + "Base Limits": "Базовые лимиты", "Base multipliers applied when users select specific groups.": "Базовые множители, применяемые, когда пользователи выбирают определенные группы.", + "Base Price": "Базовая цена", "Base rate limit windows for this account.": "Окна базовых лимитов для этого аккаунта.", + "Base URL": "Адрес API", + "Base URL of your Uptime Kuma instance": "Базовый URL вашего экземпляра Uptime Kuma", "Basic Authentication": "Базовая аутентификация", "Basic Configuration": "Базовая конфигурация", "Basic Info": "Основная информация", "Basic Information": "Основная информация", "Basic Templates": "Базовые шаблоны", "Batch Add (one key per line)": "Пакетное добавление (один ключ на строку)", - "Batch Edit": "Пакетное редактирование", - "Batch Edit by Tag": "Пакетное редактирование по тегу", "Batch delete failed": "Пакетное удаление не удалось", "Batch detection complete: {{channels}} channels, {{add}} to add, {{remove}} to remove, {{fails}} failed": "Пакетное обнаружение завершено: {{channels}} каналов, {{add}} для добавления, {{remove}} для удаления, {{fails}} ошибок", "Batch detection failed": "Пакетное обнаружение не удалось", "Batch disable failed": "Пакетное отключение не удалось", + "Batch Edit": "Пакетное редактирование", "Batch edit all channels with this tag. Leave fields empty to keep current values.": "Пакетно редактировать все каналы с этим тегом. Оставьте поля пустыми, чтобы сохранить текущие значения.", + "Batch Edit by Tag": "Пакетное редактирование по тегу", "Batch enable failed": "Пакетное включение не удалось", "Batch processing failed": "Пакетная обработка не удалась", "Batch upstream model updates applied: {{channels}} channels, {{added}} added, {{removed}} removed, {{fails}} failed": "Пакетное обновление моделей: {{channels}} каналов, {{added}} добавлено, {{removed}} удалено, {{fails}} ошибок", "Best for single-tenant deployments. Pricing and billing options stay hidden.": "Лучший вариант для однопользовательских развёртываний. Опции ценообразования и биллинга будут скрыты.", "Billing": "Биллинг", + "Billing currency": "Валюта оплаты", "Billing Details": "Детали биллинга", "Billing History": "История биллинга", "Billing Mode": "Режим биллинга", "Billing Process": "Процесс тарификации", "Billing Source": "Источник биллинга", - "Billing currency": "Валюта оплаты", "Bind": "Привязать", + "Bind an email address to your account.": "Привяжите адрес электронной почты к вашему аккаунту.", "Bind Email": "Привязать Email", "Bind Telegram Account": "Привязать аккаунт Telegram", "Bind WeChat Account": "Привязка аккаунта WeChat", - "Bind an email address to your account.": "Привяжите адрес электронной почты к вашему аккаунту.", "Binding Information": "Информация о привязке", "Binding successful!": "Привязка успешна!", "Binding your {{provider}} account": "Привязка вашего аккаунта {{provider}}", "Binding...": "Привязка...", "Bindings": "Привязки", "Blacklist": "Чёрный список", - "Blacklist (Block listed IPs)": "Черный список (Блокировка IP из списка)", "Blacklist (Block listed domains)": "Черный список (Блокировка доменов из списка)", + "Blacklist (Block listed IPs)": "Черный список (Блокировка IP из списка)", "Blank Rule": "Пустое правило", "Blend": "Смешивание", "Blink": "Blink", @@ -465,18 +514,15 @@ "Broadcast a global banner to users. Markdown is supported.": "Транслировать глобальный баннер пользователям. Поддерживается Markdown.", "Broadcast short system notices on the dashboard": "Транслировать короткие системные уведомления на панели управления", "Browse and compare": "Просмотр и сравнение", - "Budget Tokens Ratio": "Соотношение бюджетных токенов", "Budget tokens = max tokens × ratio. Accepts a decimal between 0.002 and 1. Recommended to keep aligned with upstream billing.": "Бюджетные токены = макс. токены × соотношение. Принимает десятичное число от 0.002 до 1. Рекомендуется поддерживать в соответствии с биллингом вышестоящего провайдера.", "Budget tokens = max tokens × ratio. Accepts a decimal between 0.1 and 1.": "Бюджетные токены = макс. токены × соотношение. Принимает десятичное число от 0.1 до 1.", + "Budget Tokens Ratio": "Соотношение бюджетных токенов", "Budgets": "Бюджеты", "Built for developers,": "Создано для разработчиков,", "Built-in": "Встроенный", "Built-in Device": "Встроенное устройство", "Built-in: phone fingerprint/face, or Windows Hello; External: USB security key": "Встроенное: отпечаток пальца/лицо телефона или Windows Hello; Внешнее: USB-ключ безопасности", - "CC Switch": "CC переключение", - "CNY": "Юань", - "CNY per USD": "CNY за USD", - "CPU Threshold (%)": "Порог CPU (%)", + "by": "от", "Cache": "Кэш", "Cache Creation": "Создание кэша", "Cache Creation (1h)": "Создание кэша (1h)", @@ -485,13 +531,13 @@ "Cache Directory Disk Space": "Дисковое пространство каталога кэша", "Cache Directory Info": "Информация о каталоге кэша", "Cache Entries": "Записи кэша", + "Cache mode": "Режим кэша", + "Cache ratio": "Коэффициент кэша", "Cache Read": "Чтение кэша", + "Cache write": "Запись кэша", "Cache Write": "Запись в кэш", "Cache Write (1h)": "Запись кэша (1h)", "Cache Write (5m)": "Запись кэша (5m)", - "Cache mode": "Режим кэша", - "Cache ratio": "Коэффициент кэша", - "Cache write": "Запись кэша", "Cached": "Кэш", "Cached input": "Кэшированный ввод", "Calculated price: ${{price}} per 1M tokens": "Расчётная цена: ${{price}} за 1М токенов", @@ -501,11 +547,11 @@ "Call Count Ranking": "Рейтинг по количеству вызовов", "Call Proportion": "Доля вызовов", "Call Trend": "Тенденция вызовов", + "Callback address": "Адрес обратного вызова", "Callback Caller IP": "IP вызывающей стороны callback", + "Callback notification URL": "URL обратного вызова", "Callback Payment Method": "Способ оплаты (callback)", "Callback URL": "URL обратного вызова", - "Callback address": "Адрес обратного вызова", - "Callback notification URL": "URL обратного вызова", "Cancel": "Отмена", "Cancelled": "Отменено", "Cancelled at": "Отменено", @@ -515,60 +561,63 @@ "Category name is required": "Название категории обязательно", "Category name must be less than 50 characters": "Название категории должно содержать менее 50 символов", "Caution": "Внимание", + "CC Switch": "CC переключение", "Chain": "Цепочка", "Change": "Изменить", + "Change language": "Изменить язык", "Change Password": "Изменить пароль", "Change To": "Изменить на", - "Change language": "Изменить язык", "Changing...": "Изменение...", "Channel": "Канал", "Channel Affinity": "Привязка к каналу", - "Channel Affinity: Upstream Cache Hit": "Привязка к каналу: попадание в кэш upstream", - "Channel Extra Settings": "Дополнительные настройки канала", - "Channel ID": "ID канала", - "Channel Provider": "Провайдер канала", "Channel affinity reuses the last successful channel based on keys extracted from the request context or JSON body.": "Привязка к каналу повторно использует последний успешный канал на основе ключей, извлечённых из контекста запроса или тела JSON.", + "Channel Affinity: Upstream Cache Hit": "Привязка к каналу: попадание в кэш upstream", "Channel copied successfully": "Канал успешно скопирован", "Channel created successfully": "Канал успешно создан", "Channel deleted successfully": "Канал успешно удалён", "Channel disabled successfully": "Канал успешно отключён", "Channel enabled successfully": "Канал успешно включён", + "Channel Extra Settings": "Дополнительные настройки канала", + "Channel ID": "ID канала", "Channel key": "Ключ канала", "Channel key unlocked": "Ключ канала разблокирован", "Channel models": "Модели каналов", "Channel name is required": "Имя канала обязательно", + "Channel Provider": "Провайдер канала", "Channel test completed": "Тест канала завершён", "Channel type is required": "Тип канала обязателен", "Channel updated successfully": "Канал успешно обновлён", "Channel-specific settings (JSON format)": "Настройки, специфичные для канала (формат JSON)", "Channel:": "Канал:", + "channel(s)? This action cannot be undone.": "канал(ы)? Это действие нельзя отменить.", "Channels": "Каналы", "Channels deleted successfully": "Каналы успешно удалены", "Chart Preferences": "Настройки графиков", "Chart Settings": "Настройки диаграммы", "Chat": "Чат", + "Chat area": "Область чата", "Chat Area": "Область чата", "Chat Client Name": "Имя чат-клиента", - "Chat Presets": "Предустановки чата", - "Chat area": "Область чата", "Chat client name is required": "Название чат-клиента обязательно", "Chat configuration JSON": "JSON конфигурации чата", "Chat preset not found": "Предустановка чата не найдена", + "Chat Presets": "Предустановки чата", "Chat session management": "Управление сессиями чата", "ChatCompletions -> Responses Compatibility": "Совместимость ChatCompletions → Ответы", "Check for updates": "Проверить обновления", "Check in daily to receive random quota rewards": "Регистрируйтесь ежедневно, чтобы получать случайные вознаграждения по квоте", "Check in now": "Войдите сейчас", "Check resolved IPs against IP filters even when accessing by domain": "Проверять разрешенные IP-адреса по IP-фильтрам даже при доступе по домену", - "Check-in Settings": "Настройки прибытия", "Check-in failed": "Регистрация не удалась.", + "Check-in Settings": "Настройки прибытия", "Check-in successful! Received": "Прибытие прошло успешно! Получено", "Checked in": "Зарегистрирован", "Checking connection": "Проверка подключения", "Checking name...": "Проверяю имя...", "Checking updates...": "Проверка обновлений...", + "checkout.session.completed": "checkout.session.completed", + "checkout.session.expired": "checkout.session.expired", "Chinese": "Китайский", - "Choose Group": "Выбрать группу", "Choose a preset effect and customize colors and speed.": "Choose a preset effect and customize colors and speed.", "Choose a primary color for the interface": "Выберите основной цвет интерфейса", "Choose a username": "Выберите имя пользователя", @@ -578,10 +627,12 @@ "Choose between left-to-right or right-to-left site direction": "Выберите между направлением сайта слева направо или справа налево", "Choose between system preference, light mode, or dark mode": "Выберите между системными настройками, светлым режимом или темным режимом", "Choose channels to sync upstream ratio configurations from": "Выберите каналы для синхронизации конфигураций соотношений из вышестоящих источников", + "Choose Group": "Выбрать группу", "Choose how quota values are shown to users": "Выберите, как значения квоты отображаются пользователям", "Choose how the platform will operate": "Выберите режим работы платформы", - "Choose how to filter IP addresses": "Выберите, как фильтровать IP-адреса", "Choose how to filter domains": "Выберите, как фильтровать домены", + "Choose how to filter IP addresses": "Выберите, как фильтровать IP-адреса", + "Choose the banner category. Each category uses a matching visual style.": "Выберите категорию баннера. Для каждой категории применяется подходящий визуальный стиль.", "Choose the bundle type and define the items inside it.": "Выберите тип пакета и определите элементы внутри него.", "Choose the default charts, range, and time granularity for model analytics.": "Выберите графики, диапазон и временную детализацию по умолчанию для аналитики моделей.", "Choose where to fetch upstream metadata.": "Выберите, откуда получать метаданные вышестоящего источника.", @@ -589,22 +640,22 @@ "Classic (Legacy Frontend)": "Классический (Старый интерфейс)", "Claude": "Клод", "Claude CLI Header Passthrough": "Проброс заголовков Claude CLI", - "Clean Up Log Files": "Очистить файлы журналов", "Clean history logs": "Очистить журналы истории", "Clean logs": "Очистить логи", "Clean up inactive cache": "Очистить неактивный кэш", + "Clean Up Log Files": "Очистить файлы журналов", "Cleaned up {{count}} log files, freed {{size}}": "Очищено {{count}} файлов журналов, освобождено {{size}}", "Cleaning...": "Очистка...", - "Cleanup Mode": "Режим очистки", "Cleanup failed": "Ошибка очистки", + "Cleanup Mode": "Режим очистки", "Clear": "Очистить", + "Clear all": "Очистить все", "Clear All": "Очистить все", "Clear All Cache": "Очистить весь кэш", - "Clear Mapping": "Очистить сопоставление", - "Clear all": "Очистить все", "Clear all filters": "Очистить все фильтры", "Clear cache for this rule": "Очистить кэш этого правила", "Clear filters": "Очистить фильтры", + "Clear Mapping": "Очистить сопоставление", "Clear mode flags in prompts": "Очистить флаги режимов в промптах", "Clear search": "Очистить поиск", "Clear selection": "Снять выделение", @@ -614,8 +665,8 @@ "Click \"Create Plan\" to create your first subscription plan": "Нажмите «Создать план», чтобы создать первый план подписки", "Click \"Generate\" to create a token": "Нажмите \"Сгенерировать\", чтобы создать токен", "Click for details": "Нажмите для подробностей", - "Click save when you're done.": "Нажмите сохранить, когда закончите.", "Click save when you're done.": "Нажмите «Сохранить», когда закончите.", + "Click save when you're done.": "Нажмите сохранить, когда закончите.", "Click the button below to bind your Telegram account": "Нажмите кнопку ниже, чтобы привязать ваш аккаунт Telegram", "Click to open deployment": "Нажмите, чтобы открыть развертывание", "Click to preview audio": "Нажмите для предпросмотра аудио", @@ -625,27 +676,29 @@ "Click to view full details": "Нажмите для просмотра подробностей", "Click to view full error message": "Нажмите, чтобы увидеть полное сообщение об ошибке", "Click to view full prompt": "Нажмите, чтобы увидеть полный промпт", + "Client header value": "Значение заголовка клиента", "Client ID": "ID клиента", "Client Secret": "Секрет клиента", - "Client header value": "Значение заголовка клиента", "Close": "Закрыть", - "Close Today": "Закрыть сегодня", "Close dialog": "Закрыть диалог", "Close menu": "Закрыть меню", + "Close Today": "Закрыть сегодня", "Cloudflare": "Cloudflare", + "CNY": "Юань", + "CNY per USD": "CNY за USD", "Code": "Код", "Codes copied!": "Коды скопированы!", "Codex": "Codex", "Codex Account & Usage": "Аккаунт и использование Codex", "Codex Authorization": "Авторизация Codex", - "Codex CLI Header Passthrough": "Проброс заголовков Codex CLI", "Codex channels use an OAuth JSON credential as the key.": "Каналы Codex используют учётные данные OAuth в формате JSON в качестве ключа.", + "Codex CLI Header Passthrough": "Проброс заголовков Codex CLI", "Cohere": "Cohere", "Collapse": "Свернуть", "Collapse All": "Свернуть все", "Color": "Цвет", - "Color Stops": "Color Stops", "Color is required": "Цвет обязателен", + "Color Stops": "Color Stops", "Color:": "Цвет:", "Coming Soon!": "Скоро!", "Comma-separated color values for the gradient.": "Comma-separated color values for the gradient.", @@ -658,9 +711,10 @@ "Common": "Общие", "Common Keys": "Часто используемые ключи", "Common Logs": "Общие журналы", - "Common User": "Обычный пользователь", "Common ports include 25, 465, and 587": "Распространенные порты включают 25, 465 и 587", + "Common User": "Обычный пользователь", "Community driven, self-hosted, and extensible": "Развивается сообществом, поддерживает самостоятельное размещение и расширение", + "compatible API routes": "совместимых API-маршрутов", "Compatible API routes for common AI application workflows": "Совместимые API-маршруты для типовых сценариев ИИ-приложений", "Complete API documentation with multi-language SDK support": "Полная документация API с поддержкой SDK на нескольких языках", "Complete Order": "Вывод заказа", @@ -684,12 +738,6 @@ "Configuration for Stripe payment integration": "Конфигурация для интеграции платежей Stripe", "Configuration required": "Требуется настройка", "Configure": "Настройка", - "Configure API documentation links for the dashboard": "Настроить ссылки на документацию API для панели управления", - "Configure Creem products. Provide a JSON array.": "Настройте продукты Creem. Укажите массив JSON.", - "Configure Gemini safety behavior, version overrides, and thinking adapter": "Настроить поведение безопасности Gemini, переопределения версий и адаптер мышления", - "Configure Passkey (WebAuthn) login settings": "Настроить настройки входа с помощью ключа доступа (WebAuthn)", - "Configure Waffo Pancake hosted checkout integration for USD-priced top-ups": "Настроить хостовую интеграцию Waffo Pancake (hosted checkout) для пополнений в USD", - "Configure Waffo payment aggregation platform integration": "Настроить интеграцию платёжной платформы Waffo", "Configure a Creem product for user recharge options.": "Настройте продукт Creem для опций пополнения пользователя.", "Configure a custom ratio for when users use a specific token group.": "Настроить пользовательский коэффициент при использовании определённой группы токенов.", "Configure a group that users can select when creating API keys.": "Настройте группу, которую пользователи могут выбрать при создании ключей API.", @@ -697,21 +745,25 @@ "Configure a payment method for user recharge options.": "Настройте способ оплаты для опций пополнения счета пользователя.", "Configure a predefined chat link for end users.": "Настройте предопределенную ссылку для чата для конечных пользователей.", "Configure and deploy a new container instance.": "Настройте и разверните новый экземпляр контейнера.", + "Configure API documentation links for the dashboard": "Настроить ссылки на документацию API для панели управления", "Configure at:": "Настроить в:", "Configure availability monitoring panel": "Настройка панели мониторинга доступности", "Configure available payment methods. Provide a JSON array.": "Настроить доступные способы оплаты. Предоставьте JSON-массив.", "Configure basic system information and branding": "Настроить основную информацию о системе и брендинг", "Configure channel affinity (sticky routing) rules": "Настроить правила привязки к каналу (липкая маршрутизация)", + "Configure Creem products. Provide a JSON array.": "Настройте продукты Creem. Укажите массив JSON.", "Configure custom OAuth providers for user authentication": "Настройка пользовательских OAuth-провайдеров для аутентификации пользователей", "Configure daily check-in rewards for users": "Настроить ежедневные награды за регистрацию для пользователей", "Configure discount rates based on recharge amounts": "Настроить скидки в зависимости от сумм пополнения", "Configure experimental data export for the dashboard": "Настроить экспериментальный экспорт данных для панели управления", + "Configure Gemini safety behavior, version overrides, and thinking adapter": "Настроить поведение безопасности Gemini, переопределения версий и адаптер мышления", "Configure in your Creem dashboard": "Настройте в панели управления Creem", "Configure io.net API key for model deployments": "Настройте API-ключ io.net для развертывания моделей", "Configure keyword filtering for prompts and responses.": "Настроить фильтрацию по ключевым словам для запросов и ответов.", "Configure model, caching, and group ratios used for billing": "Настроить модель, кэширование и групповые коэффициенты, используемые для выставления счетов", "Configure monitoring status page groups for the dashboard": "Настроить группы страниц состояния мониторинга для панели управления", "Configure outgoing email server for notifications": "Настроить исходящий почтовый сервер для уведомлений", + "Configure Passkey (WebAuthn) login settings": "Настроить настройки входа с помощью ключа доступа (WebAuthn)", "Configure password-based login and registration": "Настроить вход и регистрацию по паролю", "Configure per-model ratio for image inputs or outputs.": "Настроить коэффициент для каждой модели для ввода или вывода изображений.", "Configure per-tool unit prices ($/1K calls). Per-request models do not incur additional tool fees.": "Настройте стоимость единицы на инструмент ($/1K вызовов). Для моделей с оплатой за запрос доп. плата за инструменты не взимается.", @@ -727,6 +779,8 @@ "Configure upstream providers and routing.": "Настроить провайдеров верхнего уровня и маршрутизацию.", "Configure upstream worker or proxy service for outbound requests": "Настроить вышестоящий рабочий или прокси-сервис для исходящих запросов", "Configure user quota allocation and rewards": "Настроить распределение пользовательских квот и вознаграждений", + "Configure Waffo Pancake hosted checkout integration for USD-priced top-ups": "Настроить хостовую интеграцию Waffo Pancake (hosted checkout) для пополнений в USD", + "Configure Waffo payment aggregation platform integration": "Настроить интеграцию платёжной платформы Waffo", "Configure xAI Grok model settings": "Настроить параметры модели xAI Grok", "Configure xAI Grok model specific settings": "Настроить параметры модели xAI Grok", "Configure your account behavior preferences": "Настроить предпочтения поведения вашей учетной записи", @@ -737,22 +791,22 @@ "Confirm Billing Conflicts": "Подтвердить конфликты выставления счетов", "Confirm Changes": "Подтвердить изменения", "Confirm Cleanup": "Подтвердить очистку", - "Confirm Creem Purchase": "Подтвердить покупку Creem", - "Confirm New Password": "Подтвердить новый пароль", - "Confirm Payment": "Подтвердить оплату", - "Confirm Selection": "Подтвердить выбор", - "Confirm Unbind": "Подтвердить отвязку", "Confirm cleanup of inactive disk cache?": "Подтвердить очистку неактивного дискового кэша?", "Confirm clearing all channel affinity cache": "Подтвердите очистку всего кэша привязки к каналу", "Confirm clearing cache for this rule": "Подтвердите очистку кэша этого правила", + "Confirm Creem Purchase": "Подтвердить покупку Creem", "Confirm delete": "Подтвердить удаление", "Confirm disable": "Подтвердить отключение", "Confirm enable": "Подтвердить включение", "Confirm invalidate": "Подтвердить аннулирование", "Confirm log cleanup": "Подтвердить очистку логов", "Confirm log file cleanup?": "Подтвердить очистку файлов журналов?", + "Confirm New Password": "Подтвердить новый пароль", "Confirm password": "Подтвердить пароль", + "Confirm Payment": "Подтвердить оплату", + "Confirm Selection": "Подтвердить выбор", "Confirm settings and finish setup": "Подтвердите настройки и завершите установку", + "Confirm Unbind": "Подтвердить отвязку", "Confirm your identity before removing this Passkey from your account.": "Подтвердите свою личность перед удалением этой Passkey из вашей учётной записи.", "Confirm your identity with Two-factor Authentication before registering a Passkey.": "Подтвердите свою личность с помощью двухфакторной аутентификации перед регистрацией Passkey.", "Conflict": "Противоречие", @@ -763,8 +817,8 @@ "Connection failed": "Не удалось подключиться", "Connection successful": "Подключение успешно", "Console": "Консоль", - "Console Area": "Область консоли", "Console area": "Область консоли", + "Console Area": "Область консоли", "Consume": "Расход", "Container": "Контейнер", "Container name": "Имя контейнера", @@ -776,13 +830,13 @@ "Content not found.": "Контент не найден.", "Content not modified!": "Контент не изменён!", "Continue": "Продолжить", + "Continue with {{name}}": "Продолжить с {{name}}", "Continue with Discord": "Продолжить с Discord", "Continue with GitHub": "Продолжить с GitHub", "Continue with LinuxDO": "Продолжить с LinuxDO", "Continue with OIDC": "Продолжить с OIDC", "Continue with Telegram": "Продолжить с Telegram", "Continue with WeChat": "Продолжить с WeChat", - "Continue with {{name}}": "Продолжить с {{name}}", "Control log retention and clean historical data.": "Контролировать хранение логов и очистку исторических данных.", "Control passthrough behavior and connection keep-alive settings": "Контролировать сквозное поведение и настройки поддержания соединения", "Control request frequency to prevent abuse and manage system load.": "Контролировать частоту запросов для предотвращения злоупотреблений и управления нагрузкой на систему.", @@ -794,32 +848,31 @@ "Convert string to lowercase": "Преобразовать строку в нижний регистр", "Convert string to uppercase": "Преобразовать строку в верхний регистр", "Copied": "Скопировано", - "Copied to clipboard": "Скопировано в буфер обмена", "Copied {{count}} key(s)": "Скопировано {{count}} ключ(ей)", - "Copied!": "Скопировано!", + "Copied to clipboard": "Скопировано в буфер обмена", "Copied: {{model}}": "Скопировано: {{model}}", + "Copied!": "Скопировано!", "Copy": "Копировать", - "Copy API key": "Скопировать ключ API", + "Copy a request header": "Копировать заголовок запроса", "Copy All": "Скопировать все", + "Copy all backup codes": "Скопировать все резервные коды", "Copy All Codes": "Скопировать все коды", + "Copy API key": "Скопировать ключ API", + "Copy authorization link": "Копировать ссылку авторизации", "Copy Channel": "Скопировать канал", + "Copy code": "Копировать код", "Copy Connection Info": "Копировать данные подключения", + "Copy failed": "Не удалось скопировать", "Copy Field": "Копировать поле", "Copy Header": "Копировать заголовок", "Copy Key": "Копировать ключ", "Copy Link": "Копировать ссылку", - "Copy Request Header": "Копировать заголовок запроса", - "Copy URL": "Скопировать URL", - "Copy a request header": "Копировать заголовок запроса", - "Copy all backup codes": "Скопировать все резервные коды", - "Copy authorization link": "Копировать ссылку авторизации", - "Copy code": "Копировать код", - "Copy failed": "Не удалось скопировать", "Copy model name": "Скопировать имя модели", "Copy model names": "Скопировать имена моделей", "Copy prompt": "Копировать промпт", "Copy redemption code": "Скопировать код активации", "Copy referral link": "Скопировать реферальную ссылку", + "Copy Request Header": "Копировать заголовок запроса", "Copy secret key": "Скопировать секретный ключ", "Copy selected codes": "Копировать выбранные коды", "Copy selected keys": "Копировать выбранные ключи", @@ -828,42 +881,44 @@ "Copy this prompt and send it to an LLM (e.g. ChatGPT / Claude) to help design your billing expression.": "Скопируйте этот промпт и отправьте его LLM (например, ChatGPT / Claude), чтобы помочь с разработкой выражения тарификации.", "Copy to clipboard": "Копировать в буфер обмена", "Copy token": "Копировать токен", + "Copy URL": "Скопировать URL", "Core Configuration": "Основная конфигурация", "Core Features": "Основные функции", "Cost": "Стоимость", - "Cost Tracking": "Отслеживание затрат", "Cost in USD per request, regardless of tokens used.": "Стоимость в долларах США за запрос, независимо от использованных токенов.", + "Cost Tracking": "Отслеживание затрат", "Count must be between {{min}} and {{max}}": "Количество должно быть от {{min}} до {{max}}", "Coze": "Coze", + "CPU Threshold (%)": "Порог CPU (%)", "Create": "Создать", - "Create API Key": "Создать ключ API", - "Create Channel": "Создать канал", - "Create Code": "Создать код", - "Create Model": "Создать модель", - "Create Plan": "Создать план", - "Create Prefill Group": "Создать группу предзаполнения", - "Create Provider": "Создать провайдер", - "Create Redemption Code": "Создать код активации", - "Create Vendor": "Создать поставщика", "Create a copy of:": "Создать копию:", "Create a new user group to configure ratio overrides for.": "Создайте новую группу пользователей для настройки переопределений соотношений.", "Create account": "Создать аккаунт", "Create an account": "Создать аккаунт", "Create and review invite or credit codes.": "Создать и просмотреть коды приглашений или кредитов.", + "Create API Key": "Создать ключ API", "Create cache": "Создать кеш", "Create cache ratio": "Создать коэффициент кэширования", + "Create Channel": "Создать канал", + "Create Code": "Создать код", "Create credentials for the root user": "Создайте учётные данные для администратора", "Create deployment": "Создать развертывание", + "Create Model": "Создать модель", "Create multiple API keys at once (random suffix will be added to names)": "Создать несколько API-ключей одновременно (случайный суффикс будет добавлен к именам)", "Create multiple channels from multiple keys": "Создать несколько каналов из нескольких ключей", "Create multiple redemption codes at once (1-100)": "Создать несколько кодов активации одновременно (1-100)", "Create new subscription plan": "Создать новый план подписки", "Create or update frequently asked questions for users": "Создать или обновить часто задаваемые вопросы для пользователей", "Create or update system announcements for the dashboard": "Создать или обновить системные объявления для панели управления", + "Create Plan": "Создать план", + "Create Prefill Group": "Создать группу предзаполнения", + "Create Provider": "Создать провайдер", + "Create Redemption Code": "Создать код активации", "Create request parameter override rules with a visual editor or raw JSON.": "Создавайте правила переопределения параметров запроса с помощью визуального редактора или необработанного JSON.", "Create request parameter override rules without editing raw JSON.": "Создавайте правила переопределения параметров запроса без редактирования raw JSON.", "Create reusable bundles of models, tags, endpoints, and user groups to speed up configuration elsewhere in the console.": "Создавайте многократно используемые пакеты моделей, тегов, конечных точек и групп пользователей для ускорения настройки в других частях консоли.", "Create succeeded": "Успешно создано", + "Create Vendor": "Создать поставщика", "Create your first group to reuse model, tag, or endpoint selections anywhere in the dashboard.": "Создайте свою первую группу для повторного использования выбранных моделей, тегов или конечных точек в любом месте панели управления.", "Create, revoke, and audit API tokens.": "Создать, отозвать и аудитировать токены API.", "Created": "Создано", @@ -883,44 +938,44 @@ "Current Balance": "Текущий баланс", "Current Billing": "Текущие счета", "Current Cache Size": "Текущий размер кэша", - "Current Level Only": "Только текущий уровень", - "Current Password": "Текущий пароль", - "Current Price": "Текущая цена", - "Current Value": "Текущее значение", "Current email: {{email}}. Enter a new email to change.": "Текущий email: {{email}}. Введите новый email для изменения.", "Current key": "Текущий ключ", "Current legacy JSON is invalid, cannot append": "Текущий JSON старого формата невалиден, добавление невозможно", + "Current Level Only": "Только текущий уровень", "Current models for the longest channel in this tag. May not include all models from all channels.": "Текущие модели для самого длинного канала в этом теге. Может не включать все модели из всех каналов.", + "Current Password": "Текущий пароль", + "Current Price": "Текущая цена", "Current quota": "Текущая квота", + "Current Value": "Текущее значение", "Current version": "Текущая версия", "Current:": "Текущий:", "Custom": "Пользовательский", "Custom (seconds)": "Пользовательский (секунды)", + "Custom Amount": "Пользовательская сумма", "Custom API base URL. For official channels, New API has built-in addresses. Only fill this for third-party proxy sites or special endpoints. Do not add /v1 or trailing slash.": "Пользовательский базовый URL API. Для официальных каналов New API имеет встроенные адреса. Заполняйте это поле только для сторонних прокси-сайтов или специальных конечных точек. Не добавляйте /v1 или завершающий слэш.", "Custom API base URL. Leave empty to use provider default.": "Пользовательский базовый URL API. Оставьте пустым для использования значения по умолчанию провайдера.", - "Custom Amount": "Пользовательская сумма", + "Custom color": "Пользовательский цвет", "Custom CSS": "Custom CSS", "Custom Currency": "Пользовательская валюта", "Custom Currency Symbol": "Пользовательский символ валюты", - "Custom Error Response": "Пользовательский ответ с ошибкой", - "Custom Home Page": "Пользовательская домашняя страница", - "Custom OAuth": "Пользовательский OAuth", - "Custom OAuth Providers": "Пользовательские OAuth-провайдеры", - "Custom Seconds": "Пользовательские секунды", - "Custom Time Range": "Пользовательский диапазон времени", - "Custom Zoom": "Пользовательский зум", - "Custom color": "Пользовательский цвет", "Custom currency symbol is required": "Пользовательский символ валюты обязателен", "Custom database driver detected.": "Обнаружен пользовательский драйвер базы данных.", + "Custom Error Response": "Пользовательский ответ с ошибкой", + "Custom Home Page": "Пользовательская домашняя страница", "Custom message shown when access is denied": "Пользовательское сообщение, отображаемое при отказе в доступе", "Custom model (comma-separated)": "Пользовательская модель (через запятую)", "Custom module": "Пользовательский модуль", "Custom multipliers when specific user groups use specific token groups. Example: VIP users get 0.9x rate when using \"edit_this\" group tokens.": "Пользовательские множители, когда определенные группы пользователей используют определенные группы токенов. Пример: VIP-пользователи получают ставку 0.9x при использовании токенов группы \"edit_this\".", + "Custom OAuth": "Пользовательский OAuth", + "Custom OAuth Providers": "Пользовательские OAuth-провайдеры", + "Custom Seconds": "Пользовательские секунды", "Custom sidebar section": "Пользовательский раздел боковой панели", + "Custom Time Range": "Пользовательский диапазон времени", + "Custom Zoom": "Пользовательский зум", "Customize sidebar display content": "Настроить содержимое боковой панели", "Daily": "Ежедневно", "Daily Check-in": "Ежедневный вход", - "Dark": "Тёмная", + "Dark": "Темные", "Dashboard": "Панель управления", "Dashboard Preferences": "Настройки панели управления", "Dashboards, tokens, and usage analytics.": "Панели управления, токены и аналитика использования.", @@ -930,74 +985,76 @@ "Data management and log viewing": "Управление данными и просмотр логов", "Database": "База данных", "Database check": "Проверка базы данных", - "Date Range": "Диапазон дат", "Date and time when this announcement should be displayed": "Дата и время отображения этого объявления", + "Date Range": "Диапазон дат", "Day": "День", + "days": "дней", "Days to Retain": "Дней хранения", "Deducted by subscription": "Списано по подписке", "DeepSeek": "DeepSeek", + "default": "по умолчанию", "Default": "По умолчанию", "Default (New Frontend)": "По умолчанию (Новый интерфейс)", "Default API Version *": "Версия API по умолчанию *", "Default API version for this channel": "Версия API по умолчанию для этого канала", "Default Collapse Sidebar": "Сворачивать боковую панель по умолчанию", - "Default Max Tokens": "Максимальное количество токенов по умолчанию", - "Default Responses API version, if empty, will use the API version above": "Версия API ответов по умолчанию; если пусто, будет использоваться версия API, указанная выше", - "Default TTL (seconds)": "TTL по умолчанию (секунды)", "Default consumption chart": "График потребления по умолчанию", + "Default Max Tokens": "Максимальное количество токенов по умолчанию", "Default model call chart": "График вызовов моделей по умолчанию", "Default range": "Диапазон по умолчанию", + "Default Responses API version, if empty, will use the API version above": "Версия API ответов по умолчанию; если пусто, будет использоваться версия API, указанная выше", "Default system prompt for this channel": "Системный промпт по умолчанию для этого канала", "Default time granularity": "Гранулярность времени по умолчанию", "Default to auto groups": "По умолчанию использовать автогруппы", + "Default TTL (seconds)": "TTL по умолчанию (секунды)", "Defaults to the wallet page when empty": "Если пусто, по умолчанию открывается страница кошелька", "Define API endpoints for this model (JSON format)": "Определить конечные точки API для этой модели (формат JSON)", "Define endpoint mappings for each provider.": "Определите сопоставления конечных точек для каждого провайдера.", "Define per-group rules to add, remove, or append selectable groups for specific user groups.": "Определите правила для групп, чтобы добавлять, удалять или дополнять доступные группы для конкретных групп пользователей.", "Delete": "Удалить", "Delete (": "Удалить (", + "Delete {{count}} API key(s)?": "Удалить {{count}} API-ключ(а/ей)?", + "Delete a runtime request header": "Удалить заголовок запроса во время выполнения", "Delete Account": "Удалить аккаунт", "Delete All Disabled": "Удалить все отключенные", "Delete All Disabled Channels?": "Удалить все отключенные каналы?", "Delete Auto-Disabled": "Удалить автоматически отключенные", "Delete Channel": "Удалить канал", "Delete Channels?": "Удалить каналы?", + "Delete condition": "Удалить условие", "Delete Condition": "Удалить условие", + "Delete failed": "Не удалось удалить", "Delete Field": "Удалить поле", + "Delete group": "Удалить группу", "Delete Header": "Удалить заголовок", "Delete Invalid": "Удалить недействительные", + "Delete invalid codes": "Удалить недействительные коды", + "Delete invalid codes (used/disabled/expired)": "Удалить недействительные коды (использованные/отключенные/истекшие)", + "Delete invalid redemption codes": "Удалить недействительные коды активации", "Delete Invalid Redemption Codes?": "Удалить недействительные коды активации?", + "Delete logs": "Удалить логи", "Delete Model": "Удалить модель", "Delete Models?": "Удалить модели?", "Delete Provider": "Удалить провайдер", "Delete Request Header": "Удалить заголовок запроса", - "Delete a runtime request header": "Удалить заголовок запроса во время выполнения", - "Delete condition": "Удалить условие", - "Delete failed": "Не удалось удалить", - "Delete group": "Удалить группу", - "Delete invalid codes": "Удалить недействительные коды", - "Delete invalid codes (used/disabled/expired)": "Удалить недействительные коды (использованные/отключенные/истекшие)", - "Delete invalid redemption codes": "Удалить недействительные коды активации", - "Delete logs": "Удалить логи", "Delete selected API keys": "Удалить выбранные ключи API", "Delete selected channels": "Удалить выбранные каналы", "Delete selected models": "Удалить выбранные модели", - "Delete {{count}} API key(s)?": "Удалить {{count}} API-ключ(а/ей)?", "Deleted": "Удалён", "Deleted successfully": "Удалено успешно", "Deleting will permanently remove this subscription record (including benefit details). Continue?": "Удаление безвозвратно удалит запись подписки (включая детали льгот). Продолжить?", "Deleting...": "Удаление...", - "Demo Site Mode": "Режим демонстрационного сайта", "Demo site": "Демо-сайт", "Demo site mode": "Режим демо-сайта", + "Demo Site Mode": "Режим демонстрационного сайта", "Demote": "Понизить версию", "Deploy your own gateway and start routing requests through your configured upstream services.": "Разверните собственный шлюз и начните маршрутизировать запросы через настроенные вышестоящие сервисы.", - "Deployment ID": "ID развертывания", - "Deployment Region *": "Регион развертывания *", "Deployment created successfully": "Развертывание создано успешно", "Deployment details": "Детали развертывания", + "Deployment ID": "ID развертывания", "Deployment location": "Локация развертывания", "Deployment logs": "Логи развертывания", + "Deployment Region *": "Регион развертывания *", "Deployment requested": "Развертывание запрошено", "Deployments": "Развертывания", "Desc": "Описание", @@ -1007,6 +1064,7 @@ "Description": "Описание", "Description is required": "Описание обязательно", "Designed and Developed by": "Разработано и создано", + "designed for scale": "спроектировано для масштабирования", "Destroyed": "Уничтожено", "Detailed request logs for investigations.": "Подробные журналы запросов для расследований.", "Details": "Детали", @@ -1027,7 +1085,6 @@ "Disable": "Отключить", "Disable 2FA": "Отключить 2FA", "Disable All": "Отключить все", - "Disable Two-Factor Authentication": "Отключить двухфакторную аутентификацию", "Disable on failure": "Отключить при сбое", "Disable selected channels": "Отключить выбранные каналы", "Disable selected models": "Отключить выбранные модели", @@ -1035,40 +1092,42 @@ "Disable thinking processing models": "Отключить модели с обработкой размышлений", "Disable this key?": "Отключить этот ключ?", "Disable threshold (seconds)": "Порог отключения (секунды)", + "Disable Two-Factor Authentication": "Отключить двухфакторную аутентификацию", + "disabled": "отключено", "Disabled": "Отключено", + "Disabled all channels with tag: {{tag}}": "Все каналы с тегом {{tag}} отключены", "Disabled Reason": "Причина отключения", "Disabled Time": "Время отключения", - "Disabled all channels with tag: {{tag}}": "Все каналы с тегом {{tag}} отключены", "Disabling...": "Отключение...", "Discord": "Discord", "Discount": "Скидка", - "Discount Rate": "Ставка скидки", - "Discount Rate:": "Ставка скидки:", "Discount map by recharge amount (JSON object)": "Карта скидок по сумме пополнения (объект JSON)", - "Discount rate must be greater than 0": "Ставка скидки должна быть больше 0", + "Discount Rate": "Ставка скидки", "Discount rate must be ≤ 1": "Ставка скидки должна быть ≤ 1", + "Discount rate must be greater than 0": "Ставка скидки должна быть больше 0", + "Discount Rate:": "Ставка скидки:", "Discount ratio for cache hits.": "Коэффициент скидки для попаданий в кэш.", "Discouraged": "Не рекомендуется", "Discover curated AI models, compare pricing and capabilities, and choose the right model for every scenario.": "Откройте для себя подобранные AI-модели, сравнивайте цены и возможности и выбирайте подходящую модель для каждого сценария.", "Discovering...": "Обнаружение...", + "Disk cache cleared": "Дисковый кэш очищен", "Disk Cache Settings": "Настройки дискового кэша", "Disk Cache Threshold (MB)": "Порог дискового кэша (МБ)", + "Disk cache, system performance monitoring, and operation statistics": "Дисковый кэш, мониторинг производительности и статистика", "Disk Hits": "Попаданий диска", "Disk Threshold (%)": "Порог диска (%)", - "Disk cache cleared": "Дисковый кэш очищен", - "Disk cache, system performance monitoring, and operation statistics": "Дисковый кэш, мониторинг производительности и статистика", - "Display Mode": "Режим отображения", - "Display Name": "Отображаемое имя", - "Display Name Field": "Поле отображаемого имени", - "Display Options": "Параметры отображения", - "Display Token Statistics": "Показать статистику токенов", "Display in Currency": "Отображать в валюте", + "Display Mode": "Режим отображения", "Display name": "Отображаемое имя", + "Display Name": "Отображаемое имя", "Display name and email used in outgoing messages": "Отображаемое имя и адрес электронной почты, используемые в исходящих сообщениях", + "Display Name Field": "Поле отображаемого имени", "Display name for this chat client.": "Отображаемое имя для этого чат-клиента.", "Display name for this monitoring group (max 50 characters)": "Отображаемое имя для этой группы мониторинга (макс. 50 символов)", "Display name for this payment method.": "Отображаемое имя для этого метода оплаты.", "Display name shown to users.": "Отображаемое название для пользователей.", + "Display Options": "Параметры отображения", + "Display Token Statistics": "Показать статистику токенов", "Displays the mobile sidebar.": "Отображает мобильную боковую панель.", "Do not over-trust this feature. IP may be spoofed. Please use with nginx, CDN and other gateways.": "Не доверяйте этой функции слишком сильно. IP может быть подделан. Используйте с nginx, CDN и другими шлюзами.", "Do not repeat check-in; only once per day": "Не повторяйте отметку; только один раз в день", @@ -1077,6 +1136,7 @@ "Docs": "Документы", "Documentation Link": "Ссылка на документацию", "Documentation or external knowledge base.": "Документация или внешняя база знаний.", + "does not exist or might have been removed.": "не существует или, возможно, был удален.", "Domain": "Домен", "Domain Filter Mode": "Режим фильтра домена", "Don't have an account?": "У вас нет аккаунта?", @@ -1088,8 +1148,8 @@ "Download": "Скачать", "Draw": "Рисование", "Drawing": "Рисование", - "Drawing Logs": "Журнал рисования", "Drawing logs": "Журналы рисования", + "Drawing Logs": "Журнал рисования", "Drawing task records": "Записи задач рисования", "Duplicate": "Дублировать", "Duration": "Длительность", @@ -1098,103 +1158,148 @@ "Duration Unit": "Единица срока", "Duration Value": "Значение срока", "Dynamic Pricing": "Динамическое ценообразование", - "Each backup code can only be used once.": "Каждый код восстановления можно использовать только один раз.", - "Each item must be an object with a single key-value pair.": "Каждый элемент должен быть объектом с одной парой ключ-значение.", - "Each item must have exactly one key-value pair.": "Каждый элемент должен иметь ровно одну пару ключ-значение.", - "Each line represents one keyword. Leave blank to disable the list but keep the switch states.": "Каждая строка представляет одно ключевое слово. Оставьте пустым, чтобы отключить список, но сохранить состояния переключателей.", - "Each tier supports 0~2 conditions (over len, p, c); the last tier is the catch-all without conditions. Use len (full input length, including cache hits) for tier conditions to avoid mis-routing when cache hits reduce p.": "Каждый уровень поддерживает 0–2 условия (по len, p, c); последний уровень — резервный, без условий. Используйте len (полная длина ввода, включая попадания в кэш) для условий уровня, чтобы избежать ошибочной маршрутизации, когда попадания в кэш уменьшают p.", - "Earn rewards when your referrals add funds. Transfer accumulated rewards to your balance anytime.": "Получайте вознаграждения, когда ваши рефералы пополняют счет. Переводите накопленные вознаграждения на свой баланс в любое время.", - "Edit": "Редактировать", - "Edit API Shortcut": "Редактировать ярлык API", - "Edit Announcement": "Редактировать объявление", + "e.g. ¥ or HK$": "напр. ¥ или HK$", + "e.g. 401, 403, 429, 500-599": "напр. 401, 403, 429, 500-599", + "e.g. 8 means 1 USD = 8 units": "напр. 8 означает 1 USD = 8 единиц", + "e.g. Basic Plan": "напр. Базовый план", + "e.g. Clean tool parameters to avoid upstream validation errors": "напр. Очистить параметры инструментов во избежание ошибок валидации", + "e.g. example.com": "напр. example.com", + "e.g. llama3.1:8b": "например llama3.1:8b", + "e.g. My GitLab": "например, My GitLab", + "e.g. my-gitlab": "например, my-gitlab", + "e.g. New API Console": "напр. консоль New API", + "e.g. openid profile email": "например, openid profile email", + "e.g. Suitable for light usage": "напр. Подходит для лёгкого использования", + "e.g. This request does not meet access policy": "напр. Этот запрос не соответствует политике доступа", + "e.g., #3b82f6,#8b5cf6": "e.g., #3b82f6,#8b5cf6", + "e.g., #ff0000,#0000ff": "e.g., #ff0000,#0000ff", + "e.g., #ffffff or white": "e.g., #ffffff or white", + "e.g., 0.95": "напр., 0.95", + "e.g., 100": "напр., 100", + "e.g., 123456": "напр., 123456", + "e.g., 2025-04-01-preview": "напр., 2025-04-01-preview", + "e.g., 50": "напр., 50", + "e.g., 500000": "напр., 500000", + "e.g., 7342866812345": "напр., 7342866812345", + "e.g., 8 means 8 local currency per USD": "например, 8 означает 8 местной валюты за доллар США", + "e.g., Alipay, WeChat": "например, Alipay, WeChat", + "e.g., Basic Package": "напр., Базовый пакет", + "e.g., CN2 GIA": "например, CN2 GIA", + "e.g., Core APIs, OpenAI, Claude": "например, Core APIs, OpenAI, Claude", + "e.g., d6b5da8hk1awo8nap34ube6gh": "например, d6b5da8hk1awo8nap34ube6gh", + "e.g., default, vip, premium": "например, default, vip, premium", + "e.g., gpt-4, claude-3": "напр. gpt-4, claude-3", + "e.g., gpt-4.1-nano,regex:^claude-.*$,regex:^sora-.*$": "например: gpt-4.1-nano,regex:^claude-.*$,regex:^sora-.*$", + "e.g., https://api.example.com (path before /suno)": "например, https://api.example.com (путь до /suno)", + "e.g., https://api.openai.com/v1/chat/completions": "например, https://api.openai.com/v1/chat/completions", + "e.g., https://ark.cn-beijing.volces.com": "например, https://ark.cn-beijing.volces.com", + "e.g., https://docs-test-001.openai.azure.com": "например, https://docs-test-001.openai.azure.com", + "e.g., https://fastgpt.run/api/openapi": "например, https://fastgpt.run/api/openapi", + "e.g., OpenAI GPT-4 Production": "напр., OpenAI GPT-4 Production", + "e.g., preview": "например, preview", + "e.g., prod_xxx": "напр., prod_xxx", + "e.g., Recommended for China Mainland Users": "например, Рекомендуется для пользователей материкового Китая", + "e.g., us-central1 or JSON format for model-specific regions": "например, us-central1 или формат JSON для регионов, специфичных для модели", + "e.g., v2.1": "например, v2.1", + "Each backup code can only be used once.": "Каждый код восстановления можно использовать только один раз.", + "Each item must be an object with a single key-value pair.": "Каждый элемент должен быть объектом с одной парой ключ-значение.", + "Each item must have exactly one key-value pair.": "Каждый элемент должен иметь ровно одну пару ключ-значение.", + "Each line represents one keyword. Leave blank to disable the list but keep the switch states.": "Каждая строка представляет одно ключевое слово. Оставьте пустым, чтобы отключить список, но сохранить состояния переключателей.", + "Each tier supports 0~2 conditions (over len, p, c); the last tier is the catch-all without conditions. Use len (full input length, including cache hits) for tier conditions to avoid mis-routing when cache hits reduce p.": "Каждый уровень поддерживает 0–2 условия (по len, p, c); последний уровень — резервный, без условий. Используйте len (полная длина ввода, включая попадания в кэш) для условий уровня, чтобы избежать ошибочной маршрутизации, когда попадания в кэш уменьшают p.", + "Earn rewards when your referrals add funds. Transfer accumulated rewards to your balance anytime.": "Получайте вознаграждения, когда ваши рефералы пополняют счет. Переводите накопленные вознаграждения на свой баланс в любое время.", + "Edit": "Редактировать", + "Edit {{title}}": "Редактировать {{title}}", + "Edit all channels with tag:": "Редактировать все каналы с тегом:", + "Edit Announcement": "Редактировать объявление", + "Edit API Shortcut": "Редактировать ярлык API", "Edit Channel": "Редактировать канал", + "Edit chat preset": "Редактировать пресет чата", + "Edit discount tier": "Редактировать уровень скидки", "Edit FAQ": "Редактировать FAQ", + "Edit group rate limit": "Редактировать лимит скорости группы", "Edit JSON object directly. Suitable for simple parameter overrides.": "Редактируйте JSON-объект напрямую. Подходит для простых переопределений параметров.", "Edit JSON text directly. Format will be validated on save.": "Редактируйте JSON-текст напрямую. Формат будет проверен при сохранении.", + "Edit model": "Редактировать модель", "Edit Model": "Редактировать модель", "Edit OAuth Provider": "Редактировать поставщика OAuth", + "Edit payment method": "Редактировать способ оплаты", "Edit Prefill Group": "Редактировать группу предзаполнения", + "Edit product": "Редактировать продукт", + "Edit ratio override": "Редактировать переопределение коэффициента", "Edit Rule": "Редактировать правило", + "Edit selectable group": "Редактировать выбираемую группу", "Edit Tag": "Редактировать тег", "Edit Tag:": "Редактировать тег:", "Edit Uptime Kuma Group": "Редактировать группу Uptime Kuma", "Edit Vendor": "Редактировать поставщика", - "Edit all channels with tag:": "Редактировать все каналы с тегом:", - "Edit chat preset": "Редактировать пресет чата", - "Edit discount tier": "Редактировать уровень скидки", - "Edit group rate limit": "Редактировать лимит скорости группы", - "Edit model": "Редактировать модель", - "Edit payment method": "Редактировать способ оплаты", - "Edit product": "Редактировать продукт", - "Edit ratio override": "Редактировать переопределение коэффициента", - "Edit selectable group": "Редактировать выбираемую группу", - "Edit {{title}}": "Редактировать {{title}}", + "edit_this": "изменить_это", "Editor mode": "Режим редактора", "Effect": "Effect", "Email": "Электронная почта", "Email (required for verification)": "Email (требуется для верификации)", "Email Address": "Адрес электронной почты", "Email Alias Restriction": "Ограничение по псевдониму Email", + "Email bound successfully!": "Email успешно привязан!", "Email Domain Restriction": "Ограничение по домену Email", "Email Domain Whitelist": "Белый список доменов Email", "Email Field": "Поле email", "Email Verification": "Верификация Email", - "Email bound successfully!": "Email успешно привязан!", "Embeddings": "Встраивания", "Empty value will be saved as {}.": "Пустое значение будет сохранено как {}.", "Enable": "Включить", "Enable 2FA": "Включить 2FA", "Enable All": "Включить все", + "Enable check-in feature": "Включить функцию прибытия", "Enable Data Dashboard": "Включить панель данных", + "Enable demo mode with limited functionality": "Включить демонстрационный режим с ограниченной функциональностью", "Enable Discord OAuth": "Включить Discord OAuth", "Enable Disk Cache": "Включить дисковый кэш", + "Enable drawing features": "Включить функции рисования", + "Enable filtering": "Включить фильтрацию", "Enable FunctionCall thoughtSignature Fill": "Включить автозаполнение thoughtSignature для FunctionCall", "Enable GitHub OAuth": "Включить GitHub OAuth", "Enable Groups": "Включить группы", - "Enable LinuxDO OAuth": "Включить LinuxDO OAuth", - "Enable OIDC": "Включить OIDC", - "Enable Passkey": "Включить Passkey", - "Enable Performance Monitoring": "Включить мониторинг производительности", - "Enable Request Passthrough": "Включить сквозную передачу запросов", - "Enable SSL/TLS": "Включить SSL/TLS", - "Enable SSRF Protection": "Включить защиту от SSRF", - "Enable Telegram OAuth": "Включить Telegram OAuth", - "Enable Turnstile": "Включить Turnstile", - "Enable Two-factor Authentication or Passkey in your profile to unlock sensitive operations.": "Включите двухфакторную аутентификацию или Passkey в своем профиле, чтобы разблокировать конфиденциальные операции.", - "Enable Waffo": "Включить Waffo", - "Enable Waffo Pancake": "Включить Waffo Pancake", - "Enable WeChat Auth": "Включить аутентификацию WeChat", - "Enable check-in feature": "Включить функцию прибытия", - "Enable demo mode with limited functionality": "Включить демонстрационный режим с ограниченной функциональностью", - "Enable drawing features": "Включить функции рисования", - "Enable filtering": "Включить фильтрацию", "Enable if this is an OpenRouter enterprise account with special response format": "Включите, если это корпоративный аккаунт OpenRouter со специальным форматом ответа", "Enable io.net deployments": "Включить развертывания io.net", "Enable io.net model deployment service in console": "Включить сервис развертывания моделей io.net в консоли", + "Enable LinuxDO OAuth": "Включить LinuxDO OAuth", + "Enable OIDC": "Включить OIDC", "Enable or disable this channel": "Включить или отключить этот канал", "Enable or disable this model": "Включить или отключить эту модель", "Enable or disable top navigation modules globally.": "Включить или отключить модули верхней навигации глобально.", + "Enable Passkey": "Включить Passkey", + "Enable Performance Monitoring": "Включить мониторинг производительности", "Enable rate limiting": "Включить ограничение скорости", + "Enable Request Passthrough": "Включить сквозную передачу запросов", "Enable selected channels": "Включить выбранные каналы", "Enable selected models": "Включить выбранные модели", + "Enable SSL/TLS": "Включить SSL/TLS", + "Enable SSRF Protection": "Включить защиту от SSRF", "Enable streaming mode for the test request.": "Включить потоковый режим для тестового запроса.", + "Enable Telegram OAuth": "Включить Telegram OAuth", "Enable test mode for Creem payments": "Включить тестовый режим для платежей Creem", "Enable this key?": "Включить этот ключ?", + "Enable Turnstile": "Включить Turnstile", + "Enable Two-factor Authentication or Passkey in your profile to unlock sensitive operations.": "Включите двухфакторную аутентификацию или Passkey в своем профиле, чтобы разблокировать конфиденциальные операции.", "Enable unlimited quota for this API key": "Включить неограниченную квоту для этого ключа API", "Enable violation deduction": "Включить вычет за нарушения", + "Enable Waffo": "Включить Waffo", + "Enable Waffo Pancake": "Включить Waffo Pancake", + "Enable WeChat Auth": "Включить аутентификацию WeChat", "Enable when proxying workers that fetch images over HTTP.": "Включить при проксировании воркеров, которые получают изображения по HTTP.", "Enabled": "Включено", - "Enabled Status": "Статус включения", "Enabled all channels with tag: {{tag}}": "Все каналы с тегом {{tag}} включены", + "Enabled Status": "Статус включения", "Enabling...": "Включается...", "End": "End", + "End color": "Конечный цвет", "End Error": "Ошибка завершения", "End Reason": "Причина завершения", "End Time": "Время окончания", "Endpoint": "Точка доступа", + "Endpoint config": "Конфигурация конечной точки", "Endpoint Configuration": "Конфигурация конечной точки", "Endpoint Type": "Тип конечной точки", - "Endpoint config": "Конфигурация конечной точки", "Endpoint:": "Конечная точка:", "Endpoints": "Конечные точки", "English": "Английский", @@ -1203,34 +1308,33 @@ "Ensure the string has a specified prefix": "Убедиться, что строка имеет указанный префикс", "Ensure the string has a specified suffix": "Убедиться, что строка имеет указанный суффикс", "Enter 6-digit code": "Введите 6-значный код", - "Enter API Key": "Введите API-ключ", - "Enter API Key, format: APIKey|Region": "Введите ключ API, формат: APIKey|Region", - "Enter API Key, one per line, format: APIKey|Region": "Введите ключ API, по одному на строку, формат: APIKey|Region", - "Enter Completion price to calculate ratio": "Введите цену Completion для расчёта коэффициента", - "Enter Creem API key": "Введите ключ API Creem", - "Enter HTML code (e.g.,

About us...

) or a URL (e.g., https://example.com) to embed as iframe": "Введите HTML-код (например,

О нас...

) или URL (например, https://example.com) для встраивания в виде iframe", - "Enter Input price to calculate ratio": "Введите цену Input для расчёта коэффициента", - "Enter JSON to override request headers": "Введите JSON для переопределения заголовков", - "Enter URL...": "Введите URL...", "Enter a name": "Введите имя", "Enter a new name": "Введите новое имя", "Enter a positive or negative amount to adjust the quota": "Введите положительную или отрицательную сумму для корректировки квоты", "Enter a valid email or leave blank": "Введите действительный email или оставьте пустым", "Enter a value and press Enter": "Введите значение и нажмите Enter", - "Enter amount in tokens": "Введите сумму в токенах", "Enter amount in {{currency}}": "Введите сумму в {{currency}}", + "Enter amount in tokens": "Введите сумму в токенах", "Enter announcement content (supports Markdown & HTML)": "Введите содержимое объявления (поддерживает Markdown и HTML)", "Enter announcement content (supports Markdown/HTML)": "Введите содержимое объявления (поддерживает Markdown/HTML)", + "Enter API Key": "Введите API-ключ", + "Enter API Key, format: APIKey|Region": "Введите ключ API, формат: APIKey|Region", + "Enter API Key, one per line, format: APIKey|Region": "Введите ключ API, по одному на строку, формат: APIKey|Region", "Enter application token": "Введите токен приложения", "Enter authenticator code": "Введите код аутентификатора", "Enter backup code (e.g., CAWD-OQDV)": "Введите резервный код (например, CAWD-OQDV)", "Enter banner content to display at the top of the page": "Enter banner content to display at the top of the page", "Enter code": "Введите код", "Enter code or backup code": "Введите код или резервный код", + "Enter Completion price to calculate ratio": "Введите цену Completion для расчёта коэффициента", + "Enter Creem API key": "Введите ключ API Creem", "Enter custom API endpoint URL": "Введите URL пользовательской конечной точки API", "Enter custom CSS...": "Enter custom CSS...", "Enter deployment region or JSON mapping:": "Введите регион развертывания или JSON-сопоставление:", "Enter display name": "Введите отображаемое имя", + "Enter HTML code (e.g.,

About us...

) or a URL (e.g., https://example.com) to embed as iframe": "Введите HTML-код (например,

О нас...

) или URL (например, https://example.com) для встраивания в виде iframe", + "Enter Input price to calculate ratio": "Введите цену Input для расчёта коэффициента", + "Enter JSON to override request headers": "Введите JSON для переопределения заголовков", "Enter key, format: AccessKey|SecretAccessKey|Region": "Введите ключ, формат: AccessKey|SecretAccessKey|Region", "Enter key, one per line, format: AccessKey|SecretAccessKey|Region": "Введите ключ, по одному на строку, формат: AccessKey|SecretAccessKey|Region", "Enter model name": "Введите имя модели", @@ -1245,23 +1349,24 @@ "Enter password": "Введите пароль", "Enter password (8-20 characters)": "Введите пароль (8-20 символов)", "Enter password (min 8 characters)": "Введите пароль (минимум 8 символов)", - "Enter quota in tokens": "Введите квоту в токенах", "Enter quota in {{currency}}": "Введите квоту в {{currency}}", + "Enter quota in tokens": "Введите квоту в токенах", "Enter secret key": "Введите секретный ключ", "Enter system prompt (user prompt takes priority)": "Введите системный промпт (пользовательский промпт имеет приоритет)", "Enter tag name (optional)": "Введите имя тега (необязательно)", - "Enter the 6-digit Time-based One-Time Password or 8-character backup code from your authenticator app.": "Введите 6-значный одноразовый пароль на основе времени или 8-значный резервный код из вашего приложения-аутентификатора.", "Enter the 6-digit code from your authenticator app": "Введите 6-значный код из вашего приложения-аутентификатора", - "Enter the Coze agent ID": "Введите ID агента Coze", + "Enter the 6-digit Time-based One-Time Password or 8-character backup code from your authenticator app.": "Введите 6-значный одноразовый пароль на основе времени или 8-значный резервный код из вашего приложения-аутентификатора.", "Enter the complete URL, supports": "Введите полный URL, поддерживает", + "Enter the Coze agent ID": "Введите ID агента Coze", "Enter the full URL of your Gotify server": "Введите полный URL вашего сервера Gotify", "Enter the knowledge base ID": "Введите ID базы знаний", "Enter the path before /suno, usually just the domain": "Введите путь перед /suno, обычно это просто домен", - "Enter the quota amount in tokens": "Введите количество квоты в токенах", "Enter the quota amount in {{currency}}": "Введите сумму квоты в {{currency}}", + "Enter the quota amount in tokens": "Введите количество квоты в токенах", "Enter the verification code": "Введите проверочный код", "Enter threshold": "Введите порог", "Enter token counts to preview the estimated cost (excluding group multipliers).": "Введите количество токенов для оценки стоимости (множители групп не учитываются).", + "Enter URL...": "Введите URL...", "Enter username": "Введите имя пользователя", "Enter verification code": "Введите проверочный код", "Enter webhook secret": "Введите секрет webhook", @@ -1277,8 +1382,8 @@ "Env (JSON object)": "Env (объект JSON)", "Environment variables": "Переменные окружения", "Environment variables (JSON)": "Переменные окружения (JSON)", - "Epay Gateway": "Шлюз Epay", "Epay endpoint": "Конечная точка Epay", + "Epay Gateway": "Шлюз Epay", "Epay merchant ID": "ID торговца EasyPay", "Epay secret key": "Секретный ключ Epay", "Equals": "Равно", @@ -1295,17 +1400,20 @@ "Example (all channels):": "Пример (все каналы):", "Example (specific channels):": "Пример (указанные каналы):", "Example:": "Пример:", + "example.com blocked-site.com": "example.com blocked-site.com", + "example.com company.com": "example.com company.com", "Excellent": "Отлично", "Exchange rate is required": "Требуется курс обмена", "Exchange rate must be greater than 0": "Курс обмена должен быть больше 0", "Exhausted": "Исчерпано", - "Existing Models ({{count}})": "Существующие модели ({{count}})", "Existing account will be reused": "Существующая учётная запись будет использована повторно", + "Existing Models ({{count}})": "Существующие модели ({{count}})", "Exists": "Существует", "Expand All": "Развернуть все", "Expected a JSON array.": "Ожидается JSON-массив.", "Experiment with prompts and models in real time.": "Экспериментируйте с промптами и моделями в реальном времени.", "Expiration Time": "Время истечения срока действия", + "expired": "истек", "Expired": "Просрочено", "Expired at": "Истекает", "Expired time cannot be earlier than current time": "Время истечения срока действия не может быть раньше текущего времени", @@ -1321,28 +1429,24 @@ "Extend failed": "Не удалось продлить", "Extended successfully": "Продлено успешно", "External Device": "Внешнее устройство", - "External Speed Test": "Внешний тест скорости", "External link for users to purchase quota": "Внешняя ссылка для пользователей для покупки квоты", "External operations": "Внешние операции", "External operations mode": "Режим внешних операций", + "External Speed Test": "Внешний тест скорости", "Extra": "Дополнительно", "Extra Notes (Optional)": "Дополнительные примечания (необязательно)", - "FAQ": "Часто задаваемые вопросы", - "FAQ added. Click \"Save Settings\" to apply.": "FAQ добавлен. Нажмите \"Сохранить настройки\" чтобы применить.", - "FAQ deleted. Click \"Save Settings\" to apply.": "FAQ удалён. Нажмите \"Сохранить настройки\" чтобы применить.", - "FAQ saved successfully": "FAQ сохранён успешно", - "FAQ updated. Click \"Save Settings\" to apply.": "FAQ обновлён. Нажмите \"Сохранить настройки\" чтобы применить.", "Fail Reason": "Причина сбоя", "Fail Reason Details": "Детали причины сбоя", "Failed": "Неудача", + "Failed to {{action}} user": "Не удалось выполнить {{action}} для пользователя", "Failed to adjust quota": "Не удалось изменить квоту", "Failed to apply overwrite.": "Не удалось применить перезапись.", "Failed to bind email": "Не удалось привязать email", "Failed to change password": "Не удалось изменить пароль", "Failed to check for updates": "Не удалось проверить обновления", "Failed to clean logs": "Не удалось очистить логи", - "Failed to complete Passkey login": "Не удалось завершить вход с Passkey", "Failed to complete order": "Не удалось завершить заказ", + "Failed to complete Passkey login": "Не удалось завершить вход с Passkey", "Failed to contact GitHub releases API": "Не удалось связаться с API GitHub Releases", "Failed to copy": "Не удалось скопировать", "Failed to copy channel": "Не удалось скопировать канал", @@ -1355,9 +1459,10 @@ "Failed to create provider": "Не удалось создать поставщика", "Failed to create redemption code": "Не удалось создать код активации", "Failed to create user": "Не удалось создать пользователя", + "Failed to delete {{count}} model(s)": "Не удалось удалить {{count}} моделей", + "Failed to delete account": "Не удалось удалить аккаунт", "Failed to delete API key": "Не удалось удалить API ключ", "Failed to delete API keys": "Не удалось удалить API ключи", - "Failed to delete account": "Не удалось удалить аккаунт", "Failed to delete channel": "Не удалось удалить канал", "Failed to delete disabled channels": "Не удалось удалить отключённые каналы", "Failed to delete invalid redemption codes": "Не удалось удалить недействительные коды активации", @@ -1366,22 +1471,21 @@ "Failed to delete redemption code": "Не удалось удалить код активации", "Failed to delete user": "Не удалось удалить пользователя", "Failed to delete vendor": "Не удалось удалить поставщика", - "Failed to delete {{count}} model(s)": "Не удалось удалить {{count}} моделей", + "Failed to disable {{count}} model(s)": "Не удалось отключить {{count}} моделей", "Failed to disable 2FA": "Не удалось отключить 2FA", "Failed to disable channels": "Не удалось отключить каналы", "Failed to disable model": "Не удалось отключить модель", "Failed to disable tag channels": "Не удалось отключить каналы тегов", - "Failed to disable {{count}} model(s)": "Не удалось отключить {{count}} моделей", "Failed to discover OIDC endpoints": "Не удалось обнаружить конечные точки OIDC", + "Failed to enable {{count}} model(s)": "Не удалось включить {{count}} моделей", "Failed to enable 2FA": "Не удалось включить 2FA", "Failed to enable channels": "Не удалось включить каналы", "Failed to enable model": "Не удалось включить модель", "Failed to enable tag channels": "Не удалось включить каналы тегов", - "Failed to enable {{count}} model(s)": "Не удалось включить {{count}} моделей", - "Failed to fetch OIDC configuration. Please check the URL and network status": "Не удалось получить конфигурацию OIDC. Проверьте URL и состояние сети", "Failed to fetch checkin status": "Не удалось получить статус регистрации", "Failed to fetch deployment details": "Не удалось получить сведения о развертывании", "Failed to fetch models": "Не удалось получить модели", + "Failed to fetch OIDC configuration. Please check the URL and network status": "Не удалось получить конфигурацию OIDC. Проверьте URL и состояние сети", "Failed to fetch upstream prices": "Не удалось получить цены провайдера", "Failed to fetch upstream ratios": "Не удалось получить коэффициенты upstream", "Failed to fetch usage": "Не удалось получить данные об использовании", @@ -1392,38 +1496,39 @@ "Failed to initialize system": "Не удалось инициализировать систему", "Failed to load": "Не удалось загрузить", "Failed to load API keys": "Не удалось загрузить API ключи", - "Failed to load Passkey status": "Не удалось загрузить статус Passkey", "Failed to load billing history": "Не удалось загрузить историю платежей", "Failed to load home page content": "Не удалось загрузить содержимое главной страницы", "Failed to load image": "Не удалось загрузить изображение", "Failed to load logs": "Не удалось загрузить логи", + "Failed to load Passkey status": "Не удалось загрузить статус Passkey", "Failed to load profile": "Не удалось загрузить профиль", "Failed to load redemption codes": "Не удалось загрузить коды активации", "Failed to load setup data": "Не удалось загрузить данные настройки", "Failed to load setup status": "Не удалось загрузить статус настройки", "Failed to load tag data": "Не удалось загрузить данные тегов", "Failed to load users": "Не удалось загрузить пользователей", - "Failed to parse JSON file: {{name}}": "Не удалось проанализировать файл JSON: {{name}}", "Failed to parse group items": "Не удалось разобрать элементы группы", + "Failed to parse JSON file: {{name}}": "Не удалось проанализировать файл JSON: {{name}}", "Failed to query balance": "Не удалось запросить баланс", "Failed to refresh cache stats": "Не удалось обновить статистику кэша", "Failed to regenerate backup codes": "Не удалось перегенерировать резервные коды", "Failed to register Passkey": "Не удалось зарегистрировать Passkey", "Failed to remove Passkey": "Не удалось удалить Passkey", "Failed to reset 2FA": "Не удалось сбросить 2FA", - "Failed to reset Passkey": "Не удалось сбросить Passkey", "Failed to reset model ratios": "Не удалось сбросить коэффициенты модели", + "Failed to reset Passkey": "Не удалось сбросить Passkey", "Failed to save": "Не удалось сохранить", + "Failed to save announcements": "Не удалось сохранить объявления", "Failed to save API info": "Не удалось сохранить информацию API", "Failed to save FAQ": "Не удалось сохранить FAQ", "Failed to save Uptime Kuma groups": "Не удалось сохранить группы Uptime Kuma", - "Failed to save announcements": "Не удалось сохранить объявления", "Failed to search API keys": "Не удалось найти API ключи", "Failed to search redemption codes": "Не удалось найти коды активации", "Failed to search users": "Не удалось найти пользователей", "Failed to send verification code": "Не удалось отправить код подтверждения", "Failed to set tag": "Не удалось установить тег", "Failed to setup 2FA": "Не удалось настроить 2FA", + "Failed to start {{provider}} login": "Не удалось начать вход через {{provider}}", "Failed to start Discord login": "Не удалось начать вход через Discord", "Failed to start GitHub login": "Не удалось начать вход через GitHub", "Failed to start LinuxDO login": "Не удалось начать вход через LinuxDO", @@ -1431,14 +1536,13 @@ "Failed to start Passkey login": "Не удалось начать вход с Passkey", "Failed to start Passkey registration": "Не удалось начать регистрацию Passkey", "Failed to start testing all channels": "Не удалось начать тестирование всех каналов", - "Failed to start {{provider}} login": "Не удалось начать вход через {{provider}}", "Failed to sync prices": "Не удалось синхронизировать цены", "Failed to sync ratios": "Не удалось синхронизировать коэффициенты", "Failed to test all channels": "Не удалось протестировать все каналы", "Failed to test channel": "Не удалось протестировать канал", + "Failed to update all balances": "Не удалось обновить все балансы", "Failed to update API key": "Не удалось обновить API ключ", "Failed to update API key status": "Не удалось обновить статус API ключа", - "Failed to update all balances": "Не удалось обновить все балансы", "Failed to update balance": "Не удалось обновить баланс", "Failed to update channel": "Не удалось обновить канал", "Failed to update models": "Не удалось обновить модели", @@ -1450,43 +1554,47 @@ "Failed to update settings": "Не удалось обновить настройки", "Failed to update tag": "Не удалось обновить тег", "Failed to update user": "Не удалось обновить пользователя", - "Failed to {{action}} user": "Не удалось выполнить {{action}} для пользователя", "Failure keywords": "Ключевые слова сбоя", "Fair": "Удовлетворительно", + "FAQ": "Часто задаваемые вопросы", + "FAQ added. Click \"Save Settings\" to apply.": "FAQ добавлен. Нажмите \"Сохранить настройки\" чтобы применить.", + "FAQ deleted. Click \"Save Settings\" to apply.": "FAQ удалён. Нажмите \"Сохранить настройки\" чтобы применить.", + "FAQ saved successfully": "FAQ сохранён успешно", + "FAQ updated. Click \"Save Settings\" to apply.": "FAQ обновлён. Нажмите \"Сохранить настройки\" чтобы применить.", "Fast": "Fast", "FastGPT": "FastGPT", "Feature in development": "Функция в разработке", "Fee": "Сбор", "Fee Amount": "Сумма сбора", - "Fetch Models": "Получить модели", "Fetch available models for:": "Получить доступные модели для:", "Fetch from Upstream": "Получить из Upstream", + "Fetch Models": "Получить модели", "Fetched {{count}} model(s) from upstream": "Получено {{count}} моделей из upstream", "Fetched {{count}} models": "Получено {{count}} моделей", "Fetching prefill groups...": "Загрузка групп предварительного заполнения...", "Fetching upstream prices...": "Получение цен провайдера...", "Fetching upstream ratios...": "Загрузка коэффициентов upstream...", + "field": "поле", "Field Mapping": "Сопоставление полей", - "Field Path": "Путь к полю", "Field passthrough controls": "Полевые сквозные элементы управления", + "Field Path": "Путь к полю", "File Search": "Поиск файлов", "Files to Retain": "Файлов для хранения", "Fill All Models": "Заполнить все модели", "Fill Codex CLI / Claude CLI Templates": "Заполнить шаблоны Codex CLI / Claude CLI", - "Fill Related Models": "Заполнить связанные модели", - "Fill Template": "Заполнить шаблон", - "Fill Templates": "Заполнить шаблоны", "Fill example (all channels)": "Подставить пример (все каналы)", "Fill example (specific channels)": "Подставить пример (указанные каналы)", "Fill in the following info to create a new subscription plan": "Заполните следующую информацию для создания нового плана подписки", + "Fill Related Models": "Заполнить связанные модели", + "Fill Template": "Заполнить шаблон", + "Fill Templates": "Заполнить шаблоны", "Fill thoughtSignature only for Gemini/Vertex channels using the OpenAI format": "Заполнять thoughtSignature только для каналов Gemini/Vertex, использующих формат OpenAI", "Filled {{count}} model(s)": "Заполнено {{count}} моделей", "Filled {{count}} related model(s)": "Заполнено {{count}} связанных моделей", "Filter": "Фильтр", - "Filter Dashboard Models": "Фильтровать модели панели управления", - "Filter by Midjourney task ID": "Фильтр по ID задачи Midjourney", "Filter by channel ID": "Фильтр по ID канала", "Filter by group": "Фильтр по группе", + "Filter by Midjourney task ID": "Фильтр по ID задачи Midjourney", "Filter by model name...": "Фильтр по имени модели...", "Filter by model...": "Фильтровать по модели...", "Filter by name or ID...": "Фильтр по имени или ID...", @@ -1499,6 +1607,7 @@ "Filter by token name": "Фильтр по имени токена", "Filter by username": "Фильтр по имени пользователя", "Filter by username, name or email...": "Фильтр по имени пользователя, имени или email...", + "Filter Dashboard Models": "Фильтровать модели панели управления", "Filter models by provider, group, type, endpoint, and tags.": "Фильтруйте модели по поставщику, группе, типу, endpoint и тегам.", "Filter models by type, endpoint, vendor, group and tags": "Фильтровать модели по типу, точке доступа, поставщику, группе и тегам", "Filter models...": "Фильтровать модели...", @@ -1522,24 +1631,38 @@ "Font color for the banner text. Supports any CSS color value. Leave empty for default.": "Font color for the banner text. Supports any CSS color value. Leave empty for default.", "Footer": "Подвал", "Footer text displayed at the bottom of pages": "Текст нижнего колонтитула, отображаемый внизу страниц", + "footer.columns.about.links.aboutProject": "О проекте", + "footer.columns.about.links.contact": "Связаться с нами", + "footer.columns.about.links.features": "Возможности", + "footer.columns.about.title": "О нас", + "footer.columns.docs.links.apiDocs": "Документация API", + "footer.columns.docs.links.installation": "Руководство по установке", + "footer.columns.docs.links.quickStart": "Быстрый старт", + "footer.columns.docs.title": "Документация", + "footer.columns.related.links.midjourney": "Midjourney-Proxy", + "footer.columns.related.links.neko": "neko-api-key-tool", + "footer.columns.related.links.oneApi": "Один API", + "footer.columns.related.title": "Связанные проекты", + "footer.defaultCopyright": "Все права защищены.", + "footer.new\u0061pi.projectAttributionSuffix": "Все права защищены. Разработано участниками проекта.", "For channels added after May 10, 2025, no need to remove \".\" from model names during deployment": "Для каналов, добавленных после 10 мая 2025 г., не нужно удалять \".\" из имён моделей при развёртывании", "For private deployments, format: https://fastgpt.run/api/openapi": "Для частных развертываний, формат: https://fastgpt.run/api/openapi", "Force AUTH LOGIN": "Принудительный AUTH LOGIN", "Force Format": "Принудительный формат", - "Force SMTP authentication using AUTH LOGIN method": "Принудительная аутентификация SMTP с использованием метода AUTH LOGIN", "Force format response to OpenAI standard (OpenAI channel only)": "Принудительно форматировать ответ в соответствии со стандартом OpenAI (только для канала OpenAI)", + "Force SMTP authentication using AUTH LOGIN method": "Принудительная аутентификация SMTP с использованием метода AUTH LOGIN", "Forgot password": "Забыли пароль", "Forgot password?": "Забыли пароль?", "Form reset to saved values": "Форма сброшена к сохранённым значениям", "Format": "Формат", "Format JSON": "Форматировать JSON", "Format:": "Формат:", - "Format: APIKey-AppId, e.g., fastgpt-0sp2gtvfdgyi4k30jwlgwf1i-64f335d84283f05518e9e041": "Формат: APIKey-AppId, напр., fastgpt-0sp2gtvfdgyi4k30jwlgwf1i-64f335d84283f05518e9e041", - "Format: APIKey|SecretKey": "Формат: APIKey|SecretKey", - "Format: APPID|APISecret|APIKey": "Формат: APPID|APISecret|APIKey", "Format: Access Key ID|Secret Access Key": "Формат: Идентификатор ключа доступа|Секретный ключ доступа", "Format: AccessKey|SecretKey (or just ApiKey if upstream is New API)": "Формат: AccessKey|SecretKey (или просто ApiKey, если upstream — New API)", "Format: Ak|Sk|Region": "Формат: Ak|Sk|Регион", + "Format: APIKey-AppId, e.g., fastgpt-0sp2gtvfdgyi4k30jwlgwf1i-64f335d84283f05518e9e041": "Формат: APIKey-AppId, напр., fastgpt-0sp2gtvfdgyi4k30jwlgwf1i-64f335d84283f05518e9e041", + "Format: APIKey|SecretKey": "Формат: APIKey|SecretKey", + "Format: APPID|APISecret|APIKey": "Формат: APPID|APISecret|APIKey", "Format: AppId|SecretId|SecretKey": "Формат: AppId|SecretId|SecretKey", "Forward requests directly to upstream providers without any post-processing.": "Перенаправлять запросы напрямую upstream-провайдерам без какой-либо постобработки.", "Free: {{free}} / Total: {{total}}": "Свободно: {{free}} / Всего: {{total}}", @@ -1555,45 +1678,49 @@ "GC Count": "Кол-во GC", "GC executed": "GC выполнен", "GC execution failed": "Ошибка выполнения GC", - "GPU count": "Количество GPU", "Gemini": "Gemini", "Gemini Image 4K": "Gemini Image 4K", "Gemini will continue to auto-detect thinking mode even with the adapter disabled. Enable this only when you need finer control over pricing and budgeting.": "Gemini продолжит автоматически определять режим мышления, даже если адаптер отключен. Включайте это только тогда, когда вам нужен более тонкий контроль над ценообразованием и бюджетированием.", "General": "Общие", "General Settings": "Общие настройки", - "Generate Lyrics": "Создать текст песни", - "Generate Music": "Создать музыку", - "Generate New Codes": "Сгенерировать новые коды", "Generate a Codex OAuth credential and paste it into the channel key field.": "Создайте учётные данные Codex OAuth и вставьте их в поле ключа канала.", "Generate and manage your API access token": "Генерировать и управлять вашим токеном доступа API", "Generate credential": "Создать учётные данные", + "Generate Lyrics": "Создать текст песни", + "Generate Music": "Создать музыку", "Generate new backup codes for account recovery": "Сгенерировать новые резервные коды для восстановления аккаунта", + "Generate New Codes": "Сгенерировать новые коды", "Generated image": "Сгенерированное изображение", "Generating new codes will invalidate all existing backup codes.": "Генерация новых кодов аннулирует все существующие резервные коды.", "Generating...": "Создание...", "Generic cache": "Общий кэш", - "Get Started": "Начать", "Get notified when balance falls below this value": "Получать уведомления, когда баланс опускается ниже этого значения", + "Get Started": "Начать", "GitHub": "GitHub", "Give the group a recognizable name and optional description.": "Дайте группе узнаваемое имя и необязательное описание.", "Give this group a recognizable name.": "Дайте этой группе узнаваемое имя.", + "Global configuration and administrative tools.": "Глобальная конфигурация и административные инструменты.", "Global Coverage": "Глобальное покрытие", "Global Model Configuration": "Глобальная конфигурация модели", - "Global configuration and administrative tools.": "Глобальная конфигурация и административные инструменты.", "Go Back": "Назад", "Go back and edit": "Вернуться и изменить", "Go to Dashboard": "Перейти в панель управления", - "Go to Settings": "Перейти к настройкам", "Go to first page": "Перейти на первую страницу", "Go to io.net API Keys": "Перейти к ключам API io.net", "Go to last page": "Перейти на последнюю страницу", "Go to next page": "Перейти на следующую страницу", "Go to previous page": "Перейти на предыдущую страницу", "Go to settings": "Перейти к настройкам", + "Go to Settings": "Перейти к настройкам", "Good": "Хорошо", "Gotify Application Token": "Токен приложения Gotify", "Gotify Documentation": "Документация Gotify", "Gotify Server URL": "URL-адрес сервера Gotify", + "gpt-3.5-turbo": "gpt-3.5-turbo", + "gpt-3.5-turbo-0125": "gpt-3.5-turbo-0125", + "gpt-4": "gpt-4", + "gpt-4, claude-3-opus, etc.": "gpt-4, claude-3-opus и т. д.", + "GPU count": "Количество GPU", "Gradient": "Gradient", "Greater Than": "Больше", "Greater Than or Equal": "Больше или равно", @@ -1601,8 +1728,6 @@ "Grok Settings": "Настройки Grok", "Group": "Группа", "Group & Quota": "Группа и квота", - "Group Name": "Имя группы", - "Group Ratio": "Групповой коэффициент", "Group added. Click \"Save Settings\" to apply.": "Группа добавлена. Нажмите \"Сохранить настройки\", чтобы применить.", "Group channels by tag for batch operations": "Группировать каналы по тегу для пакетных операций", "Group config overrides global limits, shares the same period": "Конфигурация группы переопределяет глобальные лимиты, использует тот же период", @@ -1611,8 +1736,11 @@ "Group identifier": "Идентификатор группы", "Group is required": "Группа обязательна", "Group name": "Имя группы", + "Group Name": "Имя группы", "Group name cannot be changed when editing.": "Имя группы нельзя изменить при редактировании.", "Group prices cannot be expanded because this expression is not a standard tiered pricing expression.": "Цены по группам нельзя развернуть, потому что это не стандартное выражение тарифов по уровням.", + "group ratio": "коэффициент группы", + "Group Ratio": "Групповой коэффициент", "Group ratios": "Соотношения группы", "Group updated. Click \"Save Settings\" to apply.": "Группа обновлена. Нажмите \"Сохранить настройки\", чтобы применить.", "Group-based rate limits": "Лимиты скорости на основе групп", @@ -1623,6 +1751,7 @@ "Groups that users can select when creating API keys.": "Группы, которые пользователи могут выбрать при создании ключей API.", "Guardrails": "Ограничители", "Guest": "Гость", + "h": "h", "Haiku Model": "Модель Haiku", "Hang tight while we finish connecting your account.": "Подождите, пока мы завершим подключение вашего аккаунта.", "Hang tight while we securely link this account to your profile.": "Подождите, пока мы безопасно привяжем этот аккаунт к вашему профилю.", @@ -1634,12 +1763,12 @@ "Have a Code?": "Есть код?", "Header": "Заголовок", "Header Name": "Имя заголовка", + "Header navigation": "Навигация по заголовку", "Header Override": "Переопределение заголовка", "Header Passthrough (X-Request-Id)": "Проброс заголовка (X-Request-Id)", "Header Value (supports string or JSON mapping)": "Значение заголовка (строка или JSON-маппинг)", - "Header navigation": "Навигация по заголовку", - "Hidden Channels": "Скрытые каналы", "Hidden — verify to reveal": "Скрыто — подтвердите, чтобы показать", + "Hidden Channels": "Скрытые каналы", "Hide": "Скрыть", "Hide API key": "Скрыть API ключ", "High Performance": "Высокая производительность", @@ -1655,16 +1784,17 @@ "Higher priority channels are selected first": "Каналы с более высоким приоритетом выбираются первыми", "Historical Usage": "История использования", "History of Midjourney-style image tasks.": "История задач генерации изображений в стиле Midjourney.", - "Hit Rate": "Частота попаданий", "Hit criteria: If cached tokens exist in usage, it counts as a hit.": "Критерий попадания: если в usage есть кэшированные токены, это считается попаданием.", + "Hit Rate": "Частота попаданий", "Hit tier": "Совпавший уровень", "Home": "Главная", "Home Page Content": "Содержимое главной страницы", "Hostname or IP of your SMTP provider": "Имя хоста или IP-адрес вашего SMTP-провайдера", "Hour": "Час", - "How It Works": "Как это работает", + "hours": "часов", "How client credentials are sent to the token endpoint": "Как учетные данные клиента отправляются на конечную точку токена", "How frequently the system tests all channels": "Как часто система тестирует все каналы", + "How It Works": "Как это работает", "How model mapping works": "Как работает сопоставление моделей", "How much to charge for each US dollar of balance (Epay)": "Сколько взимать за каждый доллар США баланса (Epay)", "How this model name should match requests": "Как это имя модели должно соответствовать запросам", @@ -1672,19 +1802,35 @@ "How to reset my quota?": "Как сбросить мою квоту?", "How to select keys: random or sequential polling": "Как выбирать ключи: случайно или последовательный опрос", "How will you use the platform?": "Как вы будете использовать платформу?", + "https://api.day.app/yourkey/{{title}}/{{content}}": "https://api.day.app/yourkey/{{title}}/{{content}}", + "https://api.example.com": "https://api.example.com", + "https://ark.ap-southeast.bytepluses.com": "https://ark.ap-southeast.bytepluses.com", + "https://ark.cn-beijing.volces.com": "https://ark.cn-beijing.volces.com", + "https://cloud.siliconflow.cn/i/hij0YNTZ": "https://cloud.siliconflow.cn/i/hij0YNTZ", + "https://docs.example.com": "https://docs.example.com", + "https://example.com": "https://example.com", + "https://example.com/logo.png": "https://example.com/logo.png", + "https://example.com/qr-code.png": "https://example.com/qr-code.png", + "https://example.com/topup": "https://example.com/topup", + "https://example.com/webhook": "https://example.com/webhook", + "https://gateway.example.com": "https://gateway.example.com", + "https://github.com/QuantumNous/new-api": "https://github.com/QuantumNous/new-api", + "https://gotify.example.com": "https://gotify.example.com", + "https://pay.example.com": "https://pay.example.com", + "https://provider.com/.well-known/openid-configuration": "https://provider.com/.well-known/openid-configuration", + "https://status.example.com": "https://status.example.com", + "https://wechat-server.example.com": "https://wechat-server.example.com", + "https://worker.example.workers.dev": "https://worker.example.workers.dev", + "https://your-server.example.com": "https://your-server.example.com", + "https://yourdomain.com": "https://yourdomain.com", "Human-readable name shown to users during Passkey prompts.": "Понятное для человека имя, отображаемое пользователям во время запросов Passkey.", "I confirm enabling high-risk retry": "Я подтверждаю включение высокорискового повтора", "I have read and agree to the": "Я прочитал и согласен с", "I understand that disabling 2FA will remove all protection and backup codes": "Я понимаю, что отключение 2FA удалит всю защиту и резервные коды", - "ID": "ID", - "IP": "IP", - "IP Address": "IP-адрес", - "IP Filter Mode": "Режим фильтрации IP", - "IP Restriction": "Ограничение IP", - "IP Whitelist (supports CIDR)": "Белый список IP (поддерживает CIDR)", "Icon": "Значок", "Icon file must be 100 KB or smaller": "Файл иконки должен быть не более 100 КБ", "Icon identifier (e.g. github, gitlab)": "Идентификатор иконки (например, github, gitlab)", + "ID": "ID", "If an upstream error contains any of these keywords (case insensitive), the channel will be disabled automatically.": "Если ошибка вышестоящего уровня содержит любое из этих ключевых слов (без учета регистра), канал будет автоматически отключен.", "If authorization succeeds, the generated JSON will be inserted into the key field. You still need to save the channel to persist it.": "При успешной авторизации сгенерированный JSON будет вставлен в поле ключа. Сохраните канал, чтобы применить изменения.", "If connecting to upstream One API or New API relay projects, use OpenAI type instead unless you know what you are doing": "При подключении к upstream One API или проектам-ретрансляторам New API используйте тип OpenAI, если только вы точно знаете, что делаете", @@ -1693,15 +1839,19 @@ "Image": "Изображение", "Image Generation": "Генерация изображений", "Image In": "Вход изображения", + "Image input": "Ввод изображения", "Image Out": "Выход изображения", "Image Preview": "Предпросмотр изображения", - "Image Tokens": "Токены изображений", - "Image input": "Ввод изображения", "Image ratio": "Коэффициент изображения", "Image to Video": "Изображение в видео", + "Image Tokens": "Токены изображений", "Import to CC Switch": "Импорт в CC Switch", + "Important Alert": "Важное предупреждение", + "Important Notice": "Важное уведомление", "In Progress": "Выполняется", "In:": "Вх:", + "Incident": "Инцидент", + "Incident Critical": "Критический инцидент", "Include Group": "Включить группу", "Include Model": "Включить модель", "Include Rule Name": "Включить имя правила", @@ -1714,10 +1864,10 @@ "Initializing…": "Инициализация…", "Inpaint": "Инпейнтинг", "Input": "Ввод", - "Input Tokens": "Входные токены", "Input mode": "Режим ввода", "Input price": "Цена входа", "Input tokens": "Входные токены", + "Input Tokens": "Входные токены", "Inspect user prompts": "Просмотр запросов пользователя", "Instance": "Экземпляр", "Integrations": "Интеграции", @@ -1726,19 +1876,19 @@ "Inter-group ratio overrides": "Переопределения соотношений между группами", "Interface Language": "Язык интерфейса", "Internal Notes": "Внутренние заметки", - "Internal Server Error!": "Внутренняя ошибка сервера!", "Internal notes (not shown to users)": "Внутренние заметки (не показываются пользователям)", + "Internal Server Error!": "Внутренняя ошибка сервера!", + "Invalid chat link. Please contact the administrator.": "Неверная ссылка на чат. Пожалуйста, обратитесь к администратору.", + "Invalid chat link. Please contact your administrator.": "Недействительная ссылка чата. Обратитесь к администратору.", + "Invalid code": "Неверный код", "Invalid JSON": "Некорректный JSON", "Invalid JSON format": "Неверный формат JSON", "Invalid JSON format or values out of allowed range": "Неверный формат JSON или значения вне допустимого диапазона", "Invalid JSON in parameter override template": "Недопустимый JSON в шаблоне переопределения параметров", "Invalid JSON string.": "Недопустимая строка JSON.", + "Invalid model mapping format": "Неверный формат сопоставления моделей", "Invalid Passkey registration response": "Неверный ответ на регистрацию Passkey", "Invalid Passkey response": "Недопустимый ответ Passkey", - "Invalid chat link. Please contact the administrator.": "Неверная ссылка на чат. Пожалуйста, обратитесь к администратору.", - "Invalid chat link. Please contact your administrator.": "Недействительная ссылка чата. Обратитесь к администратору.", - "Invalid code": "Неверный код", - "Invalid model mapping format": "Неверный формат сопоставления моделей", "Invalid payment redirect URL": "Недопустимый URL перенаправления для оплаты", "Invalid reset link, please request a new password reset": "Недействительная ссылка для сброса пароля, пожалуйста, запросите сброс пароля заново", "Invalid reset link, please request a new password reset.": "Недействительная ссылка для сброса, пожалуйста, запросите новый сброс пароля.", @@ -1751,31 +1901,41 @@ "Invitation Quota": "Квота приглашений", "Invite Info": "Информация о приглашении", "Invited": "Приглашен", - "Invited Users": "Приглашенные пользователи", "Invited by user ID": "Приглашен пользователем с ID", + "Invited Users": "Приглашенные пользователи", "Invitee Reward": "Награда приглашенному", "Inviter": "Пригласивший", "Inviter Reward": "Награда приглашающему", "Invites": "Приглашения", + "io.net API Key": "Ключ API io.net", + "io.net Deployments": "Развертывания io.net", + "IP": "IP", + "IP Address": "IP-адрес", + "IP Filter Mode": "Режим фильтрации IP", + "IP Restriction": "Ограничение IP", + "IP Whitelist (supports CIDR)": "Белый список IP (поддерживает CIDR)", + "is an open-source AI API gateway for self-hosted deployments. Connect multiple upstream services, manage models, keys, quotas, logs, and routing policies in one place.": "— это open-source API-шлюз для ИИ, предназначенный для самостоятельного размещения. Подключайте несколько вышестоящих сервисов и управляйте моделями, ключами, квотами, журналами и политиками маршрутизации в одном месте.", + "is less than the configured maximum cache size": "меньше настроенного максимального размера кэша", + "is the default price; ": "— цена по умолчанию; ", "It seems like the page you're looking for": "Похоже, страница, которую вы ищете", "Items": "Элементы", + "Japanese": "Японский", + "Jimeng": "Jimeng", + "Jina": "Jina", "JSON": "JSON", - "JSON Editor": "Редактирование JSON", - "JSON Mode": "Режим JSON", - "JSON Text": "JSON текст", "JSON array of group identifiers. When enabled below, new tokens rotate through this list.": "Массив JSON идентификаторов групп. Если включено ниже, новые токены будут циклически перебираться по этому списку.", + "JSON Editor": "Редактирование JSON", "JSON format error": "Ошибка формата JSON", "JSON format supports service account JSON files": "Формат JSON поддерживает JSON-файлы сервисного аккаунта", "JSON map of group → description exposed when users create API keys.": "JSON-карта группы → описание, отображаемое при создании пользователями ключей API.", "JSON map of group → ratio applied when the user selects the group explicitly.": "JSON-карта группы → соотношение, применяемое, когда пользователь явно выбирает группу.", - "JSON map of model → USD cost per request. Takes precedence over ratio based billing.": "JSON-карта модели → стоимость в долларах США за запрос. Имеет приоритет над тарификацией на основе соотношения.", "JSON map of model → multiplier applied to quota billing.": "JSON-карта модели → множитель, применяемый к тарификации по квоте.", + "JSON map of model → USD cost per request. Takes precedence over ratio based billing.": "JSON-карта модели → стоимость в долларах США за запрос. Имеет приоритет над тарификацией на основе соотношения.", + "JSON Mode": "Режим JSON", "JSON must be an object": "JSON должен быть объектом", "JSON object:": "Объект JSON:", + "JSON Text": "JSON текст", "JSON-based access control rules. Leave empty to allow all users.": "Правила контроля доступа на основе JSON. Оставьте пустым, чтобы разрешить всем пользователям.", - "Japanese": "Японский", - "Jimeng": "Jimeng", - "Jina": "Jina", "Just now": "Только что", "JustSong": "JustSong", "K": "K", @@ -1792,18 +1952,17 @@ "Keys, OAuth credentials, and multi-key update behavior.": "Ключи, учетные данные OAuth и поведение обновления нескольких ключей.", "Kling": "Kling", "Knowledge Base ID *": "ID базы знаний *", - "LLM prompt helper": "Помощник с промптом для LLM", "Landing page with system overview.": "Главная страница с обзором системы.", - "Language Preferences": "Языковые настройки", "Language preference saved": "Языковая настройка сохранена", + "Language Preferences": "Языковые настройки", "Language preferences sync across your signed-in devices and affect API error messages.": "Языковые настройки синхронизируются на всех ваших устройствах после входа и влияют на язык сообщений об ошибках API.", + "Last check time": "Время последней проверки", + "Last detected addable models": "Последние обнаруженные модели для добавления", "Last Login": "Последний вход", "Last Seen": "Последний раз", "Last Tested": "Последняя проверка", - "Last Used": "Последнее использование", - "Last check time": "Время последней проверки", - "Last detected addable models": "Последние обнаруженные модели для добавления", "Last updated:": "Последнее обновление:", + "Last Used": "Последнее использование", "Last used:": "Последнее использование:", "Layout": "Макет", "Learn more": "Узнать больше", @@ -1823,15 +1982,15 @@ "Leave empty to use system temp directory": "Оставьте пустым для системного временного каталога", "Leave empty to use username": "Оставьте пустым, чтобы использовать имя пользователя", "Legacy Format (JSON Object)": "Старый формат (JSON-объект)", - "Legacy Format Template": "Шаблон старого формата", "Legacy format must be a JSON object": "Старый формат должен быть JSON-объектом", + "Legacy Format Template": "Шаблон старого формата", "Less": "Меньше", "Less Than": "Меньше", "Less Than or Equal": "Меньше или равно", "Light": "Светлая", "Lightning Fast": "Молниеносно быстро", - "Limit Reached": "Достигнут лимит", "Limit period": "Период ограничения", + "Limit Reached": "Достигнут лимит", "Limit which models can be used with this key": "Ограничить модели, которые могут быть использованы с этим ключом", "Limited": "Ограничено", "LingYiWanWu": "LingYiWanWu", @@ -1842,6 +2001,7 @@ "List of models supported by this channel. Use comma to separate multiple models.": "Список моделей, поддерживаемых этим каналом. Используйте запятую для разделения нескольких моделей.", "List of origins (one per line) allowed for Passkey registration and authentication.": "Список источников (один на строку), разрешенных для регистрации и аутентификации Passkey.", "List view": "Вид списка", + "LLM prompt helper": "Помощник с промптом для LLM", "Load Balancing": "Балансировка нагрузки", "Load template...": "Загрузить шаблон...", "Loader": "Загрузчик", @@ -1858,41 +2018,44 @@ "Local models": "Локальные модели", "Locations": "Местоположения", "Locked": "Заблокировано", + "log": "записи", "Log Details": "Детали журнала", "Log Directory": "Каталог журналов", "Log File Count": "Кол-во файлов журналов", + "Log files older than {{value}} days will be deleted.": "Файлы журналов старше {{value}} дней будут удалены.", "Log IP address for usage and error logs": "Записывать IP-адрес для журналов использования и ошибок", "Log Maintenance": "Журнал обслуживания", "Log Type": "Тип журнала", - "Log files older than {{value}} days will be deleted.": "Файлы журналов старше {{value}} дней будут удалены.", "Logic": "Логика", "Login failed": "Ошибка входа", "Logo": "Логотип", "Logo URL": "URL логотипа", "Logs": "Журналы", + "m": "m", "Maintain a list of common questions for the dashboard help panel": "Вести список часто задаваемых вопросов для панели помощи дашборда", "Maintenance": "Обслуживание", + "Maintenance Stripe": "Полосы обслуживания", "Make it easier for teammates to pick the right group.": "Упростите выбор правильной группы для товарищей по команде.", "Manage": "Управление", - "Manage API channels and provider configurations": "Управление каналами API и конфигурациями провайдеров", - "Manage Bindings": "Управление привязками", - "Manage Keys": "Управление ключами", - "Manage Ollama Models": "Управление моделями Ollama", - "Manage Subscriptions": "Управление подписками", - "Manage Vendors": "Управление поставщиками", "Manage account bindings for this user": "Управление привязками аккаунта пользователя", "Manage and configure": "Управление и настройка", + "Manage API channels and provider configurations": "Управление каналами API и конфигурациями провайдеров", + "Manage Bindings": "Управление привязками", "Manage catalog visibility and pricing.": "Управление видимостью каталога и ценообразованием.", "Manage custom OAuth providers for user authentication": "Управление пользовательскими поставщиками OAuth для аутентификации пользователей", + "Manage Keys": "Управление ключами", "Manage local models for:": "Управление локальными моделями для:", "Manage model deployments": "Управление развёртываниями моделей", "Manage model metadata and configuration": "Управление метаданными и конфигурацией моделей", "Manage multi-key status and configuration for this channel": "Управление статусом и конфигурацией нескольких ключей для этого канала", + "Manage Ollama Models": "Управление моделями Ollama", "Manage redemption codes for quota top-up": "Управление кодами активации для пополнения квоты", "Manage server log files. Log files accumulate over time; regular cleanup is recommended to free disk space.": "Управление файлами журналов сервера. Файлы журналов накапливаются со временем; рекомендуется регулярная очистка.", "Manage subscription plan creation, pricing and status": "Управление созданием, ценообразованием и статусом подписок", "Manage subscription plans and pricing.": "Управление планами подписок и ценообразованием.", + "Manage Subscriptions": "Управление подписками", "Manage users and their permissions": "Управление пользователями и их разрешениями", + "Manage Vendors": "Управление поставщиками", "Manage your API keys for accessing the service": "Управление ключами API для доступа к сервису", "Manage your balance and payment methods": "Управление балансом и способами оплаты", "Manage your security settings and account access": "Управление настройками безопасности и доступом к аккаунту", @@ -1905,14 +2068,14 @@ "Match All (AND)": "Все совпадения (AND)", "Match Any (OR)": "Любое совпадение (OR)", "Match Mode": "Режим сопоставления", - "Match Text": "Текст совпадения", - "Match Type": "Тип соответствия", - "Match Value": "Значение сопоставления", - "Match Value (optional)": "Значение сопоставления (необязательно)", "Match model name exactly": "Точное совпадение имени модели", "Match models containing this name": "Совпадение моделей, содержащих это имя", "Match models ending with this name": "Совпадение моделей, заканчивающихся на это имя", "Match models starting with this name": "Совпадение моделей, начинающихся с этого имени", + "Match Text": "Текст совпадения", + "Match Type": "Тип соответствия", + "Match Value": "Значение сопоставления", + "Match Value (optional)": "Значение сопоставления (необязательно)", "Matched": "Совпадение", "Matched Tier": "Подходящий уровень", "Matching Rules": "Правила сопоставления", @@ -1920,15 +2083,16 @@ "Max Entries": "Макс. записей", "Max Requests (incl. failures)": "Макс. запросов (вкл. сбои)", "Max Requests (including failures)": "Макс. запросов (включая сбои)", - "Max Success": "Макс. успешных", - "Max Successful Requests": "Макс. успешных запросов", "Max requests per period": "Макс. запросов за период", + "Max Success": "Макс. успешных", "Max successful requests": "Макс. успешных запросов", + "Max Successful Requests": "Макс. успешных запросов", "Maximum 1000 characters. Supports Markdown and HTML.": "Максимум 1000 символов. Поддерживает Markdown и HTML.", "Maximum 200 characters": "Максимум 200 символов", "Maximum 500 characters. Supports Markdown and HTML.": "Максимум 500 символов. Поддерживает Markdown и HTML.", "Maximum check-in quota": "Максимальная квота регистрации", "Maximum quota amount awarded for check-in": "Максимальная сумма квоты, присуждаемая за регистрацию", + "maxRequests ≥ 0, maxSuccess ≥ 1, both ≤ 2,147,483,647": "maxRequests ≥ 0, maxSuccess ≥ 1, оба ≤ 2,147,483,647", "Medium": "Medium", "Memory Hits": "Попаданий памяти", "Memory Threshold (%)": "Порог памяти (%)", @@ -1941,70 +2105,76 @@ "Min Top-up": "Мин. пополнение", "Min Top-up:": "Мин. пополнение:", "MiniMax": "MiniMax", - "Minimum LinuxDO trust level required": "Требуемый минимальный уровень доверия LinuxDO", - "Minimum Trust Level": "Минимальный уровень доверия", "Minimum check-in quota": "Минимальная квота регистрации", + "Minimum LinuxDO trust level required": "Требуемый минимальный уровень доверия LinuxDO", "Minimum quota amount awarded for check-in": "Минимальная сумма квоты, присуждаемая за регистрацию", "Minimum recharge amount in USD": "Минимальная сумма пополнения в USD", "Minimum recharge amount to qualify for this discount.": "Минимальная сумма пополнения для получения этой скидки.", - "Minimum top-up (USD)": "Минимальное пополнение (USD)", "Minimum top-up (optional)": "Минимальное пополнение (необязательно)", + "Minimum top-up (USD)": "Минимальное пополнение (USD)", "Minimum top-up amount must be at least 1": "Минимальная сумма пополнения — не менее 1", "Minimum top-up quantity": "Минимальное количество пополнения", "Minimum topup amount: {{amount}}": "Минимальная сумма пополнения: {{amount}}", + "Minimum Trust Level": "Минимальный уровень доверия", "Minimum:": "Минимум:", "Minute": "Минута", - "Missing Models": "Отсутствующие модели", + "minutes": "минут", "Missing code": "Код отсутствует", + "Missing Models": "Отсутствующие модели", "Missing user data from Passkey login response": "В ответе Passkey для входа отсутствуют данные пользователя", "Mistral": "Mistral", "Mode": "Режим", + "model": "модель", "Model": "Модель", "Model Access": "Доступ к моделям", "Model Analytics": "Аналитика моделей", + "model billing support": "поддержка биллинга моделей", "Model Call Analytics": "Аналитика вызовов моделей", - "Model Description": "Описание модели", - "Model Group": "Группа моделей", - "Model ID": "ID модели", - "Model Limits": "Лимиты модели", - "Model Mapping": "Сопоставление моделей", - "Model Mapping (JSON)": "Сопоставление моделей (JSON)", - "Model Mapping must be a JSON object like": "Сопоставление моделей должно быть JSON-объектом, например", - "Model Name": "Название модели", - "Model Name *": "Имя модели *", - "Model Price": "Цена модели", - "Model Price Not Configured": "Цена модели не настроена", - "Model Pricing": "Цены на модели", - "Model Regex": "Регулярное выражение модели", - "Model Regex (one per line)": "Регулярное выражение модели (по одному на строку)", - "Model Square": "Витрина моделей", - "Model Tags": "Теги моделей", - "Model Version *": "Версия модели *", "Model context usage": "Использование контекста модели", "Model deleted": "Модель удалена", "Model deleted successfully": "Модель успешно удалена", "Model deployment service is disabled": "Сервис развертывания моделей отключен", + "Model Description": "Описание модели", "Model disabled successfully": "Модель успешно отключена", "Model enabled successfully": "Модель успешно включена", "Model fixed pricing": "Фиксированная цена модели", + "Model Group": "Группа моделей", + "Model ID": "ID модели", + "Model Limits": "Лимиты модели", + "Model Mapping": "Сопоставление моделей", + "Model Mapping (JSON)": "Сопоставление моделей (JSON)", + "Model Mapping must be a JSON object like": "Сопоставление моделей должно быть JSON-объектом, например", "Model mapping must be valid JSON": "Сопоставление моделей должно быть допустимым JSON", "Model name": "Имя модели", + "Model Name": "Название модели", + "Model Name *": "Имя модели *", "Model name is required": "Название модели обязательно", "Model names copied to clipboard": "Названия моделей скопированы в буфер обмена", "Model not found": "Модель не найдена", + "Model Price": "Цена модели", + "Model Price Not Configured": "Цена модели не настроена", + "Model Pricing": "Цены на модели", "Model pull failed: {{msg}}": "Ошибка тяги модели: {{msg}}", "Model ratio": "Коэффициент модели", "Model ratios": "Коэффициенты модели", "Model ratios reset successfully": "Соотношения моделей успешно сброшены", + "Model Regex": "Регулярное выражение модели", + "Model Regex (one per line)": "Регулярное выражение модели (по одному на строку)", + "Model Square": "Витрина моделей", + "Model Tags": "Теги моделей", "Model to use for testing": "Модель для использования при тестировании", "Model to use when testing channel connectivity": "Модель для использования при тестировании подключения канала", + "Model Version *": "Версия модели *", + "model(s) selected out of": "модель(и) выбрано из", + "model(s)? This action cannot be undone.": "модель(и)? Это действие нельзя отменить.", + "models": "моделей", "Models": "Модели", - "Models & Groups": "Модели и группы", "Models *": "Модели *", - "Models Directory": "Каталог моделей", + "Models & Groups": "Модели и группы", "Models appended successfully": "Модели успешно добавлены", "Models are required": "Требуются модели", "Models directory": "Каталог моделей", + "Models Directory": "Каталог моделей", "Models fetched successfully": "Модели успешно получены", "Models filled to form": "Модели заполнены в форму", "Models listed here will not automatically append or remove -thinking / -nothinking suffixes.": "Модели из этого списка не будут автоматически добавлять или удалять суффиксы -thinking / -nothinking.", @@ -2019,21 +2189,24 @@ "Monitoring & Alerts": "Мониторинг и оповещения", "Month": "Месяц", "Monthly": "Ежемесячно", + "months": "месяцев", "Moonshot": "Moonshot", "More": "Ещё", + "more mapping": "больше сопоставлений", "More templates...": "Другие шаблоны…", "More...": "Подробнее...", "Move": "Переместить", + "Move a request header": "Переместить заголовок запроса", + "Move affiliate rewards to your main balance": "Перевести партнерские вознаграждения на основной баланс", "Move Field": "Переместить поле", "Move Header": "Переместить заголовок", "Move Request Header": "Переместить заголовок запроса", - "Move a request header": "Переместить заголовок запроса", - "Move affiliate rewards to your main balance": "Перевести партнерские вознаграждения на основной баланс", "Move source field to target field": "Переместить исходное поле в целевое", + "ms": "мс", + "Multi-key channel: Keys will be": "Многоключевой канал: Ключи будут", "Multi-Key Management": "Управление несколькими ключами", "Multi-Key Mode (multiple keys, one channel)": "Режим нескольких ключей (несколько ключей, один канал)", "Multi-Key Strategy": "Стратегия нескольких ключей", - "Multi-key channel: Keys will be": "Многоключевой канал: Ключи будут", "Multi-key: Polling rotation": "Мульти-ключ: Циклическая ротация", "Multi-key: Random rotation": "Мульти-ключ: Случайная ротация", "Multi-protocol Compatible": "Совместимо с несколькими протоколами", @@ -2051,20 +2224,22 @@ "Must be a valid URL": "Должен быть действительный URL", "Must be at least 8 characters": "Должно быть не менее 8 символов", "My Subscriptions": "Мои подписки", + "my-status": "мой-статус", "MySQL detected": "Обнаружен MySQL", "MySQL is a production-ready relational database. Keep your credentials secure.": "MySQL — реляционная база данных, готовая к продакшену. Храните учётные данные в безопасности.", "MySQL is production ready. Ensure automated backups and a dedicated user with the minimal required privileges are configured.": "MySQL готов к работе. Убедитесь, что настроены автоматические резервные копии и выделенный пользователь с минимально необходимыми привилегиями.", "N/A": "Н/Д", "Name": "Название", "Name *": "Имя *", - "Name Rule": "Правило именования", - "Name Suffix": "Суффикс имени", "Name for this redemption code (1-20 characters)": "Имя для этого кода активации (1-20 символов)", "Name is available": "Имя доступно", "Name is not available": "Имя недоступно", "Name must be between {{min}} and {{max}} characters": "Имя должно быть длиной от {{min}} до {{max}} символов", + "Name Rule": "Правило именования", + "Name Suffix": "Суффикс имени", "Name the channel and choose the upstream provider.": "Задайте имя канала и выберите upstream-провайдера.", "Name the channel, choose the provider, configure API access, and set credentials.": "Задайте имя канала, выберите провайдера, настройте доступ к API и учетные данные.", + "name@example.com": "name@example.com", "Native format": "Собственный формат", "Need a code?": "Нужен код?", "Nested JSON defining per-group rules for adding (+:), removing (-:), or appending usable groups.": "Вложенный JSON, определяющий правила для каждой группы для добавления (+:), удаления (-:) или добавления используемых групп.", @@ -2078,48 +2253,32 @@ "New Format Template": "Шаблон нового формата", "New Group": "Новая группа", "New Models ({{count}})": "Новые модели ({{count}})", - "New Password": "Новый пароль", - "New User Quota": "Новая квота пользователя", "New name will be:": "Новое имя будет:", "New password": "Новый пароль", + "New Password": "Новый пароль", "New password must be different from current password": "Новый пароль должен отличаться от текущего пароля", + "New User Quota": "Новая квота пользователя", "New version available: {{version}}": "Доступна новая версия: {{version}}", "NewAPI": "NewAPI", "Next": "Следующий шаг", "Next branch": "Следующая ветка", "Next page": "Следующая страница", "Next reset": "Следующий сброс", - "No API Domains yet. Click \"Add API\" to create one.": "Пока нет доменов API. Нажмите \"Добавить API\", чтобы создать один.", - "No API Keys Found": "Ключи API не найдены", - "No API keys available. Create your first API key to get started.": "Нет доступных ключей API. Создайте свой первый ключ API, чтобы начать.", - "No API routes configured": "Нет настроенных маршрутов API", "No About Content Set": "Содержимое раздела \"О нас\" не установлено", "No Active": "Нет активных", - "No Change": "Без изменений", - "No Channels Found": "Каналы не найдены", - "No Data": "Нет данных", - "No Deployments Found": "Развертывания не найдены", - "No FAQ entries available": "Нет доступных записей FAQ", - "No FAQ entries yet. Click \"Add FAQ\" to create one.": "Пока нет записей FAQ. Нажмите \"Добавить FAQ\", чтобы создать одну.", - "No Inviter": "Нет пригласившего", - "No Logs Found": "Логи не найдены", - "No Models Found": "Модели не найдены", - "No Quota": "Нет квоты", - "No Redemption Codes Found": "Коды активации не найдены", - "No Reset": "Без сброса", - "No Retry": "Без повтора", - "No Sync": "Без синхронизации", - "No Upgrade": "Без повышения", - "No Uptime Kuma groups yet. Click \"Add Group\" to create one.": "Пока нет групп Uptime Kuma. Нажмите \"Добавить группу\", чтобы создать одну.", - "No Users Found": "Пользователи не найдены", "No additional type-specific settings for this channel type.": "Нет дополнительных настроек, специфичных для этого типа канала.", "No amount options configured. Add amounts below to get started.": "Не настроены параметры суммы. Добавьте суммы ниже, чтобы начать.", "No announcements at this time": "Нет объявлений на данный момент", "No announcements yet. Click \"Add Announcement\" to create one.": "Пока нет объявлений. Нажмите \"Добавить объявление\", чтобы создать одно.", - "No available Web chat links": "Нет доступных веб-ссылок для чата", + "No API Domains yet. Click \"Add API\" to create one.": "Пока нет доменов API. Нажмите \"Добавить API\", чтобы создать один.", + "No API keys available. Create your first API key to get started.": "Нет доступных ключей API. Создайте свой первый ключ API, чтобы начать.", + "No API Keys Found": "Ключи API не найдены", + "No API routes configured": "Нет настроенных маршрутов API", "No available models": "Нет доступных моделей", + "No available Web chat links": "Нет доступных веб-ссылок для чата", "No backup": "Нет резервной копии", "No billing records found": "Записи о выставлении счетов не найдены", + "No Change": "Без изменений", "No changes": "Нет изменений", "No changes made": "Изменения не внесены", "No changes to save": "Нет изменений для сохранения", @@ -2127,6 +2286,7 @@ "No channel type found.": "Тип канала не найден.", "No channels available. Create your first channel to get started.": "Нет доступных каналов. Создайте свой первый канал, чтобы начать.", "No channels found": "Каналы не найдены", + "No Channels Found": "Каналы не найдены", "No channels selected": "Каналы не выбраны", "No chat presets configured. Click \"Add chat preset\" to get started.": "Пресеты чата не настроены. Нажмите \"Добавить пресет чата\", чтобы начать.", "No chat presets match your search": "Нет пресетов чата, соответствующих вашему поиску", @@ -2136,21 +2296,27 @@ "No containers": "Нет контейнеров", "No custom OAuth providers configured yet.": "Пользовательские поставщики OAuth еще не настроены.", "No data": "Нет данных", + "No Data": "Нет данных", "No data available": "Нет доступных данных", "No deployments available. Create one to get started.": "Нет доступных развертываний. Создайте одно, чтобы начать.", + "No Deployments Found": "Развертывания не найдены", "No description available.": "Описание отсутствует.", "No discount tiers configured. Click \"Add discount tier\" to get started.": "Не настроены уровни скидок. Нажмите \"Добавить уровень скидки\", чтобы начать.", "No duplicate keys found": "Дубликаты ключей не найдены", "No enabled tokens available": "Нет доступных активных токенов", "No endpoints configured. Switch to JSON mode or add rows to define endpoints.": "Конечные точки не настроены. Переключитесь в режим JSON или добавьте строки для определения конечных точек.", + "No FAQ entries available": "Нет доступных записей FAQ", + "No FAQ entries yet. Click \"Add FAQ\" to create one.": "Пока нет записей FAQ. Нажмите \"Добавить FAQ\", чтобы создать одну.", "No files match the accepted types.": "Нет файлов, соответствующих допустимым типам.", "No group found.": "Группа не найдена.", "No group-based rate limits configured. Click \"Add group\" to get started.": "Групповые лимиты скорости не настроены. Нажмите \"Добавить группу\", чтобы начать.", "No groups match your search": "Нет групп, соответствующих вашему поиску", "No header overrides configured.": "Нет настроенных переопределений заголовков.", + "No Inviter": "Нет пригласившего", "No keys found": "Ключи не найдены", "No log entries matched the selected time.": "Нет записей журнала, соответствующих выбранному времени.", "No logs": "Нет логов", + "No Logs Found": "Логи не найдены", "No mappings configured. Click \"Add Row\" to get started.": "Нет настроенных сопоставлений. Нажмите \"Добавить строку\", чтобы начать.", "No matches found": "Совпадений не найдено", "No matching results": "Нет совпадений", @@ -2165,6 +2331,7 @@ "No models fetched from upstream": "Модели не получены от upstream", "No models fetched yet.": "Модели еще не получены.", "No models found": "Модели не найдены", + "No Models Found": "Модели не найдены", "No models found.": "Модели автомобиля не найдены.", "No models match your current filters.": "Модели, соответствующие вашим текущим фильтрам, не найдены.", "No models match your search": "Модели не найдены", @@ -2186,48 +2353,60 @@ "No products configured. Click \"Add product\" to get started.": "Продукты не настроены. Нажмите \"Добавить продукт\", чтобы начать.", "No products match your search": "Нет продуктов, соответствующих вашему поиску", "No providers available": "Нет доступных провайдеров", + "No Quota": "Нет квоты", "No ratio differences found": "Различия в коэффициентах не найдены", "No records found. Try adjusting your filters.": "Записи не найдены. Попробуйте изменить фильтры.", "No redemption codes available. Create your first redemption code to get started.": "Нет доступных кодов активации. Создайте свой первый код активации, чтобы начать.", + "No Redemption Codes Found": "Коды активации не найдены", "No related models available for this channel type": "Для этого типа канала нет доступных связанных моделей", "No release notes provided.": "Примечания к выпуску не предоставлены.", + "No Reset": "Без сброса", "No restriction": "Без ограничений", "No results for \"{{query}}\". Try adjusting your search or filters.": "Нет результатов для \"{{query}}\". Попробуйте изменить поиск или фильтры.", "No results found": "Поиск не дал результатов", "No results found.": "Результаты не найдены.", + "No Retry": "Без повтора", "No rules yet": "Правила отсутствуют", "No rules yet. Add a group below to get started.": "Правил пока нет. Добавьте группу ниже, чтобы начать.", "No status code mappings configured.": "Сопоставления кодов состояния не настроены.", "No subscription plans yet": "Планов подписки пока нет", "No subscription records": "Нет записей подписок", + "No Sync": "Без синхронизации", "No system announcements": "Нет системных объявлений", "No token found.": "Токен не найден.", "No tools configured": "Нет настроенных инструментов", + "No Upgrade": "Без повышения", "No upstream price differences found": "Различий в ценах провайдера не найдено", "No upstream ratio differences found": "Различия в коэффициентах вышестоящего потока не найдены", + "No Uptime Kuma groups yet. Click \"Add Group\" to create one.": "Пока нет групп Uptime Kuma. Нажмите \"Добавить группу\", чтобы создать одну.", "No uptime monitoring configured": "Мониторинг доступности не настроен", "No usage logs available. Logs will appear here once API calls are made.": "Нет логов использования. Они появятся после вызовов API.", "No user information available": "Нет данных пользователя", "No user selected": "Пользователь не выбран", "No users available. Try adjusting your search or filters.": "Нет доступных пользователей. Попробуйте изменить параметры поиска или фильтры.", + "No Users Found": "Пользователи не найдены", "Node Name": "Имя узла", "Non-stream": "Не потоковый", "None": "Нет", + "noreply@example.com": "noreply@example.com", "Normal": "Normal", "Normalized:": "Нормализовано:", - "Not Equals": "Не равно", - "Not Set": "Не установлено", - "Not Started": "Не начато", - "Not Submitted": "Не отправлено", "Not available": "Недоступно", "Not backed up": "Не сохранено", "Not bound": "Не привязан", + "Not Equals": "Не равно", + "Not Set": "Не установлено", "Not set yet": "Ещё не задано", + "Not Started": "Не начато", + "Not Submitted": "Не отправлено", "Not tested": "Не протестировано", "Not used yet": "Ещё не использовано", "Notice": "Уведомления", + "Notice Glass": "Стеклянное уведомление", "Notification Email": "Электронная почта для уведомлений", "Notification Method": "Метод уведомления", + "Notification Presets": "Пресеты уведомлений", + "Notification presets use fixed category colors and ignore the color palette.": "Пресеты уведомлений используют фиксированные цвета категории и игнорируют палитру.", "Notifications": "Уведомления", "Number of codes to create": "Количество кодов для создания", "Number of keys to create": "Количество ключей для создания", @@ -2236,33 +2415,37 @@ "Number of users invited": "Количество приглашенных пользователей", "OAuth Client ID": "Идентификатор клиента OAuth", "OAuth Client Secret": "OAuth Client Secret", - "OAuth Integrations": "Интеграции OAuth", "OAuth failed": "OAuth не удался", + "OAuth Integrations": "Интеграции OAuth", "OAuth start failed": "Ошибка запуска OAuth", - "OIDC": "OIDC", - "OIDC Client ID": "ID клиента OIDC", - "OIDC Client Secret": "Секрет клиента OIDC", - "OIDC configuration fetched successfully": "Конфигурация OIDC успешно получена", - "OIDC discovery URL. Click \"Auto-discover\" to fetch endpoints automatically.": "URL обнаружения OIDC. Нажмите \"Автообнаружение\" для автоматического получения конечных точек.", - "OIDC endpoints discovered successfully": "Конечные точки OIDC успешно обнаружены", "Object Prune Rules": "Правила очистки объектов", "Observability": "Наблюдаемость", "Obtain the API key, merchant ID, and RSA key pair from the Waffo dashboard, and configure the callback URL.": "Получите API-ключ, ID мерчанта и пару RSA-ключей в панели управления Waffo и настройте URL обратного вызова.", "Obtain the merchant, store, product and signing keys from your Waffo dashboard. Webhook URL: /api/waffo-pancake/webhook": "Получите в панели Waffo ID мерчанта, магазина, товара и ключи подписи. Webhook: /api/waffo-pancake/webhook", + "of": "записей, всего", + "of 3:": "из 3:", + "off": "выкл.", "Official": "Официальный", + "Official documentation": "Официальная документация", "Official Repository": "Официальный репозиторий", "Official Sync": "Официальная синхронизация", - "Official documentation": "Официальная документация", "OhMyGPT": "OhMyGPT", + "OIDC": "OIDC", + "OIDC Client ID": "ID клиента OIDC", + "OIDC Client Secret": "Секрет клиента OIDC", + "OIDC configuration fetched successfully": "Конфигурация OIDC успешно получена", + "OIDC discovery URL. Click \"Auto-discover\" to fetch endpoints automatically.": "URL обнаружения OIDC. Нажмите \"Автообнаружение\" для автоматического получения конечных точек.", + "OIDC endpoints discovered successfully": "Конечные точки OIDC успешно обнаружены", "Old Format Template": "Шаблон старого формата", "Old format: Direct override. New format: Supports conditional judgment and custom JSON operations.": "Старый формат: прямое переопределение. Новый формат: поддерживает условные суждения и пользовательские операции JSON.", "Ollama": "Ollama", "Ollama Models": "Ollama Модели", "One API": "Один API", - "One IP or CIDR range per line": "Один IP или диапазон CIDR на строку", - "One IP per line (empty for no restriction)": "Один IP на строку (пусто для отсутствия ограничений)", "One domain per line": "Один домен на строку", "One domain per line (only used when domain restriction is enabled)": "Один домен на строку (используется только при включении ограничения домена)", + "One IP or CIDR range per line": "Один IP или диапазон CIDR на строку", + "One IP per line (empty for no restriction)": "Один IP на строку (пусто для отсутствия ограничений)", + "one keyword per line": "одно ключевое слово на строку", "Online payment is not enabled. Please contact the administrator.": "Онлайн-оплата не включена. Пожалуйста, свяжитесь с администратором.", "Online topup is not enabled. Please use redemption code or contact administrator.": "Онлайн-пополнение не включено. Пожалуйста, используйте код активации или свяжитесь с администратором.", "Only allow specific email domains": "Разрешить только определенные домены электронной почты", @@ -2274,34 +2457,35 @@ "Oops! Page Not Found!": "Ой! Страница не найдена!", "Oops! Something went wrong": "Ой! Что-то пошло не так", "Open": "Открыть", - "Open CC Switch": "Открыть CC Switch", - "Open Source": "Открытый исходный код", "Open authorization page": "Открыть страницу авторизации", - "Open in New Tab": "Открыть в новой вкладке", + "Open CC Switch": "Открыть CC Switch", "Open in chat": "Открыть в чате", "Open in new tab": "Открыть в новой вкладке", + "Open in New Tab": "Открыть в новой вкладке", "Open menu": "Открыть меню", "Open release": "Открыть выпуск", + "Open Source": "Открытый исходный код", "Open the io.net console API Keys page": "Открыть страницу ключей API консоли io.net", "Open theme settings": "Открыть настройки темы", "OpenAI": "OpenAI", "OpenAI Compatible": "Совместимо с OpenAI", "OpenAI Organization": "Организация OpenAI", "OpenAI Organization ID (optional)": "Идентификатор организации OpenAI (необязательно)", - "OpenAI, Anthropic, Google, etc.": "OpenAI, Anthropic, Google и т.д.", "OpenAI, Anthropic, etc.": "OpenAI, Anthropic и т.д.", + "OpenAI, Anthropic, Google, etc.": "OpenAI, Anthropic, Google и т.д.", "OpenAIMax": "OpenAIMax", - "OpenRouter": "OpenRouter", "Opened authorization page": "Страница авторизации открыта", + "OpenRouter": "OpenRouter", + "opens in an external client. Trigger it from the sidebar or API key actions to launch the configured application.": "открывается во внешнем клиенте. Запустите его из боковой панели или действий с ключом API, чтобы запустить настроенное приложение.", "Operation": "Операция", - "Operation Type": "Тип операции", "Operation failed": "Операция не удалась", + "Operation Type": "Тип операции", "Operator Admin": "Оператор-администратор", "Optimize system for self-hosted single-user usage": "Оптимизировать систему для самостоятельного использования одним пользователем", "Optimized network architecture ensures millisecond response times": "Оптимизированная сетевая архитектура обеспечивает время отклика в миллисекунды", - "Optional JSON policy to restrict access based on user info fields": "Необязательная политика JSON для ограничения доступа на основе полей информации о пользователе", "Optional callback override. Leave blank to use server address": "Необязательное переопределение обратного вызова. Оставьте пустым, чтобы использовать адрес сервера", "Optional icon identifier for the login button": "Необязательный идентификатор иконки для кнопки входа", + "Optional JSON policy to restrict access based on user info fields": "Необязательная политика JSON для ограничения доступа на основе полей информации о пользователе", "Optional minimum recharge amount for this method.": "Необязательная минимальная сумма пополнения для этого метода.", "Optional multiplier per user group used when calculating recharge pricing. Provide a JSON object such as": "Необязательный множитель для группы пользователей, используемый при расчете цен на пополнение. Предоставьте JSON-объект, например", "Optional notes about this channel": "Необязательные заметки об этом канале", @@ -2314,46 +2498,50 @@ "Opus Model": "Модель Opus", "Or continue with": "Или продолжить с", "Or enter this key manually:": "Или введите этот ключ вручную:", + "Order completed successfully": "Заказ успешно завершен", "Order History": "История заказов", "Order Payment Method": "Способ оплаты (заказа)", - "Order completed successfully": "Заказ успешно завершен", + "org-...": "орг-...", "Original Model": "Оригинальная модель", "Other": "Другое", "Output": "Вывод", - "Output Tokens": "Выходные токены", "Output price": "Цена выхода", "Output tokens": "Выходные токены", + "Output Tokens": "Выходные токены", + "override": "переопределить", "Override": "Перезаписать", "Override Anthropic headers, defaults, and thinking adapter behavior": "Переопределить заголовки Anthropic, значения по умолчанию и поведение адаптера мышления", - "Override Rules": "Правила переопределения", "Override auto-discovered endpoint": "Переопределить автоматически обнаруженную конечную точку", "Override request headers": "Переопределить заголовки запроса", "Override request headers (JSON format)": "Переопределение заголовков запроса (формат JSON)", "Override request parameters (JSON format)": "Переопределить параметры запроса (формат JSON)", "Override request parameters. Cannot override": "Переопределить параметры запроса. Невозможно переопределить", "Override request parameters. Cannot override stream parameter.": "Переопределяет параметры запроса. Параметр stream переопределить нельзя.", + "Override Rules": "Правила переопределения", "Override the endpoint used for testing. Leave empty to auto detect.": "Переопределить конечную точку, используемую для тестирования. Оставьте пустым для автоматического определения.", + "overrides for matching model prefix.": "переопределяет цену по совпавшему префиксу модели.", "Overview": "Обзор", "Overwritten": "Перезаписано", - "PaLM": "PaLM", "Page": "Страница", "Page {{current}} of {{total}}": "Страница {{current}} из {{total}}", + "PaLM": "PaLM", "Pan": "Панорама", "Param Override": "Переопределение параметров", - "Parameter Override": "Переопределение параметра", - "Parameter Override Template (JSON)": "Шаблон переопределения параметров (JSON)", "Parameter configuration error": "Ошибка конфигурации параметров", + "Parameter Override": "Переопределение параметра", "Parameter override must be a valid JSON object": "Переопределение параметров должно быть валидным JSON-объектом", "Parameter override must be valid JSON format": "Переопределение параметров должно быть в валидном формате JSON", + "Parameter Override Template (JSON)": "Шаблон переопределения параметров (JSON)", "Parameter override template must be a JSON object": "Шаблон переопределения параметров должен быть объектом JSON", + "parameter.": "параметр.", "Parameters": "Параметры", "Parsed {{count}} service account file(s)": "Проанализировано файлов сервисного аккаунта {{count}}", "Partial Submission": "Частичная отправка", "Pass Headers": "Пропустить заголовки", - "Pass Through Body": "Передача тела запроса", - "Pass Through Headers": "Передать заголовки", "Pass request body directly to upstream": "Передать тело запроса напрямую вышестоящему серверу", "Pass specified request headers to upstream": "Передать указанные заголовки запроса вышестоящему серверу", + "Pass Through Body": "Передача тела запроса", + "Pass Through Headers": "Передать заголовки", "Pass through the anthropic-beta header for beta features": "Проброс заголовка anthropic-beta для бета-функций", "Pass through the include field for usage obfuscation": "Проброс поля include для обфускации использования", "Pass through the inference_geo field for Claude data residency region control": "Проброс поля inference_geo для управления регионом размещения данных Claude", @@ -2366,11 +2554,11 @@ "Pass-through Headers (comma-separated or JSON array)": "Пробрасываемые заголовки (через запятую или JSON-массив)", "Passkey": "Passkey", "Passkey Authentication": "Аутентификация Passkey", - "Passkey Login": "Вход через Passkey", "Passkey is not available in this browser": "Passkey недоступен в этом браузере", "Passkey is not supported in this environment": "Passkey не поддерживается в этой среде", "Passkey is not supported on this device": "Passkey не поддерживается на этом устройстве", "Passkey is not supported on this device.": "Passkey не поддерживается на этом устройстве.", + "Passkey Login": "Вход через Passkey", "Passkey login failed": "Ошибка входа с Passkey", "Passkey login was cancelled": "Вход с Passkey был отменён", "Passkey login was cancelled or timed out": "Вход с Passkey был отменён или истёк тайм-аут", @@ -2382,41 +2570,43 @@ "Passthrough Template": "Шаблон сквозной передачи", "Password": "Пароль", "Password / Access Token": "Пароль / Токен доступа", - "Password Login": "Вход по паролю", - "Password Registration": "Регистрация пароля", "Password changed successfully": "Пароль успешно изменён", "Password copied to clipboard: {{password}}": "Пароль скопирован в буфер обмена: {{password}}", "Password has been copied to clipboard": "Пароль скопирован в буфер обмена", + "Password Login": "Вход по паролю", "Password must be at least 8 characters": "Пароль должен содержать не менее 8 символов", "Password must be at least 8 characters long": "Пароль должен содержать не менее 8 символов", + "Password Registration": "Регистрация пароля", "Password reset and copied to clipboard: {{password}}": "Пароль сброшен и скопирован в буфер обмена: {{password}}", "Password reset: {{password}}": "Пароль сброшен: {{password}}", "Passwords do not match": "Пароли не совпадают", "Paste the full callback URL (includes code & state)": "Вставьте полный callback URL (включая code и state)", "Path": "Путь", - "Path Regex (one per line)": "Регулярное выражение пути (по одному на строку)", "Path not set": "Путь не задан", + "Path Regex (one per line)": "Регулярное выражение пути (по одному на строку)", "Path:": "Путь:", "Pay": "Pay", "Pay-as-you-go with real-time usage monitoring": "Оплата по мере использования с мониторингом в реальном времени", "Payment Channel": "Платёжный канал", "Payment Gateway": "Платежный шлюз", - "Payment Method": "Способ оплаты", - "Payment Methods": "Способы оплаты", "Payment initiated": "Платёж инициирован", + "Payment Method": "Способ оплаты", "Payment method name": "Название способа оплаты", "Payment method name is required": "Название способа оплаты обязательно", "Payment method type": "Тип способа оплаты", "Payment method type is required": "Тип способа оплаты обязателен", "Payment methods": "Способы оплаты", + "Payment Methods": "Способы оплаты", "Payment page opened": "Страница оплаты открыта", "Payment request failed": "Запрос на оплату не удался", "Payment return URL": "URL возврата после оплаты", "Pending": "Ожидает", + "per": "за", "Per 1K tokens": "За 1K токенов", "Per 1M tokens": "За 1M токенов", - "Per Request": "За запрос", + "per request": "за запрос", "Per request": "За запрос", + "Per Request": "За запрос", "Per-call": "По вызову", "Per-feature metered windows split by model or capability.": "Окна с поминутной тарификацией по фиче, в разбивке по модели или возможностям.", "Per-request (fixed price)": "За запрос (фиксированная цена)", @@ -2433,14 +2623,15 @@ "Perplexity": "Perplexity", "Persist your data file": "Сохранить ваш файл данных", "Personal": "Личное", - "Personal Center Area": "Область личного кабинета", - "Personal Settings": "Личные настройки", "Personal area": "Личный кабинет", + "Personal Center Area": "Область личного кабинета", "Personal info settings": "Настройки личной информации", + "Personal Settings": "Личные настройки", "Personal settings and profile management.": "Персональные настройки и управление профилем.", "Personal use": "Личное использование", "Personal use mode": "Режим личного использования", "Pick a date": "Выберите дату", + "Pick colors from the palette or enter CSS color values manually.": "Выберите цвета из палитры или введите CSS-значения вручную.", "Ping Interval (seconds)": "Интервал Ping (секунды)", "Plan": "План", "Plan Name": "Название плана", @@ -2451,29 +2642,28 @@ "Playground": "Песочница", "Playground and chat functions": "Функции песочницы и чата", "Playground experiments and live conversations.": "Эксперименты в песочнице и живые беседы.", - "Please Select user groups that can access this channel.": "Пожалуйста, выберите группы пользователей, которые могут получить доступ к этому каналу.", "Please agree to the legal terms first": "Сначала согласитесь с юридическими условиями", "Please complete the security check to continue.": "Пожалуйста, завершите проверку безопасности, чтобы продолжить.", "Please confirm that you understand the consequences": "Пожалуйста, подтвердите, что понимаете последствия", - "Please enable Two-factor Authentication or Passkey before proceeding": "Пожалуйста, включите двухфакторную аутентификацию или Passkey перед продолжением", "Please enable io.net model deployment service and configure an API key in System Settings.": "Пожалуйста, включите сервис развертывания моделей io.net и настройте API-ключ в системных настройках.", - "Please enter API key first": "Сначала введите ключ API", - "Please enter a Well-Known URL first": "Пожалуйста, сначала введите Well-Known URL", + "Please enable Two-factor Authentication or Passkey before proceeding": "Пожалуйста, включите двухфакторную аутентификацию или Passkey перед продолжением", "Please enter a name": "Пожалуйста, введите имя", "Please enter a new password": "Пожалуйста, введите новый пароль", "Please enter a redemption code": "Пожалуйста, введите код активации", "Please enter a valid duration": "Пожалуйста, введите действительную длительность", "Please enter a valid email address": "Пожалуйста, введите действительный адрес электронной почты", "Please enter a valid number": "Пожалуйста, введите допустимое число", + "Please enter a Well-Known URL first": "Пожалуйста, сначала введите Well-Known URL", "Please enter amount": "Пожалуйста, введите сумму", "Please enter an administrator username": "Пожалуйста, введите имя пользователя администратора", + "Please enter API key first": "Сначала введите ключ API", "Please enter chat client name": "Пожалуйста, введите имя чат-клиента", "Please enter email and verification code": "Пожалуйста, введите email и код подтверждения", "Please enter keys first": "Сначала введите ключи", "Please enter model name": "Введите название модели", "Please enter plan title": "Пожалуйста, введите название плана", - "Please enter the URL": "Пожалуйста, введите URL", "Please enter the authentication code.": "Пожалуйста, введите код аутентификации.", + "Please enter the URL": "Пожалуйста, введите URL", "Please enter the verification code": "Введите код подтверждения", "Please enter your current password": "Пожалуйста, введите текущий пароль", "Please enter your email": "Введите адрес электронной почты", @@ -2490,6 +2680,7 @@ "Please select at least one channel": "Пожалуйста, выберите хотя бы один канал", "Please select at least one model": "Пожалуйста, выберите хотя бы одну модель", "Please select items to delete": "Пожалуйста, выберите элементы для удаления", + "Please Select user groups that can access this channel.": "Пожалуйста, выберите группы пользователей, которые могут получить доступ к этому каналу.", "Please set Ollama API Base URL first": "Сначала установите базовый URL-адрес API Ollama", "Please try again later.": "Пожалуйста, попробуйте еще раз позже.", "Please upload key file(s)": "Загрузите ключевой файл(ы)", @@ -2506,8 +2697,8 @@ "PostgreSQL offers strong reliability guarantees. Double check your maintenance window and retention policies before going live.": "PostgreSQL предлагает надежные гарантии. Дважды проверьте окно обслуживания и политики хранения данных перед запуском.", "Powerful API Management Platform": "Мощная платформа управления API", "Pre-Consume for Free Models": "Предварительное потребление для бесплатных моделей", - "Pre-Consumed Quota": "Предварительно потребленная квота", "Pre-consumed": "Предоплата", + "Pre-Consumed Quota": "Предварительно потребленная квота", "Preference saved as {{pref}}, but no active subscription. Wallet will be used automatically.": "Настройка сохранена как {{pref}}, но нет активной подписки. Кошелёк будет использоваться автоматически.", "Preferences": "Настройки", "Prefill Group Management": "Управление группами автозаполнения", @@ -2527,9 +2718,9 @@ "Preserve the original field when applying this rule": "Сохранять исходное поле при применении этого правила", "Preset": "Preset", "Preset Background": "Preset Background", - "Preset Template": "Предустановленный шаблон", "Preset recharge amounts (JSON array)": "Предустановленные суммы пополнения (массив JSON)", "Preset recharge amounts displayed to users": "Предустановленные суммы пополнения, отображаемые пользователям", + "Preset Template": "Предустановленный шаблон", "Preset templates": "Предустановленные шаблоны", "Press Enter or comma to add tags": "Нажмите Enter или запятую, чтобы добавить теги", "Press Enter to use \"{{value}}\"": "Нажмите Enter, чтобы использовать «{{value}}»", @@ -2542,12 +2733,13 @@ "Price": "Цена", "Price ($/1K calls)": "Цена ($/1K вызовов)", "Price (local currency / USD)": "Цена (местная валюта / USD)", - "Price ID": "ID цены", "Price display": "Отображение цены", "Price display mode": "Режим отображения цены", "Price estimation": "Оценка стоимости", "Price estimation description": "После настройки типа оборудования, места размещения, количества реплик и т.д. стоимость будет рассчитана автоматически.", + "Price ID": "ID цены", "Price mode (USD per 1M tokens)": "Режим ценообразования (USD за 1 млн токенов)", + "price_xxx": "price_xxx", "Price:": "Цена:", "Price: High to Low": "Цена: от высокой к низкой", "Price: Low to High": "Цена: от низкой к высокой", @@ -2556,11 +2748,11 @@ "Prices vary by usage tier and request conditions": "Цена зависит от уровня использования и условий запроса", "Pricing": "Ценообразование", "Pricing & Display": "Цены и отображение", + "Pricing by Group": "Ценообразование по группам", "Pricing Configuration": "Конфигурация ценообразования", + "Pricing mode": "Режим ценообразования", "Pricing Ratios": "Коэффициенты ценообразования", "Pricing Type": "Тип ценообразования", - "Pricing by Group": "Ценообразование по группам", - "Pricing mode": "Режим ценообразования", "Primary Model": "Основная модель", "Prioritize reusing the last successful channel based on keys extracted from request context (sticky routing)": "Приоритет повторного использования последнего успешного канала на основе ключей из контекста запроса (липкая маршрутизация)", "Priority": "Приоритет", @@ -2576,6 +2768,7 @@ "Product ID is required": "Требуется ID товара", "Product Name": "Название продукта", "Products": "Продукты", + "Professional": "Профессиональные", "Professional team providing 24/7 technical support": "Профессиональная команда, обеспечивающая круглосуточную техническую поддержку", "Profile": "Профиль", "Profile updated successfully": "Профиль успешно обновлён", @@ -2585,28 +2778,28 @@ "Promotion codes": "Промокоды", "Prompt": "Промпт", "Prompt (EN)": "Промпт (EN)", + "Prompt cache ratio": "Коэффициент кэша промптов", "Prompt Caching": "Кэширование промптов", "Prompt Details": "Детали промпта", - "Prompt cache ratio": "Коэффициент кэша промптов", "Prompt price ($/1M tokens)": "Цена промпта ($/1 млн токенов)", "Protect login and registration with Cloudflare Turnstile": "Защитите вход и регистрацию с помощью Cloudflare Turnstile", - "Provide Markdown, HTML, or an external URL for the privacy policy": "Укажите Markdown, HTML или внешний URL для политики конфиденциальности", - "Provide Markdown, HTML, or an external URL for the user agreement": "Укажите Markdown, HTML или внешний URL для пользовательского соглашения", "Provide a JSON object where each key maps to an endpoint definition.": "Предоставьте JSON-объект, в котором каждый ключ соответствует определению конечной точки.", "Provide a valid URL starting with http:// or https://": "Укажите действительный URL, начинающийся с http:// или https://", + "Provide Markdown, HTML, or an external URL for the privacy policy": "Укажите Markdown, HTML или внешний URL для политики конфиденциальности", + "Provide Markdown, HTML, or an external URL for the user agreement": "Укажите Markdown, HTML или внешний URL для пользовательского соглашения", "Provide per-category safety overrides as JSON. Use `default` for fallback values.": "Предоставьте переопределения безопасности по категориям в формате JSON. Используйте `default` для резервных значений.", "Provide per-model header overrides as JSON. Useful for enabling beta features such as expanded context windows.": "Предоставьте переопределения заголовков для каждой модели в формате JSON. Полезно для включения бета-функций, таких как расширенные окна контекста.", "Provider": "Провайдер", - "Provider Name": "Имя поставщика", "Provider created successfully": "Поставщик успешно создан", "Provider deleted successfully": "Поставщик успешно удален", + "Provider Name": "Имя поставщика", "Provider type (OpenAI, Anthropic, etc.)": "Тип провайдера (OpenAI, Anthropic и т.д.)", "Provider updated successfully": "Поставщик успешно обновлен", "Provider-specific endpoint, account, and compatibility settings.": "Настройки endpoint, аккаунта и совместимости для конкретного провайдера.", "Proxy Address": "Адрес прокси", "Prune Object Items": "Очистить элементы объекта", - "Prune Rule (string or JSON object)": "Правило очистки (строка или JSON-объект)", "Prune object items by conditions": "Удалить элементы объекта по условиям", + "Prune Rule (string or JSON object)": "Правило очистки (строка или JSON-объект)", "Publish Date": "Дата публикации", "Published": "Опубликовано", "Published:": "Опубликовано:", @@ -2614,11 +2807,11 @@ "Pull model": "Загрузить модель", "Pulling...": "Загрузка...", "Pulse": "Pulse", - "Purchase Limit": "Лимит покупок", - "Purchase Subscription": "Приобрести подписку", "Purchase a plan to enjoy model benefits": "Приобретите план, чтобы воспользоваться преимуществами моделей", "Purchase here": "Купить здесь", + "Purchase Limit": "Лимит покупок", "Purchase limit reached": "Достигнут лимит покупок", + "Purchase Subscription": "Приобрести подписку", "QR Code Image URL": "URL изображения QR-кода", "QR code is not configured. Please contact support.": "QR-код не настроен. Пожалуйста, свяжитесь со службой поддержки.", "Quantity": "Количество", @@ -2628,27 +2821,24 @@ "Querying...": "Выполняется запрос...", "Question": "Вопрос", "Queued": "В очереди", + "Quick insert common payment methods": "Быстрая вставка распространенных способов оплаты", "Quick Range": "Быстрый диапазон", "Quick Setup from Preset": "Быстрая настройка из предустановки", - "Quick insert common payment methods": "Быстрая вставка распространенных способов оплаты", "Quota": "Квота", "Quota ({{currency}})": "Квота ({{currency}})", - "Quota Distribution": "Распределение квоты", - "Quota Per Unit": "Квота на единицу", - "Quota Reset": "Сброс квоты", - "Quota Settings": "Настройки квоты", - "Quota Types": "Типы квот", - "Quota Warning Threshold": "Порог предупреждения о квоте", "Quota adjusted successfully": "Квота успешно изменена", "Quota consumed before charging users": "Квота, потребляемая до взимания платы с пользователей", + "Quota Distribution": "Распределение квоты", "Quota given to invited users": "Квота, предоставляемая приглашенным пользователям", "Quota given to users who invite others": "Квота, предоставляемая пользователям, которые приглашают других", "Quota must be a positive number": "Квота должна быть положительным числом", + "Quota Per Unit": "Квота на единицу", "Quota reminder (tokens)": "Напоминание о квоте (токены)", + "Quota Reset": "Сброс квоты", + "Quota Settings": "Настройки квоты", + "Quota Types": "Типы квот", + "Quota Warning Threshold": "Порог предупреждения о квоте", "Quota:": "Квота:", - "RPM": "RPM", - "RSA Private Key (Production)": "RSA-приватный ключ (Продакшн)", - "RSA Private Key (Sandbox)": "RSA-приватный ключ (Песочница)", "Rainbow": "Rainbow", "Random": "Случайный", "Randomly select a key from the pool for each request": "Случайно выбирать ключ из пула для каждого запроса", @@ -2656,16 +2846,16 @@ "Rate Limited": "Ограничение частоты", "Rate Limiting": "Ограничение скорости", "Ratio": "Коэффициент", - "Ratio Type": "Тип соотношения", "Ratio applied to audio completions for streaming models.": "Коэффициент, применяемый к аудио-завершениям для потоковых моделей.", "Ratio applied to audio inputs where supported by the upstream model.": "Коэффициент, применяемый к аудио-входам, где это поддерживается вышестоящей моделью.", "Ratio applied when creating cache entries for supported models.": "Коэффициент, применяемый при создании записей кэша для поддерживаемых моделей.", "Ratio mode": "Режим соотношения", + "Ratio Type": "Тип соотношения", "Ratio: {{value}}": "Коэффициент: {{value}}", "Ratios synced successfully": "Соотношения успешно синхронизированы", + "Raw expression": "Исходное выражение", "Raw JSON": "Сырой JSON", "Raw Quota": "Исходная квота", - "Raw expression": "Исходное выражение", "Re-enable on success": "Повторно включить при успехе", "Re-login": "Повторный вход", "Ready to initialize": "Готов к инициализации", @@ -2690,29 +2880,31 @@ "Redeem codes": "Активировать коды", "Redeemed By": "Активировано", "Redeemed:": "Активировано:", + "redemption code": "код активации", "Redemption Code": "Код активации", - "Redemption Codes": "Коды активации", "Redemption code deleted successfully": "Код активации успешно удален", "Redemption code disabled successfully": "Код активации успешно отключен", "Redemption code enabled successfully": "Код активации успешно включен", "Redemption code updated successfully": "Код активации успешно обновлен", "Redemption code(s) created successfully": "Код(ы) активации успешно создан(ы)", + "Redemption Codes": "Коды активации", + "redemption codes.": "коды активации.", "Redemption failed": "Погашение не удалось", "Redemption successful! Added: {{quota}}": "Погашение успешно! Добавлено: {{quota}}", + "Redirecting to chat page...": "Перенаправление на страницу чата...", "Redirecting to Creem checkout...": "Перенаправление на кассу Creem...", "Redirecting to GitHub...": "Перенаправление на GitHub...", - "Redirecting to chat page...": "Перенаправление на страницу чата...", "Redirecting to payment page...": "Перенаправление на страницу оплаты...", "Reference Video": "Эталонное видео", - "Referral Program": "Реферальная программа", "Referral link:": "Реферальная ссылка:", + "Referral Program": "Реферальная программа", "Refine models by provider, group, type, and tags.": "Уточняйте список моделей по поставщику, группе, типу и тегам.", "Refresh": "Обновить", "Refresh Cache": "Обновить кэш", - "Refresh Stats": "Обновить статистику", "Refresh credential": "Обновить учётные данные", "Refresh failed": "Ошибка обновления", "Refresh interval (minutes)": "Интервал обновления (минуты)", + "Refresh Stats": "Обновить статистику", "Refreshing...": "Обновление...", "Refund": "Возврат", "Refund Details": "Детали возврата", @@ -2731,30 +2923,30 @@ "Relying Party Display Name": "Отображаемое имя проверяющей стороны", "Relying Party ID": "Идентификатор проверяющей стороны", "Remaining": "Остаток", - "Remaining Quota ({{currency}})": "Остаток квоты ({{currency}})", "Remaining quota": "Остаток квоты", + "Remaining Quota ({{currency}})": "Остаток квоты ({{currency}})", "Remaining quota units": "Остаток единиц квоты", "Remaining:": "Осталось:", "Remark": "Примечания", "Remove": "Удалить", "Remove ${{amount}}": "Удалить ${{amount}}", - "Remove Duplicates": "Удалить дубликаты", - "Remove Models": "Удалить модели", - "Remove Passkey": "Отвязать Passkey", - "Remove Passkey?": "Удалить ключ доступа?", "Remove all log entries created before the selected timestamp.": "Удалить все записи журнала, созданные до выбранной отметки времени.", "Remove attachment": "Удалить вложение", "Remove condition": "Удалить условие", + "Remove Duplicates": "Удалить дубликаты", "Remove filter": "Удалить фильтр", "Remove functionResponse.id field": "Удалить поле functionResponse.id", + "Remove Models": "Удалить модели", + "Remove Passkey": "Отвязать Passkey", + "Remove Passkey?": "Удалить ключ доступа?", "Remove rule group": "Удалить группу правил", "Remove string prefix": "Удалить префикс строки", "Remove string suffix": "Удалить суффикс строки", "Remove the target field": "Удалить целевое поле", "Remove tier": "Удалить уровень", "Removed": "Удалено", - "Removed Models ({{count}})": "Удалённые модели ({{count}})", "Removed {{removed}} duplicate key(s). Before: {{before}}, After: {{after}}": "Удалено {{removed}} дублирующихся ключей. До: {{before}}, После: {{after}}", + "Removed Models ({{count}})": "Удалённые модели ({{count}})", "Removes Midjourney flags such as --fast, --relax, and --turbo from user prompts.": "Удаляет флаги Midjourney, такие как --fast, --relax и --turbo, из промптов пользователя.", "Removing Passkey will require you to sign in with your password next time. You can re-register anytime.": "Удаление ключа доступа потребует от вас входа с паролем в следующий раз. Вы можете перерегистрироваться в любое время.", "Rename": "Переименовать", @@ -2763,19 +2955,25 @@ "Renamed successfully": "Успешно переименовано", "Repeat the administrator password": "Повторите пароль администратора", "Replace": "Заменить", - "Replace With": "Заменить на", "Replace all existing keys": "Заменить все существующие ключи", "Replace channel models": "Замена моделей каналов", "Replace mode: Will completely replace all existing keys": "Режим замены: полностью заменит все существующие ключи", + "Replace With": "Заменить на", + "replaced": "заменено", "Replacement Model": "Модель замены", "Replica count": "Количество реплик", "Replicate": "Replicate", + "request": "запрос", "Request": "Запрос", "Request Body Disk Cache": "Дисковый кэш тела запроса", "Request Body Field": "Поле тела запроса", "Request Body Memory Cache": "Кэш памяти тела запроса", + "Request body pass-through is enabled. The request body will be sent directly to the upstream without any conversion.": "Проброс тела запроса включён. Тело запроса будет отправлено напрямую без конвертации.", + "Request conversion": "Преобразование запроса", "Request Conversion": "Конвертация запроса", "Request Count": "Количество запросов", + "Request failed": "Запрос не выполнен", + "Request flow": "Поток запросов", "Request Header Field": "Поле заголовка запроса", "Request Header Override": "Переопределение заголовков запроса", "Request Header Overrides": "Переопределения заголовков запроса", @@ -2783,15 +2981,12 @@ "Request Limits": "Лимиты запросов", "Request Model": "Запрошенная модель", "Request Model:": "Модель запроса:", - "Request body pass-through is enabled. The request body will be sent directly to the upstream without any conversion.": "Проброс тела запроса включён. Тело запроса будет отправлено напрямую без конвертации.", - "Request conversion": "Преобразование запроса", - "Request failed": "Запрос не выполнен", - "Request flow": "Поток запросов", "Request overrides, routing behavior, and upstream model automation": "Переопределения запросов, маршрутизация и автоматизация upstream-моделей", "Request rule pricing": "Правила ценообразования по запросу", "Request timed out, please refresh and restart GitHub login": "Время ожидания истекло, обновите страницу и снова запустите вход через GitHub", "Request-based": "Зависит от запроса", "Requests per minute": "Запросов в минуту", + "requests served": "обслуженных запросов", "Requests will be forwarded to this worker. Trailing slashes are removed automatically.": "Запросы будут перенаправлены этому воркеру. Конечные слеши удаляются автоматически.", "Requests:": "Запросы:", "Require email verification for new accounts": "Требовать подтверждение электронной почты для новых учетных записей", @@ -2806,23 +3001,23 @@ "Resend ({{seconds}}s)": "Отправить повторно ({{seconds}}с)", "Reset": "Сброс", "Reset 2FA": "Сбросить 2FA", - "Reset Cycle": "Цикл сброса", - "Reset Passkey": "Сброс Passkey", - "Reset Period": "Период сброса", - "Reset Stats": "Сбросить статистику", - "Reset Two-Factor Authentication": "Сброс 2FA", "Reset all model ratios?": "Сбросить все соотношения моделей?", "Reset all settings to default values": "Сбросить все настройки до значений по умолчанию", "Reset at:": "Сброс в:", "Reset balance and used quota": "Сбросить баланс и использованную квоту", + "Reset Cycle": "Цикл сброса", "Reset email sent, please check your inbox": "Письмо для сброса отправлено, проверьте входящие", "Reset failed": "Ошибка сброса", + "Reset Passkey": "Сброс Passkey", "Reset password": "Сбросить пароль", + "Reset Period": "Период сброса", "Reset ratios": "Сбросить соотношения", - "Reset to Default": "Сбросить по умолчанию", + "Reset Stats": "Сбросить статистику", "Reset to default": "Сбросить до значений по умолчанию", + "Reset to Default": "Сбросить по умолчанию", "Reset to default color": "Сбросить цвет по умолчанию", "Reset to default configuration": "Сброшено к конфигурации по умолчанию", + "Reset Two-Factor Authentication": "Сброс 2FA", "Resets in:": "Сброс через:", "Resolve Conflicts": "Разрешить конфликты", "Resource Configuration": "Конфигурация ресурсов", @@ -2837,9 +3032,9 @@ "Retry Chain": "Цепочка повторов", "Retry Suggestion": "Рекомендация по повтору", "Retry Times": "Количество повторных попыток", + "Return a custom error immediately": "Немедленно вернуть пользовательскую ошибку", "Return Custom Error": "Вернуть пользовательскую ошибку", "Return Error": "Вернуть ошибку", - "Return a custom error immediately": "Немедленно вернуть пользовательскую ошибку", "Return to dashboard": "Вернуться на панель управления", "Reveal API key": "Показать API ключ", "Reveal key": "Показать ключ", @@ -2859,9 +3054,10 @@ "Routing & Overrides": "Маршрутизация и переопределения", "Routing Strategy": "Стратегия маршрутизации", "Rows per page": "Строк на страницу", + "RPM": "RPM", + "RSA Private Key (Production)": "RSA-приватный ключ (Продакшн)", + "RSA Private Key (Sandbox)": "RSA-приватный ключ (Песочница)", "Rule": "Правило", - "Rule Description (optional)": "Описание правила (необязательно)", - "Rule group": "Группа правил", "Rule {{line}} is missing source field": "В правиле {{line}} отсутствует исходное поле", "Rule {{line}} is missing target field": "В правиле {{line}} отсутствует целевое поле", "Rule {{line}} is missing target path": "В правиле {{line}} отсутствует целевой путь", @@ -2870,37 +3066,29 @@ "Rule {{line}} pass_headers is missing header names": "В правиле {{line}} pass_headers отсутствуют имена заголовков", "Rule {{line}} prune_objects is missing conditions": "В правиле {{line}} prune_objects отсутствуют условия", "Rule {{line}} return_error requires a message field": "В правиле {{line}} return_error требуется поле message", + "Rule Description (optional)": "Описание правила (необязательно)", + "Rule group": "Группа правил", + "rules": "правила", "Rules": "Правила", "Rules JSON": "Правила JSON", "Rules JSON must be an array": "JSON правил должен быть массивом", "Run GC": "Запустить GC", "Run tests for the selected models": "Запустить тесты для выбранных моделей", "Running": "Выполняется", - "SMTP Email": "Электронная почта SMTP", - "SMTP Host": "Хост SMTP", - "SQLite stores all data in a single file. Make sure that file is persisted when running in containers.": "SQLite хранит все данные в одном файле. Убедитесь, что файл сохраняется при работе в контейнерах.", - "SSRF Protection": "Защита от SSRF", + "s": "s", "Safety Settings": "Настройки безопасности", "Same as Local": "То же, что и локальный", "Sandbox mode": "Режим песочницы", "Save": "Сохранить", - "Save Backup Codes": "Сохранить резервные коды", - "Save Changes": "Сохранить изменения", - "Save Creem settings": "Сохранить настройки Creem", - "Save Epay settings": "Сохранить настройки Epay", - "Save Models": "Сохранить модели", - "Save Preferences": "Сохранить настройки", - "Save SMTP settings": "Сохранить настройки SMTP", - "Save SSRF settings": "Сохранить настройки SSRF", - "Save Settings": "Сохранить настройки", - "Save Stripe settings": "Сохранить настройки Stripe", - "Save Waffo Pancake settings": "Сохранить настройки Waffo Pancake", - "Save Worker settings": "Сохранить настройки Worker", "Save all settings": "Сохранить все настройки", + "Save Backup Codes": "Сохранить резервные коды", "Save changes": "Сохранить изменения", + "Save Changes": "Сохранить изменения", "Save chat settings": "Сохранить настройки чата", "Save check-in settings": "Сохранить настройки прибытия", + "Save Creem settings": "Сохранить настройки Creem", "Save drawing settings": "Сохранить настройки рисования", + "Save Epay settings": "Сохранить настройки Epay", "Save failed": "Не удалось сохранить", "Save failed, please retry": "Не удалось сохранить, попробуйте снова", "Save general settings": "Сохранить общие настройки", @@ -2908,23 +3096,33 @@ "Save io.net settings": "Сохранить настройки io.net", "Save log settings": "Сохранить настройки журнала", "Save model ratios": "Сохранить коэффициенты моделей", + "Save Models": "Сохранить модели", "Save monitoring rules": "Сохранить правила мониторинга", "Save navigation": "Сохранить навигацию", "Save notice": "Сохранить уведомление", + "Save Preferences": "Сохранить настройки", "Save rate limits": "Сохранить лимиты скорости", "Save sensitive words": "Сохранить чувствительные слова", + "Save Settings": "Сохранить настройки", "Save sidebar modules": "Сохранить модули боковой панели", + "Save SMTP settings": "Сохранить настройки SMTP", + "Save SSRF settings": "Сохранить настройки SSRF", + "Save Stripe settings": "Сохранить настройки Stripe", "Save these backup codes in a safe place. Each code can only be used once.": "Сохраните эти резервные коды в безопасном месте. Каждый код может быть использован только один раз.", "Save these codes in a safe place. Each code can only be used once.": "Сохраните эти коды в безопасном месте. Каждый код может быть использован только один раз.", "Save tool prices": "Сохранить цены инструментов", + "Save Waffo Pancake settings": "Сохранить настройки Waffo Pancake", + "Save Worker settings": "Сохранить настройки Worker", "Saved successfully": "Сохранено успешно", "Saving...": "Сохранение...", "Scan QR Code": "Сканировать QR-код", "Scan the QR code to follow the official account and reply with “验证码” to receive your verification code.": "Отсканируйте QR-код, откройте официальный аккаунт и ответьте «验证码», чтобы получить код подтверждения.", "Scan the QR code with WeChat to bind your account": "Отсканируйте QR-код с помощью WeChat, чтобы привязать свою учетную запись", "Scan this QR code with your authenticator app (Google Authenticator, Microsoft Authenticator, etc.)": "Отсканируйте этот QR-код с помощью вашего приложения-аутентификатора (Google Authenticator, Microsoft Authenticator и т.д.)", + "Scanline": "Линии сканирования", "Scenario Templates": "Шаблоны сценариев", "Scheduled channel tests": "Запланированные тесты канала", + "scheduling controls": "механизмов управления маршрутизацией", "Scope": "Область", "Scopes": "Области доступа", "Search": "Поиск", @@ -2952,19 +3150,15 @@ "Search tags...": "Поиск тегов...", "Search vendors...": "Поиск поставщиков...", "Search...": "Поиск...", - "Secret Key": "Секретный ключ", + "seconds": "секунды", "Secret env (JSON object)": "Секретные переменные окружения (объект JSON)", "Secret environment variables (JSON)": "Секретные переменные окружения (JSON)", + "Secret Key": "Секретный ключ", "Secure & Reliable": "Безопасно и надежно", "Security": "Безопасность", "Security Check": "Проверка безопасности", "Security verification": "Подтверждение безопасности", "Select": "Выбрать", - "Select All Visible": "Выбрать все видимые", - "Select Language": "Выбрать язык", - "Select Model": "Выбрать модель", - "Select Sync Channels": "Выбрать каналы синхронизации", - "Select Sync Source": "Выбрать источник синхронизации", "Select a color": "Выбрать цвет", "Select a group": "Выбрать группу", "Select a group type": "Выбрать тип группы", @@ -2977,6 +3171,7 @@ "Select all": "Выбрать все", "Select all (filtered)": "& Выбрать все отфильтрованные", "Select all models": "Выбрать все модели", + "Select All Visible": "Выбрать все видимые", "Select an operation mode and enter the amount": "Выберите режим операции и введите сумму", "Select announcement type": "Выбрать тип объявления", "Select at least one field to overwrite.": "Выберите хотя бы одно поле для перезаписи.", @@ -2994,8 +3189,10 @@ "Select items...": "Выберите элементы...", "Select key format": "Выберите формат ключа", "Select language": "Выберите язык", + "Select Language": "Выбрать язык", "Select layout style": "Выбрать стиль макета", "Select locations": "Выбрать локации", + "Select Model": "Выбрать модель", "Select models (empty for allow all)": "Выбрать модели (пусто для разрешения всех)", "Select models and apply to channel models list.": "Выберите модели и примените к списку моделей каналов.", "Select models or add custom ones": "Выбрать модели или добавить пользовательские", @@ -3013,14 +3210,18 @@ "Select site direction": "Выбрать направление сайта", "Select start time": "Выбрать время начала", "Select subscription plan": "Выбрать план подписки", + "Select Sync Channels": "Выбрать каналы синхронизации", "Select sync channels to compare prices": "Выберите каналы синхронизации для сравнения цен", "Select sync channels to compare ratios": "Выбрать каналы синхронизации для сравнения соотношений", + "Select Sync Source": "Выбрать источник синхронизации", "Select the API endpoint region": "Выбрать регион конечной точки API", "Select the fields you want to overwrite with upstream data. Unselected fields keep their local values.": "Выберите поля, которые вы хотите перезаписать данными из вышестоящего источника. Невыбранные поля сохранят свои локальные значения.", "Select theme preference": "Выбрать предпочтение темы", "Select time granularity": "Выбрать детализацию времени", "Select vendor": "Выбрать поставщика", "Selectable groups": "Выбираемые группы", + "selected": "выбрано", + "selected channel(s). Leave empty to remove tag.": "выбранный канал(ы). Оставьте пустым, чтобы удалить тег.", "Selected conflicts were overwritten successfully.": "Выбранные конфликты успешно перезаписаны.", "Self-Use Mode": "Режим самоиспользования", "Send": "Отправить", @@ -3033,26 +3234,26 @@ "Server Address": "Адрес сервера", "Server IP": "IP сервера", "Server Log Management": "Управление журналами сервера", - "Server Token": "Токен сервера", "Server logging is not enabled (log directory not configured)": "Журналирование сервера не включено (каталог журналов не настроен)", + "Server Token": "Токен сервера", "Service account JSON file(s)": "JSON-файл сервисного аккаунта", "Session expired!": "Сессия истекла!", "Session expired?": "Сессия истекла?", "Set": "Установить", - "Set API key access restrictions": "Настройте ограничения доступа API-ключа", - "Set API key basic information": "Настройте основные сведения API-ключа", - "Set Field": "Установить поле", - "Set Header": "Установить заголовок", - "Set Project to io.cloud when creating/selecting key": "Установите Проект в io.cloud при создании/выборе ключа", - "Set Request Header": "Установить заголовок запроса", - "Set Tag": "Установить тег", "Set a discount rate for a specific recharge amount threshold.": "Установите ставку скидки для определенного порога суммы пополнения.", "Set a secure password (min. 8 characters)": "Установите надежный пароль (минимум 8 символов)", "Set a tag for": "Установить тег для", + "Set API key access restrictions": "Настройте ограничения доступа API-ключа", + "Set API key basic information": "Настройте основные сведения API-ключа", + "Set Field": "Установить поле", "Set filters to customize your dashboard statistics and charts.": "Установите фильтры, чтобы настроить статистику и диаграммы вашей панели управления.", "Set filters to narrow down your log search results.": "Установите фильтры, чтобы сузить результаты поиска по журналам.", + "Set Header": "Установить заголовок", + "Set Project to io.cloud when creating/selecting key": "Установите Проект в io.cloud при создании/выборе ключа", "Set quota amount and limits": "Настройте квоту и лимиты", + "Set Request Header": "Установить заголовок запроса", "Set runtime request header: override entire value, or manipulate comma-separated tokens": "Установить заголовок запроса: переопределить значение или управлять токенами через запятую", + "Set Tag": "Установить тег", "Set tag for selected channels": "Установить тег для выбранных каналов", "Set the language used across the interface": "Настроить язык интерфейса", "Set the user's role (cannot be Root)": "Установить роль пользователя (не может быть Root)", @@ -3076,12 +3277,13 @@ "Show token usage statistics in the UI": "Показывать статистику использования токенов в пользовательском интерфейсе", "Showcase core capabilities with demo credentials and limited access.": "Демонстрация основных возможностей с демо-учётными данными и ограниченным доступом.", "Showing": "Отображать", + "showing •": "отображается •", "Sidebar": "Боковая панель", - "Sidebar Personal Settings": "Личные настройки боковой панели", "Sidebar collapsed by default for new users": "Боковая панель свернута по умолчанию для новых пользователей", "Sidebar modules": "Модули боковой панели", - "Sign In": "Войти", + "Sidebar Personal Settings": "Личные настройки боковой панели", "Sign in": "Войти", + "Sign In": "Войти", "Sign in with Passkey": "Войти с Passkey", "Sign out": "Выйти", "Sign up": "Регистрация", @@ -3098,6 +3300,7 @@ "Single Key": "Одиночный ключ", "Site Key": "Ключ сайта", "Size:": "Размер:", + "sk_xxx or rk_xxx": "sk_xxx или rk_xxx", "Skip retry on failure": "Не повторять при ошибке", "Skip to Main": "Перейти к основному содержимому", "Slow": "Slow", @@ -3106,6 +3309,11 @@ "Slug is required": "Slug обязателен", "Slug must be less than 100 characters": "Slug должен содержать менее 100 символов", "Smallest USD amount users can recharge (Epay)": "Минимальная сумма в USD, которую пользователи могут пополнить (Epay)", + "SMTP Email": "Электронная почта SMTP", + "SMTP Host": "Хост SMTP", + "smtp.example.com": "smtp.example.com", + "socks5://user:pass@host:port": "socks5://user:pass@host:port", + "Soft": "Мягкие", "Soft Errors": "Мягкие ошибки", "Solid": "Solid", "Solid Color": "Solid Color", @@ -3114,22 +3322,27 @@ "Sonnet Model": "Модель Sonnet", "Sora": "Sora", "Sort": "Сортировать", - "Sort Order": "Порядок сортировки", "Sort by ID": "Сортировать по ID", + "Sort Order": "Порядок сортировки", "Source": "Источник", "Source Endpoint": "Исходная точка", "Source Field": "Исходное поле", "Source Header": "Исходный заголовок", + "sources": "источники", "Space-separated OAuth scopes": "Области доступа OAuth, разделенные пробелами", "Spark model version, e.g., v2.1 (version number in API URL)": "Версия модели Spark, например, v2.1 (номер версии в URL API)", "Special billing expression": "Специальное выражение тарификации", "Special usable group rules": "Специальные правила для групп с доступом", "Speed": "Speed", + "Spotlight": "Прожектор", + "SQLite stores all data in a single file. Make sure that file is persisted when running in containers.": "SQLite хранит все данные в одном файле. Убедитесь, что файл сохраняется при работе в контейнерах.", + "SSRF Protection": "Защита от SSRF", "Standard": "Стандартный", "Start": "Начало", - "Start Time": "Время начала", "Start a conversation to see messages here": "Начните разговор, чтобы увидеть сообщения здесь", + "Start color": "Начальный цвет", "Start for free with generous limits. No credit card required.": "Начните бесплатно с щедрыми лимитами. Кредитная карта не требуется.", + "Start Time": "Время начала", "Static Gradient": "Static Gradient", "Static page describing the platform.": "Статическая страница, описывающая платформу.", "Statistical count": "Статистический подсчет", @@ -3150,6 +3363,7 @@ "Store ID": "ID магазина", "Store ID is required": "Требуется ID магазина", "Stored value is not echoed back for security": "В целях безопасности сохранённое значение не отображается", + "stream": "Поток", "Stream": "Поток", "Stream Mode": "Потоковый режим", "Stream Status": "Статус потока", @@ -3161,9 +3375,9 @@ "Stripe product price ID": "ID цены продукта Stripe", "Stripe/Creem requires creating products on the third-party platform and entering the ID": "Stripe/Creem требует создания продуктов на сторонней платформе и ввода ID", "Submit": "Отправить", + "Submit directly": "Отправить напрямую", "Submit Result": "Отправить результат", "Submit Time": "Время отправки", - "Submit directly": "Отправить напрямую", "Submitted": "Отправлено", "Submitting": "Отправка", "Submitting...": "Отправка...", @@ -3177,6 +3391,7 @@ "Subscription Plans": "Планы подписки", "Subtract": "Вычесть", "Success": "Успешно", + "Success Soft": "Мягкий успех", "Successfully created {{count}} API Key(s)": "Успешно создано {{count}} API-ключ(а/ей)", "Successfully created {{count}} redemption codes": "Успешно создано {{count}} кодов активации", "Successfully deleted {{count}} API key(s)": "Успешно удалено {{count}} API-ключ(а/ей)", @@ -3191,9 +3406,9 @@ "Support for high concurrency with automatic load balancing": "Поддержка высокой конкурентности с автоматической балансировкой нагрузки", "Supported Imagine Models": "Поддерживаемые модели Imagine", "Supported variables": "Поддерживаемые переменные", + "Supports `-thinking`, `-thinking-": "Поддерживает `-thinking`, `-thinking-", "Supports HTML markup or iframe embedding. Enter HTML code directly, or provide a complete URL to automatically embed it as an iframe.": "Поддерживает HTML-разметку или встраивание iframe. Введите HTML-код напрямую или укажите полный URL для автоматического встраивания в виде iframe.", "Supports PNG, JPG, SVG, or WebP. Recommended size: 128×128 or smaller.": "Поддерживаются PNG, JPG, SVG или WebP. Рекомендуемый размер: 128×128 или меньше.", - "Supports `-thinking`, `-thinking-": "Поддерживает `-thinking`, `-thinking-", "Swap Face": "Замена лица", "Switch affinity on success": "Переключить привязку при успехе", "Switch between the new frontend and the classic frontend. Changes take effect after page reload.": "Переключение между новым и классическим интерфейсом. Изменения вступают в силу после перезагрузки страницы.", @@ -3202,39 +3417,35 @@ "Sync Endpoint": "Конечная точка синхронизации", "Sync Endpoints": "Точки синхронизации", "Sync Fields": "Синхронизировать поля", - "Sync Upstream": "Синхронизировать Upstream", - "Sync Upstream Models": "Синхронизировать модели Upstream", "Sync from the public upstream metadata repository.": "Синхронизировать из публичного репозитория метаданных верхнего уровня.", "Sync this model with official upstream": "Синхронизировать эту модель с официальным upstream", + "Sync Upstream": "Синхронизировать Upstream", + "Sync Upstream Models": "Синхронизировать модели Upstream", "Synchronize models and vendors from an upstream source": "Синхронизировать модели и поставщиков из upstream источника", "Syncing prices, please wait...": "Синхронизация цен, подождите...", "System": "Система", "System Administration": "Администрирование системы", "System Announcements": "Системные объявления", "System Behavior": "Поведение системы", + "System data statistics": "Статистика системных данных", "System Information": "Системная информация", + "System initialized successfully! Redirecting…": "Система успешно инициализирована! Перенаправление…", + "System logo": "Логотип системы", + "System maintenance": "Обслуживание системы", "System Memory": "Системная память", "System Memory Stats": "Статистика системной памяти", "System Name": "Название системы", + "System name is required": "Название системы обязательно", "System Notice": "Системные объявления", "System Performance Monitoring": "Мониторинг производительности системы", "System Prompt": "Системное приглашение", "System Prompt Concatenation": "Конкатенация системных промптов", "System Prompt Override": "Переопределение системного промпта", - "System Settings": "Настройки системы", - "System Version": "Версия системы", - "System data statistics": "Статистика системных данных", - "System initialized successfully! Redirecting…": "Система успешно инициализирована! Перенаправление…", - "System logo": "Логотип системы", - "System maintenance": "Обслуживание системы", - "System name is required": "Название системы обязательно", "System settings": "Системные настройки", + "System Settings": "Настройки системы", "System setup wizard": "Мастер настройки системы", "System task records": "Записи системных задач", - "TPM": "TPM", - "TTL": "TTL", - "TTL (seconds)": "TTL (секунды)", - "TTL (seconds, 0 = default)": "TTL (секунды, 0 = по умолчанию)", + "System Version": "Версия системы", "Table view": "Вид таблицы", "Tag": "Тег", "Tag Aggregate": "Агрегация тегов", @@ -3249,19 +3460,19 @@ "Target Endpoint": "Целевая точка", "Target Field": "Целевое поле", "Target Field Path": "Путь целевого поля", + "Target group": "Целевая группа", "Target Header": "Целевой заголовок", "Target Path (optional)": "Целевой путь (необязательно)", - "Target group": "Целевая группа", "Task": "Задача", "Task ID": "ID задачи", "Task ID:": "ID задачи:", - "Task Logs": "Журнал задач", "Task logs": "Журналы задач", + "Task Logs": "Журнал задач", "Team Collaboration": "Совместная работа в команде", "Technical Support": "Техническая поддержка", "Telegram": "Telegram", - "Telegram Login Widget": "Виджет входа Telegram", "Telegram login requires widget integration; coming soon": "Вход через Telegram требует интеграции виджета; скоро", + "Telegram Login Widget": "Виджет входа Telegram", "Template": "Шаблон", "Template variables:": "Переменные шаблона:", "Templates": "Шаблоны", @@ -3271,17 +3482,16 @@ "Test All Channels": "Проверить все каналы", "Test Channel Connection": "Проверить подключение канала", "Test Connection": "Проверить подключение", + "Test connectivity for:": "Проверить подключение для:", + "Test interval (minutes)": "Интервал проверки (минуты)", "Test Latency": "Проверить задержку", "Test Mode": "Тестовый режим", "Test Model": "Проверить модель", - "Test connectivity for:": "Проверить подключение для:", - "Test interval (minutes)": "Интервал проверки (минуты)", "Testing all enabled channels started. Please refresh to see results.": "Тестирование всех включенных каналов начато. Пожалуйста, обновите страницу, чтобы увидеть результаты.", "Testing...": "Тестирование...", "Text Input": "Текстовый вход", "Text Output": "Текстовый выход", "Text to Video": "Текст в видео", - "The URL for this chat client.": "URL для этого чат-клиента.", "The administrator account is already initialized. You can keep your existing credentials and continue to the next step.": "Учетная запись администратора уже инициализирована. Вы можете сохранить существующие учетные данные и перейти к следующему шагу.", "The administrator configured an external link for this document.": "Администратор настроил внешнюю ссылку для этого документа.", "The administrator has not configured a privacy policy yet.": "Администратор ещё не настроил политику конфиденциальности.", @@ -3304,6 +3514,7 @@ "The token group that will have a custom ratio": "Группа токенов, которая будет иметь пользовательское соотношение", "The unique identifier for this model": "Уникальный идентификатор для этой модели", "The unique name for this vendor": "Уникальное имя для этого поставщика", + "The URL for this chat client.": "URL для этого чат-клиента.", "Theme": "Тема", "Theme Color": "Цвет темы", "Theme Settings": "Настройки темы", @@ -3312,8 +3523,8 @@ "These toggles affect whether certain request fields are passed through to the upstream provider.": "Эти переключатели влияют на то, передаются ли определенные поля запроса вышестоящему поставщику.", "Thinking Adapter": "Адаптер мышления", "Thinking to Content": "Мышление в контент", - "Third-party Payment Config": "Настройка стороннего платежа", "Third-party account bindings (read-only, managed by user in profile settings)": "Привязки сторонних учетных записей (только для чтения, управляется пользователем в настройках профиля)", + "Third-party Payment Config": "Настройка стороннего платежа", "This action cannot be undone.": "Это действие невозможно отменить.", "This action cannot be undone. This will permanently delete your account and remove all your data from our servers.": "Это действие невозможно отменить. Это безвозвратно удалит вашу учетную запись и все ваши данные с наших серверов.", "This action will permanently remove 2FA protection from your account.": "Это действие безвозвратно удалит защиту 2FA из вашей учетной записи.", @@ -3330,10 +3541,13 @@ "This model has both fixed price and ratio billing conflicts": "Эта модель имеет конфликты как фиксированной цены, так и пропорциональной тарификации", "This model is not available in any group, or no group pricing information is configured.": "Эта модель недоступна ни в одной группе, или информация о ценах для групп не настроена.", "This month": "В этом месяце", + "This notification preset uses fixed colors. Switch to an animation preset to customize colors.": "Этот пресет уведомления использует фиксированные цвета. Переключитесь на пресет анимации, чтобы настроить цвета.", "This page has not been created yet.": "Эта страница еще не создана.", "This project must be used in compliance with the": "Этот проект должен использоваться в соответствии с", "This record was written by a pre-upgrade instance and lacks audit info. Upgrade the instance to record server IP, callback IP, payment method and system version.": "Запись создана экземпляром до обновления и не содержит сведений аудита. Обновите экземпляр, чтобы фиксировать IP сервера, IP callback, способ оплаты и версию ОС.", "This site currently has {{count}} models enabled": "На этом сайте сейчас включено моделей: {{count}}", + "this token group": "эта группа токенов", + "this user group": "эта группа пользователей", "This user has no bindings": "У этого пользователя нет привязок", "This week": "На этой неделе", "This will append 2 template rules (Codex CLI and Claude CLI) to the existing rule list.": "Это добавит 2 шаблонных правила (Codex CLI и Claude CLI) к существующему списку правил.", @@ -3361,12 +3575,18 @@ "Time:": "Время:", "Timed cache (1h)": "Кэш с TTL (1 ч)", "Timeline": "Хронология", + "times": "раз", "Timing": "Время", "Tip: The generated key is a JSON credential including access_token / refresh_token / account_id.": "Подсказка: сгенерированный ключ — это учётные данные JSON с access_token / refresh_token / account_id.", + "to access this resource.": "для доступа к этому ресурсу.", + "to confirm": "для подтверждения", "To Lower": "В нижний регистр", "To Lowercase": "В нижний регистр", + "to override billing when a user in one group uses a token of another group.": "для переопределения выставления счетов, когда пользователь одной группы использует токен другой группы.", + "to the Models list so users can use them before the mapping sends traffic upstream.": "в список моделей, чтобы пользователи могли использовать их до того, как сопоставление отправит трафик выше по течению.", "To Upper": "В верхний регистр", "To Uppercase": "В верхний регистр", + "to view this resource.": "для просмотра этого ресурса.", "Today": "Сегодня", "Toggle columns": "Переключить столбцы", "Toggle navigation menu": "Переключить меню навигации", @@ -3376,15 +3596,16 @@ "Token Breakdown": "Детализация токенов", "Token Endpoint": "Конечная точка токена", "Token Endpoint (Optional)": "Конечная точка токена (необязательно)", + "Token estimator": "Оценка токенов", + "Token management": "Управление токенами", "Token Management": "Управление токенами", "Token Mgmt": "Управление токенами", "Token Name": "Имя токена", - "Token estimator": "Оценка токенов", - "Token management": "Управление токенами", "Token obtained from your Gotify application": "Токен, полученный из вашего приложения Gotify", "Token regenerated and copied to clipboard": "Токен перегенерирован и скопирован в буфер обмена", "Token unit": "Единица токенов", "Token-based": "На основе токенов", + "tokens": "токены", "Tokens": "Токены", "Tokens Only": "Только токены", "Tokens per minute": "Токенов в минуту", @@ -3393,60 +3614,65 @@ "Tool identifier": "Идентификатор инструмента", "Tool price settings": "Настройки цен на инструменты", "Tool prices": "Цены инструментов", + "Top {{count}}": "Топ {{count}}", "Top Models": "Лучшие модели", - "Top Users": "Лучшие пользователи", "Top up balance and view billing history.": "Пополнить баланс и просмотреть историю платежей.", - "Top {{count}}": "Топ {{count}}", - "Top-Up Link": "Ссылка для пополнения", + "Top Users": "Лучшие пользователи", "Top-up": "Пополнение", - "Top-up Audit Info": "Аудит пополнений", "Top-up amount options": "Варианты суммы пополнения", + "Top-up Audit Info": "Аудит пополнений", "Top-up group ratios": "Коэффициенты групп пополнения", + "Top-Up Link": "Ссылка для пополнения", + "top-up ratio": "коэффициент пополнения", "Topup Amount": "Сумма пополнения", "Total": "Всего", "Total Allocated": "Всего выделено", - "Total Cost": "Общая стоимость", - "Total Count": "Общее количество", - "Total Earned": "Всего заработано", - "Total GPUs": "Всего GPU", - "Total Log Size": "Общий размер журналов", - "Total Quota": "Общая квота", - "Total Tokens": "Всего токенов", - "Total Usage": "Общее использование", "Total check-ins": "Общая проверка", "Total consumed": "Всего использовано", "Total consumed quota": "Всего использованной квоты", "Total cost": "Общая стоимость", + "Total Cost": "Общая стоимость", + "Total Count": "Общее количество", "Total earned": "Итого заработано", + "Total Earned": "Всего заработано", + "Total GPUs": "Всего GPU", "Total invitation revenue": "Общий доход от приглашений", + "Total Log Size": "Общий размер журналов", + "Total Quota": "Общая квота", "Total requests allowed per period. 0 = unlimited.": "Общее количество запросов, разрешенных за период. 0 = без ограничений.", "Total requests made": "Всего сделанных запросов", + "Total Tokens": "Всего токенов", + "Total Usage": "Общее использование", "Total:": "Всего:", + "TPM": "TPM", "Track per-request consumption to power usage analytics. Keeping this on increases database writes.": "Отслеживать потребление для каждого запроса для аналитики использования. Сохранение этой опции увеличивает количество записей в базу данных.", "Track usage, costs and performance with real-time analytics": "Отслеживайте использование, затраты и производительность с помощью аналитики в реальном времени", "Tracks current account base limits and additional metered usage on Codex upstream.": "Отслеживает базовые лимиты и дополнительное потребление (metered) аккаунта на стороне Codex.", "Transfer": "Перевод", "Transfer Amount": "Сумма перевода", - "Transfer Rewards": "Перевести награды", "Transfer failed": "Перевод не удался", + "Transfer Rewards": "Перевести награды", "Transfer successful": "Перевод успешен", "Transfer to Balance": "Перевести на баланс", "Translate `-thinking` suffixes into Anthropic native thinking models while keeping pricing predictable.": "Преобразовывать суффиксы `-thinking` в собственные модели мышления Anthropic, сохраняя при этом предсказуемость ценообразования.", "Transparent Billing": "Прозрачная тарификация", + "Trim leading/trailing whitespace": "Удалить пробелы в начале/конце", "Trim Prefix": "Обрезать префикс", "Trim Space": "Обрезать пробелы", "Trim Suffix": "Обрезать суффикс", - "Trim leading/trailing whitespace": "Удалить пробелы в начале/конце", "Trusted": "Доверенный", "Try adjusting your search to locate a missing model.": "Попробуйте изменить параметры поиска, чтобы найти отсутствующую модель.", + "TTL": "TTL", + "TTL (seconds, 0 = default)": "TTL (секунды, 0 = по умолчанию)", + "TTL (seconds)": "TTL (секунды)", "Tune selection priority, testing, status handling, and request overrides.": "Настройте приоритет выбора, тестирование, обработку статусов и переопределения запросов.", "Turnstile is enabled but site key is empty.": "Turnstile включён, но ключ сайта пуст.", - "Two-Factor Authentication": "Двухфакторная аутентификация", - "Two-Step Verification": "Двухэтапная проверка", "Two-factor Authentication": "Двухфакторная аутентификация", + "Two-Factor Authentication": "Двухфакторная аутентификация", "Two-factor authentication disabled": "Двухфакторная аутентификация отключена", "Two-factor authentication enabled successfully!": "Двухфакторная аутентификация успешно включена!", "Two-factor authentication reset": "Двухфакторная аутентификация сброшена", + "Two-Step Verification": "Двухэтапная проверка", "Type": "Тип", "Type (common)": "Тип (общий)", "Type *": "Тип *", @@ -3454,11 +3680,6 @@ "Type-Specific Settings": "Настройки для конкретного типа", "Type:": "Тип:", "UI granularity only — data is still aggregated hourly": "Только детализация пользовательского интерфейса — данные по-прежнему агрегируются ежечасно", - "URL": "URL", - "URL is required": "URL обязателен", - "URL to your logo image (optional)": "URL изображения вашего логотипа (необязательно)", - "USD": "USD", - "USD Exchange Rate": "Обменный курс USD", "Unable to estimate price for this deployment.": "Не удается оценить цену для этого развертывания.", "Unable to generate chat link. Please contact your administrator.": "Не удалось сгенерировать ссылку для чата. Пожалуйста, свяжитесь с вашим администратором.", "Unable to load groups": "Не удалось загрузить группы", @@ -3473,8 +3694,8 @@ "Unexpected release payload": "Неожиданный формат данных релиза", "Unified API Gateway for": "Единый API-шлюз для", "Unique identifier for this group.": "Уникальный идентификатор для этой группы.", - "Unit price (USD)": "Цена за единицу (USD)", "Unit price (local currency / USD)": "Цена за единицу (местная валюта / USD)", + "Unit price (USD)": "Цена за единицу (USD)", "Unit price must be greater than 0": "Цена за единицу должна быть больше 0", "Units per USD": "Единиц за USD", "Unknown": "Неизвестно", @@ -3487,19 +3708,19 @@ "Untrusted upstream data:": "Недоверенные вышестоящие данные:", "Unused": "Неиспользованные", "Update": "Обновить", - "Update API Key": "Обновить API-ключ", "Update All Balances": "Обновить все балансы", + "Update API Key": "Обновить API-ключ", "Update Balance": "Обновить баланс", - "Update Channel": "Обновить канал", - "Update Model": "Обновить модель", - "Update Provider": "Обновить поставщика", - "Update Redemption Code": "Обновить код активации", "Update balance for:": "Обновить баланс для:", + "Update Channel": "Обновить канал", "Update channel configuration and click save when you're done.": "Обновите конфигурацию канала и нажмите сохранить, когда закончите.", "Update configuration": "Обновить конфигурацию", "Update failed": "Обновление не удалось", + "Update Model": "Обновить модель", "Update model configuration and click save when you're done.": "Обновите конфигурацию модели и нажмите сохранить, когда закончите.", "Update plan info": "Обновить информацию о плане", + "Update Provider": "Обновить поставщика", + "Update Redemption Code": "Обновить код активации", "Update succeeded": "Успешно обновлено", "Update the API key by providing necessary info.": "Обновите API-ключ, указав необходимую информацию.", "Update the configuration for this custom OAuth provider.": "Обновить конфигурацию этого пользовательского поставщика OAuth.", @@ -3525,48 +3746,62 @@ "Upstream Model Detection Settings": "Настройки обнаружения моделей провайдера", "Upstream Model Update Check": "Проверка обновлений моделей провайдера", "Upstream Model Updates": "Обновления моделей источника", - "Upstream Response": "Ответ Upstream", - "Upstream Updates": "Обновления вышестоящих моделей", "Upstream model updates applied: {{added}} added, {{removed}} removed, {{ignored}} ignored this time, {{totalIgnored}} total ignored models": "Обновления моделей применены: {{added}} добавлено, {{removed}} удалено, {{ignored}} проигнорировано, всего {{totalIgnored}} проигнорированных моделей", "Upstream price sync": "Синхронизация цен upstream", "Upstream prices fetched successfully": "Цены провайдера успешно получены", "Upstream ratios fetched successfully": "Коэффициенты upstream успешно получены", + "Upstream Response": "Ответ Upstream", + "upstream services integrated": "интеграций с вышестоящими сервисами", + "Upstream Updates": "Обновления вышестоящих моделей", + "uptime": "время бесперебойной работы", "Uptime": "Время работы", "Uptime Kuma": "Время безотказной работы Kuma", - "Uptime Kuma URL": "URL Uptime Kuma", "Uptime Kuma groups saved successfully": "Группы Uptime Kuma успешно сохранены", + "Uptime Kuma URL": "URL Uptime Kuma", "Uptime since": "Время работы с", + "URL": "URL", + "URL is required": "URL обязателен", + "URL to your logo image (optional)": "URL изображения вашего логотипа (необязательно)", "Usage": "Использование", - "Usage Logs": "Журнал использования", "Usage logs": "Журналы использования", + "Usage Logs": "Журнал использования", "Usage mode": "Режим использования", "Usage-based": "На основе использования", - "Use Passkey to sign in without entering your password.": "Используйте ключ доступа для входа без ввода пароля.", + "USD": "USD", + "USD Exchange Rate": "Обменный курс USD", "Use a compatible browser or device with biometric authentication or a security key to register a Passkey.": "Используйте совместимый браузер или устройство с биометрической аутентификацией или ключ безопасности для регистрации ключа доступа.", "Use authenticator code": "Использовать код аутентификатора", "Use backup code": "Использовать резервный код", "Use disk cache when request body exceeds this size": "Использовать дисковый кэш, когда тело запроса превышает этот размер", "Use our unified OpenAI-compatible endpoint in your applications": "Используйте наш единый OpenAI-совместимый эндпоинт в ваших приложениях", + "Use Passkey to sign in without entering your password.": "Используйте ключ доступа для входа без ввода пароля.", "Use secure connection when sending emails": "Использовать безопасное соединение при отправке электронных писем", "Use sidebar shortcut": "Использовать ярлык боковой панели", "Use this token for API authentication": "Используйте этот токен для аутентификации API", "Use your Passkey": "Используйте свой ключ доступа", + "used": "использовано", "Used": "Использовано", "Used / Remaining": "Использовано / Осталось", - "Used Quota": "Лимит потребления", "Used for load balancing. Higher weight = more requests": "Используется для балансировки нагрузки. Больший вес = больше запросов", "Used in URLs and API routes": "Используется в URL и маршрутах API", + "Used Quota": "Лимит потребления", "Used to authenticate with io.net deployment API": "Используется для аутентификации в API развертывания io.net", "Used to authenticate with the worker. Leave blank to keep the existing secret.": "Используется для аутентификации с воркером. Оставьте пустым, чтобы сохранить существующий секрет.", "Used:": "Использовано:", "User": "Пользователь", + "User {{id}}": "Пользователь {{id}}", "User Agreement": "Пользовательское соглашение", "User Analytics": "Аналитика пользователей", "User Consumption Ranking": "Рейтинг потребления", "User Consumption Trend": "Тренд потребления", + "User created successfully": "Пользователь успешно создан", + "User dashboard and quota controls.": "Панель пользователя и управление квотами.", "User Exclusive Ratio": "Эксклюзивный коэффициент", "User Group": "Группа пользователей", + "User group name": "Название группы пользователей", "User Group: {{ratio}}x": "Группа пользователя: {{ratio}}x", + "User groups that can access channels with this tag": "Группы пользователей, которые могут получить доступ к каналам с этим тегом", + "User groups that can access this channel. ": "Группы пользователей, которые могут получить доступ к этому каналу. ", "User ID": "ID пользователя", "User ID Field": "Поле ID пользователя", "User ID:": "ID пользователя:", @@ -3574,41 +3809,37 @@ "User Info Endpoint (Optional)": "Конечная точка информации о пользователе (необязательно)", "User Information": "Информация о пользователе", "User Menu": "Меню пользователя", - "User Subscription Management": "Управление подписками пользователя", - "User Verification": "Проверка пользователя", - "User created successfully": "Пользователь успешно создан", - "User dashboard and quota controls.": "Панель пользователя и управление квотами.", - "User group name": "Название группы пользователей", - "User groups that can access channels with this tag": "Группы пользователей, которые могут получить доступ к каналам с этим тегом", - "User groups that can access this channel. ": "Группы пользователей, которые могут получить доступ к этому каналу. ", "User personal functions": "Личные функции пользователя", + "User Subscription Management": "Управление подписками пользователя", "User updated successfully": "Пользователь успешно обновлен", - "User {{id}}": "Пользователь {{id}}", + "User Verification": "Проверка пользователя", "User-Agent include (one per line)": "User-Agent include (по одному на строку)", "Username": "Имя пользователя", - "Username Field": "Поле имени пользователя", "Username confirmation does not match": "Подтверждение имени пользователя не совпадает", + "Username Field": "Поле имени пользователя", "Username or Email": "Имя пользователя или Email", "Users": "Пользователи", "Users call the model on the left. The platform forwards the request to the upstream model on the right.": "Пользователи вызывают модель слева. Платформа перенаправляет запрос вышестоящей модели справа.", "Users must wait for a successful drawing before upscales or variations.": "Пользователи должны дождаться успешного рисунка перед апскейлом или вариациями.", - "VIP users with premium access": "VIP-пользователи с премиум-доступом", + "uses": "использует", "Validity": "Срок действия", "Validity Period": "Срок действия", "Value": "Значение", "Value (supports JSON or plain text)": "Значение (JSON или текст)", - "Value Regex": "Регулярное выражение значения", "Value must be at least 0": "Значение должно быть не менее 0", + "Value Regex": "Регулярное выражение значения", + "variable": "переменная", + "variable) *": "переменная) *", "Variables": "Переменные", "Vary": "Вариация", "Vary (Strong)": "Вариация (сильная)", "Vary (Subtle)": "Вариация (лёгкая)", "Vendor": "Поставщик", - "Vendor Name *": "Название поставщика *", "Vendor deleted successfully": "Поставщик успешно удалён", + "Vendor Name *": "Название поставщика *", "Vendor:": "Поставщик:", - "Verification Code": "Код подтверждения", "Verification code": "Код подтверждения", + "Verification Code": "Код подтверждения", "Verification code must be 6 digits": "Код подтверждения должен содержать 6 цифр", "Verification code sent! Please check your email.": "Код подтверждения отправлен! Пожалуйста, проверьте вашу электронную почту.", "Verification code updates every 30 seconds.": "Код подтверждения обновляется каждые 30 секунд.", @@ -3617,18 +3848,17 @@ "Verification is not configured properly": "Подтверждение настроено неправильно", "Verification required to reveal the saved key.": "Требуется подтверждение для отображения сохраненного ключа.", "Verify": "Проверить", - "Verify Setup": "Проверить настройку", "Verify and Sign In": "Подтвердить и войти", + "Verify Setup": "Проверить настройку", "Verify your database connection": "Проверьте подключение к базе данных", "Version Overrides": "Переопределения версий", "Vertex AI": "Vertex AI", - "Vertex AI Key Format": "Формат ключа Vertex AI", "Vertex AI does not support functionResponse.id. Enable this to remove the field automatically.": "Vertex AI не поддерживает functionResponse.id. Включите, чтобы автоматически удалить это поле.", + "Vertex AI Key Format": "Формат ключа Vertex AI", "Video": "Видео", "Video Remix": "Ремикс видео", "Vidu": "Vidu", "View": "Просмотр", - "View Pricing": "Посмотреть цены", "View all currently available models": "Просмотреть все доступные модели", "View and manage your API usage logs": "Просмотр и управление журналами использования API", "View and manage your drawing logs": "Просмотр и управление журналами рисования", @@ -3641,6 +3871,7 @@ "View mode": "Режим отображения", "View model call count analytics and charts": "Просмотр аналитики и графиков количества вызовов моделей", "View model statistics and charts": "Просмотр статистики и графиков моделей", + "View Pricing": "Посмотреть цены", "View the complete details for this": "Просмотр полных деталей этой", "View the complete details for this log entry": "Просмотр полной информации об этой записи журнала", "View the complete error message and details": "Просмотр полного сообщения об ошибке и деталей", @@ -3649,18 +3880,20 @@ "View user consumption statistics and charts": "Просмотр статистики и графиков потребления", "View your topup transaction records and payment history": "Просмотреть записи о пополнении счета и историю платежей", "Violation Code": "Код нарушения", + "Violation deduction amount": "Сумма вычета за нарушение", "Violation Fee": "Штраф за нарушение", "Violation Marker": "Маркер нарушения", - "Violation deduction amount": "Сумма вычета за нарушение", + "vip": "vip", + "VIP users with premium access": "VIP-пользователи с премиум-доступом", "Visit Settings → General and adjust quota options...": "Перейдите в Настройки → Общие и настройте параметры квоты...", "Visitors must authenticate before accessing the pricing directory.": "Посетители должны пройти аутентификацию перед доступом к каталогу цен.", "Visual": "Визуальный", - "Visual Editor": "Визуальный редактор", - "Visual Mode": "Визуальный режим", - "Visual Parameter Override": "Визуальное переопределение параметров", "Visual edit": "Визуальное редактирование", "Visual editor": "Визуальный редактор", + "Visual Editor": "Визуальный редактор", "Visual indicator color for the API card": "Цвет визуального индикатора для карточки API", + "Visual Mode": "Визуальный режим", + "Visual Parameter Override": "Визуальное переопределение параметров", "VolcEngine": "VolcEngine", "Waffo Pancake Payment Gateway": "Платёжный шлюз Waffo Pancake", "Waffo Payment": "Оплата Waffo", @@ -3672,9 +3905,11 @@ "Wallet": "Кошелек", "Wallet First": "Кошелёк в приоритете", "Wallet Management": "Управление кошельком", - "Wallet Only": "Только кошелёк", "Wallet management and personal preferences.": "Управление кошельком и личные предпочтения.", + "Wallet Only": "Только кошелёк", + "Warm": "Теплые", "Warning": "Предупреждение", + "Warning Soft": "Мягкое предупреждение", "Warning: Base URL should not end with /v1. New API will handle it automatically. This may cause request failures.": "Предупреждение: базовый URL не должен заканчиваться на /v1. Новый API обработает это автоматически. Это может привести к сбоям запросов.", "Warning: Disabling 2FA will make your account less secure.": "Внимание: Отключение 2FA сделает вашу учетную запись менее безопасной.", "Warning: This action is permanent and irreversible!": "Внимание: Это действие является постоянным и необратимым!", @@ -3682,22 +3917,22 @@ "We could not load the setup status.": "Не удалось загрузить статус настройки.", "We will prompt your device to confirm using biometrics or your hardware key.": "Мы предложим вашему устройству подтвердить действие с помощью биометрии или аппаратного ключа.", "We'll be back online shortly.": "Мы скоро вернемся в сеть.", - "WeChat": "WeChat", - "WeChat QR code will be displayed here": "QR-код WeChat будет отображен здесь", - "WeChat login QR code": "QR-код для входа в WeChat", - "WeChat sign in": "Вход через WeChat", "Web Search": "Веб-поиск", "Webhook Configuration:": "Конфигурация веб-хука:", - "Webhook Secret": "Секрет веб-хука", - "Webhook URL": "Адрес Webhook", - "Webhook URL:": "URL веб-хука:", "Webhook public key (production)": "Публичный ключ webhook (production)", "Webhook public key (production) is required": "Требуется публичный ключ webhook (production)", "Webhook public key (sandbox)": "Публичный ключ webhook (sandbox)", "Webhook public key (sandbox) is required": "Требуется публичный ключ webhook (sandbox)", "Webhook secret": "Секрет веб-хука", + "Webhook Secret": "Секрет веб-хука", "Webhook signing secret (leave blank unless updating)": "Секрет подписи веб-хука (оставьте пустым, если не обновляете)", + "Webhook URL": "Адрес Webhook", + "Webhook URL:": "URL веб-хука:", "Website is under maintenance!": "Сайт находится на техническом обслуживании!", + "WeChat": "WeChat", + "WeChat login QR code": "QR-код для входа в WeChat", + "WeChat QR code will be displayed here": "QR-код WeChat будет отображен здесь", + "WeChat sign in": "Вход через WeChat", "Week": "Неделя", "Weekday": "День недели", "Weekly": "Еженедельно", @@ -3709,9 +3944,9 @@ "Well-Known URL must start with http:// or https://": "Well-Known URL должен начинаться с http:// или https://", "What would you like to know?": "Что вы хотели бы узнать?", "When conditions match, the final price is multiplied by X. Multiple matches multiply together; values < 1 act as discounts.": "При совпадении условий итоговая цена умножается на X. Несколько совпадений умножаются вместе; значения < 1 действуют как скидки.", - "When enabled, Midjourney callbacks are accepted (reveals server IP).": "При включении принимаются обратные вызовы Midjourney (раскрывает IP сервера).", "When enabled, if channels in the current group fail, it will try channels in the next group in order.": "Если включено, при сбое каналов в текущей группе система попробует каналы следующей группы по порядку.", "When enabled, large request bodies are temporarily stored on disk instead of memory, significantly reducing memory usage. SSD recommended.": "При включении большие тела запросов временно сохраняются на диске, что значительно снижает использование памяти. Рекомендуется SSD.", + "When enabled, Midjourney callbacks are accepted (reveals server IP).": "При включении принимаются обратные вызовы Midjourney (раскрывает IP сервера).", "When enabled, newly created tokens start in the first auto group.": "При включении вновь созданные токены начинаются в первой автогруппе.", "When enabled, prompts are scanned before reaching upstream models.": "При включении запросы сканируются перед достижением вышестоящих моделей.", "When enabled, the store field will be blocked": "Если включено, поле магазина будет заблокировано", @@ -3721,19 +3956,24 @@ "When performance monitoring is enabled and system resource usage exceeds the set threshold, new Relay requests will be rejected.": "Когда мониторинг включён и использование ресурсов превышает порог, новые Relay-запросы будут отклонены.", "When running in containers or ephemeral environments, ensure the SQLite file is mapped to persistent storage to avoid data loss on restart.": "При работе в контейнерах или эфемерных средах убедитесь, что файл SQLite сопоставлен с постоянным хранилищем, чтобы избежать потери данных при перезапуске.", "Whitelist": "Белый список", - "Whitelist (Only allow listed IPs)": "Белый список (Разрешить только указанные IP-адреса)", "Whitelist (Only allow listed domains)": "Белый список (Разрешить только указанные домены)", + "Whitelist (Only allow listed IPs)": "Белый список (Разрешить только указанные IP-адреса)", + "whsec_xxx": "whsec_xxx", "Window:": "Окно:", + "with conflicts": "с конфликтами", "Without additional conditions, only the type above is used for pruning.": "Без дополнительных условий для очистки используется только тип выше.", "Worker Access Key": "Ключ доступа воркера", "Worker Proxy": "Прокси воркера", "Worker URL": "URL воркера", "Workspaces": "Рабочие пространства", "Write custom CSS for the banner background. CSS is scoped to .top-banner.": "Write custom CSS for the banner background. CSS is scoped to .top-banner.", + "Write custom CSS for the banner. Use declarations directly, or use & for scoped selectors such as &::before and & .top-banner-icon.": "Напишите пользовательский CSS для баннера. Используйте объявления напрямую или & для ограниченных селекторов, например &::before и & .top-banner-icon.", "Write value to the target field": "Записать значение в целевое поле", + "x": "x", + "xAI": "xAI", "Xinference": "Xinference", "Xunfei": "Xunfei", - "You Pay": "Вы платите", + "years": "лет", "You are about to delete {{count}} API key(s).": "Вы собираетесь удалить {{count}} API-ключ(а/ей).", "You are running the latest version ({{version}}).": "Вы используете последнюю версию ({{version}}).", "You can close this tab once the binding completes or a success message appears in the original window.": "Вы можете закрыть эту вкладку, как только привязка завершится или в исходном окне появится сообщение об успехе.", @@ -3742,9 +3982,11 @@ "You don't have necessary permission": "У вас нет необходимых разрешений", "You have unsaved changes": "У вас есть несохранённые изменения", "You have unsaved changes. Are you sure you want to leave?": "У вас есть несохранённые изменения. Вы уверены, что хотите уйти?", + "You Pay": "Вы платите", "You save": "Вы экономите", "You will be redirected to Telegram to complete the binding process.": "Вы будете перенаправлены в Telegram для завершения процесса привязки.", "You'll be redirected automatically. You can return to the previous page if nothing happens after a few seconds.": "Вы будете автоматически перенаправлены. Если через несколько секунд ничего не происходит, вы можете вернуться на предыдущую страницу.", + "your AI integration?": "вашу интеграцию с ИИ?", "Your Azure OpenAI endpoint URL": "Ваш URL конечной точки Azure OpenAI", "Your Bot Name": "Имя бота", "Your Cloudflare Account ID": "Ваш ID аккаунта Cloudflare", @@ -3752,228 +3994,14 @@ "Your Discord OAuth Client Secret": "Ваш Discord OAuth Client Secret", "Your GitHub OAuth Client ID": "Ваш ID клиента GitHub OAuth", "Your GitHub OAuth Client Secret": "Ваш секрет клиента GitHub OAuth", + "Your new backup codes are ready": "Ваши новые резервные коды готовы", "Your Referral Link": "Ваша реферальная ссылка", + "Your system access token for API authentication. Keep it secure and don't share it with others.": "Ваш системный токен доступа для аутентификации API. Храните его в безопасности и не делитесь им с другими.", "Your Telegram Bot Token": "Ваш токен Telegram-бота", "Your Turnstile secret key": "Секретный ключ Turnstile", "Your Turnstile site key": "Ключ сайта Turnstile", - "Your new backup codes are ready": "Ваши новые резервные коды готовы", - "Your system access token for API authentication. Keep it secure and don't share it with others.": "Ваш системный токен доступа для аутентификации API. Храните его в безопасности и не делитесь им с другими.", "Zhipu": "Zhipu", "Zhipu V4": "Zhipu V4", - "Zoom": "Zoom", - "[{\"ChatGPT\":\"https://chat.openai.com\"},{\"Lobe Chat\":\"https://chat-preview.lobehub.com/?settings={...}\"}]": "[{\"ChatGPT\":\"https://chat.openai.com\"},{\"Lobe Chat\":\"https://chat-preview.lobehub.com/?settings={...}\"}]", - "[{\"name\":\"支付宝\",\"type\":\"alipay\",\"color\":\"#1677FF\"}]": "[{\"name\":\"Alipay\",\"type\":\"alipay\",\"color\":\"#1677FF\"}]", - "_copy": "_копировать", - "`, and `-nothinking` suffixes while routing to the correct Gemini variant.": "суффиксы `, и `-nothinking` при маршрутизации к правильному варианту Gemini.", - "active": "активный", - "active users": "активных пользователей", - "aggregates 50+ AI providers behind one unified API. Manage access, track costs, and scale effortlessly.": "объединяет 50+ ИИ-провайдеров за единым API. Управляйте доступом, отслеживайте затраты и масштабируйтесь без усилий.", - "and": "и", - "appended": "добавлено", - "are also listed here. Remove them from Models to keep the `/v1/models` response user-friendly and hide vendor-specific names.": "также перечислены здесь. Удалите их из Моделей, чтобы ответ `/v1/models` был удобным для пользователя и скрывал имена, специфичные для поставщиков.", - "by": "от", - "channel(s)? This action cannot be undone.": "канал(ы)? Это действие нельзя отменить.", - "checkout.session.completed": "checkout.session.completed", - "checkout.session.expired": "checkout.session.expired", - "compatible API routes": "совместимых API-маршрутов", - "days": "дней", - "default": "по умолчанию", - "designed for scale": "спроектировано для масштабирования", - "disabled": "отключено", - "does not exist or might have been removed.": "не существует или, возможно, был удален.", - "e.g. 401, 403, 429, 500-599": "напр. 401, 403, 429, 500-599", - "e.g. 8 means 1 USD = 8 units": "напр. 8 означает 1 USD = 8 единиц", - "e.g. Basic Plan": "напр. Базовый план", - "e.g. Clean tool parameters to avoid upstream validation errors": "напр. Очистить параметры инструментов во избежание ошибок валидации", - "e.g. My GitLab": "например, My GitLab", - "e.g. New API Console": "напр. консоль New API", - "e.g. Suitable for light usage": "напр. Подходит для лёгкого использования", - "e.g. This request does not meet access policy": "напр. Этот запрос не соответствует политике доступа", - "e.g. example.com": "напр. example.com", - "e.g. llama3.1:8b": "например llama3.1:8b", - "e.g. my-gitlab": "например, my-gitlab", - "e.g. openid profile email": "например, openid profile email", - "e.g. ¥ or HK$": "напр. ¥ или HK$", - "e.g., #3b82f6,#8b5cf6": "e.g., #3b82f6,#8b5cf6", - "e.g., #ff0000,#0000ff": "e.g., #ff0000,#0000ff", - "e.g., #ffffff or white": "e.g., #ffffff or white", - "e.g., 0.95": "напр., 0.95", - "e.g., 100": "напр., 100", - "e.g., 123456": "напр., 123456", - "e.g., 2025-04-01-preview": "напр., 2025-04-01-preview", - "e.g., 50": "напр., 50", - "e.g., 500000": "напр., 500000", - "e.g., 7342866812345": "напр., 7342866812345", - "e.g., 8 means 8 local currency per USD": "например, 8 означает 8 местной валюты за доллар США", - "e.g., Alipay, WeChat": "например, Alipay, WeChat", - "e.g., Basic Package": "напр., Базовый пакет", - "e.g., CN2 GIA": "например, CN2 GIA", - "e.g., Core APIs, OpenAI, Claude": "например, Core APIs, OpenAI, Claude", - "e.g., OpenAI GPT-4 Production": "напр., OpenAI GPT-4 Production", - "e.g., Recommended for China Mainland Users": "например, Рекомендуется для пользователей материкового Китая", - "e.g., d6b5da8hk1awo8nap34ube6gh": "например, d6b5da8hk1awo8nap34ube6gh", - "e.g., default, vip, premium": "например, default, vip, premium", - "e.g., gpt-4, claude-3": "напр. gpt-4, claude-3", - "e.g., gpt-4.1-nano,regex:^claude-.*$,regex:^sora-.*$": "например: gpt-4.1-nano,regex:^claude-.*$,regex:^sora-.*$", - "e.g., https://api.example.com (path before /suno)": "например, https://api.example.com (путь до /suno)", - "e.g., https://api.openai.com/v1/chat/completions": "например, https://api.openai.com/v1/chat/completions", - "e.g., https://ark.cn-beijing.volces.com": "например, https://ark.cn-beijing.volces.com", - "e.g., https://docs-test-001.openai.azure.com": "например, https://docs-test-001.openai.azure.com", - "e.g., https://fastgpt.run/api/openapi": "например, https://fastgpt.run/api/openapi", - "e.g., preview": "например, preview", - "e.g., prod_xxx": "напр., prod_xxx", - "e.g., us-central1 or JSON format for model-specific regions": "например, us-central1 или формат JSON для регионов, специфичных для модели", - "e.g., v2.1": "например, v2.1", - "edit_this": "изменить_это", - "example.com blocked-site.com": "example.com blocked-site.com", - "example.com company.com": "example.com company.com", - "expired": "истек", - "field": "поле", - "footer.columns.about.links.aboutProject": "О проекте", - "footer.columns.about.links.contact": "Связаться с нами", - "footer.columns.about.links.features": "Возможности", - "footer.columns.about.title": "О нас", - "footer.columns.docs.links.apiDocs": "Документация API", - "footer.columns.docs.links.installation": "Руководство по установке", - "footer.columns.docs.links.quickStart": "Быстрый старт", - "footer.columns.docs.title": "Документация", - "footer.columns.related.links.midjourney": "Midjourney-Proxy", - "footer.columns.related.links.neko": "neko-api-key-tool", - "footer.columns.related.links.oneApi": "Один API", - "footer.columns.related.title": "Связанные проекты", - "footer.defaultCopyright": "Все права защищены.", - "footer.new\u0061pi.projectAttributionSuffix": "Все права защищены. Разработано участниками проекта.", - "gpt-3.5-turbo": "gpt-3.5-turbo", - "gpt-3.5-turbo-0125": "gpt-3.5-turbo-0125", - "gpt-4": "gpt-4", - "gpt-4, claude-3-opus, etc.": "gpt-4, claude-3-opus и т. д.", - "group ratio": "коэффициент группы", - "h": "h", - "hours": "часов", - "https://api.day.app/yourkey/{{title}}/{{content}}": "https://api.day.app/yourkey/{{title}}/{{content}}", - "https://api.example.com": "https://api.example.com", - "https://ark.ap-southeast.bytepluses.com": "https://ark.ap-southeast.bytepluses.com", - "https://ark.cn-beijing.volces.com": "https://ark.cn-beijing.volces.com", - "https://cloud.siliconflow.cn/i/hij0YNTZ": "https://cloud.siliconflow.cn/i/hij0YNTZ", - "https://docs.example.com": "https://docs.example.com", - "https://example.com": "https://example.com", - "https://example.com/logo.png": "https://example.com/logo.png", - "https://example.com/qr-code.png": "https://example.com/qr-code.png", - "https://example.com/topup": "https://example.com/topup", - "https://example.com/webhook": "https://example.com/webhook", - "https://gateway.example.com": "https://gateway.example.com", - "https://github.com/QuantumNous/new-api": "https://github.com/QuantumNous/new-api", - "https://gotify.example.com": "https://gotify.example.com", - "https://pay.example.com": "https://pay.example.com", - "https://provider.com/.well-known/openid-configuration": "https://provider.com/.well-known/openid-configuration", - "https://status.example.com": "https://status.example.com", - "https://wechat-server.example.com": "https://wechat-server.example.com", - "https://worker.example.workers.dev": "https://worker.example.workers.dev", - "https://your-server.example.com": "https://your-server.example.com", - "https://yourdomain.com": "https://yourdomain.com", - "io.net API Key": "Ключ API io.net", - "io.net Deployments": "Развертывания io.net", - "is an open-source AI API gateway for self-hosted deployments. Connect multiple upstream services, manage models, keys, quotas, logs, and routing policies in one place.": "— это open-source API-шлюз для ИИ, предназначенный для самостоятельного размещения. Подключайте несколько вышестоящих сервисов и управляйте моделями, ключами, квотами, журналами и политиками маршрутизации в одном месте.", - "is less than the configured maximum cache size": "меньше настроенного максимального размера кэша", - "is the default price; ": "— цена по умолчанию; ", - "log": "записи", - "m": "m", - "maxRequests ≥ 0, maxSuccess ≥ 1, both ≤ 2,147,483,647": "maxRequests ≥ 0, maxSuccess ≥ 1, оба ≤ 2,147,483,647", - "minutes": "минут", - "model": "модель", - "model billing support": "поддержка биллинга моделей", - "model(s) selected out of": "модель(и) выбрано из", - "model(s)? This action cannot be undone.": "модель(и)? Это действие нельзя отменить.", - "models": "моделей", - "months": "месяцев", - "more mapping": "больше сопоставлений", - "ms": "мс", - "my-status": "мой-статус", - "name@example.com": "name@example.com", - "noreply@example.com": "noreply@example.com", - "of": "записей, всего", - "of 3:": "из 3:", - "off": "выкл.", - "one keyword per line": "одно ключевое слово на строку", - "opens in an external client. Trigger it from the sidebar or API key actions to launch the configured application.": "открывается во внешнем клиенте. Запустите его из боковой панели или действий с ключом API, чтобы запустить настроенное приложение.", - "org-...": "орг-...", - "override": "переопределить", - "overrides for matching model prefix.": "переопределяет цену по совпавшему префиксу модели.", - "parameter.": "параметр.", - "per": "за", - "per request": "за запрос", - "price_xxx": "price_xxx", - "redemption code": "код активации", - "redemption codes.": "коды активации.", - "replaced": "заменено", - "request": "запрос", - "requests served": "обслуженных запросов", - "rules": "правила", - "s": "s", - "scheduling controls": "механизмов управления маршрутизацией", - "seconds": "секунды", - "selected": "выбрано", - "selected channel(s). Leave empty to remove tag.": "выбранный канал(ы). Оставьте пустым, чтобы удалить тег.", - "showing •": "отображается •", - "sk_xxx or rk_xxx": "sk_xxx или rk_xxx", - "smtp.example.com": "smtp.example.com", - "socks5://user:pass@host:port": "socks5://user:pass@host:port", - "sources": "источники", - "stream": "Поток", - "this token group": "эта группа токенов", - "this user group": "эта группа пользователей", - "times": "раз", - "to access this resource.": "для доступа к этому ресурсу.", - "to confirm": "для подтверждения", - "to override billing when a user in one group uses a token of another group.": "для переопределения выставления счетов, когда пользователь одной группы использует токен другой группы.", - "to the Models list so users can use them before the mapping sends traffic upstream.": "в список моделей, чтобы пользователи могли использовать их до того, как сопоставление отправит трафик выше по течению.", - "to view this resource.": "для просмотра этого ресурса.", - "tokens": "токены", - "top-up ratio": "коэффициент пополнения", - "upstream services integrated": "интеграций с вышестоящими сервисами", - "uptime": "время бесперебойной работы", - "used": "использовано", - "uses": "использует", - "variable": "переменная", - "variable) *": "переменная) *", - "vip": "vip", - "whsec_xxx": "whsec_xxx", - "with conflicts": "с конфликтами", - "x": "x", - "xAI": "xAI", - "years": "лет", - "your AI integration?": "вашу интеграцию с ИИ?", - "{\"original-model\": \"replacement-model\"}": "{\"original-model\": \"replacement-model\"}", - "{{category}} Models": "Модели {{category}}", - "{{count}} IP(s)": "{{count}} IP", - "{{count}} channel(s) deleted": "Удалено {{count}} каналов", - "{{count}} channel(s) disabled": "Отключено {{count}} каналов", - "{{count}} channel(s) enabled": "Включено {{count}} каналов", - "{{count}} channel(s) failed to disable": "Не удалось отключить {{count}} каналов", - "{{count}} channel(s) failed to enable": "Не удалось включить {{count}} каналов", - "{{count}} days ago": "{{count}} дней назад", - "{{count}} days remaining": "Осталось {{count}} дней", - "{{count}} disabled channel(s) deleted": "Удалено {{count}} отключённых каналов", - "{{count}} hours ago": "{{count}} часов назад", - "{{count}} log entries removed.": "Удалено {{count}} записей журнала.", - "{{count}} minutes ago": "{{count}} минут назад", - "{{count}} model(s)": "{{count}} модел(ей)", - "{{count}} months ago": "{{count}} месяцев назад", - "{{count}} override": "{{count}} переопределений", - "{{count}} tiers": "{{count}} уровней", - "{{count}} weeks ago": "{{count}} недель назад", - "{{field}} updated to {{value}}": "{{field}} обновлено на {{value}}", - "{{field}} updated to {{value}} for tag: {{tag}}": "{{field}} обновлено на {{value}} для тега: {{tag}}", - "{{n}} model(s) selected": "Выбрано моделей: {{n}}", - "{{value}}ms": "{{value}} мс", - "{{value}}s": "{{value}} с", - "| Based on": "| На основе", - "© 2025 Your Company. All rights reserved.": "© 2025 Ваша Компания. Все права защищены.", - "← Left": "← Left", - "↑ Up": "↑ Up", - "→ Right": "→ Right", - "↓ Down": "↓ Down", - "↘ Diagonal": "↘ Diagonal", - "⊙ Radial": "⊙ Radial" + "Zoom": "Zoom" } } diff --git a/web/default/src/i18n/locales/vi.json b/web/default/src/i18n/locales/vi.json index 22126be83dc..860298eb5c7 100644 --- a/web/default/src/i18n/locales/vi.json +++ b/web/default/src/i18n/locales/vi.json @@ -3,31 +3,70 @@ "360": "360", "1000": "1000", "10000": "10000", + "_copy": "_bản sao", + ", and": ", và", + "? This action cannot be undone.": "? Hành động này không thể hoàn tác.", + ". Please fix the JSON before saving.": ". Vui lòng sửa JSON trước khi lưu.", + ". This action cannot be undone.": ". Hành động này không thể hoàn tác.", + "...": "...", "\"default\": \"us-central1\", \"claude-3-5-sonnet-20240620\": \"europe-west1\"": "\"default\": \"us-central1\", \"claude-3-5-sonnet-20240620\": \"europe-west1\"", - "% off": "% giảm giá", + "({{total}} total, {{omit}} omitted)": "({{total}} tổng cộng, đã lược bỏ {{omit}})", "(Leave empty to dissolve tag)": "Để trống để xóa thẻ.", "(Optional: redirect model names)": "(Tùy chọn: chuyển hướng tên mô hình)", "(Override all channels' groups)": "(Ghi đè các nhóm của tất cả các kênh)", "(Override all channels' models)": "(Ghi đè các mô hình của tất cả các kênh)", - "({{total}} total, {{omit}} omitted)": "({{total}} tổng cộng, đã lược bỏ {{omit}})", - ", and": ", và", - ". Please fix the JSON before saving.": ". Vui lòng sửa JSON trước khi lưu.", - ". This action cannot be undone.": ". Hành động này không thể hoàn tác.", - "...": "...", + "[{\"ChatGPT\":\"https://chat.openai.com\"},{\"Lobe Chat\":\"https://chat-preview.lobehub.com/?settings={...}\"}]": "[{\"ChatGPT\":\"https://chat.openai.com\"},{\"Lobe Chat\":\"https://chat-preview.lobehub.com/?settings={...}\"}]", + "[{\"name\":\"支付宝\",\"type\":\"alipay\",\"color\":\"#1677FF\"}]": "[{\"name\":\"Alipay\",\"type\":\"alipay\",\"color\":\"#1677FF\"}]", + "{\"original-model\": \"replacement-model\"}": "{\"original-model\": \"replacement-model\"}", + "{{category}} Models": "Mô hình {{category}}", + "{{count}} channel(s) deleted": "Đã xóa {{count}} kênh", + "{{count}} channel(s) disabled": "Đã tắt {{count}} kênh", + "{{count}} channel(s) enabled": "Đã bật {{count}} kênh", + "{{count}} channel(s) failed to disable": "{{count}} kênh không thể tắt", + "{{count}} channel(s) failed to enable": "{{count}} kênh không thể bật", + "{{count}} days ago": "{{count}} ngày trước", + "{{count}} days remaining": "{{count}} days remaining", + "{{count}} disabled channel(s) deleted": "Đã xóa {{count}} kênh đã tắt", + "{{count}} hours ago": "{{count}} giờ trước", + "{{count}} IP(s)": "{{count}} IP", + "{{count}} log entries removed.": "Đã xóa {{count}} mục nhật ký.", + "{{count}} minutes ago": "{{count}} phút trước", + "{{count}} model(s)": "{{count}} mô hình", + "{{count}} months ago": "{{count}} tháng trước", + "{{count}} override": "{{count}} ghi đè", + "{{count}} tiers": "{{count}} bậc", + "{{count}} weeks ago": "{{count}} tuần trước", + "{{field}} updated to {{value}}": "{{field}} đã cập nhật thành {{value}}", + "{{field}} updated to {{value}} for tag: {{tag}}": "{{field}} đã cập nhật thành {{value}} cho nhãn: {{tag}}", + "{{n}} model(s) selected": "Đã chọn {{n}} model", + "{{value}}ms": "{{value}} ms", + "{{value}}s": "{{value}} s", + "@lobehub/icons key": "@lobehub/icons khóa", + "@lobehub/icons key name": "@lobehub/icons tên khóa", "/status/": "/status/", "/your/endpoint": "/điểm cuối của bạn", + "% off": "% giảm giá", + "`, and `-nothinking` suffixes while routing to the correct Gemini variant.": ", và", + "© 2025 Your Company. All rights reserved.": "© 2025 Công ty của bạn. Mọi quyền được bảo lưu.", + "← Left": "← Left", + "→ Right": "→ Right", + "↑ Up": "↑ Up", + "↓ Down": "↓ Down", + "↘ Diagonal": "↘ Diagonal", + "| Based on": "| Dựa trên", + "⊙ Radial": "⊙ Radial", "0 means unlimited": "0 có nghĩa là không giới hạn", "1 Day": "1 ngày", - "1 Hour": "1 giờ", - "1 Month": "1 tháng", "1 day ago": "1 ngày trước", + "1 Hour": "1 giờ", "1 hour ago": "1 giờ trước", "1 minute ago": "1 phút trước", + "1 Month": "1 tháng", "1 month ago": "1 tháng trước", "1 week ago": "1 tuần trước", "1 year ago": "1 năm trước", - "1) Click \"Open authorization page\" and complete login. 2) Your browser may redirect to localhost (it is OK if the page does not load). 3) Copy the full URL from the address bar and paste it below. 4) Click \"Generate credential\".": "1) Nhấp «Mở trang ủy quyền» và đăng nhập. 2) Trình duyệt có thể chuyển tới localhost (trang không tải cũng được). 3) Sao chép toàn bộ URL từ thanh địa chỉ và dán xuống. 4) Nhấp «Tạo thông tin xác thực».", "1. Create an application in your Gotify server": "1. Tạo một ứng dụng trong máy chủ Gotify của bạn", + "1) Click \"Open authorization page\" and complete login. 2) Your browser may redirect to localhost (it is OK if the page does not load). 3) Copy the full URL from the address bar and paste it below. 4) Click \"Generate credential\".": "1) Nhấp «Mở trang ủy quyền» và đăng nhập. 2) Trình duyệt có thể chuyển tới localhost (trang không tải cũng được). 3) Sao chép toàn bộ URL từ thanh địa chỉ và dán xuống. 4) Nhấp «Tạo thông tin xác thực».", "10 / page": "10 / trang", "100 / page": "100 / trang", "14 Days": "14 ngày", @@ -47,56 +86,7 @@ "7 Days": "7 ngày", "7 days ago": "7 ngày trước", "80,443,8080": "80,443,8080", - "? This action cannot be undone.": "? Hành động này không thể hoàn tác.", - "@lobehub/icons key": "@lobehub/icons khóa", - "@lobehub/icons key name": "@lobehub/icons tên khóa", "A text banner displayed at the top of all pages. Leave empty to disable.": "A text banner displayed at the top of all pages. Leave empty to disable.", - "AGPL v3.0 License": "Giấy phép AGPL v3.0", - "AI Proxy": "AI Proxy", - "AI Proxy Library": "Thư viện AI Proxy", - "AI model testing environment": "Môi trường thử nghiệm mô hình AI", - "AI models": "mô hình AI", - "AI models supported": "Các mô hình AI được hỗ trợ", - "AIGC2D": "AIGC2D", - "AILS": "AILS", - "AK/SK mode: use AccessKey|SecretAccessKey|Region": "Chế độ AK/SK: sử dụng AccessKey|SecretAccessKey|Region", - "API Access": "Truy cập API", - "API Addresses": "Địa chỉ API", - "API Base URL (Important: Not Chat API) *": "URL cơ sở API (Quan trọng: Không phải API Chat) *", - "API Base URL *": "URL cơ sở API *", - "API Endpoints": "Điểm cuối API", - "API Info": "Thông tin API", - "API Key": "Khóa API", - "API Key (Production)": "API Key (Sản xuất)", - "API Key (Sandbox)": "Khóa API (Sandbox)", - "API Key (one per line for batch mode)": "Khóa API (mỗi khóa một dòng cho chế độ hàng loạt)", - "API Key *": "Khóa API *", - "API Key created successfully": "Tạo khóa API thành công", - "API Key deleted successfully": "Xóa khóa API thành công", - "API Key disabled successfully": "Vô hiệu hóa khóa API thành công", - "API Key enabled successfully": "Kích hoạt khóa API thành công", - "API Key mode (does not support batch creation)": "Chế độ Khóa API (không hỗ trợ tạo hàng loạt)", - "API Key mode: use APIKey|Region": "Chế độ khóa API: sử dụng APIKey|Region", - "API Key updated successfully": "API Key đã được cập nhật thành công", - "API Keys": "Khóa API", - "API Private Key": "Khóa riêng API", - "API Requests": "Yêu cầu API", - "API URL": "API URL", - "API info added. Click \"Save Settings\" to apply.": "Thông tin API đã được thêm. Nhấp vào \"Lưu Cài đặt\" để áp dụng.", - "API info deleted. Click \"Save Settings\" to apply.": "Thông tin API đã được xóa. Nhấp vào \"Lưu Cài đặt\" để áp dụng.", - "API info saved successfully": "Đã lưu thông tin API thành công", - "API info updated. Click \"Save Settings\" to apply.": "Thông tin API đã được cập nhật. Nhấp vào \"Lưu Cài đặt\" để áp dụng.", - "API key": "Khóa API", - "API key from the provider": "khóa API từ nhà cung cấp", - "API key is required": "Khóa API là bắt buộc", - "API secret": "Bí mật API", - "API token management": "Quản lý token API", - "API usage records": "Lịch sử sử dụng API", - "API2GPT": "API2GPT", - "AWS": "AWS", - "AWS Bedrock Claude Compat": "AWS Bedrock Claude tương thích", - "AWS Key Format": "Định dạng khóa AWS", - "AZURE_OPENAI_ENDPOINT *": "AZURE_OPENAI_ENDPOINT *", "About": "Giới thiệu", "Accept Unpriced Models": "Chấp nhận các Mô hình chưa định giá", "Accepts a JSON array of model identifiers that support the Imagine API.": "Chấp nhận một mảng JSON gồm các mã định danh mô hình hỗ trợ API Imagine.", @@ -104,43 +94,28 @@ "Access Denied Message": "Thông báo từ chối truy cập", "Access Forbidden": "Truy cập bị cấm", "Access Policy (JSON)": "Chính sách truy cập (JSON)", - "Access Token": "Token truy cập", "Access previous conversations and start new ones.": "Truy cập các cuộc trò chuyện trước đó và bắt đầu các cuộc trò chuyện mới.", + "Access Token": "Token truy cập", "AccessKey / SecretAccessKey": "AccessKey / SecretAccessKey", "Account Binding Management": "Quản lý liên kết tài khoản", "Account Bindings": "Liên kết tài khoản", - "Account ID *": "ID tài khoản *", - "Account Info": "Thông tin tài khoản", "Account created! Please sign in": "Tài khoản đã được tạo! Vui lòng đăng nhập", "Account deleted successfully": "Tài khoản đã được xóa thành công", + "Account ID *": "ID tài khoản *", + "Account Info": "Thông tin tài khoản", "Account used when authenticating with the SMTP server": "Tài khoản được sử dụng khi xác thực với máy chủ SMTP", "Action confirmation": "Xác nhận hành động", "Actions": "Hành động", + "active": "hoạt động", "Active": "Hoạt động", "Active Cache Count": "Số bộ nhớ đệm hoạt động", "Active Files": "Tệp đang hoạt động", + "active users": "Người dùng tích cực", "Actual Amount": "Số tiền thực tế", "Actual Model": "Mô hình thực tế", "Actual Model:": "Mô hình thực tế:", "Add": "Add", - "Add API": "Thêm API", - "Add API Shortcut": "Thêm lối tắt API", - "Add Announcement": "Thêm Thông báo", - "Add Condition": "Thêm điều kiện", - "Add FAQ": "Thêm FAQ", - "Add Funds": "Thêm Tiền", - "Add Group": "Thêm Nhóm", - "Add Mapping": "Thêm ánh xạ", - "Add Mode": "Thêm Chế độ", - "Add Model": "Thêm Mô hình", - "Add Models": "Thêm mô hình", - "Add OAuth Provider": "Thêm nhà cung cấp OAuth", - "Add Provider": "Thêm nhà cung cấp", - "Add Quota": "Thêm Hạn mức", - "Add Row": "Thêm Hàng", - "Add Rule": "Thêm quy tắc", - "Add Uptime Kuma Group": "Thêm Nhóm Uptime Kuma", - "Add User": "Thêm người dùng", + "Add {{title}}": "Thêm {{title}}", "Add a group identifier to the auto assignment list.": "Thêm một mã định danh nhóm vào danh sách phân công tự động.", "Add a new API key by providing necessary info.": "Thêm khóa API mới bằng cách cung cấp thông tin cần thiết.", "Add a new channel by providing the necessary information.": "Thêm kênh mới bằng cách cung cấp thông tin cần thiết.", @@ -150,25 +125,41 @@ "Add an extra layer of security to your account": "Thêm một lớp bảo mật bổ sung cho tài khoản của bạn", "Add and submit": "Thêm và gửi", "Add animation effects to the banner background.": "Add animation effects to the banner background.", + "Add Announcement": "Thêm Thông báo", + "Add API": "Thêm API", + "Add API Shortcut": "Thêm lối tắt API", "Add auto group": "Thêm nhóm tự động", "Add chat preset": "Thêm mẫu trò chuyện", "Add condition": "Thêm điều kiện", + "Add Condition": "Thêm điều kiện", "Add custom model(s), comma-separated": "Thêm mô hình tùy chỉnh, phân tách bằng dấu phẩy", "Add discount tier": "Thêm bậc giảm giá", "Add each model or tag you want to include.": "Thêm mỗi mô hình hoặc thẻ bạn muốn đưa vào.", + "Add FAQ": "Thêm FAQ", "Add from available models...": "Thêm từ các mô hình có sẵn...", + "Add Funds": "Thêm Tiền", "Add group": "Thêm nhóm", + "Add Group": "Thêm Nhóm", "Add group rate limit": "Thêm giới hạn tốc độ nhóm", "Add group rules": "Thêm quy tắc nhóm", + "Add Mapping": "Thêm ánh xạ", "Add method": "Thêm phương thức", + "Add Mode": "Thêm Chế độ", "Add model": "Thêm mô hình", + "Add Model": "Thêm Mô hình", + "Add Models": "Thêm mô hình", "Add new amount": "Thêm số tiền mới", "Add new redemption code(s) by providing necessary info.": "Thêm mã đổi thưởng mới bằng cách cung cấp thông tin cần thiết.", + "Add OAuth Provider": "Thêm nhà cung cấp OAuth", "Add param/header": "Thêm tham số/header", "Add payment method": "Thêm phương thức thanh toán", "Add photos or files": "Thêm ảnh hoặc tệp", "Add product": "Thêm sản phẩm", + "Add Provider": "Thêm nhà cung cấp", + "Add Quota": "Thêm Hạn mức", "Add ratio override": "Thêm ghi đè tỷ lệ", + "Add Row": "Thêm Hàng", + "Add Rule": "Thêm quy tắc", "Add rule group": "Thêm nhóm quy tắc", "Add selectable group": "Thêm nhóm có thể chọn", "Add subscription": "Thêm đăng ký", @@ -176,35 +167,36 @@ "Add tier": "Thêm bậc", "Add time condition": "Thêm điều kiện thời gian", "Add time rule group": "Thêm nhóm quy tắc theo thời gian", + "Add Uptime Kuma Group": "Thêm Nhóm Uptime Kuma", + "Add User": "Thêm người dùng", "Add user group": "Thêm nhóm người dùng", "Add your API keys, set up channels and configure access permissions": "Thêm khóa API, thiết lập kênh và cấu hình quyền truy cập", - "Add {{title}}": "Thêm {{title}}", - "Added successfully": "Thêm thành công", "Added {{count}} custom model(s)": "Đã thêm {{count}} mô hình tùy chỉnh", "Added {{count}} model(s)": "Đã thêm {{count}} mô hình", + "Added successfully": "Thêm thành công", "Additional Conditions": "Điều kiện bổ sung", + "Additional information": "Thông tin bổ sung", "Additional Information": "Thông tin bổ sung", "Additional Limit": "Hạn mức bổ sung", "Additional Limits": "Các hạn mức bổ sung", - "Additional information": "Thông tin bổ sung", "Additional metered capability": "Tính năng tính phí theo mức dùng bổ sung", "Adjust Quota": "Điều chỉnh hạn mức", "Adjust response formatting, prompt behavior, proxy, and upstream automation.": "Điều chỉnh định dạng phản hồi, hành vi prompt, proxy và tự động hóa upstream.", "Adjust the appearance and layout to suit your preferences.": "Điều chỉnh giao diện và bố cục để phù hợp với sở thích của bạn.", "Admin": "Quản trị viên", - "Admin Only": "Chỉ dành cho quản trị viên", "Admin access required": "Yêu cầu quyền truy cập Admin", "Admin area": "Khu vực quản trị", "Admin notes (only visible to admins)": "Ghi chú của quản trị viên (chỉ hiển thị với quản trị viên)", + "Admin Only": "Chỉ dành cho quản trị viên", "Administer user accounts and roles.": "Quản lý tài khoản người dùng và vai trò.", "Administrator account": "Tài khoản quản trị viên", "Administrator username": "Tên người dùng quản trị viên", "Advanced": "Nâng cao", "Advanced Configuration": "Cấu hình nâng cao", - "Advanced Options": "Tùy chọn nâng cao", - "Advanced Settings": "Cài đặt nâng cao", "Advanced options": "Tùy chọn nâng cao", + "Advanced Options": "Tùy chọn nâng cao", "Advanced platform configuration.": "Cấu hình nền tảng nâng cao.", + "Advanced Settings": "Cài đặt nâng cao", "Advanced text editing": "Chỉnh sửa văn bản nâng cao", "After clicking the button, you'll be asked to authorize the bot": "Sau khi nhấp vào nút, bạn sẽ được yêu cầu ủy quyền cho bot", "After disabling, it will no longer be shown to users, but historical orders are not affected. Continue?": "Sau khi vô hiệu hóa, sẽ không hiển thị cho người dùng nữa, nhưng đơn hàng lịch sử không bị ảnh hưởng. Tiếp tục?", @@ -213,40 +205,51 @@ "After scanning, the binding will complete automatically": "Sau khi quét, việc liên kết sẽ hoàn tất tự động.", "Agent ID *": "Mã đại lý *", "Aggregated usage metrics and trend charts.": "Chỉ số sử dụng tổng hợp và biểu đồ xu hướng.", + "aggregates 50+ AI providers behind one unified API. Manage access, track costs, and scale effortlessly.": "tổng hợp hơn 50 nhà cung cấp AI sau một API thống nhất. Quản lý truy cập, theo dõi chi phí và mở rộng dễ dàng.", + "AGPL v3.0 License": "Giấy phép AGPL v3.0", + "AI model testing environment": "Môi trường thử nghiệm mô hình AI", + "AI models": "mô hình AI", + "AI models supported": "Các mô hình AI được hỗ trợ", + "AI Proxy": "AI Proxy", + "AI Proxy Library": "Thư viện AI Proxy", + "AIGC2D": "AIGC2D", + "AILS": "AILS", + "AK/SK mode: use AccessKey|SecretAccessKey|Region": "Chế độ AK/SK: sử dụng AccessKey|SecretAccessKey|Region", "Ali": "Ali", "All": "All", + "All edits are overwrite operations. Leave fields empty to keep current values unchanged.": "Tất cả các chỉnh sửa đều là thao tác ghi đè. Để trống các trường để giữ nguyên giá trị hiện tại.", + "All files exceed the maximum size.": "Tất cả các tệp vượt quá kích thước tối đa.", "All Groups": "Tất cả các nhóm", "All Models": "Tất cả các mẫu", + "All models in use are properly configured.": "Tất cả các mô hình đang được sử dụng đều được cấu hình đúng cách.", "All Must Match (AND)": "Tất cả phải khớp (AND)", "All Status": "Tất cả trạng thái", "All Sync Status": "Tất cả Trạng thái Đồng bộ", "All Tags": "Tất cả Thẻ", "All Types": "All types", + "All upstream data is trusted": "Tất cả dữ liệu thượng nguồn đều được tin cậy", "All Vendors": "Tất cả Nhà cung cấp", "All Your AI Models": "Tất cả mô hình AI của bạn", - "All edits are overwrite operations. Leave fields empty to keep current values unchanged.": "Tất cả các chỉnh sửa đều là thao tác ghi đè. Để trống các trường để giữ nguyên giá trị hiện tại.", - "All files exceed the maximum size.": "Tất cả các tệp vượt quá kích thước tối đa.", - "All models in use are properly configured.": "Tất cả các mô hình đang được sử dụng đều được cấu hình đúng cách.", - "All upstream data is trusted": "Tất cả dữ liệu thượng nguồn đều được tin cậy", "Allocated Memory": "Bộ nhớ đã cấp phát", - "Allow Claude beta query passthrough": "Cho phép chuyển tiếp truy vấn beta Claude", - "Allow HTTP image requests": "Cho phép yêu cầu hình ảnh HTTP", - "Allow Insecure Origins": "Cho phép Nguồn gốc Không an toàn", - "Allow Private IPs": "Cho phép IP riêng", - "Allow Retry": "Cho phép thử lại", "Allow accountFilter parameter": "Cho phép tham số accountFilter", + "Allow Claude beta query passthrough": "Cho phép chuyển tiếp truy vấn beta Claude", "Allow clients to query configured ratios via `/api/ratio`.": "Cho phép khách hàng truy vấn các tỷ lệ đã cấu hình thông qua `/api/ratio`.", + "Allow HTTP image requests": "Cho phép yêu cầu hình ảnh HTTP", "Allow include usage obfuscation passthrough": "Cho phép chuyển tiếp che giấu sử dụng", "Allow inference geography passthrough": "Cho phép chuyển tiếp vị trí địa lý suy luận", "Allow inference_geo passthrough": "Cho phép truyền inference_geo", + "Allow Insecure Origins": "Cho phép Nguồn gốc Không an toàn", "Allow new users to register": "Cho phép người dùng mới đăng ký", + "Allow Private IPs": "Cho phép IP riêng", "Allow registration with password": "Cho phép đăng ký bằng mật khẩu", "Allow requests to private IP ranges (10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16)": "Cho phép các yêu cầu đến các dải IP riêng (10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16)", + "Allow Retry": "Cho phép thử lại", "Allow safety_identifier passthrough": "Cho phép chuyển tiếp safety_identifier", "Allow service_tier passthrough": "Cho phép chuyển tiếp service_tier", "Allow speed passthrough": "Cho phép truyền speed", "Allow upstream callbacks": "Cho phép callback upstream", "Allow users to check in daily for random quota rewards": "Cho phép người dùng điểm danh hàng ngày để nhận phần thưởng hạn ngạch ngẫu nhiên", + "Allow users to close this banner. If disabled, the close button is hidden.": "Cho phép người dùng đóng biểu ngữ này. Nếu tắt, nút đóng sẽ bị ẩn.", "Allow users to enter promo codes": "Cho phép người dùng nhập mã khuyến mãi", "Allow users to log in with password": "Cho phép người dùng đăng nhập bằng mật khẩu", "Allow users to register and sign in with Passkey (WebAuthn)": "Cho phép người dùng đăng ký và đăng nhập bằng Passkey (WebAuthn)", @@ -255,8 +258,8 @@ "Allow users to sign in with LinuxDO": "Cho phép người dùng đăng nhập bằng LinuxDO", "Allow users to sign in with OpenID Connect": "Cho phép người dùng đăng nhập bằng OpenID Connect", "Allow users to sign in with Telegram": "Cho phép người dùng đăng nhập bằng Telegram", - "Allow users to sign in with WeChat": "Cho phép người dùng đăng nhập bằng WeChat", "Allow users to sign in with this provider": "Cho phép người dùng đăng nhập bằng nhà cung cấp này", + "Allow users to sign in with WeChat": "Cho phép người dùng đăng nhập bằng WeChat", "Allow using models without price configuration": "Cho phép sử dụng mô hình không có cấu hình giá", "Allowed": "Cho phép", "Allowed Origins": "Nguồn gốc được phép", @@ -265,21 +268,24 @@ "Alternate": "Alternate", "Always matches (default tier).": "Luôn khớp (bậc mặc định).", "Amount": "Số lượng", - "Amount Due": "Số tiền cần thanh toán", "Amount cannot be changed when editing.": "Số tiền không thể thay đổi khi chỉnh sửa.", "Amount discount": "Số tiền giảm giá", + "Amount Due": "Số tiền cần thanh toán", "Amount must be a whole number": "Số tiền phải là số nguyên", "Amount must be greater than 0": "Số tiền phải lớn hơn 0", "Amount of quota to credit to user account.": "Số lượng quota để ghi có vào tài khoản người dùng.", "Amount options must be a JSON array": "Tùy chọn số tiền phải là mảng JSON", "Amount to pay:": "Amount due:", "An unexpected error occurred": "Đã xảy ra lỗi không mong muốn", + "and": "and", "Animation": "Animation", + "Animation Presets": "Mẫu hiệu ứng", + "Animation presets can use custom colors and speed.": "Mẫu hiệu ứng có thể dùng màu và tốc độ tùy chỉnh.", "Animation Type": "Animation Type", - "Announcement Details": "Chi tiết thông báo", "Announcement added. Click \"Save Settings\" to apply.": "Đã thêm thông báo. Nhấp \"Save Settings\" để áp dụng.", "Announcement content": "Nội dung thông báo", "Announcement deleted. Click \"Save Settings\" to apply.": "Đã xóa thông báo. Nhấp \"Save Settings\" để áp dụng.", + "Announcement Details": "Chi tiết thông báo", "Announcement displayed to users (supports Markdown & HTML)": "Thông báo hiển thị cho người dùng (hỗ trợ Markdown & HTML)", "Announcement updated. Click \"Save Settings\" to apply.": "Đã cập nhật thông báo. Nhấp \"Save Settings\" để áp dụng.", "Announcements": "Thông báo", @@ -287,13 +293,47 @@ "Answer": "Trả lời", "Anthropic": "Anthropic", "Any Match (OR)": "Bất kỳ khớp (OR)", + "API Access": "Truy cập API", + "API Addresses": "Địa chỉ API", + "API Base URL (Important: Not Chat API) *": "URL cơ sở API (Quan trọng: Không phải API Chat) *", + "API Base URL *": "URL cơ sở API *", + "API Endpoints": "Điểm cuối API", + "API Info": "Thông tin API", + "API info added. Click \"Save Settings\" to apply.": "Thông tin API đã được thêm. Nhấp vào \"Lưu Cài đặt\" để áp dụng.", + "API info deleted. Click \"Save Settings\" to apply.": "Thông tin API đã được xóa. Nhấp vào \"Lưu Cài đặt\" để áp dụng.", + "API info saved successfully": "Đã lưu thông tin API thành công", + "API info updated. Click \"Save Settings\" to apply.": "Thông tin API đã được cập nhật. Nhấp vào \"Lưu Cài đặt\" để áp dụng.", + "API key": "Khóa API", + "API Key": "Khóa API", + "API Key (one per line for batch mode)": "Khóa API (mỗi khóa một dòng cho chế độ hàng loạt)", + "API Key (Production)": "API Key (Sản xuất)", + "API Key (Sandbox)": "Khóa API (Sandbox)", + "API Key *": "Khóa API *", + "API Key created successfully": "Tạo khóa API thành công", + "API Key deleted successfully": "Xóa khóa API thành công", + "API Key disabled successfully": "Vô hiệu hóa khóa API thành công", + "API Key enabled successfully": "Kích hoạt khóa API thành công", + "API key from the provider": "khóa API từ nhà cung cấp", + "API key is required": "Khóa API là bắt buộc", + "API Key mode (does not support batch creation)": "Chế độ Khóa API (không hỗ trợ tạo hàng loạt)", + "API Key mode: use APIKey|Region": "Chế độ khóa API: sử dụng APIKey|Region", + "API Key updated successfully": "API Key đã được cập nhật thành công", + "API Keys": "Khóa API", + "API Private Key": "Khóa riêng API", + "API Requests": "Yêu cầu API", + "API secret": "Bí mật API", + "API token management": "Quản lý token API", + "API URL": "API URL", + "API usage records": "Lịch sử sử dụng API", + "API2GPT": "API2GPT", "Append": "Thêm vào cuối", - "Append Template": "Thêm mẫu", "Append mode: New keys will be added to the end of the existing key list": "Chế độ nối: Các khóa mới sẽ được thêm vào cuối danh sách khóa hiện có", - "Append to End": "Thêm vào cuối", + "Append Template": "Thêm mẫu", "Append to channel": "Nối vào kênh", + "Append to End": "Thêm vào cuối", "Append to existing keys": "Add to existing keys", "Append value to array / string / object end": "Thêm giá trị vào cuối mảng / chuỗi / đối tượng", + "appended": "đã thêm vào cuối, được phụ lục", "Application": "Ứng dụng", "Applies to custom completion endpoints. JSON map of model → ratio.": "Áp dụng cho các điểm cuối hoàn thành tùy chỉnh. Bản đồ JSON của mô hình → tỷ lệ.", "Apply All Upstream Updates": "Áp dụng Tất cả Cập nhật Upstream", @@ -303,6 +343,7 @@ "Apply Sync": "Áp dụng đồng bộ", "Applying...": "Đang áp dụng...", "Approx.": "Xấp xỉ.", + "are also listed here. Remove them from Models to keep the `/v1/models` response user-friendly and hide vendor-specific names.": "cũng được liệt kê ở đây. Xóa chúng khỏi Models để giữ cho phản hồi `/v1/models` thân thiện với người dùng và ẩn các tên dành riêng cho nhà cung cấp.", "Are you sure you want to delete": "Bạn có chắc chắn muốn xóa ", "Are you sure you want to delete all auto-disabled keys? This action cannot be undone.": "Bạn có chắc chắn muốn xóa tất cả các khóa bị tắt tự động? Hành động này không thể hoàn tác.", "Are you sure you want to delete deployment \"{{name}}\"? This action cannot be undone.": "Bạn có chắc muốn xóa triển khai \"{{name}}\" không? Hành động này không thể hoàn tác.", @@ -324,19 +365,20 @@ "At least one valid key source is required": "Cần ít nhất một nguồn khóa hợp lệ", "Attach": "Đính kèm", "Audio": "Âm thanh", + "Audio comp.": "Nén âm thanh", + "Audio completion ratio": "Tỷ lệ hoàn thành âm thanh", "Audio In": "Đầu vào âm thanh", + "Audio input": "Đầu vào âm thanh", "Audio Input": "Đầu vào âm thanh", "Audio Input Price": "Giá đầu vào âm thanh", "Audio Out": "Đầu ra âm thanh", - "Audio Output": "Đầu ra âm thanh", - "Audio Preview": "Xem trước âm thanh", - "Audio Tokens": "Token âm thanh", - "Audio comp.": "Nén âm thanh", - "Audio completion ratio": "Tỷ lệ hoàn thành âm thanh", - "Audio input": "Đầu vào âm thanh", "Audio output": "Đầu ra âm thanh", + "Audio Output": "Đầu ra âm thanh", "Audio playback failed": "Phát âm thanh thất bại", + "Audio Preview": "Xem trước âm thanh", "Audio ratio": "Tỷ lệ âm thanh", + "Audio Tokens": "Token âm thanh", + "Aurora": "Cực quang", "Auth Style": "Kiểu xác thực", "Authentication": "Xác thực", "Authenticator code": "Mã xác thực", @@ -345,13 +387,13 @@ "Authorize": "Ủy quyền", "Auto": "Tự động", "Auto (Circuit Breaker)": "Tự động (Bộ ngắt mạch)", + "Auto assignment order": "Thứ tự gán tự động", "Auto Ban": "Cấm tự động", + "Auto detect (default)": "Tự động phát hiện (mặc định)", "Auto Disabled": "Vô hiệu hóa tự động", "Auto Group Chain": "Chuỗi nhóm tự động", - "Auto Sync Upstream Models": "Tự động đồng bộ mô hình nguồn", - "Auto assignment order": "Thứ tự gán tự động", - "Auto detect (default)": "Tự động phát hiện (mặc định)", "Auto refresh": "Tự động làm mới", + "Auto Sync Upstream Models": "Tự động đồng bộ mô hình nguồn", "Auto-Accept Unpriced Models on Registration": "Tự động chấp nhận mô hình chưa định giá khi đăng ký", "Auto-disable status codes": "Mã trạng thái tự tắt", "Auto-discover": "Tự động khám phá", @@ -372,19 +414,24 @@ "Availability Panel": "Bảng sẵn sàng", "Availability Status Monitor": "Giám sát tình trạng sẵn sàng", "Available": "Khả dụng", + "Available disk space": "Dung lượng đĩa khả dụng", "Available Models": "Mô hình khả dụng", "Available Rewards": "Phần thưởng hiện có", - "Available disk space": "Dung lượng đĩa khả dụng", "Average RPM": "RPM trung bình", "Average TPM": "TPM trung bình", - "Azure": "Azure", + "AWS": "AWS", + "AWS Bedrock Claude Compat": "AWS Bedrock Claude tương thích", + "AWS Key Format": "Định dạng khóa AWS", + "Azure": "Azure", + "AZURE_OPENAI_ENDPOINT *": "AZURE_OPENAI_ENDPOINT *", "Back": "Quay lại", "Back to Home": "Trở về Trang chủ", - "Back to Models": "Quay lại Mô hình", "Back to login": "Quay lại đăng nhập", + "Back to Models": "Quay lại Mô hình", "Backed up": "Đã sao lưu", - "Background Type": "Background Type", + "Background color": "Màu nền", "Background job tracker for queued work.": "Theo dõi công việc nền cho công việc chờ xử lý.", + "Background Type": "Background Type", "Backup Code": "Mã dự phòng", "Backup code must be in format XXXX-XXXX": "Mã dự phòng phải có định dạng XXXX-XXXX", "Backup codes regenerated successfully": "Mã dự phòng đã được tạo lại thành công", @@ -399,54 +446,56 @@ "Balance updated successfully": "Đã cập nhật số dư thành công", "Balance updated: {{balance}}": "Số dư đã cập nhật: {{balance}}", "Banner Content": "Banner Content", + "Banner Dismissible": "Cho phép đóng biểu ngữ", "Banner Font Color": "Banner Font Color", + "Banner Type": "Loại biểu ngữ", "Bar Chart": "Biểu đồ cột", "Bark Push URL": "URL đẩy Bark", - "Base Limits": "Giới hạn cơ bản", - "Base Price": "Giá cơ bản", - "Base URL": "URL cơ sở", - "Base URL of your Uptime Kuma instance": "URL cơ sở của phiên bản Uptime Kuma của bạn", "Base address provided by your Epay service": "Địa chỉ cơ sở được cung cấp bởi dịch vụ Epay của bạn", "Base amount. Actual deduction = base amount × system group rate.": "Số tiền cơ sở. Số tiền trừ thực tế = số tiền cơ sở × tỷ lệ nhóm hệ thống.", + "Base Limits": "Giới hạn cơ bản", "Base multipliers applied when users select specific groups.": "Hệ số nhân cơ bản được áp dụng khi người dùng chọn các nhóm cụ thể.", + "Base Price": "Giá cơ bản", "Base rate limit windows for this account.": "Cửa sổ giới hạn tốc độ cơ bản cho tài khoản này.", + "Base URL": "URL cơ sở", + "Base URL of your Uptime Kuma instance": "URL cơ sở của phiên bản Uptime Kuma của bạn", "Basic Authentication": "Xác thực cơ bản", "Basic Configuration": "Cấu hình cơ bản", "Basic Info": "Thông tin cơ bản", "Basic Information": "Thông tin cơ bản", "Basic Templates": "Mẫu cơ bản", "Batch Add (one key per line)": "Thêm hàng loạt (mỗi khóa một dòng)", - "Batch Edit": "Chỉnh sửa hàng loạt", - "Batch Edit by Tag": "Chỉnh sửa hàng loạt theo Thẻ", "Batch delete failed": "Xóa hàng loạt thất bại", "Batch detection complete: {{channels}} channels, {{add}} to add, {{remove}} to remove, {{fails}} failed": "Phát hiện hàng loạt hoàn tất: {{channels}} kênh, {{add}} để thêm, {{remove}} để xóa, {{fails}} thất bại", "Batch detection failed": "Phát hiện hàng loạt thất bại", "Batch disable failed": "Vô hiệu hóa hàng loạt thất bại", + "Batch Edit": "Chỉnh sửa hàng loạt", "Batch edit all channels with this tag. Leave fields empty to keep current values.": "Chỉnh sửa hàng loạt tất cả các kênh có gắn thẻ này. Để trống các trường để giữ nguyên giá trị hiện tại.", + "Batch Edit by Tag": "Chỉnh sửa hàng loạt theo Thẻ", "Batch enable failed": "Kích hoạt hàng loạt thất bại", "Batch processing failed": "Xử lý hàng loạt thất bại", "Batch upstream model updates applied: {{channels}} channels, {{added}} added, {{removed}} removed, {{fails}} failed": "Đã áp dụng cập nhật hàng loạt mô hình upstream: {{channels}} kênh, {{added}} đã thêm, {{removed}} đã xóa, {{fails}} thất bại", "Best for single-tenant deployments. Pricing and billing options stay hidden.": "Phù hợp nhất cho triển khai đơn người dùng. Các tùy chọn giá và thanh toán sẽ được ẩn.", "Billing": "Thanh toán", + "Billing currency": "Loại tiền thanh toán", "Billing Details": "Chi tiết thanh toán", "Billing History": "Lịch sử thanh toán", "Billing Mode": "Chế độ thanh toán", "Billing Process": "Quá trình tính phí", "Billing Source": "Nguồn thanh toán", - "Billing currency": "Loại tiền thanh toán", "Bind": "Buộc", + "Bind an email address to your account.": "Liên kết địa chỉ email với tài khoản của bạn.", "Bind Email": "Liên kết Email", "Bind Telegram Account": "Liên kết tài khoản Telegram", "Bind WeChat Account": "Liên kết tài khoản WeChat", - "Bind an email address to your account.": "Liên kết địa chỉ email với tài khoản của bạn.", "Binding Information": "Thông tin Ràng buộc", "Binding successful!": "Liên kết thành công!", "Binding your {{provider}} account": "Đang liên kết tài khoản {{provider}} của bạn", "Binding...": "Đang liên kết...", "Bindings": "Ràng buộc", "Blacklist": "Danh sách đen", - "Blacklist (Block listed IPs)": "Danh sách đen (Các IP bị chặn)", "Blacklist (Block listed domains)": "Danh sách đen (Các tên miền bị chặn)", + "Blacklist (Block listed IPs)": "Danh sách đen (Các IP bị chặn)", "Blank Rule": "Quy tắc trống", "Blend": "Trộn", "Blink": "Blink", @@ -465,18 +514,15 @@ "Broadcast a global banner to users. Markdown is supported.": "Phát một biểu ngữ toàn cầu đến người dùng. Hỗ trợ Markdown.", "Broadcast short system notices on the dashboard": "Phát các thông báo hệ thống ngắn trên bảng điều khiển", "Browse and compare": "Duyệt và so sánh", - "Budget Tokens Ratio": "Tỷ lệ Mã thông báo Ngân sách", "Budget tokens = max tokens × ratio. Accepts a decimal between 0.002 and 1. Recommended to keep aligned with upstream billing.": "Số token ngân sách = số token tối đa × tỷ lệ. Chấp nhận một số thập phân từ 0.002 đến 1. Khuyến nghị nên giữ cho phù hợp với cách tính phí của nhà cung cấp.", "Budget tokens = max tokens × ratio. Accepts a decimal between 0.1 and 1.": "Số token ngân sách = số token tối đa × tỷ lệ. Chấp nhận một số thập phân từ 0.1 đến 1.", + "Budget Tokens Ratio": "Tỷ lệ Mã thông báo Ngân sách", "Budgets": "Ngân sách", "Built for developers,": "Được xây dựng cho nhà phát triển,", "Built-in": "Tích hợp sẵn", "Built-in Device": "Thiết bị tích hợp", "Built-in: phone fingerprint/face, or Windows Hello; External: USB security key": "Tích hợp sẵn: vân tay/khuôn mặt điện thoại, hoặc Windows Hello; Bên ngoài: khóa bảo mật USB", - "CC Switch": "Chuyển đổi CC", - "CNY": "CNY", - "CNY per USD": "CNY trên USD", - "CPU Threshold (%)": "Ngưỡng CPU (%)", + "by": "by", "Cache": "Bộ nhớ đệm", "Cache Creation": "Tạo cache", "Cache Creation (1h)": "Tạo cache (1h)", @@ -485,13 +531,13 @@ "Cache Directory Disk Space": "Dung lượng đĩa thư mục bộ nhớ đệm", "Cache Directory Info": "Thông tin thư mục bộ nhớ đệm", "Cache Entries": "Mục bộ nhớ đệm", + "Cache mode": "Chế độ bộ đệm", + "Cache ratio": "Tỷ lệ bộ nhớ đệm", "Cache Read": "Đọc bộ nhớ đệm", + "Cache write": "Ghi cache", "Cache Write": "Ghi bộ nhớ đệm", "Cache Write (1h)": "Ghi cache (1h)", "Cache Write (5m)": "Ghi cache (5m)", - "Cache mode": "Chế độ bộ đệm", - "Cache ratio": "Tỷ lệ bộ nhớ đệm", - "Cache write": "Ghi cache", "Cached": "Đã cache", "Cached input": "Đầu vào đã cache", "Calculated price: ${{price}} per 1M tokens": "Giá tính toán: ${{price}} mỗi 1M token", @@ -501,11 +547,11 @@ "Call Count Ranking": "Xếp hạng số lượt gọi", "Call Proportion": "Tỷ lệ cuộc gọi", "Call Trend": "Xu hướng cuộc gọi", + "Callback address": "Địa chỉ callback", "Callback Caller IP": "IP người gọi callback", + "Callback notification URL": "URL thông báo callback", "Callback Payment Method": "Phương thức thanh toán callback", "Callback URL": "URL callback", - "Callback address": "Địa chỉ callback", - "Callback notification URL": "URL thông báo callback", "Cancel": "Hủy bỏ", "Cancelled": "Đã hủy", "Cancelled at": "Đã hủy lúc", @@ -515,60 +561,63 @@ "Category name is required": "Tên danh mục là bắt buộc", "Category name must be less than 50 characters": "Tên danh mục phải ít hơn 50 ký tự", "Caution": "Thận trọng", + "CC Switch": "Chuyển đổi CC", "Chain": "Chuỗi", "Change": "Thay đổi", + "Change language": "Đổi ngôn ngữ", "Change Password": "Đổi mật khẩu", "Change To": "Thay đổi thành", - "Change language": "Đổi ngôn ngữ", "Changing...": "Đang thay đổi...", "Channel": "Kênh", "Channel Affinity": "Ưu tiên kênh", - "Channel Affinity: Upstream Cache Hit": "Ưu tiên kênh: Cache hit từ upstream", - "Channel Extra Settings": "Cài đặt thêm kênh", - "Channel ID": "Mã kênh", - "Channel Provider": "Nhà cung cấp kênh", "Channel affinity reuses the last successful channel based on keys extracted from the request context or JSON body.": "Ưu tiên kênh sẽ sử dụng lại kênh thành công gần nhất dựa trên các khóa được trích xuất từ ngữ cảnh yêu cầu hoặc JSON body.", + "Channel Affinity: Upstream Cache Hit": "Ưu tiên kênh: Cache hit từ upstream", "Channel copied successfully": "Sao chép kênh thành công", "Channel created successfully": "Tạo kênh thành công", "Channel deleted successfully": "Xóa kênh thành công", "Channel disabled successfully": "Kênh đã bị vô hiệu hóa thành công", "Channel enabled successfully": "Kênh đã được bật thành công", + "Channel Extra Settings": "Cài đặt thêm kênh", + "Channel ID": "Mã kênh", "Channel key": "Khóa kênh", "Channel key unlocked": "Khóa kênh đã được mở khóa", "Channel models": "Channel model", "Channel name is required": "Tên kênh là bắt buộc", + "Channel Provider": "Nhà cung cấp kênh", "Channel test completed": "Kiểm tra kênh hoàn tất", "Channel type is required": "Loại kênh là bắt buộc", "Channel updated successfully": "Kênh đã được cập nhật thành công", "Channel-specific settings (JSON format)": "Cài đặt dành riêng cho kênh (định dạng JSON)", "Channel:": "Kênh:", + "channel(s)? This action cannot be undone.": "kênh(s)? Hành động này không thể hoàn tác.", "Channels": "Kênh", "Channels deleted successfully": "Xóa kênh thành công", "Chart Preferences": "Tùy chọn biểu đồ", "Chart Settings": "Cài đặt Biểu đồ", "Chat": "Trò chuyện", + "Chat area": "Khu vực trò chuyện", "Chat Area": "Khu vực trò chuyện", "Chat Client Name": "Tên ứng dụng khách trò chuyện", - "Chat Presets": "Cài đặt sẵn trò chuyện", - "Chat area": "Khu vực trò chuyện", "Chat client name is required": "Tên ứng dụng chat là bắt buộc", "Chat configuration JSON": "Cấu hình trò chuyện JSON", "Chat preset not found": "Thiết lập sẵn trò chuyện không tìm thấy", + "Chat Presets": "Cài đặt sẵn trò chuyện", "Chat session management": "Quản lý phiên trò chuyện", "ChatCompletions -> Responses Compatibility": "Tương thích ChatCompletions -> Phản hồi", "Check for updates": "Kiểm tra cập nhật", "Check in daily to receive random quota rewards": "Nhận phòng hàng ngày để nhận phần thưởng theo hạn ngạch ngẫu nhiên", "Check in now": "Điểm danh ngay", "Check resolved IPs against IP filters even when accessing by domain": "Kiểm tra các IP đã phân giải đối chiếu với các bộ lọc IP ngay cả khi truy cập bằng tên miền", - "Check-in Settings": "Cài đặt điểm danh", "Check-in failed": "Điểm danh thất bại", + "Check-in Settings": "Cài đặt điểm danh", "Check-in successful! Received": "Điểm danh thành công! Đã nhận", "Checked in": "Đã check-in", "Checking connection": "Đang kiểm tra kết nối", "Checking name...": "Đang kiểm tra tên...", "Checking updates...": "Đang kiểm tra cập nhật...", + "checkout.session.completed": "thanh toán.phiên.hoàn thành", + "checkout.session.expired": "Phiên thanh toán đã hết hạn.", "Chinese": "Tiếng Trung", - "Choose Group": "Chọn Nhóm", "Choose a preset effect and customize colors and speed.": "Choose a preset effect and customize colors and speed.", "Choose a primary color for the interface": "Chọn màu chính cho giao diện", "Choose a username": "Chọn tên người dùng", @@ -578,10 +627,12 @@ "Choose between left-to-right or right-to-left site direction": "Chọn giữa hướng trang từ trái sang phải hoặc từ phải sang trái", "Choose between system preference, light mode, or dark mode": "Lựa chọn giữa tùy chọn hệ thống, chế độ sáng hoặc chế độ tối", "Choose channels to sync upstream ratio configurations from": "Chọn các kênh để đồng bộ cấu hình tỷ lệ đường lên từ", + "Choose Group": "Chọn Nhóm", "Choose how quota values are shown to users": "Chọn cách hiển thị giá trị hạn ngạch cho người dùng", "Choose how the platform will operate": "Chọn cách nền tảng sẽ hoạt động", - "Choose how to filter IP addresses": "Chọn cách lọc địa chỉ IP", "Choose how to filter domains": "Chọn cách lọc tên miền", + "Choose how to filter IP addresses": "Chọn cách lọc địa chỉ IP", + "Choose the banner category. Each category uses a matching visual style.": "Chọn danh mục biểu ngữ. Mỗi danh mục dùng một kiểu hiển thị phù hợp.", "Choose the bundle type and define the items inside it.": "Chọn loại gói và định nghĩa các mục bên trong nó.", "Choose the default charts, range, and time granularity for model analytics.": "Chọn biểu đồ, khoảng thời gian và độ chi tiết thời gian mặc định cho phân tích mô hình.", "Choose where to fetch upstream metadata.": "Chọn nơi để tìm nạp siêu dữ liệu thượng nguồn.", @@ -589,22 +640,22 @@ "Classic (Legacy Frontend)": "Cổ điển (Frontend cũ)", "Claude": "Claude", "Claude CLI Header Passthrough": "Chuyển tiếp header Claude CLI", - "Clean Up Log Files": "Dọn dẹp tệp nhật ký", "Clean history logs": "Xóa nhật ký lịch sử", "Clean logs": "Dọn dẹp nhật ký", "Clean up inactive cache": "Dọn dẹp bộ nhớ đệm không hoạt động", + "Clean Up Log Files": "Dọn dẹp tệp nhật ký", "Cleaned up {{count}} log files, freed {{size}}": "Đã dọn dẹp {{count}} tệp nhật ký, giải phóng {{size}}", "Cleaning...": "Đang dọn dẹp...", - "Cleanup Mode": "Chế độ dọn dẹp", "Cleanup failed": "Dọn dẹp thất bại", + "Cleanup Mode": "Chế độ dọn dẹp", "Clear": "Xóa", + "Clear all": "Xóa tất cả", "Clear All": "Xóa tất cả", "Clear All Cache": "Xóa toàn bộ bộ nhớ đệm", - "Clear Mapping": "Xóa Ánh xạ", - "Clear all": "Xóa tất cả", "Clear all filters": "Xóa tất cả bộ lọc", "Clear cache for this rule": "Xóa bộ nhớ đệm của quy tắc này", "Clear filters": "Clear filter", + "Clear Mapping": "Xóa Ánh xạ", "Clear mode flags in prompts": "Xóa các cờ chế độ trong lời nhắc", "Clear search": "Xóa tìm kiếm", "Clear selection": "Bỏ chọn", @@ -614,8 +665,8 @@ "Click \"Create Plan\" to create your first subscription plan": "Nhấp \"Tạo gói\" để tạo gói đăng ký đầu tiên", "Click \"Generate\" to create a token": "Nhấp \"Tạo\" để tạo một token", "Click for details": "Nhấp để xem chi tiết", - "Click save when you're done.": "Nhấn lưu khi bạn hoàn tất.", "Click save when you're done.": "Nhấn lưu khi bạn hoàn tất.", + "Click save when you're done.": "Nhấn lưu khi bạn hoàn tất.", "Click the button below to bind your Telegram account": "Nhấp vào nút bên dưới để liên kết tài khoản Telegram của bạn", "Click to open deployment": "Nhấp để mở triển khai", "Click to preview audio": "Nhấp để xem trước âm thanh", @@ -625,27 +676,29 @@ "Click to view full details": "Nhấn để xem chi tiết đầy đủ", "Click to view full error message": "Nhấp để xem toàn bộ thông báo lỗi", "Click to view full prompt": "Nhấp để xem toàn bộ lời nhắc", + "Client header value": "Giá trị header client", "Client ID": "Mã khách hàng", "Client Secret": "Bí mật máy khách", - "Client header value": "Giá trị header client", "Close": "Đóng", - "Close Today": "Đóng cửa hôm nay", "Close dialog": "Đóng hộp thoại", "Close menu": "Đóng menu", + "Close Today": "Đóng cửa hôm nay", "Cloudflare": "Cloudflare", + "CNY": "CNY", + "CNY per USD": "CNY trên USD", "Code": "Mã", "Codes copied!": "Đã sao chép mã!", "Codex": "Codex", "Codex Account & Usage": "Tài khoản và sử dụng Codex", "Codex Authorization": "Ủy quyền Codex", - "Codex CLI Header Passthrough": "Chuyển tiếp header Codex CLI", "Codex channels use an OAuth JSON credential as the key.": "Kênh Codex dùng thông tin xác thực OAuth JSON làm khóa.", + "Codex CLI Header Passthrough": "Chuyển tiếp header Codex CLI", "Cohere": "Cohere", "Collapse": "Thu gọn", "Collapse All": "Thu gọn tất cả", "Color": "Màu", - "Color Stops": "Color Stops", "Color is required": "Màu sắc là bắt buộc", + "Color Stops": "Color Stops", "Color:": "Màu sắc:", "Coming Soon!": "Sắp ra mắt!", "Comma-separated color values for the gradient.": "Comma-separated color values for the gradient.", @@ -658,9 +711,10 @@ "Common": "Chung", "Common Keys": "Khóa thường dùng", "Common Logs": "Logarit thập phân", - "Common User": "Người dùng thông thường", "Common ports include 25, 465, and 587": "Các cổng phổ biến bao gồm 25, 465 và 587", + "Common User": "Người dùng thông thường", "Community driven, self-hosted, and extensible": "Do cộng đồng phát triển, tự lưu trữ và có thể mở rộng", + "compatible API routes": "tuyến API tương thích", "Compatible API routes for common AI application workflows": "Các tuyến API tương thích cho quy trình ứng dụng AI phổ biến", "Complete API documentation with multi-language SDK support": "Tài liệu API đầy đủ với hỗ trợ SDK đa ngôn ngữ", "Complete Order": "Hoàn thành đơn hàng", @@ -684,12 +738,6 @@ "Configuration for Stripe payment integration": "Cấu hình cho tích hợp thanh toán Stripe", "Configuration required": "Cần cấu hình", "Configure": "Cấu hình", - "Configure API documentation links for the dashboard": "Cấu hình các liên kết tài liệu API cho bảng điều khiển", - "Configure Creem products. Provide a JSON array.": "Cấu hình sản phẩm Creem. Cung cấp một mảng JSON.", - "Configure Gemini safety behavior, version overrides, and thinking adapter": "Cấu hình hành vi an toàn Gemini, ghi đè phiên bản và bộ điều hợp tư duy", - "Configure Passkey (WebAuthn) login settings": "Cấu hình cài đặt đăng nhập Passkey (WebAuthn)", - "Configure Waffo Pancake hosted checkout integration for USD-priced top-ups": "Cấu hình tích hợp thanh toán Waffo Pancake (hosted checkout) cho nạp tiền theo USD", - "Configure Waffo payment aggregation platform integration": "Cấu hình tích hợp nền tảng tổng hợp thanh toán Waffo", "Configure a Creem product for user recharge options.": "Cấu hình một sản phẩm Creem cho các tùy chọn nạp tiền người dùng.", "Configure a custom ratio for when users use a specific token group.": "Cấu hình tỷ lệ tùy chỉnh khi người dùng sử dụng nhóm token cụ thể.", "Configure a group that users can select when creating API keys.": "Cấu hình một nhóm mà người dùng có thể chọn khi tạo khóa API.", @@ -697,21 +745,25 @@ "Configure a payment method for user recharge options.": "Cấu hình phương thức thanh toán cho các tùy chọn nạp tiền của người dùng.", "Configure a predefined chat link for end users.": "Cấu hình một liên kết trò chuyện được xác định trước cho người dùng cuối.", "Configure and deploy a new container instance.": "Cấu hình và triển khai một phiên bản container mới.", + "Configure API documentation links for the dashboard": "Cấu hình các liên kết tài liệu API cho bảng điều khiển", "Configure at:": "Cấu hình tại:", "Configure availability monitoring panel": "Cấu hình bảng giám sát sẵn sàng", "Configure available payment methods. Provide a JSON array.": "Cấu hình các phương thức thanh toán khả dụng. Cung cấp một mảng JSON.", "Configure basic system information and branding": "Cấu hình thông tin hệ thống cơ bản và nhận diện thương hiệu", "Configure channel affinity (sticky routing) rules": "Cấu hình quy tắc ưu tiên kênh (định tuyến dính)", + "Configure Creem products. Provide a JSON array.": "Cấu hình sản phẩm Creem. Cung cấp một mảng JSON.", "Configure custom OAuth providers for user authentication": "Cấu hình nhà cung cấp OAuth tùy chỉnh cho xác thực người dùng", "Configure daily check-in rewards for users": "Cấu hình phần thưởng điểm danh hàng ngày cho người dùng", "Configure discount rates based on recharge amounts": "Cấu hình tỷ lệ chiết khấu dựa trên số tiền nạp", "Configure experimental data export for the dashboard": "Cấu hình xuất dữ liệu thử nghiệm cho bảng điều khiển", + "Configure Gemini safety behavior, version overrides, and thinking adapter": "Cấu hình hành vi an toàn Gemini, ghi đè phiên bản và bộ điều hợp tư duy", "Configure in your Creem dashboard": "Cấu hình trong bảng điều khiển Creem của bạn", "Configure io.net API key for model deployments": "Cấu hình khóa API io.net cho triển khai mô hình", "Configure keyword filtering for prompts and responses.": "Định cấu hình lọc từ khóa để xem lời nhắc và câu trả lời.", "Configure model, caching, and group ratios used for billing": "Cấu hình mô hình, bộ nhớ đệm và tỷ lệ nhóm được sử dụng để tính phí.", "Configure monitoring status page groups for the dashboard": "Cấu hình các nhóm trang trạng thái giám sát cho bảng điều khiển", "Configure outgoing email server for notifications": "Cấu hình máy chủ email gửi đi cho thông báo", + "Configure Passkey (WebAuthn) login settings": "Cấu hình cài đặt đăng nhập Passkey (WebAuthn)", "Configure password-based login and registration": "Cấu hình đăng nhập và đăng ký dựa trên mật khẩu", "Configure per-model ratio for image inputs or outputs.": "Cấu hình tỷ lệ theo mô hình cho đầu vào hoặc đầu ra hình ảnh.", "Configure per-tool unit prices ($/1K calls). Per-request models do not incur additional tool fees.": "Cấu hình giá theo từng công cụ ($/1K lần gọi). Mô hình tính phí theo request không phát sinh thêm phí công cụ.", @@ -727,6 +779,8 @@ "Configure upstream providers and routing.": "Cấu hình nhà cung cấp upstream và định tuyến.", "Configure upstream worker or proxy service for outbound requests": "Cấu hình worker thượng nguồn hoặc dịch vụ proxy cho các yêu cầu đi", "Configure user quota allocation and rewards": "Cấu hình phân bổ hạn ngạch người dùng và phần thưởng", + "Configure Waffo Pancake hosted checkout integration for USD-priced top-ups": "Cấu hình tích hợp thanh toán Waffo Pancake (hosted checkout) cho nạp tiền theo USD", + "Configure Waffo payment aggregation platform integration": "Cấu hình tích hợp nền tảng tổng hợp thanh toán Waffo", "Configure xAI Grok model settings": "Cấu hình mô hình xAI Grok", "Configure xAI Grok model specific settings": "Cấu hình cài đặt riêng cho mô hình xAI Grok", "Configure your account behavior preferences": "Cấu hình tùy chọn hành vi tài khoản của bạn", @@ -737,22 +791,22 @@ "Confirm Billing Conflicts": "Xác nhận xung đột thanh toán", "Confirm Changes": "Xác nhận thay đổi", "Confirm Cleanup": "Xác nhận dọn dẹp", - "Confirm Creem Purchase": "Xác nhận mua Creem", - "Confirm New Password": "Xác nhận mật khẩu mới", - "Confirm Payment": "Xác nhận Thanh toán", - "Confirm Selection": "Xác nhận lựa chọn", - "Confirm Unbind": "Xác nhận hủy liên kết", "Confirm cleanup of inactive disk cache?": "Xác nhận dọn dẹp bộ nhớ đệm đĩa không hoạt động?", "Confirm clearing all channel affinity cache": "Xác nhận xóa toàn bộ bộ nhớ đệm ưu tiên kênh", "Confirm clearing cache for this rule": "Xác nhận xóa bộ nhớ đệm của quy tắc này", + "Confirm Creem Purchase": "Xác nhận mua Creem", "Confirm delete": "Xác nhận xóa", "Confirm disable": "Xác nhận vô hiệu hóa", "Confirm enable": "Xác nhận kích hoạt", "Confirm invalidate": "Xác nhận vô hiệu hóa", "Confirm log cleanup": "Xác nhận dọn dẹp nhật ký", "Confirm log file cleanup?": "Xác nhận dọn dẹp tệp nhật ký?", + "Confirm New Password": "Xác nhận mật khẩu mới", "Confirm password": "Xác nhận mật khẩu", + "Confirm Payment": "Xác nhận Thanh toán", + "Confirm Selection": "Xác nhận lựa chọn", "Confirm settings and finish setup": "Xác nhận cài đặt và hoàn tất thiết lập", + "Confirm Unbind": "Xác nhận hủy liên kết", "Confirm your identity before removing this Passkey from your account.": "Hãy xác minh danh tính trước khi gỡ Passkey khỏi tài khoản.", "Confirm your identity with Two-factor Authentication before registering a Passkey.": "Hãy xác minh danh tính bằng Xác thực hai yếu tố trước khi đăng ký Passkey.", "Conflict": "Xung đột", @@ -763,8 +817,8 @@ "Connection failed": "Kết nối thất bại", "Connection successful": "Kết nối thành công", "Console": "Bảng điều khiển", - "Console Area": "Khu vực bảng điều khiển", "Console area": "Khu vực bảng điều khiển", + "Console Area": "Khu vực bảng điều khiển", "Consume": "Tiêu thụ", "Container": "Thùng chứa", "Container name": "Tên container", @@ -776,13 +830,13 @@ "Content not found.": "Không tìm thấy nội dung.", "Content not modified!": "Nội dung không được thay đổi!", "Continue": "Tiếp tục", + "Continue with {{name}}": "Tiếp tục với {{name}}", "Continue with Discord": "Tiếp tục với Discord", "Continue with GitHub": "Tiếp tục với GitHub", "Continue with LinuxDO": "Tiếp tục với LinuxDO", "Continue with OIDC": "Tiếp tục với OIDC", "Continue with Telegram": "Tiếp tục với Telegram", "Continue with WeChat": "Tiếp tục với WeChat", - "Continue with {{name}}": "Tiếp tục với {{name}}", "Control log retention and clean historical data.": "Kiểm soát việc lưu giữ nhật ký và làm sạch dữ liệu lịch sử.", "Control passthrough behavior and connection keep-alive settings": "Kiểm soát hành vi truyền qua và cài đặt duy trì kết nối", "Control request frequency to prevent abuse and manage system load.": "Kiểm soát tần suất yêu cầu để ngăn chặn lạm dụng và quản lý tải hệ thống.", @@ -794,32 +848,31 @@ "Convert string to lowercase": "Chuyển chuỗi sang chữ thường", "Convert string to uppercase": "Chuyển chuỗi sang chữ hoa", "Copied": "Đã sao chép", - "Copied to clipboard": "Đã sao chép vào bộ nhớ tạm", "Copied {{count}} key(s)": "Đã sao chép {{count}} khóa", - "Copied!": "Đã sao chép!", + "Copied to clipboard": "Đã sao chép vào bộ nhớ tạm", "Copied: {{model}}": "Đã sao chép: {{model}}", + "Copied!": "Đã sao chép!", "Copy": "Sao chép", - "Copy API key": "Sao chép khóa API", + "Copy a request header": "Sao chép header yêu cầu", "Copy All": "Sao chép tất cả", + "Copy all backup codes": "Sao chép tất cả mã dự phòng", "Copy All Codes": "Sao chép Tất cả Mã", + "Copy API key": "Sao chép khóa API", + "Copy authorization link": "Sao chép liên kết ủy quyền", "Copy Channel": "Sao chép kênh", + "Copy code": "Sao chép mã", "Copy Connection Info": "Sao chép thông tin kết nối", + "Copy failed": "Sao chép thất bại", "Copy Field": "Sao chép trường", "Copy Header": "Sao chép tiêu đề", "Copy Key": "Sao chép khóa", "Copy Link": "Sao chép liên kết", - "Copy Request Header": "Sao chép header yêu cầu", - "Copy URL": "Sao chép URL", - "Copy a request header": "Sao chép header yêu cầu", - "Copy all backup codes": "Sao chép tất cả mã dự phòng", - "Copy authorization link": "Sao chép liên kết ủy quyền", - "Copy code": "Sao chép mã", - "Copy failed": "Sao chép thất bại", "Copy model name": "Sao chép tên mô hình", "Copy model names": "Sao chép tên mô hình", "Copy prompt": "Sao chép prompt", "Copy redemption code": "Sao chép mã đổi thưởng", "Copy referral link": "Sao chép liên kết giới thiệu", + "Copy Request Header": "Sao chép header yêu cầu", "Copy secret key": "Sao chép khóa bí mật", "Copy selected codes": "Sao chép các mã đã chọn", "Copy selected keys": "Sao chép các khóa đã chọn", @@ -828,42 +881,44 @@ "Copy this prompt and send it to an LLM (e.g. ChatGPT / Claude) to help design your billing expression.": "Sao chép prompt này và gửi cho LLM (ví dụ: ChatGPT / Claude) để được hỗ trợ thiết kế biểu thức tính phí.", "Copy to clipboard": "Sao chép vào bảng tạm", "Copy token": "Sao chép mã thông báo", + "Copy URL": "Sao chép URL", "Core Configuration": "Cấu hình chính", "Core Features": "Tính năng cốt lõi", "Cost": "Chi phí", - "Cost Tracking": "Theo dõi chi phí", "Cost in USD per request, regardless of tokens used.": "Chi phí bằng USD cho mỗi yêu cầu, bất kể số lượng token được sử dụng.", + "Cost Tracking": "Theo dõi chi phí", "Count must be between {{min}} and {{max}}": "Số lượng phải nằm trong khoảng từ {{min}} đến {{max}}.", "Coze": "Coze", + "CPU Threshold (%)": "Ngưỡng CPU (%)", "Create": "Tạo", - "Create API Key": "Tạo Khóa API", - "Create Channel": "Tạo Kênh", - "Create Code": "Tạo Mã", - "Create Model": "Tạo Mô hình", - "Create Plan": "Tạo gói", - "Create Prefill Group": "Tạo Nhóm Điền Sẵn", - "Create Provider": "Tạo nhà cung cấp", - "Create Redemption Code": "Tạo mã đổi thưởng", - "Create Vendor": "Tạo Nhà cung cấp", "Create a copy of:": "Tạo bản sao của:", "Create a new user group to configure ratio overrides for.": "Tạo một nhóm người dùng mới để cấu hình ghi đè tỷ lệ.", "Create account": "Tạo tài khoản", "Create an account": "Tạo tài khoản", "Create and review invite or credit codes.": "Tạo và xem xét mã mời hoặc mã tín dụng.", + "Create API Key": "Tạo Khóa API", "Create cache": "Tạo bộ nhớ đệm", "Create cache ratio": "Tạo tỷ lệ bộ nhớ đệm", + "Create Channel": "Tạo Kênh", + "Create Code": "Tạo Mã", "Create credentials for the root user": "Tạo thông tin đăng nhập cho tài khoản quản trị", "Create deployment": "Tạo triển khai", + "Create Model": "Tạo Mô hình", "Create multiple API keys at once (random suffix will be added to names)": "Tạo nhiều khóa API cùng lúc (hậu tố ngẫu nhiên sẽ được thêm vào tên)", "Create multiple channels from multiple keys": "Tạo nhiều kênh từ nhiều khóa", "Create multiple redemption codes at once (1-100)": "Tạo nhiều mã đổi thưởng cùng lúc (1-100)", "Create new subscription plan": "Tạo gói đăng ký mới", "Create or update frequently asked questions for users": "Tạo hoặc cập nhật các câu hỏi thường gặp cho người dùng", "Create or update system announcements for the dashboard": "Tạo hoặc cập nhật thông báo hệ thống cho bảng điều khiển", + "Create Plan": "Tạo gói", + "Create Prefill Group": "Tạo Nhóm Điền Sẵn", + "Create Provider": "Tạo nhà cung cấp", + "Create Redemption Code": "Tạo mã đổi thưởng", "Create request parameter override rules with a visual editor or raw JSON.": "Tạo quy tắc ghi đè tham số yêu cầu bằng trình soạn trực quan hoặc JSON thô.", "Create request parameter override rules without editing raw JSON.": "Tạo quy tắc ghi đè tham số yêu cầu mà không cần sửa JSON thô.", "Create reusable bundles of models, tags, endpoints, and user groups to speed up configuration elsewhere in the console.": "Tạo các gói có thể tái sử dụng gồm các mô hình, thẻ, điểm cuối và nhóm người dùng để tăng tốc cấu hình ở những nơi khác trong bảng điều khiển.", "Create succeeded": "Tạo thành công", + "Create Vendor": "Tạo Nhà cung cấp", "Create your first group to reuse model, tag, or endpoint selections anywhere in the dashboard.": "Tạo nhóm đầu tiên của bạn để dùng lại các lựa chọn mô hình, thẻ hoặc điểm cuối ở bất cứ đâu trên bảng điều khiển.", "Create, revoke, and audit API tokens.": "Tạo, thu hồi và kiểm toán token API.", "Created": "Đã tạo", @@ -883,40 +938,40 @@ "Current Balance": "Số Dư Hiện Tại", "Current Billing": "Thanh toán hiện tại", "Current Cache Size": "Kích thước bộ nhớ đệm hiện tại", - "Current Level Only": "Chỉ cấp hiện tại", - "Current Password": "Mật khẩu hiện tại", - "Current Price": "Giá hiện tại", - "Current Value": "Present value", "Current email: {{email}}. Enter a new email to change.": "Email hiện tại: {{email}}. Nhập email mới để thay đổi.", "Current key": "Khóa hiện tại", "Current legacy JSON is invalid, cannot append": "JSON định dạng cũ hiện tại không hợp lệ, không thể thêm", + "Current Level Only": "Chỉ cấp hiện tại", "Current models for the longest channel in this tag. May not include all models from all channels.": "Các mô hình hiện tại cho kênh dài nhất trong thẻ này. Có thể không bao gồm tất cả các mô hình từ tất cả các kênh.", + "Current Password": "Mật khẩu hiện tại", + "Current Price": "Giá hiện tại", "Current quota": "Hạn mức hiện tại", + "Current Value": "Present value", "Current version": "Phiên bản hiện tại", "Current:": "Hiện tại:", "Custom": "Tùy chỉnh", "Custom (seconds)": "Tùy chỉnh (giây)", + "Custom Amount": "Số tiền tùy chỉnh", "Custom API base URL. For official channels, New API has built-in addresses. Only fill this for third-party proxy sites or special endpoints. Do not add /v1 or trailing slash.": "URL cơ sở API tùy chỉnh. Đối với các kênh chính thức, New API có địa chỉ tích hợp sẵn. Chỉ điền thông tin này cho các trang proxy của bên thứ ba hoặc các điểm cuối đặc biệt. Không thêm /v1 hoặc dấu gạch chéo cuối cùng.", "Custom API base URL. Leave empty to use provider default.": "URL cơ sở API tùy chỉnh. Để trống để sử dụng mặc định của nhà cung cấp.", - "Custom Amount": "Số tiền tùy chỉnh", + "Custom color": "Màu tùy chỉnh", "Custom CSS": "Custom CSS", "Custom Currency": "Tiền tệ tùy chỉnh", "Custom Currency Symbol": "Ký hiệu tiền tệ tùy chỉnh", - "Custom Error Response": "Phản hồi lỗi tùy chỉnh", - "Custom Home Page": "Trang chủ tùy chỉnh", - "Custom OAuth": "OAuth tùy chỉnh", - "Custom OAuth Providers": "Nhà cung cấp OAuth tùy chỉnh", - "Custom Seconds": "Giây tùy chỉnh", - "Custom Time Range": "Khoảng thời gian tùy chỉnh", - "Custom Zoom": "Thu phóng tùy chỉnh", - "Custom color": "Màu tùy chỉnh", "Custom currency symbol is required": "Ký hiệu tiền tệ tùy chỉnh là bắt buộc", "Custom database driver detected.": "Đã phát hiện trình điều khiển cơ sở dữ liệu tùy chỉnh.", + "Custom Error Response": "Phản hồi lỗi tùy chỉnh", + "Custom Home Page": "Trang chủ tùy chỉnh", "Custom message shown when access is denied": "Thông báo tùy chỉnh hiển thị khi truy cập bị từ chối", "Custom model (comma-separated)": "Mô hình tùy chỉnh (phân tách bằng dấu phẩy)", "Custom module": "Module tùy chỉnh", "Custom multipliers when specific user groups use specific token groups. Example: VIP users get 0.9x rate when using \"edit_this\" group tokens.": "Các hệ số nhân tùy chỉnh khi các nhóm người dùng cụ thể sử dụng các nhóm token cụ thể. Ví dụ: Người dùng VIP được hưởng tỷ lệ 0.9x khi sử dụng các token thuộc nhóm \"edit_this\".", + "Custom OAuth": "OAuth tùy chỉnh", + "Custom OAuth Providers": "Nhà cung cấp OAuth tùy chỉnh", + "Custom Seconds": "Giây tùy chỉnh", "Custom sidebar section": "Phần thanh bên tùy chỉnh", + "Custom Time Range": "Khoảng thời gian tùy chỉnh", + "Custom Zoom": "Thu phóng tùy chỉnh", "Customize sidebar display content": "Tùy chỉnh nội dung hiển thị thanh bên", "Daily": "Hàng ngày", "Daily Check-in": "Điểm danh hàng ngày", @@ -930,74 +985,76 @@ "Data management and log viewing": "Quản lý dữ liệu và xem nhật ký", "Database": "Cơ sở dữ liệu", "Database check": "Kiểm tra cơ sở dữ liệu", - "Date Range": "Khoảng thời gian", "Date and time when this announcement should be displayed": "The date and time this notification should be displayed", + "Date Range": "Khoảng thời gian", "Day": "Ngày", + "days": "ngày", "Days to Retain": "Số ngày giữ lại", "Deducted by subscription": "Khấu trừ bởi gói đăng ký", "DeepSeek": "DeepSeek", + "default": "mặc định", "Default": "Mặc định", "Default (New Frontend)": "Mặc định (Frontend mới)", "Default API Version *": "Phiên bản API mặc định *", "Default API version for this channel": "Phiên bản API mặc định cho kênh này", "Default Collapse Sidebar": "Mặc định Thu gọn Thanh bên", - "Default Max Tokens": "Tokens Tối đa Mặc định", - "Default Responses API version, if empty, will use the API version above": "Phiên bản API phản hồi mặc định, nếu để trống, sẽ sử dụng phiên bản API ở trên", - "Default TTL (seconds)": "TTL mặc định (giây)", "Default consumption chart": "Biểu đồ tiêu thụ mặc định", + "Default Max Tokens": "Tokens Tối đa Mặc định", "Default model call chart": "Biểu đồ lượt gọi mô hình mặc định", "Default range": "Khoảng mặc định", + "Default Responses API version, if empty, will use the API version above": "Phiên bản API phản hồi mặc định, nếu để trống, sẽ sử dụng phiên bản API ở trên", "Default system prompt for this channel": "Lời nhắc hệ thống mặc định cho kênh này", "Default time granularity": "Độ chi tiết thời gian mặc định", "Default to auto groups": "Mặc định là nhóm tự động", + "Default TTL (seconds)": "TTL mặc định (giây)", "Defaults to the wallet page when empty": "Để trống sẽ dùng trang ví mặc định", "Define API endpoints for this model (JSON format)": "Định nghĩa các điểm cuối API cho mô hình này (định dạng JSON)", "Define endpoint mappings for each provider.": "Định nghĩa ánh xạ điểm cuối cho mỗi nhà cung cấp.", "Define per-group rules to add, remove, or append selectable groups for specific user groups.": "Định nghĩa quy tắc theo nhóm để thêm, xóa hoặc nối các nhóm có thể chọn cho các nhóm người dùng cụ thể.", "Delete": "Xóa", "Delete (": "Xóa (", + "Delete {{count}} API key(s)?": "Xóa {{count}} khóa API?", + "Delete a runtime request header": "Xóa header yêu cầu runtime", "Delete Account": "Xóa tài khoản", "Delete All Disabled": "Xóa Tất Cả Đã Tắt", "Delete All Disabled Channels?": "Xóa tất cả kênh đã vô hiệu hóa?", "Delete Auto-Disabled": "Xóa Tự động vô hiệu hóa", "Delete Channel": "Xóa Kênh", "Delete Channels?": "Xóa các kênh?", + "Delete condition": "Xóa điều kiện", "Delete Condition": "Xóa điều kiện", + "Delete failed": "Xóa thất bại", "Delete Field": "Xóa trường", + "Delete group": "Xóa nhóm", "Delete Header": "Xóa tiêu đề", "Delete Invalid": "Xóa không hợp lệ", + "Delete invalid codes": "Xóa mã không hợp lệ", + "Delete invalid codes (used/disabled/expired)": "Xóa mã không hợp lệ (đã sử dụng/đã vô hiệu hóa/đ", + "Delete invalid redemption codes": "Xóa mã đổi thưởng không hợp lệ", "Delete Invalid Redemption Codes?": "Xóa Mã đổi thưởng không hợp lệ?", + "Delete logs": "Xóa nhật ký", "Delete Model": "Xóa Mô hình", "Delete Models?": "Xóa mô hình?", "Delete Provider": "Xóa nhà cung cấp", "Delete Request Header": "Xóa header yêu cầu", - "Delete a runtime request header": "Xóa header yêu cầu runtime", - "Delete condition": "Xóa điều kiện", - "Delete failed": "Xóa thất bại", - "Delete group": "Xóa nhóm", - "Delete invalid codes": "Xóa mã không hợp lệ", - "Delete invalid codes (used/disabled/expired)": "Xóa mã không hợp lệ (đã sử dụng/đã vô hiệu hóa/đ", - "Delete invalid redemption codes": "Xóa mã đổi thưởng không hợp lệ", - "Delete logs": "Xóa nhật ký", "Delete selected API keys": "Xóa các khóa API đã chọn", "Delete selected channels": "Xóa các kênh đã chọn", "Delete selected models": "Xóa các mô hình đã chọn", - "Delete {{count}} API key(s)?": "Xóa {{count}} khóa API?", "Deleted": "Đã xóa", "Deleted successfully": "Xóa thành công", "Deleting will permanently remove this subscription record (including benefit details). Continue?": "Xóa sẽ xóa vĩnh viễn bản ghi đăng ký này (bao gồm chi tiết quyền lợi). Tiếp tục?", "Deleting...": "Đang xóa...", - "Demo Site Mode": "Chế độ trang Demo", "Demo site": "Trang demo", "Demo site mode": "Chế độ trang demo", + "Demo Site Mode": "Chế độ trang Demo", "Demote": "Giáng chức", "Deploy your own gateway and start routing requests through your configured upstream services.": "Triển khai cổng riêng của bạn và bắt đầu định tuyến yêu cầu qua các dịch vụ thượng nguồn đã cấu hình.", - "Deployment ID": "ID triển khai", - "Deployment Region *": "Khu vực triển khai *", "Deployment created successfully": "Tạo triển khai thành công", "Deployment details": "Chi tiết triển khai", + "Deployment ID": "ID triển khai", "Deployment location": "Vị trí triển khai", "Deployment logs": "Nhật ký triển khai", + "Deployment Region *": "Khu vực triển khai *", "Deployment requested": "Yêu cầu triển khai", "Deployments": "Triển khai", "Desc": "Mô tả", @@ -1007,6 +1064,7 @@ "Description": "Mô tả", "Description is required": "Mô tả là bắt buộc", "Designed and Developed by": "Thiết kế và Phát triển bởi", + "designed for scale": "thiết kế cho quy mô lớn", "Destroyed": "Đã hủy", "Detailed request logs for investigations.": "Nhật ký yêu cầu chi tiết cho các cuộc điều tra.", "Details": "Chi tiết", @@ -1027,7 +1085,6 @@ "Disable": "Vô hiệu hóa", "Disable 2FA": "Tắt 2FA", "Disable All": "Vô hiệu hóa tất cả", - "Disable Two-Factor Authentication": "Vô hiệu hóa Xác thực hai yếu tố", "Disable on failure": "Vô hiệu hóa khi lỗi", "Disable selected channels": "Vô hiệu hóa các kênh đã chọn", "Disable selected models": "Vô hiệu hóa các mô hình đã chọn", @@ -1035,40 +1092,42 @@ "Disable thinking processing models": "Tắt mô hình xử lý suy nghĩ", "Disable this key?": "Vô hiệu hóa khóa này?", "Disable threshold (seconds)": "Vô hiệu hóa ngưỡng (giây)", + "Disable Two-Factor Authentication": "Vô hiệu hóa Xác thực hai yếu tố", + "disabled": "vô hiệu hóa", "Disabled": "Đã tắt", + "Disabled all channels with tag: {{tag}}": "Đã tắt tất cả kênh với nhãn: {{tag}}", "Disabled Reason": "Lý do vô hiệu hóa", "Disabled Time": "Thời gian vô hiệu hóa", - "Disabled all channels with tag: {{tag}}": "Đã tắt tất cả kênh với nhãn: {{tag}}", "Disabling...": "Đang vô hiệu hóa...", "Discord": "Discord", "Discount": "Giảm giá", - "Discount Rate": "Tỷ lệ chiết khấu", - "Discount Rate:": "Tỷ lệ chiết khấu:", "Discount map by recharge amount (JSON object)": "Ánh xạ giảm giá theo số tiền nạp (đối tượng JSON)", - "Discount rate must be greater than 0": "Tỷ lệ giảm giá phải lớn hơn 0", + "Discount Rate": "Tỷ lệ chiết khấu", "Discount rate must be ≤ 1": "Tỷ lệ giảm giá phải ≤ 1", + "Discount rate must be greater than 0": "Tỷ lệ giảm giá phải lớn hơn 0", + "Discount Rate:": "Tỷ lệ chiết khấu:", "Discount ratio for cache hits.": "Tỷ lệ chiết khấu cho lượt truy cập bộ nhớ đệm thành công.", "Discouraged": "Tuyệt vọng", "Discover curated AI models, compare pricing and capabilities, and choose the right model for every scenario.": "Khám phá các mô hình AI được tuyển chọn, so sánh giá và khả năng, rồi chọn mô hình phù hợp cho từng kịch bản.", "Discovering...": "Đang khám phá...", + "Disk cache cleared": "Đã xóa bộ nhớ đệm đĩa", "Disk Cache Settings": "Cài đặt bộ nhớ đệm đĩa", "Disk Cache Threshold (MB)": "Ngưỡng bộ nhớ đệm đĩa (MB)", + "Disk cache, system performance monitoring, and operation statistics": "Bộ nhớ đệm đĩa, giám sát hiệu suất hệ thống và thống kê vận hành", "Disk Hits": "Lượt truy cập đĩa", "Disk Threshold (%)": "Ngưỡng đĩa (%)", - "Disk cache cleared": "Đã xóa bộ nhớ đệm đĩa", - "Disk cache, system performance monitoring, and operation statistics": "Bộ nhớ đệm đĩa, giám sát hiệu suất hệ thống và thống kê vận hành", - "Display Mode": "Chế độ hiển thị", - "Display Name": "Tên hiển thị", - "Display Name Field": "Trường Tên Hiển Thị", - "Display Options": "Tùy chọn hiển thị", - "Display Token Statistics": "Hiển thị Thống kê Token", "Display in Currency": "Hiển thị tiền tệ", + "Display Mode": "Chế độ hiển thị", "Display name": "Tên hiển thị", + "Display Name": "Tên hiển thị", "Display name and email used in outgoing messages": "Tên hiển thị và email được sử dụng trong tin nhắn gửi đi", + "Display Name Field": "Trường Tên Hiển Thị", "Display name for this chat client.": "Tên hiển thị cho ứng dụng chat này.", "Display name for this monitoring group (max 50 characters)": "Tên hiển thị cho nhóm giám sát này (tối đa 50 ký tự)", "Display name for this payment method.": "Tên hiển thị cho phương thức thanh toán này.", "Display name shown to users.": "Tên hiển thị cho người dùng.", + "Display Options": "Tùy chọn hiển thị", + "Display Token Statistics": "Hiển thị Thống kê Token", "Displays the mobile sidebar.": "Hiển thị thanh bên di động.", "Do not over-trust this feature. IP may be spoofed. Please use with nginx, CDN and other gateways.": "Đừng tin tưởng quá mức vào tính năng này. IP có thể bị giả mạo. Hãy sử dụng cùng với nginx, CDN và các gateway khác.", "Do not repeat check-in; only once per day": "Không lặp lại check-in; chỉ một lần mỗi ngày", @@ -1077,6 +1136,7 @@ "Docs": "Tài liệu", "Documentation Link": "Liên kết tài liệu", "Documentation or external knowledge base.": "Tài liệu hoặc cơ sở kiến thức bên ngoài.", + "does not exist or might have been removed.": "không tồn tại hoặc có thể đã bị xóa.", "Domain": "Miền", "Domain Filter Mode": "Chế độ lọc miền", "Don't have an account?": "Chưa có tài khoản?", @@ -1088,8 +1148,8 @@ "Download": "Tải xuống", "Draw": "Vẽ", "Drawing": "Vẽ", - "Drawing Logs": "Nhật ký bản vẽ", "Drawing logs": "Nhật ký vẽ", + "Drawing Logs": "Nhật ký bản vẽ", "Drawing task records": "Lịch sử tác vụ vẽ", "Duplicate": "Nhân bản", "Duration": "Thời lượng", @@ -1098,103 +1158,148 @@ "Duration Unit": "Đơn vị thời lượng", "Duration Value": "Giá trị thời lượng", "Dynamic Pricing": "Giá linh hoạt", - "Each backup code can only be used once.": "Mỗi mã dự phòng chỉ có thể được sử dụng một lần.", - "Each item must be an object with a single key-value pair.": "Mỗi mục phải là đối tượng với một cặp khóa-giá trị duy nhất.", - "Each item must have exactly one key-value pair.": "Mỗi mục phải có chính xác một cặp khóa-giá trị.", - "Each line represents one keyword. Leave blank to disable the list but keep the switch states.": "Mỗi dòng đại diện cho một từ khóa. Để trống để tắt danh sách nhưng vẫn giữ trạng thái công tắc.", - "Each tier supports 0~2 conditions (over len, p, c); the last tier is the catch-all without conditions. Use len (full input length, including cache hits) for tier conditions to avoid mis-routing when cache hits reduce p.": "Mỗi bậc hỗ trợ 0~2 điều kiện (đối với len, p, c); bậc cuối là bậc dự phòng không cần điều kiện. Hãy dùng len (độ dài đầu vào đầy đủ, bao gồm cả cache hits) cho điều kiện bậc để tránh định tuyến sai khi cache hits làm giảm p.", - "Earn rewards when your referrals add funds. Transfer accumulated rewards to your balance anytime.": "Nhận phần thưởng khi người bạn giới thiệu nạp tiền", - "Edit": "Chỉnh sửa", - "Edit API Shortcut": "Chỉnh sửa lối tắt API", - "Edit Announcement": "Chỉnh sửa thông báo", + "e.g. ¥ or HK$": "ví dụ ¥ hoặc HK$", + "e.g. 401, 403, 429, 500-599": "vd. 401, 403, 429, 500-599", + "e.g. 8 means 1 USD = 8 units": "Ví dụ: 8 có nghĩa là 1 USD = 8 đơn vị", + "e.g. Basic Plan": "ví dụ: Gói cơ bản", + "e.g. Clean tool parameters to avoid upstream validation errors": "ví dụ: Dọn dẹp tham số công cụ để tránh lỗi xác thực upstream", + "e.g. example.com": "ví dụ example.com", + "e.g. llama3.1:8b": "ví dụ: llama3.1:8b", + "e.g. My GitLab": "ví dụ: GitLab của tôi", + "e.g. my-gitlab": "ví dụ: my-gitlab", + "e.g. New API Console": "Ví dụ: Bảng điều khiển API mới", + "e.g. openid profile email": "ví dụ: openid profile email", + "e.g. Suitable for light usage": "ví dụ: Phù hợp cho sử dụng nhẹ", + "e.g. This request does not meet access policy": "ví dụ: Yêu cầu này không đáp ứng chính sách truy cập", + "e.g., #3b82f6,#8b5cf6": "e.g., #3b82f6,#8b5cf6", + "e.g., #ff0000,#0000ff": "e.g., #ff0000,#0000ff", + "e.g., #ffffff or white": "e.g., #ffffff or white", + "e.g., 0.95": "e.g., 0.95", + "e.g., 100": "e.g., 100", + "e.g., 123456": "e.g., 123456", + "e.g., 2025-04-01-preview": "ví dụ: 2025-04-01-preview", + "e.g., 50": "e.g., 50", + "e.g., 500000": "ví dụ, 500000", + "e.g., 7342866812345": "e.g., 7342866812345", + "e.g., 8 means 8 local currency per USD": "Ví dụ, 8 có nghĩa là 8 đơn vị tiền tệ địa phương trên mỗi USD", + "e.g., Alipay, WeChat": "ví dụ: Alipay, WeChat", + "e.g., Basic Package": "ví dụ, Gói cơ bản", + "e.g., CN2 GIA": "ví dụ, CN2 GIA", + "e.g., Core APIs, OpenAI, Claude": "ví dụ: Core APIs, OpenAI, Claude", + "e.g., d6b5da8hk1awo8nap34ube6gh": "ví dụ: d6b5da8hk1awo8nap34ube6gh", + "e.g., default, vip, premium": "ví dụ: mặc định, VIP, cao cấp", + "e.g., gpt-4, claude-3": "vd: gpt-4, claude-3", + "e.g., gpt-4.1-nano,regex:^claude-.*$,regex:^sora-.*$": "ví dụ: gpt-4.1-nano,regex:^claude-.*$,regex:^sora-.*$", + "e.g., https://api.example.com (path before /suno)": "ví dụ: https://api.example.com (đường dẫn trước /suno)", + "e.g., https://api.openai.com/v1/chat/completions": "ví dụ: https://api.openai.com/v1/chat/completions", + "e.g., https://ark.cn-beijing.volces.com": "ví dụ, https://ark.cn-beijing.volces.com", + "e.g., https://docs-test-001.openai.azure.com": "ví dụ: https://docs-test-001.openai.azure.com", + "e.g., https://fastgpt.run/api/openapi": "ví dụ: https://fastgpt.run/api/openapi", + "e.g., OpenAI GPT-4 Production": "ví dụ: OpenAI GPT-4 Sản xuất", + "e.g., preview": "ví dụ: xem trước", + "e.g., prod_xxx": "ví dụ, prod_xxx", + "e.g., Recommended for China Mainland Users": "ví dụ: Khuyến nghị dành cho người dùng Trung Quốc đại lục", + "e.g., us-central1 or JSON format for model-specific regions": "chẳng hạn như us-central1 hoặc định dạng JSON cho các khu vực dành riêng cho mô hình", + "e.g., v2.1": "e.g., v2.1", + "Each backup code can only be used once.": "Mỗi mã dự phòng chỉ có thể được sử dụng một lần.", + "Each item must be an object with a single key-value pair.": "Mỗi mục phải là đối tượng với một cặp khóa-giá trị duy nhất.", + "Each item must have exactly one key-value pair.": "Mỗi mục phải có chính xác một cặp khóa-giá trị.", + "Each line represents one keyword. Leave blank to disable the list but keep the switch states.": "Mỗi dòng đại diện cho một từ khóa. Để trống để tắt danh sách nhưng vẫn giữ trạng thái công tắc.", + "Each tier supports 0~2 conditions (over len, p, c); the last tier is the catch-all without conditions. Use len (full input length, including cache hits) for tier conditions to avoid mis-routing when cache hits reduce p.": "Mỗi bậc hỗ trợ 0~2 điều kiện (đối với len, p, c); bậc cuối là bậc dự phòng không cần điều kiện. Hãy dùng len (độ dài đầu vào đầy đủ, bao gồm cả cache hits) cho điều kiện bậc để tránh định tuyến sai khi cache hits làm giảm p.", + "Earn rewards when your referrals add funds. Transfer accumulated rewards to your balance anytime.": "Nhận phần thưởng khi người bạn giới thiệu nạp tiền", + "Edit": "Chỉnh sửa", + "Edit {{title}}": "Chỉnh sửa {{title}}", + "Edit all channels with tag:": "Chỉnh sửa tất cả các kênh với thẻ:", + "Edit Announcement": "Chỉnh sửa thông báo", + "Edit API Shortcut": "Chỉnh sửa lối tắt API", "Edit Channel": "Chỉnh sửa Kênh", + "Edit chat preset": "Chỉnh sửa cài đặt trước trò chuyện", + "Edit discount tier": "Chỉnh sửa bậc giảm giá", "Edit FAQ": "Chỉnh sửa câu hỏi thường gặp", + "Edit group rate limit": "Chỉnh sửa giới hạn tốc độ nhóm", "Edit JSON object directly. Suitable for simple parameter overrides.": "Chỉnh sửa đối tượng JSON trực tiếp. Phù hợp cho ghi đè tham số đơn giản.", "Edit JSON text directly. Format will be validated on save.": "Chỉnh sửa văn bản JSON trực tiếp. Định dạng sẽ được kiểm tra khi lưu.", + "Edit model": "Chỉnh sửa mô hình", "Edit Model": "Chỉnh sửa Mô hình", "Edit OAuth Provider": "Chỉnh Sửa Nhà Cung Cấp OAuth", + "Edit payment method": "Sửa phương thức thanh toán", "Edit Prefill Group": "Chỉnh sửa Nhóm Điền sẵn", + "Edit product": "Chỉnh sửa sản phẩm", + "Edit ratio override": "Chỉnh sửa ghi đè tỷ lệ", "Edit Rule": "Sửa quy tắc", + "Edit selectable group": "Chỉnh sửa nhóm có thể chọn", "Edit Tag": "Chỉnh sửa Thẻ", "Edit Tag:": "Chỉnh sửa thẻ:", "Edit Uptime Kuma Group": "Chỉnh sửa Nhóm Uptime Kuma", "Edit Vendor": "Chỉnh sửa Nhà cung cấp", - "Edit all channels with tag:": "Chỉnh sửa tất cả các kênh với thẻ:", - "Edit chat preset": "Chỉnh sửa cài đặt trước trò chuyện", - "Edit discount tier": "Chỉnh sửa bậc giảm giá", - "Edit group rate limit": "Chỉnh sửa giới hạn tốc độ nhóm", - "Edit model": "Chỉnh sửa mô hình", - "Edit payment method": "Sửa phương thức thanh toán", - "Edit product": "Chỉnh sửa sản phẩm", - "Edit ratio override": "Chỉnh sửa ghi đè tỷ lệ", - "Edit selectable group": "Chỉnh sửa nhóm có thể chọn", - "Edit {{title}}": "Chỉnh sửa {{title}}", + "edit_this": "edit_this", "Editor mode": "Chế độ trình sửa", "Effect": "Effect", "Email": "Email", "Email (required for verification)": "Email (bắt buộc để xác minh)", "Email Address": "Địa chỉ email", "Email Alias Restriction": "Hạn chế Bí danh Email", + "Email bound successfully!": "Email đã được liên kết thành công!", "Email Domain Restriction": "Hạn chế Tên miền Email", "Email Domain Whitelist": "Danh sách trắng tên miền email", "Email Field": "Trường Email", "Email Verification": "Xác minh Email", - "Email bound successfully!": "Email đã được liên kết thành công!", "Embeddings": "Embeddings", "Empty value will be saved as {}.": "Giá trị trống sẽ được lưu thành {}.", "Enable": "Bật", "Enable 2FA": "Bật 2FA", "Enable All": "Bật tất cả", + "Enable check-in feature": "Bật tính năng điểm danh", "Enable Data Dashboard": "Kích hoạt Trang tổng quan Dữ liệu", + "Enable demo mode with limited functionality": "Bật chế độ demo với chức năng hạn chế", "Enable Discord OAuth": "Bật Discord OAuth", "Enable Disk Cache": "Bật bộ nhớ đệm đĩa", + "Enable drawing features": "Bật tính năng vẽ", + "Enable filtering": "Bật lọc", "Enable FunctionCall thoughtSignature Fill": "Bật tính năng điền FunctionCall thoughtSignature", "Enable GitHub OAuth": "Kích hoạt GitHub OAuth", "Enable Groups": "Bật Nhóm", - "Enable LinuxDO OAuth": "Bật LinuxDO OAuth", - "Enable OIDC": "Bật OIDC", - "Enable Passkey": "Bật khóa truy cập", - "Enable Performance Monitoring": "Bật giám sát hiệu suất", - "Enable Request Passthrough": "Bật Truyền qua Yêu cầu", - "Enable SSL/TLS": "Bật SSL/TLS", - "Enable SSRF Protection": "Kích hoạt Bảo vệ SSRF", - "Enable Telegram OAuth": "Bật Telegram OAuth", - "Enable Turnstile": "Bật Turnstile", - "Enable Two-factor Authentication or Passkey in your profile to unlock sensitive operations.": "Bật Xác thực hai yếu tố hoặc Passkey trong hồ sơ của bạn để mở khóa các thao tác nhạy cảm.", - "Enable Waffo": "Bật Waffo", - "Enable Waffo Pancake": "Bật Waffo Pancake", - "Enable WeChat Auth": "Bật xác thực WeChat", - "Enable check-in feature": "Bật tính năng điểm danh", - "Enable demo mode with limited functionality": "Bật chế độ demo với chức năng hạn chế", - "Enable drawing features": "Bật tính năng vẽ", - "Enable filtering": "Bật lọc", "Enable if this is an OpenRouter enterprise account with special response format": "Bật nếu đây là tài khoản doanh nghiệp OpenRouter với định dạng phản hồi đặc biệt", "Enable io.net deployments": "Bật triển khai io.net", "Enable io.net model deployment service in console": "Bật dịch vụ triển khai mô hình io.net trong bảng điều khiển", + "Enable LinuxDO OAuth": "Bật LinuxDO OAuth", + "Enable OIDC": "Bật OIDC", "Enable or disable this channel": "Bật hoặc tắt kênh này", "Enable or disable this model": "Bật hoặc tắt mô hình này", "Enable or disable top navigation modules globally.": "Bật hoặc tắt các mô-đun điều hướng trên cùng toàn cục.", + "Enable Passkey": "Bật khóa truy cập", + "Enable Performance Monitoring": "Bật giám sát hiệu suất", "Enable rate limiting": "Bật giới hạn tốc độ", + "Enable Request Passthrough": "Bật Truyền qua Yêu cầu", "Enable selected channels": "Kích hoạt các kênh đã chọn", "Enable selected models": "Kích hoạt các mô hình đã chọn", + "Enable SSL/TLS": "Bật SSL/TLS", + "Enable SSRF Protection": "Kích hoạt Bảo vệ SSRF", "Enable streaming mode for the test request.": "Bật chế độ streaming cho yêu cầu thử nghiệm.", + "Enable Telegram OAuth": "Bật Telegram OAuth", "Enable test mode for Creem payments": "Bật chế độ thử nghiệm cho thanh toán Creem", "Enable this key?": "Kích hoạt khóa này?", + "Enable Turnstile": "Bật Turnstile", + "Enable Two-factor Authentication or Passkey in your profile to unlock sensitive operations.": "Bật Xác thực hai yếu tố hoặc Passkey trong hồ sơ của bạn để mở khóa các thao tác nhạy cảm.", "Enable unlimited quota for this API key": "Kích hoạt hạn mức không giới hạn cho khóa API này", "Enable violation deduction": "Bật trừ tiền vi phạm", + "Enable Waffo": "Bật Waffo", + "Enable Waffo Pancake": "Bật Waffo Pancake", + "Enable WeChat Auth": "Bật xác thực WeChat", "Enable when proxying workers that fetch images over HTTP.": "Kích hoạt khi làm proxy cho các worker tìm nạp hình ảnh qua HTTP.", "Enabled": "Đã bật", - "Enabled Status": "Trạng thái kích hoạt", "Enabled all channels with tag: {{tag}}": "Đã bật tất cả kênh với nhãn: {{tag}}", + "Enabled Status": "Trạng thái kích hoạt", "Enabling...": "Đang bật...", "End": "End", + "End color": "Màu kết thúc", "End Error": "Lỗi kết thúc", "End Reason": "Lý do kết thúc", "End Time": "Thời gian kết thúc", "Endpoint": "Endpoint", + "Endpoint config": "Cấu hình điểm cuối", "Endpoint Configuration": "Cấu hình điểm cuối", "Endpoint Type": "Loại điểm cuối", - "Endpoint config": "Cấu hình điểm cuối", "Endpoint:": "Điểm cuối:", "Endpoints": "Điểm cuối", "English": "Tiếng Anh", @@ -1203,34 +1308,33 @@ "Ensure the string has a specified prefix": "Đảm bảo chuỗi có tiền tố chỉ định", "Ensure the string has a specified suffix": "Đảm bảo chuỗi có hậu tố chỉ định", "Enter 6-digit code": "Nhập mã 6 chữ số", - "Enter API Key": "Nhập khóa API", - "Enter API Key, format: APIKey|Region": "Nhập khóa API, định dạng: APIKey|Region", - "Enter API Key, one per line, format: APIKey|Region": "Nhập khóa API, mỗi dòng một khóa, định dạng: APIKey|Region", - "Enter Completion price to calculate ratio": "Nhập giá hoàn thành để tính tỷ lệ", - "Enter Creem API key": "Nhập khóa API Creem", - "Enter HTML code (e.g.,

About us...

) or a URL (e.g., https://example.com) to embed as iframe": "Nhập mã HTML (ví dụ,

Về chúng tôi...

) hoặc một URL (ví dụ, https://example.com) để nhúng dưới dạng iframe", - "Enter Input price to calculate ratio": "Nhập giá đầu vào để tính tỷ lệ", - "Enter JSON to override request headers": "Nhập JSON để ghi đè header yêu cầu", - "Enter URL...": "Nhập URL...", "Enter a name": "Nhập tên", "Enter a new name": "Nhập tên mới", "Enter a positive or negative amount to adjust the quota": "Nhập một giá trị dương hoặc âm để điều chỉnh hạn ngạch", "Enter a valid email or leave blank": "Nhập email hợp lệ hoặc để trống", "Enter a value and press Enter": "Nhập giá trị và nhấn Enter", - "Enter amount in tokens": "Nhập số lượng token", "Enter amount in {{currency}}": "Nhập số tiền bằng {{currency}}", + "Enter amount in tokens": "Nhập số lượng token", "Enter announcement content (supports Markdown & HTML)": "Nhập nội dung thông báo (hỗ trợ Markdown & HTML)", "Enter announcement content (supports Markdown/HTML)": "Nhập nội dung thông báo (hỗ trợ Markdown/HTML)", + "Enter API Key": "Nhập khóa API", + "Enter API Key, format: APIKey|Region": "Nhập khóa API, định dạng: APIKey|Region", + "Enter API Key, one per line, format: APIKey|Region": "Nhập khóa API, mỗi dòng một khóa, định dạng: APIKey|Region", "Enter application token": "Nhập token ứng dụng", "Enter authenticator code": "Nhập mã xác thực", "Enter backup code (e.g., CAWD-OQDV)": "Nhập mã dự phòng (ví dụ: CAWD-OQDV)", "Enter banner content to display at the top of the page": "Enter banner content to display at the top of the page", "Enter code": "Nhập mã", "Enter code or backup code": "Nhập mã hoặc mã dự phòng", + "Enter Completion price to calculate ratio": "Nhập giá hoàn thành để tính tỷ lệ", + "Enter Creem API key": "Nhập khóa API Creem", "Enter custom API endpoint URL": "Nhập URL điểm cuối API tùy chỉnh", "Enter custom CSS...": "Enter custom CSS...", "Enter deployment region or JSON mapping:": "Nhập khu vực triển khai hoặc ánh xạ JSON:", "Enter display name": "Nhập tên hiển thị", + "Enter HTML code (e.g.,

About us...

) or a URL (e.g., https://example.com) to embed as iframe": "Nhập mã HTML (ví dụ,

Về chúng tôi...

) hoặc một URL (ví dụ, https://example.com) để nhúng dưới dạng iframe", + "Enter Input price to calculate ratio": "Nhập giá đầu vào để tính tỷ lệ", + "Enter JSON to override request headers": "Nhập JSON để ghi đè header yêu cầu", "Enter key, format: AccessKey|SecretAccessKey|Region": "Nhập khóa, định dạng: AccessKey|SecretAccessKey|Region", "Enter key, one per line, format: AccessKey|SecretAccessKey|Region": "Nhập khóa, mỗi dòng một khóa, định dạng: AccessKey|SecretAccessKey|Region", "Enter model name": "Nhập tên mô hình", @@ -1245,23 +1349,24 @@ "Enter password": "Nhập mật khẩu", "Enter password (8-20 characters)": "Nhập mật khẩu (8-20 ký tự)", "Enter password (min 8 characters)": "Nhập mật khẩu (tối thiểu 8 ký tự)", - "Enter quota in tokens": "Nhập hạn mức bằng token", "Enter quota in {{currency}}": "Nhập hạn mức bằng {{currency}}", + "Enter quota in tokens": "Nhập hạn mức bằng token", "Enter secret key": "Nhập khóa bí mật", "Enter system prompt (user prompt takes priority)": "Nhập lời nhắc hệ thống (lời nhắc người dùng được ưu tiên)", "Enter tag name (optional)": "Nhập tên thẻ (tùy chọn)", - "Enter the 6-digit Time-based One-Time Password or 8-character backup code from your authenticator app.": "Nhập Mật khẩu dùng một lần dựa trên thời gian gồm 6 chữ số hoặc mã dự phòng gồm 8 ký tự từ ứng dụng xác thực của bạn.", "Enter the 6-digit code from your authenticator app": "Nhập mã 6 chữ số từ ứng dụng xác thực của bạn", - "Enter the Coze agent ID": "Nhập ID tác nhân Coze", + "Enter the 6-digit Time-based One-Time Password or 8-character backup code from your authenticator app.": "Nhập Mật khẩu dùng một lần dựa trên thời gian gồm 6 chữ số hoặc mã dự phòng gồm 8 ký tự từ ứng dụng xác thực của bạn.", "Enter the complete URL, supports": "Nhập địa chỉ URL hoàn chỉnh, hỗ trợ", + "Enter the Coze agent ID": "Nhập ID tác nhân Coze", "Enter the full URL of your Gotify server": "Nhập URL đầy đủ của máy chủ Gotify của bạn", "Enter the knowledge base ID": "Nhập ID cơ sở tri thức", "Enter the path before /suno, usually just the domain": "Nhập đường dẫn trước /suno, thường chỉ là tên miền", - "Enter the quota amount in tokens": "Nhập số lượng hạn ngạch bằng token", "Enter the quota amount in {{currency}}": "Nhập số lượng hạn mức bằng {{currency}}", + "Enter the quota amount in tokens": "Nhập số lượng hạn ngạch bằng token", "Enter the verification code": "Nhập mã xác minh", "Enter threshold": "Nhập ngưỡng", "Enter token counts to preview the estimated cost (excluding group multipliers).": "Nhập số lượng token để xem ước tính chi phí (không gồm bội số nhóm).", + "Enter URL...": "Nhập URL...", "Enter username": "Nhập tên người dùng", "Enter verification code": "Nhập mã xác minh", "Enter webhook secret": "Nhập bí mật webhook", @@ -1277,8 +1382,8 @@ "Env (JSON object)": "Env (đối tượng JSON)", "Environment variables": "Biến môi trường", "Environment variables (JSON)": "Biến môi trường (JSON)", - "Epay Gateway": "Cổng thanh toán Epay", "Epay endpoint": "Epay điểm cuối", + "Epay Gateway": "Cổng thanh toán Epay", "Epay merchant ID": "ID người bán Epay", "Epay secret key": "Khóa bí mật Epay", "Equals": "Bằng", @@ -1295,17 +1400,20 @@ "Example (all channels):": "Ví dụ (tất cả kênh):", "Example (specific channels):": "Ví dụ (kênh cụ thể):", "Example:": "Ví dụ:", + "example.com blocked-site.com": "example.com\nblocked-site.com", + "example.com company.com": "example.com\ncompany.com", "Excellent": "Tuyệt vời", "Exchange rate is required": "Cần có tỷ giá", "Exchange rate must be greater than 0": "Tỷ giá phải lớn hơn 0", "Exhausted": "Đã cạn kiệt", - "Existing Models ({{count}})": "Các mô hình hiện có ({{count}})", "Existing account will be reused": "Tài khoản hiện có sẽ được sử dụng lại", + "Existing Models ({{count}})": "Các mô hình hiện có ({{count}})", "Exists": "Tồn tại", "Expand All": "Mở rộng tất cả", "Expected a JSON array.": "Cần là một mảng JSON.", "Experiment with prompts and models in real time.": "Thử nghiệm với prompt và mô hình theo thời gian thực.", "Expiration Time": "Thời gian hết hạn", + "expired": "Đã hết hạn", "Expired": "Hết hạn", "Expired at": "Hết hạn lúc", "Expired time cannot be earlier than current time": "Thời gian hết hạn không thể sớm hơn thời gian hiện tại", @@ -1321,28 +1429,24 @@ "Extend failed": "Gia hạn thất bại", "Extended successfully": "Gia hạn thành công", "External Device": "Thiết bị ngoại vi", - "External Speed Test": "Kiểm tra tốc độ bên ngoài", "External link for users to purchase quota": "Liên kết ngoài để người dùng mua hạn mức", "External operations": "Vận hành bên ngoài", "External operations mode": "Chế độ vận hành bên ngoài", + "External Speed Test": "Kiểm tra tốc độ bên ngoài", "Extra": "Thêm", "Extra Notes (Optional)": "Ghi chú bổ sung (Tùy chọn)", - "FAQ": "FAQ", - "FAQ added. Click \"Save Settings\" to apply.": "Đã thêm FAQ. Nhấp \"Lưu cài đặt\" để áp dụng.", - "FAQ deleted. Click \"Save Settings\" to apply.": "Đã xóa FAQ. Nhấp \"Lưu cài đặt\" để áp dụng.", - "FAQ saved successfully": "FAQ đã lưu thành công", - "FAQ updated. Click \"Save Settings\" to apply.": "FAQ đã cập nhật. Nhấp \"Lưu cài đặt\" để áp dụng.", "Fail Reason": "Lý do thất bại", "Fail Reason Details": "Chi tiết lý do thất bại", "Failed": "Thất bại", + "Failed to {{action}} user": "Không thể {{action}} người dùng", "Failed to adjust quota": "Không thể điều chỉnh hạn mức", "Failed to apply overwrite.": "Không thể áp dụng ghi đè.", "Failed to bind email": "Không thể liên kết email", "Failed to change password": "Không thể thay đổi mật khẩu", "Failed to check for updates": "Không thể kiểm tra cập nhật", "Failed to clean logs": "Không thể dọn sạch nhật ký", - "Failed to complete Passkey login": "Không thể hoàn tất đăng nhập Passkey", "Failed to complete order": "Không thể hoàn thành đơn hàng", + "Failed to complete Passkey login": "Không thể hoàn tất đăng nhập Passkey", "Failed to contact GitHub releases API": "Không thể kết nối API GitHub Releases", "Failed to copy": "Sao chép thất bại", "Failed to copy channel": "Không thể sao chép kênh", @@ -1355,9 +1459,10 @@ "Failed to create provider": "Tạo nhà cung cấp thất bại", "Failed to create redemption code": "Không thể tạo mã đổi thưởng", "Failed to create user": "Tạo người dùng thất bại", + "Failed to delete {{count}} model(s)": "Không thể xóa {{count}} mô hình", + "Failed to delete account": "Không thể xóa tài khoản", "Failed to delete API key": "Xóa API key thất bại", "Failed to delete API keys": "Không thể xóa khóa API", - "Failed to delete account": "Không thể xóa tài khoản", "Failed to delete channel": "Không thể xóa kênh", "Failed to delete disabled channels": "Không thể xóa các kênh đã vô hiệu hóa", "Failed to delete invalid redemption codes": "Không thể xóa các mã đổi thưởng không hợp lệ", @@ -1366,22 +1471,21 @@ "Failed to delete redemption code": "Xóa mã đổi quà không thành công", "Failed to delete user": "Không thể xóa người dùng", "Failed to delete vendor": "Không thể xóa nhà cung cấp", - "Failed to delete {{count}} model(s)": "Không thể xóa {{count}} mô hình", + "Failed to disable {{count}} model(s)": "Không thể tắt {{count}} mô hình", "Failed to disable 2FA": "Không thể vô hiệu hóa 2FA", "Failed to disable channels": "Không thể vô hiệu hóa các kênh", "Failed to disable model": "Không thể vô hiệu hóa mô hình", "Failed to disable tag channels": "Không thể vô hiệu hóa các kênh thẻ", - "Failed to disable {{count}} model(s)": "Không thể tắt {{count}} mô hình", "Failed to discover OIDC endpoints": "Khám phá điểm cuối OIDC thất bại", + "Failed to enable {{count}} model(s)": "Không thể bật {{count}} mô hình", "Failed to enable 2FA": "Không thể bật 2FA", "Failed to enable channels": "Không thể kích hoạt các kênh", "Failed to enable model": "Không thể kích hoạt mô hình", "Failed to enable tag channels": "Không thể kích hoạt kênh thẻ", - "Failed to enable {{count}} model(s)": "Không thể bật {{count}} mô hình", - "Failed to fetch OIDC configuration. Please check the URL and network status": "Không thể lấy cấu hình OIDC. Vui lòng kiểm tra URL và trạng thái mạng", "Failed to fetch checkin status": "Không thể tải trạng thái điểm danh", "Failed to fetch deployment details": "Không thể lấy chi tiết triển khai", "Failed to fetch models": "Không thể lấy các mô hình", + "Failed to fetch OIDC configuration. Please check the URL and network status": "Không thể lấy cấu hình OIDC. Vui lòng kiểm tra URL và trạng thái mạng", "Failed to fetch upstream prices": "Không thể lấy giá từ upstream", "Failed to fetch upstream ratios": "Không thể lấy tỷ lệ upstream", "Failed to fetch usage": "Không lấy được mức sử dụng", @@ -1392,38 +1496,39 @@ "Failed to initialize system": "Không thể khởi tạo hệ thống", "Failed to load": "Tải thất bại", "Failed to load API keys": "Không thể tải khóa API", - "Failed to load Passkey status": "Không thể tải trạng thái Passkey", "Failed to load billing history": "Không thể tải lịch sử thanh toán", "Failed to load home page content": "Không thể tải nội dung trang chủ", "Failed to load image": "Không thể tải ảnh", "Failed to load logs": "Không tải được nhật ký", + "Failed to load Passkey status": "Không thể tải trạng thái Passkey", "Failed to load profile": "Không thể tải hồ sơ", "Failed to load redemption codes": "Không thể tải mã đổi thưởng", "Failed to load setup data": "Không thể tải dữ liệu thiết lập", "Failed to load setup status": "Không thể tải trạng thái thiết lập", "Failed to load tag data": "Không thể tải dữ liệu thẻ", "Failed to load users": "Không thể tải người dùng", - "Failed to parse JSON file: {{name}}": "Không thể phân tích cú pháp tệp JSON: {{name}}", "Failed to parse group items": "Thất bại khi phân tích các mục nhóm", + "Failed to parse JSON file: {{name}}": "Không thể phân tích cú pháp tệp JSON: {{name}}", "Failed to query balance": "Không thể truy vấn số dư", "Failed to refresh cache stats": "Không thể làm mới thống kê bộ nhớ đệm", "Failed to regenerate backup codes": "Không thể tạo lại mã sao lưu", "Failed to register Passkey": "Không thể đăng ký Passkey", "Failed to remove Passkey": "Không thể xóa Passkey", "Failed to reset 2FA": "Không thể đặt lại 2FA", - "Failed to reset Passkey": "Không thể đặt lại Passkey", "Failed to reset model ratios": "Không thể đặt lại tỷ lệ mô hình", + "Failed to reset Passkey": "Không thể đặt lại Passkey", "Failed to save": "Lưu thất bại", + "Failed to save announcements": "Không thể lưu thông báo", "Failed to save API info": "Không thể lưu thông tin API", "Failed to save FAQ": "Không thể lưu FAQ", "Failed to save Uptime Kuma groups": "Không thể lưu nhóm Uptime Kuma", - "Failed to save announcements": "Không thể lưu thông báo", "Failed to search API keys": "Không thể tìm kiếm khóa API", "Failed to search redemption codes": "Không thể tìm kiếm mã đổi thưởng", "Failed to search users": "Không thể tìm kiếm người dùng", "Failed to send verification code": "Không thể gửi mã xác minh", "Failed to set tag": "Không thể đặt thẻ", "Failed to setup 2FA": "Không thể thiết lập 2FA", + "Failed to start {{provider}} login": "Không thể bắt đầu đăng nhập {{provider}}", "Failed to start Discord login": "Không thể bắt đầu đăng nhập Discord", "Failed to start GitHub login": "Không thể bắt đầu đăng nhập GitHub", "Failed to start LinuxDO login": "Không thể bắt đầu đăng nhập LinuxDO", @@ -1431,14 +1536,13 @@ "Failed to start Passkey login": "Không thể bắt đầu đăng nhập Passkey", "Failed to start Passkey registration": "Không thể bắt đầu đăng ký Passkey", "Failed to start testing all channels": "Không thể bắt đầu kiểm tra tất cả các kênh", - "Failed to start {{provider}} login": "Không thể bắt đầu đăng nhập {{provider}}", "Failed to sync prices": "Không thể đồng bộ giá", "Failed to sync ratios": "Không thể đồng bộ tỷ lệ", "Failed to test all channels": "Không thể kiểm tra tất cả các kênh", "Failed to test channel": "Không thể kiểm tra kênh", + "Failed to update all balances": "Không thể cập nhật tất cả số dư", "Failed to update API key": "Không thể cập nhật khóa API", "Failed to update API key status": "Không thể cập nhật trạng thái khóa API", - "Failed to update all balances": "Không thể cập nhật tất cả số dư", "Failed to update balance": "Không thể cập nhật số dư", "Failed to update channel": "Cập nhật kênh không thành công", "Failed to update models": "Không thể cập nhật mô hình", @@ -1450,43 +1554,47 @@ "Failed to update settings": "Không thể cập nhật cài đặt", "Failed to update tag": "Không thể cập nhật thẻ", "Failed to update user": "Không thể cập nhật người dùng", - "Failed to {{action}} user": "Không thể {{action}} người dùng", "Failure keywords": "Từ khóa thất bại", "Fair": "Công bằng", + "FAQ": "FAQ", + "FAQ added. Click \"Save Settings\" to apply.": "Đã thêm FAQ. Nhấp \"Lưu cài đặt\" để áp dụng.", + "FAQ deleted. Click \"Save Settings\" to apply.": "Đã xóa FAQ. Nhấp \"Lưu cài đặt\" để áp dụng.", + "FAQ saved successfully": "FAQ đã lưu thành công", + "FAQ updated. Click \"Save Settings\" to apply.": "FAQ đã cập nhật. Nhấp \"Lưu cài đặt\" để áp dụng.", "Fast": "Fast", "FastGPT": "FastGPT", "Feature in development": "Tính năng đang phát triển", "Fee": "Phí", "Fee Amount": "Số tiền phí", - "Fetch Models": "Tìm nạp Mô hình", "Fetch available models for:": "Tìm nạp các mô hình khả dụng cho:", "Fetch from Upstream": "Lấy từ nguồn", + "Fetch Models": "Tìm nạp Mô hình", "Fetched {{count}} model(s) from upstream": "Đã lấy {{count}} mô hình từ upstream", "Fetched {{count}} models": "Đã lấy {{count}} mô hình", "Fetching prefill groups...": "Đang tải nhóm điền sẵn...", "Fetching upstream prices...": "Đang lấy giá upstream...", "Fetching upstream ratios...": "Đang lấy tỷ lệ thượng nguồn...", + "field": "trường", "Field Mapping": "Ánh Xạ Trường", - "Field Path": "Đường dẫn trường", "Field passthrough controls": "Điều khiển chuyển tiếp trường", + "Field Path": "Đường dẫn trường", "File Search": "Tìm kiếm tệp", "Files to Retain": "Số tệp giữ lại", "Fill All Models": "Điền Tất Cả Mô Hình", "Fill Codex CLI / Claude CLI Templates": "Điền mẫu Codex CLI / Claude CLI", - "Fill Related Models": "Điền Mô hình Liên quan", - "Fill Template": "Điền Mẫu", - "Fill Templates": "Điền mẫu", "Fill example (all channels)": "Điền ví dụ (tất cả kênh)", "Fill example (specific channels)": "Điền ví dụ (kênh cụ thể)", "Fill in the following info to create a new subscription plan": "Điền thông tin sau để tạo gói đăng ký mới", + "Fill Related Models": "Điền Mô hình Liên quan", + "Fill Template": "Điền Mẫu", + "Fill Templates": "Điền mẫu", "Fill thoughtSignature only for Gemini/Vertex channels using the OpenAI format": "Điền thoughtSignature chỉ dành cho các kênh Gemini/Vertex sử dụng định dạng OpenAI", "Filled {{count}} model(s)": "Đã điền {{count}} mô hình", "Filled {{count}} related model(s)": "Đã điền {{count}} mô hình liên quan", "Filter": "Lọc", - "Filter Dashboard Models": "Lọc Mô hình Bảng điều khiển", - "Filter by Midjourney task ID": "Lọc theo ID nhiệm vụ Midjourney", "Filter by channel ID": "Lọc theo ID kênh", "Filter by group": "Lọc theo nhóm", + "Filter by Midjourney task ID": "Lọc theo ID nhiệm vụ Midjourney", "Filter by model name...": "Lọc theo tên mô hình...", "Filter by model...": "Lọc theo mẫu...", "Filter by name or ID...": "Lọc theo tên hoặc ID...", @@ -1499,6 +1607,7 @@ "Filter by token name": "Lọc theo tên token", "Filter by username": "Lọc theo tên người dùng", "Filter by username, name or email...": "Lọc theo tên người dùng, tên hoặc email...", + "Filter Dashboard Models": "Lọc Mô hình Bảng điều khiển", "Filter models by provider, group, type, endpoint, and tags.": "Lọc mô hình theo nhà cung cấp, nhóm, loại, endpoint và thẻ.", "Filter models by type, endpoint, vendor, group and tags": "Lọc mô hình theo loại, endpoint, nhà cung cấp, nhóm và thẻ", "Filter models...": "Lọc mô hình...", @@ -1522,24 +1631,38 @@ "Font color for the banner text. Supports any CSS color value. Leave empty for default.": "Font color for the banner text. Supports any CSS color value. Leave empty for default.", "Footer": "Chân trang", "Footer text displayed at the bottom of pages": "Văn bản chân trang hiển thị ở cuối các trang", + "footer.columns.about.links.aboutProject": "Về Dự án", + "footer.columns.about.links.contact": "Liên hệ Chúng tôi", + "footer.columns.about.links.features": "Tính năng", + "footer.columns.about.title": "Về Chúng tôi", + "footer.columns.docs.links.apiDocs": "Tài liệu API", + "footer.columns.docs.links.installation": "Hướng Dẫn Cài Đặt", + "footer.columns.docs.links.quickStart": "Bắt Đầu Nhanh", + "footer.columns.docs.title": "Tài Liệu", + "footer.columns.related.links.midjourney": "Midjourney-Proxy", + "footer.columns.related.links.neko": "neko-api-key-tool", + "footer.columns.related.links.oneApi": "One API", + "footer.columns.related.title": "Các Dự Án Liên Quan", + "footer.defaultCopyright": "Bản quyền được bảo lưu.", + "footer.new\u0061pi.projectAttributionSuffix": "Bản quyền được bảo lưu. Được thiết kế và phát triển bởi các cộng tác viên dự án.", "For channels added after May 10, 2025, no need to remove \".\" from model names during deployment": "Đối với các kênh được thêm sau ngày 10 tháng 5 năm 2025, không cần loại bỏ \".\" khỏi tên mô hình trong quá trình triển khai", "For private deployments, format: https://fastgpt.run/api/openapi": "Đối với các triển khai riêng tư, định dạng: https://fastgpt.run/api/openapi", "Force AUTH LOGIN": "Bắt buộc AUTH LOGIN", "Force Format": "Buộc định dạng", - "Force SMTP authentication using AUTH LOGIN method": "Bắt buộc xác thực SMTP sử dụng phương thức AUTH LOGIN", "Force format response to OpenAI standard (OpenAI channel only)": "Buộc định dạng phản hồi theo tiêu chuẩn OpenAI (chỉ kênh OpenAI)", + "Force SMTP authentication using AUTH LOGIN method": "Bắt buộc xác thực SMTP sử dụng phương thức AUTH LOGIN", "Forgot password": "Quên mật khẩu", "Forgot password?": "Quên mật khẩu?", "Form reset to saved values": "Đã đặt lại biểu mẫu về các giá trị đã lưu", "Format": "Định dạng", "Format JSON": "Định dạng JSON", "Format:": "Định dạng:", - "Format: APIKey-AppId, e.g., fastgpt-0sp2gtvfdgyi4k30jwlgwf1i-64f335d84283f05518e9e041": "Định dạng: APIKey-AppId, ví dụ: fastgpt-0sp2gtvfdgyi4k30jwlgwf1i-64f335d84283f05518e9e041", - "Format: APIKey|SecretKey": "Định dạng: APIKey|SecretKey", - "Format: APPID|APISecret|APIKey": "Định dạng: APPID|APISecret|APIKey", "Format: Access Key ID|Secret Access Key": "Định dạng: ID khóa truy cập|Khóa truy cập bí mật", "Format: AccessKey|SecretKey (or just ApiKey if upstream is New API)": "Định dạng: AccessKey|SecretKey (hoặc chỉ ApiKey nếu hệ thống thượng nguồn là New API)", "Format: Ak|Sk|Region": "Định dạng: Ak|Sk|Region", + "Format: APIKey-AppId, e.g., fastgpt-0sp2gtvfdgyi4k30jwlgwf1i-64f335d84283f05518e9e041": "Định dạng: APIKey-AppId, ví dụ: fastgpt-0sp2gtvfdgyi4k30jwlgwf1i-64f335d84283f05518e9e041", + "Format: APIKey|SecretKey": "Định dạng: APIKey|SecretKey", + "Format: APPID|APISecret|APIKey": "Định dạng: APPID|APISecret|APIKey", "Format: AppId|SecretId|SecretKey": "Định dạng: AppId|SecretId|SecretKey", "Forward requests directly to upstream providers without any post-processing.": "Chuyển tiếp các yêu cầu trực tiếp đến các nhà cung cấp ngược dòng mà không cần xử lý hậu kỳ nào.", "Free: {{free}} / Total: {{total}}": "Còn trống: {{free}} / Tổng: {{total}}", @@ -1555,45 +1678,49 @@ "GC Count": "Số lần GC", "GC executed": "GC đã thực thi", "GC execution failed": "Thực thi GC thất bại", - "GPU count": "Số lượng GPU", "Gemini": "Song Tử", "Gemini Image 4K": "Gemini Image 4K", "Gemini will continue to auto-detect thinking mode even with the adapter disabled. Enable this only when you need finer control over pricing and budgeting.": "Gemini sẽ tiếp tục tự động phát hiện chế độ suy nghĩ ngay cả khi bộ điều hợp bị tắt. Chỉ bật tính năng này khi bạn cần kiểm soát chi tiết hơn về giá cả và lập ngân sách.", "General": "Chung", "General Settings": "General settings", - "Generate Lyrics": "Tạo lời bài hát", - "Generate Music": "Tạo nhạc", - "Generate New Codes": "Tạo mã mới", "Generate a Codex OAuth credential and paste it into the channel key field.": "Tạo thông tin xác thực OAuth Codex và dán vào trường khóa kênh.", "Generate and manage your API access token": "Tạo và quản lý mã thông báo truy cập API của bạn", "Generate credential": "Tạo thông tin xác thực", + "Generate Lyrics": "Tạo lời bài hát", + "Generate Music": "Tạo nhạc", "Generate new backup codes for account recovery": "Tạo mã dự phòng mới để khôi phục tài khoản", + "Generate New Codes": "Tạo mã mới", "Generated image": "Ảnh được tạo", "Generating new codes will invalidate all existing backup codes.": "Tạo mã mới sẽ vô hiệu hóa tất cả các mã dự phòng hiện có.", "Generating...": "Đang tạo...", "Generic cache": "Bộ đệm chung", - "Get Started": "Bắt đầu", "Get notified when balance falls below this value": "Nhận thông báo khi số dư giảm xuống dưới giá trị này", + "Get Started": "Bắt đầu", "GitHub": "GitHub", "Give the group a recognizable name and optional description.": "Đặt cho nhóm một cái tên dễ nhận biết và mô tả tùy chọn.", "Give this group a recognizable name.": "Hãy đặt cho nhóm này một cái tên dễ nhận biết.", + "Global configuration and administrative tools.": "Cấu hình toàn cục và công cụ quản trị.", "Global Coverage": "Phạm vi toàn cầu", "Global Model Configuration": "Cấu hình Mô hình Toàn cầu", - "Global configuration and administrative tools.": "Cấu hình toàn cục và công cụ quản trị.", "Go Back": "Quay lại", "Go back and edit": "Quay lại và chỉnh sửa", "Go to Dashboard": "Truy cập Dashboard", - "Go to Settings": "Đi đến Cài đặt", "Go to first page": "Go to the first page", "Go to io.net API Keys": "Đi đến Khóa API io.net", "Go to last page": "Go to the last page", "Go to next page": "Đi đến trang tiếp theo", "Go to previous page": "Quay lại trang trước", "Go to settings": "Đi tới cài đặt", + "Go to Settings": "Đi đến Cài đặt", "Good": "Tốt", "Gotify Application Token": "Mã thông báo ứng dụng Gotify", "Gotify Documentation": "Tài liệu Gotify", "Gotify Server URL": "URL máy chủ Gotify", + "gpt-3.5-turbo": "gpt-3.5-turbo", + "gpt-3.5-turbo-0125": "gpt-3.5-turbo-0125", + "gpt-4": "gpt-4", + "gpt-4, claude-3-opus, etc.": "gpt-4, claude-3-opus, v.v.", + "GPU count": "Số lượng GPU", "Gradient": "Gradient", "Greater Than": "Lớn hơn", "Greater Than or Equal": "Lớn hơn hoặc bằng", @@ -1601,8 +1728,6 @@ "Grok Settings": "Cài đặt Grok", "Group": "Nhóm", "Group & Quota": "Nhóm & Hạn mức", - "Group Name": "Tên Nhóm", - "Group Ratio": "Tỷ lệ nhóm", "Group added. Click \"Save Settings\" to apply.": "Nhóm đã được thêm. Nhấp vào \"Lưu Cài đặt\" để áp dụng.", "Group channels by tag for batch operations": "Nhóm kênh theo thẻ để thực hiện các thao tác hàng loạt", "Group config overrides global limits, shares the same period": "Cấu hình nhóm ghi đè giới hạn toàn cầu, chia sẻ cùng một chu kỳ", @@ -1611,8 +1736,11 @@ "Group identifier": "Định danh nhóm", "Group is required": "Yêu cầu nhóm", "Group name": "Tên nhóm", + "Group Name": "Tên Nhóm", "Group name cannot be changed when editing.": "Tên nhóm không thể thay đổi khi chỉnh sửa.", "Group prices cannot be expanded because this expression is not a standard tiered pricing expression.": "Không thể mở rộng giá theo nhóm vì biểu thức này không phải là biểu thức giá theo bậc tiêu chuẩn.", + "group ratio": "tỷ lệ nhóm", + "Group Ratio": "Tỷ lệ nhóm", "Group ratios": "Tỷ lệ nhóm", "Group updated. Click \"Save Settings\" to apply.": "Nhóm đã được cập nhật. Nhấp vào \"Lưu Cài đặt\" để áp dụng.", "Group-based rate limits": "Giới hạn tỷ lệ dựa trên nhóm", @@ -1623,6 +1751,7 @@ "Groups that users can select when creating API keys.": "Các nhóm mà người dùng có thể chọn khi tạo khóa API.", "Guardrails": "Hàng rào bảo vệ", "Guest": "Khách", + "h": "h", "Haiku Model": "Mô hình Haiku", "Hang tight while we finish connecting your account.": "Hãy chờ một chút trong khi chúng tôi hoàn tất việc kết nối tài khoản của bạn.", "Hang tight while we securely link this account to your profile.": "Hãy chờ một chút trong khi chúng tôi liên kết bảo mật tài khoản này với hồ sơ của bạn.", @@ -1634,12 +1763,12 @@ "Have a Code?": "Có mã không?", "Header": "Header", "Header Name": "Tên header", + "Header navigation": "Điều hướng đầu trang", "Header Override": "Ghi đè tiêu đề", "Header Passthrough (X-Request-Id)": "Chuyển tiếp header (X-Request-Id)", "Header Value (supports string or JSON mapping)": "Giá trị header (hỗ trợ chuỗi hoặc ánh xạ JSON)", - "Header navigation": "Điều hướng đầu trang", - "Hidden Channels": "Kênh ẩn", "Hidden — verify to reveal": "Ẩn — xác minh để hiển thị", + "Hidden Channels": "Kênh ẩn", "Hide": "Ẩn", "Hide API key": "Ẩn khóa API", "High Performance": "Hiệu suất cao", @@ -1655,16 +1784,17 @@ "Higher priority channels are selected first": "Các kênh ưu tiên cao hơn được chọn trước tiên", "Historical Usage": "Lịch sử sử dụng", "History of Midjourney-style image tasks.": "Lịch sử các tác vụ hình ảnh kiểu Midjourney.", - "Hit Rate": "Tỷ lệ trúng", "Hit criteria: If cached tokens exist in usage, it counts as a hit.": "Tiêu chí trúng: Nếu cached tokens tồn tại trong usage, được tính là trúng.", + "Hit Rate": "Tỷ lệ trúng", "Hit tier": "Bậc trúng", "Home": "Trang chủ", "Home Page Content": "Nội dung Trang chủ", "Hostname or IP of your SMTP provider": "Tên máy chủ hoặc IP của nhà cung cấp SMTP của bạn", "Hour": "Giờ", - "How It Works": "Cách hoạt động", + "hours": "giờ", "How client credentials are sent to the token endpoint": "Cách thông tin xác thực client được gửi đến endpoint token", "How frequently the system tests all channels": "Tần suất hệ thống kiểm tra tất cả các kênh là bao nhiêu?", + "How It Works": "Cách hoạt động", "How model mapping works": "Cách ánh xạ mô hình hoạt động", "How much to charge for each US dollar of balance (Epay)": "Tính phí bao nhiêu cho mỗi đô la Mỹ số dư (Epay)", "How this model name should match requests": "Tên mô hình này nên khớp với các yêu cầu như thế nào", @@ -1672,19 +1802,35 @@ "How to reset my quota?": "Cách đặt lại hạn mức của tôi?", "How to select keys: random or sequential polling": "Cách chọn khóa: thăm dò ngẫu nhiên hay tuần tự", "How will you use the platform?": "Bạn sẽ sử dụng nền tảng như thế nào?", + "https://api.day.app/yourkey/{{title}}/{{content}}": "https://api.day.app/yourkey/{{title}}/{{content}}", + "https://api.example.com": "https://api.example.com", + "https://ark.ap-southeast.bytepluses.com": "https://ark.ap-southeast.bytepluses.com", + "https://ark.cn-beijing.volces.com": "https://ark.cn-beijing.volces.com", + "https://cloud.siliconflow.cn/i/hij0YNTZ": "https://cloud.siliconflow.cn/i/hij0YNTZ", + "https://docs.example.com": "https://docs.example.com", + "https://example.com": "https://example.com", + "https://example.com/logo.png": "https://example.com/logo.png", + "https://example.com/qr-code.png": "https://example.com/qr-code.png", + "https://example.com/topup": "https://example.com/topup", + "https://example.com/webhook": "https://example.com/webhook", + "https://gateway.example.com": "https://gateway.example.com", + "https://github.com/QuantumNous/new-api": "https://github.com/QuantumNous/new-api", + "https://gotify.example.com": "https://gotify.example.com", + "https://pay.example.com": "https://pay.example.com", + "https://provider.com/.well-known/openid-configuration": "https://provider.com/.well-known/openid-configuration", + "https://status.example.com": "https://status.example.com", + "https://wechat-server.example.com": "https://wechat-server.example.com", + "https://worker.example.workers.dev": "https://worker.example.workers.dev", + "https://your-server.example.com": "https://your-server.example.com", + "https://yourdomain.com": "https://yourdomain.com", "Human-readable name shown to users during Passkey prompts.": "Tên dễ đọc hiển thị cho người dùng trong quá trình nhắc nhở Passkey.", "I confirm enabling high-risk retry": "Tôi xác nhận bật thử lại rủi ro cao", "I have read and agree to the": "Tôi đã đọc và đồng ý với", "I understand that disabling 2FA will remove all protection and backup codes": "Tôi hiểu rằng việc vô", - "ID": "ID", - "IP": "IP", - "IP Address": "Địa chỉ IP", - "IP Filter Mode": "Lọc IP", - "IP Restriction": "Giới hạn IP", - "IP Whitelist (supports CIDR)": "Danh sách trắng IP (hỗ trợ CIDR)", "Icon": "Biểu tượng", "Icon file must be 100 KB or smaller": "Tệp biểu tượng phải có kích thước 100 KB hoặc nhỏ hơn", "Icon identifier (e.g. github, gitlab)": "Mã định danh biểu tượng (ví dụ: github, gitlab)", + "ID": "ID", "If an upstream error contains any of these keywords (case insensitive), the channel will be disabled automatically.": "Nếu một lỗi thượng nguồn chứa bất kỳ từ khóa nào trong số này (không phân biệt chữ hoa chữ thường), kênh sẽ tự động bị vô hiệu hóa.", "If authorization succeeds, the generated JSON will be inserted into the key field. You still need to save the channel to persist it.": "Nếu ủy quyền thành công, JSON tạo ra sẽ được chèn vào trường khóa. Bạn vẫn cần lưu kênh để áp dụng.", "If connecting to upstream One API or New API relay projects, use OpenAI type instead unless you know what you are doing": "Nếu kết nối với dự án relay One API hoặc New API upstream, hãy sử dụng loại OpenAI thay thế trừ khi bạn biết mình đang làm gì", @@ -1693,15 +1839,19 @@ "Image": "Hình ảnh", "Image Generation": "Tạo hình ảnh", "Image In": "Ảnh vào", + "Image input": "Đầu vào hình ảnh", "Image Out": "Ảnh ra", "Image Preview": "Xem trước ảnh", - "Image Tokens": "Token hình ảnh", - "Image input": "Đầu vào hình ảnh", "Image ratio": "Tỷ lệ hình ảnh", "Image to Video": "Ảnh sang video", + "Image Tokens": "Token hình ảnh", "Import to CC Switch": "Nhập vào CC Switch", + "Important Alert": "Cảnh báo quan trọng", + "Important Notice": "Thông báo quan trọng", "In Progress": "Đang xử lý", "In:": "Vào:", + "Incident": "Sự cố", + "Incident Critical": "Sự cố nghiêm trọng", "Include Group": "Bao gồm nhóm", "Include Model": "Bao gồm mô hình", "Include Rule Name": "Bao gồm tên quy tắc", @@ -1714,10 +1864,10 @@ "Initializing…": "Đang khởi tạo…", "Inpaint": "Inpaint", "Input": "Đầu vào", - "Input Tokens": "Token đầu vào", "Input mode": "Chế độ nhập", "Input price": "Giá đầu vào", "Input tokens": "Token đầu vào", + "Input Tokens": "Token đầu vào", "Inspect user prompts": "Kiểm tra lời nhắc của người dùng", "Instance": "Phiên bản", "Integrations": "Tích hợp", @@ -1726,19 +1876,19 @@ "Inter-group ratio overrides": "Tỷ lệ liên nhóm ghi đè", "Interface Language": "Ngôn ngữ giao diện", "Internal Notes": "Ghi chú nội bộ", - "Internal Server Error!": "Lỗi máy chủ nội bộ!", "Internal notes (not shown to users)": "Ghi chú nội bộ (không hiển thị cho người dùng)", + "Internal Server Error!": "Lỗi máy chủ nội bộ!", + "Invalid chat link. Please contact the administrator.": "Liên kết trò chuyện không hợp lệ. Vui lòng liên hệ quản trị viên.", + "Invalid chat link. Please contact your administrator.": "Liên kết trò chuyện không hợp lệ. Vui lòng liên hệ với quản trị viên của bạn.", + "Invalid code": "Mã không hợp lệ", "Invalid JSON": "JSON không hợp lệ", "Invalid JSON format": "Định dạng JSON không hợp lệ", "Invalid JSON format or values out of allowed range": "Định dạng JSON không hợp lệ hoặc giá trị ngoài phạm vi cho phép", "Invalid JSON in parameter override template": "JSON không hợp lệ trong mẫu ghi đè tham số", "Invalid JSON string.": "Chuỗi JSON không hợp lệ.", + "Invalid model mapping format": "Định dạng ánh xạ mô hình không hợp lệ", "Invalid Passkey registration response": "Phản hồi đăng ký Passkey không hợp lệ", "Invalid Passkey response": "Phản hồi Passkey không hợp lệ", - "Invalid chat link. Please contact the administrator.": "Liên kết trò chuyện không hợp lệ. Vui lòng liên hệ quản trị viên.", - "Invalid chat link. Please contact your administrator.": "Liên kết trò chuyện không hợp lệ. Vui lòng liên hệ với quản trị viên của bạn.", - "Invalid code": "Mã không hợp lệ", - "Invalid model mapping format": "Định dạng ánh xạ mô hình không hợp lệ", "Invalid payment redirect URL": "URL chuyển hướng thanh toán không hợp lệ", "Invalid reset link, please request a new password reset": "Liên kết đặt lại không hợp lệ, vui lòng yêu cầu đặt lại mật khẩu mới", "Invalid reset link, please request a new password reset.": "Liên kết đặt lại không hợp lệ, vui lòng yêu cầu đặt lại mật khẩu mới.", @@ -1751,31 +1901,41 @@ "Invitation Quota": "Hạn mức lời mời", "Invite Info": "Thông tin mời", "Invited": "Đã mời", - "Invited Users": "Người dùng được mời", "Invited by user ID": "Được mời bởi ID người dùng", + "Invited Users": "Người dùng được mời", "Invitee Reward": "Referral reward", "Inviter": "Người mời", "Inviter Reward": "Phần thưởng người mời", "Invites": "Mời", + "io.net API Key": "Khóa API io.net", + "io.net Deployments": "Triển khai io.net", + "IP": "IP", + "IP Address": "Địa chỉ IP", + "IP Filter Mode": "Lọc IP", + "IP Restriction": "Giới hạn IP", + "IP Whitelist (supports CIDR)": "Danh sách trắng IP (hỗ trợ CIDR)", + "is an open-source AI API gateway for self-hosted deployments. Connect multiple upstream services, manage models, keys, quotas, logs, and routing policies in one place.": "là cổng API AI mã nguồn mở dành cho triển khai tự lưu trữ. Kết nối nhiều dịch vụ thượng nguồn, quản lý mô hình, khóa, hạn mức, nhật ký và chính sách định tuyến tại một nơi.", + "is less than the configured maximum cache size": "nhỏ hơn kích thước bộ nhớ đệm tối đa đã cấu hình", + "is the default price; ": "là giá mặc định; ", "It seems like the page you're looking for": "Có vẻ như trang bạn đang tìm kiếm", "Items": "Mục", + "Japanese": "Nhật Bản", + "Jimeng": "Jimeng", + "Jina": "Jina", "JSON": "JSON", - "JSON Editor": "Trình chỉnh sửa JSON", - "JSON Mode": "Chế độ JSON", - "JSON Text": "Văn bản JSON", "JSON array of group identifiers. When enabled below, new tokens rotate through this list.": "Mảng JSON của các định danh nhóm. Khi được bật bên dưới, các token mới sẽ luân phiên qua danh sách này.", + "JSON Editor": "Trình chỉnh sửa JSON", "JSON format error": "Lỗi định dạng JSON", "JSON format supports service account JSON files": "Định dạng JSON hỗ trợ các tệp JSON tài khoản dịch vụ", "JSON map of group → description exposed when users create API keys.": "Ánh xạ JSON của nhóm → mô tả được hiển thị khi người dùng tạo khóa API.", "JSON map of group → ratio applied when the user selects the group explicitly.": "Bản đồ JSON của nhóm → tỷ lệ được áp dụng khi người dùng chọn nhóm đó một cách rõ ràng.", - "JSON map of model → USD cost per request. Takes precedence over ratio based billing.": "Ánh xạ JSON của mô hình → chi phí USD mỗi yêu cầu. Ưu tiên hơn thanh toán dựa trên tỷ lệ.", "JSON map of model → multiplier applied to quota billing.": "Bản đồ JSON của mô hình → hệ số nhân áp dụng cho thanh toán hạn mức.", + "JSON map of model → USD cost per request. Takes precedence over ratio based billing.": "Ánh xạ JSON của mô hình → chi phí USD mỗi yêu cầu. Ưu tiên hơn thanh toán dựa trên tỷ lệ.", + "JSON Mode": "Chế độ JSON", "JSON must be an object": "JSON phải là object", "JSON object:": "Đối tượng JSON:", + "JSON Text": "Văn bản JSON", "JSON-based access control rules. Leave empty to allow all users.": "Quy tắc kiểm soát truy cập dựa trên JSON. Để trống để cho phép tất cả người dùng.", - "Japanese": "Nhật Bản", - "Jimeng": "Jimeng", - "Jina": "Jina", "Just now": "Vừa nãy", "JustSong": "JustSong", "K": "K", @@ -1792,18 +1952,17 @@ "Keys, OAuth credentials, and multi-key update behavior.": "Khóa, thông tin xác thực OAuth và hành vi cập nhật nhiều khóa.", "Kling": "Kling", "Knowledge Base ID *": "Mã số Cơ sở kiến thức *", - "LLM prompt helper": "Trợ lý prompt LLM", "Landing page with system overview.": "Trang chủ với tổng quan hệ thống.", - "Language Preferences": "Tùy chọn ngôn ngữ", "Language preference saved": "Đã lưu tùy chọn ngôn ngữ", + "Language Preferences": "Tùy chọn ngôn ngữ", "Language preferences sync across your signed-in devices and affect API error messages.": "Tùy chọn ngôn ngữ sẽ đồng bộ trên các thiết bị đã đăng nhập và ảnh hưởng đến ngôn ngữ thông báo lỗi API.", + "Last check time": "Thời gian kiểm tra gần nhất", + "Last detected addable models": "Mô hình có thể thêm được phát hiện gần nhất", "Last Login": "Lần đăng nhập cuối", "Last Seen": "Lần cuối", "Last Tested": "Được kiểm tra lần cuối", - "Last Used": "Dùng lần cuối", - "Last check time": "Thời gian kiểm tra gần nhất", - "Last detected addable models": "Mô hình có thể thêm được phát hiện gần nhất", "Last updated:": "Cập nhật lần cuối:", + "Last Used": "Dùng lần cuối", "Last used:": "Lần cuối sử dụng:", "Layout": "Bố cục", "Learn more": "Tìm hiểu thêm", @@ -1823,15 +1982,15 @@ "Leave empty to use system temp directory": "Để trống để sử dụng thư mục tạm của hệ thống", "Leave empty to use username": "Để trống để sử dụng tên người dùng", "Legacy Format (JSON Object)": "Định dạng cũ (đối tượng JSON)", - "Legacy Format Template": "Mẫu định dạng cũ", "Legacy format must be a JSON object": "Định dạng cũ phải là đối tượng JSON", + "Legacy Format Template": "Mẫu định dạng cũ", "Less": "Ít hơn", "Less Than": "Nhỏ hơn", "Less Than or Equal": "Nhỏ hơn hoặc bằng", "Light": "Ánh sáng", "Lightning Fast": "Nhanh như chớp", - "Limit Reached": "Đã đạt giới hạn", "Limit period": "Thời hiệu", + "Limit Reached": "Đã đạt giới hạn", "Limit which models can be used with this key": "Giới hạn các mô hình có thể được sử dụng với khóa này", "Limited": "Giới hạn", "LingYiWanWu": "LingYiWanWu", @@ -1842,6 +2001,7 @@ "List of models supported by this channel. Use comma to separate multiple models.": "Danh sách các mô hình được hỗ trợ bởi kênh này. Sử dụng dấu phẩy để phân tách nhiều mô hình.", "List of origins (one per line) allowed for Passkey registration and authentication.": "Danh sách các nguồn gốc (mỗi dòng một mục) được phép đăng ký và xác thực Passkey.", "List view": "Xem dạng danh sách", + "LLM prompt helper": "Trợ lý prompt LLM", "Load Balancing": "Tải cân bằng", "Load template...": "Tải mẫu...", "Loader": "Trình tải", @@ -1858,41 +2018,44 @@ "Local models": "Mô hình cục bộ", "Locations": "Vị trí", "Locked": "Đã khóa", + "log": "nhật ký", "Log Details": "Chi tiết Nhật ký", "Log Directory": "Thư mục nhật ký", "Log File Count": "Số tệp nhật ký", + "Log files older than {{value}} days will be deleted.": "Các tệp nhật ký cũ hơn {{value}} ngày sẽ bị xóa.", "Log IP address for usage and error logs": "Ghi lại địa chỉ IP cho nhật ký sử dụng và lỗi", "Log Maintenance": "Bảo trì Nhật ký", "Log Type": "Loại nhật ký", - "Log files older than {{value}} days will be deleted.": "Các tệp nhật ký cũ hơn {{value}} ngày sẽ bị xóa.", "Logic": "Logic", "Login failed": "Đăng nhập thất bại", "Logo": "Logo", "Logo URL": "URL Logo", "Logs": "Nhật ký", + "m": "m", "Maintain a list of common questions for the dashboard help panel": "Duy trì danh sách các câu hỏi thường gặp cho bảng trợ giúp của bảng điều khiển", "Maintenance": "Bảo trì", + "Maintenance Stripe": "Sọc bảo trì", "Make it easier for teammates to pick the right group.": "Giúp đồng đội dễ dàng chọn đúng nhóm hơn.", "Manage": "Quản lý", - "Manage API channels and provider configurations": "Quản lý các kênh API và cấu hình nhà cung cấp", - "Manage Bindings": "Quản lý liên kết", - "Manage Keys": "Quản lý Khóa", - "Manage Ollama Models": "Quản lý mô hình Ollama", - "Manage Subscriptions": "Quản lý đăng ký", - "Manage Vendors": "Quản lý Nhà cung cấp", "Manage account bindings for this user": "Quản lý liên kết tài khoản cho người dùng này", "Manage and configure": "Quản lý và cấu hình", + "Manage API channels and provider configurations": "Quản lý các kênh API và cấu hình nhà cung cấp", + "Manage Bindings": "Quản lý liên kết", "Manage catalog visibility and pricing.": "Quản lý hiển thị danh mục và giá cả.", "Manage custom OAuth providers for user authentication": "Quản lý nhà cung cấp OAuth tùy chỉnh để xác thực người dùng", + "Manage Keys": "Quản lý Khóa", "Manage local models for:": "Quản lý mô hình cục bộ cho:", "Manage model deployments": "Quản lý triển khai mô hình", "Manage model metadata and configuration": "Quản lý siêu dữ liệu và cấu hình mô hình", "Manage multi-key status and configuration for this channel": "Quản lý trạng thái và cấu hình đa khóa cho kênh này", + "Manage Ollama Models": "Quản lý mô hình Ollama", "Manage redemption codes for quota top-up": "Quản lý mã quy đổi để nạp thêm hạn mức", "Manage server log files. Log files accumulate over time; regular cleanup is recommended to free disk space.": "Quản lý tệp nhật ký máy chủ. Tệp nhật ký tích lũy theo thời gian; nên dọn dẹp định kỳ để giải phóng dung lượng đĩa.", "Manage subscription plan creation, pricing and status": "Quản lý tạo, định giá và trạng thái gói đăng ký", "Manage subscription plans and pricing.": "Quản lý gói đăng ký và giá cả.", + "Manage Subscriptions": "Quản lý đăng ký", "Manage users and their permissions": "Quản lý người dùng và quyền của họ", + "Manage Vendors": "Quản lý Nhà cung cấp", "Manage your API keys for accessing the service": "Quản lý các khóa API của bạn để truy cập dịch vụ", "Manage your balance and payment methods": "Quản lý số dư và phương thức thanh toán của bạn", "Manage your security settings and account access": "Quản lý cài đặt bảo mật và quyền truy cập tài khoản của bạn", @@ -1905,14 +2068,14 @@ "Match All (AND)": "Tất cả khớp (AND)", "Match Any (OR)": "Bất kỳ khớp (OR)", "Match Mode": "Chế độ khớp", - "Match Text": "Văn bản khớp", - "Match Type": "Loại đối sánh", - "Match Value": "Giá trị khớp", - "Match Value (optional)": "Giá trị khớp (tùy chọn)", "Match model name exactly": "Khớp chính xác tên mô hình", "Match models containing this name": "Khớp các mô hình chứa tên này", "Match models ending with this name": "Khớp các mô hình kết thúc bằng tên này", "Match models starting with this name": "Khớp các mô hình bắt đầu bằng tên này", + "Match Text": "Văn bản khớp", + "Match Type": "Loại đối sánh", + "Match Value": "Giá trị khớp", + "Match Value (optional)": "Giá trị khớp (tùy chọn)", "Matched": "Đã khớp", "Matched Tier": "Bậc khớp", "Matching Rules": "Quy tắc khớp", @@ -1920,15 +2083,16 @@ "Max Entries": "Số mục tối đa", "Max Requests (incl. failures)": "Maximum number of requests (including errors)", "Max Requests (including failures)": "Số yêu cầu tối đa (bao gồm cả các lỗi)", - "Max Success": "Thành công tối đa", - "Max Successful Requests": "Yêu cầu thành công tối đa", "Max requests per period": "Yêu cầu tối đa mỗi khoảng thời gian", + "Max Success": "Thành công tối đa", "Max successful requests": "Số yêu cầu thành công tối đa", + "Max Successful Requests": "Yêu cầu thành công tối đa", "Maximum 1000 characters. Supports Markdown and HTML.": "Tối đa 1000 ký tự. Hỗ trợ Markdown và HTML.", "Maximum 200 characters": "Tối đa 200 ký tự", "Maximum 500 characters. Supports Markdown and HTML.": "Tối đa 500 ký tự. Hỗ trợ Markdown và HTML.", "Maximum check-in quota": "Hạn ngạch điểm danh tối đa", "Maximum quota amount awarded for check-in": "Số lượng hạn ngạch tối đa được trao cho điểm danh", + "maxRequests ≥ 0, maxSuccess ≥ 1, both ≤ 2,147,483,647": "maxRequests ≥ 0, maxSuccess ≥ 1, cả hai đều ≤ 2,147,483,647", "Medium": "Medium", "Memory Hits": "Lượt truy cập bộ nhớ", "Memory Threshold (%)": "Ngưỡng bộ nhớ (%)", @@ -1941,70 +2105,76 @@ "Min Top-up": "Nạp tối thiểu", "Min Top-up:": "Nạp tối thiểu:", "MiniMax": "MiniMax", - "Minimum LinuxDO trust level required": "Yêu cầu mức độ tin cậy {{LinuxDO}} tối thiểu", - "Minimum Trust Level": "Mức độ tin cậy tối thiểu", "Minimum check-in quota": "Hạn ngạch điểm danh tối thiểu", + "Minimum LinuxDO trust level required": "Yêu cầu mức độ tin cậy {{LinuxDO}} tối thiểu", "Minimum quota amount awarded for check-in": "Số lượng hạn ngạch tối thiểu được trao cho điểm danh", "Minimum recharge amount in USD": "Số tiền nạp tối thiểu bằng USD", "Minimum recharge amount to qualify for this discount.": "Số tiền nạp tối thiểu để đủ điều kiện nhận chiết khấu này.", - "Minimum top-up (USD)": "Mức nạp tối thiểu (USD)", "Minimum top-up (optional)": "Số tiền nạp tối thiểu (tùy chọn)", + "Minimum top-up (USD)": "Mức nạp tối thiểu (USD)", "Minimum top-up amount must be at least 1": "Số tiền nạp tối thiểu phải từ 1 trở lên", "Minimum top-up quantity": "Số lượng nạp tối thiểu", "Minimum topup amount: {{amount}}": "Số tiền nạp tối thiểu: {{amount}}", + "Minimum Trust Level": "Mức độ tin cậy tối thiểu", "Minimum:": "Tối thiểu:", "Minute": "Phút", - "Missing Models": "Thiếu Mô hình", + "minutes": "phút", "Missing code": "Thiếu mã", + "Missing Models": "Thiếu Mô hình", "Missing user data from Passkey login response": "Thiếu dữ liệu người dùng từ phản hồi đăng nhập Passkey", "Mistral": "Mistral", "Mode": "Chế độ", + "model": "mô hình", "Model": "Mô hình", "Model Access": "Truy cập mô hình", "Model Analytics": "Phân tích mô hình", + "model billing support": "hỗ trợ tính phí mô hình", "Model Call Analytics": "Phân tích lượt gọi mô hình", - "Model Description": "Mô tả Mô hình", - "Model Group": "Nhóm Mô hình", - "Model ID": "ID mô hình", - "Model Limits": "Giới hạn Mô hình", - "Model Mapping": "Ánh xạ mô hình", - "Model Mapping (JSON)": "Ánh xạ mô hình (JSON)", - "Model Mapping must be a JSON object like": "Ánh xạ Mô hình phải là một đối tượng JSON như", - "Model Name": "Tên mẫu", - "Model Name *": "Tên mẫu *", - "Model Price": "Giá mô hình", - "Model Price Not Configured": "Giá mô hình chưa được cấu hình", - "Model Pricing": "Bảng giá mô hình", - "Model Regex": "Regex mô hình", - "Model Regex (one per line)": "Regex mô hình (mỗi dòng một mục)", - "Model Square": "Quảng trường mô hình", - "Model Tags": "Thẻ mô hình", - "Model Version *": "Phiên bản mô hình *", "Model context usage": "Sử dụng ngữ cảnh mô hình", "Model deleted": "Đã xóa mô hình", "Model deleted successfully": "Model đã được xóa thành công", "Model deployment service is disabled": "Dịch vụ triển khai mô hình đang bị tắt", + "Model Description": "Mô tả Mô hình", "Model disabled successfully": "Model đã được vô hiệu hóa thành công", "Model enabled successfully": "Model đã được kích hoạt thành công", "Model fixed pricing": "Fixed-price model", + "Model Group": "Nhóm Mô hình", + "Model ID": "ID mô hình", + "Model Limits": "Giới hạn Mô hình", + "Model Mapping": "Ánh xạ mô hình", + "Model Mapping (JSON)": "Ánh xạ mô hình (JSON)", + "Model Mapping must be a JSON object like": "Ánh xạ Mô hình phải là một đối tượng JSON như", "Model mapping must be valid JSON": "Ánh xạ mô hình phải là JSON hợp lệ", "Model name": "Tên mẫu", + "Model Name": "Tên mẫu", + "Model Name *": "Tên mẫu *", "Model name is required": "Tên mô hình là bắt buộc", "Model names copied to clipboard": "Tên mô hình đã được sao chép vào bộ nhớ tạm", "Model not found": "Không tìm thấy mô hình", + "Model Price": "Giá mô hình", + "Model Price Not Configured": "Giá mô hình chưa được cấu hình", + "Model Pricing": "Bảng giá mô hình", "Model pull failed: {{msg}}": "Tải mô hình thất bại: {{msg}}", "Model ratio": "Tỷ lệ mô hình", "Model ratios": "Tỷ lệ mô hình", "Model ratios reset successfully": "Tỷ lệ mô hình đã được đặt lại thành công", + "Model Regex": "Regex mô hình", + "Model Regex (one per line)": "Regex mô hình (mỗi dòng một mục)", + "Model Square": "Quảng trường mô hình", + "Model Tags": "Thẻ mô hình", "Model to use for testing": "Mô hình dùng để kiểm thử", "Model to use when testing channel connectivity": "Mô hình để sử dụng khi kiểm tra kết nối kênh", + "Model Version *": "Phiên bản mô hình *", + "model(s) selected out of": "mô hình(s) được chọn trong số", + "model(s)? This action cannot be undone.": "mô hình(s)? Hành động này không thể hoàn tác.", + "models": "mô hình", "Models": "Mô hình", - "Models & Groups": "Mô hình & Nhóm", "Models *": "Các mô hình *", - "Models Directory": "Danh mục mô hình", + "Models & Groups": "Mô hình & Nhóm", "Models appended successfully": "Đã thêm mô hình thành công", "Models are required": "Các mô hình được yêu cầu", "Models directory": "Thư mục mô hình", + "Models Directory": "Danh mục mô hình", "Models fetched successfully": "Các mô hình đã được tải thành công", "Models filled to form": "Mô hình đã được điền vào biểu mẫu", "Models listed here will not automatically append or remove -thinking / -nothinking suffixes.": "Các mô hình được liệt kê ở đây sẽ không tự động thêm hoặc xóa hậu tố -thinking / -nothinking.", @@ -2019,21 +2189,24 @@ "Monitoring & Alerts": "Giám sát & Cảnh báo", "Month": "Tháng", "Monthly": "Hàng tháng", + "months": "tháng", "Moonshot": "Dự án táo bạo", "More": "Thêm", + "more mapping": "thêm lập bản đồ", "More templates...": "Thêm mẫu...", "More...": "Thêm...", "Move": "Di chuyển", + "Move a request header": "Di chuyển header yêu cầu", + "Move affiliate rewards to your main balance": "Chuyển phần thưởng liên kết vào số dư chính của bạn", "Move Field": "Di chuyển trường", "Move Header": "Di chuyển tiêu đề", "Move Request Header": "Di chuyển header yêu cầu", - "Move a request header": "Di chuyển header yêu cầu", - "Move affiliate rewards to your main balance": "Chuyển phần thưởng liên kết vào số dư chính của bạn", "Move source field to target field": "Di chuyển trường nguồn sang trường đích", + "ms": "ms", + "Multi-key channel: Keys will be": "Kênh đa khóa: Các khóa sẽ là", "Multi-Key Management": "Quản lý đa khóa", "Multi-Key Mode (multiple keys, one channel)": "Chế độ đa phím (nhiều phím, một kênh)", "Multi-Key Strategy": "Chiến lược đa khóa", - "Multi-key channel: Keys will be": "Kênh đa khóa: Các khóa sẽ là", "Multi-key: Polling rotation": "Đa khóa: Xoay vòng tuần tự", "Multi-key: Random rotation": "Đa khóa: Xoay vòng ngẫu nhiên", "Multi-protocol Compatible": "Tương thích đa giao thức", @@ -2051,20 +2224,22 @@ "Must be a valid URL": "Phải là URL hợp lệ", "Must be at least 8 characters": "Phải có ít nhất 8 ký tự", "My Subscriptions": "Gói đăng ký của tôi", + "my-status": "trạng thái của tôi", "MySQL detected": "Đã phát hiện MySQL", "MySQL is a production-ready relational database. Keep your credentials secure.": "MySQL là cơ sở dữ liệu quan hệ sẵn sàng cho production. Hãy giữ thông tin đăng nhập an toàn.", "MySQL is production ready. Ensure automated backups and a dedicated user with the minimal required privileges are configured.": "MySQL đã sẵn sàng để triển khai sản xuất. Đảm bảo sao lưu tự động và một người dùng chuyên dụng với các đặc quyền tối thiểu cần thiết được cấu hình.", "N/A": "N/A", "Name": "Tên", "Name *": "Tên *", - "Name Rule": "Quy tắc đặt tên", - "Name Suffix": "Hậu tố tên", "Name for this redemption code (1-20 characters)": "Tên cho mã đổi quà này (1-20 ký tự)", "Name is available": "Tên có sẵn", "Name is not available": "Tên không có sẵn", "Name must be between {{min}} and {{max}} characters": "Tên phải có giữa {{min}} và {{max}} ký tự", + "Name Rule": "Quy tắc đặt tên", + "Name Suffix": "Hậu tố tên", "Name the channel and choose the upstream provider.": "Đặt tên kênh và chọn nhà cung cấp upstream.", "Name the channel, choose the provider, configure API access, and set credentials.": "Đặt tên kênh, chọn nhà cung cấp, cấu hình truy cập API và thiết lập thông tin xác thực.", + "name@example.com": "name@example.com", "Native format": "Định dạng gốc", "Need a code?": "Cần mã không?", "Nested JSON defining per-group rules for adding (+:), removing (-:), or appending usable groups.": "JSON lồng nhau xác định quy tắc theo nhóm để thêm (+:), xóa (-:), hoặc nối các nhóm có thể sử dụng.", @@ -2078,48 +2253,32 @@ "New Format Template": "Mẫu định dạng mới", "New Group": "Nhóm mới", "New Models ({{count}})": "Mô hình mới ({{count}})", - "New Password": "Mật khẩu mới", - "New User Quota": "Hạn mức người dùng mới", "New name will be:": "Tên mới sẽ là:", "New password": "Mật khẩu mới", + "New Password": "Mật khẩu mới", "New password must be different from current password": "Mật khẩu mới phải khác với mật khẩu hiện tại", + "New User Quota": "Hạn mức người dùng mới", "New version available: {{version}}": "Có phiên bản mới: {{version}}", "NewAPI": "NewAPI", "Next": "Tiếp", "Next branch": "Nhánh tiếp theo", "Next page": "Trang tiếp theo", "Next reset": "Lần đặt lại tiếp theo", - "No API Domains yet. Click \"Add API\" to create one.": "Chưa có Tên miền API nào. Nhấp vào \"Thêm API\" để tạo.", - "No API Keys Found": "Không tìm thấy khóa API", - "No API keys available. Create your first API key to get started.": "Không có khóa API nào khả dụng. Tạo khóa API đầu tiên của bạn để bắt đầu.", - "No API routes configured": "Chưa có tuyến API nào được cấu hình", "No About Content Set": "Chưa đặt nội dung Giới thiệu", "No Active": "Không hoạt động", - "No Change": "Không thay đổi", - "No Channels Found": "Không tìm thấy kênh nào", - "No Data": "Không có dữ liệu", - "No Deployments Found": "Không tìm thấy triển khai nào", - "No FAQ entries available": "Không có mục FAQ nào.", - "No FAQ entries yet. Click \"Add FAQ\" to create one.": "Chưa có mục FAQ nào. Nhấp vào \"Thêm FAQ\" để tạo một mục.", - "No Inviter": "Không có người mời", - "No Logs Found": "Không tìm thấy nhật ký", - "No Models Found": "No models found", - "No Quota": "Không hạn ngạch", - "No Redemption Codes Found": "Không tìm thấy mã đổi thưởng", - "No Reset": "Không đặt lại", - "No Retry": "Không thử lại", - "No Sync": "Không đồng bộ", - "No Upgrade": "Không nâng cấp", - "No Uptime Kuma groups yet. Click \"Add Group\" to create one.": "Chưa có nhóm Uptime Kuma nào. Nhấp vào \"Thêm nhóm\" để tạo một nhóm.", - "No Users Found": "Không tìm thấy người dùng nào", "No additional type-specific settings for this channel type.": "Không có cài đặt bổ sung cụ thể theo loại cho loại kênh này.", "No amount options configured. Add amounts below to get started.": "Chưa có tùy chọn số tiền nào được cấu hình. Thêm các số tiền bên dưới để bắt đầu.", "No announcements at this time": "Hiện tại chưa có thông báo nào.", "No announcements yet. Click \"Add Announcement\" to create one.": "Chưa có thông báo nào. Nhấp vào \"Thêm thông báo\" để tạo một thông báo.", - "No available Web chat links": "Không có liên kết Web chat khả dụng", + "No API Domains yet. Click \"Add API\" to create one.": "Chưa có Tên miền API nào. Nhấp vào \"Thêm API\" để tạo.", + "No API keys available. Create your first API key to get started.": "Không có khóa API nào khả dụng. Tạo khóa API đầu tiên của bạn để bắt đầu.", + "No API Keys Found": "Không tìm thấy khóa API", + "No API routes configured": "Chưa có tuyến API nào được cấu hình", "No available models": "Không có mô hình khả dụng", + "No available Web chat links": "Không có liên kết Web chat khả dụng", "No backup": "Chưa sao lưu", "No billing records found": "Không tìm thấy hồ sơ thanh toán", + "No Change": "Không thay đổi", "No changes": "Không có thay đổi", "No changes made": "Không có thay đổi nào được thực hiện", "No changes to save": "Không có thay đổi nào để lưu", @@ -2127,6 +2286,7 @@ "No channel type found.": "Không tìm thấy loại kênh.", "No channels available. Create your first channel to get started.": "Không có kênh nào khả dụng. Hãy tạo kênh đầu tiên của bạn để bắt đầu.", "No channels found": "Không tìm thấy kênh nào", + "No Channels Found": "Không tìm thấy kênh nào", "No channels selected": "Không có kênh nào được chọn", "No chat presets configured. Click \"Add chat preset\" to get started.": "Chưa cấu hình cài đặt trước trò chuyện. Nhấp vào \"Thêm cài đặt trước trò chuyện\" để bắt đầu.", "No chat presets match your search": "Không có cài đặt trước trò chuyện nào khớp với tìm kiếm của bạn", @@ -2136,21 +2296,27 @@ "No containers": "Không có container", "No custom OAuth providers configured yet.": "Chưa có nhà cung cấp OAuth tùy chỉnh nào được cấu hình.", "No data": "Không có dữ liệu", + "No Data": "Không có dữ liệu", "No data available": "Không có dữ liệu", "No deployments available. Create one to get started.": "Không có triển khai nào khả dụng. Tạo một cái để bắt đầu.", + "No Deployments Found": "Không tìm thấy triển khai nào", "No description available.": "Chưa có mô tả.", "No discount tiers configured. Click \"Add discount tier\" to get started.": "Chưa cấu hình cấp chiết khấu nào. Nhấp vào \"Thêm cấp chiết khấu\" để bắt đầu.", "No duplicate keys found": "Không tìm thấy khóa trùng lặp", "No enabled tokens available": "Không có token nào được kích hoạt", "No endpoints configured. Switch to JSON mode or add rows to define endpoints.": "Chưa cấu hình endpoint nào. Chuyển sang chế độ JSON hoặc thêm hàng để định nghĩa endpoint.", + "No FAQ entries available": "Không có mục FAQ nào.", + "No FAQ entries yet. Click \"Add FAQ\" to create one.": "Chưa có mục FAQ nào. Nhấp vào \"Thêm FAQ\" để tạo một mục.", "No files match the accepted types.": "Không có tệp nào khớp với các loại được chấp nhận.", "No group found.": "Không tìm thấy nhóm.", "No group-based rate limits configured. Click \"Add group\" to get started.": "Chưa cấu hình giới hạn tốc độ dựa trên nhóm. Nhấp \"Add group\" để bắt đầu.", "No groups match your search": "Không có nhóm nào khớp với tìm kiếm của bạn", "No header overrides configured.": "Không có ghi đè tiêu đề nào được cấu hình.", + "No Inviter": "Không có người mời", "No keys found": "Không tìm thấy khóa", "No log entries matched the selected time.": "Không có mục nhật ký nào khớp với thời gian đã chọn.", "No logs": "Không có nhật ký", + "No Logs Found": "Không tìm thấy nhật ký", "No mappings configured. Click \"Add Row\" to get started.": "Chưa có ánh xạ nào được cấu hình. Nhấp vào \"Thêm hàng\" để bắt đầu.", "No matches found": "Không tìm thấy kết quả nào", "No matching results": "Không có kết quả phù hợp", @@ -2165,6 +2331,7 @@ "No models fetched from upstream": "Không lấy được mô hình nào từ upstream", "No models fetched yet.": "Chưa có mô hình nào được tìm nạp.", "No models found": "Không tìm thấy mô hình nào", + "No Models Found": "No models found", "No models found.": "Không tìm thấy mô hình.", "No models match your current filters.": "Không có mô hình nào khớp với bộ lọc hiện tại của bạn.", "No models match your search": "Không có mô hình phù hợp với tìm kiếm", @@ -2186,48 +2353,60 @@ "No products configured. Click \"Add product\" to get started.": "Chưa cấu hình sản phẩm nào. Nhấp \"Thêm sản phẩm\" để bắt đầu.", "No products match your search": "Không có sản phẩm nào khớp với tìm kiếm của bạn", "No providers available": "Không có nhà cung cấp khả dụng", + "No Quota": "Không hạn ngạch", "No ratio differences found": "Không tìm thấy sự khác biệt tỷ lệ", "No records found. Try adjusting your filters.": "Không tìm thấy bản ghi nào. Hãy thử điều chỉnh bộ lọc của bạn.", "No redemption codes available. Create your first redemption code to get started.": "Hiện không có mã đổi thưởng nào. Hãy tạo mã đổi thưởng đầu tiên của bạn để bắt đầu.", + "No Redemption Codes Found": "Không tìm thấy mã đổi thưởng", "No related models available for this channel type": "Không có mô hình liên quan nào cho loại kênh này", "No release notes provided.": "Không có ghi chú phát hành nào được cung cấp.", + "No Reset": "Không đặt lại", "No restriction": "Không giới hạn", "No results for \"{{query}}\". Try adjusting your search or filters.": "Không tìm thấy kết quả cho \"{{query}}\". Hãy thử điều chỉnh tìm kiếm hoặc bộ lọc.", "No results found": "Không tìm thấy kết quả nào", "No results found.": "Không tìm thấy kết quả.", + "No Retry": "Không thử lại", "No rules yet": "Chưa có quy tắc", "No rules yet. Add a group below to get started.": "Chưa có quy tắc nào. Thêm một nhóm bên dưới để bắt đầu.", "No status code mappings configured.": "Chưa cấu hình ánh xạ mã trạng thái.", "No subscription plans yet": "Chưa có gói đăng ký nào", "No subscription records": "Không có bản ghi đăng ký", + "No Sync": "Không đồng bộ", "No system announcements": "Không có thông báo hệ thống", "No token found.": "Không tìm thấy mã thông báo.", "No tools configured": "Chưa cấu hình công cụ nào", + "No Upgrade": "Không nâng cấp", "No upstream price differences found": "Không tìm thấy sự khác biệt về giá upstream", "No upstream ratio differences found": "Không tìm thấy chênh lệch tỷ lệ thượng nguồn", + "No Uptime Kuma groups yet. Click \"Add Group\" to create one.": "Chưa có nhóm Uptime Kuma nào. Nhấp vào \"Thêm nhóm\" để tạo một nhóm.", "No uptime monitoring configured": "Chưa cấu hình giám sát thời gian hoạt động", "No usage logs available. Logs will appear here once API calls are made.": "Chưa có nhật ký sử dụng. Nhật ký sẽ hiển thị sau khi có gọi API.", "No user information available": "Không có thông tin người dùng", "No user selected": "Chưa chọn người dùng", "No users available. Try adjusting your search or filters.": "Không có người dùng nào. Hãy thử điều chỉnh tìm kiếm hoặc bộ lọc của bạn.", + "No Users Found": "Không tìm thấy người dùng nào", "Node Name": "Tên nút", "Non-stream": "Không phát trực tuyến", "None": "Không có", + "noreply@example.com": "noreply@example.com", "Normal": "Normal", "Normalized:": "Chuẩn hóa:", - "Not Equals": "Không bằng", - "Not Set": "Chưa đặt", - "Not Started": "Chưa bắt đầu", - "Not Submitted": "Chưa gửi", "Not available": "Không khả dụng", "Not backed up": "Chưa sao lưu", "Not bound": "Không bị ràng buộc", + "Not Equals": "Không bằng", + "Not Set": "Chưa đặt", "Not set yet": "Chưa thiết lập", + "Not Started": "Chưa bắt đầu", + "Not Submitted": "Chưa gửi", "Not tested": "Chưa kiểm tra", "Not used yet": "Chưa sử dụng", "Notice": "Thông báo", + "Notice Glass": "Thông báo kính", "Notification Email": "Email thông báo", "Notification Method": "Phương thức thông báo", + "Notification Presets": "Mẫu thông báo", + "Notification presets use fixed category colors and ignore the color palette.": "Mẫu thông báo dùng màu cố định theo loại và bỏ qua bảng màu.", "Notifications": "Thông báo", "Number of codes to create": "Số mã cần tạo", "Number of keys to create": "Số lượng khóa cần tạo", @@ -2236,33 +2415,37 @@ "Number of users invited": "Số người dùng được mời", "OAuth Client ID": "ID Client OAuth", "OAuth Client Secret": "Bí mật OAuth Client", - "OAuth Integrations": "Tích hợp OAuth", "OAuth failed": "OAuth thất bại", + "OAuth Integrations": "Tích hợp OAuth", "OAuth start failed": "Bắt đầu OAuth thất bại", - "OIDC": "OIDC", - "OIDC Client ID": "Mã máy khách OIDC", - "OIDC Client Secret": "Mã bí mật ứng dụng khách OIDC", - "OIDC configuration fetched successfully": "Cấu hình OIDC đã được lấy thành công", - "OIDC discovery URL. Click \"Auto-discover\" to fetch endpoints automatically.": "URL khám phá OIDC. Nhấp \"Tự động khám phá\" để tự động lấy các endpoint.", - "OIDC endpoints discovered successfully": "Đã khám phá thành công các endpoint OIDC", "Object Prune Rules": "Quy tắc dọn dẹp đối tượng", "Observability": "Khả năng quan sát", "Obtain the API key, merchant ID, and RSA key pair from the Waffo dashboard, and configure the callback URL.": "Lấy API key, mã thương gia và cặp khóa RSA từ bảng điều khiển Waffo, đồng thời cấu hình URL callback.", "Obtain the merchant, store, product and signing keys from your Waffo dashboard. Webhook URL: /api/waffo-pancake/webhook": "Lấy merchant, store, product và khóa ký từ bảng điều khiển Waffo. Webhook: /api/waffo-pancake/webhook", + "of": "of", + "of 3:": "of 3:", + "off": "off", "Official": "Chính thức", + "Official documentation": "Tài liệu chính thức", "Official Repository": "Kho lưu trữ chính thức", "Official Sync": "Official sync", - "Official documentation": "Tài liệu chính thức", "OhMyGPT": "OhMyGPT", + "OIDC": "OIDC", + "OIDC Client ID": "Mã máy khách OIDC", + "OIDC Client Secret": "Mã bí mật ứng dụng khách OIDC", + "OIDC configuration fetched successfully": "Cấu hình OIDC đã được lấy thành công", + "OIDC discovery URL. Click \"Auto-discover\" to fetch endpoints automatically.": "URL khám phá OIDC. Nhấp \"Tự động khám phá\" để tự động lấy các endpoint.", + "OIDC endpoints discovered successfully": "Đã khám phá thành công các endpoint OIDC", "Old Format Template": "Mẫu Định dạng Cũ", "Old format: Direct override. New format: Supports conditional judgment and custom JSON operations.": "Định dạng cũ: Ghi đè trực tiếp. Định dạng mới: Hỗ trợ phán đoán có điều kiện và các thao tác JSON tùy chỉnh.", "Ollama": "Ollama", "Ollama Models": "Mô hình Ollama", "One API": "Một API", - "One IP or CIDR range per line": "Một IP hoặc dải CIDR mỗi dòng", - "One IP per line (empty for no restriction)": "Mỗi IP một dòng (để trống nếu không giới hạn)", "One domain per line": "Một tên miền mỗi dòng", "One domain per line (only used when domain restriction is enabled)": "Mỗi dòng một tên miền (chỉ được sử dụng khi hạn chế tên miền được bật)", + "One IP or CIDR range per line": "Một IP hoặc dải CIDR mỗi dòng", + "One IP per line (empty for no restriction)": "Mỗi IP một dòng (để trống nếu không giới hạn)", + "one keyword per line": "Mỗi dòng một từ khóa", "Online payment is not enabled. Please contact the administrator.": "Thanh toán trực tuyến chưa được kích hoạt. Vui lòng liên hệ quản trị viên.", "Online topup is not enabled. Please use redemption code or contact administrator.": "Tính năng nạp tiền trực tuyến chưa được bật. Vui lòng sử dụng mã quy đổi hoặc liên hệ quản trị viên.", "Only allow specific email domains": "Chỉ cho phép các tên miền email cụ thể", @@ -2274,34 +2457,35 @@ "Oops! Page Not Found!": "Ối! Không tìm thấy trang!", "Oops! Something went wrong": "Oops! An error occurred.", "Open": "Mở", - "Open CC Switch": "Mở công tắc CC", - "Open Source": "Mã nguồn mở", "Open authorization page": "Mở trang ủy quyền", - "Open in New Tab": "Mở trong tab mới", + "Open CC Switch": "Mở công tắc CC", "Open in chat": "Mở trong trò chuyện", "Open in new tab": "Mở trong tab mới", + "Open in New Tab": "Mở trong tab mới", "Open menu": "Mở menu", "Open release": "Phát hành mở", + "Open Source": "Mã nguồn mở", "Open the io.net console API Keys page": "Mở trang Khóa API của console io.net", "Open theme settings": "Mở cài đặt giao diện", "OpenAI": "OpenAI", "OpenAI Compatible": "Tương thích OpenAI", "OpenAI Organization": "Tổ chức OpenAI", "OpenAI Organization ID (optional)": "ID Tổ chức OpenAI (tùy chọn)", - "OpenAI, Anthropic, Google, etc.": "OpenAI, Anthropic, Google, v.v.", "OpenAI, Anthropic, etc.": "OpenAI, Anthropic, v.v.", + "OpenAI, Anthropic, Google, etc.": "OpenAI, Anthropic, Google, v.v.", "OpenAIMax": "OpenAIMax", - "OpenRouter": "OpenRouter", "Opened authorization page": "Đã mở trang ủy quyền", + "OpenRouter": "OpenRouter", + "opens in an external client. Trigger it from the sidebar or API key actions to launch the configured application.": "mở trong một ứng dụng bên ngoài. Kích hoạt nó từ thanh bên hoặc các hành động khóa API để khởi chạy ứng dụng đã cấu hình.", "Operation": "Thao tác", - "Operation Type": "Loại thao tác", "Operation failed": "Thao tác thất bại", + "Operation Type": "Loại thao tác", "Operator Admin": "Quản trị viên vận hành", "Optimize system for self-hosted single-user usage": "Tối ưu hóa hệ thống cho việc sử dụng đơn người dùng tự lưu trữ", "Optimized network architecture ensures millisecond response times": "Kiến trúc mạng tối ưu đảm bảo thời gian phản hồi mili giây", - "Optional JSON policy to restrict access based on user info fields": "Chính sách JSON tùy chọn để hạn chế truy cập dựa trên các trường thông tin người dùng", "Optional callback override. Leave blank to use server address": "Tùy chọn ghi đè callback. Để trống để sử dụng địa chỉ máy chủ", "Optional icon identifier for the login button": "Định danh biểu tượng tùy chọn cho nút đăng nhập", + "Optional JSON policy to restrict access based on user info fields": "Chính sách JSON tùy chọn để hạn chế truy cập dựa trên các trường thông tin người dùng", "Optional minimum recharge amount for this method.": "Số tiền nạp tối thiểu tùy chọn cho phương thức này.", "Optional multiplier per user group used when calculating recharge pricing. Provide a JSON object such as": "Hệ số nhân tùy chọn cho mỗi nhóm người dùng, được sử dụng khi tính toán giá nạp tiền. Cung cấp một đối tượng JSON như", "Optional notes about this channel": "Ghi chú tùy chọn về kênh này", @@ -2314,46 +2498,50 @@ "Opus Model": "Mô hình Opus", "Or continue with": "Hoặc tiếp tục với", "Or enter this key manually:": "Hoặc nhập khóa này thủ công:", + "Order completed successfully": "Đơn hàng đã hoàn thành thành công", "Order History": "Lịch sử đơn hàng", "Order Payment Method": "Phương thức thanh toán đơn hàng", - "Order completed successfully": "Đơn hàng đã hoàn thành thành công", + "org-...": "org-...", "Original Model": "Nguyên mẫu", "Other": "Khác", "Output": "Đầu ra", - "Output Tokens": "Token đầu ra", "Output price": "Giá đầu ra", "Output tokens": "Token đầu ra", + "Output Tokens": "Token đầu ra", + "override": "ghi đè", "Override": "Ghi đè", "Override Anthropic headers, defaults, and thinking adapter behavior": "Ghi đè tiêu đề, cài đặt mặc định và hành vi bộ điều hợp tư duy của Anthropic", - "Override Rules": "Quy tắc ghi đè", "Override auto-discovered endpoint": "Ghi đè điểm cuối tự động phát hiện", "Override request headers": "Ghi đè tiêu đề yêu cầu", "Override request headers (JSON format)": "Ghi đè tiêu đề yêu cầu (định dạng JSON)", "Override request parameters (JSON format)": "Ghi đè tham số yêu cầu (định dạng JSON)", "Override request parameters. Cannot override": "Ghi đè tham số yêu cầu. Không thể ghi đè", "Override request parameters. Cannot override stream parameter.": "Ghi đè tham số yêu cầu. Không thể ghi đè tham số stream.", + "Override Rules": "Quy tắc ghi đè", "Override the endpoint used for testing. Leave empty to auto detect.": "Ghi đè điểm cuối dùng để kiểm thử. Để trống để tự động phát hiện.", + "overrides for matching model prefix.": "ghi đè theo tiền tố model tương ứng.", "Overview": "Tổng quan", "Overwritten": "Đã ghi đè", - "PaLM": "PaLM", "Page": "Trang", "Page {{current}} of {{total}}": "Trang {{current}} / {{total}}", + "PaLM": "PaLM", "Pan": "Pan", "Param Override": "Ghi đè tham số", - "Parameter Override": "Ghi đè Tham số", - "Parameter Override Template (JSON)": "Mẫu ghi đè tham số (JSON)", "Parameter configuration error": "Lỗi cấu hình tham số", + "Parameter Override": "Ghi đè Tham số", "Parameter override must be a valid JSON object": "Ghi đè tham số phải là đối tượng JSON hợp lệ", "Parameter override must be valid JSON format": "Ghi đè tham số phải ở định dạng JSON hợp lệ", + "Parameter Override Template (JSON)": "Mẫu ghi đè tham số (JSON)", "Parameter override template must be a JSON object": "Mẫu ghi đè tham số phải là đối tượng JSON", + "parameter.": "tham số", "Parameters": "Tham số", "Parsed {{count}} service account file(s)": "Đã phân tích {{count}} tệp tài khoản dịch vụ", "Partial Submission": "Gửi một phần", "Pass Headers": "Chuyển tiếp tiêu đề", - "Pass Through Body": "Xuyên qua cơ thể", - "Pass Through Headers": "Truyền header qua", "Pass request body directly to upstream": "Truyền phần thân yêu cầu trực tiếp lên upstream", "Pass specified request headers to upstream": "Chuyển tiếp header yêu cầu chỉ định lên upstream", + "Pass Through Body": "Xuyên qua cơ thể", + "Pass Through Headers": "Truyền header qua", "Pass through the anthropic-beta header for beta features": "Chuyển tiếp header anthropic-beta cho tính năng beta", "Pass through the include field for usage obfuscation": "Chuyển tiếp trường include cho che giấu sử dụng", "Pass through the inference_geo field for Claude data residency region control": "Chuyển tiếp trường inference_geo để kiểm soát vùng lưu trữ dữ liệu Claude", @@ -2366,11 +2554,11 @@ "Pass-through Headers (comma-separated or JSON array)": "Header chuyển tiếp (phân cách bằng dấu phẩy hoặc mảng JSON)", "Passkey": "Khóa truy cập", "Passkey Authentication": "Xác thực khóa truy cập", - "Passkey Login": "Đăng nhập bằng khóa truy cập", "Passkey is not available in this browser": "Passkey không khả dụng trong trình duyệt này", "Passkey is not supported in this environment": "Passkey không được hỗ trợ trong môi trường này", "Passkey is not supported on this device": "Passkey không được hỗ trợ trên thiết bị này", "Passkey is not supported on this device.": "Khóa truy cập không được hỗ trợ trên thiết bị này.", + "Passkey Login": "Đăng nhập bằng khóa truy cập", "Passkey login failed": "Đăng nhập Passkey thất bại", "Passkey login was cancelled": "Đăng nhập Passkey đã bị hủy", "Passkey login was cancelled or timed out": "Đăng nhập Passkey đã bị hủy hoặc hết thời gian", @@ -2382,41 +2570,43 @@ "Passthrough Template": "Mẫu truyền qua", "Password": "Mật khẩu", "Password / Access Token": "Mật khẩu / Access Token", - "Password Login": "Đăng nhập bằng mật khẩu", - "Password Registration": "Đăng ký mật khẩu", "Password changed successfully": "Đổi mật khẩu thành công", "Password copied to clipboard: {{password}}": "Mật khẩu đã sao chép vào clipboard: {{password}}", "Password has been copied to clipboard": "Mật khẩu đã được sao chép vào bộ nhớ tạm", + "Password Login": "Đăng nhập bằng mật khẩu", "Password must be at least 8 characters": "Mật khẩu phải có ít nhất 8 ký tự", "Password must be at least 8 characters long": "Mật khẩu phải có ít nhất 8 ký tự", + "Password Registration": "Đăng ký mật khẩu", "Password reset and copied to clipboard: {{password}}": "Mật khẩu đã đặt lại và sao chép vào clipboard: {{password}}", "Password reset: {{password}}": "Mật khẩu đã đặt lại: {{password}}", "Passwords do not match": "Mật khẩu không khớp", "Paste the full callback URL (includes code & state)": "Dán toàn bộ URL callback (gồm code và state)", "Path": "Đường dẫn", - "Path Regex (one per line)": "Regex đường dẫn (mỗi dòng một mục)", "Path not set": "Chưa đặt đường dẫn", + "Path Regex (one per line)": "Regex đường dẫn (mỗi dòng một mục)", "Path:": "Đường dẫn:", "Pay": "Pay", "Pay-as-you-go with real-time usage monitoring": "Thanh toán theo mức sử dụng với theo dõi mức sử dụng theo thời gian thực", "Payment Channel": "Kênh thanh toán", "Payment Gateway": "Cổng thanh toán", - "Payment Method": "Phương thức thanh toán", - "Payment Methods": "Phương thức thanh toán", "Payment initiated": "Đã khởi tạo thanh toán", + "Payment Method": "Phương thức thanh toán", "Payment method name": "Tên phương thức thanh toán", "Payment method name is required": "Tên phương thức thanh toán là bắt buộc", "Payment method type": "Loại phương thức thanh toán", "Payment method type is required": "Loại phương thức thanh toán là bắt buộc", "Payment methods": "Phương thức thanh toán", + "Payment Methods": "Phương thức thanh toán", "Payment page opened": "Đã mở trang thanh toán", "Payment request failed": "Yêu cầu thanh toán thất bại", "Payment return URL": "URL trả về thanh toán", "Pending": "Đang chờ", + "per": "per", "Per 1K tokens": "Mỗi 1K tokens", "Per 1M tokens": "Mỗi 1M tokens", - "Per Request": "Theo yêu cầu", + "per request": "theo yêu cầu", "Per request": "Mỗi yêu cầu", + "Per Request": "Theo yêu cầu", "Per-call": "Mỗi lần gọi", "Per-feature metered windows split by model or capability.": "Cửa sổ tính phí theo từng tính năng, tách theo mô hình hoặc năng lực.", "Per-request (fixed price)": "Theo yêu cầu (giá cố định)", @@ -2433,14 +2623,15 @@ "Perplexity": "Sự bối rối", "Persist your data file": "Lưu trữ tệp dữ liệu của bạn", "Personal": "Cá nhân", - "Personal Center Area": "Khu vực cá nhân", - "Personal Settings": "Cài đặt cá nhân", "Personal area": "Khu vực cá nhân", + "Personal Center Area": "Khu vực cá nhân", "Personal info settings": "Cài đặt thông tin cá nhân", + "Personal Settings": "Cài đặt cá nhân", "Personal settings and profile management.": "Cài đặt cá nhân và quản lý hồ sơ.", "Personal use": "Sử dụng cá nhân", "Personal use mode": "Chế độ sử dụng cá nhân", "Pick a date": "Chọn ngày", + "Pick colors from the palette or enter CSS color values manually.": "Chọn màu từ bảng màu hoặc nhập thủ công giá trị màu CSS.", "Ping Interval (seconds)": "Thời gian Ping (giây)", "Plan": "Gói", "Plan Name": "Tên gói", @@ -2451,29 +2642,28 @@ "Playground": "Sân chơi", "Playground and chat functions": "Chức năng sân chơi và trò chuyện", "Playground experiments and live conversations.": "Các thí nghiệm Playground và trò chuyện trực tiếp.", - "Please Select user groups that can access this channel.": "Vui lòng chọn nhóm người dùng có thể truy cập kênh này.", "Please agree to the legal terms first": "Vui lòng đồng ý với các điều khoản pháp lý trước", "Please complete the security check to continue.": "Vui lòng hoàn thành kiểm tra bảo mật để tiếp tục.", "Please confirm that you understand the consequences": "Vui lòng xác nhận rằng bạn hiểu hậu quả", - "Please enable Two-factor Authentication or Passkey before proceeding": "Vui lòng bật Xác thực hai yếu tố hoặc Passkey trước khi tiếp tục", "Please enable io.net model deployment service and configure an API key in System Settings.": "Vui lòng bật dịch vụ triển khai mô hình io.net và cấu hình khóa API trong Cài đặt hệ thống.", - "Please enter API key first": "Vui lòng nhập khóa API trước", - "Please enter a Well-Known URL first": "Vui lòng nhập URL Well-Known trước", + "Please enable Two-factor Authentication or Passkey before proceeding": "Vui lòng bật Xác thực hai yếu tố hoặc Passkey trước khi tiếp tục", "Please enter a name": "Vui lòng nhập tên", "Please enter a new password": "Vui lòng nhập mật khẩu mới", "Please enter a redemption code": "Vui lòng nhập mã đổi thưởng", "Please enter a valid duration": "Vui lòng nhập thời lượng hợp lệ", "Please enter a valid email address": "Vui lòng nhập địa chỉ email hợp lệ", "Please enter a valid number": "Vui lòng nhập một số hợp lệ", + "Please enter a Well-Known URL first": "Vui lòng nhập URL Well-Known trước", "Please enter amount": "Vui lòng nhập số tiền", "Please enter an administrator username": "Vui lòng nhập tên người dùng quản trị viên", + "Please enter API key first": "Vui lòng nhập khóa API trước", "Please enter chat client name": "Vui lòng nhập tên ứng dụng chat", "Please enter email and verification code": "Vui lòng nhập email và mã xác thực", "Please enter keys first": "Vui lòng nhập các khóa trước", "Please enter model name": "Vui lòng nhập ID hoặc tên mô hình.", "Please enter plan title": "Vui lòng nhập tên gói", - "Please enter the URL": "Vui lòng nhập URL", "Please enter the authentication code.": "Vui lòng nhập mã xác thực.", + "Please enter the URL": "Vui lòng nhập URL", "Please enter the verification code": "Vui lòng nhập mã xác minh", "Please enter your current password": "Vui lòng nhập mật khẩu hiện tại của bạn", "Please enter your email": "Vui lòng nhập email của bạn", @@ -2490,6 +2680,7 @@ "Please select at least one channel": "Vui lòng chọn ít nhất một kênh", "Please select at least one model": "Vui lòng chọn ít nhất một mô hình", "Please select items to delete": "Vui lòng chọn các mục để xóa", + "Please Select user groups that can access this channel.": "Vui lòng chọn nhóm người dùng có thể truy cập kênh này.", "Please set Ollama API Base URL first": "Vui lòng đặt URL cơ sở API Ollama trước", "Please try again later.": "Vui lòng thử lại sau.", "Please upload key file(s)": "Vui lòng tải lên (các) tệp khóa", @@ -2506,8 +2697,8 @@ "PostgreSQL offers strong reliability guarantees. Double check your maintenance window and retention policies before going live.": "PostgreSQL cung cấp các đảm bảo độ tin cậy cao. Hãy kiểm tra kỹ lưỡng cửa sổ bảo trì và các chính sách lưu giữ của bạn trước khi vận hành chính thức.", "Powerful API Management Platform": "Nền tảng Quản lý API mạnh mẽ", "Pre-Consume for Free Models": "Dùng trước các mô hình miễn phí", - "Pre-Consumed Quota": "Hạn mức đã tiêu thụ trước", "Pre-consumed": "Khấu trừ trước", + "Pre-Consumed Quota": "Hạn mức đã tiêu thụ trước", "Preference saved as {{pref}}, but no active subscription. Wallet will be used automatically.": "Tùy chọn đã lưu là {{pref}}, nhưng không có gói đăng ký đang hoạt động. Ví sẽ được sử dụng tự động.", "Preferences": "Tùy chọn", "Prefill Group Management": "Quản lý Nhóm Điền sẵn", @@ -2527,9 +2718,9 @@ "Preserve the original field when applying this rule": "Giữ trường gốc khi áp dụng quy tắc này", "Preset": "Preset", "Preset Background": "Preset Background", - "Preset Template": "Mẫu cài sẵn", "Preset recharge amounts (JSON array)": "Số tiền nạp đặt trước (mảng JSON)", "Preset recharge amounts displayed to users": "Các mức nạp tiền đặt trước hiển thị cho người dùng", + "Preset Template": "Mẫu cài sẵn", "Preset templates": "Mẫu sẵn", "Press Enter or comma to add tags": "Nhấn Enter hoặc dấu phẩy để thêm thẻ", "Press Enter to use \"{{value}}\"": "Nhấn Enter để dùng \"{{value}}\"", @@ -2542,12 +2733,13 @@ "Price": "Giá", "Price ($/1K calls)": "Giá ($/1K lượt gọi)", "Price (local currency / USD)": "Giá (tiền tệ địa phương / USD)", - "Price ID": "Mã giá", "Price display": "Hiển thị giá", "Price display mode": "Chế độ hiển thị giá", "Price estimation": "Ước tính chi phí", "Price estimation description": "Sau khi hoàn thành loại phần cứng, vị trí triển khai, số lượng bản sao, v.v., giá sẽ được tính toán tự động.", + "Price ID": "Mã giá", "Price mode (USD per 1M tokens)": "Chế độ giá (USD mỗi 1 triệu token)", + "price_xxx": "price_xxx", "Price:": "Giá:", "Price: High to Low": "Giá: Từ cao đến thấp", "Price: Low to High": "Giá: Thấp đến Cao", @@ -2556,11 +2748,11 @@ "Prices vary by usage tier and request conditions": "Giá thay đổi theo bậc dùng và điều kiện yêu cầu", "Pricing": "Giá cả", "Pricing & Display": "Giá cả & Hiển thị", + "Pricing by Group": "Giá theo Nhóm", "Pricing Configuration": "Price configuration", + "Pricing mode": "Chế độ định giá", "Pricing Ratios": "Tỷ lệ định giá", "Pricing Type": "Price type", - "Pricing by Group": "Giá theo Nhóm", - "Pricing mode": "Chế độ định giá", "Primary Model": "Mô hình chính", "Prioritize reusing the last successful channel based on keys extracted from request context (sticky routing)": "Ưu tiên sử dụng lại kênh thành công gần nhất dựa trên các khóa trích xuất từ ngữ cảnh yêu cầu (định tuyến dính)", "Priority": "Ưu tiên", @@ -2576,6 +2768,7 @@ "Product ID is required": "Bắt buộc nhập Product ID", "Product Name": "Tên sản phẩm", "Products": "Sản phẩm", + "Professional": "Chuyên nghiệp", "Professional team providing 24/7 technical support": "Đội ngũ chuyên nghiệp cung cấp hỗ trợ kỹ thuật 24/7", "Profile": "Hồ sơ", "Profile updated successfully": "Hồ sơ đã được cập nhật thành công", @@ -2585,28 +2778,28 @@ "Promotion codes": "Mã khuyến mãi", "Prompt": "Lời nhắc", "Prompt (EN)": "Lời nhắc (EN)", + "Prompt cache ratio": "Tỷ lệ bộ nhớ đệm lời nhắc", "Prompt Caching": "Bộ đệm lời nhắc", "Prompt Details": "Chi tiết lời nhắc", - "Prompt cache ratio": "Tỷ lệ bộ nhớ đệm lời nhắc", "Prompt price ($/1M tokens)": "Giá prompt ($/1 triệu token)", "Protect login and registration with Cloudflare Turnstile": "Bảo vệ đăng nhập và đăng ký bằng Cloudflare Turnstile", - "Provide Markdown, HTML, or an external URL for the privacy policy": "Cung cấp Markdown, HTML, hoặc một URL bên ngoài cho chính sách quyền riêng tư", - "Provide Markdown, HTML, or an external URL for the user agreement": "Cung cấp Markdown, HTML, hoặc một URL bên ngoài cho thỏa thuận người dùng", "Provide a JSON object where each key maps to an endpoint definition.": "Cung cấp một đối tượng JSON nơi mỗi khóa ánh xạ đến một định nghĩa điểm cuối.", "Provide a valid URL starting with http:// or https://": "Cung cấp URL hợp lệ bắt đầu bằng http:// hoặc https://", + "Provide Markdown, HTML, or an external URL for the privacy policy": "Cung cấp Markdown, HTML, hoặc một URL bên ngoài cho chính sách quyền riêng tư", + "Provide Markdown, HTML, or an external URL for the user agreement": "Cung cấp Markdown, HTML, hoặc một URL bên ngoài cho thỏa thuận người dùng", "Provide per-category safety overrides as JSON. Use `default` for fallback values.": "Cung cấp các ghi đè an toàn theo từng danh mục dưới dạng JSON. Sử dụng `default` cho các giá trị dự phòng.", "Provide per-model header overrides as JSON. Useful for enabling beta features such as expanded context windows.": "Cung cấp các ghi đè tiêu đề theo từng mô hình dưới dạng JSON. Hữu ích để bật các tính năng beta như cửa sổ ngữ cảnh mở rộng.", "Provider": "Nhà cung cấp", - "Provider Name": "Tên Nhà cung cấp", "Provider created successfully": "Đã tạo nhà cung cấp thành công", "Provider deleted successfully": "Đã xóa nhà cung cấp thành công", + "Provider Name": "Tên Nhà cung cấp", "Provider type (OpenAI, Anthropic, etc.)": "Loại nhà cung cấp (OpenAI, Anthropic, v.v.)", "Provider updated successfully": "Nhà cung cấp đã được cập nhật thành công", "Provider-specific endpoint, account, and compatibility settings.": "Thiết lập endpoint, tài khoản và tương thích riêng cho nhà cung cấp.", "Proxy Address": "Địa chỉ Proxy", "Prune Object Items": "Dọn mục đối tượng", - "Prune Rule (string or JSON object)": "Quy tắc dọn dẹp (chuỗi hoặc đối tượng JSON)", "Prune object items by conditions": "Dọn dẹp các mục đối tượng theo điều kiện", + "Prune Rule (string or JSON object)": "Quy tắc dọn dẹp (chuỗi hoặc đối tượng JSON)", "Publish Date": "Ngày xuất bản", "Published": "Đã xuất bản", "Published:": "Đã xuất bản:", @@ -2614,11 +2807,11 @@ "Pull model": "Tải mô hình", "Pulling...": "Đang tải...", "Pulse": "Pulse", - "Purchase Limit": "Giới hạn mua", - "Purchase Subscription": "Mua gói đăng ký", "Purchase a plan to enjoy model benefits": "Mua gói để tận hưởng quyền lợi mô hình", "Purchase here": "Mua tại đây", + "Purchase Limit": "Giới hạn mua", "Purchase limit reached": "Đã đạt giới hạn mua", + "Purchase Subscription": "Mua gói đăng ký", "QR Code Image URL": "Đường dẫn URL hình ảnh mã QR", "QR code is not configured. Please contact support.": "Mã QR chưa được cấu hình. Vui lòng liên hệ bộ phận hỗ trợ.", "Quantity": "Số lượng", @@ -2628,27 +2821,24 @@ "Querying...": "Đang truy vấn...", "Question": "Câu hỏi", "Queued": "Trong hàng đợi", + "Quick insert common payment methods": "Chèn nhanh các phương thức thanh toán phổ biến", "Quick Range": "Phạm vi nhanh", "Quick Setup from Preset": "Thiết lập nhanh từ cấu hình sẵn", - "Quick insert common payment methods": "Chèn nhanh các phương thức thanh toán phổ biến", "Quota": "Hạn ngạch", "Quota ({{currency}})": "Hạn mức ({{currency}})", - "Quota Distribution": "Phân bổ hạn ngạch", - "Quota Per Unit": "Định mức mỗi đơn vị", - "Quota Reset": "Đặt lại hạn mức", - "Quota Settings": "Cài đặt Hạn mức", - "Quota Types": "Các loại hạn ngạch", - "Quota Warning Threshold": "Ngưỡng cảnh báo hạn mức", "Quota adjusted successfully": "Điều chỉnh hạn mức thành công", "Quota consumed before charging users": "Hạn mức tiêu thụ trước khi tính phí người dùng", + "Quota Distribution": "Phân bổ hạn ngạch", "Quota given to invited users": "Hạn mức được cấp cho người dùng được mời", "Quota given to users who invite others": "Limit for users inviting others", "Quota must be a positive number": "Hạn mức phải là một số dương", + "Quota Per Unit": "Định mức mỗi đơn vị", "Quota reminder (tokens)": "Nhắc nhở hạn mức (token)", + "Quota Reset": "Đặt lại hạn mức", + "Quota Settings": "Cài đặt Hạn mức", + "Quota Types": "Các loại hạn ngạch", + "Quota Warning Threshold": "Ngưỡng cảnh báo hạn mức", "Quota:": "Hạn ngạch:", - "RPM": "RPM", - "RSA Private Key (Production)": "RSA Private Key (Sản xuất)", - "RSA Private Key (Sandbox)": "Khóa riêng RSA (Sandbox)", "Rainbow": "Rainbow", "Random": "Ngẫu nhiên", "Randomly select a key from the pool for each request": "Chọn ngẫu nhiên một khóa từ kho cho mỗi yêu cầu", @@ -2656,16 +2846,16 @@ "Rate Limited": "Giới hạn tốc độ", "Rate Limiting": "Rate limit", "Ratio": "Tỷ lệ", - "Ratio Type": "Rate type", "Ratio applied to audio completions for streaming models.": "Tỷ lệ áp dụng cho các phần hoàn tất âm thanh của các mô hình phát trực tuyến.", "Ratio applied to audio inputs where supported by the upstream model.": "Tỷ lệ áp dụng cho đầu vào âm thanh nếu được mô hình thượng nguồn hỗ trợ.", "Ratio applied when creating cache entries for supported models.": "Hệ số nhân được áp dụng khi tạo mục cache cho các mô hình được hỗ trợ.", "Ratio mode": "Chế độ tỷ lệ", + "Ratio Type": "Rate type", "Ratio: {{value}}": "Tỷ lệ: {{value}}", "Ratios synced successfully": "Tỷ lệ đã đồng bộ thành công", + "Raw expression": "Biểu thức gốc", "Raw JSON": "JSON thô", "Raw Quota": "Hạn mức gốc", - "Raw expression": "Biểu thức gốc", "Re-enable on success": "Kích hoạt lại khi thành công", "Re-login": "Đăng nhập lại", "Ready to initialize": "Sẵn sàng khởi tạo", @@ -2690,29 +2880,31 @@ "Redeem codes": "Đổi mã", "Redeemed By": "Được chuộc bởi", "Redeemed:": "Đã đổi:", + "redemption code": "mã đổi thưởng", "Redemption Code": "Mã đổi thưởng", - "Redemption Codes": "Mã đổi thưởng", "Redemption code deleted successfully": "Mã đổi thưởng đã xóa thành công", "Redemption code disabled successfully": "Mã đổi thưởng đã vô hiệu hóa thành công", "Redemption code enabled successfully": "Mã đổi thưởng đã kích hoạt thành công.", "Redemption code updated successfully": "Mã đổi thưởng đã cập nhật thành công", "Redemption code(s) created successfully": "Mã đổi thưởng đã tạo thành công", + "Redemption Codes": "Mã đổi thưởng", + "redemption codes.": "Mã đổi thưởng", "Redemption failed": "Đổi thưởng thất bại", "Redemption successful! Added: {{quota}}": "Đổi mã thành công! Đã thêm: {{quota}}", + "Redirecting to chat page...": "Đang chuyển hướng đến trang trò chuyện...", "Redirecting to Creem checkout...": "Đang chuyển hướng đến thanh toán Creem...", "Redirecting to GitHub...": "Đang chuyển hướng đến GitHub...", - "Redirecting to chat page...": "Đang chuyển hướng đến trang trò chuyện...", "Redirecting to payment page...": "Đang chuyển hướng đến trang thanh toán...", "Reference Video": "Video tham chiếu", - "Referral Program": "Chương trình Giới thiệu", "Referral link:": "Liên kết giới thiệu:", + "Referral Program": "Chương trình Giới thiệu", "Refine models by provider, group, type, and tags.": "Tinh chỉnh mô hình theo nhà cung cấp, nhóm, loại và thẻ.", "Refresh": "Làm mới", "Refresh Cache": "Làm mới bộ nhớ đệm", - "Refresh Stats": "Làm mới thống kê", "Refresh credential": "Làm mới thông tin xác thực", "Refresh failed": "Làm mới thất bại", "Refresh interval (minutes)": "Khoảng thời gian làm mới (phút)", + "Refresh Stats": "Làm mới thống kê", "Refreshing...": "Đang làm mới...", "Refund": "Hoàn tiền", "Refund Details": "Chi tiết hoàn tiền", @@ -2731,30 +2923,30 @@ "Relying Party Display Name": "Tên Hiển Thị của Bên Tin Cậy", "Relying Party ID": "Định danh Bên phụ thuộc", "Remaining": "Còn lại", - "Remaining Quota ({{currency}})": "Hạn mức còn lại ({{currency}})", "Remaining quota": "Hạn ngạch còn lại", + "Remaining Quota ({{currency}})": "Hạn mức còn lại ({{currency}})", "Remaining quota units": "Đơn vị hạn ngạch còn lại", "Remaining:": "Còn lại:", "Remark": "Nhận xét", "Remove": "Xóa", "Remove ${{amount}}": "Xóa ${{amount}}", - "Remove Duplicates": "Xóa trùng lặp", - "Remove Models": "Xóa mô hình", - "Remove Passkey": "Xóa Khóa truy cập", - "Remove Passkey?": "Xóa khóa truy cập?", "Remove all log entries created before the selected timestamp.": "Xóa tất cả các mục nhật ký được tạo trước mốc thời gian đã chọn.", "Remove attachment": "Xóa tệp đính kèm", "Remove condition": "Gỡ điều kiện", + "Remove Duplicates": "Xóa trùng lặp", "Remove filter": "Xóa bộ lọc", "Remove functionResponse.id field": "Loại bỏ trường functionResponse.id", + "Remove Models": "Xóa mô hình", + "Remove Passkey": "Xóa Khóa truy cập", + "Remove Passkey?": "Xóa khóa truy cập?", "Remove rule group": "Gỡ nhóm quy tắc", "Remove string prefix": "Xóa tiền tố chuỗi", "Remove string suffix": "Xóa hậu tố chuỗi", "Remove the target field": "Xóa trường đích", "Remove tier": "Gỡ bậc", "Removed": "Đã xóa", - "Removed Models ({{count}})": "Các mô hình đã xóa ({{count}})", "Removed {{removed}} duplicate key(s). Before: {{before}}, After: {{after}}": "Đã xóa {{removed}} khóa trùng lặp. Trước: {{before}}, Sau: {{after}}", + "Removed Models ({{count}})": "Các mô hình đã xóa ({{count}})", "Removes Midjourney flags such as --fast, --relax, and --turbo from user prompts.": "Loại bỏ các cờ Midjourney như --fast, --relax và --turbo khỏi lời nhắc của người dùng.", "Removing Passkey will require you to sign in with your password next time. You can re-register anytime.": "Xóa Khóa truy cập sẽ yêu cầu bạn đăng nhập bằng mật khẩu của mình vào lần tới. Bạn có thể đăng ký lại bất cứ lúc nào.", "Rename": "Đổi tên", @@ -2763,19 +2955,25 @@ "Renamed successfully": "Đổi tên thành công", "Repeat the administrator password": "Nhập lại mật khẩu quản trị viên", "Replace": "Thay thế", - "Replace With": "Thay bằng", "Replace all existing keys": "Thay thế tất cả các khóa hiện có", "Replace channel models": "Thay thế mô hình kênh", "Replace mode: Will completely replace all existing keys": "Chế độ Thay thế: Sẽ thay thế hoàn toàn tất cả các khóa hiện có", + "Replace With": "Thay bằng", + "replaced": "thay thế", "Replacement Model": "Replacement model", "Replica count": "Số bản sao", "Replicate": "Sao chép", + "request": "yêu cầu", "Request": "Yêu cầu", "Request Body Disk Cache": "Bộ nhớ đệm đĩa nội dung yêu cầu", "Request Body Field": "Trường thân yêu cầu", "Request Body Memory Cache": "Bộ nhớ đệm RAM nội dung yêu cầu", + "Request body pass-through is enabled. The request body will be sent directly to the upstream without any conversion.": "Chuyển tiếp body yêu cầu đã được bật. Body yêu cầu sẽ được gửi trực tiếp mà không chuyển đổi.", + "Request conversion": "Chuyển đổi yêu cầu", "Request Conversion": "Chuyển đổi yêu cầu", "Request Count": "Number of requests", + "Request failed": "Yêu cầu thất bại", + "Request flow": "Luồng yêu cầu", "Request Header Field": "Trường header yêu cầu", "Request Header Override": "Ghi đè header yêu cầu", "Request Header Overrides": "Ghi đè Tiêu đề Yêu cầu", @@ -2783,15 +2981,12 @@ "Request Limits": "Hạn mức yêu cầu", "Request Model": "Mô hình yêu cầu", "Request Model:": "Mô hình yêu cầu:", - "Request body pass-through is enabled. The request body will be sent directly to the upstream without any conversion.": "Chuyển tiếp body yêu cầu đã được bật. Body yêu cầu sẽ được gửi trực tiếp mà không chuyển đổi.", - "Request conversion": "Chuyển đổi yêu cầu", - "Request failed": "Yêu cầu thất bại", - "Request flow": "Luồng yêu cầu", "Request overrides, routing behavior, and upstream model automation": "Ghi đè yêu cầu, hành vi định tuyến và tự động hóa mô hình upstream", "Request rule pricing": "Quy tắc tính giá theo request", "Request timed out, please refresh and restart GitHub login": "Yêu cầu đã hết thời gian chờ, vui lòng làm mới và đăng nhập lại GitHub", "Request-based": "Theo yêu cầu", "Requests per minute": "Yêu cầu mỗi phút", + "requests served": "yêu cầu đã phục vụ", "Requests will be forwarded to this worker. Trailing slashes are removed automatically.": "Các yêu cầu sẽ được chuyển tiếp đến worker này. Dấu gạch chéo ở cuối được tự động loại bỏ.", "Requests:": "Yêu cầu:", "Require email verification for new accounts": "Yêu cầu xác minh email cho tài khoản mới", @@ -2806,23 +3001,23 @@ "Resend ({{seconds}}s)": "Gửi lại ({{seconds}}s)", "Reset": "Đặt lại", "Reset 2FA": "Đặt lại 2FA", - "Reset Cycle": "Chu kỳ đặt lại", - "Reset Passkey": "Đặt lại Khóa truy cập", - "Reset Period": "Chu kỳ đặt lại", - "Reset Stats": "Đặt lại thống kê", - "Reset Two-Factor Authentication": "Đặt lại Xác thực hai yếu tố", "Reset all model ratios?": "Đặt lại tất cả tỷ lệ mô hình?", "Reset all settings to default values": "Đặt lại tất cả cài đặt về giá trị mặc định", "Reset at:": "Đặt lại lúc:", "Reset balance and used quota": "Đặt lại số dư và hạn mức đã sử dụng", + "Reset Cycle": "Chu kỳ đặt lại", "Reset email sent, please check your inbox": "Email đặt lại đã được gửi, vui lòng kiểm tra hộp thư đến", "Reset failed": "Đặt lại thất bại", + "Reset Passkey": "Đặt lại Khóa truy cập", "Reset password": "Đặt lại mật khẩu", + "Reset Period": "Chu kỳ đặt lại", "Reset ratios": "Đặt lại tỷ lệ", - "Reset to Default": "Đặt lại mặc định", + "Reset Stats": "Đặt lại thống kê", "Reset to default": "Đặt lại mặc định", + "Reset to Default": "Đặt lại mặc định", "Reset to default color": "Đặt lại màu mặc định", "Reset to default configuration": "Đã đặt lại cấu hình mặc định", + "Reset Two-Factor Authentication": "Đặt lại Xác thực hai yếu tố", "Resets in:": "Đặt lại sau:", "Resolve Conflicts": "Giải quyết Xung đột", "Resource Configuration": "Cấu hình tài nguyên", @@ -2837,9 +3032,9 @@ "Retry Chain": "Chuỗi thử lại", "Retry Suggestion": "Gợi ý thử lại", "Retry Times": "Số lần thử lại", + "Return a custom error immediately": "Trả về lỗi tùy chỉnh ngay lập tức", "Return Custom Error": "Trả lỗi tùy chỉnh", "Return Error": "Trả về lỗi", - "Return a custom error immediately": "Trả về lỗi tùy chỉnh ngay lập tức", "Return to dashboard": "Quay lại bảng điều khiển", "Reveal API key": "Hiển thị khóa API", "Reveal key": "Display key", @@ -2859,9 +3054,10 @@ "Routing & Overrides": "Định tuyến & ghi đè", "Routing Strategy": "Chiến lược định tuyến", "Rows per page": "Số hàng trên trang", + "RPM": "RPM", + "RSA Private Key (Production)": "RSA Private Key (Sản xuất)", + "RSA Private Key (Sandbox)": "Khóa riêng RSA (Sandbox)", "Rule": "Quy tắc", - "Rule Description (optional)": "Mô tả quy tắc (tùy chọn)", - "Rule group": "Nhóm quy tắc", "Rule {{line}} is missing source field": "Quy tắc {{line}} thiếu trường nguồn", "Rule {{line}} is missing target field": "Quy tắc {{line}} thiếu trường đích", "Rule {{line}} is missing target path": "Quy tắc {{line}} thiếu đường dẫn đích", @@ -2870,37 +3066,29 @@ "Rule {{line}} pass_headers is missing header names": "pass_headers của quy tắc {{line}} thiếu tên header", "Rule {{line}} prune_objects is missing conditions": "prune_objects của quy tắc {{line}} thiếu điều kiện", "Rule {{line}} return_error requires a message field": "return_error của quy tắc {{line}} cần trường message", + "Rule Description (optional)": "Mô tả quy tắc (tùy chọn)", + "Rule group": "Nhóm quy tắc", + "rules": "quy tắc", "Rules": "Quy tắc", "Rules JSON": "JSON quy tắc", "Rules JSON must be an array": "JSON quy tắc phải là một mảng", "Run GC": "Chạy GC", "Run tests for the selected models": "Chạy kiểm thử cho các mô hình đã chọn", "Running": "Đang chạy", - "SMTP Email": "Email SMTP", - "SMTP Host": "Máy chủ SMTP", - "SQLite stores all data in a single file. Make sure that file is persisted when running in containers.": "SQLite lưu trữ tất cả dữ liệu trong một tệp duy nhất. Đảm bảo tệp được lưu trữ lâu dài khi chạy trong container.", - "SSRF Protection": "Bảo vệ SSRF", + "s": "s", "Safety Settings": "Cài đặt an toàn", "Same as Local": "Giống như địa phương", "Sandbox mode": "Chế độ sandbox", "Save": "Lưu", - "Save Backup Codes": "Lưu mã dự phòng", - "Save Changes": "Lưu Thay đổi", - "Save Creem settings": "Lưu cài đặt Creem", - "Save Epay settings": "Lưu cài đặt Epay", - "Save Models": "Lưu Mô hình", - "Save Preferences": "Lưu tùy chọn", - "Save SMTP settings": "Lưu cài đặt SMTP", - "Save SSRF settings": "Lưu cài đặt SSRF", - "Save Settings": "Lưu Cài đặt", - "Save Stripe settings": "Lưu cài đặt Stripe", - "Save Waffo Pancake settings": "Lưu cài đặt Waffo Pancake", - "Save Worker settings": "Lưu cài đặt Worker", "Save all settings": "Lưu tất cả cài đặt", + "Save Backup Codes": "Lưu mã dự phòng", "Save changes": "Lưu thay đổi", + "Save Changes": "Lưu Thay đổi", "Save chat settings": "Lưu cài đặt trò chuyện", "Save check-in settings": "Lưu cài đặt điểm danh", + "Save Creem settings": "Lưu cài đặt Creem", "Save drawing settings": "Lưu cài đặt bản vẽ", + "Save Epay settings": "Lưu cài đặt Epay", "Save failed": "Lưu thất bại", "Save failed, please retry": "Lưu thất bại, vui lòng thử lại", "Save general settings": "Lưu cài đặt chung", @@ -2908,23 +3096,33 @@ "Save io.net settings": "Lưu cài đặt io.net", "Save log settings": "Lưu cài đặt nhật ký", "Save model ratios": "Lưu tỷ lệ mô hình", + "Save Models": "Lưu Mô hình", "Save monitoring rules": "Lưu quy tắc giám sát", "Save navigation": "Lưu điều hướng", "Save notice": "Lưu thông báo", + "Save Preferences": "Lưu tùy chọn", "Save rate limits": "Lưu giới hạn tốc độ", "Save sensitive words": "Lưu từ nhạy cảm", + "Save Settings": "Lưu Cài đặt", "Save sidebar modules": "Lưu các mô-đun thanh bên", + "Save SMTP settings": "Lưu cài đặt SMTP", + "Save SSRF settings": "Lưu cài đặt SSRF", + "Save Stripe settings": "Lưu cài đặt Stripe", "Save these backup codes in a safe place. Each code can only be used once.": "Lưu các mã dự phòng này ở nơi an toàn. Mỗi mã chỉ được sử dụng một lần.", "Save these codes in a safe place. Each code can only be used once.": "Hãy lưu các mã này ở nơi an toàn. Mỗi mã chỉ có thể được sử dụng một lần.", "Save tool prices": "Lưu giá công cụ", + "Save Waffo Pancake settings": "Lưu cài đặt Waffo Pancake", + "Save Worker settings": "Lưu cài đặt Worker", "Saved successfully": "Lưu thành công", "Saving...": "Đang lưu...", "Scan QR Code": "Quét mã QR", "Scan the QR code to follow the official account and reply with “验证码” to receive your verification code.": "Quét mã QR để theo dõi tài khoản chính thức, trả lời « 验证码 » để nhận mã xác minh.", "Scan the QR code with WeChat to bind your account": "Quét mã QR bằng WeChat để liên kết tài khoản của bạn", "Scan this QR code with your authenticator app (Google Authenticator, Microsoft Authenticator, etc.)": "Quét mã QR này bằng ứng dụng xác thực của bạn (Google Authenticator, Microsoft Authenticator, v.v.)", + "Scanline": "Vạch quét", "Scenario Templates": "Mẫu kịch bản", "Scheduled channel tests": "Kiểm tra kênh theo lịch trình", + "scheduling controls": "điều khiển điều phối", "Scope": "Phạm vi", "Scopes": "Phạm vi", "Search": "Tìm kiếm", @@ -2952,19 +3150,15 @@ "Search tags...": "Tìm thẻ...", "Search vendors...": "Tìm nhà cung cấp...", "Search...": "Tìm kiếm...", - "Secret Key": "Khóa bí mật", + "seconds": "giây", "Secret env (JSON object)": "Biến môi trường bí mật (đối tượng JSON)", "Secret environment variables (JSON)": "Biến môi trường bí mật (JSON)", + "Secret Key": "Khóa bí mật", "Secure & Reliable": "An toàn & Đáng tin cậy", "Security": "Bảo mật", "Security Check": "Kiểm tra bảo mật", "Security verification": "Xác minh bảo mật", "Select": "Chọn", - "Select All Visible": "Chọn tất cả hiển thị", - "Select Language": "Chọn Ngôn ngữ", - "Select Model": "Chọn mẫu", - "Select Sync Channels": "Chọn Kênh đồng bộ", - "Select Sync Source": "Chọn Nguồn Đồng Bộ", "Select a color": "Chọn một màu", "Select a group": "Chọn một nhóm", "Select a group type": "Chọn loại nhóm", @@ -2977,6 +3171,7 @@ "Select all": "Chọn tất cả", "Select all (filtered)": "Chọn tất cả (đã lọc)", "Select all models": "Chọn tất cả mô hình", + "Select All Visible": "Chọn tất cả hiển thị", "Select an operation mode and enter the amount": "Chọn chế độ thao tác và nhập số tiền", "Select announcement type": "Select notification type", "Select at least one field to overwrite.": "Chọn ít nhất một trường để ghi đè.", @@ -2994,8 +3189,10 @@ "Select items...": "Chọn các mục...", "Select key format": "Chọn định dạng khóa", "Select language": "Chọn ngôn ngữ", + "Select Language": "Chọn Ngôn ngữ", "Select layout style": "Chọn kiểu bố cục", "Select locations": "Chọn vị trí", + "Select Model": "Chọn mẫu", "Select models (empty for allow all)": "Chọn model (để trống nếu muốn cho", "Select models and apply to channel models list.": "Chọn mô hình và áp dụng cho danh sách mô hình kênh.", "Select models or add custom ones": "Chọn các mô hình hoặc thêm các mô hình tùy chỉnh", @@ -3013,14 +3210,18 @@ "Select site direction": "Chọn hướng trang", "Select start time": "Chọn thời gian bắt đầu", "Select subscription plan": "Chọn gói đăng ký", + "Select Sync Channels": "Chọn Kênh đồng bộ", "Select sync channels to compare prices": "Chọn kênh đồng bộ để so sánh giá", "Select sync channels to compare ratios": "Chọn kênh đồng bộ để so sánh tỷ lệ", + "Select Sync Source": "Chọn Nguồn Đồng Bộ", "Select the API endpoint region": "Chọn khu vực điểm cuối API", "Select the fields you want to overwrite with upstream data. Unselected fields keep their local values.": "Chọn các trường bạn muốn ghi đè bằng dữ liệu thượng nguồn. Các trường không được chọn sẽ giữ nguyên giá trị cục bộ của chúng.", "Select theme preference": "Chọn chủ đề ưu tiên", "Select time granularity": "Chọn độ chi tiết thời gian", "Select vendor": "Chọn nhà cung cấp", "Selectable groups": "Nhóm có thể chọn", + "selected": "đã chọn", + "selected channel(s). Leave empty to remove tag.": "Kênh đã chọn. Để trống để xóa thẻ.", "Selected conflicts were overwritten successfully.": "Các xung đột được chọn đã được ghi đè thành công.", "Self-Use Mode": "Chế độ tự sử dụng", "Send": "Gửi", @@ -3033,26 +3234,26 @@ "Server Address": "Địa chỉ máy chủ", "Server IP": "IP máy chủ", "Server Log Management": "Quản lý nhật ký máy chủ", - "Server Token": "Mã thông báo máy chủ", "Server logging is not enabled (log directory not configured)": "Nhật ký máy chủ chưa được bật (chưa cấu hình thư mục nhật ký)", + "Server Token": "Mã thông báo máy chủ", "Service account JSON file(s)": "Tệp JSON tài khoản dịch vụ", "Session expired!": "Phiên hết hạn!", "Session expired?": "Phiên đã hết hạn?", "Set": "Đặt", - "Set API key access restrictions": "Thiết lập hạn chế truy cập cho khóa API", - "Set API key basic information": "Thiết lập thông tin cơ bản cho khóa API", - "Set Field": "Đặt trường", - "Set Header": "Đặt tiêu đề", - "Set Project to io.cloud when creating/selecting key": "Đặt Dự án thành io.cloud khi tạo/chọn khóa", - "Set Request Header": "Đặt header yêu cầu", - "Set Tag": "Gán Thẻ", "Set a discount rate for a specific recharge amount threshold.": "Đặt tỷ lệ chiết khấu cho một ngưỡng số tiền nạp cụ thể.", "Set a secure password (min. 8 characters)": "Đặt mật khẩu an toàn (tối thiểu 8 ký tự)", "Set a tag for": "Gắn thẻ cho", + "Set API key access restrictions": "Thiết lập hạn chế truy cập cho khóa API", + "Set API key basic information": "Thiết lập thông tin cơ bản cho khóa API", + "Set Field": "Đặt trường", "Set filters to customize your dashboard statistics and charts.": "Đặt bộ lọc để tùy chỉnh số liệu thống kê và biểu đồ trên bảng điều khiển của bạn.", "Set filters to narrow down your log search results.": "Đặt bộ lọc để thu hẹp kết quả tìm kiếm nhật ký của bạn.", + "Set Header": "Đặt tiêu đề", + "Set Project to io.cloud when creating/selecting key": "Đặt Dự án thành io.cloud khi tạo/chọn khóa", "Set quota amount and limits": "Thiết lập hạn mức và giới hạn", + "Set Request Header": "Đặt header yêu cầu", "Set runtime request header: override entire value, or manipulate comma-separated tokens": "Đặt header yêu cầu runtime: ghi đè toàn bộ giá trị hoặc thao tác token phân cách bằng dấu phẩy", + "Set Tag": "Gán Thẻ", "Set tag for selected channels": "Đặt thẻ cho các kênh đã chọn", "Set the language used across the interface": "Đặt ngôn ngữ sử dụng trong giao diện", "Set the user's role (cannot be Root)": "Đặt vai trò của người dùng (không được là Root)", @@ -3076,12 +3277,13 @@ "Show token usage statistics in the UI": "Hiển thị thống kê sử dụng token trong giao diện người dùng", "Showcase core capabilities with demo credentials and limited access.": "Trình diễn các tính năng cốt lõi với thông tin đăng nhập demo và quyền truy cập hạn chế.", "Showing": "Đang hiển thị", + "showing •": "hiển thị •", "Sidebar": "Thanh bên", - "Sidebar Personal Settings": "Cài đặt cá nhân thanh bên", "Sidebar collapsed by default for new users": "Thanh bên được thu gọn theo mặc định đối với người dùng mới", "Sidebar modules": "Mô-đun thanh bên", - "Sign In": "Đăng nhập", + "Sidebar Personal Settings": "Cài đặt cá nhân thanh bên", "Sign in": "Đăng nhập", + "Sign In": "Đăng nhập", "Sign in with Passkey": "Đăng nhập bằng Passkey", "Sign out": "Đăng xuất", "Sign up": "Đăng ký", @@ -3098,6 +3300,7 @@ "Single Key": "Khóa đơn", "Site Key": "Khóa trang web", "Size:": "Kích thước:", + "sk_xxx or rk_xxx": "sk_xxx hoặc rk_xxx", "Skip retry on failure": "Không thử lại khi thất bại", "Skip to Main": "Bỏ qua đến nội dung chính", "Slow": "Slow", @@ -3106,6 +3309,11 @@ "Slug is required": "Slug là bắt buộc", "Slug must be less than 100 characters": "Slug phải ít hơn 100 ký tự", "Smallest USD amount users can recharge (Epay)": "Số tiền USD tối thiểu người dùng có thể nạp (Epay)", + "SMTP Email": "Email SMTP", + "SMTP Host": "Máy chủ SMTP", + "smtp.example.com": "smtp.example.com", + "socks5://user:pass@host:port": "socks5://user:pass@host:port", + "Soft": "Nhẹ", "Soft Errors": "Lỗi mềm", "Solid": "Solid", "Solid Color": "Solid Color", @@ -3114,22 +3322,27 @@ "Sonnet Model": "Mô hình Sonnet", "Sora": "Sora", "Sort": "Sắp xếp", - "Sort Order": "Thứ tự sắp xếp", "Sort by ID": "Sắp xếp theo ID", + "Sort Order": "Thứ tự sắp xếp", "Source": "Nguồn", "Source Endpoint": "Điểm nguồn", "Source Field": "Trường nguồn", "Source Header": "Header nguồn", + "sources": "nguồn", "Space-separated OAuth scopes": "Phạm vi OAuth phân cách bằng dấu cách", "Spark model version, e.g., v2.1 (version number in API URL)": "Phiên bản mô hình Spark, ví dụ: v2.1 (số phiên bản trong URL API)", "Special billing expression": "Biểu thức tính phí đặc biệt", "Special usable group rules": "Quy tắc nhóm sử dụng đặc biệt", "Speed": "Speed", + "Spotlight": "Tiêu điểm", + "SQLite stores all data in a single file. Make sure that file is persisted when running in containers.": "SQLite lưu trữ tất cả dữ liệu trong một tệp duy nhất. Đảm bảo tệp được lưu trữ lâu dài khi chạy trong container.", + "SSRF Protection": "Bảo vệ SSRF", "Standard": "Tiêu chuẩn", "Start": "Bắt đầu", - "Start Time": "Thời gian bắt đầu", "Start a conversation to see messages here": "Bắt đầu một cuộc trò chuyện để xem tin nhắn tại đây", + "Start color": "Màu bắt đầu", "Start for free with generous limits. No credit card required.": "Bắt đầu miễn phí với giới hạn hào phóng. Không cần thẻ tín dụng.", + "Start Time": "Thời gian bắt đầu", "Static Gradient": "Static Gradient", "Static page describing the platform.": "Trang tĩnh mô tả nền tảng.", "Statistical count": "Số đếm thống kê", @@ -3150,6 +3363,7 @@ "Store ID": "Mã cửa hàng", "Store ID is required": "Bắt buộc nhập Store ID", "Stored value is not echoed back for security": "Vì bảo mật, giá trị đã lưu không được hiển thị lại", + "stream": "dòng", "Stream": "Luồng", "Stream Mode": "Chế độ streaming", "Stream Status": "Trạng thái luồng", @@ -3161,9 +3375,9 @@ "Stripe product price ID": "ID giá sản phẩm Stripe", "Stripe/Creem requires creating products on the third-party platform and entering the ID": "Stripe/Creem yêu cầu tạo sản phẩm trên nền tảng bên thứ ba và nhập ID", "Submit": "Gửi", + "Submit directly": "Gửi trực tiếp", "Submit Result": "Gửi Kết quả", "Submit Time": "Thời gian gửi", - "Submit directly": "Gửi trực tiếp", "Submitted": "Đã gửi", "Submitting": "Đang gửi", "Submitting...": "Đang gửi...", @@ -3177,6 +3391,7 @@ "Subscription Plans": "Gói đăng ký", "Subtract": "Trừ", "Success": "Thành công", + "Success Soft": "Thành công nhẹ", "Successfully created {{count}} API Key(s)": "Đã tạo thành công {{count}} khóa API", "Successfully created {{count}} redemption codes": "Đã tạo thành công {{count}} mã đổi thưởng", "Successfully deleted {{count}} API key(s)": "Đã xóa thành công {{count}} khóa API", @@ -3191,9 +3406,9 @@ "Support for high concurrency with automatic load balancing": "Hỗ trợ đồng thời cao với cân bằng tải tự động", "Supported Imagine Models": "Mô hình Imagine được hỗ trợ", "Supported variables": "Biến được hỗ trợ", + "Supports `-thinking`, `-thinking-": "Hỗ trợ `-thinking`, `-thinking-", "Supports HTML markup or iframe embedding. Enter HTML code directly, or provide a complete URL to automatically embed it as an iframe.": "Hỗ trợ đánh dấu HTML hoặc nhúng iframe. Nhập mã HTML trực tiếp, hoặc cung cấp một URL đầy đủ để tự động nhúng nó dưới dạng một iframe.", "Supports PNG, JPG, SVG, or WebP. Recommended size: 128×128 or smaller.": "Hỗ trợ PNG, JPG, SVG hoặc WebP. Kích thước khuyến nghị: 128×128 hoặc nhỏ hơn.", - "Supports `-thinking`, `-thinking-": "Hỗ trợ `-thinking`, `-thinking-", "Swap Face": "Đổi mặt", "Switch affinity on success": "Chuyển ưu tiên khi thành công", "Switch between the new frontend and the classic frontend. Changes take effect after page reload.": "Chuyển đổi giữa frontend mới và frontend cổ điển. Thay đổi có hiệu lực sau khi tải lại trang.", @@ -3202,39 +3417,35 @@ "Sync Endpoint": "Điểm cuối đồng bộ", "Sync Endpoints": "Điểm đồng bộ", "Sync Fields": "Đồng bộ trường", - "Sync Upstream": "Đồng bộ nguồn", - "Sync Upstream Models": "Đồng bộ các mô hình nguồn", "Sync from the public upstream metadata repository.": "Đồng bộ từ kho lưu trữ siêu dữ liệu upstream công khai.", "Sync this model with official upstream": "Synchronize this model with the official source.", + "Sync Upstream": "Đồng bộ nguồn", + "Sync Upstream Models": "Đồng bộ các mô hình nguồn", "Synchronize models and vendors from an upstream source": "Đồng bộ hóa các mô hình và nhà cung cấp từ một nguồn thượng nguồn", "Syncing prices, please wait...": "Đang đồng bộ giá, vui lòng đợi...", "System": "Hệ thống", "System Administration": "Quản trị hệ thống", "System Announcements": "Thông báo hệ thống", "System Behavior": "Hành vi hệ thống", + "System data statistics": "Thống kê dữ liệu hệ thống", "System Information": "Thông tin hệ thống", + "System initialized successfully! Redirecting…": "Hệ thống đã được khởi tạo thành công! Đang chuyển hướng…", + "System logo": "Logo hệ thống", + "System maintenance": "Bảo trì hệ thống", "System Memory": "Bộ nhớ hệ thống", "System Memory Stats": "Thống kê bộ nhớ hệ thống", "System Name": "Tên hệ thống", + "System name is required": "Tên hệ thống là bắt buộc", "System Notice": "Thông báo hệ thống", "System Performance Monitoring": "Giám sát hiệu suất hệ thống", "System Prompt": "Lời nhắc hệ thống", "System Prompt Concatenation": "Ghép nối Lời nhắc Hệ thống", "System Prompt Override": "Ghi đè prompt hệ thống", - "System Settings": "Cài đặt hệ thống", - "System Version": "Phiên bản hệ thống", - "System data statistics": "Thống kê dữ liệu hệ thống", - "System initialized successfully! Redirecting…": "Hệ thống đã được khởi tạo thành công! Đang chuyển hướng…", - "System logo": "Logo hệ thống", - "System maintenance": "Bảo trì hệ thống", - "System name is required": "Tên hệ thống là bắt buộc", "System settings": "Cài đặt hệ thống", + "System Settings": "Cài đặt hệ thống", "System setup wizard": "Trình hướng dẫn thiết lập hệ thống", "System task records": "Lịch sử tác vụ hệ thống", - "TPM": "TPM", - "TTL": "TTL", - "TTL (seconds)": "TTL (giây)", - "TTL (seconds, 0 = default)": "TTL (giây, 0 = mặc định)", + "System Version": "Phiên bản hệ thống", "Table view": "Xem dạng bảng", "Tag": "Tag", "Tag Aggregate": "Tổng hợp thẻ", @@ -3249,19 +3460,19 @@ "Target Endpoint": "Điểm đích", "Target Field": "Trường đích", "Target Field Path": "Đường dẫn trường đích", + "Target group": "Target audience", "Target Header": "Header đích", "Target Path (optional)": "Đường dẫn đích (tùy chọn)", - "Target group": "Target audience", "Task": "Nhiệm vụ", "Task ID": "Mã nhiệm vụ", "Task ID:": "ID nhiệm vụ:", - "Task Logs": "Nhật ký tác vụ", "Task logs": "Nhật ký tác vụ", + "Task Logs": "Nhật ký tác vụ", "Team Collaboration": "Teamwork", "Technical Support": "Hỗ trợ kỹ thuật", "Telegram": "Telegram", - "Telegram Login Widget": "Tiện ích đăng nhập Telegram", "Telegram login requires widget integration; coming soon": "Đăng nhập Telegram yêu cầu tích hợp widget; sắp ra mắt", + "Telegram Login Widget": "Tiện ích đăng nhập Telegram", "Template": "Mẫu", "Template variables:": "Biến mẫu:", "Templates": "Mẫu", @@ -3271,17 +3482,16 @@ "Test All Channels": "Kiểm tra tất cả các kênh", "Test Channel Connection": "Check channel connection", "Test Connection": "Kiểm tra kết nối", + "Test connectivity for:": "Kiểm tra kết nối cho:", + "Test interval (minutes)": "Khoảng thời gian kiểm tra (phút)", "Test Latency": "Kiểm tra độ trễ", "Test Mode": "Chế độ thử nghiệm", "Test Model": "Kiểm tra Mô hình", - "Test connectivity for:": "Kiểm tra kết nối cho:", - "Test interval (minutes)": "Khoảng thời gian kiểm tra (phút)", "Testing all enabled channels started. Please refresh to see results.": "Bắt đầu kiểm tra tất cả các kênh đã kích hoạt. Vui lòng làm mới để xem kết quả.", "Testing...": "Đang kiểm tra...", "Text Input": "Đầu vào văn bản", "Text Output": "Đầu ra văn bản", "Text to Video": "Văn bản sang video", - "The URL for this chat client.": "URL của ứng dụng chat này.", "The administrator account is already initialized. You can keep your existing credentials and continue to the next step.": "Tài khoản quản trị viên đã được khởi tạo. Bạn có thể giữ nguyên thông tin đăng nhập hiện có của mình và tiếp tục sang bước tiếp theo.", "The administrator configured an external link for this document.": "Người quản trị đã cấu hình một liên kết ngoài cho tài liệu này.", "The administrator has not configured a privacy policy yet.": "Quản trị viên chưa cấu hình chính sách bảo mật.", @@ -3304,6 +3514,7 @@ "The token group that will have a custom ratio": "The token group will have a custom ratio.", "The unique identifier for this model": "Mã định danh duy nhất cho mô hình này", "The unique name for this vendor": "Tên duy nhất cho nhà cung cấp này", + "The URL for this chat client.": "URL của ứng dụng chat này.", "Theme": "Chủ đề", "Theme Color": "Màu chủ đề", "Theme Settings": "Cài đặt chủ đề", @@ -3312,8 +3523,8 @@ "These toggles affect whether certain request fields are passed through to the upstream provider.": "Các chuyển đổi này ảnh hưởng đến việc các trường yêu cầu nhất định có được chuyển đến nhà cung cấp dịch vụ đầu vào hay không.", "Thinking Adapter": "Adapter tư duy", "Thinking to Content": "Suy nghĩ thành Nội dung", - "Third-party Payment Config": "Cấu hình thanh toán bên thứ ba", "Third-party account bindings (read-only, managed by user in profile settings)": "Liên kết tài khoản bên thứ ba (chỉ đọc, do người dùng quản lý trong cài đặt hồ sơ)", + "Third-party Payment Config": "Cấu hình thanh toán bên thứ ba", "This action cannot be undone.": "Hành động này không thể hoàn tác.", "This action cannot be undone. This will permanently delete your account and remove all your data from our servers.": "Hành động này không thể hoàn tác. Việc này sẽ xóa vĩnh viễn tài khoản của bạn và loại bỏ tất cả dữ liệu của bạn khỏi máy chủ của chúng tôi.", "This action will permanently remove 2FA protection from your account.": "Hành động này sẽ vĩnh viễn gỡ bỏ tính năng bảo vệ", @@ -3330,10 +3541,13 @@ "This model has both fixed price and ratio billing conflicts": "Mô hình này có cả mâu thuẫn về thanh toán theo giá cố định và theo tỷ lệ.", "This model is not available in any group, or no group pricing information is configured.": "Mô hình này không khả dụng trong bất kỳ nhóm nào, hoặc thông tin giá nhóm chưa được cấu hình.", "This month": "Tháng này", + "This notification preset uses fixed colors. Switch to an animation preset to customize colors.": "Mẫu thông báo này dùng màu cố định. Chuyển sang mẫu hiệu ứng để tùy chỉnh màu.", "This page has not been created yet.": "Trang này chưa được tạo.", "This project must be used in compliance with the": "Dự án này phải được sử dụng tuân thủ theo", "This record was written by a pre-upgrade instance and lacks audit info. Upgrade the instance to record server IP, callback IP, payment method and system version.": "Bản ghi này do bản cũ tạo và thiếu thông tin audit. Nâng cấp bản cài để lưu IP máy chủ, IP callback, hình thức thanh toán và phiên bản hệ thống.", "This site currently has {{count}} models enabled": "Trang này hiện đã bật {{count}} mô hình", + "this token group": "nhóm token này", + "this user group": "nhóm người dùng này", "This user has no bindings": "Người dùng này không có liên kết nào", "This week": "Tuần này", "This will append 2 template rules (Codex CLI and Claude CLI) to the existing rule list.": "Thao tác này sẽ thêm 2 quy tắc mẫu (Codex CLI và Claude CLI) vào danh sách quy tắc hiện có.", @@ -3361,12 +3575,18 @@ "Time:": "Thời gian:", "Timed cache (1h)": "Bộ đệm theo thời gian (1 giờ)", "Timeline": "Dòng thời gian", + "times": "lần", "Timing": "Thời gian", "Tip: The generated key is a JSON credential including access_token / refresh_token / account_id.": "Mẹo: Khóa tạo ra là thông tin xác thực JSON gồm access_token / refresh_token / account_id.", + "to access this resource.": "để truy cập tài nguyên này.", + "to confirm": "Chờ xác nhận", "To Lower": "Chữ thường", "To Lowercase": "Chuyển chữ thường", + "to override billing when a user in one group uses a token of another group.": "để ghi đè việc thanh toán khi một người dùng trong một nhóm sử dụng token của một nhóm khác.", + "to the Models list so users can use them before the mapping sends traffic upstream.": "vào danh sách Mô hình để người dùng có thể sử dụng chúng trước khi ánh xạ gửi lưu lượng truy cập lên phía trên.", "To Upper": "Chữ hoa", "To Uppercase": "Chuyển chữ hoa", + "to view this resource.": "để xem tài nguyên này.", "Today": "Hôm nay", "Toggle columns": "Chuyển đổi cột", "Toggle navigation menu": "Chuyển đổi menu điều hướng", @@ -3376,15 +3596,16 @@ "Token Breakdown": "Chi tiết token", "Token Endpoint": "Điểm cuối Token", "Token Endpoint (Optional)": "Điểm cuối Token (Tùy chọn)", + "Token estimator": "Ước tính token", + "Token management": "Quản lý token", "Token Management": "Quản lý token", "Token Mgmt": "Quản lý Token", "Token Name": "Tên mã thông báo", - "Token estimator": "Ước tính token", - "Token management": "Quản lý token", "Token obtained from your Gotify application": "Mã thông báo thu được từ ứng dụng Gotify của bạn", "Token regenerated and copied to clipboard": "Token đã được tạo lại và sao chép vào bộ nhớ tạm", "Token unit": "Đơn vị token", "Token-based": "Dựa trên token", + "tokens": "mã thông báo", "Tokens": "Mã thông báo", "Tokens Only": "Chỉ mã thông báo", "Tokens per minute": "Số token mỗi phút", @@ -3393,60 +3614,65 @@ "Tool identifier": "Định danh công cụ", "Tool price settings": "Cài đặt giá công cụ", "Tool prices": "Giá công cụ", + "Top {{count}}": "Top {{count}}", "Top Models": "Người mẫu hàng đầu", - "Top Users": "Người dùng hàng đầu", "Top up balance and view billing history.": "Nạp tiền vào tài khoản và xem lịch sử thanh toán.", - "Top {{count}}": "Top {{count}}", - "Top-Up Link": "Liên kết nạp tiền", + "Top Users": "Người dùng hàng đầu", "Top-up": "Nạp tiền", - "Top-up Audit Info": "Thông tin audit nạp tiền", "Top-up amount options": "Tùy chọn số tiền nạp", + "Top-up Audit Info": "Thông tin audit nạp tiền", "Top-up group ratios": "Tỷ lệ nhóm bổ sung", + "Top-Up Link": "Liên kết nạp tiền", + "top-up ratio": "tỷ lệ nạp tiền", "Topup Amount": "Số tiền nạp", "Total": "Tổng cộng", "Total Allocated": "Tổng phân bổ", - "Total Cost": "Tổng chi phí", - "Total Count": "Tổng số", - "Total Earned": "Total income", - "Total GPUs": "Tổng GPU", - "Total Log Size": "Tổng dung lượng nhật ký", - "Total Quota": "Tổng hạn mức", - "Total Tokens": "Tổng số token", - "Total Usage": "Tổng Mức Sử dụng", "Total check-ins": "Tổng số lần điểm danh", "Total consumed": "Tổng tiêu thụ", "Total consumed quota": "Tổng hạn ngạch đã tiêu thụ", "Total cost": "Tổng chi phí", + "Total Cost": "Tổng chi phí", + "Total Count": "Tổng số", "Total earned": "Tổng thu nhập", + "Total Earned": "Total income", + "Total GPUs": "Tổng GPU", "Total invitation revenue": "Tổng doanh thu mời", + "Total Log Size": "Tổng dung lượng nhật ký", + "Total Quota": "Tổng hạn mức", "Total requests allowed per period. 0 = unlimited.": "Tổng số yêu cầu được phép mỗi kỳ. 0 = không giới hạn.", "Total requests made": "Tổng lượt yêu cầu", + "Total Tokens": "Tổng số token", + "Total Usage": "Tổng Mức Sử dụng", "Total:": "Tổng cộng:", + "TPM": "TPM", "Track per-request consumption to power usage analytics. Keeping this on increases database writes.": "Theo dõi mức tiêu thụ theo từng yêu cầu để phục vụ phân tích mức độ sử dụng. Việc bật tính năng này làm tăng số lượt ghi vào cơ sở dữ liệu.", "Track usage, costs and performance with real-time analytics": "Theo dõi sử dụng, chi phí và hiệu suất với phân tích thời gian thực", "Tracks current account base limits and additional metered usage on Codex upstream.": "Theo dõi hạn cơ bản và mức dùng tính phí bổ sung của tài khoản ở phía upstream Codex.", "Transfer": "Chuyển", "Transfer Amount": "Số tiền chuyển khoản", - "Transfer Rewards": "Chuyển thưởng", "Transfer failed": "Chuyển thất bại", + "Transfer Rewards": "Chuyển thưởng", "Transfer successful": "Chuyển thành công", "Transfer to Balance": "Chuyển vào số dư", "Translate `-thinking` suffixes into Anthropic native thinking models while keeping pricing predictable.": "Dịch các hậu tố `-thinking` sang các mô hình tư duy gốc của Anthropic đồng thời giữ giá cả có thể dự đoán được.", "Transparent Billing": "Thanh toán minh bạch", + "Trim leading/trailing whitespace": "Xóa khoảng trắng đầu/cuối", "Trim Prefix": "Cắt tiền tố", "Trim Space": "Cắt khoảng trắng", "Trim Suffix": "Cắt hậu tố", - "Trim leading/trailing whitespace": "Xóa khoảng trắng đầu/cuối", "Trusted": "Đáng tin cậy", "Try adjusting your search to locate a missing model.": "Hãy thử điều chỉnh tìm kiếm của bạn để định vị một mô hình bị thiếu.", + "TTL": "TTL", + "TTL (seconds, 0 = default)": "TTL (giây, 0 = mặc định)", + "TTL (seconds)": "TTL (giây)", "Tune selection priority, testing, status handling, and request overrides.": "Tinh chỉnh ưu tiên chọn, kiểm thử, xử lý trạng thái và ghi đè yêu cầu.", "Turnstile is enabled but site key is empty.": "Turnstile đã được bật nhưng khóa trang web trống.", - "Two-Factor Authentication": "Xác thực hai yếu tố", - "Two-Step Verification": "Xác minh hai bước", "Two-factor Authentication": "Xác thực hai yếu tố", + "Two-Factor Authentication": "Xác thực hai yếu tố", "Two-factor authentication disabled": "Xác thực hai yếu tố đã bị vô hiệu hóa", "Two-factor authentication enabled successfully!": "Xác thực hai yếu tố đã được bật thành công!", "Two-factor authentication reset": "Xác thực hai yếu tố đã được đặt lại", + "Two-Step Verification": "Xác minh hai bước", "Type": "Loại", "Type (common)": "Loại (phổ biến)", "Type *": "Nhập *", @@ -3454,11 +3680,6 @@ "Type-Specific Settings": "Cài đặt theo loại", "Type:": "Loại:", "UI granularity only — data is still aggregated hourly": "Chỉ là độ chi tiết UI — dữ liệu vẫn được tổng hợp theo giờ", - "URL": "URL", - "URL is required": "URL là bắt buộc", - "URL to your logo image (optional)": "URL hình ảnh logo của bạn (tùy chọn)", - "USD": "USD", - "USD Exchange Rate": "Tỷ giá USD", "Unable to estimate price for this deployment.": "Không thể ước tính giá cho triển khai này.", "Unable to generate chat link. Please contact your administrator.": "Không thể tạo liên kết trò chuyện. Vui lòng liên hệ quản trị viên của bạn.", "Unable to load groups": "Không thể tải nhóm", @@ -3473,8 +3694,8 @@ "Unexpected release payload": "Dữ liệu phiên bản không mong đợi", "Unified API Gateway for": "Cổng API thống nhất cho", "Unique identifier for this group.": "Mã định danh duy nhất cho nhóm này.", - "Unit price (USD)": "Đơn giá (USD)", "Unit price (local currency / USD)": "Đơn giá (tiền tệ địa phương / USD)", + "Unit price (USD)": "Đơn giá (USD)", "Unit price must be greater than 0": "Đơn giá phải lớn hơn 0", "Units per USD": "Đơn vị trên USD", "Unknown": "Không rõ", @@ -3487,19 +3708,19 @@ "Untrusted upstream data:": "Dữ liệu nguồn không đáng tin cậy:", "Unused": "Chưa sử dụng", "Update": "Cập nhật", - "Update API Key": "Cập nhật Khóa API", "Update All Balances": "Cập nhật tất cả số dư", + "Update API Key": "Cập nhật Khóa API", "Update Balance": "Cập nhật số dư", - "Update Channel": "Cập nhật kênh", - "Update Model": "Cập nhật mô hình", - "Update Provider": "Cập nhật Nhà cung cấp", - "Update Redemption Code": "Cập nhật mã đổi thưởng", "Update balance for:": "Cập nhật số dư cho:", + "Update Channel": "Cập nhật kênh", "Update channel configuration and click save when you're done.": "Cập nhật cấu hình kênh và nhấp lưu khi bạn hoàn tất.", "Update configuration": "Cập nhật cấu hình", "Update failed": "Cập nhật thất bại", + "Update Model": "Cập nhật mô hình", "Update model configuration and click save when you're done.": "Cập nhật cấu hình mô hình và nhấp lưu khi bạn hoàn tất.", "Update plan info": "Cập nhật thông tin gói", + "Update Provider": "Cập nhật Nhà cung cấp", + "Update Redemption Code": "Cập nhật mã đổi thưởng", "Update succeeded": "Cập nhật thành công", "Update the API key by providing necessary info.": "Cập nhật khóa API bằng cách cung cấp thông tin cần thiết.", "Update the configuration for this custom OAuth provider.": "Cập nhật cấu hình cho nhà cung cấp OAuth tùy chỉnh này.", @@ -3525,48 +3746,62 @@ "Upstream Model Detection Settings": "Cài đặt phát hiện mô hình nguồn", "Upstream Model Update Check": "Kiểm tra cập nhật mô hình nguồn", "Upstream Model Updates": "Cập nhật mô hình upstream", - "Upstream Response": "Upstream feedback", - "Upstream Updates": "Cập nhật nguồn", "Upstream model updates applied: {{added}} added, {{removed}} removed, {{ignored}} ignored this time, {{totalIgnored}} total ignored models": "Đã áp dụng cập nhật mô hình upstream: {{added}} đã thêm, {{removed}} đã xóa, {{ignored}} bỏ qua lần này, {{totalIgnored}} tổng mô hình đã bỏ qua", "Upstream price sync": "Đồng bộ giá thượng nguồn", "Upstream prices fetched successfully": "Lấy giá upstream thành công", "Upstream ratios fetched successfully": "Đã lấy tỷ lệ upstream thành công", + "Upstream Response": "Upstream feedback", + "upstream services integrated": "dịch vụ thượng nguồn tích hợp", + "Upstream Updates": "Cập nhật nguồn", + "uptime": "thời gian hoạt động", "Uptime": "Thời gian hoạt động", "Uptime Kuma": "Uptime Kuma", - "Uptime Kuma URL": "URL Uptime Kuma", "Uptime Kuma groups saved successfully": "Đã lưu nhóm Uptime Kuma thành công", + "Uptime Kuma URL": "URL Uptime Kuma", "Uptime since": "Thời gian hoạt động kể từ", + "URL": "URL", + "URL is required": "URL là bắt buộc", + "URL to your logo image (optional)": "URL hình ảnh logo của bạn (tùy chọn)", "Usage": "Sử dụng", - "Usage Logs": "Nhật ký sử dụng", "Usage logs": "Nhật ký sử dụng", + "Usage Logs": "Nhật ký sử dụng", "Usage mode": "Chế độ sử dụng", "Usage-based": "Dựa trên sử dụng", - "Use Passkey to sign in without entering your password.": "Sử dụng Khóa truy cập để đăng nhập mà không cần nhập mật khẩu của bạn.", + "USD": "USD", + "USD Exchange Rate": "Tỷ giá USD", "Use a compatible browser or device with biometric authentication or a security key to register a Passkey.": "Sử dụng trình duyệt hoặc thiết bị tương thích có xác thực sinh trắc học hoặc khóa bảo mật để đăng ký Khóa truy cập.", "Use authenticator code": "Sử dụng mã xác thực", "Use backup code": "Sử dụng mã dự phòng", "Use disk cache when request body exceeds this size": "Sử dụng bộ nhớ đệm đĩa khi nội dung yêu cầu vượt quá kích thước này", "Use our unified OpenAI-compatible endpoint in your applications": "Sử dụng endpoint thống nhất tương thích OpenAI trong ứng dụng của bạn", + "Use Passkey to sign in without entering your password.": "Sử dụng Khóa truy cập để đăng nhập mà không cần nhập mật khẩu của bạn.", "Use secure connection when sending emails": "Sử dụng kết nối an toàn khi gửi email", "Use sidebar shortcut": "Sử dụng phím tắt thanh bên", "Use this token for API authentication": "Sử dụng token này để xác thực API", "Use your Passkey": "Sử dụng Passkey của bạn", + "used": "đã sử dụng, cũ", "Used": "Đã sử dụng", "Used / Remaining": "Đã dùng / Còn lại", - "Used Quota": "Hạn mức đã sử dụng", "Used for load balancing. Higher weight = more requests": "Được sử dụng để cân bằng tải. Trọng số càng cao = càng nhiều yêu cầu", "Used in URLs and API routes": "Sử dụng trong URL và các tuyến API", + "Used Quota": "Hạn mức đã sử dụng", "Used to authenticate with io.net deployment API": "Dùng để xác thực với API triển khai io.net", "Used to authenticate with the worker. Leave blank to keep the existing secret.": "Dùng để xác thực với worker. Để trống để giữ nguyên secret hiện có.", "Used:": "Đã dùng:", "User": "Người dùng", + "User {{id}}": "Người dùng {{id}}", "User Agreement": "Thỏa thuận người dùng", "User Analytics": "Thống kê người dùng", "User Consumption Ranking": "Xếp hạng tiêu thụ", "User Consumption Trend": "Xu hướng tiêu thụ", + "User created successfully": "Tạo người dùng thành công", + "User dashboard and quota controls.": "Bảng điều khiển người dùng và kiểm soát hạn ngạch.", "User Exclusive Ratio": "Tỷ lệ riêng", "User Group": "Nhóm người dùng", + "User group name": "Tên nhóm người dùng", "User Group: {{ratio}}x": "Nhóm người dùng: {{ratio}}x", + "User groups that can access channels with this tag": "Nhóm người dùng có thể truy cập các kênh với thẻ này", + "User groups that can access this channel. ": "Các nhóm người dùng có thể truy cập kênh này.", "User ID": "ID người dùng", "User ID Field": "Trường ID Người dùng", "User ID:": "ID người dùng:", @@ -3574,41 +3809,37 @@ "User Info Endpoint (Optional)": "Điểm cuối Thông tin Người dùng (Tùy chọn)", "User Information": "Thông tin người dùng", "User Menu": "Menu người dùng", - "User Subscription Management": "Quản lý đăng ký người dùng", - "User Verification": "Xác minh người dùng", - "User created successfully": "Tạo người dùng thành công", - "User dashboard and quota controls.": "Bảng điều khiển người dùng và kiểm soát hạn ngạch.", - "User group name": "Tên nhóm người dùng", - "User groups that can access channels with this tag": "Nhóm người dùng có thể truy cập các kênh với thẻ này", - "User groups that can access this channel. ": "Các nhóm người dùng có thể truy cập kênh này.", "User personal functions": "Chức năng cá nhân người dùng", + "User Subscription Management": "Quản lý đăng ký người dùng", "User updated successfully": "Cập nhật người dùng thành công", - "User {{id}}": "Người dùng {{id}}", + "User Verification": "Xác minh người dùng", "User-Agent include (one per line)": "User-Agent include (mỗi dòng một mục)", "Username": "Tên người dùng", - "Username Field": "Trường Tên người dùng", "Username confirmation does not match": "Xác nhận tên người dùng không khớp", + "Username Field": "Trường Tên người dùng", "Username or Email": "Tên đăng nhập hoặc Email", "Users": "Người dùng", "Users call the model on the left. The platform forwards the request to the upstream model on the right.": "Người dùng gọi mô hình bên trái. Nền tảng chuyển tiếp yêu cầu đến mô hình thượng nguồn bên phải.", "Users must wait for a successful drawing before upscales or variations.": "Người dùng phải chờ vẽ thành công trước khi upscale hoặc biến thể.", - "VIP users with premium access": "Người dùng VIP với quyền truy cập cao cấp", + "uses": "sử dụng", "Validity": "Hiệu lực", "Validity Period": "Thời hạn hiệu lực", "Value": "Giá trị", "Value (supports JSON or plain text)": "Giá trị (hỗ trợ JSON hoặc văn bản thuần)", - "Value Regex": "Regex giá trị", "Value must be at least 0": "Giá trị phải ít nhất là 0", + "Value Regex": "Regex giá trị", + "variable": "biến", + "variable) *": "biến) *", "Variables": "Biến", "Vary": "Biến thể", "Vary (Strong)": "Biến thể (mạnh)", "Vary (Subtle)": "Biến thể (nhẹ)", "Vendor": "Supplier", - "Vendor Name *": "Tên nhà cung cấp *", "Vendor deleted successfully": "Đã xóa nhà cung cấp thành công", + "Vendor Name *": "Tên nhà cung cấp *", "Vendor:": "Nhà cung cấp:", - "Verification Code": "Mã xác minh", "Verification code": "Mã xác minh", + "Verification Code": "Mã xác minh", "Verification code must be 6 digits": "Mã xác thực phải có 6 chữ số", "Verification code sent! Please check your email.": "Mã xác thực đã được gửi! Vui lòng kiểm tra email của bạn.", "Verification code updates every 30 seconds.": "Mã xác minh cập nhật mỗi 30 giây.", @@ -3617,18 +3848,17 @@ "Verification is not configured properly": "Xác thực chưa được cấu hình đúng cách", "Verification required to reveal the saved key.": "Yêu cầu xác minh để tiết lộ khóa đã lưu.", "Verify": "Kiểm tra", - "Verify Setup": "Xác minh thiết lập", "Verify and Sign In": "Xác minh và Đăng nhập", + "Verify Setup": "Xác minh thiết lập", "Verify your database connection": "Xác minh kết nối cơ sở dữ liệu của bạn", "Version Overrides": "Ghi đè phiên bản", "Vertex AI": "Vertex AI", - "Vertex AI Key Format": "Định dạng khóa Vertex AI", "Vertex AI does not support functionResponse.id. Enable this to remove the field automatically.": "Vertex AI không hỗ trợ functionResponse.id. Bật để tự động loại bỏ trường này.", + "Vertex AI Key Format": "Định dạng khóa Vertex AI", "Video": "Video", "Video Remix": "Remix video", "Vidu": "Vidu", "View": "Xem", - "View Pricing": "View price", "View all currently available models": "Xem tất cả mô hình hiện có", "View and manage your API usage logs": "Xem và quản lý nhật ký sử dụng API của bạn", "View and manage your drawing logs": "Xem và quản lý nhật ký vẽ của bạn", @@ -3641,6 +3871,7 @@ "View mode": "Chế độ xem", "View model call count analytics and charts": "Xem phân tích và biểu đồ số lượt gọi mô hình", "View model statistics and charts": "Xem thống kê và biểu đồ mô hình", + "View Pricing": "View price", "View the complete details for this": "Xem chi tiết đầy đủ của", "View the complete details for this log entry": "Xem chi tiết đầy đủ cho mục nhật ký này", "View the complete error message and details": "Xem toàn bộ thông báo lỗi và chi tiết", @@ -3649,18 +3880,20 @@ "View user consumption statistics and charts": "Xem thống kê và biểu đồ tiêu thụ", "View your topup transaction records and payment history": "Xem lịch sử giao dịch nạp tiền và lịch sử thanh toán của bạn", "Violation Code": "Mã vi phạm", + "Violation deduction amount": "Số tiền trừ vi phạm", "Violation Fee": "Phí vi phạm", "Violation Marker": "Đánh dấu vi phạm", - "Violation deduction amount": "Số tiền trừ vi phạm", + "vip": "vip", + "VIP users with premium access": "Người dùng VIP với quyền truy cập cao cấp", "Visit Settings → General and adjust quota options...": "Truy cập Cài đặt → Chung và điều chỉnh tùy chọn hạn mức...", "Visitors must authenticate before accessing the pricing directory.": "Khách truy cập phải xác thực trước khi truy cập thư mục giá.", "Visual": "Trực quan", - "Visual Editor": "Trình soạn thảo trực quan", - "Visual Mode": "Chế độ Trực quan", - "Visual Parameter Override": "Ghi đè tham số trực quan", "Visual edit": "Chỉnh sửa trực quan", "Visual editor": "Trình sửa trực quan", + "Visual Editor": "Trình soạn thảo trực quan", "Visual indicator color for the API card": "Màu sắc chỉ báo trực quan cho thẻ API", + "Visual Mode": "Chế độ Trực quan", + "Visual Parameter Override": "Ghi đè tham số trực quan", "VolcEngine": "VolcEngine", "Waffo Pancake Payment Gateway": "Cổng thanh toán Waffo Pancake", "Waffo Payment": "Thanh toán Waffo", @@ -3672,9 +3905,11 @@ "Wallet": "Ví", "Wallet First": "Ưu tiên ví", "Wallet Management": "Quản lý ví", - "Wallet Only": "Chỉ dùng ví", "Wallet management and personal preferences.": "Quản lý ví và sở thích cá nhân.", + "Wallet Only": "Chỉ dùng ví", + "Warm": "Ấm", "Warning": "Cảnh báo", + "Warning Soft": "Cảnh báo nhẹ", "Warning: Base URL should not end with /v1. New API will handle it automatically. This may cause request failures.": "Cảnh báo: URL cơ sở không nên kết thúc bằng /v1. API mới sẽ xử lý tự động. Điều này có thể gây ra lỗi yêu cầu.", "Warning: Disabling 2FA will make your account less secure.": "Cảnh báo: Vô hiệu hóa 2FA sẽ khiến tài khoản của bạn kém an toàn hơn.", "Warning: This action is permanent and irreversible!": "Cảnh báo: Hành động này là vĩnh viễn và không thể đảo ngược!", @@ -3682,22 +3917,22 @@ "We could not load the setup status.": "Chúng tôi không thể tải trạng thái thiết lập.", "We will prompt your device to confirm using biometrics or your hardware key.": "Chúng tôi sẽ yêu cầu thiết bị của bạn xác nhận bằng cách sử dụng sinh trắc học hoặc khóa bảo mật phần cứng của bạn.", "We'll be back online shortly.": "Chúng tôi sẽ sớm trực tuyến trở lại.", - "WeChat": "WeChat", - "WeChat QR code will be displayed here": "Mã QR WeChat sẽ được hiển thị tại đây", - "WeChat login QR code": "Mã QR đăng nhập WeChat", - "WeChat sign in": "Đăng nhập WeChat", "Web Search": "Tìm kiếm web", "Webhook Configuration:": "Cấu hình Webhook:", - "Webhook Secret": "Bí mật Webhook", - "Webhook URL": "URL Webhook", - "Webhook URL:": "URL Webhook:", "Webhook public key (production)": "Khóa công khai Webhook (production)", "Webhook public key (production) is required": "Bắt buộc nhập khóa công khai Webhook (production)", "Webhook public key (sandbox)": "Khóa công khai Webhook (sandbox)", "Webhook public key (sandbox) is required": "Bắt buộc nhập khóa công khai Webhook (sandbox)", "Webhook secret": "Bí mật webhook", + "Webhook Secret": "Bí mật Webhook", "Webhook signing secret (leave blank unless updating)": "Mã bí mật ký webhook (để trống trừ khi cập nhật)", + "Webhook URL": "URL Webhook", + "Webhook URL:": "URL Webhook:", "Website is under maintenance!": "Website đang bảo trì!", + "WeChat": "WeChat", + "WeChat login QR code": "Mã QR đăng nhập WeChat", + "WeChat QR code will be displayed here": "Mã QR WeChat sẽ được hiển thị tại đây", + "WeChat sign in": "Đăng nhập WeChat", "Week": "Tuần", "Weekday": "Thứ trong tuần", "Weekly": "Hàng tuần", @@ -3709,9 +3944,9 @@ "Well-Known URL must start with http:// or https://": "URL Well-Known phải bắt đầu bằng http:// hoặc https://", "What would you like to know?": "Bạn muốn biết gì?", "When conditions match, the final price is multiplied by X. Multiple matches multiply together; values < 1 act as discounts.": "Khi thỏa điều kiện, giá cuối nhân với X. Nhiều điều kiện khớp nhân lại với nhau; giá trị < 1 hoạt động như giảm giá.", - "When enabled, Midjourney callbacks are accepted (reveals server IP).": "Khi được bật, các callback của Midjourney được chấp nhận (lộ IP máy chủ).", "When enabled, if channels in the current group fail, it will try channels in the next group in order.": "Khi được bật, nếu các kênh trong nhóm hiện tại thất bại, hệ thống sẽ thử các kênh của nhóm tiếp theo theo thứ tự.", "When enabled, large request bodies are temporarily stored on disk instead of memory, significantly reducing memory usage. SSD recommended.": "Khi bật, nội dung yêu cầu lớn sẽ được lưu tạm trên đĩa thay vì bộ nhớ, giảm đáng kể việc sử dụng bộ nhớ. Khuyến nghị dùng SSD.", + "When enabled, Midjourney callbacks are accepted (reveals server IP).": "Khi được bật, các callback của Midjourney được chấp nhận (lộ IP máy chủ).", "When enabled, newly created tokens start in the first auto group.": "Khi được bật, các token mới được tạo sẽ bắt đầu trong nhóm tự động đầu tiên.", "When enabled, prompts are scanned before reaching upstream models.": "Khi được bật,", "When enabled, the store field will be blocked": "Khi được bật, trường store sẽ bị chặn", @@ -3721,19 +3956,24 @@ "When performance monitoring is enabled and system resource usage exceeds the set threshold, new Relay requests will be rejected.": "Khi giám sát hiệu suất được bật và mức sử dụng tài nguyên vượt quá ngưỡng, các yêu cầu Relay mới sẽ bị từ chối.", "When running in containers or ephemeral environments, ensure the SQLite file is mapped to persistent storage to avoid data loss on restart.": "Khi chạy trong container hoặc môi trường tạm thời, hãy đảm bảo tệp SQLite được ánh xạ vào bộ nhớ lưu trữ bền vững để tránh mất dữ liệu khi khởi động lại.", "Whitelist": "Danh sách trắng", - "Whitelist (Only allow listed IPs)": "Danh sách trắng (Chỉ cho phép các IP đã liệt kê)", "Whitelist (Only allow listed domains)": "Danh sách trắng (Chỉ cho phép các tên miền được liệt kê)", + "Whitelist (Only allow listed IPs)": "Danh sách trắng (Chỉ cho phép các IP đã liệt kê)", + "whsec_xxx": "whsec_xxx", "Window:": "Cửa sổ:", + "with conflicts": "với các xung đột", "Without additional conditions, only the type above is used for pruning.": "Không có điều kiện bổ sung, chỉ type ở trên được sử dụng để dọn dẹp.", "Worker Access Key": "Khóa truy cập nhân viên", "Worker Proxy": "Proxy Nhân viên", "Worker URL": "URL của Worker", "Workspaces": "Không gian làm việc", "Write custom CSS for the banner background. CSS is scoped to .top-banner.": "Write custom CSS for the banner background. CSS is scoped to .top-banner.", + "Write custom CSS for the banner. Use declarations directly, or use & for scoped selectors such as &::before and & .top-banner-icon.": "Viết CSS tùy chỉnh cho banner. Có thể viết khai báo trực tiếp hoặc dùng & cho selector có phạm vi như &::before và & .top-banner-icon.", "Write value to the target field": "Ghi giá trị vào trường đích", + "x": "x", + "xAI": "xAI", "Xinference": "Xinference", "Xunfei": "Xunfei", - "You Pay": "Bạn thanh toán", + "years": "năm", "You are about to delete {{count}} API key(s).": "Bạn sắp xóa {{count}} khóa API.", "You are running the latest version ({{version}}).": "Bạn đang sử dụng phiên bản mới nhất ({{version}}).", "You can close this tab once the binding completes or a success message appears in the original window.": "Bạn có thể đóng tab này sau khi quá trình liên kết hoàn tất hoặc thông báo thành công xuất hiện trong cửa sổ gốc.", @@ -3742,9 +3982,11 @@ "You don't have necessary permission": "Bạn không có quyền cần thiết", "You have unsaved changes": "Bạn có thay đổi chưa được lưu", "You have unsaved changes. Are you sure you want to leave?": "Bạn có thay đổi chưa được lưu. Bạn có chắc chắn muốn rời đi không?", + "You Pay": "Bạn thanh toán", "You save": "Bạn tiết kiệm", "You will be redirected to Telegram to complete the binding process.": "Bạn sẽ được chuyển hướng đến Telegram để hoàn tất quá trình liên kết.", "You'll be redirected automatically. You can return to the previous page if nothing happens after a few seconds.": "Bạn sẽ được chuyển hướng tự động. Bạn có thể quay lại trang trước nếu không có gì xảy ra sau vài giây.", + "your AI integration?": "tích hợp AI của bạn?", "Your Azure OpenAI endpoint URL": "URL điểm cuối Azure OpenAI của bạn", "Your Bot Name": "Tên Bot của bạn", "Your Cloudflare Account ID": "ID tài khoản Cloudflare của bạn", @@ -3752,228 +3994,14 @@ "Your Discord OAuth Client Secret": "Discord OAuth Client Secret của bạn", "Your GitHub OAuth Client ID": "Client ID OAuth GitHub của bạn", "Your GitHub OAuth Client Secret": "Bí mật ứng dụng OAuth của GitHub của bạn", + "Your new backup codes are ready": "Mã dự phòng mới của bạn đã sẵn sàng", "Your Referral Link": "Liên kết giới thiệu của bạn", + "Your system access token for API authentication. Keep it secure and don't share it with others.": "Mã truy cập hệ thống của bạn để xác thực API. Hãy giữ nó an toàn và đừng chia sẻ nó với người khác.", "Your Telegram Bot Token": "Mã thông báo bot Telegram của bạn", "Your Turnstile secret key": "Khóa bí mật Turnstile của bạn", "Your Turnstile site key": "Khóa site Turnstile của bạn", - "Your new backup codes are ready": "Mã dự phòng mới của bạn đã sẵn sàng", - "Your system access token for API authentication. Keep it secure and don't share it with others.": "Mã truy cập hệ thống của bạn để xác thực API. Hãy giữ nó an toàn và đừng chia sẻ nó với người khác.", "Zhipu": "Zhipu", "Zhipu V4": "Zhipu V4", - "Zoom": "Zoom", - "[{\"ChatGPT\":\"https://chat.openai.com\"},{\"Lobe Chat\":\"https://chat-preview.lobehub.com/?settings={...}\"}]": "[{\"ChatGPT\":\"https://chat.openai.com\"},{\"Lobe Chat\":\"https://chat-preview.lobehub.com/?settings={...}\"}]", - "[{\"name\":\"支付宝\",\"type\":\"alipay\",\"color\":\"#1677FF\"}]": "[{\"name\":\"Alipay\",\"type\":\"alipay\",\"color\":\"#1677FF\"}]", - "_copy": "_bản sao", - "`, and `-nothinking` suffixes while routing to the correct Gemini variant.": ", và", - "active": "hoạt động", - "active users": "Người dùng tích cực", - "aggregates 50+ AI providers behind one unified API. Manage access, track costs, and scale effortlessly.": "tổng hợp hơn 50 nhà cung cấp AI sau một API thống nhất. Quản lý truy cập, theo dõi chi phí và mở rộng dễ dàng.", - "and": "and", - "appended": "đã thêm vào cuối, được phụ lục", - "are also listed here. Remove them from Models to keep the `/v1/models` response user-friendly and hide vendor-specific names.": "cũng được liệt kê ở đây. Xóa chúng khỏi Models để giữ cho phản hồi `/v1/models` thân thiện với người dùng và ẩn các tên dành riêng cho nhà cung cấp.", - "by": "by", - "channel(s)? This action cannot be undone.": "kênh(s)? Hành động này không thể hoàn tác.", - "checkout.session.completed": "thanh toán.phiên.hoàn thành", - "checkout.session.expired": "Phiên thanh toán đã hết hạn.", - "compatible API routes": "tuyến API tương thích", - "days": "ngày", - "default": "mặc định", - "designed for scale": "thiết kế cho quy mô lớn", - "disabled": "vô hiệu hóa", - "does not exist or might have been removed.": "không tồn tại hoặc có thể đã bị xóa.", - "e.g. 401, 403, 429, 500-599": "vd. 401, 403, 429, 500-599", - "e.g. 8 means 1 USD = 8 units": "Ví dụ: 8 có nghĩa là 1 USD = 8 đơn vị", - "e.g. Basic Plan": "ví dụ: Gói cơ bản", - "e.g. Clean tool parameters to avoid upstream validation errors": "ví dụ: Dọn dẹp tham số công cụ để tránh lỗi xác thực upstream", - "e.g. My GitLab": "ví dụ: GitLab của tôi", - "e.g. New API Console": "Ví dụ: Bảng điều khiển API mới", - "e.g. Suitable for light usage": "ví dụ: Phù hợp cho sử dụng nhẹ", - "e.g. This request does not meet access policy": "ví dụ: Yêu cầu này không đáp ứng chính sách truy cập", - "e.g. example.com": "ví dụ example.com", - "e.g. llama3.1:8b": "ví dụ: llama3.1:8b", - "e.g. my-gitlab": "ví dụ: my-gitlab", - "e.g. openid profile email": "ví dụ: openid profile email", - "e.g. ¥ or HK$": "ví dụ ¥ hoặc HK$", - "e.g., #3b82f6,#8b5cf6": "e.g., #3b82f6,#8b5cf6", - "e.g., #ff0000,#0000ff": "e.g., #ff0000,#0000ff", - "e.g., #ffffff or white": "e.g., #ffffff or white", - "e.g., 0.95": "e.g., 0.95", - "e.g., 100": "e.g., 100", - "e.g., 123456": "e.g., 123456", - "e.g., 2025-04-01-preview": "ví dụ: 2025-04-01-preview", - "e.g., 50": "e.g., 50", - "e.g., 500000": "ví dụ, 500000", - "e.g., 7342866812345": "e.g., 7342866812345", - "e.g., 8 means 8 local currency per USD": "Ví dụ, 8 có nghĩa là 8 đơn vị tiền tệ địa phương trên mỗi USD", - "e.g., Alipay, WeChat": "ví dụ: Alipay, WeChat", - "e.g., Basic Package": "ví dụ, Gói cơ bản", - "e.g., CN2 GIA": "ví dụ, CN2 GIA", - "e.g., Core APIs, OpenAI, Claude": "ví dụ: Core APIs, OpenAI, Claude", - "e.g., OpenAI GPT-4 Production": "ví dụ: OpenAI GPT-4 Sản xuất", - "e.g., Recommended for China Mainland Users": "ví dụ: Khuyến nghị dành cho người dùng Trung Quốc đại lục", - "e.g., d6b5da8hk1awo8nap34ube6gh": "ví dụ: d6b5da8hk1awo8nap34ube6gh", - "e.g., default, vip, premium": "ví dụ: mặc định, VIP, cao cấp", - "e.g., gpt-4, claude-3": "vd: gpt-4, claude-3", - "e.g., gpt-4.1-nano,regex:^claude-.*$,regex:^sora-.*$": "ví dụ: gpt-4.1-nano,regex:^claude-.*$,regex:^sora-.*$", - "e.g., https://api.example.com (path before /suno)": "ví dụ: https://api.example.com (đường dẫn trước /suno)", - "e.g., https://api.openai.com/v1/chat/completions": "ví dụ: https://api.openai.com/v1/chat/completions", - "e.g., https://ark.cn-beijing.volces.com": "ví dụ, https://ark.cn-beijing.volces.com", - "e.g., https://docs-test-001.openai.azure.com": "ví dụ: https://docs-test-001.openai.azure.com", - "e.g., https://fastgpt.run/api/openapi": "ví dụ: https://fastgpt.run/api/openapi", - "e.g., preview": "ví dụ: xem trước", - "e.g., prod_xxx": "ví dụ, prod_xxx", - "e.g., us-central1 or JSON format for model-specific regions": "chẳng hạn như us-central1 hoặc định dạng JSON cho các khu vực dành riêng cho mô hình", - "e.g., v2.1": "e.g., v2.1", - "edit_this": "edit_this", - "example.com blocked-site.com": "example.com\nblocked-site.com", - "example.com company.com": "example.com\ncompany.com", - "expired": "Đã hết hạn", - "field": "trường", - "footer.columns.about.links.aboutProject": "Về Dự án", - "footer.columns.about.links.contact": "Liên hệ Chúng tôi", - "footer.columns.about.links.features": "Tính năng", - "footer.columns.about.title": "Về Chúng tôi", - "footer.columns.docs.links.apiDocs": "Tài liệu API", - "footer.columns.docs.links.installation": "Hướng Dẫn Cài Đặt", - "footer.columns.docs.links.quickStart": "Bắt Đầu Nhanh", - "footer.columns.docs.title": "Tài Liệu", - "footer.columns.related.links.midjourney": "Midjourney-Proxy", - "footer.columns.related.links.neko": "neko-api-key-tool", - "footer.columns.related.links.oneApi": "One API", - "footer.columns.related.title": "Các Dự Án Liên Quan", - "footer.defaultCopyright": "Bản quyền được bảo lưu.", - "footer.new\u0061pi.projectAttributionSuffix": "Bản quyền được bảo lưu. Được thiết kế và phát triển bởi các cộng tác viên dự án.", - "gpt-3.5-turbo": "gpt-3.5-turbo", - "gpt-3.5-turbo-0125": "gpt-3.5-turbo-0125", - "gpt-4": "gpt-4", - "gpt-4, claude-3-opus, etc.": "gpt-4, claude-3-opus, v.v.", - "group ratio": "tỷ lệ nhóm", - "h": "h", - "hours": "giờ", - "https://api.day.app/yourkey/{{title}}/{{content}}": "https://api.day.app/yourkey/{{title}}/{{content}}", - "https://api.example.com": "https://api.example.com", - "https://ark.ap-southeast.bytepluses.com": "https://ark.ap-southeast.bytepluses.com", - "https://ark.cn-beijing.volces.com": "https://ark.cn-beijing.volces.com", - "https://cloud.siliconflow.cn/i/hij0YNTZ": "https://cloud.siliconflow.cn/i/hij0YNTZ", - "https://docs.example.com": "https://docs.example.com", - "https://example.com": "https://example.com", - "https://example.com/logo.png": "https://example.com/logo.png", - "https://example.com/qr-code.png": "https://example.com/qr-code.png", - "https://example.com/topup": "https://example.com/topup", - "https://example.com/webhook": "https://example.com/webhook", - "https://gateway.example.com": "https://gateway.example.com", - "https://github.com/QuantumNous/new-api": "https://github.com/QuantumNous/new-api", - "https://gotify.example.com": "https://gotify.example.com", - "https://pay.example.com": "https://pay.example.com", - "https://provider.com/.well-known/openid-configuration": "https://provider.com/.well-known/openid-configuration", - "https://status.example.com": "https://status.example.com", - "https://wechat-server.example.com": "https://wechat-server.example.com", - "https://worker.example.workers.dev": "https://worker.example.workers.dev", - "https://your-server.example.com": "https://your-server.example.com", - "https://yourdomain.com": "https://yourdomain.com", - "io.net API Key": "Khóa API io.net", - "io.net Deployments": "Triển khai io.net", - "is an open-source AI API gateway for self-hosted deployments. Connect multiple upstream services, manage models, keys, quotas, logs, and routing policies in one place.": "là cổng API AI mã nguồn mở dành cho triển khai tự lưu trữ. Kết nối nhiều dịch vụ thượng nguồn, quản lý mô hình, khóa, hạn mức, nhật ký và chính sách định tuyến tại một nơi.", - "is less than the configured maximum cache size": "nhỏ hơn kích thước bộ nhớ đệm tối đa đã cấu hình", - "is the default price; ": "là giá mặc định; ", - "log": "nhật ký", - "m": "m", - "maxRequests ≥ 0, maxSuccess ≥ 1, both ≤ 2,147,483,647": "maxRequests ≥ 0, maxSuccess ≥ 1, cả hai đều ≤ 2,147,483,647", - "minutes": "phút", - "model": "mô hình", - "model billing support": "hỗ trợ tính phí mô hình", - "model(s) selected out of": "mô hình(s) được chọn trong số", - "model(s)? This action cannot be undone.": "mô hình(s)? Hành động này không thể hoàn tác.", - "models": "mô hình", - "months": "tháng", - "more mapping": "thêm lập bản đồ", - "ms": "ms", - "my-status": "trạng thái của tôi", - "name@example.com": "name@example.com", - "noreply@example.com": "noreply@example.com", - "of": "of", - "of 3:": "of 3:", - "off": "off", - "one keyword per line": "Mỗi dòng một từ khóa", - "opens in an external client. Trigger it from the sidebar or API key actions to launch the configured application.": "mở trong một ứng dụng bên ngoài. Kích hoạt nó từ thanh bên hoặc các hành động khóa API để khởi chạy ứng dụng đã cấu hình.", - "org-...": "org-...", - "override": "ghi đè", - "overrides for matching model prefix.": "ghi đè theo tiền tố model tương ứng.", - "parameter.": "tham số", - "per": "per", - "per request": "theo yêu cầu", - "price_xxx": "price_xxx", - "redemption code": "mã đổi thưởng", - "redemption codes.": "Mã đổi thưởng", - "replaced": "thay thế", - "request": "yêu cầu", - "requests served": "yêu cầu đã phục vụ", - "rules": "quy tắc", - "s": "s", - "scheduling controls": "điều khiển điều phối", - "seconds": "giây", - "selected": "đã chọn", - "selected channel(s). Leave empty to remove tag.": "Kênh đã chọn. Để trống để xóa thẻ.", - "showing •": "hiển thị •", - "sk_xxx or rk_xxx": "sk_xxx hoặc rk_xxx", - "smtp.example.com": "smtp.example.com", - "socks5://user:pass@host:port": "socks5://user:pass@host:port", - "sources": "nguồn", - "stream": "dòng", - "this token group": "nhóm token này", - "this user group": "nhóm người dùng này", - "times": "lần", - "to access this resource.": "để truy cập tài nguyên này.", - "to confirm": "Chờ xác nhận", - "to override billing when a user in one group uses a token of another group.": "để ghi đè việc thanh toán khi một người dùng trong một nhóm sử dụng token của một nhóm khác.", - "to the Models list so users can use them before the mapping sends traffic upstream.": "vào danh sách Mô hình để người dùng có thể sử dụng chúng trước khi ánh xạ gửi lưu lượng truy cập lên phía trên.", - "to view this resource.": "để xem tài nguyên này.", - "tokens": "mã thông báo", - "top-up ratio": "tỷ lệ nạp tiền", - "upstream services integrated": "dịch vụ thượng nguồn tích hợp", - "uptime": "thời gian hoạt động", - "used": "đã sử dụng, cũ", - "uses": "sử dụng", - "variable": "biến", - "variable) *": "biến) *", - "vip": "vip", - "whsec_xxx": "whsec_xxx", - "with conflicts": "với các xung đột", - "x": "x", - "xAI": "xAI", - "years": "năm", - "your AI integration?": "tích hợp AI của bạn?", - "{\"original-model\": \"replacement-model\"}": "{\"original-model\": \"replacement-model\"}", - "{{category}} Models": "Mô hình {{category}}", - "{{count}} IP(s)": "{{count}} IP", - "{{count}} channel(s) deleted": "Đã xóa {{count}} kênh", - "{{count}} channel(s) disabled": "Đã tắt {{count}} kênh", - "{{count}} channel(s) enabled": "Đã bật {{count}} kênh", - "{{count}} channel(s) failed to disable": "{{count}} kênh không thể tắt", - "{{count}} channel(s) failed to enable": "{{count}} kênh không thể bật", - "{{count}} days ago": "{{count}} ngày trước", - "{{count}} days remaining": "{{count}} days remaining", - "{{count}} disabled channel(s) deleted": "Đã xóa {{count}} kênh đã tắt", - "{{count}} hours ago": "{{count}} giờ trước", - "{{count}} log entries removed.": "Đã xóa {{count}} mục nhật ký.", - "{{count}} minutes ago": "{{count}} phút trước", - "{{count}} model(s)": "{{count}} mô hình", - "{{count}} months ago": "{{count}} tháng trước", - "{{count}} override": "{{count}} ghi đè", - "{{count}} tiers": "{{count}} bậc", - "{{count}} weeks ago": "{{count}} tuần trước", - "{{field}} updated to {{value}}": "{{field}} đã cập nhật thành {{value}}", - "{{field}} updated to {{value}} for tag: {{tag}}": "{{field}} đã cập nhật thành {{value}} cho nhãn: {{tag}}", - "{{n}} model(s) selected": "Đã chọn {{n}} model", - "{{value}}ms": "{{value}} ms", - "{{value}}s": "{{value}} s", - "| Based on": "| Dựa trên", - "© 2025 Your Company. All rights reserved.": "© 2025 Công ty của bạn. Mọi quyền được bảo lưu.", - "← Left": "← Left", - "↑ Up": "↑ Up", - "→ Right": "→ Right", - "↓ Down": "↓ Down", - "↘ Diagonal": "↘ Diagonal", - "⊙ Radial": "⊙ Radial" + "Zoom": "Zoom" } } diff --git a/web/default/src/i18n/locales/zh.json b/web/default/src/i18n/locales/zh.json index 1e63888c7a6..c2de1dd4154 100644 --- a/web/default/src/i18n/locales/zh.json +++ b/web/default/src/i18n/locales/zh.json @@ -3,31 +3,70 @@ "360": "360", "1000": "1000", "10000": "10000", + "_copy": "_复制", + ", and": ",和", + "? This action cannot be undone.": "?此操作无法撤销。", + ". Please fix the JSON before saving.": "。请在保存前修复 JSON。", + ". This action cannot be undone.": "。此操作无法撤销。", + "...": "...", "\"default\": \"us-central1\", \"claude-3-5-sonnet-20240620\": \"europe-west1\"": "\"default\": \"us-central1\", \"claude-3-5-sonnet-20240620\": \"europe-west1\"", - "% off": "折", + "({{total}} total, {{omit}} omitted)": "(共 {{total}} 个,省略 {{omit}} 个)", "(Leave empty to dissolve tag)": "(留空以删除标签)", "(Optional: redirect model names)": "(可选:重定向模型名称)", "(Override all channels' groups)": "覆盖所有渠道的分组", "(Override all channels' models)": "覆盖所有渠道的模型", - "({{total}} total, {{omit}} omitted)": "(共 {{total}} 个,省略 {{omit}} 个)", - ", and": ",和", - ". Please fix the JSON before saving.": "。请在保存前修复 JSON。", - ". This action cannot be undone.": "。此操作无法撤销。", - "...": "...", + "[{\"ChatGPT\":\"https://chat.openai.com\"},{\"Lobe Chat\":\"https://chat-preview.lobehub.com/?settings={...}\"}]": "[{\"ChatGPT\":\"https://chat.openai.com\"},{\"Lobe Chat\":\"https://chat-preview.lobehub.com/?settings={...}\"}]", + "[{\"name\":\"支付宝\",\"type\":\"alipay\",\"color\":\"#1677FF\"}]": "[{\"name\":\"支付宝\",\"type\":\"alipay\",\"color\":\"#1677FF\"}]", + "{\"original-model\": \"replacement-model\"}": "{\"original-model\": \"replacement-model\"}", + "{{category}} Models": "{{category}} 模型", + "{{count}} channel(s) deleted": "已删除 {{count}} 个渠道", + "{{count}} channel(s) disabled": "已禁用 {{count}} 个渠道", + "{{count}} channel(s) enabled": "已启用 {{count}} 个渠道", + "{{count}} channel(s) failed to disable": "{{count}} 个渠道禁用失败", + "{{count}} channel(s) failed to enable": "{{count}} 个渠道启用失败", + "{{count}} days ago": "{{count}} 天前", + "{{count}} days remaining": "剩余 {{count}} 天", + "{{count}} disabled channel(s) deleted": "已删除 {{count}} 个已禁用的渠道", + "{{count}} hours ago": "{{count}} 小时前", + "{{count}} IP(s)": "{{count}} 个 IP", + "{{count}} log entries removed.": "已删除 {{count}} 条日志。", + "{{count}} minutes ago": "{{count}} 分钟前", + "{{count}} model(s)": "{{count}} 个模型", + "{{count}} months ago": "{{count}} 个月前", + "{{count}} override": "{{count}} 个覆盖", + "{{count}} tiers": "{{count}} 档", + "{{count}} weeks ago": "{{count}} 周前", + "{{field}} updated to {{value}}": "{{field}} 已更新为 {{value}}", + "{{field}} updated to {{value}} for tag: {{tag}}": "标签「{{tag}}」的 {{field}} 已更新为 {{value}}", + "{{n}} model(s) selected": "已选 {{n}} 个模型", + "{{value}}ms": "{{value}} 毫秒", + "{{value}}s": "{{value}} 秒", + "@lobehub/icons key": "@lobehub/icons 键", + "@lobehub/icons key name": "@lobehub/icons 键名", "/status/": "/status/", "/your/endpoint": "/your/endpoint", + "% off": "折", + "`, and `-nothinking` suffixes while routing to the correct Gemini variant.": "`, 和 `-nothinking` 后缀,同时路由到正确的 Gemini 变体。", + "© 2025 Your Company. All rights reserved.": "© 2025 您的公司。保留所有权利。", + "← Left": "← 向左", + "→ Right": "→ 向右", + "↑ Up": "↑ 向上", + "↓ Down": "↓ 向下", + "↘ Diagonal": "↘ 对角线", + "| Based on": "| 基于", + "⊙ Radial": "⊙ 径向", "0 means unlimited": "0 表示不限", "1 Day": "1 天", - "1 Hour": "1 小时", - "1 Month": "1 个月", "1 day ago": "1 天前", + "1 Hour": "1 小时", "1 hour ago": "1 小时前", "1 minute ago": "1 分钟前", + "1 Month": "1 个月", "1 month ago": "1 个月前", "1 week ago": "1 周前", "1 year ago": "1 年前", - "1) Click \"Open authorization page\" and complete login. 2) Your browser may redirect to localhost (it is OK if the page does not load). 3) Copy the full URL from the address bar and paste it below. 4) Click \"Generate credential\".": "1) 点击「打开授权页」并完成登录。2) 浏览器可能跳转到 localhost(页面打不开也正常)。3) 从地址栏复制完整 URL 粘贴到下方。4) 点击「生成凭据」。", "1. Create an application in your Gotify server": "1. 在您的 Gotify 服务器中创建一个应用程序", + "1) Click \"Open authorization page\" and complete login. 2) Your browser may redirect to localhost (it is OK if the page does not load). 3) Copy the full URL from the address bar and paste it below. 4) Click \"Generate credential\".": "1) 点击「打开授权页」并完成登录。2) 浏览器可能跳转到 localhost(页面打不开也正常)。3) 从地址栏复制完整 URL 粘贴到下方。4) 点击「生成凭据」。", "10 / page": "10 条/页", "100 / page": "100 条/页", "14 Days": "14 天", @@ -47,56 +86,7 @@ "7 Days": "7 天", "7 days ago": "7 天前", "80,443,8080": "80,443,8080", - "? This action cannot be undone.": "?此操作无法撤销。", - "@lobehub/icons key": "@lobehub/icons 键", - "@lobehub/icons key name": "@lobehub/icons 键名", "A text banner displayed at the top of all pages. Leave empty to disable.": "在所有页面顶部显示的文本横幅。留空则禁用。", - "AGPL v3.0 License": "AGPL v3.0 协议", - "AI Proxy": "AI Proxy", - "AI Proxy Library": "AI 代理库", - "AI model testing environment": "AI模型测试环境", - "AI models": "AI 模型", - "AI models supported": "支持的 AI 模型", - "AIGC2D": "AIGC2D", - "AILS": "AILS", - "AK/SK mode: use AccessKey|SecretAccessKey|Region": "AK/SK 模式:使用 AccessKey|SecretAccessKey|Region", - "API Access": "API 访问", - "API Addresses": "API 地址", - "API Base URL (Important: Not Chat API) *": "API 基础 URL (重要:非聊天 API) *", - "API Base URL *": "API 基础 URL *", - "API Endpoints": "API 端点", - "API Info": "API 信息", - "API Key": "API 密钥", - "API Key (Production)": "API 密钥(生产)", - "API Key (Sandbox)": "API 密钥(沙盒)", - "API Key (one per line for batch mode)": "API 密钥(批量模式下每行一个)", - "API Key *": "API 密钥 *", - "API Key created successfully": "API 密钥创建成功", - "API Key deleted successfully": "API 密钥删除成功", - "API Key disabled successfully": "API 密钥禁用成功", - "API Key enabled successfully": "API 密钥启用成功", - "API Key mode (does not support batch creation)": "API Key 模式(不支持批量创建)", - "API Key mode: use APIKey|Region": "API Key 模式:使用 APIKey|Region", - "API Key updated successfully": "API 密钥更新成功", - "API Keys": "API 密钥", - "API Private Key": "API 私钥", - "API Requests": "API 请求", - "API URL": "API URL", - "API info added. Click \"Save Settings\" to apply.": "API 信息已添加。点击 \"保存设置\" 以应用。", - "API info deleted. Click \"Save Settings\" to apply.": "API 信息已删除。点击 \"保存设置\" 以应用。", - "API info saved successfully": "API 信息保存成功", - "API info updated. Click \"Save Settings\" to apply.": "API 信息已更新。点击 \"保存设置\" 以应用。", - "API key": "API 密钥", - "API key from the provider": "来自提供商的 API 密钥", - "API key is required": "需要 API 密钥", - "API secret": "API 秘钥", - "API token management": "API令牌管理", - "API usage records": "API使用记录", - "API2GPT": "API2GPT", - "AWS": "AWS", - "AWS Bedrock Claude Compat": "AWS Bedrock Claude 兼容模板", - "AWS Key Format": "AWS 密钥格式", - "AZURE_OPENAI_ENDPOINT *": "AZURE_OPENAI_ENDPOINT *", "About": "关于", "Accept Unpriced Models": "接受未定价模型", "Accepts a JSON array of model identifiers that support the Imagine API.": "接受支持 Imagine API 的模型标识符的 JSON 数组。", @@ -104,43 +94,28 @@ "Access Denied Message": "访问被拒绝消息", "Access Forbidden": "禁止访问", "Access Policy (JSON)": "访问策略 (JSON)", - "Access Token": "访问令牌", "Access previous conversations and start new ones.": "访问之前的对话并开始新的对话。", + "Access Token": "访问令牌", "AccessKey / SecretAccessKey": "AccessKey / SecretAccessKey", "Account Binding Management": "账户绑定管理", "Account Bindings": "账户绑定", - "Account ID *": "账户 ID *", - "Account Info": "账户信息", "Account created! Please sign in": "账户已创建!请登录", "Account deleted successfully": "账户删除成功", + "Account ID *": "账户 ID *", + "Account Info": "账户信息", "Account used when authenticating with the SMTP server": "用于与 SMTP 服务器进行身份验证的账户", "Action confirmation": "操作确认", "Actions": "操作", + "active": "活跃", "Active": "生效", "Active Cache Count": "活跃缓存数", "Active Files": "活跃文件", + "active users": "活跃用户", "Actual Amount": "实付金额", "Actual Model": "实际模型", "Actual Model:": "实际模型:", "Add": "添加", - "Add API": "添加 API", - "Add API Shortcut": "添加 API 快捷方式", - "Add Announcement": "添加公告", - "Add Condition": "添加条件", - "Add FAQ": "添加问答", - "Add Funds": "添加资金", - "Add Group": "添加分组", - "Add Mapping": "添加映射", - "Add Mode": "添加模式", - "Add Model": "添加模型", - "Add Models": "新增模型", - "Add OAuth Provider": "添加 OAuth 提供商", - "Add Provider": "添加提供商", - "Add Quota": "添加配额", - "Add Row": "添加行", - "Add Rule": "添加规则", - "Add Uptime Kuma Group": "添加 Uptime Kuma 分组", - "Add User": "添加用户", + "Add {{title}}": "添加{{title}}", "Add a group identifier to the auto assignment list.": "将分组标识符添加到自动分配列表。", "Add a new API key by providing necessary info.": "通过提供必要信息添加新的 API 密钥。", "Add a new channel by providing the necessary information.": "通过提供必要信息添加新的通道。", @@ -150,25 +125,41 @@ "Add an extra layer of security to your account": "为您的账户添加额外的安全层", "Add and submit": "添加后提交", "Add animation effects to the banner background.": "为横幅背景添加动画效果。", + "Add Announcement": "添加公告", + "Add API": "添加 API", + "Add API Shortcut": "添加 API 快捷方式", "Add auto group": "添加自动分组", "Add chat preset": "添加聊天预设", "Add condition": "新增条件", + "Add Condition": "添加条件", "Add custom model(s), comma-separated": "添加自定义模型(多个以逗号分隔)", "Add discount tier": "添加折扣等级", "Add each model or tag you want to include.": "添加您想要包含的每个模型或标签。", + "Add FAQ": "添加问答", "Add from available models...": "从可用模型中添加...", + "Add Funds": "添加资金", "Add group": "添加分组", + "Add Group": "添加分组", "Add group rate limit": "添加组速率限制", "Add group rules": "添加分组规则", + "Add Mapping": "添加映射", "Add method": "添加方法", + "Add Mode": "添加模式", "Add model": "添加模型", + "Add Model": "添加模型", + "Add Models": "新增模型", "Add new amount": "添加新金额", "Add new redemption code(s) by providing necessary info.": "通过提供必要信息添加新的兑换码。", + "Add OAuth Provider": "添加 OAuth 提供商", "Add param/header": "新增参数/Header", "Add payment method": "新增支付方式", "Add photos or files": "添加照片或文件", "Add product": "添加产品", + "Add Provider": "添加提供商", + "Add Quota": "添加配额", "Add ratio override": "添加倍率覆盖", + "Add Row": "添加行", + "Add Rule": "添加规则", "Add rule group": "新增规则组", "Add selectable group": "添加可选分组", "Add subscription": "新增订阅", @@ -176,35 +167,36 @@ "Add tier": "新增档位", "Add time condition": "新增时间条件", "Add time rule group": "新增时间规则组", + "Add Uptime Kuma Group": "添加 Uptime Kuma 分组", + "Add User": "添加用户", "Add user group": "添加用户分组", "Add your API keys, set up channels and configure access permissions": "添加 API 密钥,设置渠道并配置访问权限", - "Add {{title}}": "添加{{title}}", - "Added successfully": "新增成功", "Added {{count}} custom model(s)": "已添加 {{count}} 个自定义模型", "Added {{count}} model(s)": "已添加 {{count}} 个模型", + "Added successfully": "新增成功", "Additional Conditions": "附加条件", + "Additional information": "附加信息", "Additional Information": "附加信息", "Additional Limit": "附加额度", "Additional Limits": "附加额度", - "Additional information": "附加信息", "Additional metered capability": "附加计费能力", "Adjust Quota": "调整额度", "Adjust response formatting, prompt behavior, proxy, and upstream automation.": "调整响应格式、提示词行为、代理和上游自动化。", "Adjust the appearance and layout to suit your preferences.": "调整外观和布局以适应您的偏好。", "Admin": "管理员", - "Admin Only": "仅限管理员", "Admin access required": "需要管理员权限", "Admin area": "管理员区域", "Admin notes (only visible to admins)": "管理员备注(仅管理员可见)", + "Admin Only": "仅限管理员", "Administer user accounts and roles.": "管理用户账户和角色。", "Administrator account": "管理员账户", "Administrator username": "管理员用户名", "Advanced": "高级", "Advanced Configuration": "高级配置", - "Advanced Options": "高级选项", - "Advanced Settings": "高级设置", "Advanced options": "高级选项", + "Advanced Options": "高级选项", "Advanced platform configuration.": "高级平台配置。", + "Advanced Settings": "高级设置", "Advanced text editing": "高级文本编辑", "After clicking the button, you'll be asked to authorize the bot": "点击按钮后,您将被要求授权机器人", "After disabling, it will no longer be shown to users, but historical orders are not affected. Continue?": "禁用后用户端不再展示,但历史订单不受影响。是否继续?", @@ -213,40 +205,51 @@ "After scanning, the binding will complete automatically": "扫描后,绑定将自动完成", "Agent ID *": "代理 ID *", "Aggregated usage metrics and trend charts.": "聚合使用指标和趋势图表。", + "aggregates 50+ AI providers behind one unified API. Manage access, track costs, and scale effortlessly.": "聚合 50+ AI 提供商于统一 API 之后。轻松管理访问、追踪成本、弹性扩展。", + "AGPL v3.0 License": "AGPL v3.0 协议", + "AI model testing environment": "AI模型测试环境", + "AI models": "AI 模型", + "AI models supported": "支持的 AI 模型", + "AI Proxy": "AI Proxy", + "AI Proxy Library": "AI 代理库", + "AIGC2D": "AIGC2D", + "AILS": "AILS", + "AK/SK mode: use AccessKey|SecretAccessKey|Region": "AK/SK 模式:使用 AccessKey|SecretAccessKey|Region", "Ali": "阿里", "All": "全部", + "All edits are overwrite operations. Leave fields empty to keep current values unchanged.": "所有编辑都是覆盖操作。留空字段将保持当前值不变。", + "All files exceed the maximum size.": "所有文件都超过最大尺寸。", "All Groups": "所有分组", "All Models": "所有模型", + "All models in use are properly configured.": "所有正在使用的模型都已正确配置。", "All Must Match (AND)": "全部满足(AND)", "All Status": "所有状态", "All Sync Status": "所有同步状态", "All Tags": "所有标签", "All Types": "所有类型", + "All upstream data is trusted": "所有上游数据均受信任", "All Vendors": "所有供应商", "All Your AI Models": "所有 AI 模型", - "All edits are overwrite operations. Leave fields empty to keep current values unchanged.": "所有编辑都是覆盖操作。留空字段将保持当前值不变。", - "All files exceed the maximum size.": "所有文件都超过最大尺寸。", - "All models in use are properly configured.": "所有正在使用的模型都已正确配置。", - "All upstream data is trusted": "所有上游数据均受信任", "Allocated Memory": "已分配内存", - "Allow Claude beta query passthrough": "允许 Claude beta 查询透传", - "Allow HTTP image requests": "允许 HTTP 图像请求", - "Allow Insecure Origins": "允许不安全来源", - "Allow Private IPs": "允许私有 IP", - "Allow Retry": "允许重试", "Allow accountFilter parameter": "允许 accountFilter 参数", + "Allow Claude beta query passthrough": "允许 Claude beta 查询透传", "Allow clients to query configured ratios via `/api/ratio`.": "允许客户端通过 `/api/ratio` 查询配置的比例。", + "Allow HTTP image requests": "允许 HTTP 图像请求", "Allow include usage obfuscation passthrough": "允许 include 用量混淆透传", "Allow inference geography passthrough": "允许推理地理位置透传", "Allow inference_geo passthrough": "允许 inference_geo 透传", + "Allow Insecure Origins": "允许不安全来源", "Allow new users to register": "允许新用户注册", + "Allow Private IPs": "允许私有 IP", "Allow registration with password": "允许使用密码注册", "Allow requests to private IP ranges (10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16)": "允许请求私有 IP 范围 (10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16)", + "Allow Retry": "允许重试", "Allow safety_identifier passthrough": "允许透传 safety_identifier", "Allow service_tier passthrough": "允许透传 service_tier", "Allow speed passthrough": "允许 speed 透传", "Allow upstream callbacks": "允许上游回调", "Allow users to check in daily for random quota rewards": "允许用户每日签到获取随机额度奖励", + "Allow users to close this banner. If disabled, the close button is hidden.": "允许用户关闭此横幅。关闭后,将隐藏关闭按钮。", "Allow users to enter promo codes": "允许用户输入促销代码", "Allow users to log in with password": "允许用户使用密码登录", "Allow users to register and sign in with Passkey (WebAuthn)": "允许用户使用通行密钥 (WebAuthn) 注册和登录", @@ -255,8 +258,8 @@ "Allow users to sign in with LinuxDO": "允许用户使用 LinuxDO 登录", "Allow users to sign in with OpenID Connect": "允许用户使用 OpenID Connect 登录", "Allow users to sign in with Telegram": "允许用户使用 Telegram 登录", - "Allow users to sign in with WeChat": "允许用户使用微信登录", "Allow users to sign in with this provider": "允许用户使用此提供商登录", + "Allow users to sign in with WeChat": "允许用户使用微信登录", "Allow using models without price configuration": "允许使用未配置价格的模型", "Allowed": "允许", "Allowed Origins": "允许的 Origins", @@ -265,21 +268,24 @@ "Alternate": "交替", "Always matches (default tier).": "始终匹配(默认档位)。", "Amount": "金额", - "Amount Due": "应付金额", "Amount cannot be changed when editing.": "编辑时无法更改数量。", "Amount discount": "金额折扣", + "Amount Due": "应付金额", "Amount must be a whole number": "金额必须为整数", "Amount must be greater than 0": "金额必须大于 0", "Amount of quota to credit to user account.": "添加到用户账户的配额数量。", "Amount options must be a JSON array": "金额选项必须是 JSON 数组", "Amount to pay:": "待支付金额:", "An unexpected error occurred": "发生意外错误", + "and": "和", "Animation": "动画", + "Animation Presets": "动效预设", + "Animation presets can use custom colors and speed.": "动效预设可以自定义颜色和速度。", "Animation Type": "动画类型", - "Announcement Details": "公告详情", "Announcement added. Click \"Save Settings\" to apply.": "公告已添加。点击 \"保存设置\" 以应用。", "Announcement content": "公告内容", "Announcement deleted. Click \"Save Settings\" to apply.": "公告已删除。点击 \"保存设置\" 以应用。", + "Announcement Details": "公告详情", "Announcement displayed to users (supports Markdown & HTML)": "向用户显示的公告(支持 Markdown 和 HTML)", "Announcement updated. Click \"Save Settings\" to apply.": "公告已更新。点击 \"保存设置\" 以应用。", "Announcements": "公告", @@ -287,13 +293,47 @@ "Answer": "答案", "Anthropic": "Anthropic", "Any Match (OR)": "任一满足(OR)", + "API Access": "API 访问", + "API Addresses": "API 地址", + "API Base URL (Important: Not Chat API) *": "API 基础 URL (重要:非聊天 API) *", + "API Base URL *": "API 基础 URL *", + "API Endpoints": "API 端点", + "API Info": "API 信息", + "API info added. Click \"Save Settings\" to apply.": "API 信息已添加。点击 \"保存设置\" 以应用。", + "API info deleted. Click \"Save Settings\" to apply.": "API 信息已删除。点击 \"保存设置\" 以应用。", + "API info saved successfully": "API 信息保存成功", + "API info updated. Click \"Save Settings\" to apply.": "API 信息已更新。点击 \"保存设置\" 以应用。", + "API key": "API 密钥", + "API Key": "API 密钥", + "API Key (one per line for batch mode)": "API 密钥(批量模式下每行一个)", + "API Key (Production)": "API 密钥(生产)", + "API Key (Sandbox)": "API 密钥(沙盒)", + "API Key *": "API 密钥 *", + "API Key created successfully": "API 密钥创建成功", + "API Key deleted successfully": "API 密钥删除成功", + "API Key disabled successfully": "API 密钥禁用成功", + "API Key enabled successfully": "API 密钥启用成功", + "API key from the provider": "来自提供商的 API 密钥", + "API key is required": "需要 API 密钥", + "API Key mode (does not support batch creation)": "API Key 模式(不支持批量创建)", + "API Key mode: use APIKey|Region": "API Key 模式:使用 APIKey|Region", + "API Key updated successfully": "API 密钥更新成功", + "API Keys": "API 密钥", + "API Private Key": "API 私钥", + "API Requests": "API 请求", + "API secret": "API 秘钥", + "API token management": "API令牌管理", + "API URL": "API URL", + "API usage records": "API使用记录", + "API2GPT": "API2GPT", "Append": "追加", - "Append Template": "追加模板", "Append mode: New keys will be added to the end of the existing key list": "追加模式:新键将添加到现有键列表的末尾", - "Append to End": "追加到末尾", + "Append Template": "追加模板", "Append to channel": "追加到渠道", + "Append to End": "追加到末尾", "Append to existing keys": "追加到现有密钥", "Append value to array / string / object end": "把值追加到数组/字符串/对象末尾", + "appended": "已追加", "Application": "应用", "Applies to custom completion endpoints. JSON map of model → ratio.": "适用于自定义补全端点。模型 → 比例的 JSON 映射。", "Apply All Upstream Updates": "应用所有上游更新", @@ -303,6 +343,7 @@ "Apply Sync": "应用同步", "Applying...": "正在应用...", "Approx.": "约", + "are also listed here. Remove them from Models to keep the `/v1/models` response user-friendly and hide vendor-specific names.": "也在此处列出。将它们从模型中移除,以保持 `/v1/models` 响应对用户友好并隐藏供应商特定的名称。", "Are you sure you want to delete": "您确定要删除吗", "Are you sure you want to delete all auto-disabled keys? This action cannot be undone.": "您确定要删除所有自动禁用的密钥吗?此操作无法撤销。", "Are you sure you want to delete deployment \"{{name}}\"? This action cannot be undone.": "确定要删除部署 \"{{name}}\" 吗?此操作不可撤销。", @@ -324,19 +365,20 @@ "At least one valid key source is required": "至少需要一个有效的密钥来源", "Attach": "附加", "Audio": "音频", + "Audio comp.": "音频补全", + "Audio completion ratio": "音频补全倍率", "Audio In": "音频输入", + "Audio input": "音频输入", "Audio Input": "语音输入", "Audio Input Price": "音频输入价格", "Audio Out": "音频输出", - "Audio Output": "语音输出", - "Audio Preview": "音乐预览", - "Audio Tokens": "语音 Token", - "Audio comp.": "音频补全", - "Audio completion ratio": "音频补全倍率", - "Audio input": "音频输入", "Audio output": "音频输出", + "Audio Output": "语音输出", "Audio playback failed": "音频无法播放", + "Audio Preview": "音乐预览", "Audio ratio": "音频倍率", + "Audio Tokens": "语音 Token", + "Aurora": "极光", "Auth Style": "认证方式", "Authentication": "身份验证", "Authenticator code": "身份验证器代码", @@ -345,13 +387,13 @@ "Authorize": "授权", "Auto": "自动", "Auto (Circuit Breaker)": "自动分组(熔断)", + "Auto assignment order": "自动分配顺序", "Auto Ban": "自动封禁", + "Auto detect (default)": "自动检测(默认)", "Auto Disabled": "自动禁用", "Auto Group Chain": "自动分组链", - "Auto Sync Upstream Models": "自动同步上游模型", - "Auto assignment order": "自动分配顺序", - "Auto detect (default)": "自动检测(默认)", "Auto refresh": "自动刷新", + "Auto Sync Upstream Models": "自动同步上游模型", "Auto-Accept Unpriced Models on Registration": "注册时自动启用\"接受未定价模型\"", "Auto-disable status codes": "自动禁用状态码", "Auto-discover": "自动发现", @@ -372,19 +414,24 @@ "Availability Panel": "可用性面板", "Availability Status Monitor": "可用性状态监控", "Available": "可用", + "Available disk space": "可用磁盘空间", "Available Models": "可用模型", "Available Rewards": "可用奖励", - "Available disk space": "可用磁盘空间", "Average RPM": "平均 RPM", "Average TPM": "平均 TPM", - "Azure": "Azure", + "AWS": "AWS", + "AWS Bedrock Claude Compat": "AWS Bedrock Claude 兼容模板", + "AWS Key Format": "AWS 密钥格式", + "Azure": "Azure", + "AZURE_OPENAI_ENDPOINT *": "AZURE_OPENAI_ENDPOINT *", "Back": "返回", "Back to Home": "返回主页", - "Back to Models": "返回模型", "Back to login": "返回登录", + "Back to Models": "返回模型", "Backed up": "已备份", - "Background Type": "背景类型", + "Background color": "背景色", "Background job tracker for queued work.": "队列工作的后台作业跟踪器。", + "Background Type": "背景类型", "Backup Code": "备用代码", "Backup code must be in format XXXX-XXXX": "备份代码必须为 XXXX-XXXX 格式", "Backup codes regenerated successfully": "备份代码重新生成成功", @@ -399,54 +446,56 @@ "Balance updated successfully": "余额更新成功", "Balance updated: {{balance}}": "余额已更新:{{balance}}", "Banner Content": "横幅内容", + "Banner Dismissible": "横幅可关闭", "Banner Font Color": "横幅字体颜色", + "Banner Type": "横幅类型", "Bar Chart": "柱状图", "Bark Push URL": "Bark 推送 URL", - "Base Limits": "基础额度", - "Base Price": "基础价格", - "Base URL": "API 地址", - "Base URL of your Uptime Kuma instance": "您的 Uptime Kuma 实例的基础 URL", "Base address provided by your Epay service": "您的 Epay 服务提供的基础地址", "Base amount. Actual deduction = base amount × system group rate.": "基础金额,实际扣费 = 基础金额 × 系统分组倍率。", + "Base Limits": "基础额度", "Base multipliers applied when users select specific groups.": "当用户选择特定分组时应用的基础乘数。", + "Base Price": "基础价格", "Base rate limit windows for this account.": "当前账号的基础额度窗口。", + "Base URL": "API 地址", + "Base URL of your Uptime Kuma instance": "您的 Uptime Kuma 实例的基础 URL", "Basic Authentication": "基本身份验证", "Basic Configuration": "基本配置", "Basic Info": "基本信息", "Basic Information": "基本信息", "Basic Templates": "基础模板", "Batch Add (one key per line)": "批量添加(每行一个密钥)", - "Batch Edit": "批量编辑", - "Batch Edit by Tag": "按标签批量编辑", "Batch delete failed": "批量删除失败", "Batch detection complete: {{channels}} channels, {{add}} to add, {{remove}} to remove, {{fails}} failed": "批量检测完成:渠道 {{channels}} 个,新增 {{add}} 个,删除 {{remove}} 个,失败 {{fails}} 个", "Batch detection failed": "批量检测失败", "Batch disable failed": "批量禁用失败", + "Batch Edit": "批量编辑", "Batch edit all channels with this tag. Leave fields empty to keep current values.": "批量编辑带有此标签的所有渠道。留空字段以保留当前值。", + "Batch Edit by Tag": "按标签批量编辑", "Batch enable failed": "批量启用失败", "Batch processing failed": "批量处理失败", "Batch upstream model updates applied: {{channels}} channels, {{added}} added, {{removed}} removed, {{fails}} failed": "已批量处理上游模型更新:渠道 {{channels}} 个,加入 {{added}} 个,删除 {{removed}} 个,失败 {{fails}} 个", "Best for single-tenant deployments. Pricing and billing options stay hidden.": "适合单用户部署。定价和计费选项将被隐藏。", "Billing": "计费", + "Billing currency": "计费货币", "Billing Details": "计费详情", "Billing History": "计费历史", "Billing Mode": "计费模式", "Billing Process": "计费过程", "Billing Source": "计费来源", - "Billing currency": "计费货币", "Bind": "绑定", + "Bind an email address to your account.": "将邮箱地址绑定到您的账户。", "Bind Email": "绑定邮箱", "Bind Telegram Account": "绑定 Telegram 账户", "Bind WeChat Account": "绑定微信账户", - "Bind an email address to your account.": "将邮箱地址绑定到您的账户。", "Binding Information": "绑定信息", "Binding successful!": "绑定成功!", "Binding your {{provider}} account": "正在绑定您的 {{provider}} 账号", "Binding...": "绑定中...", "Bindings": "绑定", "Blacklist": "黑名单", - "Blacklist (Block listed IPs)": "黑名单(已阻止的 IP)", "Blacklist (Block listed domains)": "黑名单(已阻止的域)", + "Blacklist (Block listed IPs)": "黑名单(已阻止的 IP)", "Blank Rule": "空白规则", "Blend": "混合", "Blink": "闪烁", @@ -465,18 +514,15 @@ "Broadcast a global banner to users. Markdown is supported.": "向用户广播全局横幅。支持 Markdown。", "Broadcast short system notices on the dashboard": "在仪表板上广播简短的系统通知", "Browse and compare": "浏览和比较", - "Budget Tokens Ratio": "预算令牌比例", "Budget tokens = max tokens × ratio. Accepts a decimal between 0.002 and 1. Recommended to keep aligned with upstream billing.": "预算令牌 = 最大令牌数 × 比例。接受 0.002 到 1 之间的十进制数。建议与上游计费保持一致。", "Budget tokens = max tokens × ratio. Accepts a decimal between 0.1 and 1.": "预算令牌 = 最大令牌数 × 比例。接受 0.1 到 1 之间的十进制数。", + "Budget Tokens Ratio": "预算令牌比例", "Budgets": "预算", "Built for developers,": "为开发者打造,", "Built-in": "内置", "Built-in Device": "内置设备", "Built-in: phone fingerprint/face, or Windows Hello; External: USB security key": "内置:手机指纹/面部,或 Windows Hello;外部:USB 安全密钥", - "CC Switch": "CC 切换", - "CNY": "元", - "CNY per USD": "人民币兑美元汇率", - "CPU Threshold (%)": "CPU 阈值 (%)", + "by": "由", "Cache": "缓存", "Cache Creation": "缓存创建", "Cache Creation (1h)": "缓存创建 (1h)", @@ -485,13 +531,13 @@ "Cache Directory Disk Space": "缓存目录磁盘空间", "Cache Directory Info": "缓存目录信息", "Cache Entries": "缓存条目", + "Cache mode": "缓存模式", + "Cache ratio": "缓存倍率", "Cache Read": "缓存读取", + "Cache write": "缓存写入", "Cache Write": "缓存写入", "Cache Write (1h)": "缓存写入 (1h)", "Cache Write (5m)": "缓存写入 (5m)", - "Cache mode": "缓存模式", - "Cache ratio": "缓存倍率", - "Cache write": "缓存写入", "Cached": "缓存", "Cached input": "缓存输入", "Calculated price: ${{price}} per 1M tokens": "计算价格:${{price}} / 1M tokens", @@ -501,11 +547,11 @@ "Call Count Ranking": "调用次数排行", "Call Proportion": "调用比例", "Call Trend": "调用趋势", + "Callback address": "回调地址", "Callback Caller IP": "回调调用者 IP", + "Callback notification URL": "回调通知地址", "Callback Payment Method": "回调支付方式", "Callback URL": "回调 URL", - "Callback address": "回调地址", - "Callback notification URL": "回调通知地址", "Cancel": "取消", "Cancelled": "已取消", "Cancelled at": "作废于", @@ -515,60 +561,63 @@ "Category name is required": "分类名称不能为空", "Category name must be less than 50 characters": "分类名称不能超过 50 个字符", "Caution": "注意", + "CC Switch": "CC 切换", "Chain": "链路", "Change": "更改", + "Change language": "更改语言", "Change Password": "更改密码", "Change To": "更改为", - "Change language": "更改语言", "Changing...": "修改中...", "Channel": "渠道", "Channel Affinity": "渠道亲和性", - "Channel Affinity: Upstream Cache Hit": "渠道亲和性:上游缓存命中", - "Channel Extra Settings": "渠道额外设置", - "Channel ID": "渠道 ID", - "Channel Provider": "渠道提供商", "Channel affinity reuses the last successful channel based on keys extracted from the request context or JSON body.": "渠道亲和性会基于从请求上下文或 JSON Body 提取的 Key,优先复用上一次成功的渠道。", + "Channel Affinity: Upstream Cache Hit": "渠道亲和性:上游缓存命中", "Channel copied successfully": "渠道复制成功", "Channel created successfully": "渠道创建成功", "Channel deleted successfully": "渠道删除成功", "Channel disabled successfully": "渠道禁用成功", "Channel enabled successfully": "渠道启用成功", + "Channel Extra Settings": "渠道额外设置", + "Channel ID": "渠道 ID", "Channel key": "渠道密钥", "Channel key unlocked": "渠道密钥已解锁", "Channel models": "渠道模型", "Channel name is required": "渠道名称是必填的", + "Channel Provider": "渠道提供商", "Channel test completed": "渠道测试完成", "Channel type is required": "渠道类型是必填的", "Channel updated successfully": "渠道更新成功", "Channel-specific settings (JSON format)": "渠道特定设置(JSON 格式)", "Channel:": "频道:", + "channel(s)? This action cannot be undone.": "渠道?此操作无法撤销。", "Channels": "渠道", "Channels deleted successfully": "渠道删除成功", "Chart Preferences": "图表偏好设置", "Chart Settings": "图表设置", "Chat": "聊天", + "Chat area": "聊天区域", "Chat Area": "聊天区域", "Chat Client Name": "聊天客户端名称", - "Chat Presets": "聊天预设", - "Chat area": "聊天区域", "Chat client name is required": "聊天客户端名称为必填项", "Chat configuration JSON": "聊天配置 JSON", "Chat preset not found": "未找到聊天预设", + "Chat Presets": "聊天预设", "Chat session management": "聊天会话管理", "ChatCompletions -> Responses Compatibility": "ChatCompletions → 响应兼容", "Check for updates": "检查更新", "Check in daily to receive random quota rewards": "每日签到可获得随机额度奖励", "Check in now": "立即签到", "Check resolved IPs against IP filters even when accessing by domain": "即使通过域名访问,也对照 IP 过滤器检查解析的 IP", - "Check-in Settings": "签到设置", "Check-in failed": "签到失败", + "Check-in Settings": "签到设置", "Check-in successful! Received": "签到成功!获得", "Checked in": "已签到", "Checking connection": "检查连接", "Checking name...": "正在检查名称...", "Checking updates...": "检查更新中...", + "checkout.session.completed": "checkout.session.completed", + "checkout.session.expired": "checkout.session.expired", "Chinese": "中文", - "Choose Group": "选择分组", "Choose a preset effect and customize colors and speed.": "选择预设效果并自定义颜色和速度。", "Choose a primary color for the interface": "选择界面的主色调", "Choose a username": "选择一个用户名", @@ -578,10 +627,12 @@ "Choose between left-to-right or right-to-left site direction": "选择从左到右或从右到左的站点方向", "Choose between system preference, light mode, or dark mode": "选择系统偏好、浅色模式或深色模式", "Choose channels to sync upstream ratio configurations from": "选择要同步上游比例配置的渠道", + "Choose Group": "选择分组", "Choose how quota values are shown to users": "选择如何向用户展示配额值", "Choose how the platform will operate": "选择平台的运行模式", - "Choose how to filter IP addresses": "选择如何过滤 IP 地址", "Choose how to filter domains": "选择如何过滤域名", + "Choose how to filter IP addresses": "选择如何过滤 IP 地址", + "Choose the banner category. Each category uses a matching visual style.": "选择横幅分类。每个分类会使用匹配的视觉样式。", "Choose the bundle type and define the items inside it.": "选择捆绑包类型并定义其中的项目。", "Choose the default charts, range, and time granularity for model analytics.": "选择模型调用分析的默认图表、范围和时间粒度。", "Choose where to fetch upstream metadata.": "选择从何处获取上游元数据。", @@ -589,22 +640,22 @@ "Classic (Legacy Frontend)": "经典前端", "Claude": "Claude", "Claude CLI Header Passthrough": "Claude CLI 请求头透传", - "Clean Up Log Files": "清理日志文件", "Clean history logs": "清理历史日志", "Clean logs": "清理日志", "Clean up inactive cache": "清理不活跃缓存", + "Clean Up Log Files": "清理日志文件", "Cleaned up {{count}} log files, freed {{size}}": "已清理 {{count}} 个日志文件,释放 {{size}}", "Cleaning...": "正在清理...", - "Cleanup Mode": "清理方式", "Cleanup failed": "清理失败", + "Cleanup Mode": "清理方式", "Clear": "清空", + "Clear all": "清除全部", "Clear All": "清除全部", "Clear All Cache": "清空全部缓存", - "Clear Mapping": "清除映射", - "Clear all": "清除全部", "Clear all filters": "清除所有筛选", "Clear cache for this rule": "清空该规则缓存", "Clear filters": "清除筛选器", + "Clear Mapping": "清除映射", "Clear mode flags in prompts": "在提示中清除模式标志", "Clear search": "清除搜索", "Clear selection": "清除选择", @@ -614,8 +665,8 @@ "Click \"Create Plan\" to create your first subscription plan": "点击「新建套餐」创建您的第一个订阅套餐", "Click \"Generate\" to create a token": "点击“生成”以创建令牌", "Click for details": "点击查看详情", - "Click save when you're done.": "完成后点击保存。", "Click save when you're done.": "完成後點擊保存。", + "Click save when you're done.": "完成后点击保存。", "Click the button below to bind your Telegram account": "点击下方按钮绑定您的 Telegram 账户", "Click to open deployment": "点击打开部署", "Click to preview audio": "点击预览音乐", @@ -625,27 +676,29 @@ "Click to view full details": "点击查看详细信息", "Click to view full error message": "点击查看完整错误信息", "Click to view full prompt": "点击查看完整提示词", + "Client header value": "客户端请求头值", "Client ID": "Client ID", "Client Secret": "Client Secret", - "Client header value": "客户端请求头值", "Close": "关闭", - "Close Today": "今日关闭", "Close dialog": "关闭对话框", "Close menu": "关闭菜单", + "Close Today": "今日关闭", "Cloudflare": "Cloudflare", + "CNY": "元", + "CNY per USD": "人民币兑美元汇率", "Code": "编码", "Codes copied!": "代码已复制!", "Codex": "Codex", "Codex Account & Usage": "Codex 账户和用量", "Codex Authorization": "Codex 授权", - "Codex CLI Header Passthrough": "Codex CLI 请求头透传", "Codex channels use an OAuth JSON credential as the key.": "Codex 频道使用 OAuth JSON 凭据作为密钥。", + "Codex CLI Header Passthrough": "Codex CLI 请求头透传", "Cohere": "Cohere", "Collapse": "收起", "Collapse All": "全部收起", "Color": "颜色", - "Color Stops": "色标", "Color is required": "颜色为必填项", + "Color Stops": "色标", "Color:": "颜色:", "Coming Soon!": "即将推出!", "Comma-separated color values for the gradient.": "逗号分隔的渐变颜色值。", @@ -658,9 +711,10 @@ "Common": "通用", "Common Keys": "常用 Key", "Common Logs": "通用日志", - "Common User": "普通用户", "Common ports include 25, 465, and 587": "常用端口包括 25、465 和 587", + "Common User": "普通用户", "Community driven, self-hosted, and extensible": "社区驱动、可自托管、易于扩展", + "compatible API routes": "兼容 API 路由", "Compatible API routes for common AI application workflows": "兼容常见 AI 应用工作流的 API 路由", "Complete API documentation with multi-language SDK support": "完整的 API 文档,支持多语言 SDK", "Complete Order": "补单", @@ -684,12 +738,6 @@ "Configuration for Stripe payment integration": "Stripe 支付集成的配置", "Configuration required": "需要配置", "Configure": "配置", - "Configure API documentation links for the dashboard": "配置仪表板的 API 文档链接", - "Configure Creem products. Provide a JSON array.": "配置 Creem 产品。提供 JSON 数组。", - "Configure Gemini safety behavior, version overrides, and thinking adapter": "配置 Gemini 安全行为、版本覆盖和思维适配器", - "Configure Passkey (WebAuthn) login settings": "配置 Passkey (WebAuthn) 登录设置", - "Configure Waffo Pancake hosted checkout integration for USD-priced top-ups": "配置 Waffo Pancake 托管结账,用于美元计价的充值", - "Configure Waffo payment aggregation platform integration": "配置 Waffo 支付聚合平台集成", "Configure a Creem product for user recharge options.": "为用户充值选项配置 Creem 产品。", "Configure a custom ratio for when users use a specific token group.": "配置用户使用特定令牌分组时的自定义倍率。", "Configure a group that users can select when creating API keys.": "配置用户在创建 API 密钥时可以选择的分组。", @@ -697,21 +745,25 @@ "Configure a payment method for user recharge options.": "配置用于用户充值选项的支付方式。", "Configure a predefined chat link for end users.": "为终端用户配置预定义的聊天链接。", "Configure and deploy a new container instance.": "配置并部署一个新的容器实例。", + "Configure API documentation links for the dashboard": "配置仪表板的 API 文档链接", "Configure at:": "配置位置:", "Configure availability monitoring panel": "配置可用性监控面板", "Configure available payment methods. Provide a JSON array.": "配置可用的支付方式。提供一个 JSON 数组。", "Configure basic system information and branding": "配置基本系统信息和品牌", "Configure channel affinity (sticky routing) rules": "配置渠道亲和性(粘滞选路)规则", + "Configure Creem products. Provide a JSON array.": "配置 Creem 产品。提供 JSON 数组。", "Configure custom OAuth providers for user authentication": "配置自定义OAuth提供商用于用户认证", "Configure daily check-in rewards for users": "配置用户每日签到奖励", "Configure discount rates based on recharge amounts": "配置基于充值金额的折扣率", "Configure experimental data export for the dashboard": "配置仪表板的实验性数据导出", + "Configure Gemini safety behavior, version overrides, and thinking adapter": "配置 Gemini 安全行为、版本覆盖和思维适配器", "Configure in your Creem dashboard": "在您的 Creem 仪表板中配置", "Configure io.net API key for model deployments": "配置 io.net API Key 用于模型部署", "Configure keyword filtering for prompts and responses.": "配置用于提示和响应的关键词过滤。", "Configure model, caching, and group ratios used for billing": "配置用于计费的模型、缓存和分组比例", "Configure monitoring status page groups for the dashboard": "配置用于仪表板的监控状态页面分组", "Configure outgoing email server for notifications": "配置用于通知的发送邮件服务器", + "Configure Passkey (WebAuthn) login settings": "配置 Passkey (WebAuthn) 登录设置", "Configure password-based login and registration": "配置基于密码的登录和注册", "Configure per-model ratio for image inputs or outputs.": "配置图像输入或输出的每模型比例。", "Configure per-tool unit prices ($/1K calls). Per-request models do not incur additional tool fees.": "为每个工具配置单价($/1K 次调用)。按请求计费的模型不额外收取工具费用。", @@ -727,6 +779,8 @@ "Configure upstream providers and routing.": "配置上游提供者和路由。", "Configure upstream worker or proxy service for outbound requests": "配置出站请求的上游工作程序或代理服务", "Configure user quota allocation and rewards": "配置用户额度分配和奖励", + "Configure Waffo Pancake hosted checkout integration for USD-priced top-ups": "配置 Waffo Pancake 托管结账,用于美元计价的充值", + "Configure Waffo payment aggregation platform integration": "配置 Waffo 支付聚合平台集成", "Configure xAI Grok model settings": "配置 xAI Grok 模型设置", "Configure xAI Grok model specific settings": "配置 xAI Grok 模型特定设置", "Configure your account behavior preferences": "配置您的账户行为偏好", @@ -737,22 +791,22 @@ "Confirm Billing Conflicts": "确认账单冲突", "Confirm Changes": "确认更改", "Confirm Cleanup": "确认清理", - "Confirm Creem Purchase": "确认 Creem 购买", - "Confirm New Password": "确认新密码", - "Confirm Payment": "确认付款", - "Confirm Selection": "确认选择", - "Confirm Unbind": "确认解绑", "Confirm cleanup of inactive disk cache?": "确认清理不活跃的磁盘缓存?", "Confirm clearing all channel affinity cache": "确认清空全部渠道亲和性缓存", "Confirm clearing cache for this rule": "确认清空该规则缓存", + "Confirm Creem Purchase": "确认 Creem 购买", "Confirm delete": "确认删除", "Confirm disable": "确认禁用", "Confirm enable": "确认启用", "Confirm invalidate": "确认作废", "Confirm log cleanup": "确认日志清理", "Confirm log file cleanup?": "确认清理日志文件?", + "Confirm New Password": "确认新密码", "Confirm password": "确认密码", + "Confirm Payment": "确认付款", + "Confirm Selection": "确认选择", "Confirm settings and finish setup": "确认设置并完成安装", + "Confirm Unbind": "确认解绑", "Confirm your identity before removing this Passkey from your account.": "在解绑当前账号的 Passkey 前请确认你的身份。", "Confirm your identity with Two-factor Authentication before registering a Passkey.": "在注册 Passkey 前请使用两步验证确认你的身份。", "Conflict": "矛盾", @@ -763,8 +817,8 @@ "Connection failed": "连接失败", "Connection successful": "连接成功", "Console": "控制台", - "Console Area": "控制台区域", "Console area": "控制台区域", + "Console Area": "控制台区域", "Consume": "消耗", "Container": "容器", "Container name": "容器名称", @@ -776,13 +830,13 @@ "Content not found.": "内容未找到。", "Content not modified!": "内容未修改!", "Continue": "继续", + "Continue with {{name}}": "使用 {{name}} 继续", "Continue with Discord": "使用 Discord 继续", "Continue with GitHub": "使用 GitHub 继续", "Continue with LinuxDO": "使用 LinuxDO 继续", "Continue with OIDC": "使用 OIDC 继续", "Continue with Telegram": "使用 Telegram 继续", "Continue with WeChat": "使用 微信 继续", - "Continue with {{name}}": "使用 {{name}} 继续", "Control log retention and clean historical data.": "控制日志保留期限并清理历史数据。", "Control passthrough behavior and connection keep-alive settings": "控制透传行为和连接保持活动设置", "Control request frequency to prevent abuse and manage system load.": "控制请求频率以防止滥用和管理系统负载。", @@ -794,32 +848,31 @@ "Convert string to lowercase": "把字符串转成小写", "Convert string to uppercase": "把字符串转成大写", "Copied": "已复制", - "Copied to clipboard": "已复制到剪贴板", "Copied {{count}} key(s)": "已复制 {{count}} 个密钥", - "Copied!": "已复制!", + "Copied to clipboard": "已复制到剪贴板", "Copied: {{model}}": "已复制: {{model}}", + "Copied!": "已复制!", "Copy": "复制", - "Copy API key": "复制 API 密钥", + "Copy a request header": "复制请求头", "Copy All": "全部复制", + "Copy all backup codes": "复制所有备份代码", "Copy All Codes": "复制所有代码", + "Copy API key": "复制 API 密钥", + "Copy authorization link": "复制授权链接", "Copy Channel": "复制渠道", + "Copy code": "复制代码", "Copy Connection Info": "复制连接信息", + "Copy failed": "复制失败", "Copy Field": "复制字段", "Copy Header": "复制请求头", "Copy Key": "复制密钥", "Copy Link": "复制链接", - "Copy Request Header": "复制请求头", - "Copy URL": "复制 URL", - "Copy a request header": "复制请求头", - "Copy all backup codes": "复制所有备份代码", - "Copy authorization link": "复制授权链接", - "Copy code": "复制代码", - "Copy failed": "复制失败", "Copy model name": "复制模型名称", "Copy model names": "复制模型名称列表", "Copy prompt": "复制提示词", "Copy redemption code": "复制兑换码", "Copy referral link": "复制推荐链接", + "Copy Request Header": "复制请求头", "Copy secret key": "复制密钥", "Copy selected codes": "复制选定的代码", "Copy selected keys": "复制选定的密钥", @@ -828,42 +881,44 @@ "Copy this prompt and send it to an LLM (e.g. ChatGPT / Claude) to help design your billing expression.": "复制以下提示词发送给 LLM(如 ChatGPT / Claude),让它帮你设计计费表达式", "Copy to clipboard": "复制到剪贴板", "Copy token": "复制令牌", + "Copy URL": "复制 URL", "Core Configuration": "核心配置", "Core Features": "核心功能", "Cost": "费用", - "Cost Tracking": "成本跟踪", "Cost in USD per request, regardless of tokens used.": "每请求的美元费用,不考虑使用的令牌数。", + "Cost Tracking": "成本跟踪", "Count must be between {{min}} and {{max}}": "计数必须介于{{min}}和{{max}}之间", "Coze": "Coze", + "CPU Threshold (%)": "CPU 阈值 (%)", "Create": "新建", - "Create API Key": "创建 API 密钥", - "Create Channel": "创建渠道", - "Create Code": "创建代码", - "Create Model": "创建模型", - "Create Plan": "新建套餐", - "Create Prefill Group": "创建预填充组", - "Create Provider": "创建提供商", - "Create Redemption Code": "创建兑换码", - "Create Vendor": "创建供应商", "Create a copy of:": "创建副本:", "Create a new user group to configure ratio overrides for.": "创建一个新的用户分组来配置比例覆盖。", "Create account": "创建账户", "Create an account": "创建一个账户", "Create and review invite or credit codes.": "创建和审查邀请或信用代码。", + "Create API Key": "创建 API 密钥", "Create cache": "创建缓存", "Create cache ratio": "创建缓存倍率", + "Create Channel": "创建渠道", + "Create Code": "创建代码", "Create credentials for the root user": "为管理员创建登录凭据", "Create deployment": "创建部署", + "Create Model": "创建模型", "Create multiple API keys at once (random suffix will be added to names)": "一次性创建多个 API 密钥(名称将添加随机后缀)", "Create multiple channels from multiple keys": "从多个密钥创建多个渠道", "Create multiple redemption codes at once (1-100)": "一次创建多个兑换码 (1-100)", "Create new subscription plan": "创建新的订阅套餐", "Create or update frequently asked questions for users": "创建或更新用户的常见问题", "Create or update system announcements for the dashboard": "创建或更新仪表板的系统公告", + "Create Plan": "新建套餐", + "Create Prefill Group": "创建预填充组", + "Create Provider": "创建提供商", + "Create Redemption Code": "创建兑换码", "Create request parameter override rules with a visual editor or raw JSON.": "使用可视化编辑器或原始 JSON 创建请求参数覆盖规则。", "Create request parameter override rules without editing raw JSON.": "无需编辑原始 JSON 即可创建请求参数覆盖规则。", "Create reusable bundles of models, tags, endpoints, and user groups to speed up configuration elsewhere in the console.": "创建模型、标签、端点和用户分组的可重用捆绑包,以加快控制台中其他地方的配置速度。", "Create succeeded": "创建成功", + "Create Vendor": "创建供应商", "Create your first group to reuse model, tag, or endpoint selections anywhere in the dashboard.": "创建您的第一个分组,以便在仪表板的任何位置重用模型、标签或端点选择。", "Create, revoke, and audit API tokens.": "创建、撤销和审计 API 令牌。", "Created": "创建时间", @@ -883,40 +938,40 @@ "Current Balance": "当前余额", "Current Billing": "当前计费", "Current Cache Size": "当前缓存大小", - "Current Level Only": "仅当前层", - "Current Password": "当前密码", - "Current Price": "当前价格", - "Current Value": "当前值", "Current email: {{email}}. Enter a new email to change.": "当前邮箱:{{email}}。输入新邮箱以更改。", "Current key": "当前密钥", "Current legacy JSON is invalid, cannot append": "当前旧格式 JSON 不合法,无法追加模板", + "Current Level Only": "仅当前层", "Current models for the longest channel in this tag. May not include all models from all channels.": "此标签中最长渠道的当前模型。可能不包括所有渠道的所有模型。", + "Current Password": "当前密码", + "Current Price": "当前价格", "Current quota": "当前额度", + "Current Value": "当前值", "Current version": "当前版本", "Current:": "当前:", "Custom": "自定义", "Custom (seconds)": "自定义(秒)", + "Custom Amount": "自定义金额", "Custom API base URL. For official channels, New API has built-in addresses. Only fill this for third-party proxy sites or special endpoints. Do not add /v1 or trailing slash.": "自定义 API 基础 URL。对于官方渠道,New API 具有内置地址。仅针对第三方代理站点或特殊端点填写此项。请勿添加 /v1 或尾部斜杠。", "Custom API base URL. Leave empty to use provider default.": "自定义 API 基础 URL。留空以使用提供商默认值。", - "Custom Amount": "自定义金额", + "Custom color": "自定义颜色", "Custom CSS": "自定义 CSS", "Custom Currency": "自定义货币", "Custom Currency Symbol": "自定义货币符号", - "Custom Error Response": "自定义错误响应", - "Custom Home Page": "自定义主页", - "Custom OAuth": "自定义 OAuth", - "Custom OAuth Providers": "自定义OAuth提供商", - "Custom Seconds": "自定义秒数", - "Custom Time Range": "自定义时间范围", - "Custom Zoom": "自定义缩放", - "Custom color": "自定义颜色", "Custom currency symbol is required": "自定义货币符号为必填项", "Custom database driver detected.": "检测到自定义数据库驱动。", + "Custom Error Response": "自定义错误响应", + "Custom Home Page": "自定义主页", "Custom message shown when access is denied": "访问被拒绝时显示的自定义消息", "Custom model (comma-separated)": "自定义模型(逗号分隔)", "Custom module": "自定义模块", "Custom multipliers when specific user groups use specific token groups. Example: VIP users get 0.9x rate when using \"edit_this\" group tokens.": "当特定用户分组使用特定令牌分组时的自定义乘数。示例:VIP 用户在使用“edit_this”分组令牌时获得 0.9 倍费率。", + "Custom OAuth": "自定义 OAuth", + "Custom OAuth Providers": "自定义OAuth提供商", + "Custom Seconds": "自定义秒数", "Custom sidebar section": "自定义侧边栏部分", + "Custom Time Range": "自定义时间范围", + "Custom Zoom": "自定义缩放", "Customize sidebar display content": "个性化设置左侧边栏的显示内容", "Daily": "每天", "Daily Check-in": "每日签到", @@ -930,74 +985,76 @@ "Data management and log viewing": "数据管理和日志查看", "Database": "数据库", "Database check": "数据库检查", - "Date Range": "时间范围", "Date and time when this announcement should be displayed": "此公告应显示的日期和时间", + "Date Range": "时间范围", "Day": "天", + "days": "天", "Days to Retain": "保留天数", "Deducted by subscription": "由订阅抵扣", "DeepSeek": "DeepSeek", + "default": "默认", "Default": "默认", "Default (New Frontend)": "新版前端(默认)", "Default API Version *": "默认 API 版本 *", "Default API version for this channel": "此渠道的默认 API 版本", "Default Collapse Sidebar": "默认折叠侧边栏", - "Default Max Tokens": "默认最大 Token 数", - "Default Responses API version, if empty, will use the API version above": "默认响应 API 版本,如果为空,将使用上面的 API 版本", - "Default TTL (seconds)": "默认 TTL(秒)", "Default consumption chart": "默认消耗分布图", + "Default Max Tokens": "默认最大 Token 数", "Default model call chart": "默认模型调用图", "Default range": "默认范围", + "Default Responses API version, if empty, will use the API version above": "默认响应 API 版本,如果为空,将使用上面的 API 版本", "Default system prompt for this channel": "此渠道的默认系统提示", "Default time granularity": "默认时间粒度", "Default to auto groups": "默认使用自动分组", + "Default TTL (seconds)": "默认 TTL(秒)", "Defaults to the wallet page when empty": "为空时默认使用钱包页面", "Define API endpoints for this model (JSON format)": "为此模型定义 API 端点(JSON 格式)", "Define endpoint mappings for each provider.": "为每个提供商定义端点映射。", "Define per-group rules to add, remove, or append selectable groups for specific user groups.": "为特定用户组定义按分组规则,以添加、移除或追加可选分组。", "Delete": "删除", "Delete (": "删除 (", + "Delete {{count}} API key(s)?": "删除 {{count}} 个 API 密钥?", + "Delete a runtime request header": "删除运行期请求头", "Delete Account": "删除账户", "Delete All Disabled": "删除所有已禁用", "Delete All Disabled Channels?": "删除所有已禁用的渠道?", "Delete Auto-Disabled": "删除自动禁用", "Delete Channel": "删除渠道", "Delete Channels?": "删除渠道?", + "Delete condition": "删除条件", "Delete Condition": "删除条件", + "Delete failed": "删除失败", "Delete Field": "删除字段", + "Delete group": "删除分组", "Delete Header": "删请求头", "Delete Invalid": "删除无效", + "Delete invalid codes": "删除无效代码", + "Delete invalid codes (used/disabled/expired)": "删除无效代码(已使用/已禁用/已过期)", + "Delete invalid redemption codes": "删除无效兑换码", "Delete Invalid Redemption Codes?": "删除无效的兑换码?", + "Delete logs": "删除日志", "Delete Model": "删除模型", "Delete Models?": "删除模型?", "Delete Provider": "删除提供商", "Delete Request Header": "删除请求头", - "Delete a runtime request header": "删除运行期请求头", - "Delete condition": "删除条件", - "Delete failed": "删除失败", - "Delete group": "删除分组", - "Delete invalid codes": "删除无效代码", - "Delete invalid codes (used/disabled/expired)": "删除无效代码(已使用/已禁用/已过期)", - "Delete invalid redemption codes": "删除无效兑换码", - "Delete logs": "删除日志", "Delete selected API keys": "删除选定的 API 密钥", "Delete selected channels": "删除所选渠道", "Delete selected models": "删除选定的模型", - "Delete {{count}} API key(s)?": "删除 {{count}} 个 API 密钥?", "Deleted": "已注销", "Deleted successfully": "删除成功", "Deleting will permanently remove this subscription record (including benefit details). Continue?": "删除会彻底移除该订阅记录(含权益明细)。是否继续?", "Deleting...": "删除中...", - "Demo Site Mode": "演示站点模式", "Demo site": "演示站点", "Demo site mode": "演示站点模式", + "Demo Site Mode": "演示站点模式", "Demote": "降级", "Deploy your own gateway and start routing requests through your configured upstream services.": "部署你自己的网关,并通过已配置的上游服务开始转发请求。", - "Deployment ID": "部署 ID", - "Deployment Region *": "部署区域 *", "Deployment created successfully": "创建部署成功", "Deployment details": "部署详情", + "Deployment ID": "部署 ID", "Deployment location": "部署位置", "Deployment logs": "部署日志", + "Deployment Region *": "部署区域 *", "Deployment requested": "部署已请求", "Deployments": "部署", "Desc": "描述", @@ -1007,6 +1064,7 @@ "Description": "说明信息", "Description is required": "描述为必填项", "Designed and Developed by": "设计与开发", + "designed for scale": "为规模而设计", "Destroyed": "已销毁", "Detailed request logs for investigations.": "用于调查的详细请求日志。", "Details": "详情", @@ -1027,7 +1085,6 @@ "Disable": "禁用", "Disable 2FA": "禁用 2FA", "Disable All": "禁用全部", - "Disable Two-Factor Authentication": "禁用双重身份验证", "Disable on failure": "失败时禁用", "Disable selected channels": "禁用选定的渠道", "Disable selected models": "禁用选定的模型", @@ -1035,40 +1092,42 @@ "Disable thinking processing models": "禁用思考处理模型", "Disable this key?": "禁用此密钥?", "Disable threshold (seconds)": "禁用阈值(秒)", + "Disable Two-Factor Authentication": "禁用双重身份验证", + "disabled": "已禁用", "Disabled": "已禁用", + "Disabled all channels with tag: {{tag}}": "已禁用标签「{{tag}}」下的所有渠道", "Disabled Reason": "禁用原因", "Disabled Time": "禁用时间", - "Disabled all channels with tag: {{tag}}": "已禁用标签「{{tag}}」下的所有渠道", "Disabling...": "禁用中...", "Discord": "Discord", "Discount": "优惠", - "Discount Rate": "折扣率", - "Discount Rate:": "折扣率:", "Discount map by recharge amount (JSON object)": "按充值金额的折扣映射 (JSON 对象)", - "Discount rate must be greater than 0": "折扣率必须大于 0", + "Discount Rate": "折扣率", "Discount rate must be ≤ 1": "折扣率必须 ≤ 1", + "Discount rate must be greater than 0": "折扣率必须大于 0", + "Discount Rate:": "折扣率:", "Discount ratio for cache hits.": "缓存命中时的折扣比例。", "Discouraged": "不推荐", "Discover curated AI models, compare pricing and capabilities, and choose the right model for every scenario.": "探索精选 AI 模型,清晰比较价格与能力,为不同场景选择合适的模型。", "Discovering...": "发现中...", + "Disk cache cleared": "磁盘缓存已清理", "Disk Cache Settings": "磁盘缓存设置", "Disk Cache Threshold (MB)": "磁盘缓存阈值 (MB)", + "Disk cache, system performance monitoring, and operation statistics": "磁盘缓存、系统性能监控与运维统计", "Disk Hits": "磁盘命中", "Disk Threshold (%)": "磁盘阈值 (%)", - "Disk cache cleared": "磁盘缓存已清理", - "Disk cache, system performance monitoring, and operation statistics": "磁盘缓存、系统性能监控与运维统计", - "Display Mode": "显示模式", - "Display Name": "显示名称", - "Display Name Field": "显示名称字段", - "Display Options": "显示选项", - "Display Token Statistics": "显示 Token 统计信息", "Display in Currency": "以货币显示", + "Display Mode": "显示模式", "Display name": "显示名称", + "Display Name": "显示名称", "Display name and email used in outgoing messages": "用于发送消息的显示名称和电子邮件", + "Display Name Field": "显示名称字段", "Display name for this chat client.": "此聊天客户端的显示名称。", "Display name for this monitoring group (max 50 characters)": "此监控分组的显示名称(最多 50 个字符)", "Display name for this payment method.": "此支付方式的显示名称。", "Display name shown to users.": "显示给用户的名称。", + "Display Options": "显示选项", + "Display Token Statistics": "显示 Token 统计信息", "Displays the mobile sidebar.": "显示移动侧边栏。", "Do not over-trust this feature. IP may be spoofed. Please use with nginx, CDN and other gateways.": "请勿过度信任此功能,IP 可能被伪造,请配合 nginx 和 cdn 等网关使用", "Do not repeat check-in; only once per day": "请勿重复签到;每天仅一次", @@ -1077,6 +1136,7 @@ "Docs": "文档", "Documentation Link": "文档链接", "Documentation or external knowledge base.": "文档或外部知识库。", + "does not exist or might have been removed.": "不存在或可能已被移除。", "Domain": "域名", "Domain Filter Mode": "域名过滤模式", "Don't have an account?": "没有账号?", @@ -1088,8 +1148,8 @@ "Download": "下载", "Draw": "绘图", "Drawing": "绘图", - "Drawing Logs": "绘图日志", "Drawing logs": "绘制日志", + "Drawing Logs": "绘图日志", "Drawing task records": "绘图任务记录", "Duplicate": "重复", "Duration": "时长", @@ -1098,103 +1158,148 @@ "Duration Unit": "有效期单位", "Duration Value": "有效期数值", "Dynamic Pricing": "动态计费", - "Each backup code can only be used once.": "每个备份代码只能使用一次。", - "Each item must be an object with a single key-value pair.": "每个条目必须是包含单个键值对的对象。", - "Each item must have exactly one key-value pair.": "每个条目必须恰好包含一个键值对。", - "Each line represents one keyword. Leave blank to disable the list but keep the switch states.": "每行代表一个关键词。留空以禁用列表,但保留开关状态。", - "Each tier supports 0~2 conditions (over len, p, c); the last tier is the catch-all without conditions. Use len (full input length, including cache hits) for tier conditions to avoid mis-routing when cache hits reduce p.": "每个档位支持 0~2 个条件(针对 len、p、c),最后一档为兜底档无需条件。建议条件使用 len(完整输入长度,含缓存命中),避免缓存命中降低 p 导致档位误判。", - "Earn rewards when your referrals add funds. Transfer accumulated rewards to your balance anytime.": "当您的推荐人充值时即可获得奖励。随时将累计奖励转移到您的余额。", - "Edit": "编辑", - "Edit API Shortcut": "编辑 API 快捷方式", - "Edit Announcement": "编辑公告", + "e.g. ¥ or HK$": "例如,¥ 或 HK$", + "e.g. 401, 403, 429, 500-599": "例如 401、403、429、500-599", + "e.g. 8 means 1 USD = 8 units": "例如,8 表示 1 美元 = 8 单位", + "e.g. Basic Plan": "例如:基础套餐", + "e.g. Clean tool parameters to avoid upstream validation errors": "例如:清理工具参数,避免上游校验错误", + "e.g. example.com": "例如,example.com", + "e.g. llama3.1:8b": "例如 llama3.1:8b", + "e.g. My GitLab": "例如:My GitLab", + "e.g. my-gitlab": "例如:my-gitlab", + "e.g. New API Console": "例如,New API 控制台", + "e.g. openid profile email": "例如:openid profile email", + "e.g. Suitable for light usage": "例如:适合轻度使用", + "e.g. This request does not meet access policy": "例如:该请求不满足准入策略", + "e.g., #3b82f6,#8b5cf6": "例如,#3b82f6,#8b5cf6", + "e.g., #ff0000,#0000ff": "例如,#ff0000,#0000ff", + "e.g., #ffffff or white": "例如,#ffffff 或 white", + "e.g., 0.95": "例如,0.95", + "e.g., 100": "例如,100", + "e.g., 123456": "例如,123456", + "e.g., 2025-04-01-preview": "例如,2025-04-01-preview", + "e.g., 50": "例如,50", + "e.g., 500000": "例如,500000", + "e.g., 7342866812345": "例如,7342866812345", + "e.g., 8 means 8 local currency per USD": "例如,8 表示每美元兑换 8 单位本地货币", + "e.g., Alipay, WeChat": "例如,支付宝,微信", + "e.g., Basic Package": "例如,基本套餐", + "e.g., CN2 GIA": "例如,CN2 GIA", + "e.g., Core APIs, OpenAI, Claude": "例如,核心 API,OpenAI,Claude", + "e.g., d6b5da8hk1awo8nap34ube6gh": "例如,d6b5da8hk1awo8nap34ube6gh", + "e.g., default, vip, premium": "例如,default, vip, premium", + "e.g., gpt-4, claude-3": "例如:gpt-4、claude-3", + "e.g., gpt-4.1-nano,regex:^claude-.*$,regex:^sora-.*$": "例如:gpt-4.1-nano,regex:^claude-.*$,regex:^sora-.*$", + "e.g., https://api.example.com (path before /suno)": "例如,https://api.example.com (在 /suno 之前的路径)", + "e.g., https://api.openai.com/v1/chat/completions": "例如,https://api.openai.com/v1/chat/completions", + "e.g., https://ark.cn-beijing.volces.com": "例如,https://ark.cn-beijing.volces.com", + "e.g., https://docs-test-001.openai.azure.com": "例如,https://docs-test-001.openai.azure.com", + "e.g., https://fastgpt.run/api/openapi": "例如,https://fastgpt.run/api/openapi", + "e.g., OpenAI GPT-4 Production": "例如,OpenAI GPT-4 生产环境", + "e.g., preview": "例如,preview", + "e.g., prod_xxx": "例如,prod_xxx", + "e.g., Recommended for China Mainland Users": "例如,推荐给中国大陆用户", + "e.g., us-central1 or JSON format for model-specific regions": "例如,us-central1 或模型特定区域的 JSON 格式", + "e.g., v2.1": "例如,v2.1", + "Each backup code can only be used once.": "每个备份代码只能使用一次。", + "Each item must be an object with a single key-value pair.": "每个条目必须是包含单个键值对的对象。", + "Each item must have exactly one key-value pair.": "每个条目必须恰好包含一个键值对。", + "Each line represents one keyword. Leave blank to disable the list but keep the switch states.": "每行代表一个关键词。留空以禁用列表,但保留开关状态。", + "Each tier supports 0~2 conditions (over len, p, c); the last tier is the catch-all without conditions. Use len (full input length, including cache hits) for tier conditions to avoid mis-routing when cache hits reduce p.": "每个档位支持 0~2 个条件(针对 len、p、c),最后一档为兜底档无需条件。建议条件使用 len(完整输入长度,含缓存命中),避免缓存命中降低 p 导致档位误判。", + "Earn rewards when your referrals add funds. Transfer accumulated rewards to your balance anytime.": "当您的推荐人充值时即可获得奖励。随时将累计奖励转移到您的余额。", + "Edit": "编辑", + "Edit {{title}}": "编辑{{title}}", + "Edit all channels with tag:": "编辑所有带有标签的渠道:", + "Edit Announcement": "编辑公告", + "Edit API Shortcut": "编辑 API 快捷方式", "Edit Channel": "编辑渠道", + "Edit chat preset": "编辑聊天预设", + "Edit discount tier": "编辑折扣档位", "Edit FAQ": "编辑常见问题", + "Edit group rate limit": "编辑组速率限制", "Edit JSON object directly. Suitable for simple parameter overrides.": "直接编辑 JSON 对象。适合简单覆盖参数的场景。", "Edit JSON text directly. Format will be validated on save.": "直接编辑 JSON 文本,保存时会校验格式。", + "Edit model": "编辑模型", "Edit Model": "编辑模型", "Edit OAuth Provider": "编辑 OAuth 提供商", + "Edit payment method": "编辑支付方式", "Edit Prefill Group": "编辑预填充组", + "Edit product": "编辑产品", + "Edit ratio override": "编辑倍率覆盖", "Edit Rule": "编辑规则", + "Edit selectable group": "编辑可选分组", "Edit Tag": "编辑标签", "Edit Tag:": "编辑标签:", "Edit Uptime Kuma Group": "编辑 Uptime Kuma 分组", "Edit Vendor": "编辑供应商", - "Edit all channels with tag:": "编辑所有带有标签的渠道:", - "Edit chat preset": "编辑聊天预设", - "Edit discount tier": "编辑折扣档位", - "Edit group rate limit": "编辑组速率限制", - "Edit model": "编辑模型", - "Edit payment method": "编辑支付方式", - "Edit product": "编辑产品", - "Edit ratio override": "编辑倍率覆盖", - "Edit selectable group": "编辑可选分组", - "Edit {{title}}": "编辑{{title}}", + "edit_this": "edit_this", "Editor mode": "编辑器模式", "Effect": "效果", "Email": "邮箱", "Email (required for verification)": "电子邮件(验证必需)", "Email Address": "电子邮件地址", "Email Alias Restriction": "电子邮件别名限制", + "Email bound successfully!": "邮箱绑定成功!", "Email Domain Restriction": "电子邮件域限制", "Email Domain Whitelist": "电子邮件域白名单", "Email Field": "邮箱字段", "Email Verification": "电子邮件验证", - "Email bound successfully!": "邮箱绑定成功!", "Embeddings": "嵌入", "Empty value will be saved as {}.": "空值将保存为 {}。", "Enable": "启用", "Enable 2FA": "启用 2FA", "Enable All": "启用全部", + "Enable check-in feature": "启用签到功能", "Enable Data Dashboard": "启用数据仪表板", + "Enable demo mode with limited functionality": "启用功能受限的演示模式", "Enable Discord OAuth": "启用 Discord OAuth", "Enable Disk Cache": "启用磁盘缓存", + "Enable drawing features": "启用绘制功能", + "Enable filtering": "启用过滤", "Enable FunctionCall thoughtSignature Fill": "启用 FunctionCall 思维签名填充", "Enable GitHub OAuth": "启用 GitHub OAuth", "Enable Groups": "启用分组", - "Enable LinuxDO OAuth": "启用 LinuxDO OAuth", - "Enable OIDC": "启用 OIDC", - "Enable Passkey": "启用 Passkey", - "Enable Performance Monitoring": "启用性能监控", - "Enable Request Passthrough": "启用请求透传", - "Enable SSL/TLS": "启用 SSL/TLS", - "Enable SSRF Protection": "启用 SSRF 保护", - "Enable Telegram OAuth": "启用 Telegram OAuth", - "Enable Turnstile": "启用 Turnstile", - "Enable Two-factor Authentication or Passkey in your profile to unlock sensitive operations.": "在您的个人资料中启用双重身份验证或 Passkey 以解锁敏感操作。", - "Enable Waffo": "启用 Waffo", - "Enable Waffo Pancake": "启用 Waffo Pancake", - "Enable WeChat Auth": "启用微信授权", - "Enable check-in feature": "启用签到功能", - "Enable demo mode with limited functionality": "启用功能受限的演示模式", - "Enable drawing features": "启用绘制功能", - "Enable filtering": "启用过滤", "Enable if this is an OpenRouter enterprise account with special response format": "如果这是具有特殊响应格式的 OpenRouter 企业账户,则启用", "Enable io.net deployments": "启用 io.net 部署", "Enable io.net model deployment service in console": "在控制台启用 io.net 模型部署服务", + "Enable LinuxDO OAuth": "启用 LinuxDO OAuth", + "Enable OIDC": "启用 OIDC", "Enable or disable this channel": "启用或禁用此渠道", "Enable or disable this model": "启用或禁用此模型", "Enable or disable top navigation modules globally.": "全局启用或禁用顶部导航模块。", + "Enable Passkey": "启用 Passkey", + "Enable Performance Monitoring": "启用性能监控", "Enable rate limiting": "启用速率限制", + "Enable Request Passthrough": "启用请求透传", "Enable selected channels": "启用选定的渠道", "Enable selected models": "启用选定的模型", + "Enable SSL/TLS": "启用 SSL/TLS", + "Enable SSRF Protection": "启用 SSRF 保护", "Enable streaming mode for the test request.": "为测试请求启用流式模式。", + "Enable Telegram OAuth": "启用 Telegram OAuth", "Enable test mode for Creem payments": "启用 Creem 支付测试模式", "Enable this key?": "启用此密钥?", + "Enable Turnstile": "启用 Turnstile", + "Enable Two-factor Authentication or Passkey in your profile to unlock sensitive operations.": "在您的个人资料中启用双重身份验证或 Passkey 以解锁敏感操作。", "Enable unlimited quota for this API key": "为此 API 密钥启用无限配额", "Enable violation deduction": "启用违规扣费", + "Enable Waffo": "启用 Waffo", + "Enable Waffo Pancake": "启用 Waffo Pancake", + "Enable WeChat Auth": "启用微信授权", "Enable when proxying workers that fetch images over HTTP.": "当代理通过 HTTP 获取图像的 worker 时启用。", "Enabled": "已启用", - "Enabled Status": "启用状态", "Enabled all channels with tag: {{tag}}": "已启用标签「{{tag}}」下的所有渠道", + "Enabled Status": "启用状态", "Enabling...": "正在启用...", "End": "结束", + "End color": "结束颜色", "End Error": "结束错误", "End Reason": "结束原因", "End Time": "结束时间", "Endpoint": "端点", + "Endpoint config": "端点配置", "Endpoint Configuration": "端点配置", "Endpoint Type": "端点类型", - "Endpoint config": "端点配置", "Endpoint:": "端点:", "Endpoints": "端点", "English": "英文", @@ -1203,34 +1308,33 @@ "Ensure the string has a specified prefix": "确保字符串有指定前缀", "Ensure the string has a specified suffix": "确保字符串有指定后缀", "Enter 6-digit code": "输入 6 位数字代码", - "Enter API Key": "请输入 API Key", - "Enter API Key, format: APIKey|Region": "请输入 API Key,格式:APIKey|Region", - "Enter API Key, one per line, format: APIKey|Region": "请输入 API Key(每行一个),格式:APIKey|Region", - "Enter Completion price to calculate ratio": "输入 Completion 价格来计算比率", - "Enter Creem API key": "输入 Creem API 密钥", - "Enter HTML code (e.g.,

About us...

) or a URL (e.g., https://example.com) to embed as iframe": "输入 HTML 代码(例如,

关于我们...

)或 URL(例如,https://example.com)以作为 iframe 嵌入", - "Enter Input price to calculate ratio": "输入 Input 价格来计算比率", - "Enter JSON to override request headers": "输入 JSON 以覆盖请求头", - "Enter URL...": "输入 URL...", "Enter a name": "输入名称", "Enter a new name": "输入新名称", "Enter a positive or negative amount to adjust the quota": "输入正数或负数以调整配额", "Enter a valid email or leave blank": "请输入有效的邮箱地址或留空", "Enter a value and press Enter": "输入值并按回车键", - "Enter amount in tokens": "输入额度(Token)", "Enter amount in {{currency}}": "输入金额({{currency}})", + "Enter amount in tokens": "输入额度(Token)", "Enter announcement content (supports Markdown & HTML)": "输入公告内容(支持 Markdown 和 HTML)", "Enter announcement content (supports Markdown/HTML)": "输入公告内容(支持 Markdown/HTML)", + "Enter API Key": "请输入 API Key", + "Enter API Key, format: APIKey|Region": "请输入 API Key,格式:APIKey|Region", + "Enter API Key, one per line, format: APIKey|Region": "请输入 API Key(每行一个),格式:APIKey|Region", "Enter application token": "输入应用程序令牌", "Enter authenticator code": "输入身份验证器代码", "Enter backup code (e.g., CAWD-OQDV)": "输入备用代码(例如,CAWD-OQDV)", "Enter banner content to display at the top of the page": "输入要在页面顶部显示的横幅内容", "Enter code": "输入代码", "Enter code or backup code": "输入代码或备用代码", + "Enter Completion price to calculate ratio": "输入 Completion 价格来计算比率", + "Enter Creem API key": "输入 Creem API 密钥", "Enter custom API endpoint URL": "输入自定义 API 端点 URL", "Enter custom CSS...": "输入自定义 CSS...", "Enter deployment region or JSON mapping:": "输入部署区域或 JSON 映射:", "Enter display name": "输入显示名称", + "Enter HTML code (e.g.,

About us...

) or a URL (e.g., https://example.com) to embed as iframe": "输入 HTML 代码(例如,

关于我们...

)或 URL(例如,https://example.com)以作为 iframe 嵌入", + "Enter Input price to calculate ratio": "输入 Input 价格来计算比率", + "Enter JSON to override request headers": "输入 JSON 以覆盖请求头", "Enter key, format: AccessKey|SecretAccessKey|Region": "请输入密钥,格式:AccessKey|SecretAccessKey|Region", "Enter key, one per line, format: AccessKey|SecretAccessKey|Region": "请输入密钥(每行一个),格式:AccessKey|SecretAccessKey|Region", "Enter model name": "请输入模型名称", @@ -1245,23 +1349,24 @@ "Enter password": "输入密码", "Enter password (8-20 characters)": "输入密码(8-20 个字符)", "Enter password (min 8 characters)": "请输入密码(至少 8 个字符)", - "Enter quota in tokens": "输入令牌配额", "Enter quota in {{currency}}": "输入 {{currency}} 额度", + "Enter quota in tokens": "输入令牌配额", "Enter secret key": "输入密钥", "Enter system prompt (user prompt takes priority)": "输入系统提示词(用户提示词优先)", "Enter tag name (optional)": "输入标签名称(可选)", - "Enter the 6-digit Time-based One-Time Password or 8-character backup code from your authenticator app.": "输入来自身份验证器应用的 6 位基于时间的单次密码或 8 位备份代码。", "Enter the 6-digit code from your authenticator app": "输入来自身份验证器应用的 6 位代码", - "Enter the Coze agent ID": "输入 Coze 代理 ID", + "Enter the 6-digit Time-based One-Time Password or 8-character backup code from your authenticator app.": "输入来自身份验证器应用的 6 位基于时间的单次密码或 8 位备份代码。", "Enter the complete URL, supports": "输入完整的 URL,支持", + "Enter the Coze agent ID": "输入 Coze 代理 ID", "Enter the full URL of your Gotify server": "输入您的 Gotify 服务器的完整 URL", "Enter the knowledge base ID": "输入知识库 ID", "Enter the path before /suno, usually just the domain": "输入 /suno 之前的路径,通常只是域名", - "Enter the quota amount in tokens": "输入令牌配额数量", "Enter the quota amount in {{currency}}": "输入 {{currency}} 的配额数量", + "Enter the quota amount in tokens": "输入令牌配额数量", "Enter the verification code": "输入验证码", "Enter threshold": "输入阈值", "Enter token counts to preview the estimated cost (excluding group multipliers).": "输入 token 数量以预览预估费用(不含用户组倍率)。", + "Enter URL...": "输入 URL...", "Enter username": "输入用户名", "Enter verification code": "输入验证码", "Enter webhook secret": "输入 webhook 密钥", @@ -1277,8 +1382,8 @@ "Env (JSON object)": "环境变量 (JSON 对象)", "Environment variables": "环境变量", "Environment variables (JSON)": "环境变量 (JSON)", - "Epay Gateway": "Epay 网关", "Epay endpoint": "Epay 端点", + "Epay Gateway": "Epay 网关", "Epay merchant ID": "易支付商户 ID", "Epay secret key": "Epay 密钥", "Equals": "等于", @@ -1295,17 +1400,20 @@ "Example (all channels):": "示例(全部频道):", "Example (specific channels):": "示例(指定频道):", "Example:": "示例:", + "example.com blocked-site.com": "example.com blocked-site.com", + "example.com company.com": "example.com company.com", "Excellent": "优秀", "Exchange rate is required": "汇率为必填项", "Exchange rate must be greater than 0": "汇率必须大于 0", "Exhausted": "已耗尽", - "Existing Models ({{count}})": "现有模型 ({{count}})", "Existing account will be reused": "将使用现有账户", + "Existing Models ({{count}})": "现有模型 ({{count}})", "Exists": "存在", "Expand All": "全部展开", "Expected a JSON array.": "应为 JSON 数组。", "Experiment with prompts and models in real time.": "实时实验提示词和模型。", "Expiration Time": "过期时间", + "expired": "已过期", "Expired": "已过期", "Expired at": "过期于", "Expired time cannot be earlier than current time": "过期时间不能早于当前时间", @@ -1321,28 +1429,24 @@ "Extend failed": "延长失败", "Extended successfully": "延长成功", "External Device": "外部设备", - "External Speed Test": "外部速度测试", "External link for users to purchase quota": "供用户购买配额的外部链接", "External operations": "对外运营", "External operations mode": "对外运营模式", + "External Speed Test": "外部速度测试", "Extra": "额外", "Extra Notes (Optional)": "额外备注(可选)", - "FAQ": "常见问答", - "FAQ added. Click \"Save Settings\" to apply.": "FAQ 已添加。点击 \"保存设置\" 以应用。", - "FAQ deleted. Click \"Save Settings\" to apply.": "FAQ 已删除。点击 \"保存设置\" 以应用。", - "FAQ saved successfully": "FAQ 保存成功", - "FAQ updated. Click \"Save Settings\" to apply.": "FAQ 已更新。点击 \"保存设置\" 以应用。", "Fail Reason": "失败原因", "Fail Reason Details": "失败原因详情", "Failed": "失败", + "Failed to {{action}} user": "{{action}}用户失败", "Failed to adjust quota": "调整额度失败", "Failed to apply overwrite.": "应用覆盖失败。", "Failed to bind email": "绑定邮箱失败", "Failed to change password": "修改密码失败", "Failed to check for updates": "检查更新失败", "Failed to clean logs": "清理日志失败", - "Failed to complete Passkey login": "无法完成 Passkey 登录", "Failed to complete order": "完成订单失败", + "Failed to complete Passkey login": "无法完成 Passkey 登录", "Failed to contact GitHub releases API": "无法连接 GitHub Releases API", "Failed to copy": "复制失败", "Failed to copy channel": "复制渠道失败", @@ -1355,9 +1459,10 @@ "Failed to create provider": "创建提供商失败", "Failed to create redemption code": "创建兑换码失败", "Failed to create user": "创建用户失败", + "Failed to delete {{count}} model(s)": "删除 {{count}} 个模型失败", + "Failed to delete account": "删除账号失败", "Failed to delete API key": "删除API密钥失败", "Failed to delete API keys": "删除API密钥失败", - "Failed to delete account": "删除账号失败", "Failed to delete channel": "删除渠道失败", "Failed to delete disabled channels": "删除已禁用渠道失败", "Failed to delete invalid redemption codes": "删除无效兑换码失败", @@ -1366,22 +1471,21 @@ "Failed to delete redemption code": "删除兑换码失败", "Failed to delete user": "删除用户失败", "Failed to delete vendor": "删除供应商失败", - "Failed to delete {{count}} model(s)": "删除 {{count}} 个模型失败", + "Failed to disable {{count}} model(s)": "禁用 {{count}} 个模型失败", "Failed to disable 2FA": "禁用 2FA 失败", "Failed to disable channels": "禁用渠道失败", "Failed to disable model": "禁用模型失败", "Failed to disable tag channels": "禁用标签渠道失败", - "Failed to disable {{count}} model(s)": "禁用 {{count}} 个模型失败", "Failed to discover OIDC endpoints": "发现 OIDC 端点失败", + "Failed to enable {{count}} model(s)": "启用 {{count}} 个模型失败", "Failed to enable 2FA": "启用 2FA 失败", "Failed to enable channels": "启用渠道失败", "Failed to enable model": "启用模型失败", "Failed to enable tag channels": "启用标签渠道失败", - "Failed to enable {{count}} model(s)": "启用 {{count}} 个模型失败", - "Failed to fetch OIDC configuration. Please check the URL and network status": "获取 OIDC 配置失败。请检查 URL 和网络状态", "Failed to fetch checkin status": "获取签到状态失败", "Failed to fetch deployment details": "获取部署详情失败", "Failed to fetch models": "获取模型失败", + "Failed to fetch OIDC configuration. Please check the URL and network status": "获取 OIDC 配置失败。请检查 URL 和网络状态", "Failed to fetch upstream prices": "获取上游价格失败", "Failed to fetch upstream ratios": "获取上游比率失败", "Failed to fetch usage": "获取用量失败", @@ -1392,38 +1496,39 @@ "Failed to initialize system": "系统初始化失败", "Failed to load": "加载失败", "Failed to load API keys": "加载 API 密钥失败", - "Failed to load Passkey status": "加载 Passkey 状态失败", "Failed to load billing history": "加载计费历史失败", "Failed to load home page content": "加载首页内容失败", "Failed to load image": "无法加载图像", "Failed to load logs": "加载日志失败", + "Failed to load Passkey status": "加载 Passkey 状态失败", "Failed to load profile": "加载个人资料失败", "Failed to load redemption codes": "加载兑换码失败", "Failed to load setup data": "无法加载设置数据", "Failed to load setup status": "无法加载设置状态", "Failed to load tag data": "加载标签数据失败", "Failed to load users": "加载用户失败", - "Failed to parse JSON file: {{name}}": "解析 JSON 文件失败:{{name}}", "Failed to parse group items": "解析组项目失败", + "Failed to parse JSON file: {{name}}": "解析 JSON 文件失败:{{name}}", "Failed to query balance": "查询余额失败", "Failed to refresh cache stats": "刷新缓存统计失败", "Failed to regenerate backup codes": "重新生成备份代码失败", "Failed to register Passkey": "注册 Passkey 失败", "Failed to remove Passkey": "移除 Passkey 失败", "Failed to reset 2FA": "重置 2FA 失败", - "Failed to reset Passkey": "重置 Passkey 失败", "Failed to reset model ratios": "重置模型比率失败", + "Failed to reset Passkey": "重置 Passkey 失败", "Failed to save": "保存失败", + "Failed to save announcements": "保存公告失败", "Failed to save API info": "保存 API 信息失败", "Failed to save FAQ": "保存 FAQ 失败", "Failed to save Uptime Kuma groups": "保存 Uptime Kuma 组失败", - "Failed to save announcements": "保存公告失败", "Failed to search API keys": "搜索 API 密钥失败", "Failed to search redemption codes": "搜索兑换码失败", "Failed to search users": "搜索用户失败", "Failed to send verification code": "发送验证码失败", "Failed to set tag": "设置标签失败", "Failed to setup 2FA": "设置 2FA 失败", + "Failed to start {{provider}} login": "启动 {{provider}} 登录失败", "Failed to start Discord login": "启动 Discord 登录失败", "Failed to start GitHub login": "启动 GitHub 登录失败", "Failed to start LinuxDO login": "启动 LinuxDO 登录失败", @@ -1431,14 +1536,13 @@ "Failed to start Passkey login": "无法启动 Passkey 登录", "Failed to start Passkey registration": "启动 Passkey 注册失败", "Failed to start testing all channels": "无法开始测试所有渠道", - "Failed to start {{provider}} login": "启动 {{provider}} 登录失败", "Failed to sync prices": "同步价格失败", "Failed to sync ratios": "同步比率失败", "Failed to test all channels": "无法测试所有渠道", "Failed to test channel": "测试通道失败", + "Failed to update all balances": "无法更新所有余额", "Failed to update API key": "更新 API 密钥失败", "Failed to update API key status": "更新 API 密钥状态失败", - "Failed to update all balances": "无法更新所有余额", "Failed to update balance": "无法更新余额", "Failed to update channel": "更新通道失败", "Failed to update models": "更新模型失败", @@ -1450,43 +1554,47 @@ "Failed to update settings": "无法更新设置", "Failed to update tag": "更新标签失败", "Failed to update user": "更新用户失败", - "Failed to {{action}} user": "{{action}}用户失败", "Failure keywords": "失败关键词", "Fair": "公平", + "FAQ": "常见问答", + "FAQ added. Click \"Save Settings\" to apply.": "FAQ 已添加。点击 \"保存设置\" 以应用。", + "FAQ deleted. Click \"Save Settings\" to apply.": "FAQ 已删除。点击 \"保存设置\" 以应用。", + "FAQ saved successfully": "FAQ 保存成功", + "FAQ updated. Click \"Save Settings\" to apply.": "FAQ 已更新。点击 \"保存设置\" 以应用。", "Fast": "快", "FastGPT": "FastGPT", "Feature in development": "功能开发中", "Fee": "扣费", "Fee Amount": "扣费金额", - "Fetch Models": "获取模型", "Fetch available models for:": "获取可用模型:", "Fetch from Upstream": "从上游获取", + "Fetch Models": "获取模型", "Fetched {{count}} model(s) from upstream": "从上游获取了 {{count}} 个模型", "Fetched {{count}} models": "已获取 {{count}} 个模型", "Fetching prefill groups...": "正在获取预填充分组...", "Fetching upstream prices...": "正在获取上游价格...", "Fetching upstream ratios...": "正在获取上游比例...", + "field": "字段", "Field Mapping": "字段映射", - "Field Path": "字段路径", "Field passthrough controls": "字段透传控制", + "Field Path": "字段路径", "File Search": "文件搜索", "Files to Retain": "保留文件数", "Fill All Models": "填充所有模型", "Fill Codex CLI / Claude CLI Templates": "填充 Codex CLI / Claude CLI 模板", - "Fill Related Models": "填入相关模型", - "Fill Template": "填入模板", - "Fill Templates": "填充模板", "Fill example (all channels)": "填充示例(全部频道)", "Fill example (specific channels)": "填充示例(指定频道)", "Fill in the following info to create a new subscription plan": "填写以下信息创建新的订阅套餐", + "Fill Related Models": "填入相关模型", + "Fill Template": "填入模板", + "Fill Templates": "填充模板", "Fill thoughtSignature only for Gemini/Vertex channels using the OpenAI format": "仅为使用 OpenAI 格式的 Gemini/Vertex 渠道填充 thoughtSignature", "Filled {{count}} model(s)": "已填充 {{count}} 个模型", "Filled {{count}} related model(s)": "已填充 {{count}} 个关联模型", "Filter": "筛选", - "Filter Dashboard Models": "筛选仪表板模型", - "Filter by Midjourney task ID": "按 Midjourney 任务 ID 筛选", "Filter by channel ID": "按通道 ID 筛选", "Filter by group": "按分组筛选", + "Filter by Midjourney task ID": "按 Midjourney 任务 ID 筛选", "Filter by model name...": "按模型名称筛选...", "Filter by model...": "按模型筛选...", "Filter by name or ID...": "按名称或 ID 筛选...", @@ -1499,6 +1607,7 @@ "Filter by token name": "按 Token 名称筛选", "Filter by username": "按用户名筛选", "Filter by username, name or email...": "按用户名、姓名或邮箱筛选...", + "Filter Dashboard Models": "筛选仪表板模型", "Filter models by provider, group, type, endpoint, and tags.": "按供应商、分组、类型、端点和标签筛选模型。", "Filter models by type, endpoint, vendor, group and tags": "按类型、端点、供应商、分组和标签筛选模型", "Filter models...": "筛选模型...", @@ -1522,24 +1631,38 @@ "Font color for the banner text. Supports any CSS color value. Leave empty for default.": "横幅文本的字体颜色。支持任何 CSS 颜色值。留空使用默认值。", "Footer": "页脚", "Footer text displayed at the bottom of pages": "显示在页面底部的页脚文本", + "footer.columns.about.links.aboutProject": "关于项目", + "footer.columns.about.links.contact": "联系我们", + "footer.columns.about.links.features": "功能", + "footer.columns.about.title": "关于我们", + "footer.columns.docs.links.apiDocs": "API 文档", + "footer.columns.docs.links.installation": "安装指南", + "footer.columns.docs.links.quickStart": "快速入门", + "footer.columns.docs.title": "文档", + "footer.columns.related.links.midjourney": "Midjourney-Proxy", + "footer.columns.related.links.neko": "neko-api-key-tool", + "footer.columns.related.links.oneApi": "One API", + "footer.columns.related.title": "相关项目", + "footer.defaultCopyright": "版权所有。", + "footer.new\u0061pi.projectAttributionSuffix": "版权所有,由项目贡献者设计与开发。", "For channels added after May 10, 2025, no need to remove \".\" from model names during deployment": "对于 2025 年 5 月 10 日之后添加的渠道,在部署时无需从模型名称中移除 \".\"", "For private deployments, format: https://fastgpt.run/api/openapi": "对于私有部署,格式为:https://fastgpt.run/api/openapi", "Force AUTH LOGIN": "强制 AUTH LOGIN", "Force Format": "强制格式化", - "Force SMTP authentication using AUTH LOGIN method": "强制使用 AUTH LOGIN 方法进行 SMTP 认证", "Force format response to OpenAI standard (OpenAI channel only)": "强制将响应格式化为 OpenAI 标准(仅限 OpenAI 渠道)", + "Force SMTP authentication using AUTH LOGIN method": "强制使用 AUTH LOGIN 方法进行 SMTP 认证", "Forgot password": "忘记密码", "Forgot password?": "忘记密码?", "Form reset to saved values": "表单已重置为保存的值", "Format": "格式", "Format JSON": "格式化 JSON", "Format:": "格式:", - "Format: APIKey-AppId, e.g., fastgpt-0sp2gtvfdgyi4k30jwlgwf1i-64f335d84283f05518e9e041": "格式:APIKey-AppId,例如:fastgpt-0sp2gtvfdgyi4k30jwlgwf1i-64f335d84283f05518e9e041", - "Format: APIKey|SecretKey": "格式:APIKey|SecretKey", - "Format: APPID|APISecret|APIKey": "格式:APPID|APISecret|APIKey", "Format: Access Key ID|Secret Access Key": "格式:Access Key ID|Secret Access Key", "Format: AccessKey|SecretKey (or just ApiKey if upstream is New API)": "格式:AccessKey|SecretKey(如果上游是 New API,则只需 ApiKey)", "Format: Ak|Sk|Region": "格式:Ak|Sk|Region", + "Format: APIKey-AppId, e.g., fastgpt-0sp2gtvfdgyi4k30jwlgwf1i-64f335d84283f05518e9e041": "格式:APIKey-AppId,例如:fastgpt-0sp2gtvfdgyi4k30jwlgwf1i-64f335d84283f05518e9e041", + "Format: APIKey|SecretKey": "格式:APIKey|SecretKey", + "Format: APPID|APISecret|APIKey": "格式:APPID|APISecret|APIKey", "Format: AppId|SecretId|SecretKey": "格式:AppId|SecretId|SecretKey", "Forward requests directly to upstream providers without any post-processing.": "将请求直接转发给上游提供商,不进行任何后处理。", "Free: {{free}} / Total: {{total}}": "可用空间: {{free}} / 总空间: {{total}}", @@ -1555,45 +1678,49 @@ "GC Count": "GC 次数", "GC executed": "GC 已执行", "GC execution failed": "GC 执行失败", - "GPU count": "GPU 数量", "Gemini": "Gemini", "Gemini Image 4K": "Gemini 图片 4K", "Gemini will continue to auto-detect thinking mode even with the adapter disabled. Enable this only when you need finer control over pricing and budgeting.": "即使禁用适配器,Gemini 也会继续自动检测思维模式。仅当您需要对定价和预算进行更精细的控制时才启用此选项。", "General": "常规", "General Settings": "通用设置", - "Generate Lyrics": "生成歌词", - "Generate Music": "生成音乐", - "Generate New Codes": "生成新代码", "Generate a Codex OAuth credential and paste it into the channel key field.": "生成 Codex OAuth 凭据并粘贴到频道密钥字段。", "Generate and manage your API access token": "生成和管理您的 API 访问令牌", "Generate credential": "生成凭据", + "Generate Lyrics": "生成歌词", + "Generate Music": "生成音乐", "Generate new backup codes for account recovery": "生成新的备份代码用于账户恢复", + "Generate New Codes": "生成新代码", "Generated image": "生成的图像", "Generating new codes will invalidate all existing backup codes.": "生成新代码将使所有现有备份代码失效。", "Generating...": "生成中...", "Generic cache": "通用缓存", - "Get Started": "开始使用", "Get notified when balance falls below this value": "当余额低于此值时接收通知", + "Get Started": "开始使用", "GitHub": "GitHub", "Give the group a recognizable name and optional description.": "为该分组提供一个可识别的名称和可选的描述。", "Give this group a recognizable name.": "为此分组提供一个可识别的名称。", + "Global configuration and administrative tools.": "全局配置和管理工具。", "Global Coverage": "全球覆盖", "Global Model Configuration": "全局模型配置", - "Global configuration and administrative tools.": "全局配置和管理工具。", "Go Back": "返回", "Go back and edit": "返回修改", "Go to Dashboard": "前往仪表板", - "Go to Settings": "前往设置", "Go to first page": "前往首页", "Go to io.net API Keys": "前往 io.net API 密钥", "Go to last page": "前往末页", "Go to next page": "前往下一页", "Go to previous page": "前往上一页", "Go to settings": "前往设置", + "Go to Settings": "前往设置", "Good": "良好", "Gotify Application Token": "Gotify 应用令牌", "Gotify Documentation": "Gotify 文档", "Gotify Server URL": "Gotify 服务器 URL", + "gpt-3.5-turbo": "gpt-3.5-turbo", + "gpt-3.5-turbo-0125": "gpt-3.5-turbo-0125", + "gpt-4": "gpt-4", + "gpt-4, claude-3-opus, etc.": "gpt-4, claude-3-opus, 等", + "GPU count": "GPU 数量", "Gradient": "渐变", "Greater Than": "大于", "Greater Than or Equal": "大于等于", @@ -1601,8 +1728,6 @@ "Grok Settings": "Grok 设置", "Group": "分组", "Group & Quota": "分组与配额", - "Group Name": "分组名称", - "Group Ratio": "分组倍率", "Group added. Click \"Save Settings\" to apply.": "组已添加。点击 \"保存设置\" 以应用。", "Group channels by tag for batch operations": "按标签对渠道进行分组以进行批量操作", "Group config overrides global limits, shares the same period": "分组配置覆盖全局限制,共享同一周期", @@ -1611,8 +1736,11 @@ "Group identifier": "分组标识符", "Group is required": "组是必需的", "Group name": "分组名称", + "Group Name": "分组名称", "Group name cannot be changed when editing.": "编辑时无法更改组名称。", "Group prices cannot be expanded because this expression is not a standard tiered pricing expression.": "该表达式不是标准分档计费表达式,无法展开分组价格。", + "group ratio": "分组倍率", + "Group Ratio": "分组倍率", "Group ratios": "分组比例", "Group updated. Click \"Save Settings\" to apply.": "组已更新。点击 \"保存设置\" 以应用。", "Group-based rate limits": "基于分组的速率限制", @@ -1623,6 +1751,7 @@ "Groups that users can select when creating API keys.": "用户在创建 API 密钥时可以选择的分组。", "Guardrails": "安全护栏", "Guest": "访客", + "h": "小时", "Haiku Model": "Haiku 模型", "Hang tight while we finish connecting your account.": "请稍等,我们正在完成连接您的账户。", "Hang tight while we securely link this account to your profile.": "请稍等,我们正在安全地将此账户链接到您的个人资料。", @@ -1634,12 +1763,12 @@ "Have a Code?": "有兑换码吗?", "Header": "请求头", "Header Name": "请求头名称", + "Header navigation": "顶部导航", "Header Override": "标头覆盖", "Header Passthrough (X-Request-Id)": "请求头透传(X-Request-Id)", "Header Value (supports string or JSON mapping)": "请求头值(支持字符串或 JSON 映射)", - "Header navigation": "顶部导航", - "Hidden Channels": "隐藏渠道", "Hidden — verify to reveal": "隐藏 — 验证以显示", + "Hidden Channels": "隐藏渠道", "Hide": "隐藏", "Hide API key": "隐藏 API 密钥", "High Performance": "高性能", @@ -1655,16 +1784,17 @@ "Higher priority channels are selected first": "优先级更高的渠道优先被选中", "Historical Usage": "历史使用情况", "History of Midjourney-style image tasks.": "Midjourney 风格图像任务历史。", - "Hit Rate": "命中率", "Hit criteria: If cached tokens exist in usage, it counts as a hit.": "命中判定:usage 中存在 cached tokens 即视为命中。", + "Hit Rate": "命中率", "Hit tier": "命中档位", "Home": "主页", "Home Page Content": "首页内容", "Hostname or IP of your SMTP provider": "您的 SMTP 提供商的主机名或 IP", "Hour": "小时", - "How It Works": "工作流程", + "hours": "小时", "How client credentials are sent to the token endpoint": "客户端凭据如何发送至令牌端点", "How frequently the system tests all channels": "系统测试所有渠道的频率", + "How It Works": "工作流程", "How model mapping works": "模型映射的工作原理", "How much to charge for each US dollar of balance (Epay)": "每美元余额(Epay)的收费金额", "How this model name should match requests": "此模型名称应如何匹配请求", @@ -1672,19 +1802,35 @@ "How to reset my quota?": "如何重置我的配额?", "How to select keys: random or sequential polling": "密钥选择方式:随机或顺序轮询", "How will you use the platform?": "您将如何使用本平台?", + "https://api.day.app/yourkey/{{title}}/{{content}}": "https://api.day.app/yourkey/{{title}}/{{content}}", + "https://api.example.com": "https://api.example.com", + "https://ark.ap-southeast.bytepluses.com": "https://ark.ap-southeast.bytepluses.com", + "https://ark.cn-beijing.volces.com": "https://ark.cn-beijing.volces.com", + "https://cloud.siliconflow.cn/i/hij0YNTZ": "https://cloud.siliconflow.cn/i/hij0YNTZ", + "https://docs.example.com": "https://docs.example.com", + "https://example.com": "https://example.com", + "https://example.com/logo.png": "https://example.com/logo.png", + "https://example.com/qr-code.png": "https://example.com/qr-code.png", + "https://example.com/topup": "https://example.com/topup", + "https://example.com/webhook": "https://example.com/webhook", + "https://gateway.example.com": "https://gateway.example.com", + "https://github.com/QuantumNous/new-api": "https://github.com/QuantumNous/new-api", + "https://gotify.example.com": "https://gotify.example.com", + "https://pay.example.com": "https://pay.example.com", + "https://provider.com/.well-known/openid-configuration": "https://provider.com/.well-known/openid-configuration", + "https://status.example.com": "https://status.example.com", + "https://wechat-server.example.com": "https://wechat-server.example.com", + "https://worker.example.workers.dev": "https://worker.example.workers.dev", + "https://your-server.example.com": "https://your-server.example.com", + "https://yourdomain.com": "https://yourdomain.com", "Human-readable name shown to users during Passkey prompts.": "在 Passkey 提示期间向用户显示的人类可读名称。", "I confirm enabling high-risk retry": "我确认开启高危重试", "I have read and agree to the": "我已阅读并同意", "I understand that disabling 2FA will remove all protection and backup codes": "我理解禁用 2FA 将移除所有保护和备份代码", - "ID": "ID", - "IP": "IP", - "IP Address": "IP 地址", - "IP Filter Mode": "IP 过滤模式", - "IP Restriction": "IP 限制", - "IP Whitelist (supports CIDR)": "IP 白名单(支持 CIDR 表达式)", "Icon": "图标", "Icon file must be 100 KB or smaller": "图标文件必须小于等于 100 KB", "Icon identifier (e.g. github, gitlab)": "图标标识符(例如 github、gitlab)", + "ID": "ID", "If an upstream error contains any of these keywords (case insensitive), the channel will be disabled automatically.": "如果上游错误包含以下任何关键字(不区分大小写),渠道将自动禁用。", "If authorization succeeds, the generated JSON will be inserted into the key field. You still need to save the channel to persist it.": "授权成功后,生成的 JSON 将插入密钥字段。您仍需保存频道以持久化。", "If connecting to upstream One API or New API relay projects, use OpenAI type instead unless you know what you are doing": "如果连接上游 One API 或 New API 中继项目,除非您知道自己在做什么,否则请使用 OpenAI 类型", @@ -1693,15 +1839,19 @@ "Image": "图片", "Image Generation": "图片生成", "Image In": "图像输入", + "Image input": "图片输入", "Image Out": "图像输出", "Image Preview": "图片预览", - "Image Tokens": "图像 Token", - "Image input": "图片输入", "Image ratio": "图片倍率", "Image to Video": "图生视频", + "Image Tokens": "图像 Token", "Import to CC Switch": "填入 CC Switch", + "Important Alert": "重要警示", + "Important Notice": "重要通知", "In Progress": "进行中", "In:": "入:", + "Incident": "故障", + "Incident Critical": "故障高亮", "Include Group": "包含分组", "Include Model": "包含模型", "Include Rule Name": "包含规则名", @@ -1714,10 +1864,10 @@ "Initializing…": "正在初始化…", "Inpaint": "局部重绘", "Input": "输入", - "Input Tokens": "输入 Token", "Input mode": "输入模式", "Input price": "输入价格", "Input tokens": "输入 token", + "Input Tokens": "输入 Token", "Inspect user prompts": "检查用户提示", "Instance": "实例", "Integrations": "集成", @@ -1726,19 +1876,19 @@ "Inter-group ratio overrides": "分组间比例覆盖", "Interface Language": "界面语言", "Internal Notes": "内部备注", - "Internal Server Error!": "内部服务器错误!", "Internal notes (not shown to users)": "内部备注(不显示给用户)", + "Internal Server Error!": "内部服务器错误!", + "Invalid chat link. Please contact the administrator.": "无效的聊天链接。请联系管理员。", + "Invalid chat link. Please contact your administrator.": "无效的聊天链接。请联系您的管理员。", + "Invalid code": "无效代码", "Invalid JSON": "JSON 无效", "Invalid JSON format": "无效的 JSON 格式", "Invalid JSON format or values out of allowed range": "无效的 JSON 格式或值超出允许范围", "Invalid JSON in parameter override template": "参数覆盖模板中的 JSON 格式无效", "Invalid JSON string.": "无效的 JSON 字符串。", + "Invalid model mapping format": "无效的模型映射格式", "Invalid Passkey registration response": "无效的 Passkey 注册响应", "Invalid Passkey response": "无效的 Passkey 响应", - "Invalid chat link. Please contact the administrator.": "无效的聊天链接。请联系管理员。", - "Invalid chat link. Please contact your administrator.": "无效的聊天链接。请联系您的管理员。", - "Invalid code": "无效代码", - "Invalid model mapping format": "无效的模型映射格式", "Invalid payment redirect URL": "无效的支付跳转链接", "Invalid reset link, please request a new password reset": "无效的重置链接,请请求新的密码重置", "Invalid reset link, please request a new password reset.": "无效的重置链接,请请求新的密码重置。", @@ -1751,31 +1901,41 @@ "Invitation Quota": "邀请额度", "Invite Info": "邀请信息", "Invited": "已邀请", - "Invited Users": "受邀用户", "Invited by user ID": "由用户 ID 邀请", + "Invited Users": "受邀用户", "Invitee Reward": "受邀者奖励", "Inviter": "邀请人", "Inviter Reward": "邀请者奖励", "Invites": "邀请", + "io.net API Key": "io.net API 密钥", + "io.net Deployments": "io.net 部署", + "IP": "IP", + "IP Address": "IP 地址", + "IP Filter Mode": "IP 过滤模式", + "IP Restriction": "IP 限制", + "IP Whitelist (supports CIDR)": "IP 白名单(支持 CIDR 表达式)", + "is an open-source AI API gateway for self-hosted deployments. Connect multiple upstream services, manage models, keys, quotas, logs, and routing policies in one place.": "是一个用于自托管部署的开源 AI API 网关。接入多家上游服务,并集中管理模型、密钥、额度、日志与路由策略。", + "is less than the configured maximum cache size": "小于配置的最大缓存大小", + "is the default price; ": "为默认价格;", "It seems like the page you're looking for": "您要查找的页面似乎", "Items": "条目", + "Japanese": "日语", + "Jimeng": "Jimeng", + "Jina": "Jina", "JSON": "JSON", - "JSON Editor": "JSON 编辑", - "JSON Mode": "JSON 模式", - "JSON Text": "JSON 文本", "JSON array of group identifiers. When enabled below, new tokens rotate through this list.": "分组标识符的 JSON 数组。在下方启用时,新令牌将在此列表中轮换。", + "JSON Editor": "JSON 编辑", "JSON format error": "JSON 格式错误", "JSON format supports service account JSON files": "JSON 格式支持服务账户 JSON 文件", "JSON map of group → description exposed when users create API keys.": "分组 → 描述的 JSON 映射,在用户创建 API 密钥时公开。", "JSON map of group → ratio applied when the user selects the group explicitly.": "分组 → 比率的 JSON 映射,当用户明确选择该分组时应用此比率。", - "JSON map of model → USD cost per request. Takes precedence over ratio based billing.": "模型 → 每请求美元成本的 JSON 映射。优先于基于比率的计费。", "JSON map of model → multiplier applied to quota billing.": "模型 → 应用于配额计费的乘数的 JSON 映射。", + "JSON map of model → USD cost per request. Takes precedence over ratio based billing.": "模型 → 每请求美元成本的 JSON 映射。优先于基于比率的计费。", + "JSON Mode": "JSON 模式", "JSON must be an object": "JSON 必须是对象", "JSON object:": "JSON 对象:", + "JSON Text": "JSON 文本", "JSON-based access control rules. Leave empty to allow all users.": "基于 JSON 的访问控制规则。留空以允许所有用户。", - "Japanese": "日语", - "Jimeng": "Jimeng", - "Jina": "Jina", "Just now": "刚刚", "JustSong": "JustSong", "K": "K", @@ -1792,18 +1952,17 @@ "Keys, OAuth credentials, and multi-key update behavior.": "管理密钥、OAuth 凭据和多密钥更新行为。", "Kling": "Kling", "Knowledge Base ID *": "知识库 ID *", - "LLM prompt helper": "LLM 辅助设计提示词", "Landing page with system overview.": "带有系统概览的登陆页面。", - "Language Preferences": "语言偏好", "Language preference saved": "语言偏好已保存", + "Language Preferences": "语言偏好", "Language preferences sync across your signed-in devices and affect API error messages.": "语言偏好会同步到您登录的所有设备,并影响 API 错误消息语言。", + "Last check time": "上次检测时间", + "Last detected addable models": "上次检测到可加入模型", "Last Login": "最后登录", "Last Seen": "最近一次", "Last Tested": "上次测试时间", - "Last Used": "最后使用时间", - "Last check time": "上次检测时间", - "Last detected addable models": "上次检测到可加入模型", "Last updated:": "上次更新时间:", + "Last Used": "最后使用时间", "Last used:": "上次使用时间:", "Layout": "布局", "Learn more": "了解更多", @@ -1823,15 +1982,15 @@ "Leave empty to use system temp directory": "留空使用系统临时目录", "Leave empty to use username": "留空以使用用户名", "Legacy Format (JSON Object)": "旧格式(JSON 对象)", - "Legacy Format Template": "旧格式模板", "Legacy format must be a JSON object": "旧格式必须是 JSON 对象", + "Legacy Format Template": "旧格式模板", "Less": "更少", "Less Than": "小于", "Less Than or Equal": "小于等于", "Light": "浅色", "Lightning Fast": "极速", - "Limit Reached": "已达上限", "Limit period": "限制周期", + "Limit Reached": "已达上限", "Limit which models can be used with this key": "限制此密钥可使用的模型", "Limited": "受限", "LingYiWanWu": "LingYiWanWu", @@ -1842,6 +2001,7 @@ "List of models supported by this channel. Use comma to separate multiple models.": "此渠道支持的模型列表。使用逗号分隔多个模型。", "List of origins (one per line) allowed for Passkey registration and authentication.": "允许用于 Passkey 注册和身份验证的来源列表(每行一个)。", "List view": "列表视图", + "LLM prompt helper": "LLM 辅助设计提示词", "Load Balancing": "负载均衡", "Load template...": "加载模板...", "Loader": "加载器", @@ -1858,41 +2018,44 @@ "Local models": "本地模型", "Locations": "位置", "Locked": "锁定", + "log": "日志的完整详情", "Log Details": "日志详情", "Log Directory": "日志目录", "Log File Count": "日志文件数", + "Log files older than {{value}} days will be deleted.": "将删除 {{value}} 天前的日志文件。", "Log IP address for usage and error logs": "记录用于使用和错误日志的 IP 地址", "Log Maintenance": "日志维护", "Log Type": "日志类型", - "Log files older than {{value}} days will be deleted.": "将删除 {{value}} 天前的日志文件。", "Logic": "逻辑", "Login failed": "登录失败", "Logo": "徽标", "Logo URL": "徽标 URL", "Logs": "日志", + "m": "分钟", "Maintain a list of common questions for the dashboard help panel": "维护仪表板帮助面板的常见问题列表", "Maintenance": "维护", + "Maintenance Stripe": "维护条纹", "Make it easier for teammates to pick the right group.": "让队友更容易选择正确的分组。", "Manage": "管理", - "Manage API channels and provider configurations": "管理 API 渠道和提供商配置", - "Manage Bindings": "管理绑定", - "Manage Keys": "管理密钥", - "Manage Ollama Models": "管理 Ollama 模型", - "Manage Subscriptions": "管理订阅", - "Manage Vendors": "管理供应商", "Manage account bindings for this user": "管理此用户的账户绑定", "Manage and configure": "管理和配置", + "Manage API channels and provider configurations": "管理 API 渠道和提供商配置", + "Manage Bindings": "管理绑定", "Manage catalog visibility and pricing.": "管理目录可见性和定价。", "Manage custom OAuth providers for user authentication": "管理用于用户认证的自定义 OAuth 提供商", + "Manage Keys": "管理密钥", "Manage local models for:": "管理本地模型:", "Manage model deployments": "管理模型部署", "Manage model metadata and configuration": "管理模型元信息和配置", "Manage multi-key status and configuration for this channel": "管理此渠道的多密钥状态和配置", + "Manage Ollama Models": "管理 Ollama 模型", "Manage redemption codes for quota top-up": "管理用于配额充值的兑换码", "Manage server log files. Log files accumulate over time; regular cleanup is recommended to free disk space.": "管理服务器运行日志文件。日志文件会随运行时间不断累积,建议定期清理以释放磁盘空间。", "Manage subscription plan creation, pricing and status": "管理订阅套餐的创建、定价和启停", "Manage subscription plans and pricing.": "管理订阅计划和定价。", + "Manage Subscriptions": "管理订阅", "Manage users and their permissions": "管理用户及其权限", + "Manage Vendors": "管理供应商", "Manage your API keys for accessing the service": "管理您用于访问服务的 API 密钥", "Manage your balance and payment methods": "管理您的余额和付款方式", "Manage your security settings and account access": "管理您的安全设置和账户访问", @@ -1905,14 +2068,14 @@ "Match All (AND)": "必须全部满足(AND)", "Match Any (OR)": "满足任一条件(OR)", "Match Mode": "匹配方式", - "Match Text": "匹配文本", - "Match Type": "匹配类型", - "Match Value": "匹配值", - "Match Value (optional)": "匹配值(可选)", "Match model name exactly": "完全匹配模型名称", "Match models containing this name": "匹配包含此名称的模型", "Match models ending with this name": "匹配以此名称结尾的模型", "Match models starting with this name": "匹配以此名称开头的模型", + "Match Text": "匹配文本", + "Match Type": "匹配类型", + "Match Value": "匹配值", + "Match Value (optional)": "匹配值(可选)", "Matched": "已命中", "Matched Tier": "命中阶梯", "Matching Rules": "匹配规则", @@ -1920,15 +2083,16 @@ "Max Entries": "最大条目数", "Max Requests (incl. failures)": "最大请求数(包括失败)", "Max Requests (including failures)": "最大请求数(包括失败)", - "Max Success": "最大成功数", - "Max Successful Requests": "最大成功请求数", "Max requests per period": "每周期最大请求数", + "Max Success": "最大成功数", "Max successful requests": "最大成功请求数", + "Max Successful Requests": "最大成功请求数", "Maximum 1000 characters. Supports Markdown and HTML.": "最多 1000 个字符。支持 Markdown 和 HTML。", "Maximum 200 characters": "最多 200 个字符", "Maximum 500 characters. Supports Markdown and HTML.": "最多 500 个字符。支持 Markdown 和 HTML。", "Maximum check-in quota": "签到最大额度", "Maximum quota amount awarded for check-in": "签到奖励的最大额度", + "maxRequests ≥ 0, maxSuccess ≥ 1, both ≤ 2,147,483,647": "maxRequests ≥ 0, maxSuccess ≥ 1,两者均 ≤ 2,147,483,647", "Medium": "中", "Memory Hits": "内存命中", "Memory Threshold (%)": "内存阈值 (%)", @@ -1941,70 +2105,76 @@ "Min Top-up": "最低充值", "Min Top-up:": "最低充值:", "MiniMax": "MiniMax", - "Minimum LinuxDO trust level required": "所需的最低 LinuxDO 信任级别", - "Minimum Trust Level": "最低信任级别", "Minimum check-in quota": "签到最小额度", + "Minimum LinuxDO trust level required": "所需的最低 LinuxDO 信任级别", "Minimum quota amount awarded for check-in": "签到奖励的最小额度", "Minimum recharge amount in USD": "最低充值金额(美元)", "Minimum recharge amount to qualify for this discount.": "符合此折扣的最低充值金额。", - "Minimum top-up (USD)": "最低充值(美元)", "Minimum top-up (optional)": "最低充值(可选)", + "Minimum top-up (USD)": "最低充值(美元)", "Minimum top-up amount must be at least 1": "最低充值金额至少为 1", "Minimum top-up quantity": "最低充值数量", "Minimum topup amount: {{amount}}": "最低充值金额:{{amount}}", + "Minimum Trust Level": "最低信任级别", "Minimum:": "最低:", "Minute": "分钟", - "Missing Models": "缺失的模型", + "minutes": "分钟", "Missing code": "缺少代码", + "Missing Models": "缺失的模型", "Missing user data from Passkey login response": "Passkey 登录响应中缺少用户数据", "Mistral": "Mistral", "Mode": "模式", + "model": "模型", "Model": "模型", "Model Access": "模型访问", "Model Analytics": "模型数据分析", + "model billing support": "模型计费支持", "Model Call Analytics": "模型调用分析", - "Model Description": "模型描述", - "Model Group": "模型分组", - "Model ID": "模型 ID", - "Model Limits": "模型限制", - "Model Mapping": "模型映射", - "Model Mapping (JSON)": "模型映射 (JSON)", - "Model Mapping must be a JSON object like": "模型映射必须是如下所示的 JSON 对象", - "Model Name": "模型名称", - "Model Name *": "模型名称 *", - "Model Price": "模型价格", - "Model Price Not Configured": "模型价格未配置", - "Model Pricing": "模型定价", - "Model Regex": "模型正则", - "Model Regex (one per line)": "模型正则(每行一个)", - "Model Square": "模型广场", - "Model Tags": "模型标签", - "Model Version *": "模型版本 *", "Model context usage": "模型上下文用量", "Model deleted": "模型已删除", "Model deleted successfully": "模型删除成功", "Model deployment service is disabled": "模型部署服务未启用", + "Model Description": "模型描述", "Model disabled successfully": "模型禁用成功", "Model enabled successfully": "模型启用成功", "Model fixed pricing": "模型固定定价", + "Model Group": "模型分组", + "Model ID": "模型 ID", + "Model Limits": "模型限制", + "Model Mapping": "模型映射", + "Model Mapping (JSON)": "模型映射 (JSON)", + "Model Mapping must be a JSON object like": "模型映射必须是如下所示的 JSON 对象", "Model mapping must be valid JSON": "模型映射必须是有效的 JSON", "Model name": "模型名称", + "Model Name": "模型名称", + "Model Name *": "模型名称 *", "Model name is required": "模型名称为必填项", "Model names copied to clipboard": "模型名称已复制到剪贴板", "Model not found": "模型未找到", + "Model Price": "模型价格", + "Model Price Not Configured": "模型价格未配置", + "Model Pricing": "模型定价", "Model pull failed: {{msg}}": "模型拉取失败:{{msg}}", "Model ratio": "模型倍率", "Model ratios": "模型比例", "Model ratios reset successfully": "模型比例重置成功", + "Model Regex": "模型正则", + "Model Regex (one per line)": "模型正则(每行一个)", + "Model Square": "模型广场", + "Model Tags": "模型标签", "Model to use for testing": "用于测试的模型", "Model to use when testing channel connectivity": "测试通道连接时使用的模型", + "Model Version *": "模型版本 *", + "model(s) selected out of": "已选模型(共)", + "model(s)? This action cannot be undone.": "模型?此操作无法撤销。", + "models": "个模型", "Models": "模型", - "Models & Groups": "模型与分组", "Models *": "模型 *", - "Models Directory": "模型目录", + "Models & Groups": "模型与分组", "Models appended successfully": "模型已追加成功", "Models are required": "需要模型", "Models directory": "模型目录", + "Models Directory": "模型目录", "Models fetched successfully": "模型获取成功", "Models filled to form": "模型已填充到表单", "Models listed here will not automatically append or remove -thinking / -nothinking suffixes.": "此处列出的模型不会自动添加或移除 -thinking / -nothinking 后缀。", @@ -2019,21 +2189,24 @@ "Monitoring & Alerts": "监控与警报", "Month": "月份", "Monthly": "每月", + "months": "个月", "Moonshot": "Moonshot", "More": "更多", + "more mapping": "更多映射", "More templates...": "更多模板...", "More...": "更多...", "Move": "移动", + "Move a request header": "移动请求头", + "Move affiliate rewards to your main balance": "将推广奖励转移到您的主余额", "Move Field": "移动字段", "Move Header": "移动请求头", "Move Request Header": "移动请求头", - "Move a request header": "移动请求头", - "Move affiliate rewards to your main balance": "将推广奖励转移到您的主余额", "Move source field to target field": "把来源字段移动到目标字段", + "ms": "毫秒", + "Multi-key channel: Keys will be": "多密钥渠道:密钥将", "Multi-Key Management": "多密钥管理", "Multi-Key Mode (multiple keys, one channel)": "多密钥模式(多个密钥,一个通道)", "Multi-Key Strategy": "多密钥策略", - "Multi-key channel: Keys will be": "多密钥渠道:密钥将", "Multi-key: Polling rotation": "多密钥:轮询", "Multi-key: Random rotation": "多密钥:随机", "Multi-protocol Compatible": "兼容多协议", @@ -2051,20 +2224,22 @@ "Must be a valid URL": "必须是有效的 URL", "Must be at least 8 characters": "必须至少 8 个字符", "My Subscriptions": "我的订阅", + "my-status": "我的状态", "MySQL detected": "检测到 MySQL", "MySQL is a production-ready relational database. Keep your credentials secure.": "MySQL 是生产就绪的关系数据库。请确保凭据安全。", "MySQL is production ready. Ensure automated backups and a dedicated user with the minimal required privileges are configured.": "MySQL 已准备好投入生产环境。请确保配置了自动备份以及具有最低所需权限的专用用户。", "N/A": "不适用", "Name": "名称", "Name *": "名称 *", - "Name Rule": "名称规则", - "Name Suffix": "名称后缀", "Name for this redemption code (1-20 characters)": "此兑换码的名称(1-20 个字符)", "Name is available": "名称可用", "Name is not available": "名称不可用", "Name must be between {{min}} and {{max}} characters": "名称必须介于 {{min}} 到 {{max}} 个字符之间", + "Name Rule": "名称规则", + "Name Suffix": "名称后缀", "Name the channel and choose the upstream provider.": "命名渠道并选择上游供应商。", "Name the channel, choose the provider, configure API access, and set credentials.": "命名渠道、选择供应商、配置 API 访问并设置凭据。", + "name@example.com": "name@example.com", "Native format": "原生格式", "Need a code?": "需要一个代码吗?", "Nested JSON defining per-group rules for adding (+:), removing (-:), or appending usable groups.": "嵌套 JSON,定义按分组添加(+:)、移除(-:)或追加可用分组的规则。", @@ -2078,48 +2253,32 @@ "New Format Template": "新格式模板", "New Group": "新建分组", "New Models ({{count}})": "新模型 ({{count}})", - "New Password": "新密码", - "New User Quota": "新用户配额", "New name will be:": "新名称将是:", "New password": "新密码", + "New Password": "新密码", "New password must be different from current password": "新密码必须与当前密码不同", + "New User Quota": "新用户配额", "New version available: {{version}}": "有新版本可用:{{version}}", "NewAPI": "NewAPI", "Next": "下一步", "Next branch": "下一个分支", "Next page": "下一页", "Next reset": "下一次重置", - "No API Domains yet. Click \"Add API\" to create one.": "暂无 API 域。点击“添加 API”创建一个。", - "No API Keys Found": "未找到 API 密钥", - "No API keys available. Create your first API key to get started.": "没有可用的 API 密钥。创建您的第一个 API 密钥即可开始使用。", - "No API routes configured": "未配置 API 路由", "No About Content Set": "未设置关于内容", "No Active": "无生效", - "No Change": "无变化", - "No Channels Found": "未找到渠道", - "No Data": "无数据", - "No Deployments Found": "未找到部署", - "No FAQ entries available": "暂无 FAQ 条目", - "No FAQ entries yet. Click \"Add FAQ\" to create one.": "暂无常见问题条目。点击“添加常见问题”来创建一个。", - "No Inviter": "无邀请人", - "No Logs Found": "未找到日志", - "No Models Found": "未找到模型", - "No Quota": "无余额", - "No Redemption Codes Found": "未找到兑换码", - "No Reset": "不重置", - "No Retry": "不重试", - "No Sync": "不同步", - "No Upgrade": "不升级", - "No Uptime Kuma groups yet. Click \"Add Group\" to create one.": "暂无 Uptime Kuma 分组。点击“添加分组”来创建一个。", - "No Users Found": "未找到用户", "No additional type-specific settings for this channel type.": "此渠道类型没有额外的特定类型设置。", "No amount options configured. Add amounts below to get started.": "未配置金额选项。在下方添加金额即可开始使用。", "No announcements at this time": "目前暂无公告", "No announcements yet. Click \"Add Announcement\" to create one.": "暂无公告。点击“添加公告”来创建一个。", - "No available Web chat links": "没有可用的 Web 聊天链接", + "No API Domains yet. Click \"Add API\" to create one.": "暂无 API 域。点击“添加 API”创建一个。", + "No API keys available. Create your first API key to get started.": "没有可用的 API 密钥。创建您的第一个 API 密钥即可开始使用。", + "No API Keys Found": "未找到 API 密钥", + "No API routes configured": "未配置 API 路由", "No available models": "没有可用模型", + "No available Web chat links": "没有可用的 Web 聊天链接", "No backup": "无备份", "No billing records found": "未找到账单记录", + "No Change": "无变化", "No changes": "没有变更", "No changes made": "未进行任何更改", "No changes to save": "没有需要保存的更改", @@ -2127,6 +2286,7 @@ "No channel type found.": "未找到渠道类型。", "No channels available. Create your first channel to get started.": "没有可用的渠道。创建您的第一个渠道即可开始使用。", "No channels found": "未找到渠道", + "No Channels Found": "未找到渠道", "No channels selected": "未选择渠道", "No chat presets configured. Click \"Add chat preset\" to get started.": "未配置聊天预设。点击\"添加聊天预设\"开始。", "No chat presets match your search": "没有匹配的聊天预设", @@ -2136,21 +2296,27 @@ "No containers": "无容器", "No custom OAuth providers configured yet.": "尚未配置自定义 OAuth 提供商。", "No data": "暂无数据", + "No Data": "无数据", "No data available": "暂无数据", "No deployments available. Create one to get started.": "没有可用的部署。创建一个开始吧。", + "No Deployments Found": "未找到部署", "No description available.": "暂无描述。", "No discount tiers configured. Click \"Add discount tier\" to get started.": "未配置折扣等级。点击“添加折扣等级”即可开始使用。", "No duplicate keys found": "未发现重复密钥", "No enabled tokens available": "当前没有可用的启用令牌", "No endpoints configured. Switch to JSON mode or add rows to define endpoints.": "未配置端点。切换到 JSON 模式或添加行来定义端点。", + "No FAQ entries available": "暂无 FAQ 条目", + "No FAQ entries yet. Click \"Add FAQ\" to create one.": "暂无常见问题条目。点击“添加常见问题”来创建一个。", "No files match the accepted types.": "没有文件匹配接受的类型。", "No group found.": "未找到分组。", "No group-based rate limits configured. Click \"Add group\" to get started.": "未配置基于组的速率限制。点击“添加组”开始使用。", "No groups match your search": "没有组匹配您的搜索", "No header overrides configured.": "未配置标头覆盖。", + "No Inviter": "无邀请人", "No keys found": "未找到密钥", "No log entries matched the selected time.": "没有日志条目匹配所选时间。", "No logs": "暂无日志", + "No Logs Found": "未找到日志", "No mappings configured. Click \"Add Row\" to get started.": "未配置映射。点击 \"添加行\" 开始。", "No matches found": "未找到匹配项", "No matching results": "无匹配结果", @@ -2165,6 +2331,7 @@ "No models fetched from upstream": "未从上游获取模型", "No models fetched yet.": "尚未获取模型。", "No models found": "未找到模型", + "No Models Found": "未找到模型", "No models found.": "未找到模型。", "No models match your current filters.": "没有模型匹配您当前的筛选条件。", "No models match your search": "没有匹配的模型", @@ -2186,48 +2353,60 @@ "No products configured. Click \"Add product\" to get started.": "未配置产品。点击 \"添加产品\" 开始。", "No products match your search": "没有产品匹配您的搜索", "No providers available": "暂无可用提供商", + "No Quota": "无余额", "No ratio differences found": "未发现比率差异", "No records found. Try adjusting your filters.": "未找到记录。尝试调整您的筛选条件。", "No redemption codes available. Create your first redemption code to get started.": "没有可用的兑换码。创建您的第一个兑换码即可开始使用。", + "No Redemption Codes Found": "未找到兑换码", "No related models available for this channel type": "此渠道类型没有相关模型可用", "No release notes provided.": "未提供发布说明。", + "No Reset": "不重置", "No restriction": "无限制", "No results for \"{{query}}\". Try adjusting your search or filters.": "未找到 \"{{query}}\" 的结果。请尝试调整搜索或筛选条件。", "No results found": "搜索无结果", "No results found.": "未找到结果。", + "No Retry": "不重试", "No rules yet": "暂无规则", "No rules yet. Add a group below to get started.": "暂无规则。请在下方添加分组以开始。", "No status code mappings configured.": "未配置状态码映射。", "No subscription plans yet": "暂无订阅套餐", "No subscription records": "暂无订阅记录", + "No Sync": "不同步", "No system announcements": "暂无系统公告", "No token found.": "未找到令牌。", "No tools configured": "未配置工具", + "No Upgrade": "不升级", "No upstream price differences found": "未发现上游价格差异", "No upstream ratio differences found": "未找到上游比例差异", + "No Uptime Kuma groups yet. Click \"Add Group\" to create one.": "暂无 Uptime Kuma 分组。点击“添加分组”来创建一个。", "No uptime monitoring configured": "未配置正常运行时间监控", "No usage logs available. Logs will appear here once API calls are made.": "暂无使用日志。发起 API 调用后日志将显示在此处。", "No user information available": "暂无用户信息", "No user selected": "未选择用户", "No users available. Try adjusting your search or filters.": "没有可用的用户。请尝试调整您的搜索或筛选条件。", + "No Users Found": "未找到用户", "Node Name": "节点名称", "Non-stream": "非流式", "None": "无", + "noreply@example.com": "noreply@example.com", "Normal": "正向", "Normalized:": "已归一化:", - "Not Equals": "不等于", - "Not Set": "未设置", - "Not Started": "未开始", - "Not Submitted": "未提交", "Not available": "不可用", "Not backed up": "未备份", "Not bound": "未绑定", + "Not Equals": "不等于", + "Not Set": "未设置", "Not set yet": "尚未设置", + "Not Started": "未开始", + "Not Submitted": "未提交", "Not tested": "未测试", "Not used yet": "暂未使用", "Notice": "通知", + "Notice Glass": "通知玻璃", "Notification Email": "通知邮箱", "Notification Method": "通知方式", + "Notification Presets": "通知预设", + "Notification presets use fixed category colors and ignore the color palette.": "通知预设使用固定分类颜色,不读取调色盘。", "Notifications": "通知", "Number of codes to create": "要创建的代码数量", "Number of keys to create": "要创建的密钥数量", @@ -2236,33 +2415,37 @@ "Number of users invited": "已邀请的用户数量", "OAuth Client ID": "OAuth 客户端 ID", "OAuth Client Secret": "OAuth 客户端密钥", - "OAuth Integrations": "OAuth 集成", "OAuth failed": "OAuth 失败", + "OAuth Integrations": "OAuth 集成", "OAuth start failed": "OAuth 启动失败", - "OIDC": "OIDC", - "OIDC Client ID": "OIDC 客户端 ID", - "OIDC Client Secret": "OIDC 客户端密钥", - "OIDC configuration fetched successfully": "OIDC 配置获取成功", - "OIDC discovery URL. Click \"Auto-discover\" to fetch endpoints automatically.": "OIDC 发现 URL。点击\"自动发现\"以自动获取端点。", - "OIDC endpoints discovered successfully": "OIDC 端点发现成功", "Object Prune Rules": "对象清理规则", "Observability": "可观测性", "Obtain the API key, merchant ID, and RSA key pair from the Waffo dashboard, and configure the callback URL.": "请在 Waffo 后台获取 API 密钥、商户 ID 以及 RSA 密钥对,并配置回调地址。", "Obtain the merchant, store, product and signing keys from your Waffo dashboard. Webhook URL: /api/waffo-pancake/webhook": "请在 Waffo 后台获取商户、店铺、商品与签名密钥。Webhook 地址:/api/waffo-pancake/webhook", + "of": "条,共", + "of 3:": "共 3 个:", + "off": "关闭", "Official": "官方", + "Official documentation": "官方说明", "Official Repository": "官方仓库", "Official Sync": "官方同步", - "Official documentation": "官方说明", "OhMyGPT": "OhMyGPT", + "OIDC": "OIDC", + "OIDC Client ID": "OIDC 客户端 ID", + "OIDC Client Secret": "OIDC 客户端密钥", + "OIDC configuration fetched successfully": "OIDC 配置获取成功", + "OIDC discovery URL. Click \"Auto-discover\" to fetch endpoints automatically.": "OIDC 发现 URL。点击\"自动发现\"以自动获取端点。", + "OIDC endpoints discovered successfully": "OIDC 端点发现成功", "Old Format Template": "旧格式模板", "Old format: Direct override. New format: Supports conditional judgment and custom JSON operations.": "旧格式:直接覆盖。新格式:支持条件判断和自定义 JSON 操作。", "Ollama": "Ollama", "Ollama Models": "Ollama 模型", "One API": "One API", - "One IP or CIDR range per line": "每行一个 IP 或 CIDR 范围", - "One IP per line (empty for no restriction)": "每行一个 IP (留空表示无限制)", "One domain per line": "每行一个域名", "One domain per line (only used when domain restriction is enabled)": "每行一个域名 (仅在启用域名限制时使用)", + "One IP or CIDR range per line": "每行一个 IP 或 CIDR 范围", + "One IP per line (empty for no restriction)": "每行一个 IP (留空表示无限制)", + "one keyword per line": "每行一个关键词", "Online payment is not enabled. Please contact the administrator.": "管理员未开启在线支付功能,请联系管理员配置。", "Online topup is not enabled. Please use redemption code or contact administrator.": "尚未启用在线充值。请使用兑换码或联系管理员。", "Only allow specific email domains": "仅允许特定的电子邮件域名", @@ -2274,34 +2457,35 @@ "Oops! Page Not Found!": "糟糕!页面未找到!", "Oops! Something went wrong": "糟糕!出错了", "Open": "打开", - "Open CC Switch": "打开 CC Switch", - "Open Source": "开源项目", "Open authorization page": "打开授权页", - "Open in New Tab": "在新标签页中打开", + "Open CC Switch": "打开 CC Switch", "Open in chat": "在聊天中打开", "Open in new tab": "在新标签页中打开", + "Open in New Tab": "在新标签页中打开", "Open menu": "打开菜单", "Open release": "打开版本", + "Open Source": "开源项目", "Open the io.net console API Keys page": "打开 io.net 控制台 API 密钥页面", "Open theme settings": "打开主题设置", "OpenAI": "OpenAI", "OpenAI Compatible": "兼容 OpenAI", "OpenAI Organization": "OpenAI 组织", "OpenAI Organization ID (optional)": "OpenAI 组织 ID(可选)", - "OpenAI, Anthropic, Google, etc.": "OpenAI、Anthropic、Google 等", "OpenAI, Anthropic, etc.": "OpenAI、Anthropic 等", + "OpenAI, Anthropic, Google, etc.": "OpenAI、Anthropic、Google 等", "OpenAIMax": "OpenAIMax", - "OpenRouter": "OpenRouter", "Opened authorization page": "已打开授权页", + "OpenRouter": "OpenRouter", + "opens in an external client. Trigger it from the sidebar or API key actions to launch the configured application.": "在外部客户端中打开。从侧边栏或 API 密钥操作中触发,以启动配置的应用。", "Operation": "操作", - "Operation Type": "操作类型", "Operation failed": "操作失败", + "Operation Type": "操作类型", "Operator Admin": "操作管理员", "Optimize system for self-hosted single-user usage": "优化系统以适应自托管单用户使用", "Optimized network architecture ensures millisecond response times": "优化的网络架构,确保毫秒级响应时间", - "Optional JSON policy to restrict access based on user info fields": "可选的 JSON 策略,用于基于用户信息字段限制访问", "Optional callback override. Leave blank to use server address": "可选的回调覆盖。留空以使用服务器地址", "Optional icon identifier for the login button": "登录按钮的可选图标标识符", + "Optional JSON policy to restrict access based on user info fields": "可选的 JSON 策略,用于基于用户信息字段限制访问", "Optional minimum recharge amount for this method.": "此方法的可选最低充值金额。", "Optional multiplier per user group used when calculating recharge pricing. Provide a JSON object such as": "计算充值定价时使用的每个用户分组可选乘数。请提供一个 JSON 对象,例如", "Optional notes about this channel": "关于此渠道的可选备注", @@ -2314,46 +2498,50 @@ "Opus Model": "Opus 模型", "Or continue with": "或继续使用", "Or enter this key manually:": "或手动输入此密钥:", + "Order completed successfully": "订单已成功完成", "Order History": "订单历史", "Order Payment Method": "订单支付方式", - "Order completed successfully": "订单已成功完成", + "org-...": "org-...", "Original Model": "原始模型", "Other": "其他", "Output": "输出", - "Output Tokens": "输出 Token", "Output price": "输出价格", "Output tokens": "输出 token", + "Output Tokens": "输出 Token", + "override": "覆盖", "Override": "覆盖", "Override Anthropic headers, defaults, and thinking adapter behavior": "覆盖 Anthropic 标头、默认值和思维适配器行为", - "Override Rules": "覆盖规则", "Override auto-discovered endpoint": "覆盖自动发现的端点", "Override request headers": "覆盖请求标头", "Override request headers (JSON format)": "覆盖请求头(JSON 格式)", "Override request parameters (JSON format)": "覆盖请求参数 (JSON 格式)", "Override request parameters. Cannot override": "覆盖请求参数。无法覆盖", "Override request parameters. Cannot override stream parameter.": "覆盖请求参数。无法覆盖 stream 参数。", + "Override Rules": "覆盖规则", "Override the endpoint used for testing. Leave empty to auto detect.": "覆盖用于测试的端点。留空以自动检测。", + "overrides for matching model prefix.": "为匹配模型前缀的覆盖价。", "Overview": "概览", "Overwritten": "已覆盖", - "PaLM": "PaLM", "Page": "页面", "Page {{current}} of {{total}}": "第 {{current}} 页,共 {{total}} 页", + "PaLM": "PaLM", "Pan": "平移", "Param Override": "参数覆盖", - "Parameter Override": "参数覆盖", - "Parameter Override Template (JSON)": "参数覆盖模板 (JSON)", "Parameter configuration error": "参数配置有误", + "Parameter Override": "参数覆盖", "Parameter override must be a valid JSON object": "参数覆盖必须是合法的 JSON 对象", "Parameter override must be valid JSON format": "参数覆盖必须是合法的 JSON 格式", + "Parameter Override Template (JSON)": "参数覆盖模板 (JSON)", "Parameter override template must be a JSON object": "参数覆盖模板必须是 JSON 对象", + "parameter.": "参数。", "Parameters": "参数", "Parsed {{count}} service account file(s)": "已解析 {{count}} 个服务账号文件", "Partial Submission": "部分提交确认", "Pass Headers": "透传请求头", - "Pass Through Body": "透传请求体", - "Pass Through Headers": "请求头透传", "Pass request body directly to upstream": "将请求体直接传递给上游", "Pass specified request headers to upstream": "把指定请求头透传到上游请求", + "Pass Through Body": "透传请求体", + "Pass Through Headers": "请求头透传", "Pass through the anthropic-beta header for beta features": "透传 anthropic-beta 头部以使用 beta 功能", "Pass through the include field for usage obfuscation": "透传 include 字段以用于用量混淆", "Pass through the inference_geo field for Claude data residency region control": "透传 inference_geo 字段用于控制 Claude 数据驻留推理区域", @@ -2366,11 +2554,11 @@ "Pass-through Headers (comma-separated or JSON array)": "透传请求头(逗号分隔或 JSON 数组)", "Passkey": "Passkey", "Passkey Authentication": "通行密钥认证", - "Passkey Login": "Passkey 登录", "Passkey is not available in this browser": "此浏览器中不支持 Passkey", "Passkey is not supported in this environment": "此环境中不支持 Passkey", "Passkey is not supported on this device": "此设备不支持 Passkey", "Passkey is not supported on this device.": "此设备不支持通行密钥。", + "Passkey Login": "Passkey 登录", "Passkey login failed": "Passkey 登录失败", "Passkey login was cancelled": "Passkey 登录已取消", "Passkey login was cancelled or timed out": "Passkey 登录已取消或超时", @@ -2382,41 +2570,43 @@ "Passthrough Template": "透传模板", "Password": "密码", "Password / Access Token": "密码 / 访问令牌", - "Password Login": "密码登录", - "Password Registration": "密码注册", "Password changed successfully": "密码更改成功", "Password copied to clipboard: {{password}}": "密码已复制到剪贴板:{{password}}", "Password has been copied to clipboard": "密码已复制到剪贴板", + "Password Login": "密码登录", "Password must be at least 8 characters": "密码必须至少 8 个字符", "Password must be at least 8 characters long": "密码必须至少 8 个字符长", + "Password Registration": "密码注册", "Password reset and copied to clipboard: {{password}}": "密码已重置并复制到剪贴板:{{password}}", "Password reset: {{password}}": "密码已重置:{{password}}", "Passwords do not match": "密码不匹配", "Paste the full callback URL (includes code & state)": "粘贴完整回调 URL(含 code 和 state)", "Path": "路径", - "Path Regex (one per line)": "路径正则(每行一个)", "Path not set": "未设置路径", + "Path Regex (one per line)": "路径正则(每行一个)", "Path:": "路径:", "Pay": "支付", "Pay-as-you-go with real-time usage monitoring": "按量付费,实时监控使用情况", "Payment Channel": "支付渠道", "Payment Gateway": "支付网关", - "Payment Method": "付款方式", - "Payment Methods": "支付方式", "Payment initiated": "已发起支付", + "Payment Method": "付款方式", "Payment method name": "支付方式名称", "Payment method name is required": "支付方式名称不能为空", "Payment method type": "支付方式类型", "Payment method type is required": "支付方式类型为必填项", "Payment methods": "付款方式", + "Payment Methods": "支付方式", "Payment page opened": "已打开支付页面", "Payment request failed": "支付请求失败", "Payment return URL": "支付返回地址", "Pending": "待确认", + "per": "每", "Per 1K tokens": "每 1K tokens", "Per 1M tokens": "每 1M tokens", - "Per Request": "按请求", + "per request": "每次请求", "Per request": "每次请求", + "Per Request": "按请求", "Per-call": "每次调用", "Per-feature metered windows split by model or capability.": "按模型或能力拆分的附加计费能力窗口。", "Per-request (fixed price)": "按请求计费(固定价格)", @@ -2433,14 +2623,15 @@ "Perplexity": "Perplexity", "Persist your data file": "持久化您的数据文件", "Personal": "个人", - "Personal Center Area": "个人中心区域", - "Personal Settings": "个人设置", "Personal area": "个人中心", + "Personal Center Area": "个人中心区域", "Personal info settings": "个人信息设置", + "Personal Settings": "个人设置", "Personal settings and profile management.": "个人设置和个人资料管理。", "Personal use": "个人使用", "Personal use mode": "个人使用模式", "Pick a date": "选择日期", + "Pick colors from the palette or enter CSS color values manually.": "从调色盘选择颜色,或手动输入 CSS 颜色值。", "Ping Interval (seconds)": "Ping 间隔(秒)", "Plan": "套餐", "Plan Name": "套餐名称", @@ -2451,29 +2642,28 @@ "Playground": "游乐场", "Playground and chat functions": "操练场和聊天功能", "Playground experiments and live conversations.": "Playground 实验和实时对话。", - "Please Select user groups that can access this channel.": "请选择可以访问此渠道的用户组。", "Please agree to the legal terms first": "请先同意法律条款", "Please complete the security check to continue.": "请完成安全验证以继续。", "Please confirm that you understand the consequences": "请确认您了解后果", - "Please enable Two-factor Authentication or Passkey before proceeding": "请先启用双因素认证或通行密钥", "Please enable io.net model deployment service and configure an API key in System Settings.": "请先在系统设置中启用 io.net 模型部署服务,并配置 API Key。", - "Please enter API key first": "请先输入 API 密钥", - "Please enter a Well-Known URL first": "请先输入 Well-Known URL", + "Please enable Two-factor Authentication or Passkey before proceeding": "请先启用双因素认证或通行密钥", "Please enter a name": "请输入名称", "Please enter a new password": "请输入新密码", "Please enter a redemption code": "请输入兑换码", "Please enter a valid duration": "请输入有效持续时间", "Please enter a valid email address": "请输入有效的电子邮件地址", "Please enter a valid number": "请输入有效的数值", + "Please enter a Well-Known URL first": "请先输入 Well-Known URL", "Please enter amount": "请输入金额", "Please enter an administrator username": "请输入管理员用户名", + "Please enter API key first": "请先输入 API 密钥", "Please enter chat client name": "请输入聊天客户端名称", "Please enter email and verification code": "请输入邮箱和验证码", "Please enter keys first": "请先输入密钥", "Please enter model name": "请输入模型名称", "Please enter plan title": "请输入套餐标题", - "Please enter the URL": "请输入 URL", "Please enter the authentication code.": "请输入验证码。", + "Please enter the URL": "请输入 URL", "Please enter the verification code": "请输入验证码", "Please enter your current password": "请输入当前密码", "Please enter your email": "请输入您的电子邮件", @@ -2490,6 +2680,7 @@ "Please select at least one channel": "请选择至少一个渠道", "Please select at least one model": "请选择至少一个模型", "Please select items to delete": "请选择要删除的项目", + "Please Select user groups that can access this channel.": "请选择可以访问此渠道的用户组。", "Please set Ollama API Base URL first": "请先设置 Ollama API Base URL", "Please try again later.": "请稍后再试。", "Please upload key file(s)": "请上传密钥文件", @@ -2506,8 +2697,8 @@ "PostgreSQL offers strong reliability guarantees. Double check your maintenance window and retention policies before going live.": "PostgreSQL 提供强大的可靠性保证。在上线之前,请仔细检查您的维护窗口和保留策略。", "Powerful API Management Platform": "强大的 API 管理平台", "Pre-Consume for Free Models": "免费模型预消耗", - "Pre-Consumed Quota": "预消耗配额", "Pre-consumed": "预扣费", + "Pre-Consumed Quota": "预消耗配额", "Preference saved as {{pref}}, but no active subscription. Wallet will be used automatically.": "已保存偏好为{{pref}},当前无生效订阅,将自动使用钱包", "Preferences": "偏好设置", "Prefill Group Management": "预填充分组管理", @@ -2527,9 +2718,9 @@ "Preserve the original field when applying this rule": "应用此规则时保留原始字段", "Preset": "预设", "Preset Background": "预设背景", - "Preset Template": "预设模板", "Preset recharge amounts (JSON array)": "预设充值金额(JSON 数组)", "Preset recharge amounts displayed to users": "向用户显示的预设充值金额", + "Preset Template": "预设模板", "Preset templates": "预设模板", "Press Enter or comma to add tags": "按 Enter 或逗号添加标签", "Press Enter to use \"{{value}}\"": "按 Enter 使用「{{value}}」", @@ -2542,12 +2733,13 @@ "Price": "价格", "Price ($/1K calls)": "价格($/1K 次)", "Price (local currency / USD)": "价格(本地货币/美元)", - "Price ID": "价格 ID", "Price display": "价格显示", "Price display mode": "价格显示模式", "Price estimation": "价格预估", "Price estimation description": "完成硬件类型、部署位置、副本数量等设置后,价格将自动计算。", + "Price ID": "价格 ID", "Price mode (USD per 1M tokens)": "价格模式(每 100 万个 token 的美元价格)", + "price_xxx": "price_xxx", "Price:": "价格:", "Price: High to Low": "价格:从高到低", "Price: Low to High": "价格:从低到高", @@ -2556,11 +2748,11 @@ "Prices vary by usage tier and request conditions": "价格根据用量档位和请求条件动态调整", "Pricing": "定价", "Pricing & Display": "定价与显示", + "Pricing by Group": "按分组定价", "Pricing Configuration": "定价配置", + "Pricing mode": "定价模式", "Pricing Ratios": "定价比例", "Pricing Type": "定价类型", - "Pricing by Group": "按分组定价", - "Pricing mode": "定价模式", "Primary Model": "主模型", "Prioritize reusing the last successful channel based on keys extracted from request context (sticky routing)": "基于请求上下文提取的 Key,优先复用上一次成功的渠道(粘滞选路)", "Priority": "优先级", @@ -2576,6 +2768,7 @@ "Product ID is required": "产品 ID 为必填项", "Product Name": "产品名称", "Products": "产品", + "Professional": "专业", "Professional team providing 24/7 technical support": "专业团队提供 24/7 技术支持", "Profile": "个人资料", "Profile updated successfully": "个人资料更新成功", @@ -2585,28 +2778,28 @@ "Promotion codes": "促销代码", "Prompt": "提示", "Prompt (EN)": "提示词 (英文)", + "Prompt cache ratio": "提示缓存倍率", "Prompt Caching": "提示词缓存", "Prompt Details": "提示词详情", - "Prompt cache ratio": "提示缓存倍率", "Prompt price ($/1M tokens)": "提示词价格(美元/100 万 token)", "Protect login and registration with Cloudflare Turnstile": "使用 Cloudflare Turnstile 保护登录和注册", - "Provide Markdown, HTML, or an external URL for the privacy policy": "提供 Markdown、HTML 或外部 URL 作为隐私政策", - "Provide Markdown, HTML, or an external URL for the user agreement": "提供 Markdown、HTML 或外部 URL 作为用户协议", "Provide a JSON object where each key maps to an endpoint definition.": "提供一个 JSON 对象,其中每个键映射到一个端点定义。", "Provide a valid URL starting with http:// or https://": "请提供以 http:// 或 https:// 开头的有效 URL", + "Provide Markdown, HTML, or an external URL for the privacy policy": "提供 Markdown、HTML 或外部 URL 作为隐私政策", + "Provide Markdown, HTML, or an external URL for the user agreement": "提供 Markdown、HTML 或外部 URL 作为用户协议", "Provide per-category safety overrides as JSON. Use `default` for fallback values.": "以 JSON 格式提供按类别划分的安全覆盖。使用 `default` 作为回退值。", "Provide per-model header overrides as JSON. Useful for enabling beta features such as expanded context windows.": "以 JSON 格式提供按模型划分的标头覆盖。可用于启用测试功能,例如扩展上下文窗口。", "Provider": "提供商", - "Provider Name": "提供商名称", "Provider created successfully": "提供商创建成功", "Provider deleted successfully": "提供商删除成功", + "Provider Name": "提供商名称", "Provider type (OpenAI, Anthropic, etc.)": "提供商类型 (OpenAI、Anthropic 等)", "Provider updated successfully": "提供商更新成功", "Provider-specific endpoint, account, and compatibility settings.": "配置供应商专属的端点、账户和兼容性选项。", "Proxy Address": "代理地址", "Prune Object Items": "清理对象项", - "Prune Rule (string or JSON object)": "清理规则(字符串或 JSON 对象)", "Prune object items by conditions": "按条件清理对象中的子项", + "Prune Rule (string or JSON object)": "清理规则(字符串或 JSON 对象)", "Publish Date": "发布日期", "Published": "已发布", "Published:": "已发布:", @@ -2614,11 +2807,11 @@ "Pull model": "拉取模型", "Pulling...": "拉取中...", "Pulse": "脉冲", - "Purchase Limit": "限购", - "Purchase Subscription": "购买订阅套餐", "Purchase a plan to enjoy model benefits": "购买套餐后即可享受模型权益", "Purchase here": "在此购买", + "Purchase Limit": "限购", "Purchase limit reached": "已达到购买上限", + "Purchase Subscription": "购买订阅套餐", "QR Code Image URL": "二维码图片 URL", "QR code is not configured. Please contact support.": "二维码未配置。请联系支持人员。", "Quantity": "数量", @@ -2628,27 +2821,24 @@ "Querying...": "正在查询...", "Question": "问题", "Queued": "排队中", + "Quick insert common payment methods": "快速插入常用支付方式", "Quick Range": "快速范围", "Quick Setup from Preset": "从预设快速设置", - "Quick insert common payment methods": "快速插入常用支付方式", "Quota": "额度", "Quota ({{currency}})": "额度 ({{currency}})", - "Quota Distribution": "消耗分布", - "Quota Per Unit": "每单位配额", - "Quota Reset": "额度重置", - "Quota Settings": "额度设置", - "Quota Types": "配额类型", - "Quota Warning Threshold": "配额警告阈值", "Quota adjusted successfully": "调整额度成功", "Quota consumed before charging users": "向用户收费前消耗的配额", + "Quota Distribution": "消耗分布", "Quota given to invited users": "授予被邀请用户的配额", "Quota given to users who invite others": "授予邀请其他用户的配额", "Quota must be a positive number": "配额必须是正数", + "Quota Per Unit": "每单位配额", "Quota reminder (tokens)": "配额提醒(token)", + "Quota Reset": "额度重置", + "Quota Settings": "额度设置", + "Quota Types": "配额类型", + "Quota Warning Threshold": "配额警告阈值", "Quota:": "Quota:", - "RPM": "RPM", - "RSA Private Key (Production)": "RSA 私钥(生产)", - "RSA Private Key (Sandbox)": "RSA 私钥(沙盒)", "Rainbow": "彩虹", "Random": "随机", "Randomly select a key from the pool for each request": "每次请求从池中随机选择一个密钥", @@ -2656,16 +2846,16 @@ "Rate Limited": "限流", "Rate Limiting": "速率限制", "Ratio": "倍率", - "Ratio Type": "比率类型", "Ratio applied to audio completions for streaming models.": "应用于流式模型音频完成的比例。", "Ratio applied to audio inputs where supported by the upstream model.": "应用于上游模型支持的音频输入的比例。", "Ratio applied when creating cache entries for supported models.": "为支持的模型创建缓存条目时应用的倍率。", "Ratio mode": "比例模式", + "Ratio Type": "比率类型", "Ratio: {{value}}": "倍率:{{value}}", "Ratios synced successfully": "比率同步成功", + "Raw expression": "原始表达式", "Raw JSON": "原始 JSON", "Raw Quota": "原生额度", - "Raw expression": "原始表达式", "Re-enable on success": "成功后重新启用", "Re-login": "重新登录", "Ready to initialize": "准备初始化", @@ -2690,29 +2880,31 @@ "Redeem codes": "兑换码", "Redeemed By": "兑换人", "Redeemed:": "已兑换:", + "redemption code": "兑换码", "Redemption Code": "兑换码", - "Redemption Codes": "兑换码", "Redemption code deleted successfully": "兑换码删除成功", "Redemption code disabled successfully": "兑换码已禁用", "Redemption code enabled successfully": "兑换码已启用", "Redemption code updated successfully": "兑换码更新成功", "Redemption code(s) created successfully": "兑换码创建成功", + "Redemption Codes": "兑换码", + "redemption codes.": "兑换码。", "Redemption failed": "兑换失败", "Redemption successful! Added: {{quota}}": "兑换成功!已添加:{{quota}}", + "Redirecting to chat page...": "正在跳转到聊天页面...", "Redirecting to Creem checkout...": "正在重定向到 Creem 结账...", "Redirecting to GitHub...": "正在跳转 GitHub...", - "Redirecting to chat page...": "正在跳转到聊天页面...", "Redirecting to payment page...": "正在重定向到支付页面...", "Reference Video": "参照生视频", - "Referral Program": "推荐计划", "Referral link:": "推荐链接:", + "Referral Program": "推荐计划", "Refine models by provider, group, type, and tags.": "按供应商、分组、类型和标签细化模型。", "Refresh": "刷新", "Refresh Cache": "刷新缓存", - "Refresh Stats": "刷新统计", "Refresh credential": "刷新凭据", "Refresh failed": "刷新失败", "Refresh interval (minutes)": "刷新间隔 (分钟)", + "Refresh Stats": "刷新统计", "Refreshing...": "刷新中...", "Refund": "退款", "Refund Details": "退款详情", @@ -2731,30 +2923,30 @@ "Relying Party Display Name": "依赖方显示名称", "Relying Party ID": "依赖方 ID", "Remaining": "剩余", - "Remaining Quota ({{currency}})": "剩余额度 ({{currency}})", "Remaining quota": "剩余配额", + "Remaining Quota ({{currency}})": "剩余额度 ({{currency}})", "Remaining quota units": "剩余配额单位", "Remaining:": "剩余:", "Remark": "备注", "Remove": "移除", "Remove ${{amount}}": "移除 ${{amount}}", - "Remove Duplicates": "移除重复项", - "Remove Models": "删除模型", - "Remove Passkey": "解绑 Passkey", - "Remove Passkey?": "移除通行密钥?", "Remove all log entries created before the selected timestamp.": "移除所选时间戳之前创建的所有日志条目。", "Remove attachment": "移除附件", "Remove condition": "移除条件", + "Remove Duplicates": "移除重复项", "Remove filter": "移除筛选", "Remove functionResponse.id field": "移除 functionResponse.id 字段", + "Remove Models": "删除模型", + "Remove Passkey": "解绑 Passkey", + "Remove Passkey?": "移除通行密钥?", "Remove rule group": "移除规则组", "Remove string prefix": "去掉字符串前缀", "Remove string suffix": "去掉字符串后缀", "Remove the target field": "删除目标字段", "Remove tier": "移除档位", "Removed": "已移除", - "Removed Models ({{count}})": "已移除模型 ({{count}})", "Removed {{removed}} duplicate key(s). Before: {{before}}, After: {{after}}": "已移除 {{removed}} 个重复密钥。移除前:{{before}},移除后:{{after}}", + "Removed Models ({{count}})": "已移除模型 ({{count}})", "Removes Midjourney flags such as --fast, --relax, and --turbo from user prompts.": "从用户提示中移除 Midjourney 参数,如 --fast、--relax 和 --turbo。", "Removing Passkey will require you to sign in with your password next time. You can re-register anytime.": "移除通行密钥后,您下次将需要使用密码登录。您可以随时重新注册。", "Rename": "重命名", @@ -2763,19 +2955,25 @@ "Renamed successfully": "重命名成功", "Repeat the administrator password": "重复输入管理员密码", "Replace": "替换", - "Replace With": "替换为", "Replace all existing keys": "替换所有现有密钥", "Replace channel models": "覆盖渠道模型", "Replace mode: Will completely replace all existing keys": "替换模式:将完全替换所有现有键", + "Replace With": "替换为", + "replaced": "已替换", "Replacement Model": "替换模型", "Replica count": "副本数", "Replicate": "Replicate", + "request": "请求", "Request": "请求", "Request Body Disk Cache": "请求体磁盘缓存", "Request Body Field": "请求体字段", "Request Body Memory Cache": "请求体内存缓存", + "Request body pass-through is enabled. The request body will be sent directly to the upstream without any conversion.": "请求体透传已启用。请求体将直接发送到上游,不进行任何转换。", + "Request conversion": "请求转换", "Request Conversion": "请求转换", "Request Count": "请求计数", + "Request failed": "请求失败", + "Request flow": "请求流", "Request Header Field": "请求头字段", "Request Header Override": "请求头覆盖", "Request Header Overrides": "请求头覆盖", @@ -2783,15 +2981,12 @@ "Request Limits": "请求限制", "Request Model": "请求模型", "Request Model:": "请求模型:", - "Request body pass-through is enabled. The request body will be sent directly to the upstream without any conversion.": "请求体透传已启用。请求体将直接发送到上游,不进行任何转换。", - "Request conversion": "请求转换", - "Request failed": "请求失败", - "Request flow": "请求流", "Request overrides, routing behavior, and upstream model automation": "请求覆盖、路由行为和上游模型自动化", "Request rule pricing": "请求规则计费", "Request timed out, please refresh and restart GitHub login": "请求超时,请刷新页面后重新发起 GitHub 登录", "Request-based": "含请求条件", "Requests per minute": "每分钟请求数", + "requests served": "服务请求数", "Requests will be forwarded to this worker. Trailing slashes are removed automatically.": "请求将被转发到此 Worker。末尾的斜杠会自动移除。", "Requests:": "请求:", "Require email verification for new accounts": "要求新账户验证邮箱", @@ -2806,23 +3001,23 @@ "Resend ({{seconds}}s)": "重新发送 ({{seconds}}s)", "Reset": "重置", "Reset 2FA": "重置 2FA", - "Reset Cycle": "重置周期", - "Reset Passkey": "重置 Passkey", - "Reset Period": "重置周期", - "Reset Stats": "重置统计", - "Reset Two-Factor Authentication": "重置 2FA", "Reset all model ratios?": "重置所有模型比例吗?", "Reset all settings to default values": "将所有设置重置为默认值", "Reset at:": "重置于:", "Reset balance and used quota": "重置余额和已用配额", + "Reset Cycle": "重置周期", "Reset email sent, please check your inbox": "重置邮件已发送,请检查您的收件箱", "Reset failed": "重置失败", + "Reset Passkey": "重置 Passkey", "Reset password": "重置密码", + "Reset Period": "重置周期", "Reset ratios": "重置比例", - "Reset to Default": "重置为默认", + "Reset Stats": "重置统计", "Reset to default": "重置为默认", + "Reset to Default": "重置为默认", "Reset to default color": "重置为默认颜色", "Reset to default configuration": "已重置为默认配置", + "Reset Two-Factor Authentication": "重置 2FA", "Resets in:": "将于以下时间重置:", "Resolve Conflicts": "解决冲突", "Resource Configuration": "资源配置", @@ -2837,9 +3032,9 @@ "Retry Chain": "重试链路", "Retry Suggestion": "重试建议", "Retry Times": "重试次数", + "Return a custom error immediately": "立即返回自定义错误", "Return Custom Error": "返回自定义错误", "Return Error": "返回错误", - "Return a custom error immediately": "立即返回自定义错误", "Return to dashboard": "返回仪表盘", "Reveal API key": "显示 API 密钥", "Reveal key": "显示密钥", @@ -2859,9 +3054,10 @@ "Routing & Overrides": "路由与覆盖", "Routing Strategy": "路由策略", "Rows per page": "每页行数", + "RPM": "RPM", + "RSA Private Key (Production)": "RSA 私钥(生产)", + "RSA Private Key (Sandbox)": "RSA 私钥(沙盒)", "Rule": "规则", - "Rule Description (optional)": "规则描述(可选)", - "Rule group": "规则组", "Rule {{line}} is missing source field": "第 {{line}} 条操作缺少来源字段", "Rule {{line}} is missing target field": "第 {{line}} 条操作缺少目标字段", "Rule {{line}} is missing target path": "第 {{line}} 条操作缺少目标路径", @@ -2870,37 +3066,29 @@ "Rule {{line}} pass_headers is missing header names": "第 {{line}} 条请求头透传缺少请求头名称", "Rule {{line}} prune_objects is missing conditions": "第 {{line}} 条 prune_objects 缺少条件", "Rule {{line}} return_error requires a message field": "第 {{line}} 条 return_error 需要 message 字段", + "Rule Description (optional)": "规则描述(可选)", + "Rule group": "规则组", + "rules": "规则", "Rules": "规则", "Rules JSON": "规则 JSON", "Rules JSON must be an array": "规则 JSON 必须是数组", "Run GC": "执行 GC", "Run tests for the selected models": "运行所选模型的测试", "Running": "运行中", - "SMTP Email": "SMTP 邮箱", - "SMTP Host": "SMTP 主机", - "SQLite stores all data in a single file. Make sure that file is persisted when running in containers.": "SQLite 将所有数据存储在单个文件中。在容器中运行时请确保该文件已持久化。", - "SSRF Protection": "SSRF 保护", + "s": "秒", "Safety Settings": "安全设置", "Same as Local": "与本地相同", "Sandbox mode": "沙盒模式", "Save": "保存", - "Save Backup Codes": "保存备份代码", - "Save Changes": "保存更改", - "Save Creem settings": "保存 Creem 设置", - "Save Epay settings": "保存 Epay 设置", - "Save Models": "保存模型", - "Save Preferences": "保存偏好设置", - "Save SMTP settings": "保存 SMTP 设置", - "Save SSRF settings": "保存 SSRF 设置", - "Save Settings": "保存设置", - "Save Stripe settings": "保存 Stripe 设置", - "Save Waffo Pancake settings": "保存 Waffo Pancake 设置", - "Save Worker settings": "保存 Worker 设置", "Save all settings": "保存所有设置", + "Save Backup Codes": "保存备份代码", "Save changes": "保存更改", + "Save Changes": "保存更改", "Save chat settings": "保存聊天设置", "Save check-in settings": "保存签到设置", + "Save Creem settings": "保存 Creem 设置", "Save drawing settings": "保存绘图设置", + "Save Epay settings": "保存 Epay 设置", "Save failed": "保存失败", "Save failed, please retry": "保存失败,请重试", "Save general settings": "保存通用设置", @@ -2908,23 +3096,33 @@ "Save io.net settings": "保存 io.net 设置", "Save log settings": "保存日志设置", "Save model ratios": "保存模型比率", + "Save Models": "保存模型", "Save monitoring rules": "保存监控规则", "Save navigation": "保存导航", "Save notice": "保存通知", + "Save Preferences": "保存偏好设置", "Save rate limits": "保存速率限制", "Save sensitive words": "保存敏感词", + "Save Settings": "保存设置", "Save sidebar modules": "保存侧边栏模块", + "Save SMTP settings": "保存 SMTP 设置", + "Save SSRF settings": "保存 SSRF 设置", + "Save Stripe settings": "保存 Stripe 设置", "Save these backup codes in a safe place. Each code can only be used once.": "将这些备份代码保存在安全的地方。每个代码只能使用一次。", "Save these codes in a safe place. Each code can only be used once.": "将这些代码保存在安全的地方。每个代码只能使用一次。", "Save tool prices": "保存工具价格", + "Save Waffo Pancake settings": "保存 Waffo Pancake 设置", + "Save Worker settings": "保存 Worker 设置", "Saved successfully": "保存成功", "Saving...": "正在保存...", "Scan QR Code": "扫描二维码", "Scan the QR code to follow the official account and reply with “验证码” to receive your verification code.": "扫描二维码关注官方账号,回复“验证码”以接收您的验证码。", "Scan the QR code with WeChat to bind your account": "使用微信扫描二维码绑定您的账户", "Scan this QR code with your authenticator app (Google Authenticator, Microsoft Authenticator, etc.)": "使用您的身份验证器应用(Google Authenticator、Microsoft Authenticator 等)扫描此二维码", + "Scanline": "扫描线", "Scenario Templates": "场景模板", "Scheduled channel tests": "定期渠道测试", + "scheduling controls": "调度控制能力", "Scope": "作用域", "Scopes": "作用域", "Search": "搜索", @@ -2952,19 +3150,15 @@ "Search tags...": "搜索标签...", "Search vendors...": "搜索供应商...", "Search...": "搜索...", - "Secret Key": "密钥", + "seconds": "秒", "Secret env (JSON object)": "密钥环境 (JSON 对象)", "Secret environment variables (JSON)": "密钥环境变量 (JSON)", + "Secret Key": "密钥", "Secure & Reliable": "安全可靠", "Security": "安全", "Security Check": "安全验证", "Security verification": "安全验证", "Select": "选择", - "Select All Visible": "全选当前", - "Select Language": "选择语言", - "Select Model": "选择模型", - "Select Sync Channels": "选择同步渠道", - "Select Sync Source": "选择同步源", "Select a color": "选择颜色", "Select a group": "选择一个分组", "Select a group type": "选择分组类型", @@ -2977,6 +3171,7 @@ "Select all": "全选", "Select all (filtered)": "全选(筛选结果)", "Select all models": "选择所有模型", + "Select All Visible": "全选当前", "Select an operation mode and enter the amount": "选择操作模式并输入金额", "Select announcement type": "选择公告类型", "Select at least one field to overwrite.": "请选择至少一个要覆盖的字段。", @@ -2994,8 +3189,10 @@ "Select items...": "选择项目...", "Select key format": "请选择密钥格式", "Select language": "选择语言", + "Select Language": "选择语言", "Select layout style": "选择布局样式", "Select locations": "选择位置", + "Select Model": "选择模型", "Select models (empty for allow all)": "选择模型(留空表示允许所有)", "Select models and apply to channel models list.": "选择模型并应用到渠道模型列表。", "Select models or add custom ones": "选择模型或添加自定义模型", @@ -3013,14 +3210,18 @@ "Select site direction": "选择站点方向", "Select start time": "选择开始时间", "Select subscription plan": "选择订阅套餐", + "Select Sync Channels": "选择同步渠道", "Select sync channels to compare prices": "选择同步渠道以对比价格", "Select sync channels to compare ratios": "选择同步渠道以比较比率", + "Select Sync Source": "选择同步源", "Select the API endpoint region": "选择 API 终端节点区域", "Select the fields you want to overwrite with upstream data. Unselected fields keep their local values.": "选择要使用上游数据覆盖的字段。未选择的字段将保留其本地值。", "Select theme preference": "选择主题偏好", "Select time granularity": "选择时间粒度", "Select vendor": "选择供应商", "Selectable groups": "可选分组", + "selected": "已选择", + "selected channel(s). Leave empty to remove tag.": "选定的渠道。留空以移除标签。", "Selected conflicts were overwritten successfully.": "选中的冲突已成功覆盖。", "Self-Use Mode": "自用模式", "Send": "发送", @@ -3033,26 +3234,26 @@ "Server Address": "服务器地址", "Server IP": "服务器 IP", "Server Log Management": "服务器日志管理", - "Server Token": "服务器 Token", "Server logging is not enabled (log directory not configured)": "服务器日志功能未启用(未配置日志目录)", + "Server Token": "服务器 Token", "Service account JSON file(s)": "服务账号 JSON 文件", "Session expired!": "会话已过期!", "Session expired?": "会话已过期?", "Set": "设置", - "Set API key access restrictions": "设置令牌的访问限制", - "Set API key basic information": "设置令牌的基本信息", - "Set Field": "设置字段", - "Set Header": "设请求头", - "Set Project to io.cloud when creating/selecting key": "创建/选择密钥时将项目设置为 io.cloud", - "Set Request Header": "设置请求头", - "Set Tag": "设置标签", "Set a discount rate for a specific recharge amount threshold.": "为特定的充值金额阈值设置折扣率。", "Set a secure password (min. 8 characters)": "设置安全密码(最少 8 个字符)", "Set a tag for": "设置标签为", + "Set API key access restrictions": "设置令牌的访问限制", + "Set API key basic information": "设置令牌的基本信息", + "Set Field": "设置字段", "Set filters to customize your dashboard statistics and charts.": "设置筛选器以自定义您的仪表板统计数据和图表。", "Set filters to narrow down your log search results.": "设置筛选器以缩小日志搜索结果范围。", + "Set Header": "设请求头", + "Set Project to io.cloud when creating/selecting key": "创建/选择密钥时将项目设置为 io.cloud", "Set quota amount and limits": "设置令牌可用额度和数量", + "Set Request Header": "设置请求头", "Set runtime request header: override entire value, or manipulate comma-separated tokens": "设置运行期请求头:可直接覆盖整条值,也可对逗号分隔的 token 做处理", + "Set Tag": "设置标签", "Set tag for selected channels": "为选定的渠道设置标签", "Set the language used across the interface": "设置界面显示语言", "Set the user's role (cannot be Root)": "设置用户角色(不能是 Root)", @@ -3076,12 +3277,13 @@ "Show token usage statistics in the UI": "在用户界面中显示令牌使用统计信息", "Showcase core capabilities with demo credentials and limited access.": "使用演示凭据和有限访问权限展示核心功能。", "Showing": "显示第", + "showing •": "显示 •", "Sidebar": "侧边栏", - "Sidebar Personal Settings": "左侧边栏个人设置", "Sidebar collapsed by default for new users": "默认情况下为新用户折叠侧边栏", "Sidebar modules": "侧边栏模块", - "Sign In": "登录", + "Sidebar Personal Settings": "左侧边栏个人设置", "Sign in": "登录", + "Sign In": "登录", "Sign in with Passkey": "使用 Passkey 登录", "Sign out": "登出", "Sign up": "注册", @@ -3098,6 +3300,7 @@ "Single Key": "单密钥", "Site Key": "站点密钥", "Size:": "大小:", + "sk_xxx or rk_xxx": "sk_xxx 或 rk_xxx", "Skip retry on failure": "失败后不重试", "Skip to Main": "跳到主内容", "Slow": "慢", @@ -3106,6 +3309,11 @@ "Slug is required": "Slug 不能为空", "Slug must be less than 100 characters": "Slug 不能超过 100 个字符", "Smallest USD amount users can recharge (Epay)": "用户可以充值的最小美元金额 (Epay)", + "SMTP Email": "SMTP 邮箱", + "SMTP Host": "SMTP 主机", + "smtp.example.com": "smtp.example.com", + "socks5://user:pass@host:port": "socks5://user:pass@host:port", + "Soft": "柔和", "Soft Errors": "软错误", "Solid": "纯色", "Solid Color": "纯色", @@ -3114,22 +3322,27 @@ "Sonnet Model": "Sonnet 模型", "Sora": "Sora", "Sort": "排序", - "Sort Order": "排序", "Sort by ID": "使用 ID 排序", + "Sort Order": "排序", "Source": "来源", "Source Endpoint": "来源端点", "Source Field": "来源字段", "Source Header": "来源请求头", + "sources": "来源", "Space-separated OAuth scopes": "以空格分隔的OAuth作用域", "Spark model version, e.g., v2.1 (version number in API URL)": "Spark 模型版本,例如 v2.1(API URL 中的版本号)", "Special billing expression": "特殊计费表达式", "Special usable group rules": "特殊可用分组规则", "Speed": "速度", + "Spotlight": "聚光", + "SQLite stores all data in a single file. Make sure that file is persisted when running in containers.": "SQLite 将所有数据存储在单个文件中。在容器中运行时请确保该文件已持久化。", + "SSRF Protection": "SSRF 保护", "Standard": "标准", "Start": "开始", - "Start Time": "起始时间", "Start a conversation to see messages here": "开始对话以在此处查看消息", + "Start color": "起始颜色", "Start for free with generous limits. No credit card required.": "免费开始使用,额度充足,无需绑定信用卡。", + "Start Time": "起始时间", "Static Gradient": "静态渐变", "Static page describing the platform.": "描述平台的静态页面。", "Statistical count": "统计计数", @@ -3150,6 +3363,7 @@ "Store ID": "商店 ID", "Store ID is required": "商店 ID 为必填项", "Stored value is not echoed back for security": "出于安全考虑,已存储的值不会回显", + "stream": "流", "Stream": "流", "Stream Mode": "流式模式", "Stream Status": "流状态", @@ -3161,9 +3375,9 @@ "Stripe product price ID": "Stripe 产品价格 ID", "Stripe/Creem requires creating products on the third-party platform and entering the ID": "Stripe/Creem 需在第三方平台创建商品并填入 ID", "Submit": "提交", + "Submit directly": "直接提交", "Submit Result": "提交结果", "Submit Time": "提交时间", - "Submit directly": "直接提交", "Submitted": "已提交", "Submitting": "提交中", "Submitting...": "提交中...", @@ -3177,6 +3391,7 @@ "Subscription Plans": "订阅套餐", "Subtract": "减少", "Success": "成功", + "Success Soft": "成功柔光", "Successfully created {{count}} API Key(s)": "成功创建了 {{count}} 个 API 密钥", "Successfully created {{count}} redemption codes": "成功创建了 {{count}} 个兑换码", "Successfully deleted {{count}} API key(s)": "成功删除了 {{count}} 个 API 密钥", @@ -3191,9 +3406,9 @@ "Support for high concurrency with automatic load balancing": "支持高并发和自动负载均衡", "Supported Imagine Models": "支持的 Imagine 模型", "Supported variables": "支持变量", + "Supports `-thinking`, `-thinking-": "支持 `-thinking`、`-thinking-`", "Supports HTML markup or iframe embedding. Enter HTML code directly, or provide a complete URL to automatically embed it as an iframe.": "支持 HTML 标记或 iframe 嵌入。直接输入 HTML 代码,或提供完整的 URL 以将其自动嵌入为 iframe。", "Supports PNG, JPG, SVG, or WebP. Recommended size: 128×128 or smaller.": "支持 PNG、JPG、SVG 或 WebP,建议尺寸不超过 128×128。", - "Supports `-thinking`, `-thinking-": "支持 `-thinking`、`-thinking-`", "Swap Face": "换脸", "Switch affinity on success": "成功后切换亲和", "Switch between the new frontend and the classic frontend. Changes take effect after page reload.": "切换新版前端和经典前端,保存后刷新页面生效。", @@ -3202,39 +3417,35 @@ "Sync Endpoint": "同步端点", "Sync Endpoints": "同步端点", "Sync Fields": "字段同步", - "Sync Upstream": "同步上游", - "Sync Upstream Models": "同步上游模型", "Sync from the public upstream metadata repository.": "从公共上游元数据仓库同步。", "Sync this model with official upstream": "将此模型与官方上游同步", + "Sync Upstream": "同步上游", + "Sync Upstream Models": "同步上游模型", "Synchronize models and vendors from an upstream source": "从上游源同步模型和供应商", "Syncing prices, please wait...": "正在同步价格,请稍候...", "System": "系统", "System Administration": "系统管理", "System Announcements": "系统公告", "System Behavior": "系统行为", + "System data statistics": "系统数据统计", "System Information": "系统信息", + "System initialized successfully! Redirecting…": "系统初始化成功!正在重定向…", + "System logo": "系统徽标", + "System maintenance": "系统维护", "System Memory": "系统内存", "System Memory Stats": "系统内存统计", "System Name": "系统名称", + "System name is required": "系统名称为必填项", "System Notice": "系统公告", "System Performance Monitoring": "系统性能监控", "System Prompt": "系统提示词", "System Prompt Concatenation": "系统提示词连接", "System Prompt Override": "系统提示覆盖", - "System Settings": "系统设置", - "System Version": "系统版本", - "System data statistics": "系统数据统计", - "System initialized successfully! Redirecting…": "系统初始化成功!正在重定向…", - "System logo": "系统徽标", - "System maintenance": "系统维护", - "System name is required": "系统名称为必填项", "System settings": "系统设置", + "System Settings": "系统设置", "System setup wizard": "系统设置向导", "System task records": "系统任务记录", - "TPM": "TPM", - "TTL": "TTL", - "TTL (seconds)": "TTL(秒)", - "TTL (seconds, 0 = default)": "TTL(秒,0 表示默认)", + "System Version": "系统版本", "Table view": "表格视图", "Tag": "标签", "Tag Aggregate": "标签聚合", @@ -3249,19 +3460,19 @@ "Target Endpoint": "目标端点", "Target Field": "目标字段", "Target Field Path": "目标字段路径", + "Target group": "目标分组", "Target Header": "目标请求头", "Target Path (optional)": "目标路径(可选)", - "Target group": "目标分组", "Task": "任务", "Task ID": "任务 ID", "Task ID:": "任务 ID:", - "Task Logs": "任务日志", "Task logs": "任务日志", + "Task Logs": "任务日志", "Team Collaboration": "团队协作", "Technical Support": "技术支持", "Telegram": "Telegram", - "Telegram Login Widget": "Telegram 登录小部件", "Telegram login requires widget integration; coming soon": "Telegram 登录需要小部件集成;即将推出", + "Telegram Login Widget": "Telegram 登录小部件", "Template": "模板", "Template variables:": "模板变量:", "Templates": "模板", @@ -3271,17 +3482,16 @@ "Test All Channels": "测试所有渠道", "Test Channel Connection": "测试渠道连接", "Test Connection": "测试连接", + "Test connectivity for:": "测试连接性:", + "Test interval (minutes)": "测试间隔 (分钟)", "Test Latency": "测试延迟", "Test Mode": "测试模式", "Test Model": "测试模型", - "Test connectivity for:": "测试连接性:", - "Test interval (minutes)": "测试间隔 (分钟)", "Testing all enabled channels started. Please refresh to see results.": "测试所有启用的通道已开始。请刷新以查看结果。", "Testing...": "测试中...", "Text Input": "文字输入", "Text Output": "文字输出", "Text to Video": "文生视频", - "The URL for this chat client.": "此聊天客户端的 URL。", "The administrator account is already initialized. You can keep your existing credentials and continue to the next step.": "管理员账户已初始化。您可以保留现有凭据并继续下一步。", "The administrator configured an external link for this document.": "管理员为此文档配置了外部链接。", "The administrator has not configured a privacy policy yet.": "管理员尚未配置隐私政策。", @@ -3304,6 +3514,7 @@ "The token group that will have a custom ratio": "将具有自定义比例的令牌分组", "The unique identifier for this model": "此模型的唯一标识符", "The unique name for this vendor": "此供应商的唯一名称", + "The URL for this chat client.": "此聊天客户端的 URL。", "Theme": "主题", "Theme Color": "主题色", "Theme Settings": "主题设置", @@ -3312,8 +3523,8 @@ "These toggles affect whether certain request fields are passed through to the upstream provider.": "这些开关控制某些请求字段是否透传到上游服务。", "Thinking Adapter": "思维适配器", "Thinking to Content": "思维到内容", - "Third-party Payment Config": "第三方支付配置", "Third-party account bindings (read-only, managed by user in profile settings)": "第三方账户绑定(只读,由用户在个人资料设置中管理)", + "Third-party Payment Config": "第三方支付配置", "This action cannot be undone.": "此操作无法撤消。", "This action cannot be undone. This will permanently delete your account and remove all your data from our servers.": "此操作无法撤消。这将永久删除您的账户并从我们的服务器中移除您的所有数据。", "This action will permanently remove 2FA protection from your account.": "此操作将永久移除您账户的 2FA 保护。", @@ -3330,10 +3541,13 @@ "This model has both fixed price and ratio billing conflicts": "此模型同时存在固定价格和比例计费冲突", "This model is not available in any group, or no group pricing information is configured.": "此模型在任何分组中均不可用,或未配置分组定价信息。", "This month": "本月获得", + "This notification preset uses fixed colors. Switch to an animation preset to customize colors.": "此通知预设使用固定颜色。切换到动效预设后可自定义颜色。", "This page has not been created yet.": "此页面尚未创建。", "This project must be used in compliance with the": "此项目的使用必须遵守", "This record was written by a pre-upgrade instance and lacks audit info. Upgrade the instance to record server IP, callback IP, payment method and system version.": "该记录由旧版本实例写入,缺少审计信息,建议将实例升级至最新版本以便记录服务器 IP、回调 IP、支付方式与系统版本等审计字段。", "This site currently has {{count}} models enabled": "本站当前已启用模型,总计 {{count}} 个", + "this token group": "此令牌分组", + "this user group": "此用户分组", "This user has no bindings": "该用户无任何绑定", "This week": "本周", "This will append 2 template rules (Codex CLI and Claude CLI) to the existing rule list.": "这将在现有规则列表中追加 2 条模板规则(Codex CLI 和 Claude CLI)。", @@ -3361,12 +3575,18 @@ "Time:": "时间:", "Timed cache (1h)": "定时缓存(1 小时)", "Timeline": "时间线", + "times": "次", "Timing": "耗时", "Tip: The generated key is a JSON credential including access_token / refresh_token / account_id.": "提示:生成的密钥为包含 access_token / refresh_token / account_id 的 JSON 凭据。", + "to access this resource.": "访问此资源。", + "to confirm": "以确认", "To Lower": "转小写", "To Lowercase": "转小写", + "to override billing when a user in one group uses a token of another group.": "当一个分组中的用户使用另一个分组的令牌时,用于覆盖计费。", + "to the Models list so users can use them before the mapping sends traffic upstream.": "到模型列表,以便用户在映射将流量发送到上游之前可以使用它们。", "To Upper": "转大写", "To Uppercase": "转大写", + "to view this resource.": "查看此资源。", "Today": "今天", "Toggle columns": "切换列", "Toggle navigation menu": "切换导航菜单", @@ -3376,15 +3596,16 @@ "Token Breakdown": "Token 明细", "Token Endpoint": "令牌端点", "Token Endpoint (Optional)": "Token 端点(可选)", + "Token estimator": "Token 估算器", + "Token management": "令牌管理", "Token Management": "令牌管理", "Token Mgmt": "令牌管理", "Token Name": "令牌名称", - "Token estimator": "Token 估算器", - "Token management": "令牌管理", "Token obtained from your Gotify application": "从您的 Gotify 应用程序获取的 Token", "Token regenerated and copied to clipboard": "令牌已重新生成并复制到剪贴板", "Token unit": "Token 单位", "Token-based": "按量计费", + "tokens": "令牌", "Tokens": "令牌", "Tokens Only": "仅限 Token", "Tokens per minute": "每分钟 Token 数", @@ -3393,60 +3614,65 @@ "Tool identifier": "工具标识", "Tool price settings": "工具价格设置", "Tool prices": "工具价格", + "Top {{count}}": "前 {{count}}", "Top Models": "热门模型", - "Top Users": "热门用户", "Top up balance and view billing history.": "充值余额并查看账单历史。", - "Top {{count}}": "前 {{count}}", - "Top-Up Link": "充值链接", + "Top Users": "热门用户", "Top-up": "充值", - "Top-up Audit Info": "充值审计信息", "Top-up amount options": "充值金额选项", + "Top-up Audit Info": "充值审计信息", "Top-up group ratios": "充值分组比例", + "Top-Up Link": "充值链接", + "top-up ratio": "充值倍率", "Topup Amount": "充值金额", "Total": "总计", "Total Allocated": "总分配", - "Total Cost": "总费用", - "Total Count": "总数", - "Total Earned": "总收入", - "Total GPUs": "总 GPU", - "Total Log Size": "日志总大小", - "Total Quota": "总额度", - "Total Tokens": "总 Token 数", - "Total Usage": "总用量", "Total check-ins": "累计签到", "Total consumed": "总消耗", "Total consumed quota": "总消耗额度", "Total cost": "总成本", + "Total Cost": "总费用", + "Total Count": "总数", "Total earned": "累计获得", + "Total Earned": "总收入", + "Total GPUs": "总 GPU", "Total invitation revenue": "总邀请收入", + "Total Log Size": "日志总大小", + "Total Quota": "总额度", "Total requests allowed per period. 0 = unlimited.": "每周期允许的总请求数。0 = 无限制。", "Total requests made": "总请求数", + "Total Tokens": "总 Token 数", + "Total Usage": "总用量", "Total:": "总计:", + "TPM": "TPM", "Track per-request consumption to power usage analytics. Keeping this on increases database writes.": "跟踪每个请求的消耗,以支持使用情况分析。保持开启会增加数据库写入。", "Track usage, costs and performance with real-time analytics": "通过实时分析跟踪用量、成本和性能", "Tracks current account base limits and additional metered usage on Codex upstream.": "跟踪当前账号在 Codex 上游的基础限额与附加计费用量。", "Transfer": "转移", "Transfer Amount": "转移金额", - "Transfer Rewards": "转移奖励", "Transfer failed": "转账失败", + "Transfer Rewards": "转移奖励", "Transfer successful": "转账成功", "Transfer to Balance": "转移到余额", "Translate `-thinking` suffixes into Anthropic native thinking models while keeping pricing predictable.": "将 `-thinking` 后缀转换为 Anthropic 原生思维模型,同时保持价格可预测性。", "Transparent Billing": "透明计费", + "Trim leading/trailing whitespace": "去掉字符串头尾空白", "Trim Prefix": "裁剪前缀", "Trim Space": "去掉空白", "Trim Suffix": "裁剪后缀", - "Trim leading/trailing whitespace": "去掉字符串头尾空白", "Trusted": "受信任", "Try adjusting your search to locate a missing model.": "尝试调整您的搜索以找到缺失的模型。", + "TTL": "TTL", + "TTL (seconds, 0 = default)": "TTL(秒,0 表示默认)", + "TTL (seconds)": "TTL(秒)", "Tune selection priority, testing, status handling, and request overrides.": "调整选择优先级、测试、状态处理和请求覆盖。", "Turnstile is enabled but site key is empty.": "Turnstile 已启用但站点密钥为空。", - "Two-Factor Authentication": "两步验证", - "Two-Step Verification": "两步验证", "Two-factor Authentication": "双重身份验证", + "Two-Factor Authentication": "两步验证", "Two-factor authentication disabled": "两因素认证已禁用", "Two-factor authentication enabled successfully!": "两步验证已成功启用!", "Two-factor authentication reset": "两因素认证已重置", + "Two-Step Verification": "两步验证", "Type": "类型", "Type (common)": "类型(常用)", "Type *": "类型 *", @@ -3454,11 +3680,6 @@ "Type-Specific Settings": "特定类型设置", "Type:": "类型:", "UI granularity only — data is still aggregated hourly": "仅 UI 粒度 — 数据仍按小时汇总", - "URL": "URL", - "URL is required": "URL 为必填项", - "URL to your logo image (optional)": "您的徽标图片 URL(可选)", - "USD": "USD", - "USD Exchange Rate": "美元汇率", "Unable to estimate price for this deployment.": "无法为该部署估算价格。", "Unable to generate chat link. Please contact your administrator.": "无法生成聊天链接。请联系您的管理员。", "Unable to load groups": "无法加载分组", @@ -3473,8 +3694,8 @@ "Unexpected release payload": "意外的版本数据格式", "Unified API Gateway for": "统一 API 网关,服务于", "Unique identifier for this group.": "此组的唯一标识符。", - "Unit price (USD)": "单价 (USD)", "Unit price (local currency / USD)": "单价(本地货币 / USD)", + "Unit price (USD)": "单价 (USD)", "Unit price must be greater than 0": "单价必须大于 0", "Units per USD": "每 USD 单位数", "Unknown": "未知", @@ -3487,19 +3708,19 @@ "Untrusted upstream data:": "不受信任的上游数据:", "Unused": "未使用", "Update": "更新", - "Update API Key": "更新 API 密钥", "Update All Balances": "更新所有余额", + "Update API Key": "更新 API 密钥", "Update Balance": "更新余额", - "Update Channel": "更新渠道", - "Update Model": "更新模型", - "Update Provider": "更新提供商", - "Update Redemption Code": "更新兑换码", "Update balance for:": "更新余额:", + "Update Channel": "更新渠道", "Update channel configuration and click save when you're done.": "更新渠道配置,完成后点击保存。", "Update configuration": "更新配置", "Update failed": "更新失败", + "Update Model": "更新模型", "Update model configuration and click save when you're done.": "更新模型配置,完成后点击保存。", "Update plan info": "更新套餐信息", + "Update Provider": "更新提供商", + "Update Redemption Code": "更新兑换码", "Update succeeded": "更新成功", "Update the API key by providing necessary info.": "通过提供必要信息更新 New API 密钥。", "Update the configuration for this custom OAuth provider.": "更新此自定义OAuth提供商的配置。", @@ -3525,48 +3746,62 @@ "Upstream Model Detection Settings": "检测上游模型设置", "Upstream Model Update Check": "上游模型更新检查", "Upstream Model Updates": "上游模型更新", - "Upstream Response": "上游返回", - "Upstream Updates": "上游更新", "Upstream model updates applied: {{added}} added, {{removed}} removed, {{ignored}} ignored this time, {{totalIgnored}} total ignored models": "已处理上游模型更新:加入 {{added}} 个,删除 {{removed}} 个,本次忽略 {{ignored}} 个,当前已忽略模型 {{totalIgnored}} 个", "Upstream price sync": "上游价格同步", "Upstream prices fetched successfully": "已成功获取上游价格", "Upstream ratios fetched successfully": "上游比率获取成功", + "Upstream Response": "上游返回", + "upstream services integrated": "上游服务适配", + "Upstream Updates": "上游更新", + "uptime": "正常运行时间", "Uptime": "运行时间", "Uptime Kuma": "Uptime Kuma", - "Uptime Kuma URL": "Uptime Kuma URL", "Uptime Kuma groups saved successfully": "Uptime Kuma 组保存成功", + "Uptime Kuma URL": "Uptime Kuma URL", "Uptime since": "运行时间始于", + "URL": "URL", + "URL is required": "URL 为必填项", + "URL to your logo image (optional)": "您的徽标图片 URL(可选)", "Usage": "用量", - "Usage Logs": "使用日志", "Usage logs": "使用日志", + "Usage Logs": "使用日志", "Usage mode": "使用模式", "Usage-based": "基于使用量", - "Use Passkey to sign in without entering your password.": "使用通行密钥登录,无需输入密码。", + "USD": "USD", + "USD Exchange Rate": "美元汇率", "Use a compatible browser or device with biometric authentication or a security key to register a Passkey.": "请使用支持生物识别认证或安全密钥的兼容浏览器或设备来注册通行密钥。", "Use authenticator code": "使用验证器代码", "Use backup code": "使用备用代码", "Use disk cache when request body exceeds this size": "请求体超过此大小时使用磁盘缓存", "Use our unified OpenAI-compatible endpoint in your applications": "在应用中使用我们兼容 OpenAI 的统一接口", + "Use Passkey to sign in without entering your password.": "使用通行密钥登录,无需输入密码。", "Use secure connection when sending emails": "发送电子邮件时使用安全连接", "Use sidebar shortcut": "使用侧边栏快捷方式", "Use this token for API authentication": "使用此令牌进行 API 身份验证", "Use your Passkey": "使用您的通行密钥", + "used": "已使用", "Used": "已使用", "Used / Remaining": "已使用 / 剩余", - "Used Quota": "消耗额度", "Used for load balancing. Higher weight = more requests": "用于负载均衡。权重越高 = 请求越多", "Used in URLs and API routes": "用于URL和API路由", + "Used Quota": "消耗额度", "Used to authenticate with io.net deployment API": "用于 io.net 部署 API 鉴权", "Used to authenticate with the worker. Leave blank to keep the existing secret.": "用于与 Worker 进行身份验证。留空以保留现有密钥。", "Used:": "已使用:", "User": "用户", + "User {{id}}": "用户 {{id}}", "User Agreement": "用户协议", "User Analytics": "用户统计", "User Consumption Ranking": "用户消耗排行", "User Consumption Trend": "用户消耗趋势", + "User created successfully": "用户创建成功", + "User dashboard and quota controls.": "用户仪表板和配额控制。", "User Exclusive Ratio": "专属倍率", "User Group": "用户分组", + "User group name": "用户分组名称", "User Group: {{ratio}}x": "用户分组:{{ratio}}x", + "User groups that can access channels with this tag": "可以访问带有此标签的渠道的用户分组", + "User groups that can access this channel. ": "可以访问此渠道的用户组。", "User ID": "用户 ID", "User ID Field": "用户ID字段", "User ID:": "用户 ID:", @@ -3574,41 +3809,37 @@ "User Info Endpoint (Optional)": "用户信息端点(可选)", "User Information": "用户信息", "User Menu": "用户菜单", - "User Subscription Management": "用户订阅管理", - "User Verification": "用户验证", - "User created successfully": "用户创建成功", - "User dashboard and quota controls.": "用户仪表板和配额控制。", - "User group name": "用户分组名称", - "User groups that can access channels with this tag": "可以访问带有此标签的渠道的用户分组", - "User groups that can access this channel. ": "可以访问此渠道的用户组。", "User personal functions": "用户个人功能", + "User Subscription Management": "用户订阅管理", "User updated successfully": "用户更新成功", - "User {{id}}": "用户 {{id}}", + "User Verification": "用户验证", "User-Agent include (one per line)": "User-Agent include(每行一个)", "Username": "用户名", - "Username Field": "用户名字段", "Username confirmation does not match": "用户名确认不匹配", + "Username Field": "用户名字段", "Username or Email": "用户名或电子邮件", "Users": "用户", "Users call the model on the left. The platform forwards the request to the upstream model on the right.": "用户调用左侧的模型。平台将请求转发给右侧的上游模型。", "Users must wait for a successful drawing before upscales or variations.": "用户必须等待成功的绘图完成,才能进行放大或变体。", - "VIP users with premium access": "拥有高级访问权限的 VIP 用户", + "uses": "使用次数", "Validity": "有效期", "Validity Period": "有效期", "Value": "值", "Value (supports JSON or plain text)": "值(支持 JSON 或普通文本)", - "Value Regex": "Value 正则", "Value must be at least 0": "值必须至少为 0", + "Value Regex": "Value 正则", + "variable": "变量", + "variable) *": "变量) *", "Variables": "变量", "Vary": "变换", "Vary (Strong)": "强变换", "Vary (Subtle)": "弱变换", "Vendor": "供应商", - "Vendor Name *": "供应商名称 *", "Vendor deleted successfully": "供应商删除成功", + "Vendor Name *": "供应商名称 *", "Vendor:": "供应商:", - "Verification Code": "验证码", "Verification code": "验证码", + "Verification Code": "验证码", "Verification code must be 6 digits": "验证码必须是 6 位数字", "Verification code sent! Please check your email.": "验证码已发送!请检查您的电子邮件。", "Verification code updates every 30 seconds.": "验证码每 30 秒更新一次。", @@ -3617,18 +3848,17 @@ "Verification is not configured properly": "验证未正确配置", "Verification required to reveal the saved key.": "需要验证才能显示已保存的密钥。", "Verify": "验证", - "Verify Setup": "验证设置", "Verify and Sign In": "验证并登录", + "Verify Setup": "验证设置", "Verify your database connection": "验证数据库连接", "Version Overrides": "版本覆盖", "Vertex AI": "Vertex AI", - "Vertex AI Key Format": "Vertex AI 密钥格式", "Vertex AI does not support functionResponse.id. Enable this to remove the field automatically.": "Vertex AI 不支持 functionResponse.id 字段,开启后将自动移除该字段", + "Vertex AI Key Format": "Vertex AI 密钥格式", "Video": "视频", "Video Remix": "视频 Remix", "Vidu": "Vidu", "View": "查看", - "View Pricing": "查看定价", "View all currently available models": "查看当前可用的所有模型", "View and manage your API usage logs": "查看和管理您的 API 使用日志", "View and manage your drawing logs": "查看和管理您的绘图日志", @@ -3641,6 +3871,7 @@ "View mode": "视图模式", "View model call count analytics and charts": "查看模型调用次数统计和图表", "View model statistics and charts": "查看模型统计和图表", + "View Pricing": "查看定价", "View the complete details for this": "查看此条", "View the complete details for this log entry": "查看此日志条目的完整详情", "View the complete error message and details": "查看完整错误信息与详情", @@ -3649,18 +3880,20 @@ "View user consumption statistics and charts": "查看用户消耗统计和图表", "View your topup transaction records and payment history": "查看您的充值交易记录和付款历史", "Violation Code": "违规代码", + "Violation deduction amount": "违规扣费金额", "Violation Fee": "违规扣费", "Violation Marker": "违规标记", - "Violation deduction amount": "违规扣费金额", + "vip": "vip", + "VIP users with premium access": "拥有高级访问权限的 VIP 用户", "Visit Settings → General and adjust quota options...": "访问设置 → 通用并调整配额选项...", "Visitors must authenticate before accessing the pricing directory.": "访客必须先进行身份验证才能访问定价目录。", "Visual": "图形化", - "Visual Editor": "可视编辑器", - "Visual Mode": "可视模式", - "Visual Parameter Override": "可视化参数覆盖", "Visual edit": "可视化编辑", "Visual editor": "可视化编辑器", + "Visual Editor": "可视编辑器", "Visual indicator color for the API card": "API 卡的可视指示器颜色", + "Visual Mode": "可视模式", + "Visual Parameter Override": "可视化参数覆盖", "VolcEngine": "字节火山方舟、豆包通用", "Waffo Pancake Payment Gateway": "Waffo Pancake 支付网关", "Waffo Payment": "Waffo 支付", @@ -3672,9 +3905,11 @@ "Wallet": "钱包", "Wallet First": "优先钱包", "Wallet Management": "钱包管理", - "Wallet Only": "仅用钱包", "Wallet management and personal preferences.": "钱包管理和个人偏好设置。", + "Wallet Only": "仅用钱包", + "Warm": "暖色", "Warning": "警告", + "Warning Soft": "柔和警告", "Warning: Base URL should not end with /v1. New API will handle it automatically. This may cause request failures.": "警告:基础 URL 不应以 /v1 结尾。New API 将自动处理它。这可能会导致请求失败。", "Warning: Disabling 2FA will make your account less secure.": "警告:禁用双重身份验证将使您的账户安全性降低。", "Warning: This action is permanent and irreversible!": "警告:此操作是永久且不可逆的!", @@ -3682,22 +3917,22 @@ "We could not load the setup status.": "我们无法加载设置状态。", "We will prompt your device to confirm using biometrics or your hardware key.": "我们将提示您的设备使用生物识别或硬件密钥进行确认。", "We'll be back online shortly.": "我们将很快恢复在线。", - "WeChat": "微信", - "WeChat QR code will be displayed here": "微信二维码将显示在此处", - "WeChat login QR code": "微信登录二维码", - "WeChat sign in": "微信登录", "Web Search": "网页搜索", "Webhook Configuration:": "Webhook 配置:", - "Webhook Secret": "Webhook 密钥", - "Webhook URL": "Webhook 地址", - "Webhook URL:": "Webhook URL:", "Webhook public key (production)": "Webhook 公钥(生产)", "Webhook public key (production) is required": "Webhook 公钥(生产)为必填项", "Webhook public key (sandbox)": "Webhook 公钥(沙盒)", "Webhook public key (sandbox) is required": "Webhook 公钥(沙盒)为必填项", "Webhook secret": "Webhook 密钥", + "Webhook Secret": "Webhook 密钥", "Webhook signing secret (leave blank unless updating)": "Webhook 签名密钥(除非更新,否则留空)", + "Webhook URL": "Webhook 地址", + "Webhook URL:": "Webhook URL:", "Website is under maintenance!": "网站正在维护中!", + "WeChat": "微信", + "WeChat login QR code": "微信登录二维码", + "WeChat QR code will be displayed here": "微信二维码将显示在此处", + "WeChat sign in": "微信登录", "Week": "周", "Weekday": "星期", "Weekly": "每周", @@ -3709,9 +3944,9 @@ "Well-Known URL must start with http:// or https://": "知名 URL 必须以 http:// 或 https:// 开头", "What would you like to know?": "您想了解什么?", "When conditions match, the final price is multiplied by X. Multiple matches multiply together; values < 1 act as discounts.": "条件满足时,最终价格乘以 X;多条命中的倍率会相乘;小于 1 的值为折扣。", - "When enabled, Midjourney callbacks are accepted (reveals server IP).": "启用时,接受 Midjourney 回调 (会泄露服务器 IP)。", "When enabled, if channels in the current group fail, it will try channels in the next group in order.": "开启后,当前分组渠道失败时会按顺序尝试下一个分组的渠道。", "When enabled, large request bodies are temporarily stored on disk instead of memory, significantly reducing memory usage. SSD recommended.": "启用磁盘缓存后,大请求体将临时存储到磁盘而非内存,可显著降低内存占用。建议在 SSD 环境下使用。", + "When enabled, Midjourney callbacks are accepted (reveals server IP).": "启用时,接受 Midjourney 回调 (会泄露服务器 IP)。", "When enabled, newly created tokens start in the first auto group.": "启用后,新创建的令牌将从第一个自动分组开始。", "When enabled, prompts are scanned before reaching upstream models.": "启用后,提示将在到达上游模型之前被扫描。", "When enabled, the store field will be blocked": "开启后将阻止 store 字段透传", @@ -3721,19 +3956,24 @@ "When performance monitoring is enabled and system resource usage exceeds the set threshold, new Relay requests will be rejected.": "启用性能监控后,当系统资源使用率超过设定阈值时,将拒绝新的 Relay 请求。", "When running in containers or ephemeral environments, ensure the SQLite file is mapped to persistent storage to avoid data loss on restart.": "在容器或临时环境中运行时,请确保 SQLite 文件映射到持久存储,以避免重启时数据丢失。", "Whitelist": "白名单", - "Whitelist (Only allow listed IPs)": "白名单(仅允许列出的 IP)", "Whitelist (Only allow listed domains)": "白名单(仅允许列出的域)", + "Whitelist (Only allow listed IPs)": "白名单(仅允许列出的 IP)", + "whsec_xxx": "whsec_xxx", "Window:": "窗口:", + "with conflicts": "有冲突", "Without additional conditions, only the type above is used for pruning.": "未添加附加条件时,仅使用上方 type 进行清理。", "Worker Access Key": "Worker 访问密钥", "Worker Proxy": "Worker 代理", "Worker URL": "Worker URL", "Workspaces": "工作区", "Write custom CSS for the banner background. CSS is scoped to .top-banner.": "为横幅背景编写自定义 CSS。CSS 作用域限定在 .top-banner。", + "Write custom CSS for the banner. Use declarations directly, or use & for scoped selectors such as &::before and & .top-banner-icon.": "为横幅编写自定义 CSS。可直接写声明,也可用 & 编写作用域选择器,例如 &::before 和 & .top-banner-icon。", "Write value to the target field": "把值写入目标字段", + "x": "x", + "xAI": "xAI", "Xinference": "Xinference", "Xunfei": "讯飞", - "You Pay": "您支付", + "years": "年", "You are about to delete {{count}} API key(s).": "您即将删除 {{count}} 个 API 密钥。", "You are running the latest version ({{version}}).": "您正在运行最新版本 ({{version}})。", "You can close this tab once the binding completes or a success message appears in the original window.": "绑定完成后或原窗口出现成功消息后,您可以关闭此标签页。", @@ -3742,9 +3982,11 @@ "You don't have necessary permission": "您没有必要的权限", "You have unsaved changes": "您有未保存的更改", "You have unsaved changes. Are you sure you want to leave?": "您有未保存的更改。确定要离开吗?", + "You Pay": "您支付", "You save": "您节省", "You will be redirected to Telegram to complete the binding process.": "您将被重定向到 Telegram 以完成绑定过程。", "You'll be redirected automatically. You can return to the previous page if nothing happens after a few seconds.": "您将被自动重定向。如果几秒钟后无反应,您可以返回上一页。", + "your AI integration?": "你的 AI 集成了吗?", "Your Azure OpenAI endpoint URL": "您的 Azure OpenAI 端点 URL", "Your Bot Name": "您的机器人名称", "Your Cloudflare Account ID": "您的 Cloudflare 账户 ID", @@ -3752,228 +3994,14 @@ "Your Discord OAuth Client Secret": "您的 Discord OAuth 客户端密钥", "Your GitHub OAuth Client ID": "您的 GitHub OAuth 客户端 ID", "Your GitHub OAuth Client Secret": "您的 GitHub OAuth 客户端密钥", + "Your new backup codes are ready": "您的新备份代码已准备就绪", "Your Referral Link": "您的推荐链接", + "Your system access token for API authentication. Keep it secure and don't share it with others.": "您的系统访问令牌,用于 API 认证。请妥善保管,不要与他人分享。", "Your Telegram Bot Token": "您的 Telegram 机器人令牌", "Your Turnstile secret key": "您的 Turnstile 密钥", "Your Turnstile site key": "您的 Turnstile 站点密钥", - "Your new backup codes are ready": "您的新备份代码已准备就绪", - "Your system access token for API authentication. Keep it secure and don't share it with others.": "您的系统访问令牌,用于 API 认证。请妥善保管,不要与他人分享。", "Zhipu": "智谱", "Zhipu V4": "智谱 V4", - "Zoom": "缩放", - "[{\"ChatGPT\":\"https://chat.openai.com\"},{\"Lobe Chat\":\"https://chat-preview.lobehub.com/?settings={...}\"}]": "[{\"ChatGPT\":\"https://chat.openai.com\"},{\"Lobe Chat\":\"https://chat-preview.lobehub.com/?settings={...}\"}]", - "[{\"name\":\"支付宝\",\"type\":\"alipay\",\"color\":\"#1677FF\"}]": "[{\"name\":\"支付宝\",\"type\":\"alipay\",\"color\":\"#1677FF\"}]", - "_copy": "_复制", - "`, and `-nothinking` suffixes while routing to the correct Gemini variant.": "`, 和 `-nothinking` 后缀,同时路由到正确的 Gemini 变体。", - "active": "活跃", - "active users": "活跃用户", - "aggregates 50+ AI providers behind one unified API. Manage access, track costs, and scale effortlessly.": "聚合 50+ AI 提供商于统一 API 之后。轻松管理访问、追踪成本、弹性扩展。", - "and": "和", - "appended": "已追加", - "are also listed here. Remove them from Models to keep the `/v1/models` response user-friendly and hide vendor-specific names.": "也在此处列出。将它们从模型中移除,以保持 `/v1/models` 响应对用户友好并隐藏供应商特定的名称。", - "by": "由", - "channel(s)? This action cannot be undone.": "渠道?此操作无法撤销。", - "checkout.session.completed": "checkout.session.completed", - "checkout.session.expired": "checkout.session.expired", - "compatible API routes": "兼容 API 路由", - "days": "天", - "default": "默认", - "designed for scale": "为规模而设计", - "disabled": "已禁用", - "does not exist or might have been removed.": "不存在或可能已被移除。", - "e.g. 401, 403, 429, 500-599": "例如 401、403、429、500-599", - "e.g. 8 means 1 USD = 8 units": "例如,8 表示 1 美元 = 8 单位", - "e.g. Basic Plan": "例如:基础套餐", - "e.g. Clean tool parameters to avoid upstream validation errors": "例如:清理工具参数,避免上游校验错误", - "e.g. My GitLab": "例如:My GitLab", - "e.g. New API Console": "例如,New API 控制台", - "e.g. Suitable for light usage": "例如:适合轻度使用", - "e.g. This request does not meet access policy": "例如:该请求不满足准入策略", - "e.g. example.com": "例如,example.com", - "e.g. llama3.1:8b": "例如 llama3.1:8b", - "e.g. my-gitlab": "例如:my-gitlab", - "e.g. openid profile email": "例如:openid profile email", - "e.g. ¥ or HK$": "例如,¥ 或 HK$", - "e.g., #3b82f6,#8b5cf6": "例如,#3b82f6,#8b5cf6", - "e.g., #ff0000,#0000ff": "例如,#ff0000,#0000ff", - "e.g., #ffffff or white": "例如,#ffffff 或 white", - "e.g., 0.95": "例如,0.95", - "e.g., 100": "例如,100", - "e.g., 123456": "例如,123456", - "e.g., 2025-04-01-preview": "例如,2025-04-01-preview", - "e.g., 50": "例如,50", - "e.g., 500000": "例如,500000", - "e.g., 7342866812345": "例如,7342866812345", - "e.g., 8 means 8 local currency per USD": "例如,8 表示每美元兑换 8 单位本地货币", - "e.g., Alipay, WeChat": "例如,支付宝,微信", - "e.g., Basic Package": "例如,基本套餐", - "e.g., CN2 GIA": "例如,CN2 GIA", - "e.g., Core APIs, OpenAI, Claude": "例如,核心 API,OpenAI,Claude", - "e.g., OpenAI GPT-4 Production": "例如,OpenAI GPT-4 生产环境", - "e.g., Recommended for China Mainland Users": "例如,推荐给中国大陆用户", - "e.g., d6b5da8hk1awo8nap34ube6gh": "例如,d6b5da8hk1awo8nap34ube6gh", - "e.g., default, vip, premium": "例如,default, vip, premium", - "e.g., gpt-4, claude-3": "例如:gpt-4、claude-3", - "e.g., gpt-4.1-nano,regex:^claude-.*$,regex:^sora-.*$": "例如:gpt-4.1-nano,regex:^claude-.*$,regex:^sora-.*$", - "e.g., https://api.example.com (path before /suno)": "例如,https://api.example.com (在 /suno 之前的路径)", - "e.g., https://api.openai.com/v1/chat/completions": "例如,https://api.openai.com/v1/chat/completions", - "e.g., https://ark.cn-beijing.volces.com": "例如,https://ark.cn-beijing.volces.com", - "e.g., https://docs-test-001.openai.azure.com": "例如,https://docs-test-001.openai.azure.com", - "e.g., https://fastgpt.run/api/openapi": "例如,https://fastgpt.run/api/openapi", - "e.g., preview": "例如,preview", - "e.g., prod_xxx": "例如,prod_xxx", - "e.g., us-central1 or JSON format for model-specific regions": "例如,us-central1 或模型特定区域的 JSON 格式", - "e.g., v2.1": "例如,v2.1", - "edit_this": "edit_this", - "example.com blocked-site.com": "example.com blocked-site.com", - "example.com company.com": "example.com company.com", - "expired": "已过期", - "field": "字段", - "footer.columns.about.links.aboutProject": "关于项目", - "footer.columns.about.links.contact": "联系我们", - "footer.columns.about.links.features": "功能", - "footer.columns.about.title": "关于我们", - "footer.columns.docs.links.apiDocs": "API 文档", - "footer.columns.docs.links.installation": "安装指南", - "footer.columns.docs.links.quickStart": "快速入门", - "footer.columns.docs.title": "文档", - "footer.columns.related.links.midjourney": "Midjourney-Proxy", - "footer.columns.related.links.neko": "neko-api-key-tool", - "footer.columns.related.links.oneApi": "One API", - "footer.columns.related.title": "相关项目", - "footer.defaultCopyright": "版权所有。", - "footer.new\u0061pi.projectAttributionSuffix": "版权所有,由项目贡献者设计与开发。", - "gpt-3.5-turbo": "gpt-3.5-turbo", - "gpt-3.5-turbo-0125": "gpt-3.5-turbo-0125", - "gpt-4": "gpt-4", - "gpt-4, claude-3-opus, etc.": "gpt-4, claude-3-opus, 等", - "group ratio": "分组倍率", - "h": "小时", - "hours": "小时", - "https://api.day.app/yourkey/{{title}}/{{content}}": "https://api.day.app/yourkey/{{title}}/{{content}}", - "https://api.example.com": "https://api.example.com", - "https://ark.ap-southeast.bytepluses.com": "https://ark.ap-southeast.bytepluses.com", - "https://ark.cn-beijing.volces.com": "https://ark.cn-beijing.volces.com", - "https://cloud.siliconflow.cn/i/hij0YNTZ": "https://cloud.siliconflow.cn/i/hij0YNTZ", - "https://docs.example.com": "https://docs.example.com", - "https://example.com": "https://example.com", - "https://example.com/logo.png": "https://example.com/logo.png", - "https://example.com/qr-code.png": "https://example.com/qr-code.png", - "https://example.com/topup": "https://example.com/topup", - "https://example.com/webhook": "https://example.com/webhook", - "https://gateway.example.com": "https://gateway.example.com", - "https://github.com/QuantumNous/new-api": "https://github.com/QuantumNous/new-api", - "https://gotify.example.com": "https://gotify.example.com", - "https://pay.example.com": "https://pay.example.com", - "https://provider.com/.well-known/openid-configuration": "https://provider.com/.well-known/openid-configuration", - "https://status.example.com": "https://status.example.com", - "https://wechat-server.example.com": "https://wechat-server.example.com", - "https://worker.example.workers.dev": "https://worker.example.workers.dev", - "https://your-server.example.com": "https://your-server.example.com", - "https://yourdomain.com": "https://yourdomain.com", - "io.net API Key": "io.net API 密钥", - "io.net Deployments": "io.net 部署", - "is an open-source AI API gateway for self-hosted deployments. Connect multiple upstream services, manage models, keys, quotas, logs, and routing policies in one place.": "是一个用于自托管部署的开源 AI API 网关。接入多家上游服务,并集中管理模型、密钥、额度、日志与路由策略。", - "is less than the configured maximum cache size": "小于配置的最大缓存大小", - "is the default price; ": "为默认价格;", - "log": "日志的完整详情", - "m": "分钟", - "maxRequests ≥ 0, maxSuccess ≥ 1, both ≤ 2,147,483,647": "maxRequests ≥ 0, maxSuccess ≥ 1,两者均 ≤ 2,147,483,647", - "minutes": "分钟", - "model": "模型", - "model billing support": "模型计费支持", - "model(s) selected out of": "已选模型(共)", - "model(s)? This action cannot be undone.": "模型?此操作无法撤销。", - "models": "个模型", - "months": "个月", - "more mapping": "更多映射", - "ms": "毫秒", - "my-status": "我的状态", - "name@example.com": "name@example.com", - "noreply@example.com": "noreply@example.com", - "of": "条,共", - "of 3:": "共 3 个:", - "off": "关闭", - "one keyword per line": "每行一个关键词", - "opens in an external client. Trigger it from the sidebar or API key actions to launch the configured application.": "在外部客户端中打开。从侧边栏或 API 密钥操作中触发,以启动配置的应用。", - "org-...": "org-...", - "override": "覆盖", - "overrides for matching model prefix.": "为匹配模型前缀的覆盖价。", - "parameter.": "参数。", - "per": "每", - "per request": "每次请求", - "price_xxx": "price_xxx", - "redemption code": "兑换码", - "redemption codes.": "兑换码。", - "replaced": "已替换", - "request": "请求", - "requests served": "服务请求数", - "rules": "规则", - "s": "秒", - "scheduling controls": "调度控制能力", - "seconds": "秒", - "selected": "已选择", - "selected channel(s). Leave empty to remove tag.": "选定的渠道。留空以移除标签。", - "showing •": "显示 •", - "sk_xxx or rk_xxx": "sk_xxx 或 rk_xxx", - "smtp.example.com": "smtp.example.com", - "socks5://user:pass@host:port": "socks5://user:pass@host:port", - "sources": "来源", - "stream": "流", - "this token group": "此令牌分组", - "this user group": "此用户分组", - "times": "次", - "to access this resource.": "访问此资源。", - "to confirm": "以确认", - "to override billing when a user in one group uses a token of another group.": "当一个分组中的用户使用另一个分组的令牌时,用于覆盖计费。", - "to the Models list so users can use them before the mapping sends traffic upstream.": "到模型列表,以便用户在映射将流量发送到上游之前可以使用它们。", - "to view this resource.": "查看此资源。", - "tokens": "令牌", - "top-up ratio": "充值倍率", - "upstream services integrated": "上游服务适配", - "uptime": "正常运行时间", - "used": "已使用", - "uses": "使用次数", - "variable": "变量", - "variable) *": "变量) *", - "vip": "vip", - "whsec_xxx": "whsec_xxx", - "with conflicts": "有冲突", - "x": "x", - "xAI": "xAI", - "years": "年", - "your AI integration?": "你的 AI 集成了吗?", - "{\"original-model\": \"replacement-model\"}": "{\"original-model\": \"replacement-model\"}", - "{{category}} Models": "{{category}} 模型", - "{{count}} IP(s)": "{{count}} 个 IP", - "{{count}} channel(s) deleted": "已删除 {{count}} 个渠道", - "{{count}} channel(s) disabled": "已禁用 {{count}} 个渠道", - "{{count}} channel(s) enabled": "已启用 {{count}} 个渠道", - "{{count}} channel(s) failed to disable": "{{count}} 个渠道禁用失败", - "{{count}} channel(s) failed to enable": "{{count}} 个渠道启用失败", - "{{count}} days ago": "{{count}} 天前", - "{{count}} days remaining": "剩余 {{count}} 天", - "{{count}} disabled channel(s) deleted": "已删除 {{count}} 个已禁用的渠道", - "{{count}} hours ago": "{{count}} 小时前", - "{{count}} log entries removed.": "已删除 {{count}} 条日志。", - "{{count}} minutes ago": "{{count}} 分钟前", - "{{count}} model(s)": "{{count}} 个模型", - "{{count}} months ago": "{{count}} 个月前", - "{{count}} override": "{{count}} 个覆盖", - "{{count}} tiers": "{{count}} 档", - "{{count}} weeks ago": "{{count}} 周前", - "{{field}} updated to {{value}}": "{{field}} 已更新为 {{value}}", - "{{field}} updated to {{value}} for tag: {{tag}}": "标签「{{tag}}」的 {{field}} 已更新为 {{value}}", - "{{n}} model(s) selected": "已选 {{n}} 个模型", - "{{value}}ms": "{{value}} 毫秒", - "{{value}}s": "{{value}} 秒", - "| Based on": "| 基于", - "© 2025 Your Company. All rights reserved.": "© 2025 您的公司。保留所有权利。", - "← Left": "← 向左", - "↑ Up": "↑ 向上", - "→ Right": "→ 向右", - "↓ Down": "↓ 向下", - "↘ Diagonal": "↘ 对角线", - "⊙ Radial": "⊙ 径向" + "Zoom": "缩放" } } diff --git a/web/default/src/lib/api.ts b/web/default/src/lib/api.ts index 19bdfa06764..c2aed419eb2 100644 --- a/web/default/src/lib/api.ts +++ b/web/default/src/lib/api.ts @@ -206,6 +206,8 @@ export async function getBanner(): Promise<{ message?: string data?: { content: string + type: string + dismissible: string mode: string preset: string colors: string diff --git a/web/default/src/styles/index.css b/web/default/src/styles/index.css index 5a806506310..85b17e14c98 100644 --- a/web/default/src/styles/index.css +++ b/web/default/src/styles/index.css @@ -23,9 +23,12 @@ } html { @apply overflow-x-hidden font-sans; + overflow-y: scroll; + scrollbar-gutter: stable; } body { @apply bg-background text-foreground has-[div[data-variant='inset']]:bg-sidebar min-h-svh w-full font-sans; + scrollbar-gutter: stable; } /* Override Radix scroll locking for sticky headers */ @@ -435,6 +438,297 @@ animation: marquee 20s linear infinite; } +.authenticated-main-frame { + display: flex; + min-height: 0; + height: 100%; + width: 100%; + flex: 1 1 auto; + flex-direction: column; + overflow: hidden; + border-radius: inherit; + background: hsl(var(--background)); +} + +.authenticated-main-content { + display: flex; + min-height: 0; + flex: 1 1 auto; + flex-direction: column; + overflow: hidden; +} + +.top-banner { + --banner-motion-duration: 8s; + min-height: 46px; + margin: 10px 12px 8px; + padding: 9px 12px; + gap: 10px; + overflow: hidden; + border-radius: 12px; + border: 1px solid transparent; + box-shadow: 0 14px 30px rgb(15 23 42 / 0.12); + contain: layout paint; + transform: translateZ(0); +} + +.faded-bottom, +.overflow-y-auto { + scrollbar-gutter: stable; +} + +.top-banner::before { + content: ''; + position: absolute; + inset: 0; + pointer-events: none; +} + +.top-banner-icon { + position: relative; + z-index: 1; + display: grid; + width: 24px; + height: 24px; + flex: 0 0 auto; + place-items: center; + border-radius: 8px; + background: rgb(255 255 255 / 0.92); + color: #172033; +} + +.top-banner-copy { + position: relative; + z-index: 1; + min-width: 0; +} + +.top-banner-message { + display: inline-block; + max-width: 100%; + overflow: hidden; + text-overflow: ellipsis; + vertical-align: middle; +} + +.top-banner-measure { + position: absolute; + inset: auto; + width: max-content; + height: 0; + overflow: hidden; + white-space: nowrap; + visibility: hidden; + pointer-events: none; +} + +.top-banner-message-scroll { + max-width: none; + padding-right: 32px; +} + +.top-banner-copy strong { + margin-right: 8px; + font-weight: 700; +} + +.top-banner-separator { + margin-right: 8px; + opacity: 0.5; +} + +.top-banner button { + position: relative; + z-index: 1; + display: grid; + width: 24px; + height: 24px; + place-items: center; + border-radius: 8px; + background: rgb(255 255 255 / 0.14); + color: inherit; + transition: + background-color 150ms ease, + opacity 150ms ease; +} + +.top-banner button:hover { + background: rgb(255 255 255 / 0.24); +} + +.banner-speed-slow { + --banner-motion-duration: 14s; +} + +.banner-speed-medium { + --banner-motion-duration: 8s; +} + +.banner-speed-fast { + --banner-motion-duration: 4s; +} + +.top-banner-notice, +.banner-preset-notice-glass { + color: #f8fafc; + background: + linear-gradient(135deg, rgb(15 23 42 / 0.88), rgb(30 64 175 / 0.78)), + #0f172a; + border-color: rgb(255 255 255 / 0.22); +} + +.top-banner-notice::before, +.banner-preset-notice-glass::before { + background: linear-gradient(120deg, transparent, rgb(255 255 255 / 0.12), transparent); + transform: translateX(-42%); +} + +.banner-preset-notice-glass { + color: #0f172a; + background: + linear-gradient(135deg, rgb(239 246 255 / 0.94), rgb(224 242 254 / 0.88)), + #eff6ff; + border-color: rgb(125 211 252 / 0.46); + box-shadow: 0 12px 28px rgb(14 165 233 / 0.14); +} + +.banner-preset-notice-glass::before { + background: linear-gradient(120deg, transparent, rgb(14 165 233 / 0.14), transparent); +} + +.banner-preset-notice-glass .top-banner-icon { + color: #1d4ed8; + background: rgb(255 255 255 / 0.9); +} + +.banner-preset-notice-glass button { + background: rgb(37 99 235 / 0.08); +} + +.banner-preset-notice-glass button:hover { + background: rgb(37 99 235 / 0.14); +} + +.top-banner-maintenance, +.banner-preset-maintenance-stripe { + color: #3d2d05; + background: + repeating-linear-gradient( + -45deg, + rgb(245 158 11 / 0.15) 0, + rgb(245 158 11 / 0.15) 8px, + rgb(255 255 255 / 0) 8px, + rgb(255 255 255 / 0) 16px + ), + #fff9eb; + border-color: rgb(245 158 11 / 0.24); + box-shadow: 0 10px 22px rgb(146 64 14 / 0.10); +} + +.top-banner-maintenance .top-banner-icon, +.banner-preset-maintenance-stripe .top-banner-icon { + color: #ffffff; + background: #b45309; +} + +.top-banner-maintenance button, +.banner-preset-maintenance-stripe button { + background: rgb(146 64 14 / 0.10); +} + +.top-banner-important, +.banner-preset-important-alert { + color: #fff7f7; + background: + linear-gradient(135deg, rgb(127 29 29 / 0.94), rgb(190 18 60 / 0.82)), + #7f1d1d; + border-color: rgb(254 202 202 / 0.28); +} + +.top-banner-important .top-banner-icon, +.banner-preset-important-alert .top-banner-icon { + color: #7f1d1d; +} + +.top-banner-warning, +.banner-preset-warning-soft { + color: #2f2105; + background: linear-gradient(135deg, #fff7d6, #ffedd5); + border-color: rgb(245 158 11 / 0.26); + box-shadow: 0 10px 24px rgb(180 83 9 / 0.12); +} + +.top-banner-warning .top-banner-icon, +.banner-preset-warning-soft .top-banner-icon { + color: #ffffff; + background: #d97706; +} + +.top-banner-warning button, +.banner-preset-warning-soft button { + background: rgb(146 64 14 / 0.10); +} + +.top-banner-outage, +.banner-preset-incident-critical { + color: #fff7f7; + background: + linear-gradient(135deg, rgb(69 10 10 / 0.96), rgb(185 28 28 / 0.88)), + #450a0a; + border-color: rgb(254 202 202 / 0.25); +} + +.top-banner-outage .top-banner-icon, +.banner-preset-incident-critical .top-banner-icon { + color: #991b1b; +} + +.top-banner-success, +.banner-preset-success-soft { + color: #062f24; + background: linear-gradient(135deg, #ecfdf5, #dff7ed); + border-color: rgb(16 185 129 / 0.24); + box-shadow: 0 10px 24px rgb(6 95 70 / 0.10); +} + +.top-banner-success .top-banner-icon, +.banner-preset-success-soft .top-banner-icon { + color: #ffffff; + background: #047857; +} + +.top-banner-success button, +.banner-preset-success-soft button { + background: rgb(6 95 70 / 0.10); +} + +.banner-preset-notice-glass::before { + animation: banner-sweep var(--banner-motion-duration) ease-in-out infinite; +} + +.banner-preset-maintenance-stripe { + background-size: 48px 48px, 100% 100%; + animation: banner-stripe-drift calc(var(--banner-motion-duration) * 1.4) linear infinite; +} + +.banner-preset-important-alert { + animation: banner-important-glow var(--banner-motion-duration) ease-in-out infinite; +} + +.banner-preset-warning-soft::before { + background: radial-gradient(circle at 12% 50%, rgb(245 158 11 / 0.18), transparent 34%); + animation: banner-soft-breathe var(--banner-motion-duration) ease-in-out infinite; +} + +.banner-preset-incident-critical { + animation: banner-critical-pulse var(--banner-motion-duration) ease-in-out infinite; +} + +.banner-preset-success-soft::before { + background: linear-gradient(120deg, transparent, rgb(16 185 129 / 0.18), transparent); + animation: banner-sweep calc(var(--banner-motion-duration) * 1.2) ease-in-out infinite; +} + @keyframes banner-flow { 0% { background-position: 0% 50%; @@ -474,9 +768,82 @@ } } +@keyframes banner-sweep { + 0% { + transform: translateX(-82%); + } + 55%, 100% { + transform: translateX(82%); + } +} + +@keyframes banner-stripe-drift { + 0% { + background-position: 0 0, 0 0; + } + 100% { + background-position: 48px 0, 0 0; + } +} + +@keyframes banner-important-glow { + 0%, 100% { + box-shadow: 0 12px 28px rgb(127 29 29 / 0.16); + } + 50% { + box-shadow: 0 14px 34px rgb(190 18 60 / 0.26); + } +} + +@keyframes banner-soft-breathe { + 0%, 100% { + opacity: 0.45; + } + 50% { + opacity: 1; + } +} + +@keyframes banner-critical-pulse { + 0%, 100% { + box-shadow: 0 12px 28px rgb(69 10 10 / 0.18); + } + 50% { + box-shadow: 0 14px 36px rgb(185 28 28 / 0.32); + } +} + +@keyframes banner-aurora { + 0%, 100% { + background-position: 0% 50%, 100% 50%, 50% 100%; + } + 50% { + background-position: 100% 50%, 0% 50%, 50% 0%; + } +} + +@keyframes banner-spotlight { + 0% { + background-position: -35% 50%, 0 0; + } + 100% { + background-position: 135% 50%, 0 0; + } +} + +@keyframes banner-scanline { + 0% { + background-position: 0 0, 0 0; + } + 100% { + background-position: 0 36px, 0 0; + } +} + .banner-preset-flow { + background: linear-gradient(270deg, var(--banner-color-1, #0f172a), var(--banner-color-2, #2563eb), var(--banner-color-3, #0891b2), var(--banner-color-4, #0f766e)); background-size: 400% 400%; - animation: banner-flow 8s ease infinite; + animation: banner-flow var(--banner-motion-duration) ease infinite; } .banner-preset-flow.banner-speed-slow { @@ -488,7 +855,8 @@ } .banner-preset-pulse { - animation: banner-pulse 2s ease-in-out infinite; + background: linear-gradient(135deg, var(--banner-color-1, #0f172a), var(--banner-color-2, #2563eb)); + animation: banner-pulse calc(var(--banner-motion-duration) / 4) ease-in-out infinite; } .banner-preset-pulse.banner-speed-slow { @@ -502,6 +870,7 @@ .banner-preset-shimmer { position: relative; overflow: hidden; + background: linear-gradient(135deg, var(--banner-color-1, #0f172a), var(--banner-color-2, #2563eb)); } .banner-preset-shimmer::after { @@ -524,6 +893,7 @@ } .banner-preset-rainbow { + background: linear-gradient(90deg, var(--banner-color-1, #ef4444), var(--banner-color-2, #f59e0b), var(--banner-color-3, #22c55e), var(--banner-color-4, #3b82f6)); animation: banner-rainbow 8s linear infinite; } @@ -535,10 +905,67 @@ animation-duration: 4s; } +.banner-preset-aurora { + background: + radial-gradient(circle at 20% 50%, color-mix(in srgb, var(--banner-color-1, #22d3ee) 82%, transparent), transparent 34%), + radial-gradient(circle at 80% 50%, color-mix(in srgb, var(--banner-color-2, #a855f7) 76%, transparent), transparent 36%), + linear-gradient(135deg, var(--banner-color-3, #0f172a), var(--banner-color-4, #2563eb)); + background-size: 180% 180%, 180% 180%, 100% 100%; + animation: banner-aurora calc(var(--banner-motion-duration) * 1.35) ease-in-out infinite; +} + +.banner-preset-aurora.banner-speed-slow { + animation-duration: 18s; +} + +.banner-preset-aurora.banner-speed-fast { + animation-duration: 5s; +} + +.banner-preset-spotlight { + background: + radial-gradient(circle at center, rgb(255 255 255 / 0.28), transparent 24%), + linear-gradient(135deg, var(--banner-color-1, #111827), var(--banner-color-2, #2563eb)); + background-size: 42% 180%, 100% 100%; + background-repeat: no-repeat; + animation: banner-spotlight var(--banner-motion-duration) ease-in-out infinite; +} + +.banner-preset-spotlight.banner-speed-slow { + animation-duration: 14s; +} + +.banner-preset-spotlight.banner-speed-fast { + animation-duration: 4s; +} + +.banner-preset-scanline { + background: + repeating-linear-gradient( + 0deg, + rgb(255 255 255 / 0.13) 0, + rgb(255 255 255 / 0.13) 1px, + transparent 1px, + transparent 9px + ), + linear-gradient(135deg, var(--banner-color-1, #020617), var(--banner-color-2, #0f766e)); + animation: banner-scanline calc(var(--banner-motion-duration) / 1.5) linear infinite; +} + +.banner-preset-scanline.banner-speed-slow { + animation-duration: 12s; +} + +.banner-preset-scanline.banner-speed-fast { + animation-duration: 3s; +} + .banner-preset-solid { + background: var(--banner-color-1, #2563eb); } .banner-preset-gradient { + background: linear-gradient(to right, var(--banner-color-1, #0f172a), var(--banner-color-2, #2563eb)); } @media (prefers-reduced-motion: reduce) {