From 37181d58f2ce44730c8034d5c7e684b03233101d Mon Sep 17 00:00:00 2001 From: Sujin Kim Date: Tue, 28 Apr 2026 21:15:34 +0900 Subject: [PATCH] feat(FR-2761): expand deployment preset modal with new schema fields and fix validation --- data/schema.graphql | 165 +++++++- .../AdminDeploymentPresetSettingModal.tsx | 356 ++++++++++++++---- .../DeploymentPresetDetailContent.tsx | 2 +- .../pages/AdminDeploymentPresetListPage.tsx | 2 +- resources/i18n/de.json | 12 + resources/i18n/el.json | 12 + resources/i18n/en.json | 12 + resources/i18n/es.json | 12 + resources/i18n/fi.json | 12 + resources/i18n/fr.json | 12 + resources/i18n/id.json | 12 + resources/i18n/it.json | 12 + resources/i18n/ja.json | 12 + resources/i18n/ko.json | 12 + resources/i18n/mn.json | 12 + resources/i18n/ms.json | 12 + resources/i18n/pl.json | 12 + resources/i18n/pt-BR.json | 12 + resources/i18n/pt.json | 12 + resources/i18n/ru.json | 12 + resources/i18n/th.json | 12 + resources/i18n/tr.json | 12 + resources/i18n/vi.json | 12 + resources/i18n/zh-CN.json | 12 + resources/i18n/zh-TW.json | 12 + 25 files changed, 696 insertions(+), 81 deletions(-) diff --git a/data/schema.graphql b/data/schema.graphql index 0048071461..37a432668a 100644 --- a/data/schema.graphql +++ b/data/schema.graphql @@ -2883,8 +2883,10 @@ input CreateAccessTokenInput """The ID of the model deployment for which the access token is created.""" modelDeploymentId: ID! - """The expiration timestamp of the access token.""" - expiresAt: DateTime + """ + The expiration timestamp of the access token. Required — callers must decide the token lifetime themselves. + """ + expiresAt: DateTime! } """Added in 25.16.0. Payload for creating an access token.""" @@ -3068,7 +3070,7 @@ input CreateDeploymentInput metadata: ModelDeploymentMetadataInput! networkAccess: ModelDeploymentNetworkAccessInput! defaultDeploymentStrategy: DeploymentStrategyInput! - desiredReplicaCount: Int! + replicaCount: Int! initialRevision: CreateRevisionInput = null } @@ -3103,6 +3105,57 @@ input CreateDeploymentRevisionPresetInput """Default deployment strategy for deployments created from this preset.""" deploymentStrategy: PresetDeploymentStrategyInput = null + + """Added in UNRELEASED. Container image to run the inference server.""" + imageId: UUID! + + """ + Added in UNRELEASED. Detailed explanation of when and why to use this preset configuration. + """ + description: String = null + + """ + Added in UNRELEASED. Parsed model definition specifying health checks, ports, and service configuration for the inference endpoint. + """ + modelDefinition: ModelDefinitionInput = null + + """ + Added in UNRELEASED. Resource slot allocations (e.g. cpu, mem, cuda.device). + """ + resourceSlots: [ResourceSlotEntryInput!] = null + + """ + Added in UNRELEASED. Additional resource options such as shared memory (shmem) size. + """ + resourceOpts: [ResourceOptsEntryInput!] = null + + """ + Added in UNRELEASED. Deployment topology mode (single-node or multi-node). + """ + clusterMode: ClusterMode = null + + """Added in UNRELEASED. Number of worker nodes in the cluster.""" + clusterSize: Int = null + + """ + Added in UNRELEASED. Command to start the inference server process inside the container. + """ + startupCommand: String = null + + """ + Added in UNRELEASED. Script executed before the main process starts (e.g. to download model weights). + """ + bootstrapScript: String = null + + """ + Added in UNRELEASED. Environment variables injected into the inference container. + """ + environ: [EnvironEntryInput!] = null + + """ + Added in UNRELEASED. Runtime variant preset values applied when using this deployment preset. + """ + presetValues: [DeploymentRevisionPresetValueEntryInput!] = null } """Added in 26.4.2. Create deployment revision preset payload.""" @@ -4328,6 +4381,22 @@ type DelegateScanArtifactsPayload artifacts: [Artifact!]! } +"""Added in UNRELEASED. Input for deleting an access token.""" +input DeleteAccessTokenInput + @join__type(graph: STRAWBERRY) +{ + """The ID of the access token to delete.""" + id: ID! +} + +"""Added in UNRELEASED. Payload for deleting an access token.""" +type DeleteAccessTokenPayload + @join__type(graph: STRAWBERRY) +{ + """ID of the deleted access token""" + id: UUID! +} + """ Added in 24.09.0. Input for soft-deleting artifacts from the system. @@ -5121,6 +5190,19 @@ type DeploymentRevisionPresetEdge node: DeploymentRevisionPreset! } +""" +Added in 26.4.2. A single environment variable key-value pair injected into the inference container when a deployment revision preset is applied. +""" +type DeploymentRevisionPresetEnvironEntry + @join__type(graph: STRAWBERRY) +{ + """Environment variable key.""" + key: String! + + """Environment variable value.""" + value: String! +} + """Added in 26.4.2. Filter for deployment revision presets.""" input DeploymentRevisionPresetFilter @join__type(graph: STRAWBERRY) @@ -5165,6 +5247,19 @@ type DeploymentRevisionPresetValueEntry value: String! } +""" +Added in UNRELEASED. A mapping of a runtime variant preset to a concrete value, used to auto-configure runtime parameters when this deployment preset is applied. +""" +input DeploymentRevisionPresetValueEntryInput + @join__type(graph: STRAWBERRY) +{ + """The runtime variant preset that this value applies to.""" + presetId: UUID! + + """The concrete value to set for the referenced preset parameter.""" + value: String! +} + """Added in 24.09.0. Scope for deployment scheduling history query""" input DeploymentScope @join__type(graph: STRAWBERRY) @@ -6439,6 +6534,19 @@ type EntityTimestamps modifiedAt: DateTime } +""" +Added in UNRELEASED. A single environment variable entry with key and value. +""" +input EnvironEntryInput + @join__type(graph: STRAWBERRY) +{ + """Environment variable key (e.g., 'CUDA_VISIBLE_DEVICES').""" + key: String! + + """Environment variable value.""" + value: String! +} + """ Added in 26.1.0. A single environment variable entry with name and value. """ @@ -10677,6 +10785,9 @@ type Mutation """Added in 25.16.0. Create access token.""" createAccessToken(input: CreateAccessTokenInput!): CreateAccessTokenPayload! @join__field(graph: STRAWBERRY) + """Added in UNRELEASED. Delete access token.""" + deleteAccessToken(input: DeleteAccessTokenInput!): DeleteAccessTokenPayload! @join__field(graph: STRAWBERRY) + """ Added in 25.19.0. Activate a specific revision to be the current revision """ @@ -11835,7 +11946,7 @@ type PresetExecutionSpec bootstrapScript: String """Environment variables.""" - environ: [EnvironmentVariableEntry!]! + environ: [DeploymentRevisionPresetEnvironEntry!]! } """ @@ -17659,7 +17770,7 @@ input UpdateDeploymentInput tags: [String!] defaultDeploymentStrategy: DeploymentStrategyInput activeRevisionId: ID - desiredReplicaCount: Int + replicaCount: Int name: String preferredDomainName: String } @@ -17733,6 +17844,50 @@ input UpdateDeploymentRevisionPresetInput Default deployment strategy for deployments created from this preset. Set to null to clear. """ deploymentStrategy: PresetDeploymentStrategyInput + + """ + Added in UNRELEASED. Container image for the inference server. Set to null to clear. + """ + imageId: UUID + + """Added in UNRELEASED. Parsed model definition. Set to null to clear.""" + modelDefinition: ModelDefinitionInput + + """Added in UNRELEASED. Container startup command. Set to null to clear.""" + startupCommand: String + + """ + Added in UNRELEASED. Bootstrap script run before the main process. Set to null to clear. + """ + bootstrapScript: String + + """ + Added in UNRELEASED. Replace resource slot allocations. Omit to leave unchanged. + """ + resourceSlots: [ResourceSlotEntryInput!] = null + + """ + Added in UNRELEASED. Replace additional resource options. Omit to leave unchanged. + """ + resourceOpts: [ResourceOptsEntryInput!] = null + + """ + Added in UNRELEASED. New cluster topology mode. Omit to leave unchanged. + """ + clusterMode: ClusterMode = null + + """Added in UNRELEASED. New cluster size. Omit to leave unchanged.""" + clusterSize: Int = null + + """ + Added in UNRELEASED. Replace environment variables. Omit to leave unchanged. + """ + environ: [EnvironEntryInput!] = null + + """ + Added in UNRELEASED. Replace runtime variant preset values. Omit to leave unchanged. + """ + presetValues: [DeploymentRevisionPresetValueEntryInput!] = null } """Added in 26.4.2. Update deployment revision preset payload.""" diff --git a/react/src/components/AdminDeploymentPresetSettingModal.tsx b/react/src/components/AdminDeploymentPresetSettingModal.tsx index 2962dd8377..e4b0994311 100644 --- a/react/src/components/AdminDeploymentPresetSettingModal.tsx +++ b/react/src/components/AdminDeploymentPresetSettingModal.tsx @@ -4,6 +4,7 @@ */ import type { AdminDeploymentPresetSettingModalCreateMutation } from '../__generated__/AdminDeploymentPresetSettingModalCreateMutation.graphql'; import type { AdminDeploymentPresetSettingModalFragment$key } from '../__generated__/AdminDeploymentPresetSettingModalFragment.graphql'; +import type { AdminDeploymentPresetSettingModalImagesQuery } from '../__generated__/AdminDeploymentPresetSettingModalImagesQuery.graphql'; import type { AdminDeploymentPresetSettingModalRuntimeVariantsQuery } from '../__generated__/AdminDeploymentPresetSettingModalRuntimeVariantsQuery.graphql'; import type { AdminDeploymentPresetSettingModalUpdateMutation } from '../__generated__/AdminDeploymentPresetSettingModalUpdateMutation.graphql'; import { @@ -17,6 +18,7 @@ import { Select, Switch, Typography, + theme, } from 'antd'; import { BAIButton, BAIFlex, BAIModal, useBAILogger } from 'backend.ai-ui'; import React, { useRef } from 'react'; @@ -28,32 +30,31 @@ import { useMutation, } from 'react-relay'; -type DeploymentStrategyType = 'ROLLING' | 'BLUE_GREEN'; +type ClusterModeType = 'SINGLE_NODE' | 'MULTI_NODE'; type FormInputType = { name: string; description?: string; runtimeVariantId: string; - // TODO(needs-backend): FR-2761 — imageId is required per spec but not yet in CreateDeploymentRevisionPresetInput schema - // imageId?: string; - // TODO(needs-backend): FR-2761 — cluster fields not yet in schema - // clusterMode?: 'single-node' | 'multi-node'; - // clusterSize?: number; - // TODO(needs-backend): FR-2761 — resource fields not yet in schema - // resourceSlots?: Record; - // shmem?: number; - // TODO(needs-backend): FR-2761 — execution fields not yet in schema - // startupCommand?: string; - // bootstrapScript?: string; + imageId: string; + clusterMode?: ClusterModeType; + clusterSize?: number; + startupCommand?: string; + bootstrapScript?: string; + // TODO(needs-ui): FR-2761 — environ (key-value list) needs dedicated UI component // environ?: Array<{ name: string; value: string }>; + // TODO(needs-ui): FR-2761 — resourceSlots needs resource allocation UI + // resourceSlots?: Record; + // TODO(needs-ui): FR-2761 — presetValues needs dedicated UI component // presetValues?: string; + // TODO(needs-ui): FR-2761 — modelDefinition needs structured JSON editor + // modelDefinition?: string; // Deployment defaults openToPublic?: boolean; replicaCount?: number; revisionHistoryLimit?: number; - deploymentStrategy?: DeploymentStrategyType; - // TODO(needs-backend): FR-2761 — modelDefinition not yet in schema - // modelDefinition?: string; + // deploymentStrategy is temporarily disabled per product decision + // deploymentStrategy?: 'ROLLING' | 'BLUE_GREEN'; // Edit-only rank?: number; }; @@ -104,12 +105,98 @@ const RuntimeVariantSelect: React.FC<{ onChange={onChange} options={options} placeholder={t('adminDeploymentPreset.SelectRuntimeVariant')} - showSearch - optionFilterProp="label" + showSearch={{ + filterOption: (input, option) => + String(option?.label ?? '') + .toLowerCase() + .includes(input.toLowerCase()), + }} + /> + ); +}; + +// Wraps RuntimeVariantSelect with Suspense so Form.Item always renders, +// keeping the field registered in the form store even during loading. +const RuntimeVariantSelectField: React.FC<{ + value?: string; + onChange?: (value: string) => void; +}> = ({ value, onChange }) => { + 'use memo'; + const { t } = useTranslation(); + return ( + } + > + + + ); +}; + +const ImageSelect: React.FC<{ + value?: string; + onChange?: (value: string) => void; +}> = ({ value, onChange }) => { + 'use memo'; + const { t } = useTranslation(); + + const queryRef = + useLazyLoadQuery( + graphql` + query AdminDeploymentPresetSettingModalImagesQuery { + images { + id + humanized_name + tag + registry + } + } + `, + {}, + { fetchPolicy: 'store-and-network' }, + ); + + const options = (queryRef.images ?? []) + .filter((img) => img?.id != null) + .map((img) => ({ + value: img!.id!, + label: img?.humanized_name + ? `${img.humanized_name}:${img?.tag ?? ''}` + : `${img?.registry ?? ''}:${img?.tag ?? ''}`, + })); + + return ( + - {/* - TODO(needs-backend): FR-2761 — `description` is supported by - UpdateDeploymentRevisionPresetInput but not yet by - CreateDeploymentRevisionPresetInput. Render the field only in edit - mode for now so create-mode users do not silently lose their input. - */} - {isEditMode && ( + + + + {isEditMode ? ( + + + {preset.runtimeVariant?.name ?? preset.runtimeVariantId} + + + ) : ( - + )} {isEditMode ? ( - - - {preset.runtimeVariant?.name ?? preset.runtimeVariantId} + + + {preset.execution?.image ?? '-'} ) : ( - - - - - - )} + /> + + + + + - {/* TODO(needs-backend): FR-2761 — imageId field not yet in CreateDeploymentRevisionPresetInput schema */} - {/* TODO(needs-backend): FR-2761 — cluster fields (clusterMode, clusterSize) not yet in schema */} - {/* TODO(needs-backend): FR-2761 — resource fields (resourceSlots, shmem) not yet in schema */} - {/* TODO(needs-backend): FR-2761 — execution fields (startupCommand, bootstrapScript, environ, presetValues) not yet in schema */} + {/* Execution */} + + + {t('adminDeploymentPreset.SectionExecution')} + + + + + + + + + {/* TODO(needs-ui): FR-2761 — environ (env var list) needs key-value editor component */} + {/* TODO(needs-ui): FR-2761 — resourceSlots needs resource allocation UI */} + {/* TODO(needs-ui): FR-2761 — presetValues needs dedicated UI component */} + {/* TODO(needs-ui): FR-2761 — modelDefinition needs structured editor */} {/* Deployment Defaults */} - - + + {t('adminDeploymentPreset.SectionDeploymentDefaults')} @@ -399,7 +605,8 @@ const AdminDeploymentPresetSettingModal: React.FC< /> - @@ -411,7 +618,7 @@ const AdminDeploymentPresetSettingModal: React.FC< { value: 'BLUE_GREEN', label: 'BLUE_GREEN' }, ]} /> - + */} - {/* TODO(needs-backend): FR-2761 — modelDefinition textarea not yet in schema */} - {/* Edit-only: rank */} {isEditMode && ( <> - - + + {t('adminDeploymentPreset.SectionAdvanced')} diff --git a/react/src/components/DeploymentPresetDetailContent.tsx b/react/src/components/DeploymentPresetDetailContent.tsx index b64543034d..194ba288e1 100644 --- a/react/src/components/DeploymentPresetDetailContent.tsx +++ b/react/src/components/DeploymentPresetDetailContent.tsx @@ -42,7 +42,7 @@ const DeploymentPresetDetailContent: React.FC< startupCommand bootstrapScript environ { - name + key value } } diff --git a/react/src/pages/AdminDeploymentPresetListPage.tsx b/react/src/pages/AdminDeploymentPresetListPage.tsx index b5e4ae4055..026cd2d1de 100644 --- a/react/src/pages/AdminDeploymentPresetListPage.tsx +++ b/react/src/pages/AdminDeploymentPresetListPage.tsx @@ -342,7 +342,7 @@ const AdminDeploymentPresetListPage: React.FC = () => { startupCommand bootstrapScript environ { - name + key value } } diff --git a/resources/i18n/de.json b/resources/i18n/de.json index 7a7c08e18e..245ba3a875 100644 --- a/resources/i18n/de.json +++ b/resources/i18n/de.json @@ -5,9 +5,12 @@ "ActiveAgentsTooltip": "Zeigt einen Überblick auf einen Blick über alle im System ausgeführten Agenten." }, "adminDeploymentPreset": { + "BootstrapScript": "Bootstrap-Skript", + "BootstrapScriptPlaceholder": "Bootstrap-Skript eingeben, das vor dem Start ausgeführt wird.", "Cluster": "Cluster", "ClusterMode": "Cluster-Modus", "ClusterSize": "Cluster-Größe", + "ClusterSizePlaceholder": "z. B. 2", "ConfirmDelete": "Möchten Sie die Bereitstellungsvoreinstellung \"{{name}}\" wirklich löschen?", "CreatePreset": "Voreinstellung erstellen", "DeletePreset": "Voreinstellung löschen", @@ -15,6 +18,8 @@ "DescriptionPlaceholder": "Beschreiben Sie den Zweck dieser Bereitstellungsvoreinstellung.", "EditPreset": "Voreinstellung bearbeiten", "Image": "Image", + "ImageRequired": "Image ist erforderlich.", + "MultiNode": "Multi-Node", "Name": "Name", "NamePlaceholder": "z. B. vLLM-GPU-Large", "NameRequired": "Name ist erforderlich.", @@ -36,11 +41,17 @@ "SectionBasicInfo": "Grundlegende Informationen", "SectionCluster": "Cluster", "SectionDeploymentDefaults": "Bereitstellungsstandards", + "SectionExecution": "Ausführung", "SectionImage": "Image", "SectionResources": "Ressourcen", + "SelectClusterMode": "Cluster-Modus auswählen", + "SelectImage": "Container-Image auswählen", "SelectRuntimeVariant": "Runtime-Variante auswählen", "SelectStrategy": "Strategie auswählen", "Shmem": "Gemeinsamer Speicher", + "SingleNode": "Single-Node", + "StartupCommand": "Startbefehl", + "StartupCommandPlaceholder": "Startbefehl für den Inferenzserver eingeben.", "Strategy": "Bereitstellungsstrategie", "TabTitle": "Bereitstellungsvoreinstellungen" }, @@ -1200,6 +1211,7 @@ "Inactive": "Inaktiv", "InvalidJSONFormat": "Ungültiges JSON-Format.", "LastUpdated": "Zuletzt aktualisiert", + "Loading": "Wird geladen...", "Manual": "Handbuch", "MaxValueNotification": "{{name}} muss maximal {{max}} sein", "ModifiedAt": "Änderungsdatum", diff --git a/resources/i18n/el.json b/resources/i18n/el.json index 053f326256..e9ea1b5f9c 100644 --- a/resources/i18n/el.json +++ b/resources/i18n/el.json @@ -5,9 +5,12 @@ "ActiveAgentsTooltip": "Δείχνει μια επισκόπηση όλων των παραγόντων που εκτελούνται σήμερα στο σύστημα." }, "adminDeploymentPreset": { + "BootstrapScript": "Σενάριο εκκίνησης", + "BootstrapScriptPlaceholder": "Εισάγετε το σενάριο εκκίνησης που θα εκτελεστεί πριν την εκκίνηση.", "Cluster": "Σύμπλεγμα", "ClusterMode": "Λειτουργία Συμπλέγματος", "ClusterSize": "Μέγεθος Συμπλέγματος", + "ClusterSizePlaceholder": "π.χ. 2", "ConfirmDelete": "Είστε σίγουροι ότι θέλετε να διαγράψετε την προεπιλογή ανάπτυξης \"{{name}}\";", "CreatePreset": "Δημιουργία Προεπιλογής", "DeletePreset": "Διαγραφή Προεπιλογής", @@ -15,6 +18,8 @@ "DescriptionPlaceholder": "Περιγράψτε τον σκοπό αυτής της προεπιλογής ανάπτυξης.", "EditPreset": "Επεξεργασία Προεπιλογής", "Image": "Εικόνα", + "ImageRequired": "Η εικόνα είναι υποχρεωτική.", + "MultiNode": "Πολλαπλοί κόμβοι", "Name": "Όνομα", "NamePlaceholder": "π.χ. vLLM-GPU-Large", "NameRequired": "Το όνομα είναι υποχρεωτικό.", @@ -36,11 +41,17 @@ "SectionBasicInfo": "Βασικές Πληροφορίες", "SectionCluster": "Σύμπλεγμα", "SectionDeploymentDefaults": "Προεπιλογές Ανάπτυξης", + "SectionExecution": "Εκτέλεση", "SectionImage": "Εικόνα", "SectionResources": "Πόροι", + "SelectClusterMode": "Επιλέξτε λειτουργία συμπλέγματος", + "SelectImage": "Επιλέξτε εικόνα κοντέινερ", "SelectRuntimeVariant": "Επιλέξτε παραλλαγή χρόνου εκτέλεσης", "SelectStrategy": "Επιλέξτε στρατηγική", "Shmem": "Κοινή Μνήμη", + "SingleNode": "Μεμονωμένος κόμβος", + "StartupCommand": "Εντολή εκκίνησης", + "StartupCommandPlaceholder": "Εισάγετε την εντολή εκκίνησης για τον διακομιστή συμπερασμού.", "Strategy": "Στρατηγική Ανάπτυξης", "TabTitle": "Προεπιλογές Ανάπτυξης" }, @@ -1198,6 +1209,7 @@ "Inactive": "Αδρανής", "InvalidJSONFormat": "Μη έγκυρη μορφή JSON.", "LastUpdated": "Τελευταία ενημέρωση", + "Loading": "Φόρτωση...", "Manual": "Χειροκίνητο", "MaxValueNotification": "{{name}} πρέπει να είναι το μέγιστο {{max}}", "ModifiedAt": "Τελευταία τροποποίηση", diff --git a/resources/i18n/en.json b/resources/i18n/en.json index 5966f2cc14..dded6755bb 100644 --- a/resources/i18n/en.json +++ b/resources/i18n/en.json @@ -5,9 +5,12 @@ "ActiveAgentsTooltip": "Shows an at-a-glance overview of all agents currently running in the system." }, "adminDeploymentPreset": { + "BootstrapScript": "Bootstrap Script", + "BootstrapScriptPlaceholder": "Enter bootstrap script to run before startup.", "Cluster": "Cluster", "ClusterMode": "Cluster Mode", "ClusterSize": "Cluster Size", + "ClusterSizePlaceholder": "e.g., 2", "ConfirmDelete": "Are you sure you want to delete the deployment preset \"{{name}}\"?", "CreatePreset": "Create Preset", "DeletePreset": "Delete Preset", @@ -15,6 +18,8 @@ "DescriptionPlaceholder": "Describe the purpose of this deployment preset.", "EditPreset": "Edit Preset", "Image": "Image", + "ImageRequired": "Image is required.", + "MultiNode": "Multi-Node", "Name": "Name", "NamePlaceholder": "e.g., vLLM-GPU-Large", "NameRequired": "Name is required.", @@ -36,11 +41,17 @@ "SectionBasicInfo": "Basic Info", "SectionCluster": "Cluster", "SectionDeploymentDefaults": "Deployment Defaults", + "SectionExecution": "Execution", "SectionImage": "Image", "SectionResources": "Resources", + "SelectClusterMode": "Select cluster mode", + "SelectImage": "Select container image", "SelectRuntimeVariant": "Select runtime variant", "SelectStrategy": "Select strategy", "Shmem": "Shared Memory", + "SingleNode": "Single-Node", + "StartupCommand": "Startup Command", + "StartupCommandPlaceholder": "Enter the startup command for the inference server.", "Strategy": "Deployment Strategy", "TabTitle": "Deployment Presets" }, @@ -1199,6 +1210,7 @@ "Inactive": "Inactive", "InvalidJSONFormat": "Invalid JSON format.", "LastUpdated": "Last Updated", + "Loading": "Loading...", "Manual": "Manual", "MaxValueNotification": "{{name}} must be maximum {{max}}", "ModifiedAt": "Modified At", diff --git a/resources/i18n/es.json b/resources/i18n/es.json index 579e195d27..8b04408bc6 100644 --- a/resources/i18n/es.json +++ b/resources/i18n/es.json @@ -5,9 +5,12 @@ "ActiveAgentsTooltip": "Muestra una descripción general de un vistazo de todos los agentes que actualmente se ejecutan en el sistema." }, "adminDeploymentPreset": { + "BootstrapScript": "Script de inicialización", + "BootstrapScriptPlaceholder": "Ingrese el script de inicialización a ejecutar antes del inicio.", "Cluster": "Clúster", "ClusterMode": "Modo de Clúster", "ClusterSize": "Tamaño de Clúster", + "ClusterSizePlaceholder": "ej. 2", "ConfirmDelete": "Are you sure you want to delete the deployment preset \"{{name}}\"?", "CreatePreset": "Crear Preset", "DeletePreset": "Eliminar Preset", @@ -15,6 +18,8 @@ "DescriptionPlaceholder": "Describa el propósito de este preset de implementación.", "EditPreset": "Editar Preset", "Image": "Imagen", + "ImageRequired": "La imagen es obligatoria.", + "MultiNode": "Multi-nodo", "Name": "Nombre", "NamePlaceholder": "ej. vLLM-GPU-Large", "NameRequired": "El nombre es obligatorio.", @@ -36,11 +41,17 @@ "SectionBasicInfo": "Información Básica", "SectionCluster": "Clúster", "SectionDeploymentDefaults": "Valores Predeterminados de Implementación", + "SectionExecution": "Ejecución", "SectionImage": "Imagen", "SectionResources": "Recursos", + "SelectClusterMode": "Seleccionar modo de clúster", + "SelectImage": "Seleccionar imagen de contenedor", "SelectRuntimeVariant": "Seleccionar variante de runtime", "SelectStrategy": "Seleccionar estrategia", "Shmem": "Memoria Compartida", + "SingleNode": "Nodo único", + "StartupCommand": "Comando de inicio", + "StartupCommandPlaceholder": "Ingrese el comando de inicio para el servidor de inferencia.", "Strategy": "Estrategia de Implementación", "TabTitle": "Presets de Implementación" }, @@ -1198,6 +1209,7 @@ "Inactive": "Inactivo", "InvalidJSONFormat": "Formato JSON no válido.", "LastUpdated": "Última actualización", + "Loading": "Cargando...", "Manual": "Manual", "MaxValueNotification": "{{name}} debe ser máximo {{max}}", "ModifiedAt": "Fecha de modificación", diff --git a/resources/i18n/fi.json b/resources/i18n/fi.json index 8329d9b670..b8bfde376a 100644 --- a/resources/i18n/fi.json +++ b/resources/i18n/fi.json @@ -5,9 +5,12 @@ "ActiveAgentsTooltip": "Näyttää yleiskatsauksen kaikista järjestelmässä tällä hetkellä toimivista edustajista." }, "adminDeploymentPreset": { + "BootstrapScript": "Bootstrap-skripti", + "BootstrapScriptPlaceholder": "Syötä bootstrap-skripti, joka suoritetaan ennen käynnistystä.", "Cluster": "Klusteri", "ClusterMode": "Klusteritila", "ClusterSize": "Klusterin koko", + "ClusterSizePlaceholder": "esim. 2", "ConfirmDelete": "Haluatko varmasti poistaa käyttöönottoesiasetuuksen \"{{name}}\"?", "CreatePreset": "Luo esiasetus", "DeletePreset": "Poista esiasetus", @@ -15,6 +18,8 @@ "DescriptionPlaceholder": "Kuvaa tämän käyttöönottoesiasetuuksen tarkoitus.", "EditPreset": "Muokkaa esiasetusta", "Image": "Kuva", + "ImageRequired": "Kuva on pakollinen.", + "MultiNode": "Monisolmuinen", "Name": "Nimi", "NamePlaceholder": "esim. vLLM-GPU-Large", "NameRequired": "Nimi on pakollinen.", @@ -36,11 +41,17 @@ "SectionBasicInfo": "Perustiedot", "SectionCluster": "Klusteri", "SectionDeploymentDefaults": "Käyttöönottooletukset", + "SectionExecution": "Suoritus", "SectionImage": "Kuva", "SectionResources": "Resurssit", + "SelectClusterMode": "Valitse klusteritila", + "SelectImage": "Valitse kontaineri-image", "SelectRuntimeVariant": "Valitse suoritusaikavariantti", "SelectStrategy": "Valitse strategia", "Shmem": "Jaettu muisti", + "SingleNode": "Yksittäinen solmu", + "StartupCommand": "Käynnistyskomento", + "StartupCommandPlaceholder": "Syötä päättelypalvelimen käynnistyskomento.", "Strategy": "Käyttöönottostrategia", "TabTitle": "Käyttöönottoesiasetuukset" }, @@ -1198,6 +1209,7 @@ "Inactive": "Passiivinen", "InvalidJSONFormat": "Väärä JSON-muoto.", "LastUpdated": "Viimeksi päivitetty", + "Loading": "Ladataan...", "Manual": "Manuaalinen", "MaxValueNotification": "{{name}} on oltava maksimi {{max}}", "ModifiedAt": "Muokattu", diff --git a/resources/i18n/fr.json b/resources/i18n/fr.json index 83e2b10cc2..7984731f14 100644 --- a/resources/i18n/fr.json +++ b/resources/i18n/fr.json @@ -5,9 +5,12 @@ "ActiveAgentsTooltip": "Affiche un aperçu de tous les agents qui s'exécute actuellement dans le système." }, "adminDeploymentPreset": { + "BootstrapScript": "Script d'amorçage", + "BootstrapScriptPlaceholder": "Entrez le script d'amorçage à exécuter avant le démarrage.", "Cluster": "Cluster", "ClusterMode": "Mode Cluster", "ClusterSize": "Taille du Cluster", + "ClusterSizePlaceholder": "ex. 2", "ConfirmDelete": "Êtes-vous sûr de vouloir supprimer le préréglage de déploiement \"{{name}}\" ?", "CreatePreset": "Créer un Préréglage", "DeletePreset": "Supprimer le Préréglage", @@ -15,6 +18,8 @@ "DescriptionPlaceholder": "Décrivez l'objectif de ce préréglage de déploiement.", "EditPreset": "Modifier le Préréglage", "Image": "Image", + "ImageRequired": "L'image est obligatoire.", + "MultiNode": "Multi-nœud", "Name": "Nom", "NamePlaceholder": "ex. vLLM-GPU-Large", "NameRequired": "Le nom est obligatoire.", @@ -36,11 +41,17 @@ "SectionBasicInfo": "Informations de Base", "SectionCluster": "Cluster", "SectionDeploymentDefaults": "Valeurs par Défaut du Déploiement", + "SectionExecution": "Exécution", "SectionImage": "Image", "SectionResources": "Ressources", + "SelectClusterMode": "Sélectionner le mode cluster", + "SelectImage": "Sélectionner une image de conteneur", "SelectRuntimeVariant": "Sélectionner une variante runtime", "SelectStrategy": "Sélectionner une stratégie", "Shmem": "Mémoire Partagée", + "SingleNode": "Nœud unique", + "StartupCommand": "Commande de démarrage", + "StartupCommandPlaceholder": "Entrez la commande de démarrage pour le serveur d'inférence.", "Strategy": "Stratégie de Déploiement", "TabTitle": "Préréglages de Déploiement" }, @@ -1199,6 +1210,7 @@ "Inactive": "Inactif", "InvalidJSONFormat": "Format JSON non valide.", "LastUpdated": "Dernière mise à jour", + "Loading": "Chargement...", "Manual": "Manuel", "MaxValueNotification": "{{nom}} doit être maximum {{max}}", "ModifiedAt": "Date de modification", diff --git a/resources/i18n/id.json b/resources/i18n/id.json index 69d67fd676..3b8bed7da0 100644 --- a/resources/i18n/id.json +++ b/resources/i18n/id.json @@ -5,9 +5,12 @@ "ActiveAgentsTooltip": "Menunjukkan ikhtisar sekilas dari semua agen yang saat ini berjalan dalam sistem." }, "adminDeploymentPreset": { + "BootstrapScript": "Skrip bootstrap", + "BootstrapScriptPlaceholder": "Masukkan skrip bootstrap yang akan dijalankan sebelum startup.", "Cluster": "Kluster", "ClusterMode": "Mode Kluster", "ClusterSize": "Ukuran Kluster", + "ClusterSizePlaceholder": "mis. 2", "ConfirmDelete": "Apakah Anda yakin ingin menghapus preset deployment \"{{name}}\"?", "CreatePreset": "Buat Preset", "DeletePreset": "Hapus Preset", @@ -15,6 +18,8 @@ "DescriptionPlaceholder": "Jelaskan tujuan dari preset deployment ini.", "EditPreset": "Edit Preset", "Image": "Image", + "ImageRequired": "Image wajib diisi.", + "MultiNode": "Multi-Node", "Name": "Nama", "NamePlaceholder": "mis. vLLM-GPU-Large", "NameRequired": "Nama wajib diisi.", @@ -36,11 +41,17 @@ "SectionBasicInfo": "Info Dasar", "SectionCluster": "Kluster", "SectionDeploymentDefaults": "Default Deployment", + "SectionExecution": "Eksekusi", "SectionImage": "Image", "SectionResources": "Sumber Daya", + "SelectClusterMode": "Pilih mode kluster", + "SelectImage": "Pilih container image", "SelectRuntimeVariant": "Pilih varian runtime", "SelectStrategy": "Pilih strategi", "Shmem": "Memori Bersama", + "SingleNode": "Single-Node", + "StartupCommand": "Perintah startup", + "StartupCommandPlaceholder": "Masukkan perintah startup untuk server inferensi.", "Strategy": "Strategi Deployment", "TabTitle": "Preset Deployment" }, @@ -1201,6 +1212,7 @@ "Inactive": "Tidak aktif", "InvalidJSONFormat": "Format JSON tidak valid.", "LastUpdated": "Terakhir diperbarui", + "Loading": "Memuat...", "Manual": "Manual", "MaxValueNotification": "{{nama}} harus maksimal {{max}}", "ModifiedAt": "Tanggal diubah", diff --git a/resources/i18n/it.json b/resources/i18n/it.json index 5753bacae9..9cf247cda6 100644 --- a/resources/i18n/it.json +++ b/resources/i18n/it.json @@ -5,9 +5,12 @@ "ActiveAgentsTooltip": "Mostra una panoramica a colpo d'occhio di tutti gli agenti attualmente in esecuzione nel sistema." }, "adminDeploymentPreset": { + "BootstrapScript": "Script di avvio", + "BootstrapScriptPlaceholder": "Inserisci lo script di avvio da eseguire prima dell'avvio.", "Cluster": "Cluster", "ClusterMode": "Modalità Cluster", "ClusterSize": "Dimensione Cluster", + "ClusterSizePlaceholder": "es. 2", "ConfirmDelete": "Sei sicuro di voler eliminare la preimpostazione di distribuzione \"{{name}}\"?", "CreatePreset": "Crea Preimpostazione", "DeletePreset": "Elimina Preimpostazione", @@ -15,6 +18,8 @@ "DescriptionPlaceholder": "Descrivi lo scopo di questa preimpostazione di distribuzione.", "EditPreset": "Modifica Preimpostazione", "Image": "Immagine", + "ImageRequired": "L'immagine è obbligatoria.", + "MultiNode": "Multi-nodo", "Name": "Nome", "NamePlaceholder": "es. vLLM-GPU-Large", "NameRequired": "Il nome è obbligatorio.", @@ -36,11 +41,17 @@ "SectionBasicInfo": "Informazioni di Base", "SectionCluster": "Cluster", "SectionDeploymentDefaults": "Impostazioni Predefinite di Distribuzione", + "SectionExecution": "Esecuzione", "SectionImage": "Immagine", "SectionResources": "Risorse", + "SelectClusterMode": "Seleziona modalità cluster", + "SelectImage": "Seleziona immagine container", "SelectRuntimeVariant": "Seleziona variante runtime", "SelectStrategy": "Seleziona strategia", "Shmem": "Memoria Condivisa", + "SingleNode": "Nodo singolo", + "StartupCommand": "Comando di avvio", + "StartupCommandPlaceholder": "Inserisci il comando di avvio per il server di inferenza.", "Strategy": "Strategia di Distribuzione", "TabTitle": "Preimpostazioni di Distribuzione" }, @@ -1198,6 +1209,7 @@ "Inactive": "Inattivo", "InvalidJSONFormat": "Formato JSON non valido.", "LastUpdated": "Ultimo aggiornamento", + "Loading": "Caricamento...", "Manual": "Manuale", "MaxValueNotification": "{{name}} deve essere massimo {{max}}", "ModifiedAt": "Ultima modifica", diff --git a/resources/i18n/ja.json b/resources/i18n/ja.json index ce9f6ed1c6..4c9a9bb417 100644 --- a/resources/i18n/ja.json +++ b/resources/i18n/ja.json @@ -5,9 +5,12 @@ "ActiveAgentsTooltip": "現在システムで実行されているすべてのエージェントの概要を示しています。" }, "adminDeploymentPreset": { + "BootstrapScript": "ブートストラップスクリプト", + "BootstrapScriptPlaceholder": "起動前に実行するブートストラップスクリプトを入力してください。", "Cluster": "クラスター", "ClusterMode": "クラスターモード", "ClusterSize": "クラスターサイズ", + "ClusterSizePlaceholder": "例: 2", "ConfirmDelete": "デプロイメントプリセット「{{name}}」を削除してもよろしいですか?", "CreatePreset": "プリセットを作成", "DeletePreset": "プリセットを削除", @@ -15,6 +18,8 @@ "DescriptionPlaceholder": "このデプロイメントプリセットの目的を説明してください。", "EditPreset": "プリセットを編集", "Image": "イメージ", + "ImageRequired": "イメージは必須です。", + "MultiNode": "マルチノード", "Name": "名前", "NamePlaceholder": "例: vLLM-GPU-Large", "NameRequired": "名前は必須です。", @@ -36,11 +41,17 @@ "SectionBasicInfo": "基本情報", "SectionCluster": "クラスター", "SectionDeploymentDefaults": "デプロイメントデフォルト", + "SectionExecution": "実行", "SectionImage": "イメージ", "SectionResources": "リソース", + "SelectClusterMode": "クラスターモードを選択", + "SelectImage": "コンテナイメージを選択", "SelectRuntimeVariant": "ランタイムバリアントを選択", "SelectStrategy": "戦略を選択", "Shmem": "共有メモリ", + "SingleNode": "シングルノード", + "StartupCommand": "起動コマンド", + "StartupCommandPlaceholder": "推論サーバーの起動コマンドを入力してください。", "Strategy": "デプロイメント戦略", "TabTitle": "デプロイメントプリセット" }, @@ -1200,6 +1211,7 @@ "Inactive": "非アクティブ", "InvalidJSONFormat": "JSON形式が間違っています。", "LastUpdated": "最終更新日", + "Loading": "読み込み中...", "Manual": "マニュアル", "MaxValueNotification": "{{ name }}最大値は{{ max }}です", "ModifiedAt": "更新日", diff --git a/resources/i18n/ko.json b/resources/i18n/ko.json index 1b997470d2..91d0d23688 100644 --- a/resources/i18n/ko.json +++ b/resources/i18n/ko.json @@ -5,9 +5,12 @@ "ActiveAgentsTooltip": "현재 시스템에서 실행 중인 모든 에이전트 개요를 표시합니다." }, "adminDeploymentPreset": { + "BootstrapScript": "부트스트랩 스크립트", + "BootstrapScriptPlaceholder": "시작 전에 실행할 부트스트랩 스크립트를 입력하세요.", "Cluster": "클러스터", "ClusterMode": "클러스터 모드", "ClusterSize": "클러스터 크기", + "ClusterSizePlaceholder": "예: 2", "ConfirmDelete": "배포 프리셋 \"{{name}}\"을(를) 삭제하시겠습니까?", "CreatePreset": "프리셋 생성", "DeletePreset": "프리셋 삭제", @@ -15,6 +18,8 @@ "DescriptionPlaceholder": "이 배포 프리셋의 목적을 설명하세요.", "EditPreset": "프리셋 편집", "Image": "이미지", + "ImageRequired": "이미지는 필수입니다.", + "MultiNode": "멀티 노드", "Name": "이름", "NamePlaceholder": "예: vLLM-GPU-Large", "NameRequired": "이름은 필수입니다.", @@ -36,11 +41,17 @@ "SectionBasicInfo": "기본 정보", "SectionCluster": "클러스터", "SectionDeploymentDefaults": "배포 기본값", + "SectionExecution": "실행", "SectionImage": "이미지", "SectionResources": "리소스", + "SelectClusterMode": "클러스터 모드 선택", + "SelectImage": "컨테이너 이미지 선택", "SelectRuntimeVariant": "런타임 변형 선택", "SelectStrategy": "전략 선택", "Shmem": "공유 메모리", + "SingleNode": "싱글 노드", + "StartupCommand": "시작 명령", + "StartupCommandPlaceholder": "추론 서버의 시작 명령을 입력하세요.", "Strategy": "배포 전략", "TabTitle": "배포 프리셋" }, @@ -1201,6 +1212,7 @@ "Inactive": "비활성", "InvalidJSONFormat": "잘못된 JSON 형식입니다.", "LastUpdated": "최근 업데이트", + "Loading": "로딩 중...", "Manual": "수동", "MaxValueNotification": "{{ name }} 최대 값은 {{ max }}입니다", "ModifiedAt": "수정일", diff --git a/resources/i18n/mn.json b/resources/i18n/mn.json index 795d623389..c53522545e 100644 --- a/resources/i18n/mn.json +++ b/resources/i18n/mn.json @@ -5,9 +5,12 @@ "ActiveAgentsTooltip": "Системд ажиллаж байгаа бүх агентуудын тоймыг нэг дор харуулна." }, "adminDeploymentPreset": { + "BootstrapScript": "Ачаалах скрипт", + "BootstrapScriptPlaceholder": "Эхлэхийн өмнө ажиллуулах ачаалах скриптийг оруулна уу.", "Cluster": "Кластер", "ClusterMode": "Кластерийн горим", "ClusterSize": "Кластерийн хэмжээ", + "ClusterSizePlaceholder": "жн: 2", "ConfirmDelete": "\"{{name}}\" байршуулалтын урьдчилсан тохиргоог устгахдаа итгэлтэй байна уу?", "CreatePreset": "Урьдчилсан тохиргоо үүсгэх", "DeletePreset": "Урьдчилсан тохиргоо устгах", @@ -15,6 +18,8 @@ "DescriptionPlaceholder": "Энэ байршуулалтын урьдчилсан тохиргооны зорилгыг тайлбарлана уу.", "EditPreset": "Урьдчилсан тохиргоо засах", "Image": "Дүрс", + "ImageRequired": "Дүрс заавал шаардлагатай.", + "MultiNode": "Олон зангилаа", "Name": "Нэр", "NamePlaceholder": "жн: vLLM-GPU-Large", "NameRequired": "Нэр заавал бөглөх ёстой.", @@ -36,11 +41,17 @@ "SectionBasicInfo": "Үндсэн мэдээлэл", "SectionCluster": "Кластер", "SectionDeploymentDefaults": "Байршуулалтын өгөгдмөл утгууд", + "SectionExecution": "Гүйцэтгэл", "SectionImage": "Дүрс", "SectionResources": "Нөөц", + "SelectClusterMode": "Кластерийн горим сонгох", + "SelectImage": "Контейнер дүрс сонгох", "SelectRuntimeVariant": "Ажиллах орчны хувилбар сонгох", "SelectStrategy": "Стратеги сонгох", "Shmem": "Хуваалцсан санах ой", + "SingleNode": "Нэг зангилаа", + "StartupCommand": "Эхлэх тушаал", + "StartupCommandPlaceholder": "Дүгнэлтийн серверийн эхлэх тушаалыг оруулна уу.", "Strategy": "Байршуулалтын стратеги", "TabTitle": "Байршуулалтын урьдчилсан тохиргоо" }, @@ -1199,6 +1210,7 @@ "Inactive": "Идэвхгүй", "InvalidJSONFormat": "Буруу JSON формат.", "LastUpdated": "Өнөөхээр нь онуулсан өдөр", + "Loading": "Ачаалж байна...", "Manual": "Гарын авлага", "MaxValueNotification": "{{name}} хамгийн ихдээ {{max}} байх ёстой", "ModifiedAt": "Өөрчлөлтийн огноо", diff --git a/resources/i18n/ms.json b/resources/i18n/ms.json index b68560883c..b357356a06 100644 --- a/resources/i18n/ms.json +++ b/resources/i18n/ms.json @@ -5,9 +5,12 @@ "ActiveAgentsTooltip": "Menunjukkan gambaran keseluruhan sepintas lalu semua ejen yang sedang berjalan dalam sistem." }, "adminDeploymentPreset": { + "BootstrapScript": "Skrip bootstrap", + "BootstrapScriptPlaceholder": "Masukkan skrip bootstrap untuk dijalankan sebelum permulaan.", "Cluster": "Kluster", "ClusterMode": "Mod Kluster", "ClusterSize": "Saiz Kluster", + "ClusterSizePlaceholder": "cth. 2", "ConfirmDelete": "Adakah anda pasti ingin memadam praset penggunaan \"{{name}}\"?", "CreatePreset": "Cipta Praset", "DeletePreset": "Padam Praset", @@ -15,6 +18,8 @@ "DescriptionPlaceholder": "Terangkan tujuan praset penggunaan ini.", "EditPreset": "Edit Praset", "Image": "Imej", + "ImageRequired": "Imej diperlukan.", + "MultiNode": "Berbilang Nod", "Name": "Nama", "NamePlaceholder": "cth. vLLM-GPU-Large", "NameRequired": "Nama diperlukan.", @@ -36,11 +41,17 @@ "SectionBasicInfo": "Maklumat Asas", "SectionCluster": "Kluster", "SectionDeploymentDefaults": "Lalai Penggunaan", + "SectionExecution": "Pelaksanaan", "SectionImage": "Imej", "SectionResources": "Sumber", + "SelectClusterMode": "Pilih mod kluster", + "SelectImage": "Pilih imej kontena", "SelectRuntimeVariant": "Pilih varian runtime", "SelectStrategy": "Pilih strategi", "Shmem": "Memori Dikongsi", + "SingleNode": "Nod Tunggal", + "StartupCommand": "Perintah permulaan", + "StartupCommandPlaceholder": "Masukkan perintah permulaan untuk pelayan inferens.", "Strategy": "Strategi Penggunaan", "TabTitle": "Praset Penggunaan" }, @@ -1198,6 +1209,7 @@ "Inactive": "Tidak aktif", "InvalidJSONFormat": "Format JSON yang salah.", "LastUpdated": "Dikemas kini terakhir", + "Loading": "Memuatkan...", "Manual": "Manual", "MaxValueNotification": "{{nama}} mestilah maksimum {{maks}}", "ModifiedAt": "Tarikh diubah", diff --git a/resources/i18n/pl.json b/resources/i18n/pl.json index a9fb3bc59c..4d6c43689a 100644 --- a/resources/i18n/pl.json +++ b/resources/i18n/pl.json @@ -5,9 +5,12 @@ "ActiveAgentsTooltip": "Pokazuje przegląd w skrócie wszystkich agentów obecnie działających w systemie." }, "adminDeploymentPreset": { + "BootstrapScript": "Skrypt bootstrap", + "BootstrapScriptPlaceholder": "Wprowadź skrypt bootstrap do uruchomienia przed startem.", "Cluster": "Klaster", "ClusterMode": "Tryb klastra", "ClusterSize": "Rozmiar klastra", + "ClusterSizePlaceholder": "np. 2", "ConfirmDelete": "Czy na pewno chcesz usunąć ustawienie wstępne wdrożenia \"{{name}}\"?", "CreatePreset": "Utwórz ustawienie wstępne", "DeletePreset": "Usuń ustawienie wstępne", @@ -15,6 +18,8 @@ "DescriptionPlaceholder": "Opisz cel tego ustawienia wstępnego wdrożenia.", "EditPreset": "Edytuj ustawienie wstępne", "Image": "Obraz", + "ImageRequired": "Obraz jest wymagany.", + "MultiNode": "Wielowęzłowy", "Name": "Nazwa", "NamePlaceholder": "np. vLLM-GPU-Large", "NameRequired": "Nazwa jest wymagana.", @@ -36,11 +41,17 @@ "SectionBasicInfo": "Podstawowe informacje", "SectionCluster": "Klaster", "SectionDeploymentDefaults": "Domyślne ustawienia wdrożenia", + "SectionExecution": "Wykonanie", "SectionImage": "Obraz", "SectionResources": "Zasoby", + "SelectClusterMode": "Wybierz tryb klastra", + "SelectImage": "Wybierz obraz kontenera", "SelectRuntimeVariant": "Wybierz wariant środowiska uruchomieniowego", "SelectStrategy": "Wybierz strategię", "Shmem": "Pamięć współdzielona", + "SingleNode": "Jednowęzłowy", + "StartupCommand": "Polecenie uruchamiania", + "StartupCommandPlaceholder": "Wprowadź polecenie uruchamiania serwera wnioskowania.", "Strategy": "Strategia wdrożenia", "TabTitle": "Ustawienia Wstępne Wdrożenia" }, @@ -1199,6 +1210,7 @@ "Inactive": "Nieaktywny", "InvalidJSONFormat": "Nieprawidłowy format JSON.", "LastUpdated": "Ostatnia aktualizacja", + "Loading": "Ładowanie...", "Manual": "Podręcznik", "MaxValueNotification": "{{name}} musi być maksymalna {{max}}.", "ModifiedAt": "Data modyfikacji", diff --git a/resources/i18n/pt-BR.json b/resources/i18n/pt-BR.json index e3e2139d4c..8f16f43098 100644 --- a/resources/i18n/pt-BR.json +++ b/resources/i18n/pt-BR.json @@ -5,9 +5,12 @@ "ActiveAgentsTooltip": "Mostra uma visão geral de todos os agentes atualmente em execução no sistema." }, "adminDeploymentPreset": { + "BootstrapScript": "Script de inicialização", + "BootstrapScriptPlaceholder": "Insira o script de inicialização a ser executado antes da inicialização.", "Cluster": "Cluster", "ClusterMode": "Modo de Cluster", "ClusterSize": "Tamanho do Cluster", + "ClusterSizePlaceholder": "ex. 2", "ConfirmDelete": "Tem certeza de que deseja excluir a predefinição de implantação \"{{name}}\"?", "CreatePreset": "Criar Predefinição", "DeletePreset": "Excluir Predefinição", @@ -15,6 +18,8 @@ "DescriptionPlaceholder": "Descreva o propósito desta predefinição de implantação.", "EditPreset": "Editar Predefinição", "Image": "Imagem", + "ImageRequired": "A imagem é obrigatória.", + "MultiNode": "Multi-nó", "Name": "Nome", "NamePlaceholder": "ex. vLLM-GPU-Large", "NameRequired": "O nome é obrigatório.", @@ -36,11 +41,17 @@ "SectionBasicInfo": "Informações Básicas", "SectionCluster": "Cluster", "SectionDeploymentDefaults": "Padrões de Implantação", + "SectionExecution": "Execução", "SectionImage": "Imagem", "SectionResources": "Recursos", + "SelectClusterMode": "Selecionar modo de cluster", + "SelectImage": "Selecionar imagem de contêiner", "SelectRuntimeVariant": "Selecionar variante de runtime", "SelectStrategy": "Selecionar estratégia", "Shmem": "Memória Compartilhada", + "SingleNode": "Nó único", + "StartupCommand": "Comando de inicialização", + "StartupCommandPlaceholder": "Insira o comando de inicialização para o servidor de inferência.", "Strategy": "Estratégia de Implantação", "TabTitle": "Predefinições de Implantação" }, @@ -1198,6 +1209,7 @@ "Inactive": "Inativo", "InvalidJSONFormat": "Formato JSON inválido.", "LastUpdated": "Última atualização", + "Loading": "Carregando...", "Manual": "Manual", "MaxValueNotification": "{{name}} deve ser o máximo {{max}}", "ModifiedAt": "Modificado em", diff --git a/resources/i18n/pt.json b/resources/i18n/pt.json index 1eec8efb8b..dfe7c04562 100644 --- a/resources/i18n/pt.json +++ b/resources/i18n/pt.json @@ -5,9 +5,12 @@ "ActiveAgentsTooltip": "Mostra uma visão geral de todos os agentes atualmente em execução no sistema." }, "adminDeploymentPreset": { + "BootstrapScript": "Script de arranque", + "BootstrapScriptPlaceholder": "Introduza o script de arranque a executar antes do início.", "Cluster": "Cluster", "ClusterMode": "Modo de Cluster", "ClusterSize": "Tamanho do Cluster", + "ClusterSizePlaceholder": "ex. 2", "ConfirmDelete": "Tem a certeza de que deseja eliminar a predefinição de implementação \"{{name}}\"?", "CreatePreset": "Criar Predefinição", "DeletePreset": "Eliminar Predefinição", @@ -15,6 +18,8 @@ "DescriptionPlaceholder": "Descreva o propósito desta predefinição de implementação.", "EditPreset": "Editar Predefinição", "Image": "Imagem", + "ImageRequired": "A imagem é obrigatória.", + "MultiNode": "Multi-nó", "Name": "Nome", "NamePlaceholder": "ex. vLLM-GPU-Large", "NameRequired": "O nome é obrigatório.", @@ -36,11 +41,17 @@ "SectionBasicInfo": "Informações Básicas", "SectionCluster": "Cluster", "SectionDeploymentDefaults": "Predefinições de Implementação", + "SectionExecution": "Execução", "SectionImage": "Imagem", "SectionResources": "Recursos", + "SelectClusterMode": "Selecionar modo de cluster", + "SelectImage": "Selecionar imagem de contentor", "SelectRuntimeVariant": "Selecionar variante de runtime", "SelectStrategy": "Selecionar estratégia", "Shmem": "Memória Partilhada", + "SingleNode": "Nó único", + "StartupCommand": "Comando de arranque", + "StartupCommandPlaceholder": "Introduza o comando de arranque para o servidor de inferência.", "Strategy": "Estratégia de Implementação", "TabTitle": "Predefinições de Implementação" }, @@ -1200,6 +1211,7 @@ "Inactive": "Inativo", "InvalidJSONFormat": "Formato JSON inválido.", "LastUpdated": "Última atualização", + "Loading": "A carregar...", "Manual": "Manual", "MaxValueNotification": "{{name}} deve ser o máximo {{max}}", "ModifiedAt": "Última modificação", diff --git a/resources/i18n/ru.json b/resources/i18n/ru.json index 984cff4484..665ed8a1bb 100644 --- a/resources/i18n/ru.json +++ b/resources/i18n/ru.json @@ -5,9 +5,12 @@ "ActiveAgentsTooltip": "Показывает обзор всех агентов, работающих в настоящее время в системе." }, "adminDeploymentPreset": { + "BootstrapScript": "Скрипт начальной загрузки", + "BootstrapScriptPlaceholder": "Введите скрипт начальной загрузки, который запустится перед стартом.", "Cluster": "Кластер", "ClusterMode": "Режим кластера", "ClusterSize": "Размер кластера", + "ClusterSizePlaceholder": "напр. 2", "ConfirmDelete": "Вы уверены, что хотите удалить предустановку развёртывания \"{{name}}\"?", "CreatePreset": "Создать предустановку", "DeletePreset": "Удалить предустановку", @@ -15,6 +18,8 @@ "DescriptionPlaceholder": "Опишите назначение этой предустановки развёртывания.", "EditPreset": "Редактировать предустановку", "Image": "Образ", + "ImageRequired": "Образ обязателен.", + "MultiNode": "Многоузловой", "Name": "Имя", "NamePlaceholder": "напр. vLLM-GPU-Large", "NameRequired": "Имя обязательно.", @@ -36,11 +41,17 @@ "SectionBasicInfo": "Основная информация", "SectionCluster": "Кластер", "SectionDeploymentDefaults": "Настройки по умолчанию", + "SectionExecution": "Выполнение", "SectionImage": "Образ", "SectionResources": "Ресурсы", + "SelectClusterMode": "Выбрать режим кластера", + "SelectImage": "Выбрать образ контейнера", "SelectRuntimeVariant": "Выбрать вариант среды выполнения", "SelectStrategy": "Выбрать стратегию", "Shmem": "Общая память", + "SingleNode": "Одноузловой", + "StartupCommand": "Команда запуска", + "StartupCommandPlaceholder": "Введите команду запуска для сервера вывода.", "Strategy": "Стратегия развёртывания", "TabTitle": "Предустановки развёртывания" }, @@ -1198,6 +1209,7 @@ "Inactive": "Неактивный", "InvalidJSONFormat": "Неверный формат JSON.", "LastUpdated": "Последнее обновление", + "Loading": "Загрузка...", "Manual": "Руководство", "MaxValueNotification": "{{name}} должен быть максимальным {{max}}", "ModifiedAt": "Дата изменения", diff --git a/resources/i18n/th.json b/resources/i18n/th.json index 0fd8cce1ca..7d0526f8cf 100644 --- a/resources/i18n/th.json +++ b/resources/i18n/th.json @@ -5,9 +5,12 @@ "ActiveAgentsTooltip": "แสดงภาพรวม at-a-glance ของตัวแทนทั้งหมดที่ทำงานอยู่ในระบบ" }, "adminDeploymentPreset": { + "BootstrapScript": "สคริปต์บูตสแตรป", + "BootstrapScriptPlaceholder": "ป้อนสคริปต์บูตสแตรปที่จะรันก่อนเริ่มต้น", "Cluster": "คลัสเตอร์", "ClusterMode": "โหมดคลัสเตอร์", "ClusterSize": "ขนาดคลัสเตอร์", + "ClusterSizePlaceholder": "เช่น 2", "ConfirmDelete": "คุณแน่ใจหรือไม่ว่าต้องการลบค่าตั้งล่วงหน้าการปรับใช้ \"{{name}}\"?", "CreatePreset": "สร้างค่าตั้งล่วงหน้า", "DeletePreset": "ลบค่าตั้งล่วงหน้า", @@ -15,6 +18,8 @@ "DescriptionPlaceholder": "อธิบายวัตถุประสงค์ของค่าตั้งล่วงหน้าการปรับใช้นี้", "EditPreset": "แก้ไขค่าตั้งล่วงหน้า", "Image": "อิมเมจ", + "ImageRequired": "จำเป็นต้องระบุอิมเมจ", + "MultiNode": "หลายโหนด", "Name": "ชื่อ", "NamePlaceholder": "เช่น vLLM-GPU-Large", "NameRequired": "ชื่อเป็นสิ่งจำเป็น", @@ -36,11 +41,17 @@ "SectionBasicInfo": "ข้อมูลพื้นฐาน", "SectionCluster": "คลัสเตอร์", "SectionDeploymentDefaults": "ค่าเริ่มต้นการปรับใช้", + "SectionExecution": "การดำเนินการ", "SectionImage": "อิมเมจ", "SectionResources": "ทรัพยากร", + "SelectClusterMode": "เลือกโหมดคลัสเตอร์", + "SelectImage": "เลือกอิมเมจคอนเทนเนอร์", "SelectRuntimeVariant": "เลือกรูปแบบรันไทม์", "SelectStrategy": "เลือกกลยุทธ์", "Shmem": "หน่วยความจำที่ใช้ร่วมกัน", + "SingleNode": "โหนดเดียว", + "StartupCommand": "คำสั่งเริ่มต้น", + "StartupCommandPlaceholder": "ป้อนคำสั่งเริ่มต้นสำหรับเซิร์ฟเวอร์อนุมาน", "Strategy": "กลยุทธ์การปรับใช้", "TabTitle": "ค่าตั้งล่วงหน้าการปรับใช้" }, @@ -1200,6 +1211,7 @@ "Inactive": "ไม่ทำงาน", "InvalidJSONFormat": "รูปแบบ JSON ไม่ถูกต้อง", "LastUpdated": "อัปเดตล่าสุด", + "Loading": "กำลังโหลด...", "Manual": "คู่มือ", "MaxValueNotification": "{{name}} ต้องมีค่าสูงสุด {{max}}", "ModifiedAt": "วันที่แก้ไข", diff --git a/resources/i18n/tr.json b/resources/i18n/tr.json index 26173b0548..6275403ee8 100644 --- a/resources/i18n/tr.json +++ b/resources/i18n/tr.json @@ -5,9 +5,12 @@ "ActiveAgentsTooltip": "Şu anda sistemde çalışan tüm ajanlara bir bakışta genel bir bakış gösterir." }, "adminDeploymentPreset": { + "BootstrapScript": "Önyükleme betiği", + "BootstrapScriptPlaceholder": "Başlatmadan önce çalıştırılacak önyükleme betiğini girin.", "Cluster": "Küme", "ClusterMode": "Küme Modu", "ClusterSize": "Küme Boyutu", + "ClusterSizePlaceholder": "örn. 2", "ConfirmDelete": "\"{{name}}\" dağıtım ön ayarını silmek istediğinizden emin misiniz?", "CreatePreset": "Ön Ayar Oluştur", "DeletePreset": "Ön Ayarı Sil", @@ -15,6 +18,8 @@ "DescriptionPlaceholder": "Bu dağıtım ön ayarının amacını açıklayın.", "EditPreset": "Ön Ayarı Düzenle", "Image": "İmaj", + "ImageRequired": "İmaj zorunludur.", + "MultiNode": "Çok düğümlü", "Name": "Ad", "NamePlaceholder": "örn. vLLM-GPU-Large", "NameRequired": "Ad zorunludur.", @@ -36,11 +41,17 @@ "SectionBasicInfo": "Temel Bilgiler", "SectionCluster": "Küme", "SectionDeploymentDefaults": "Dağıtım Varsayılanları", + "SectionExecution": "Yürütme", "SectionImage": "İmaj", "SectionResources": "Kaynaklar", + "SelectClusterMode": "Küme modunu seçin", + "SelectImage": "Konteyner imajı seçin", "SelectRuntimeVariant": "Çalışma zamanı varyantı seçin", "SelectStrategy": "Strateji seçin", "Shmem": "Paylaşılan Bellek", + "SingleNode": "Tek düğümlü", + "StartupCommand": "Başlatma komutu", + "StartupCommandPlaceholder": "Çıkarım sunucusu için başlatma komutunu girin.", "Strategy": "Dağıtım Stratejisi", "TabTitle": "Dağıtım Ön Ayarları" }, @@ -1198,6 +1209,7 @@ "Inactive": "Aktif olmayan", "InvalidJSONFormat": "Geçersiz JSON biçimi.", "LastUpdated": "Son Güncelleme", + "Loading": "Yükleniyor...", "Manual": "El Kitabı", "MaxValueNotification": "{{name}} maksimum {{max}} olmalıdır", "ModifiedAt": "Değiştirilme tarihi", diff --git a/resources/i18n/vi.json b/resources/i18n/vi.json index b3bd0fb529..0499ae2770 100644 --- a/resources/i18n/vi.json +++ b/resources/i18n/vi.json @@ -5,9 +5,12 @@ "ActiveAgentsTooltip": "Hiển thị tổng quan at-a-glance của tất cả các tác nhân hiện đang chạy trong hệ thống." }, "adminDeploymentPreset": { + "BootstrapScript": "Tập lệnh bootstrap", + "BootstrapScriptPlaceholder": "Nhập tập lệnh bootstrap để chạy trước khi khởi động.", "Cluster": "Cụm", "ClusterMode": "Chế độ cụm", "ClusterSize": "Kích thước cụm", + "ClusterSizePlaceholder": "vd: 2", "ConfirmDelete": "Bạn có chắc chắn muốn xóa cài đặt sẵn triển khai \"{{name}}\" không?", "CreatePreset": "Tạo cài đặt sẵn", "DeletePreset": "Xóa cài đặt sẵn", @@ -15,6 +18,8 @@ "DescriptionPlaceholder": "Mô tả mục đích của cài đặt sẵn triển khai này.", "EditPreset": "Chỉnh sửa cài đặt sẵn", "Image": "Image", + "ImageRequired": "Image là bắt buộc.", + "MultiNode": "Đa nút", "Name": "Tên", "NamePlaceholder": "vd: vLLM-GPU-Large", "NameRequired": "Tên là bắt buộc.", @@ -36,11 +41,17 @@ "SectionBasicInfo": "Thông tin cơ bản", "SectionCluster": "Cụm", "SectionDeploymentDefaults": "Mặc định triển khai", + "SectionExecution": "Thực thi", "SectionImage": "Image", "SectionResources": "Tài nguyên", + "SelectClusterMode": "Chọn chế độ cụm", + "SelectImage": "Chọn container image", "SelectRuntimeVariant": "Chọn biến thể runtime", "SelectStrategy": "Chọn chiến lược", "Shmem": "Bộ nhớ chia sẻ", + "SingleNode": "Nút đơn", + "StartupCommand": "Lệnh khởi động", + "StartupCommandPlaceholder": "Nhập lệnh khởi động cho máy chủ suy luận.", "Strategy": "Chiến lược triển khai", "TabTitle": "Cài đặt sẵn triển khai" }, @@ -1200,6 +1211,7 @@ "Inactive": "Không hoạt động", "InvalidJSONFormat": "Định dạng JSON không chính xác.", "LastUpdated": "Cập nhật lần cuối", + "Loading": "Đang tải...", "Manual": "Thủ công", "MaxValueNotification": "{{name}} phải tối đa {{max}}", "ModifiedAt": "Ngày chỉnh sửa", diff --git a/resources/i18n/zh-CN.json b/resources/i18n/zh-CN.json index 3066f0bc75..a073813da0 100644 --- a/resources/i18n/zh-CN.json +++ b/resources/i18n/zh-CN.json @@ -5,9 +5,12 @@ "ActiveAgentsTooltip": "显示了当前在系统中运行的所有代理的一目了然概述。" }, "adminDeploymentPreset": { + "BootstrapScript": "引导脚本", + "BootstrapScriptPlaceholder": "输入启动前运行的引导脚本。", "Cluster": "集群", "ClusterMode": "集群模式", "ClusterSize": "集群大小", + "ClusterSizePlaceholder": "例如:2", "ConfirmDelete": "确定要删除部署预设\"{{name}}\"吗?", "CreatePreset": "创建预设", "DeletePreset": "删除预设", @@ -15,6 +18,8 @@ "DescriptionPlaceholder": "描述此部署预设的用途。", "EditPreset": "编辑预设", "Image": "镜像", + "ImageRequired": "镜像为必填项。", + "MultiNode": "多节点", "Name": "名称", "NamePlaceholder": "例如:vLLM-GPU-Large", "NameRequired": "名称为必填项。", @@ -36,11 +41,17 @@ "SectionBasicInfo": "基本信息", "SectionCluster": "集群", "SectionDeploymentDefaults": "部署默认值", + "SectionExecution": "执行", "SectionImage": "镜像", "SectionResources": "资源", + "SelectClusterMode": "选择集群模式", + "SelectImage": "选择容器镜像", "SelectRuntimeVariant": "选择运行时变体", "SelectStrategy": "选择策略", "Shmem": "共享内存", + "SingleNode": "单节点", + "StartupCommand": "启动命令", + "StartupCommandPlaceholder": "输入推理服务器的启动命令。", "Strategy": "部署策略", "TabTitle": "部署预设" }, @@ -1200,6 +1211,7 @@ "Inactive": "不活动", "InvalidJSONFormat": "JSON 格式无效。", "LastUpdated": "最后更新", + "Loading": "加载中...", "Manual": "手册", "MaxValueNotification": "{{name}} 必须是最大值 {{max}}", "ModifiedAt": "修改日期", diff --git a/resources/i18n/zh-TW.json b/resources/i18n/zh-TW.json index eefb3e33e0..173d2dc9e5 100644 --- a/resources/i18n/zh-TW.json +++ b/resources/i18n/zh-TW.json @@ -5,9 +5,12 @@ "ActiveAgentsTooltip": "顯示了當前在系統中運行的所有代理的一目了然的概述。" }, "adminDeploymentPreset": { + "BootstrapScript": "引導腳本", + "BootstrapScriptPlaceholder": "輸入啟動前執行的引導腳本。", "Cluster": "叢集", "ClusterMode": "叢集模式", "ClusterSize": "叢集大小", + "ClusterSizePlaceholder": "例如:2", "ConfirmDelete": "確定要刪除部署預設「{{name}}」嗎?", "CreatePreset": "建立預設", "DeletePreset": "刪除預設", @@ -15,6 +18,8 @@ "DescriptionPlaceholder": "描述此部署預設的用途。", "EditPreset": "編輯預設", "Image": "映像檔", + "ImageRequired": "映像檔為必填項目。", + "MultiNode": "多節點", "Name": "名稱", "NamePlaceholder": "例如:vLLM-GPU-Large", "NameRequired": "名稱為必填項。", @@ -36,11 +41,17 @@ "SectionBasicInfo": "基本資訊", "SectionCluster": "叢集", "SectionDeploymentDefaults": "部署預設值", + "SectionExecution": "執行", "SectionImage": "映像檔", "SectionResources": "資源", + "SelectClusterMode": "選擇叢集模式", + "SelectImage": "選擇容器映像檔", "SelectRuntimeVariant": "選擇執行環境變體", "SelectStrategy": "選擇策略", "Shmem": "共享記憶體", + "SingleNode": "單節點", + "StartupCommand": "啟動指令", + "StartupCommandPlaceholder": "輸入推論伺服器的啟動指令。", "Strategy": "部署策略", "TabTitle": "部署預設" }, @@ -1201,6 +1212,7 @@ "Inactive": "不活動", "InvalidJSONFormat": "JSON 格式无效。", "LastUpdated": "最后更新", + "Loading": "載入中...", "Manual": "手册", "MaxValueNotification": "{{name}} 必须是最大值 {{max}}", "ModifiedAt": "修改日期",