fix(ai): clarify benchmark image pull and model directory hints (#14319)

* fix(ai): clarify benchmark image pull and model directory hints

* feat(ai): update model and tokenizer directory guidance
This commit is contained in:
ssongliu authored and GitHub committed 2026-11-06 18:02:26 +08:00
1 parent 8a68d30dcb
commit d7783e72cb
25 files changed
+210 -174

No files matched your search

+2
View File
@@ -818,3 +818,5 @@ ContainerImageCheckFailures: "{{ .count }} container checks failed; see the task
ErrImageCheckProxyRequired: "To check for image updates in the current runtime environment, please configure a proxy server first."
ErrPHPExtensionsConflict: "A PHP extension template with this name exists with different content"
ErrModelTokenizerDirOverlap: "The model and tokenizer directories must be different, and neither can contain the other"
+2
View File
@@ -818,3 +818,5 @@ ContainerImageCheckFailures: "Falló la comprobación de {{ .count }} contenedor
ErrImageCheckProxyRequired: "Para comprobar actualizaciones de imágenes en el entorno actual, configura primero un servidor proxy."
ErrPHPExtensionsConflict: "Ya existe una plantilla de extensiones PHP con este nombre y contenido diferente; no se ha sobrescrito"
ErrModelTokenizerDirOverlap: "Los directorios de modelos y tokenizadores deben ser distintos y ninguno puede contener al otro"
+2
View File
@@ -819,3 +819,5 @@ ContainerImageCheckFailures: "بررسی {{ .count }} کانتینر ناموف
ErrImageCheckProxyRequired: "برای بررسی به‌روزرسانی تصاویر در محیط فعلی، ابتدا یک سرور پروکسی پیکربندی کنید."
ErrPHPExtensionsConflict: "قالب افزونه PHP با این نام و محتوای متفاوت از قبل وجود دارد؛ بازنویسی نشد"
ErrModelTokenizerDirOverlap: "پوشه‌های مدل و توکن‌ساز باید متفاوت باشند و هیچ‌کدام نباید درون دیگری قرار گیرد"
+2
View File
@@ -818,3 +818,5 @@ ContainerImageCheckFailures: "{{ .count }} コンテナの確認に失敗しま
ErrImageCheckProxyRequired: "現在の実行環境でイメージの更新を確認するには、先にプロキシサーバーを設定してください。"
ErrPHPExtensionsConflict: "同じ名前で内容が異なる PHP 拡張機能テンプレートが既に存在するため、上書きしませんでした"
ErrModelTokenizerDirOverlap: "モデルとトークナイザーのディレクトリは別々にし、一方が他方を含まないようにしてください"
+2
View File
@@ -818,3 +818,5 @@ ContainerImageCheckFailures: "컨테이너 {{ .count }}개 확인에 실패했
ErrImageCheckProxyRequired: "현재 실행 환경에서 이미지 업데이트를 확인하려면 먼저 프록시 서버를 설정하세요."
ErrPHPExtensionsConflict: "같은 이름에 내용이 다른 PHP 확장 템플릿이 이미 있어 덮어쓰지 않았습니다"
ErrModelTokenizerDirOverlap: "모델 디렉터리와 토크나이저 디렉터리는 서로 달라야 하며 서로 포함할 수 없습니다"
+2
View File
@@ -809,3 +809,5 @@ ContainerImageCheckFailures: "ກວດສອບ {{ .count }} ຄອນເທນ
ErrImageCheckProxyRequired: "ເພື່ອກວດສອບການອັບເດດອິມເມຈໃນສະພາບແວດລ້ອມປັດຈຸບັນ ກະລຸນາຕັ້ງຄ່າພຣັອກຊີເຊີບເວີກ່ອນ."
ErrPHPExtensionsConflict: "ມີແມ່ແບບສ່ວນຂະຫຍາຍ PHP ຊື່ນີ້ຢູ່ແລ້ວແຕ່ເນື້ອຫາຕ່າງກັນ; ບໍ່ໄດ້ຂຽນທັບ"
ErrModelTokenizerDirOverlap: "ໂຟນເດີໂມເດວ ແລະ tokenizer ຕ້ອງແຕກຕ່າງກັນ ແລະ ບໍ່ສາມາດຢູ່ພາຍໃນກັນໄດ້"
+2
View File
@@ -818,3 +818,5 @@ ContainerImageCheckFailures: "Semakan {{ .count }} kontena gagal; lihat log tuga
ErrImageCheckProxyRequired: "Untuk menyemak kemas kini imej dalam persekitaran semasa, sila konfigurasikan pelayan proksi terlebih dahulu."
ErrPHPExtensionsConflict: "Templat sambungan PHP dengan nama ini sudah wujud tetapi kandungannya berbeza; tidak ditulis ganti"
ErrModelTokenizerDirOverlap: "Direktori model dan tokenizer mestilah berbeza dan tidak boleh mengandungi satu sama lain"
+2
View File
@@ -818,3 +818,5 @@ ContainerImageCheckFailures: "Falha na verificação de {{ .count }} contêinere
ErrImageCheckProxyRequired: "Para verificar atualizações de imagens no ambiente atual, configure primeiro um servidor proxy."
ErrPHPExtensionsConflict: "Já existe um modelo de extensões PHP com este nome e conteúdo diferente; ele não foi sobrescrito"
ErrModelTokenizerDirOverlap: "Os diretórios de modelos e tokenizadores devem ser diferentes e nenhum pode conter o outro"
+2
View File
@@ -818,3 +818,5 @@ ContainerImageCheckFailures: "Не удалось проверить конте
ErrImageCheckProxyRequired: "Для проверки обновлений образов в текущей среде сначала настройте прокси-сервер."
ErrPHPExtensionsConflict: "Шаблон расширений PHP с таким именем уже существует и имеет другое содержимое; перезапись не выполнена"
ErrModelTokenizerDirOverlap: "Каталоги моделей и токенизаторов должны различаться и не могут быть вложены друг в друга"
+2
View File
@@ -818,3 +818,5 @@ ContainerImageCheckFailures: "{{ .count }} konteyner denetlenemedi; görev günl
ErrImageCheckProxyRequired: "Geçerli çalışma ortamında imaj güncellemelerini kontrol etmek için önce bir proxy sunucusu yapılandırın."
ErrPHPExtensionsConflict: "Bu ada sahip ancak içeriği farklı bir PHP uzantı şablonu zaten mevcut; üzerine yazılmadı"
ErrModelTokenizerDirOverlap: "Model ve tokenizer dizinleri farklı olmalı ve biri diğerini içermemelidir"
+2
View File
@@ -818,3 +818,5 @@ ContainerImageCheckFailures: "{{ .count }} 個容器檢查失敗,請查看任
ErrImageCheckProxyRequired: "目前運行環境下,如需檢查映像是否更新,請先設定代理伺服器"
ErrPHPExtensionsConflict: "同名 PHP 擴充模版已存在且內容不同,未覆蓋"
ErrModelTokenizerDirOverlap: "模型目錄和分詞器目錄不能相同或互相包含"
+2
View File
@@ -818,3 +818,5 @@ ContainerImageCheckFailures: "{{ .count }} 个容器检查失败,请查看任
ErrImageCheckProxyRequired: "当前运行环境下,如需检查镜像是否更新,请优先配置代理服务器"
ErrPHPExtensionsConflict: "同名 PHP 扩展模版已存在且内容不同,未覆盖"
ErrModelTokenizerDirOverlap: "模型目录和分词器目录不能相同或互相包含"
+16 -15
View File
@@ -1062,13 +1062,12 @@ const message = {
ollamaNameHelper:
'Enter the full model name from the Ollama library. If no tag is specified, latest is used.',
downloadHelper:
'Search and download models from ModelScope or Hugging Face, or upload local models following the {requirements}.',
'Download models or tokenizers from ModelScope or Hugging Face, or add local files using the {requirements}.',
localModelSizeHelper:
'This is the current directory size and does not confirm that all files have finished uploading.',
localModelLayoutTitle: 'Directory requirements',
localModelLayoutPath: 'Place the complete model in {modelDir} using the organization/model-name structure.',
localModelLayoutConfig:
'The model root must contain config.json or params.json; otherwise, it will not appear in the list.',
localModelLayoutTitle: 'Examples',
localLayoutDirect: 'Direct placement',
localLayoutGrouped: 'Group by organization (optional)',
serviceHelper:
'Connect model services from public clouds, local inference engines, and AI gateways for use by built-in 1Panel agents and external agents such as WorkBuddy.',
gpuType: 'GPU Type',
@@ -1108,7 +1107,11 @@ const message = {
addInstance: 'Add instance',
modelScopeEndpointHelper: 'Used to search and download ModelScope models. Defaults to the official URL.',
modelTokenHelper: 'Optional. Use a token with access permissions for private or restricted models.',
modelDirHelper: 'Directory for model downloads and the local model list.',
tokenizerDir: 'Tokenizer directory',
tokenizerDirHelper:
'Directory for tokenizer downloads and the local tokenizer list. Changing it does not move existing files.',
modelDirHelper:
'Directory for model downloads and the local model list. Changing it does not move existing files.',
featuredModelsHelper:
'Browse models curated by 1Panel, review specifications, use cases, and download sources, and choose a model to download.',
featuredModelsSyncHelper:
@@ -2185,6 +2188,8 @@ const message = {
'Only successful runs without request anomalies enter the median and min/max summaries. P99 is the median of per-run P99 values. Cache and external traffic are uncontrolled.',
},
benchmarkSettings: {
imagePullHelp:
'The {image} image is large and may take a while to pull, depending on your network speed. You can configure a registry mirror to speed up the pull. You can close the task dialog; the pull will continue in the background. View progress in the task center.',
settingsHelp: 'Prepare the Benchmark image and a test scheme. You can create a benchmark once both are ready.',
imageAvailable: 'Benchmark image is ready ({image})',
imageUnavailable: 'Benchmark image was not found ({image})',
@@ -2201,23 +2206,19 @@ const message = {
mainNodeHelp: 'Benchmarks run on the main node. Prepare the image and tokenizer on that node.',
goImages: 'Go to image management',
goModels: 'Go to model downloads',
tokenizerHelp:
'Tokenizers encode test text and count tokens. Select a model with valid tokenizer files from the default model directory.',
tokenizerHelp: 'Select a tokenizer from the tokenizer directory to encode test text and count tokens.',
tokenizerEmpty: 'No models are available. Download a model containing tokenizer files in model downloads.',
tokenizerEmptyWithDownload:
'No models are available. Open {download} to download a model containing tokenizer files.',
tokenizerInvalid:
'This model has no usable tokenizer. Select another model or prepare its files in model downloads.',
tokenizerEmptyWithDownload: 'No tokenizers are available. Open {download} to download one.',
tokenizerInvalid: 'This tokenizer is unavailable. Select another or download it again in model downloads.',
schemeHelp:
'Test schemes define request parameters, concurrency, and execution rules. Prepare at least one available scheme.',
schemeEmpty: 'No test schemes are available. Create a scheme first.',
manageSchemes: 'Manage test schemes',
selectService: 'Select a model service',
serviceHelp:
'Select a model service to benchmark. Requests will be sent to this service; make sure it is reachable.',
serviceHelp: 'Select a model service; edit the request URL as needed.',
noServices: 'No model services are available. Add a model service first.',
goModelServices: 'Go to model services',
unsupportedServices: 'Unsupported services are disabled. Hover over an option for the reason.',
serviceUnsupported: 'Not supported yet',
unsupportedProtocol:
'This API protocol is not supported: {0}. Select a model service using OpenAI Chat Completions.',
unsupportedAuth:
+16 -16
View File
@@ -1064,14 +1064,12 @@ const message = {
ollamaNameHelper:
'Introduzca el nombre completo del modelo de la biblioteca de Ollama. Si no especifica una etiqueta, se usará latest.',
downloadHelper:
'Busque y descargue modelos de ModelScope o Hugging Face, o suba modelos locales siguiendo los {requirements}.',
'Descargue modelos o tokenizadores de ModelScope o Hugging Face, o añada archivos locales siguiendo los {requirements}.',
localModelSizeHelper:
'Indica el tamaño actual del directorio, no que todos los archivos hayan terminado de subirse.',
localModelLayoutTitle: 'Requisitos de directorios',
localModelLayoutPath:
'Coloque el modelo completo en el directorio {modelDir} con la estructura organización/nombre del modelo.',
localModelLayoutConfig:
'La raíz del modelo debe contener config.json o params.json; de lo contrario, no aparecerá en la lista.',
localModelLayoutTitle: 'Ejemplos',
localLayoutDirect: 'Ubicación directa',
localLayoutGrouped: 'Por organización (opcional)',
serviceHelper:
'Conecte servicios de modelos de nubes públicas, motores de inferencia locales y puertas de enlace de IA para que los utilicen los agentes integrados de 1Panel y agentes externos como WorkBuddy.',
gpuType: 'Tipo de GPU',
@@ -1111,7 +1109,11 @@ const message = {
addInstance: 'Añadir instancia',
modelScopeEndpointHelper: 'Para buscar y descargar modelos de ModelScope. Usa la URL oficial por defecto.',
modelTokenHelper: 'Opcional. Use un token con permisos para acceder a modelos privados o restringidos.',
modelDirHelper: 'Directorio de descarga y listado de modelos locales.',
tokenizerDir: 'Directorio de tokenizadores',
tokenizerDirHelper:
'Directorio para descargas y la lista de tokenizadores locales. Cambiarlo no mueve los archivos existentes.',
modelDirHelper:
'Directorio de descarga y listado de modelos locales. Cambiarlo no mueve los archivos existentes.',
featuredModelsHelper:
'Explora los modelos seleccionados por 1Panel, consulta sus especificaciones, casos de uso y fuentes de descarga, y elige un modelo para descargar.',
featuredModelsSyncHelper:
@@ -2207,6 +2209,8 @@ const message = {
'La mediana y los mínimos/máximos solo incluyen ejecuciones correctas sin anomalías. P99 es la mediana de los P99 de cada ejecución. La caché y el tráfico externo no están controlados.',
},
benchmarkSettings: {
imagePullHelp:
'La imagen {image} es grande y la descarga puede tardar, según la velocidad de la red. Puede configurar un espejo del registro para acelerar la descarga. Puede cerrar el diálogo de tareas; la descarga continuará en segundo plano. Consulte el progreso en el centro de tareas.',
settingsHelp:
'Prepare la imagen de Benchmark y un plan de prueba. Podrá crear una prueba de rendimiento cuando ambos estén listos.',
imageAvailable: 'La imagen de Benchmark está lista ({image})',
@@ -2226,24 +2230,20 @@ const message = {
goImages: 'Ir a la gestión de imágenes',
goModels: 'Ir a las descargas de modelos',
tokenizerHelp:
'Los tokenizadores codifican el texto de prueba y cuentan los tokens. Seleccione un modelo con archivos de tokenizador válidos en el directorio de modelos predeterminado.',
'Seleccione un tokenizador del directorio de tokenizadores para codificar el texto de prueba y contar tokens.',
tokenizerEmpty:
'No hay modelos disponibles. Descargue un modelo que incluya archivos de tokenizador en las descargas de modelos.',
tokenizerEmptyWithDownload:
'No hay modelos disponibles. Abra {download} para descargar un modelo que incluya archivos de tokenizador.',
tokenizerInvalid:
'Este modelo no tiene un tokenizador utilizable. Seleccione otro modelo o prepare sus archivos en las descargas de modelos.',
tokenizerEmptyWithDownload: 'No hay tokenizadores disponibles. Abra {download} para descargar uno.',
tokenizerInvalid: 'Este tokenizador no está disponible. Seleccione otro o descárguelo de nuevo.',
schemeHelp:
'Los planes de prueba definen los parámetros de solicitud, la concurrencia y las reglas de ejecución. Prepare al menos un plan disponible.',
schemeEmpty: 'No hay planes de prueba disponibles. Cree uno primero.',
manageSchemes: 'Gestionar planes de prueba',
selectService: 'Seleccione un servicio de modelos',
serviceHelp:
'Seleccione el servicio de modelos que desea probar. Se enviarán solicitudes a este servicio; asegúrese de que sea accesible.',
serviceHelp: 'Seleccione un servicio y ajuste la URL si es necesario.',
noServices: 'No hay servicios de modelos disponibles. Añada uno primero.',
goModelServices: 'Ir a los servicios de modelos',
unsupportedServices:
'Los servicios no compatibles están deshabilitados. Pase el cursor sobre una opción para ver el motivo.',
serviceUnsupported: 'Aún no compatible',
unsupportedProtocol:
'Este protocolo de API no es compatible: {0}. Seleccione un servicio de modelos que use OpenAI Chat Completions.',
unsupportedAuth:
+15 -15
View File
@@ -1046,13 +1046,12 @@ const message = {
ollamaNameHelper:
'نام کامل مدل را از کتابخانه Ollama وارد کنید. اگر برچسب مشخص نشود، latest استفاده می‌شود.',
downloadHelper:
'مدل‌ها را از ModelScope یا Hugging Face جستجو و دانلود کنید، یا مدل‌های محلی را مطابق {requirements} بارگذاری کنید.',
'مدل یا توکن‌ساز را از ModelScope یا Hugging Face دانلود کنید، یا فایل‌های محلی را طبق {requirements} اضافه کنید.',
localModelSizeHelper:
'این مقدار فقط اندازه فعلی پوشه را نشان می‌دهد و به معنی پایان بارگذاری همه فایل‌ها نیست.',
localModelLayoutTitle: 'الزامات پوشه',
localModelLayoutPath: 'مدل کامل را با ساختار سازمان/نام مدل در پوشه مدل {modelDir} قرار دهید.',
localModelLayoutConfig:
'ریشه مدل باید شامل config.json یا params.json باشد؛ در غیر این صورت مدل در فهرست نمایش داده نمی‌شود.',
localModelLayoutTitle: 'نمونه‌ها',
localLayoutDirect: 'قرار دادن مستقیم',
localLayoutGrouped: 'گروه‌بندی سازمانی (اختیاری)',
serviceHelper:
'سرویس‌های مدل از ابرهای عمومی، موتورهای استنتاج محلی و درگاه‌های هوش مصنوعی را برای استفاده عامل‌های داخلی 1Panel و عامل‌های خارجی مانند WorkBuddy متصل کنید.',
gpuType: 'نوع GPU',
@@ -1091,7 +1090,10 @@ const message = {
addInstance: 'افزودن نمونه',
modelScopeEndpointHelper: 'برای جستجو و دانلود مدل‌های ModelScope؛ پیش‌فرض، نشانی رسمی است.',
modelTokenHelper: 'اختیاری. برای مدل‌های خصوصی یا محدود از توکن دارای مجوز دسترسی استفاده کنید.',
modelDirHelper: 'پوشهٔ دانلود مدل‌ها و منبع فهرست مدل‌های محلی.',
tokenizerDir: 'پوشهٔ توکن‌سازها',
tokenizerDirHelper: 'پوشهٔ دانلود و فهرست توکن‌سازهای محلی. تغییر آن فایل‌های موجود را جابه‌جا نمی‌کند.',
modelDirHelper:
'پوشهٔ دانلود مدل‌ها و منبع فهرست مدل‌های محلی. تغییر آن فایل‌های موجود را جابه‌جا نمی‌کند.',
featuredModelsHelper:
'مدل‌های منتخب 1Panel را مرور کنید، مشخصات، کاربردها و منابع دانلود را بررسی کنید و مدل مناسب را برای دانلود انتخاب کنید.',
featuredModelsSyncHelper:
@@ -2162,6 +2164,8 @@ const message = {
'میانه و کمینه/بیشینه فقط از اجراهای موفق بدون ناهنجاری درخواست محاسبه می‌شوند. P99 میانه P99 هر اجرا است. کش و ترافیک بیرونی کنترل نشده‌اند.',
},
benchmarkSettings: {
imagePullHelp:
'حجم ایمیج {image} زیاد است و دریافت آن بسته به سرعت شبکه ممکن است زمان زیادی ببرد. برای افزایش سرعت دریافت می‌توانید یک آینهٔ رجیستری تنظیم کنید. می‌توانید پنجرهٔ وظیفه را ببندید؛ دریافت در پس‌زمینه ادامه می‌یابد. پیشرفت را در مرکز وظایف مشاهده کنید.',
settingsHelp:
'ابتدا ایمیج Benchmark و یک طرح آزمون را آماده کنید. پس از آماده شدن هر دو، می‌توانید آزمون معیار ایجاد کنید.',
imageAvailable: 'ایمیج Benchmark آماده است ({image})',
@@ -2178,23 +2182,19 @@ const message = {
mainNodeHelp: 'آزمون‌ها روی گره اصلی اجرا می‌شوند. ایمیج و توکن‌ساز را روی همان گره آماده کنید.',
goImages: 'رفتن به مدیریت ایمیج',
goModels: 'رفتن به دانلود مدل',
tokenizerHelp:
'توکن‌ساز متن آزمون را کدگذاری و توکن‌ها را شمارش می‌کند. مدلی با فایل‌های توکن‌ساز معتبر از پوشه پیش‌فرض مدل‌ها انتخاب کنید.',
tokenizerHelp: 'برای کدگذاری متن آزمون و شمارش توکن‌ها، یک توکن‌ساز از پوشهٔ توکن‌سازها انتخاب کنید.',
tokenizerEmpty: 'مدلی در دسترس نیست. مدلی حاوی فایل‌های توکن‌ساز را از صفحه دانلود مدل دریافت کنید.',
tokenizerEmptyWithDownload:
'مدلی در دسترس نیست. صفحه {download} را باز کنید و مدلی حاوی فایل‌های توکن‌ساز دانلود کنید.',
tokenizerInvalid:
'توکن‌ساز این مدل قابل استفاده نیست. مدل دیگری انتخاب کنید یا فایل‌های آن را در صفحه دانلود مدل آماده کنید.',
tokenizerEmptyWithDownload: 'توکن‌سازی موجود نیست. برای دانلود، {download} را باز کنید.',
tokenizerInvalid: 'این توکن‌ساز قابل استفاده نیست. مورد دیگری انتخاب کنید یا دوباره دانلود کنید.',
schemeHelp:
'طرح‌های آزمون، پارامترهای درخواست، هم‌زمانی و قواعد اجرا را تعیین می‌کنند. حداقل یک طرح قابل استفاده آماده کنید.',
schemeEmpty: 'طرح آزمونی موجود نیست. ابتدا یک طرح ایجاد کنید.',
manageSchemes: 'مدیریت طرح‌های آزمون',
selectService: 'یک سرویس مدل انتخاب کنید',
serviceHelp:
'سرویس مدلی را برای آزمون انتخاب کنید. درخواست‌ها به این سرویس ارسال می‌شوند؛ از دسترس‌پذیر بودن آن مطمئن شوید.',
serviceHelp: 'سرویس مدل را انتخاب کنید؛ در صورت نیاز نشانی درخواست را تغییر دهید.',
noServices: 'سرویس مدلی موجود نیست. ابتدا یک سرویس مدل اضافه کنید.',
goModelServices: 'رفتن به سرویس‌های مدل',
unsupportedServices: 'سرویس‌های پشتیبانی‌نشده غیرفعال هستند. برای مشاهده دلیل، نشانگر را روی گزینه نگه دارید.',
serviceUnsupported: 'هنوز پشتیبانی نمی‌شود',
unsupportedProtocol:
'این پروتکل API پشتیبانی نمی‌شود: {0}. سرویسی با پروتکل OpenAI Chat Completions انتخاب کنید.',
unsupportedAuth: 'این روش احراز هویت پشتیبانی نمی‌شود: {0}. سرویسی با احراز هویت Bearer انتخاب کنید.',
+16 -16
View File
@@ -1050,14 +1050,12 @@ const message = {
ollamaNameHelper:
'Ollama ライブラリの完全なモデル名を入力してください。タグを省略すると latest が使用されます。',
downloadHelper:
'ModelScope、Hugging Face のモデルを検索・ダウンロードするか、{requirements}に従ってローカルモデルをアップロードできます。',
'ModelScopeやHugging Faceからモデルやトークナイザーをダウンロードするか、{requirements}に従ってローカルファイルを追加できます。',
localModelSizeHelper:
'現在のディレクトリサイズを示します。すべてのファイルのアップロード完了を意味するものではありません。',
localModelLayoutTitle: 'ディレクトリ要件',
localModelLayoutPath:
'完全なモデルを「組織名/モデル名」の構成でモデルディレクトリ {modelDir} に配置してください。',
localModelLayoutConfig:
'モデルのルートに config.json または params.json が必要です。ない場合は一覧に表示されません。',
localModelLayoutTitle: '例',
localLayoutDirect: '直接配置',
localLayoutGrouped: '組織別に分類(任意)',
serviceHelper:
'パブリッククラウド、ローカル推論エンジン、AI ゲートウェイなどのモデルサービスを統合し、1Panel 内蔵エージェントや WorkBuddy などの外部エージェントから利用できます。',
gpuType: 'GPU タイプ',
@@ -1096,7 +1094,11 @@ const message = {
addInstance: 'インスタンスを追加',
modelScopeEndpointHelper: 'ModelScope モデルの検索とダウンロードに使用します。既定は公式 URL です。',
modelTokenHelper: '任意。非公開・制限付きモデルにはアクセス権のあるトークンが必要です。',
modelDirHelper: 'モデルの保存先とローカルモデル一覧の読み込み先です。',
tokenizerDir: 'トークナイザーディレクトリ',
tokenizerDirHelper:
'トークナイザーの保存先とローカル一覧の読み取り先です。変更しても既存ファイルは移動されません。',
modelDirHelper:
'モデルの保存先とローカルモデル一覧の読み込み先です。変更しても既存ファイルは移動されません。',
featuredModelsHelper:
'1Panel が厳選したモデルの仕様、用途、ダウンロード元を確認し、適切なモデルを選んでダウンロードできます。',
featuredModelsSyncHelper:
@@ -2166,6 +2168,8 @@ const message = {
'要求異常のない成功した試行のみを集計し、中央値と最小・最大値を表示します。P99 は試行ごとの P99 の中央値です。キャッシュと外部トラフィックは制御されません。',
},
benchmarkSettings: {
imagePullHelp:
'{image} はサイズが大きいため、ネットワーク速度によっては取得に時間がかかります。レジストリミラーを設定すると、取得を高速化できます。タスクダイアログを閉じても取得はバックグラウンドで続行されます。進捗はタスクセンターで確認できます。',
settingsHelp:
'Benchmark イメージとテストプランを準備してください。両方の準備が完了すると、ベンチマークを作成できます。',
imageAvailable: 'Benchmark イメージは準備済みです({image})',
@@ -2185,24 +2189,20 @@ const message = {
'ベンチマークはメインノードで実行されます。イメージとトークナイザーをメインノードで準備してください。',
goImages: 'イメージ管理へ',
goModels: 'モデルダウンロードへ',
tokenizerHelp:
'トークナイザーはテストテキストのエンコードとトークン数の計算に使用します。既定のモデルディレクトリから有効なトークナイザーファイルを含むモデルを選択してください。',
tokenizerHelp: 'トークナイザーディレクトリから選択し、テスト文のエンコードとトークン数の計測に使用します。',
tokenizerEmpty:
'利用できるモデルがありません。モデルダウンロードでトークナイザーファイルを含むモデルをダウンロードしてください。',
tokenizerEmptyWithDownload:
'利用できるモデルがありません。{download}ページでトークナイザーファイルを含むモデルをダウンロードしてください。',
tokenizerInvalid:
'このモデルのトークナイザーは使用できません。別のモデルを選択するか、モデルダウンロードでファイルを準備し直してください。',
tokenizerEmptyWithDownload: '利用可能なトークナイザーがありません。{download}からダウンロードしてください。',
tokenizerInvalid: 'このトークナイザーは利用できません。別のものを選択するか、再ダウンロードしてください。',
schemeHelp:
'テストプランはリクエストパラメーター、同時実行数、実行ルールを定義します。利用できるプランを少なくとも 1 つ準備してください。',
schemeEmpty: '利用できるテストプランがありません。先にプランを作成してください。',
manageSchemes: 'テストプランの管理',
selectService: 'モデルサービスを選択',
serviceHelp:
'ベンチマークするモデルサービスを選択してください。このサービスにリクエストが送信されるため、接続可能であることを確認してください。',
serviceHelp: 'モデルサービスを選択し、必要に応じてリクエストURLを変更してください。',
noServices: '利用できるモデルサービスがありません。先にモデルサービスを追加してください。',
goModelServices: 'モデルサービスへ',
unsupportedServices: '未対応のサービスは選択できません。選択肢にカーソルを合わせると理由を確認できます。',
serviceUnsupported: '未対応',
unsupportedProtocol:
'この API プロトコルには対応していません: {0}。OpenAI Chat Completions を使用するモデルサービスを選択してください。',
unsupportedAuth: 'この認証方式には対応していません: {0}。Bearer 認証を使用するサービスを選択してください。',
+16 -16
View File
@@ -1039,12 +1039,11 @@ const message = {
localFilesMissing: '로컬 파일을 찾을 수 없습니다',
ollamaNameHelper: 'Ollama 라이브러리의 전체 모델 이름을 입력하세요. 태그를 생략하면 latest가 사용됩니다.',
downloadHelper:
'ModelScope 또는 Hugging Face에서 모델을 검색하여 다운로드하거나 {requirements}에 맞춰 로컬 모델을 업로드할 수 있습니다.',
'ModelScope 또는 Hugging Face에서 모델이나 토크나이저를 다운로드하거나 {requirements}에 따라 로컬 파일을 추가하세요.',
localModelSizeHelper: '현재 디렉터리 크기이며 모든 파일의 업로드가 완료되었음을 의미하지 않습니다.',
localModelLayoutTitle: '디렉터리 요구 사항',
localModelLayoutPath: '전체 모델을 조직/모델 이름 구조로 모델 디렉터리 {modelDir}에 배치하세요.',
localModelLayoutConfig:
'모델 루트에 config.json 또는 params.json이 있어야 합니다. 없으면 목록에 표시되지 않습니다.',
localModelLayoutTitle: '예시',
localLayoutDirect: '바로 배치',
localLayoutGrouped: '조직별 분류 (선택)',
serviceHelper:
'퍼블릭 클라우드, 로컬 추론 엔진, AI 게이트웨이 등의 모델 서비스를 통합하여 1Panel 내장 에이전트와 WorkBuddy 같은 외부 에이전트에서 사용할 수 있습니다.',
gpuType: 'GPU 유형',
@@ -1083,7 +1082,11 @@ const message = {
addInstance: '인스턴스 추가',
modelScopeEndpointHelper: 'ModelScope 모델 검색 및 다운로드에 사용하며, 기본값은 공식 URL입니다.',
modelTokenHelper: '선택 사항. 비공개 또는 제한된 모델에는 접근 권한이 있는 토큰이 필요합니다.',
modelDirHelper: '모델 다운로드 저장 경로이자 로컬 모델 목록을 읽는 경로입니다.',
tokenizerDir: '토크나이저 디렉터리',
tokenizerDirHelper:
'토크나이저 다운로드 저장 및 로컬 목록 조회에 사용합니다. 변경해도 기존 파일은 이동하지 않습니다.',
modelDirHelper:
'모델 다운로드 저장 경로이자 로컬 모델 목록을 읽는 경로입니다. 변경해도 기존 파일은 이동하지 않습니다.',
featuredModelsHelper:
'1Panel이 선정한 모델의 사양, 활용 사례 및 다운로드 소스를 확인하고 적합한 모델을 선택하여 다운로드하세요.',
featuredModelsSyncHelper:
@@ -2141,6 +2144,8 @@ const message = {
'요청 이상이 없는 성공한 실행만 중앙값과 최솟값/최댓값에 포함합니다. P99는 각 실행 P99의 중앙값입니다. 캐시와 외부 트래픽은 통제되지 않습니다.',
},
benchmarkSettings: {
imagePullHelp:
'{image} 이미지 크기가 커서 네트워크 속도에 따라 가져오는 데 시간이 오래 걸릴 수 있습니다. 레지스트리 미러를 설정하여 다운로드 속도를 높일 수 있습니다. 작업 창을 닫아도 백그라운드에서 계속 진행됩니다. 작업 센터에서 진행 상황을 확인할 수 있습니다.',
settingsHelp:
'Benchmark 이미지와 테스트 계획을 먼저 준비하세요. 두 항목이 모두 준비되면 벤치마크를 생성할 수 있습니다.',
imageAvailable: 'Benchmark 이미지가 준비되었습니다 ({image})',
@@ -2158,25 +2163,20 @@ const message = {
mainNodeHelp: '벤치마크는 메인 노드에서 실행됩니다. 이미지와 토크나이저를 메인 노드에 준비하세요.',
goImages: '이미지 관리로 이동',
goModels: '모델 다운로드로 이동',
tokenizerHelp:
'토크나이저는 테스트 텍스트를 인코딩하고 토큰 수를 계산합니다. 기본 모델 디렉터리에서 유효한 토크나이저 파일이 포함된 모델을 선택하세요.',
tokenizerHelp: '토크나이저 디렉터리에서 항목을 선택하여 테스트 텍스트를 인코딩하고 토큰 수를 계산하세요.',
tokenizerEmpty:
'사용 가능한 모델이 없습니다. 모델 다운로드에서 토크나이저 파일이 포함된 모델을 다운로드하세요.',
tokenizerEmptyWithDownload:
'사용 가능한 모델이 없습니다. {download} 페이지에서 토크나이저 파일이 포함된 모델을 다운로드하세요.',
tokenizerInvalid:
'이 모델의 토크나이저를 사용할 수 없습니다. 다른 모델을 선택하거나 모델 다운로드에서 파일을 다시 준비하세요.',
tokenizerEmptyWithDownload: '사용 가능한 토크나이저가 없습니다. {download}에서 다운로드하세요.',
tokenizerInvalid: '이 토크나이저는 사용할 수 없습니다. 다른 항목을 선택하거나 다시 다운로드하세요.',
schemeHelp:
'테스트 계획은 요청 매개변수, 동시 실행 수 및 실행 규칙을 정의합니다. 사용 가능한 계획을 하나 이상 준비하세요.',
schemeEmpty: '사용 가능한 테스트 계획이 없습니다. 먼저 계획을 생성하세요.',
manageSchemes: '테스트 계획 관리',
selectService: '모델 서비스 선택',
serviceHelp:
'벤치마크할 모델 서비스를 선택하세요. 해당 서비스에 요청을 보내므로 정상적으로 접근할 수 있는지 확인하세요.',
serviceHelp: '모델 서비스를 선택하고 필요하면 요청 URL을 수정하세요.',
noServices: '사용 가능한 모델 서비스가 없습니다. 먼저 모델 서비스를 추가하세요.',
goModelServices: '모델 서비스로 이동',
unsupportedServices:
'지원하지 않는 서비스는 선택할 수 없습니다. 항목 위에 마우스를 올리면 이유를 확인할 수 있습니다.',
serviceUnsupported: '아직 지원하지 않음',
unsupportedProtocol:
'지원하지 않는 API 프로토콜입니다: {0}. OpenAI Chat Completions를 사용하는 모델 서비스를 선택하세요.',
unsupportedAuth: '지원하지 않는 인증 방식입니다: {0}. Bearer 인증을 사용하는 서비스를 선택하세요.',
+14 -11
View File
@@ -1035,11 +1035,11 @@ const message = {
localFilesMissing: 'ບໍ່ພົບໄຟລ໌ພາຍໃນ',
ollamaNameHelper: 'ກະລຸນາໃສ່ຊື່ໂມເດວເຕັມຈາກຄັງ Ollama. ຖ້າບໍ່ລະບຸແທັກ ຈະໃຊ້ latest.',
downloadHelper:
'ຄົ້ນຫາ ແລະ ດາວໂຫຼດໂມເດວຈາກ ModelScope ຫຼື Hugging Face ຫຼື ອັບໂຫຼດໂມເດວພາຍໃນເຄື່ອງຕາມ{requirements}.',
'ດາວໂຫຼດໂມເດວ ຫຼື tokenizer ຈາກ ModelScope ຫຼື Hugging Face, ຫຼື ເພີ່ມໄຟລ໌ໃນເຄື່ອງຕາມ {requirements}.',
localModelSizeHelper: 'ສະແດງພຽງຂະໜາດໂຟນເດີໃນປັດຈຸບັນ ບໍ່ໄດ້ໝາຍຄວາມວ່າອັບໂຫຼດໄຟລ໌ຄົບແລ້ວ.',
localModelLayoutTitle: 'ຂໍ້ກຳນົດໂຟນເດີ',
localModelLayoutPath: 'ວາງໂມເດວທີ່ຄົບຖ້ວນໃນໂຟນເດີໂມເດວ {modelDir} ໂດຍໃຊ້ໂຄງສ້າງ ອົງກອນ/ຊື່ໂມເດວ.',
localModelLayoutConfig: 'ໂຟນເດີຫຼັກຂອງໂມເດວຕ້ອງມີ config.json ຫຼື params.json, ຖ້າບໍ່ມີຈະບໍ່ສະແດງໃນລາຍການ.',
localModelLayoutTitle: 'ຕົວຢ່າງ',
localLayoutDirect: 'ວາງໂດຍກົງ',
localLayoutGrouped: 'ແຍກຕາມອົງກອນ (ທາງເລືອກ)',
serviceHelper:
'ເຊື່ອມຕໍ່ບໍລິການໂມເດວຈາກຄລາວສາທາລະນະ, ເຄື່ອງຈັກອະນຸມານພາຍໃນ ແລະ ເກດເວ AI ເພື່ອໃຫ້ຕົວແທນໃນ 1Panel ແລະ ຕົວແທນພາຍນອກເຊັ່ນ WorkBuddy ໃຊ້ງານ.',
gpuType: 'ປະເພດ GPU',
@@ -1078,7 +1078,9 @@ const message = {
addInstance: 'ເພີ່ມອິນສະແຕນ',
modelScopeEndpointHelper: 'ໃຊ້ຄົ້ນຫາ ແລະ ດາວໂຫຼດໂມເດວ ModelScope. ຄ່າເລີ່ມຕົ້ນແມ່ນ URL ທາງການ.',
modelTokenHelper: 'ບໍ່ບັງຄັບ. ໂມເດວສ່ວນຕົວ ຫຼື ທີ່ຈຳກັດຕ້ອງໃຊ້ Token ທີ່ມີສິດເຂົ້າເຖິງ.',
modelDirHelper: 'ໂຟນເດີດາວໂຫຼດໂມເດວ ແລະ ແຫຼ່ງລາຍການໂມເດວພາຍໃນເຄື່ອງ.',
tokenizerDir: 'ໂຟນເດີ tokenizer',
tokenizerDirHelper: 'ໂຟນເດີສຳລັບດາວໂຫຼດ ແລະ ອ່ານລາຍການ tokenizer ໃນເຄື່ອງ. ການປ່ຽນຈະບໍ່ຍ້າຍໄຟລ໌ເກົ່າ.',
modelDirHelper: 'ໂຟນເດີດາວໂຫຼດໂມເດວ ແລະ ແຫຼ່ງລາຍການໂມເດວພາຍໃນເຄື່ອງ. ການປ່ຽນຈະບໍ່ຍ້າຍໄຟລ໌ເກົ່າ.',
featuredModelsHelper:
'ເບິ່ງໂມເດລທີ່ 1Panel ຄັດເລືອກ, ກວດເບິ່ງຂໍ້ກຳນົດ, ການນຳໃຊ້ ແລະແຫຼ່ງດາວໂຫຼດ ແລ້ວເລືອກໂມເດລທີ່ເໝາະສົມເພື່ອດາວໂຫຼດ.',
featuredModelsSyncHelper:
@@ -2129,6 +2131,8 @@ const message = {
'ຄ່າກາງ ແລະ ຄ່າຕ່ຳສຸດ/ສູງສຸດໃຊ້ສະເພາະການທົດສອບສຳເລັດທີ່ບໍ່ມີຄຳຮ້ອງຂໍຜິດປົກກະຕິ. P99 ແມ່ນຄ່າກາງຂອງ P99 ແຕ່ລະຄັ້ງ. ແຄຊ ແລະ ການຈະລາຈອນພາຍນອກບໍ່ໄດ້ຄວບຄຸມ.',
},
benchmarkSettings: {
imagePullHelp:
'ອິມເມຈ {image} ມີຂະໜາດໃຫຍ່ ແລະອາດໃຊ້ເວລາດົນໃນການດຶງ ຂຶ້ນກັບຄວາມໄວເຄືອຂ່າຍ. ທ່ານສາມາດຕັ້ງຄ່າມິເຣີຂອງຣີຈິສທຣີເພື່ອເລັ່ງການດຶງ. ທ່ານສາມາດປິດໜ້າຕ່າງວຽກໄດ້; ການດຶງຈະສືບຕໍ່ໃນພື້ນຫຼັງ. ເບິ່ງຄວາມຄືບໜ້າໄດ້ໃນສູນວຽກ.',
settingsHelp: 'ກະລຸນາກະກຽມອິມເມຈ Benchmark ແລະແຜນທົດສອບກ່ອນ. ເມື່ອທັງສອງພ້ອມແລ້ວ ຈຶ່ງສາມາດສ້າງການທົດສອບໄດ້.',
imageAvailable: 'ອິມເມຈ Benchmark ພ້ອມໃຊ້ງານແລ້ວ ({image})',
imageUnavailable: 'ບໍ່ພົບອິມເມຈ Benchmark ({image})',
@@ -2143,20 +2147,19 @@ const message = {
mainNodeHelp: 'ການທົດສອບແລ່ນຢູ່ໂນດຫຼັກ. ກະກຽມອິມເມຈ ແລະ tokenizer ຢູ່ໂນດນັ້ນ.',
goImages: 'ໄປຈັດການອິມເມຈ',
goModels: 'ໄປດາວໂຫຼດໂມເດວ',
tokenizerHelp:
'Tokenizer ໃຊ້ເຂົ້າລະຫັດຂໍ້ຄວາມທົດສອບ ແລະນັບ token. ເລືອກໂມເດວທີ່ມີໄຟລ໌ tokenizer ຖືກຕ້ອງຈາກໂຟນເດີໂມເດວເລີ່ມຕົ້ນ.',
tokenizerHelp: 'ເລືອກ tokenizer ຈາກໂຟນເດີ tokenizer ເພື່ອເຂົ້າລະຫັດຂໍ້ຄວາມທົດສອບ ແລະ ນັບ token.',
tokenizerEmpty: 'ບໍ່ມີໂມເດວທີ່ໃຊ້ໄດ້. ດາວໂຫຼດໂມເດວທີ່ມີໄຟລ໌ tokenizer ໃນໜ້າດາວໂຫຼດໂມເດວ.',
tokenizerEmptyWithDownload: 'ບໍ່ມີໂມເດວທີ່ໃຊ້ໄດ້. ເປີດໜ້າ {download} ເພື່ອດາວໂຫຼດໂມເດວທີ່ມີໄຟລ໌ tokenizer.',
tokenizerInvalid: 'Tokenizer ຂອງໂມເດວນີ້ໃຊ້ບໍ່ໄດ້. ເລືອກໂມເດວອື່ນ ຫຼືກະກຽມໄຟລ໌ຄືນໃນໜ້າດາວໂຫຼດໂມເດວ.',
tokenizerEmptyWithDownload: 'ບໍ່ມີ tokenizer ທີ່ໃຊ້ໄດ້. ເປີດ {download} ເພື່ອດາວໂຫຼດ.',
tokenizerInvalid: 'Tokenizer ນີ້ໃຊ້ບໍ່ໄດ້. ເລືອກອັນອື່ນ ຫຼື ດາວໂຫຼດຄືນ.',
schemeHelp:
'ແຜນທົດສອບກຳນົດພາລາມິເຕີຄຳຮ້ອງຂໍ, ຈຳນວນການເຮັດວຽກພ້ອມກັນ ແລະກົດການແລ່ນ. ກະກຽມຢ່າງໜ້ອຍໜຶ່ງແຜນທີ່ໃຊ້ໄດ້.',
schemeEmpty: 'ບໍ່ມີແຜນທົດສອບທີ່ໃຊ້ໄດ້. ສ້າງແຜນກ່ອນ.',
manageSchemes: 'ຈັດການແຜນທົດສອບ',
selectService: 'ເລືອກບໍລິການໂມເດວ',
serviceHelp: 'ເລືອກບໍລິການໂມເດວທີ່ຈະທົດສອບ. ຄຳຮ້ອງຂໍຈະຖືກສົ່ງໄປບໍລິການນີ້; ກະລຸນາກວດວ່າເຂົ້າເຖິງໄດ້.',
serviceHelp: 'ເລືອກບໍລິການໂມເດວ ແລະ ແກ້ໄຂ URL ຕາມຕ້ອງການ.',
noServices: 'ບໍ່ມີບໍລິການໂມເດວ. ເພີ່ມບໍລິການໂມເດວກ່ອນ.',
goModelServices: 'ໄປບໍລິການໂມເດວ',
unsupportedServices: 'ບໍລິການທີ່ບໍ່ຮອງຮັບຖືກປິດໃຊ້. ວາງເມົາສ໌ເທິງຕົວເລືອກເພື່ອເບິ່ງເຫດຜົນ.',
serviceUnsupported: 'ຍັງບໍ່ຮອງຮັບ',
unsupportedProtocol: 'ຍັງບໍ່ຮອງຮັບໂປຣໂຕຄອນ API ນີ້: {0}. ເລືອກບໍລິການທີ່ໃຊ້ OpenAI Chat Completions.',
unsupportedAuth: 'ຍັງບໍ່ຮອງຮັບວິທີຢືນຢັນຕົວຕົນນີ້: {0}. ເລືອກບໍລິການທີ່ໃຊ້ Bearer.',
serviceModelsMissing: 'ບໍລິການນີ້ຍັງບໍ່ມີໂມເດວ. ເພີ່ມໂມເດວໃນການຈັດການບໍລິການໂມເດວ.',
+16 -17
View File
@@ -1073,14 +1073,12 @@ const message = {
ollamaNameHelper:
'Masukkan nama model penuh daripada pustaka Ollama. Jika tag tidak dinyatakan, latest akan digunakan.',
downloadHelper:
'Cari dan muat turun model daripada ModelScope atau Hugging Face, atau muat naik model setempat mengikut {requirements}.',
'Muat turun model atau tokenizer daripada ModelScope atau Hugging Face, atau tambah fail setempat mengikut {requirements}.',
localModelSizeHelper:
'Ini ialah saiz direktori semasa dan tidak mengesahkan bahawa semua fail telah selesai dimuat naik.',
localModelLayoutTitle: 'Keperluan direktori',
localModelLayoutPath:
'Letakkan model lengkap dalam direktori model {modelDir} menggunakan struktur organisasi/nama model.',
localModelLayoutConfig:
'Akar model mesti mengandungi config.json atau params.json; jika tidak, model tidak akan dipaparkan dalam senarai.',
localModelLayoutTitle: 'Contoh',
localLayoutDirect: 'Letak terus',
localLayoutGrouped: 'Kumpul ikut organisasi (pilihan)',
serviceHelper:
'Sambungkan perkhidmatan model daripada awan awam, enjin inferens setempat dan gerbang AI untuk digunakan oleh ejen terbina dalam 1Panel serta ejen luaran seperti WorkBuddy.',
gpuType: 'Jenis GPU',
@@ -1120,7 +1118,11 @@ const message = {
modelScopeEndpointHelper:
'Untuk mencari dan memuat turun model ModelScope. Menggunakan URL rasmi secara lalai.',
modelTokenHelper: 'Pilihan. Gunakan token dengan kebenaran akses untuk model peribadi atau terhad.',
modelDirHelper: 'Direktori muat turun model dan sumber senarai model setempat.',
tokenizerDir: 'Direktori tokenizer',
tokenizerDirHelper:
'Direktori muat turun dan senarai tokenizer setempat. Perubahan tidak memindahkan fail sedia ada.',
modelDirHelper:
'Direktori muat turun model dan sumber senarai model setempat. Perubahan tidak memindahkan fail sedia ada.',
featuredModelsHelper:
'Semak model pilihan 1Panel, lihat spesifikasi, kegunaan dan sumber muat turun, kemudian pilih model yang sesuai untuk dimuat turun.',
featuredModelsSyncHelper:
@@ -2208,6 +2210,8 @@ const message = {
'Median dan minimum/maksimum hanya melibatkan ujian berjaya tanpa anomali permintaan. P99 ialah median P99 setiap ujian. Cache dan trafik luaran tidak dikawal.',
},
benchmarkSettings: {
imagePullHelp:
'Imej {image} besar dan mungkin mengambil masa yang lama untuk dimuat turun, bergantung pada kelajuan rangkaian. Anda boleh mengkonfigurasi cermin registri untuk mempercepat muat turun. Anda boleh menutup dialog tugas; muat turun akan diteruskan di latar belakang. Lihat kemajuan di pusat tugas.',
settingsHelp:
'Sediakan imej Benchmark dan skema ujian dahulu. Anda boleh mencipta penanda aras apabila kedua-duanya sedia.',
imageAvailable: 'Imej Benchmark sedia ({image})',
@@ -2224,25 +2228,20 @@ const message = {
mainNodeHelp: 'Penanda aras dijalankan pada nod utama. Sediakan imej dan tokenizer pada nod tersebut.',
goImages: 'Ke pengurusan imej',
goModels: 'Ke muat turun model',
tokenizerHelp:
'Tokenizer mengekod teks ujian dan mengira token. Pilih model dengan fail tokenizer yang sah daripada direktori model lalai.',
tokenizerHelp: 'Pilih tokenizer daripada direktori tokenizer untuk mengekod teks ujian dan mengira token.',
tokenizerEmpty:
'Tiada model tersedia. Muat turun model yang mengandungi fail tokenizer di halaman muat turun model.',
tokenizerEmptyWithDownload:
'Tiada model tersedia. Buka {download} untuk memuat turun model yang mengandungi fail tokenizer.',
tokenizerInvalid:
'Tokenizer model ini tidak boleh digunakan. Pilih model lain atau sediakan failnya di halaman muat turun model.',
tokenizerEmptyWithDownload: 'Tiada tokenizer tersedia. Buka {download} untuk memuat turun.',
tokenizerInvalid: 'Tokenizer ini tidak tersedia. Pilih yang lain atau muat turun semula.',
schemeHelp:
'Skema ujian menentukan parameter permintaan, keserentakan dan peraturan pelaksanaan. Sediakan sekurang-kurangnya satu skema yang tersedia.',
schemeEmpty: 'Tiada skema ujian tersedia. Cipta skema dahulu.',
manageSchemes: 'Urus skema ujian',
selectService: 'Pilih perkhidmatan model',
serviceHelp:
'Pilih perkhidmatan model untuk diuji. Permintaan akan dihantar ke perkhidmatan ini; pastikan ia boleh dicapai.',
serviceHelp: 'Pilih perkhidmatan model; ubah URL jika perlu.',
noServices: 'Tiada perkhidmatan model tersedia. Tambah perkhidmatan model dahulu.',
goModelServices: 'Ke perkhidmatan model',
unsupportedServices:
'Perkhidmatan yang tidak disokong dinyahdayakan. Letakkan penuding pada pilihan untuk melihat sebabnya.',
serviceUnsupported: 'Belum disokong',
unsupportedProtocol:
'Protokol API ini tidak disokong: {0}. Pilih perkhidmatan model yang menggunakan OpenAI Chat Completions.',
unsupportedAuth:
+16 -16
View File
@@ -1068,14 +1068,12 @@ const message = {
ollamaNameHelper:
'Insira o nome completo do modelo da biblioteca do Ollama. Se nenhuma tag for especificada, será usada latest.',
downloadHelper:
'Pesquise e baixe modelos do ModelScope ou Hugging Face, ou envie modelos locais seguindo os {requirements}.',
'Baixe modelos ou tokenizadores do ModelScope ou Hugging Face, ou adicione arquivos locais seguindo os {requirements}.',
localModelSizeHelper:
'Indica o tamanho atual do diretório, não que todos os arquivos tenham terminado de ser enviados.',
localModelLayoutTitle: 'Requisitos de diretórios',
localModelLayoutPath:
'Coloque o modelo completo no diretório {modelDir} com a estrutura organização/nome do modelo.',
localModelLayoutConfig:
'A raiz do modelo deve conter config.json ou params.json; caso contrário, ele não aparecerá na lista.',
localModelLayoutTitle: 'Exemplos',
localLayoutDirect: 'Colocar diretamente',
localLayoutGrouped: 'Por organização (opcional)',
serviceHelper:
'Conecte serviços de modelos de nuvens públicas, mecanismos de inferência locais e gateways de IA para uso pelos agentes integrados do 1Panel e agentes externos, como o WorkBuddy.',
gpuType: 'Tipo de GPU',
@@ -1115,7 +1113,11 @@ const message = {
addInstance: 'Adicionar instância',
modelScopeEndpointHelper: 'Para buscar e baixar modelos do ModelScope. Usa a URL oficial por padrão.',
modelTokenHelper: 'Opcional. Use um token com permissão para acessar modelos privados ou restritos.',
modelDirHelper: 'Diretório de download e listagem dos modelos locais.',
tokenizerDir: 'Diretório de tokenizadores',
tokenizerDirHelper:
'Diretório para downloads e a lista de tokenizadores locais. Alterá-lo não move os arquivos existentes.',
modelDirHelper:
'Diretório de download e listagem dos modelos locais. Alterá-lo não move os arquivos existentes.',
featuredModelsHelper:
'Explore os modelos selecionados pelo 1Panel, consulte especificações, casos de uso e fontes de download e escolha um modelo para baixar.',
featuredModelsSyncHelper:
@@ -2204,6 +2206,8 @@ const message = {
'A mediana e os valores mínimo/máximo incluem apenas execuções bem-sucedidas sem anomalias. P99 é a mediana dos P99 de cada execução. Cache e tráfego externo não são controlados.',
},
benchmarkSettings: {
imagePullHelp:
'A imagem {image} é grande e o download pode demorar, dependendo da velocidade da rede. Você pode configurar um espelho do registro para acelerar o download. Você pode fechar a janela da tarefa; o download continuará em segundo plano. Acompanhe o progresso na central de tarefas.',
settingsHelp:
'Prepare a imagem do Benchmark e um plano de teste. Você poderá criar um benchmark quando ambos estiverem prontos.',
imageAvailable: 'A imagem do Benchmark está pronta ({image})',
@@ -2223,24 +2227,20 @@ const message = {
goImages: 'Ir ao gerenciamento de imagens',
goModels: 'Ir aos downloads de modelos',
tokenizerHelp:
'Os tokenizadores codificam o texto de teste e contam os tokens. Selecione um modelo com arquivos de tokenizador válidos no diretório padrão de modelos.',
'Selecione um tokenizador do diretório de tokenizadores para codificar o texto de teste e contar tokens.',
tokenizerEmpty:
'Não há modelos disponíveis. Baixe um modelo com arquivos de tokenizador nos downloads de modelos.',
tokenizerEmptyWithDownload:
'Não há modelos disponíveis. Abra {download} para baixar um modelo com arquivos de tokenizador.',
tokenizerInvalid:
'Este modelo não tem um tokenizador utilizável. Selecione outro modelo ou prepare seus arquivos nos downloads de modelos.',
tokenizerEmptyWithDownload: 'Não há tokenizadores disponíveis. Abra {download} para baixar um.',
tokenizerInvalid: 'Este tokenizador está indisponível. Selecione outro ou baixe novamente.',
schemeHelp:
'Os planos de teste definem os parâmetros de solicitação, a concorrência e as regras de execução. Prepare pelo menos um plano disponível.',
schemeEmpty: 'Não há planos de teste disponíveis. Crie um primeiro.',
manageSchemes: 'Gerenciar planos de teste',
selectService: 'Selecione um serviço de modelos',
serviceHelp:
'Selecione o serviço de modelos que deseja testar. As solicitações serão enviadas a esse serviço; confirme que ele está acessível.',
serviceHelp: 'Selecione um serviço e ajuste a URL se necessário.',
noServices: 'Não há serviços de modelos disponíveis. Adicione um primeiro.',
goModelServices: 'Ir aos serviços de modelos',
unsupportedServices:
'Os serviços incompatíveis estão desativados. Passe o cursor sobre uma opção para ver o motivo.',
serviceUnsupported: 'Ainda não suportado',
unsupportedProtocol:
'Este protocolo de API não é compatível: {0}. Selecione um serviço de modelos que use OpenAI Chat Completions.',
unsupportedAuth:
+16 -16
View File
@@ -1061,14 +1061,12 @@ const message = {
ollamaNameHelper:
'Введите полное имя модели из библиотеки Ollama. Если тег не указан, используется latest.',
downloadHelper:
'Ищите и скачивайте модели с ModelScope или Hugging Face либо загружайте локальные модели, соблюдая {requirements}.',
'Скачайте модели или токенизаторы с ModelScope или Hugging Face либо добавьте локальные файлы, используя {requirements}.',
localModelSizeHelper:
'Это текущий размер каталога, который не подтверждает завершение загрузки всех файлов.',
localModelLayoutTitle: 'Требования к каталогам',
localModelLayoutPath:
'Поместите полную модель в каталог {modelDir}, используя структуру организация/имя модели.',
localModelLayoutConfig:
'Корень модели должен содержать config.json или params.json, иначе модель не появится в списке.',
localModelLayoutTitle: 'Примеры',
localLayoutDirect: 'Напрямую',
localLayoutGrouped: 'По организации (необязательно)',
serviceHelper:
'Подключайте сервисы моделей из публичных облаков, локальных движков инференса и шлюзов ИИ для встроенных агентов 1Panel и внешних агентов, таких как WorkBuddy.',
gpuType: 'Тип GPU',
@@ -1109,7 +1107,11 @@ const message = {
modelScopeEndpointHelper:
'Для поиска и загрузки моделей ModelScope. По умолчанию используется официальный URL.',
modelTokenHelper: 'Необязательно. Для закрытых моделей нужен токен с правами доступа.',
modelDirHelper: 'Каталог загрузки моделей и источник списка локальных моделей.',
tokenizerDir: 'Каталог токенизаторов',
tokenizerDirHelper:
'Каталог загрузки и поиска локальных токенизаторов. Его изменение не перемещает существующие файлы.',
modelDirHelper:
'Каталог загрузки моделей и источник списка локальных моделей. Его изменение не перемещает существующие файлы.',
featuredModelsHelper:
'Просматривайте модели, отобранные 1Panel, изучайте характеристики, сценарии использования и источники загрузки и выбирайте подходящую модель для скачивания.',
featuredModelsSyncHelper:
@@ -2201,6 +2203,8 @@ const message = {
'Медиана и минимум/максимум рассчитываются только по успешным запускам без аномалий запросов. P99 — медиана P99 отдельных запусков. Кеш и внешний трафик не контролируются.',
},
benchmarkSettings: {
imagePullHelp:
'Образ {image} большой, поэтому загрузка может занять длительное время в зависимости от скорости сети. Для ускорения загрузки можно настроить зеркало реестра. Окно задачи можно закрыть: загрузка продолжится в фоновом режиме. Ход выполнения доступен в центре задач.',
settingsHelp:
'Подготовьте образ Benchmark и схему тестирования. Когда оба компонента будут готовы, можно создать тест производительности.',
imageAvailable: 'Образ Benchmark готов ({image})',
@@ -2220,23 +2224,19 @@ const message = {
goImages: 'К управлению образами',
goModels: 'К загрузке моделей',
tokenizerHelp:
'Токенизаторы кодируют тестовый текст и подсчитывают токены. Выберите модель с корректными файлами токенизатора из каталога моделей по умолчанию.',
'Выберите токенизатор из каталога токенизаторов для кодирования тестового текста и подсчёта токенов.',
tokenizerEmpty: 'Нет доступных моделей. Загрузите модель с файлами токенизатора в разделе загрузки моделей.',
tokenizerEmptyWithDownload:
'Нет доступных моделей. Откройте раздел {download}, чтобы загрузить модель с файлами токенизатора.',
tokenizerInvalid:
'Токенизатор этой модели недоступен. Выберите другую модель или подготовьте файлы заново в разделе загрузки моделей.',
tokenizerEmptyWithDownload: 'Нет доступных токенизаторов. Откройте {download}, чтобы скачать токенизатор.',
tokenizerInvalid: 'Этот токенизатор недоступен. Выберите другой или скачайте его заново.',
schemeHelp:
'Схемы тестирования определяют параметры запросов, параллелизм и правила выполнения. Подготовьте хотя бы одну доступную схему.',
schemeEmpty: 'Нет доступных схем тестирования. Сначала создайте схему.',
manageSchemes: 'Управление схемами тестирования',
selectService: 'Выберите сервис модели',
serviceHelp:
'Выберите сервис модели для тестирования. Запросы будут отправляться этому сервису; убедитесь, что он доступен.',
serviceHelp: 'Выберите сервис модели и при необходимости измените URL запроса.',
noServices: 'Нет доступных сервисов моделей. Сначала добавьте сервис модели.',
goModelServices: 'К сервисам моделей',
unsupportedServices:
'Неподдерживаемые сервисы недоступны для выбора. Наведите указатель на пункт, чтобы узнать причину.',
serviceUnsupported: 'Пока не поддерживается',
unsupportedProtocol:
'Этот протокол API не поддерживается: {0}. Выберите сервис модели с протоколом OpenAI Chat Completions.',
unsupportedAuth: 'Этот способ авторизации не поддерживается: {0}. Выберите сервис с авторизацией Bearer.',
+16 -15
View File
@@ -1070,13 +1070,12 @@ const message = {
localFilesMissing: 'Yerel dosyalar bulunamadı',
ollamaNameHelper: 'Ollama kütüphanesindeki tam model adını girin. Etiket belirtilmezse latest kullanılır.',
downloadHelper:
'ModelScope veya Hugging Face üzerinden model arayıp indirin ya da {requirements} doğrultusunda yerel modeller yükleyin.',
'ModelScope veya Hugging Face üzerinden model ya da tokenizer indirin veya {requirements} ile yerel dosyalar ekleyin.',
localModelSizeHelper:
'Bu, dizinin mevcut boyutudur; tüm dosyaların yüklenmesinin tamamlandığını doğrulamaz.',
localModelLayoutTitle: 'Dizin gereksinimleri',
localModelLayoutPath: 'Eksiksiz modeli kuruluş/model adı yapısıyla {modelDir} model dizinine yerleştirin.',
localModelLayoutConfig:
'Model kökünde config.json veya params.json bulunmalıdır; aksi takdirde model listede görünmez.',
localModelLayoutTitle: 'Örnekler',
localLayoutDirect: 'Doğrudan yerleştirme',
localLayoutGrouped: 'Kuruluşa göre (isteğe bağlı)',
serviceHelper:
'Genel bulutlardan, yerel çıkarım motorlarından ve AI ağ geçitlerinden model hizmetlerini bağlayarak yerleşik 1Panel ajanları ve WorkBuddy gibi harici ajanlar için kullanıma sunun.',
gpuType: 'GPU türü',
@@ -1116,7 +1115,11 @@ const message = {
modelScopeEndpointHelper:
'ModelScope modellerini aramak ve indirmek için kullanılır. Varsayılan, resmî URL adresidir.',
modelTokenHelper: 'İsteğe bağlı. Özel veya kısıtlı modeller için erişim yetkili bir token kullanın.',
modelDirHelper: 'Modellerin indirildiği ve yerel model listesinin okunduğu dizin.',
tokenizerDir: 'Tokenizer dizini',
tokenizerDirHelper:
'Tokenizer indirmeleri ve yerel liste için kullanılan dizin. Değiştirmek mevcut dosyaları taşımaz.',
modelDirHelper:
'Modellerin indirildiği ve yerel model listesinin okunduğu dizin. Değiştirmek mevcut dosyaları taşımaz.',
featuredModelsHelper:
'1Panel tarafından seçilen modelleri inceleyin, özellikleri, kullanım alanlarını ve indirme kaynaklarını görüntüleyerek uygun modeli indirin.',
featuredModelsSyncHelper:
@@ -2199,6 +2202,8 @@ const message = {
'Medyan ve en düşük/en yüksek değerler yalnızca istek anomalisi olmayan başarılı çalışmaları içerir. P99, çalışma başına P99 değerlerinin medyanıdır. Önbellek ve dış trafik kontrol edilmez.',
},
benchmarkSettings: {
imagePullHelp:
'{image} imajı büyük olduğundan indirme işlemi ağ hızınıza bağlı olarak uzun sürebilir. İndirmeyi hızlandırmak için bir kayıt defteri aynası yapılandırabilirsiniz. Görev penceresini kapatabilirsiniz; indirme arka planda devam eder. İlerlemeyi görev merkezinden takip edebilirsiniz.',
settingsHelp:
'Önce Benchmark imajını ve bir test planını hazırlayın. Her ikisi de hazır olduğunda bir kıyaslama testi oluşturabilirsiniz.',
imageAvailable: 'Benchmark imajı hazır ({image})',
@@ -2217,23 +2222,19 @@ const message = {
mainNodeHelp: 'Testler ana düğümde çalışır. İmajı ve tokenizer dosyalarını bu düğümde hazırlayın.',
goImages: 'İmaj yönetimine git',
goModels: 'Model indirmelerine git',
tokenizerHelp:
'Tokenizer test metnini kodlar ve token sayısını hesaplar. Varsayılan model dizininden geçerli tokenizer dosyaları içeren bir model seçin.',
tokenizerHelp: 'Test metnini kodlamak ve token saymak için tokenizer dizininden bir tokenizer seçin.',
tokenizerEmpty: 'Kullanılabilir model yok. Model indirmelerinden tokenizer dosyaları içeren bir model indirin.',
tokenizerEmptyWithDownload:
'Kullanılabilir model yok. Tokenizer dosyaları içeren bir model indirmek için {download} sayfasını açın.',
tokenizerInvalid:
'Bu modelde kullanılabilir tokenizer yok. Başka bir model seçin veya model indirmelerinde dosyalarını hazırlayın.',
tokenizerEmptyWithDownload: 'Kullanılabilir tokenizer yok. İndirmek için {download} sayfasını açın.',
tokenizerInvalid: 'Bu tokenizer kullanılamıyor. Başka birini seçin veya yeniden indirin.',
schemeHelp:
'Test planları istek parametrelerini, eşzamanlılığı ve yürütme kurallarını tanımlar. En az bir kullanılabilir plan hazırlayın.',
schemeEmpty: 'Kullanılabilir test planı yok. Önce bir plan oluşturun.',
manageSchemes: 'Test planlarını yönet',
selectService: 'Bir model hizmeti seçin',
serviceHelp:
'Test edilecek model hizmetini seçin. Bu hizmete istek gönderilecektir; erişilebilir olduğundan emin olun.',
serviceHelp: 'Model hizmetini seçin; gerekirse istek URL’sini düzenleyin.',
noServices: 'Kullanılabilir model hizmeti yok. Önce bir model hizmeti ekleyin.',
goModelServices: 'Model hizmetlerine git',
unsupportedServices: 'Desteklenmeyen hizmetler devre dışı. Nedenini görmek için seçeneğin üzerine gelin.',
serviceUnsupported: 'Henüz desteklenmiyor',
unsupportedProtocol:
'Bu API protokolü desteklenmiyor: {0}. OpenAI Chat Completions kullanan bir model hizmeti seçin.',
unsupportedAuth:
+14 -10
View File
@@ -998,11 +998,11 @@ const message = {
downloadCompleted: '下載完成',
localFilesMissing: '找不到本機檔案',
ollamaNameHelper: '請填寫 Ollama 模型庫中的完整模型名稱,未指定標籤時預設使用 latest。',
downloadHelper: '可搜尋下載 ModelScope、Hugging Face 上的模型,也可依{requirements}上傳本機模型。',
downloadHelper: '可從 ModelScope、Hugging Face 下載模型或分詞器,也可參考{requirements}放入本機檔案。',
localModelSizeHelper: '僅表示目前目錄占用的大小,不代表檔案已上傳完整。',
localModelLayoutTitle: '目錄要求',
localModelLayoutPath: '完整模型請以「組織名稱/模型名稱」的結構放到模型目錄 {modelDir} 中。',
localModelLayoutConfig: '模型根目錄需包含 config.json 或 params.json,否則不會顯示在清單中。',
localModelLayoutTitle: '範例',
localLayoutDirect: '直接放置',
localLayoutGrouped: '依組織分組(選用)',
serviceHelper:
'統一接入公有雲、本機推論引擎和 AI 閘道等模型服務,供 1Panel 內建智慧體及 WorkBuddy 等外部智慧體呼叫。',
gpuType: 'GPU 類型',
@@ -1041,7 +1041,9 @@ const message = {
addInstance: '新增實例',
modelScopeEndpointHelper: '用於搜尋和下載 ModelScope 模型,預設使用官方位址。',
modelTokenHelper: '選填,存取私人或受限模型時需填寫具備權限的 Token。',
modelDirHelper: '模型下載儲存目錄,也用於讀取本機模型清單。',
tokenizerDir: '分詞器目錄',
tokenizerDirHelper: '分詞器下載儲存目錄,也用於讀取本機分詞器清單。修改後不會自動搬移既有檔案。',
modelDirHelper: '模型下載儲存目錄,也用於讀取本機模型清單。修改後不會自動搬移既有檔案。',
featuredModelsHelper:
'瀏覽 1Panel 官方精選模型,查看模型規格、適用情境及下載來源,選擇合適的模型進行下載。',
featuredModelsSyncHelper: '開啟自動同步後,每天凌晨更新精選模型目錄,不下載模型檔案;也可手動立即同步。',
@@ -2056,6 +2058,8 @@ const message = {
'彙總僅採用成功且無請求異常的重複測試,顯示中位數與最小/最大值。P99 是各次 P99 的中位數;快取與外部流量未受控。',
},
benchmarkSettings: {
imagePullHelp:
'{image} 映像檔較大,拉取可能需要較長時間,實際時間取決於網路速度。可設定映像加速以提升拉取速度。可關閉任務視窗,拉取將在背景繼續,進度可在任務中心查看。',
settingsHelp: '請先準備 Benchmark 映像和測試方案,兩項均就緒後即可建立基準測試。',
imageAvailable: 'Benchmark 映像已就緒({image})',
imageUnavailable: '未偵測到 Benchmark 映像({image})',
@@ -2071,18 +2075,18 @@ const message = {
mainNodeHelp: '基準測試在主節點執行,映像和分詞器均從主節點檢查。請在主節點準備資源。',
goImages: '前往映像管理',
goModels: '前往模型下載',
tokenizerHelp: '分詞器用於對測試文字進行 Token 編碼及統計,請從預設模型目錄選擇包含有效分詞器檔案的模型。',
tokenizerHelp: '請選擇分詞器目錄中的分詞器,用於測試文字的 Token 編碼及統計。',
tokenizerEmpty: '暫無可用模型,請前往模型下載頁面下載包含分詞器檔案的模型。',
tokenizerEmptyWithDownload: '暫無可用模型,請前往 {download} 頁面下載包含分詞器檔案的模型。',
tokenizerInvalid: '目前模型的分詞器無法使用,請選擇其他模型或前往模型下載頁面重新準備。',
tokenizerEmptyWithDownload: '暫無可用分詞器,請前往 {download} 頁面下載分詞器。',
tokenizerInvalid: '目前分詞器無法使用,請重新選擇或前往模型下載頁面重新下載。',
schemeHelp: '測試方案用於定義請求參數、並行設定及執行規則,請至少準備一個可用方案。',
schemeEmpty: '暫無可用測試方案,請先建立測試方案。',
manageSchemes: '管理測試方案',
selectService: '請選擇模型服務',
serviceHelp: '請選擇需要進行基準測試的模型服務。測試將向所選服務傳送請求,請確認服務可以正常存取。',
serviceHelp: '選擇待測試的模型服務,介面位址可依需求修改。',
noServices: '暫無模型服務,請先新增模型服務。',
goModelServices: '前往模型服務',
unsupportedServices: '不相容的服務已停用,可將滑鼠停留在選項上查看原因。',
serviceUnsupported: '暫不支援',
unsupportedProtocol: '暫不支援此介面協定:{0}。請選擇使用 OpenAI Chat Completions 協定的模型服務。',
unsupportedAuth: '暫不支援此驗證方式:{0}。請選擇使用 Bearer 驗證的模型服務。',
serviceModelsMissing: '此服務尚未設定模型,請前往模型服務管理新增模型。',
+14 -10
View File
@@ -1011,11 +1011,11 @@ const message = {
downloadCompleted: '下载完成',
localFilesMissing: '本地文件未找到',
ollamaNameHelper: '请填写 Ollama 模型库中的完整模型名称,未指定标签时默认使用 latest。',
downloadHelper: '可搜索下载 ModelScope、Hugging Face 上的模型,也可按{requirements}上传本地模型。',
downloadHelper: '可从 ModelScope、Hugging Face 下载模型或分词器,也可参考{requirements}放入本地文件。',
localModelSizeHelper: '仅表示当前目录占用的大小,不代表文件已上传完整。',
localModelLayoutTitle: '目录要求',
localModelLayoutPath: '完整模型请以“组织名/模型名”的结构放到模型目录 {modelDir} 中。',
localModelLayoutConfig: '模型根目录需有 config.json 或 params.json,否则不显示。',
localModelLayoutTitle: '示例',
localLayoutDirect: '直接放置',
localLayoutGrouped: '按组织分组(可选)',
serviceHelper:
'统一接入公有云、本地推理引擎和 AI 网关等模型服务,供 1Panel 内置智能体及 WorkBuddy 等外部智能体调用。',
gpuType: 'GPU 类型',
@@ -1054,7 +1054,9 @@ const message = {
addInstance: '新增实例',
modelScopeEndpointHelper: '用于搜索和下载 ModelScope 模型,默认使用官方地址。',
modelTokenHelper: '选填,访问私有或受限模型时需填写有权限的 Token。',
modelDirHelper: '模型下载保存目录,也用于读取本地模型列表。',
tokenizerDir: '分词器目录',
tokenizerDirHelper: '分词器下载保存目录,也用于读取本地分词器列表。修改后不会自动迁移已有文件。',
modelDirHelper: '模型下载保存目录,也用于读取本地模型列表。修改后不会自动迁移已有文件。',
featuredModelsHelper:
'浏览 1Panel 官方精选模型,查看模型规格、适用场景及下载来源,选择合适的模型进行下载。',
featuredModelsSyncHelper: '开启自动同步后,每天凌晨更新精选模型目录,不下载模型文件;也可手动立即同步。',
@@ -2064,6 +2066,8 @@ const message = {
'汇总仅使用成功且无请求异常的重复测试,显示中位数和最小/最大值。P99 是每次测试 P99 的中位数;缓存和外部流量未受控。',
},
benchmarkSettings: {
imagePullHelp:
'{image} 镜像较大,拉取可能需要较长时间,具体取决于网络速度。可配置镜像加速以提升拉取速度。可关闭任务弹框,拉取将在后台继续,进度可在任务中心查看。',
settingsHelp: '请先准备 Benchmark 镜像和测试方案,两项均就绪后即可创建基准测试。',
imageAvailable: 'Benchmark 镜像已就绪({image})',
imageUnavailable: '未检测到 Benchmark 镜像({image})',
@@ -2079,18 +2083,18 @@ const message = {
mainNodeHelp: '基准测试在主节点执行,镜像和分词器均从主节点检查。请在主节点准备资源。',
goImages: '前往镜像管理',
goModels: '前往模型下载',
tokenizerHelp: '分词器用于对测试文本进行 Token 编码及统计,请从默认模型目录选择包含有效分词器文件的模型。',
tokenizerHelp: '请选择分词器目录中的分词器,用于测试文本的 Token 编码及统计。',
tokenizerEmpty: '暂无可用模型,请前往模型下载页面下载包含分词器文件的模型。',
tokenizerEmptyWithDownload: '暂无可用模型,请前往 {download} 页面下载包含分词器文件的模型。',
tokenizerInvalid: '当前模型的分词器不可用,请选择其他模型或前往模型下载页面重新准备。',
tokenizerEmptyWithDownload: '暂无可用分词器,请前往 {download} 页面下载分词器。',
tokenizerInvalid: '当前分词器不可用,请重新选择或前往模型下载页面重新下载。',
schemeHelp: '测试方案用于定义请求参数、并发配置及执行规则,请至少准备一个可用方案。',
schemeEmpty: '暂无可用测试方案,请先创建测试方案。',
manageSchemes: '管理测试方案',
selectService: '请选择模型服务',
serviceHelp: '请选择需要进行基准测试的模型服务。测试将向所选服务发送请求,请确保服务可以正常访问。',
serviceHelp: '选择待测试的模型服务,接口地址可按需修改。',
noServices: '暂无模型服务,请先添加模型服务。',
goModelServices: '前往模型服务',
unsupportedServices: '不兼容的服务已禁用,可悬停查看原因。',
serviceUnsupported: '暂不支持',
unsupportedProtocol: '暂不支持此接口协议:{0}。请选择使用 OpenAI Chat Completions 协议的模型服务。',
unsupportedAuth: '暂不支持此鉴权方式:{0}。请选择使用 Bearer 鉴权的模型服务。',
serviceModelsMissing: '该服务尚未配置模型,请前往模型服务管理添加模型。',
+1 -1
View File
@@ -96,7 +96,7 @@
</div>
</template>
</el-table-column>
<el-table-column prop="provider" :label="$t('aiTools.model.engineProvider')" min-width="180">
<el-table-column prop="provider" :label="$t('aiTools.agents.provider')" min-width="180">
<template #default="{ row }">
<div class="cell-ellipsis">
<ProviderLabel :provider="row.provider" :display-name="row.providerName" />