mirror of
https://github.com/HKUDS/nanobot.git
synced 2026-05-25 02:52:37 +00:00
526 lines
21 KiB
JSON
526 lines
21 KiB
JSON
{
|
||
"app": {
|
||
"brand": "nanobot",
|
||
"loading": {
|
||
"connecting": "Connexion à nanobot…",
|
||
"boot": "Chargement de nanobot…"
|
||
},
|
||
"error": {
|
||
"title": "Impossible de joindre nanobot",
|
||
"gatewayHint": "Assurez-vous que la gateway est en cours d’exécution (`nanobot gateway`) et que cette page est ouverte sur la même machine."
|
||
},
|
||
"auth": {
|
||
"title": "Authentification requise",
|
||
"hint": "Saisissez le secret configuré comme tokenIssueSecret dans la configuration de votre gateway.",
|
||
"placeholder": "Mot de passe",
|
||
"submit": "Se connecter",
|
||
"invalid": "Mot de passe invalide. Réessayez."
|
||
},
|
||
"account": {
|
||
"section": "Compte",
|
||
"logoutHint": "Déconnecter ce navigateur du gateway.",
|
||
"logout": "Se déconnecter"
|
||
},
|
||
"system": {
|
||
"section": "Système",
|
||
"restartHint": "Redémarrez nanobot pour appliquer les changements d’exécution.",
|
||
"restart": "Redémarrer nanobot",
|
||
"restarting": "Redémarrage..."
|
||
},
|
||
"restart": {
|
||
"completed": "Redémarrage terminé en {{seconds}} s."
|
||
},
|
||
"documentTitle": {
|
||
"base": "nanobot",
|
||
"chat": "{{title}} · nanobot"
|
||
},
|
||
"meta": {
|
||
"description": "Interface web nanobot — discutez avec votre espace de travail nanobot."
|
||
}
|
||
},
|
||
"sidebar": {
|
||
"navigation": "Navigation de la barre latérale",
|
||
"globalActions": "Actions globales",
|
||
"collapse": "Réduire la barre latérale",
|
||
"toggleTheme": "Changer de thème",
|
||
"home": "Accueil",
|
||
"newChat": "Nouvelle discussion",
|
||
"searchAria": "Rechercher",
|
||
"viewOptions": "View",
|
||
"compactList": "Compact list",
|
||
"showPreviews": "Show previews",
|
||
"showTimestamps": "Show time",
|
||
"sortLabel": "Sort",
|
||
"sortUpdated": "Recently updated",
|
||
"sortCreated": "Recently created",
|
||
"sortTitle": "Title A-Z",
|
||
"searchPlaceholder": "Rechercher",
|
||
"searchResults": "Résultats",
|
||
"noSearchResults": "Aucun chat correspondant.",
|
||
"recent": "Récentes",
|
||
"refreshSessions": "Actualiser les sessions",
|
||
"settings": "Paramètres",
|
||
"language": {
|
||
"label": "Langue",
|
||
"ariaLabel": "Changer de langue"
|
||
}
|
||
},
|
||
"settings": {
|
||
"backToChat": "Retour à la discussion",
|
||
"sidebar": {
|
||
"title": "Paramètres",
|
||
"ariaLabel": "Sections des paramètres"
|
||
},
|
||
"nav": {
|
||
"general": "Général",
|
||
"byok": "BYOK",
|
||
"overview": "Overview",
|
||
"appearance": "Appearance",
|
||
"models": "Models",
|
||
"providers": "Providers",
|
||
"image": "Image",
|
||
"web": "Web",
|
||
"runtime": "Runtime",
|
||
"advanced": "Advanced"
|
||
},
|
||
"sections": {
|
||
"interface": "Interface",
|
||
"ai": "IA",
|
||
"system": "Système",
|
||
"status": "Status",
|
||
"localPreferences": "Local preferences",
|
||
"presets": "Presets",
|
||
"imageGeneration": "Génération d'images",
|
||
"imageDefaults": "Valeurs par défaut",
|
||
"webSearch": "Web search",
|
||
"webBehavior": "Behavior",
|
||
"identity": "Identity",
|
||
"safety": "Safety",
|
||
"capabilities": "Capacités",
|
||
"integrations": "Integrations"
|
||
},
|
||
"rows": {
|
||
"theme": "Thème",
|
||
"language": "Langue",
|
||
"provider": "Fournisseur",
|
||
"model": "Modèle",
|
||
"restart": "Redémarrer nanobot",
|
||
"configPath": "Chemin de configuration",
|
||
"activePreset": "Active preset",
|
||
"gateway": "Gateway",
|
||
"restartState": "Restart state",
|
||
"pendingChanges": "Modifications en attente",
|
||
"selectedPreset": "Selected preset",
|
||
"presetModel": "Preset model",
|
||
"density": "Density",
|
||
"activityMode": "Activity detail",
|
||
"codeWrap": "Code wrapping",
|
||
"maxResults": "Max results",
|
||
"timeout": "Timeout",
|
||
"jinaReader": "Jina reader",
|
||
"imageGeneration": "Génération d'images",
|
||
"imageProvider": "Fournisseur d'images",
|
||
"imageProviderStatus": "État du fournisseur",
|
||
"imageProviderBase": "Base du fournisseur",
|
||
"imageModel": "Modèle d'image",
|
||
"defaultAspectRatio": "Format par défaut",
|
||
"defaultImageSize": "Taille par défaut",
|
||
"maxImagesPerTurn": "Nombre max. d'images par tour",
|
||
"imageSaveDir": "Répertoire de sauvegarde",
|
||
"botName": "Bot name",
|
||
"botIcon": "Bot icon",
|
||
"timezone": "Timezone",
|
||
"toolHintMaxLength": "Tool hint length",
|
||
"workspacePath": "Workspace path",
|
||
"heartbeat": "Heartbeat",
|
||
"dream": "Dream",
|
||
"unifiedSession": "Unified session",
|
||
"restrictWorkspace": "Restrict to workspace",
|
||
"execTool": "Exec tool",
|
||
"execSandbox": "Exec sandbox",
|
||
"ssrfWhitelist": "SSRF whitelist",
|
||
"mcpServers": "MCP servers",
|
||
"pathAppend": "PATH append",
|
||
"configurationDocs": "Configuration docs"
|
||
},
|
||
"help": {
|
||
"theme": "Basculer entre les apparences claire et sombre.",
|
||
"language": "Choisissez la langue utilisée par le WebUI.",
|
||
"provider": "Sélectionnez le fournisseur des nouvelles requêtes de modèle.",
|
||
"model": "Définissez le nom du modèle par défaut utilisé par nanobot.",
|
||
"configPath": "Le fichier de configuration actuellement utilisé par la passerelle.",
|
||
"selectedPreset": "Named presets are read-only here; edit them in config.json.",
|
||
"presetModel": "Switch to Default to edit model and provider from the WebUI.",
|
||
"density": "Stored only in this browser.",
|
||
"activityMode": "Choose how much agent activity chrome to show by default.",
|
||
"codeWrap": "Keep long code lines readable on smaller screens.",
|
||
"maxResults": "Results returned by each web_search call.",
|
||
"timeout": "Seconds before a search provider request times out.",
|
||
"jinaReader": "Use Jina Reader for web_fetch when available.",
|
||
"imageGeneration": "Expose generate_image dans les chats lorsqu’un fournisseur d’images configuré est disponible.",
|
||
"imageProvider": "Choisissez le fournisseur du registre utilisé par generate_image.",
|
||
"imageProviderStatus": "La génération d’images réutilise les identifiants de Fournisseurs.",
|
||
"imageModel": "Nom du modèle envoyé au fournisseur d’images sélectionné.",
|
||
"defaultAspectRatio": "Utilisé lorsque le prompt ne choisit pas de format.",
|
||
"defaultImageSize": "Indication de taille envoyée aux fournisseurs qui la prennent en charge.",
|
||
"maxImagesPerTurn": "Limite supérieure pour une requête generate_image.",
|
||
"botName": "Shown in runtime surfaces that use the configured bot identity.",
|
||
"botIcon": "Short emoji or text shown beside the bot name.",
|
||
"timezone": "IANA timezone used by runtime context and schedules.",
|
||
"toolHintMaxLength": "Maximum characters shown in tool progress hints.",
|
||
"advancedReadOnly": "Advanced safety controls are read-only in WebUI. Edit config.json intentionally when needed."
|
||
},
|
||
"values": {
|
||
"light": "Clair",
|
||
"dark": "Sombre",
|
||
"notAvailable": "Indisponible",
|
||
"enabled": "Enabled",
|
||
"disabled": "Disabled",
|
||
"restartPending": "Redémarrage en attente",
|
||
"ready": "Prêt",
|
||
"comfortable": "Comfortable",
|
||
"compact": "Compact",
|
||
"auto": "Auto",
|
||
"expanded": "Expanded",
|
||
"on": "On",
|
||
"off": "Off",
|
||
"configured": "Configured",
|
||
"notConfigured": "Not configured",
|
||
"restartRequired": "Restart required",
|
||
"liveReload": "Live reload ready"
|
||
},
|
||
"status": {
|
||
"loading": "Chargement des paramètres...",
|
||
"loadError": "Impossible de charger les paramètres",
|
||
"unsaved": "Modifications non enregistrées.",
|
||
"upToDate": "À jour.",
|
||
"savedRestart": "Enregistré. Redémarrez nanobot pour appliquer.",
|
||
"restartAfterSaving": "Enregistrez les modifications, puis redémarrez lorsque vous êtes prêt.",
|
||
"savedRestartApply": "Enregistré. Redémarrez lorsque vous êtes prêt.",
|
||
"imageProviderRestart": "Modifications du fournisseur d’images enregistrées. Redémarrez lorsque vous êtes prêt."
|
||
},
|
||
"actions": {
|
||
"save": "Enregistrer",
|
||
"saving": "Enregistrement",
|
||
"edit": "Modifier",
|
||
"cancel": "Annuler",
|
||
"openDocs": "Open docs"
|
||
},
|
||
"byok": {
|
||
"description": "Utilisez vos propres clés de fournisseur. Nanobot lit ces valeurs depuis la configuration actuelle, et seuls les fournisseurs configurés peuvent être sélectionnés dans Général.",
|
||
"configured": "Configuré",
|
||
"notConfigured": "Non configuré",
|
||
"configuredSection": "Configurés",
|
||
"notConfiguredSection": "Non configurés",
|
||
"showMore": "Afficher {{count}} de plus",
|
||
"showLess": "Afficher moins",
|
||
"apiKey": "API key",
|
||
"apiBase": "API base",
|
||
"apiKeyPlaceholder": "Saisir l'API key",
|
||
"apiKeyConfiguredPlaceholder": "Laisser vide pour conserver la key actuelle",
|
||
"configuredKeyHint": "Key configurée",
|
||
"apiBasePlaceholder": "Utiliser la valeur par défaut du fournisseur",
|
||
"apiKeyRequired": "Une API key est requise pour configurer ce fournisseur.",
|
||
"showApiKey": "Afficher l'API key",
|
||
"hideApiKey": "Masquer l'API key",
|
||
"noConfiguredProviders": "Aucun fournisseur configuré",
|
||
"configureFirst": "Configurez d'abord un fournisseur dans BYOK.",
|
||
"openByok": "Ouvrir BYOK",
|
||
"tabs": {
|
||
"ariaLabel": "Type d'identifiants BYOK",
|
||
"llm": "LLM",
|
||
"webSearch": "Web Search"
|
||
},
|
||
"webSearch": {
|
||
"provider": "Fournisseur de recherche",
|
||
"providerHelp": "Choisissez le backend utilisé par l'outil web search.",
|
||
"selectProvider": "Choisir un fournisseur",
|
||
"credentials": "Identifiants",
|
||
"noCredentialRequired": "Aucune key requise",
|
||
"noCredentialHelp": "DuckDuckGo fonctionne sans API key enregistrée.",
|
||
"apiKeyHelp": "Enregistrée dans la config et masquée après l'enregistrement.",
|
||
"baseUrl": "Base URL",
|
||
"baseUrlHelp": "SearXNG nécessite l'URL de votre propre instance.",
|
||
"baseUrlPlaceholder": "https://search.example.com",
|
||
"apiKeyRequired": "Ce fournisseur de recherche nécessite une API key.",
|
||
"baseUrlRequired": "SearXNG nécessite une Base URL.",
|
||
"missingCredential": "Ajoutez l'identifiant requis avant d'enregistrer.",
|
||
"saveHint": "Les changements s'appliquent aux nouvelles requêtes web search."
|
||
}
|
||
},
|
||
"overview": {
|
||
"model": "Current model",
|
||
"providers": "Providers",
|
||
"configuredCount": "{{count}} configured",
|
||
"totalProviders": "{{count}} available",
|
||
"webSearch": "Web search",
|
||
"imageGeneration": "Génération d'images",
|
||
"workspace": "Workspace"
|
||
},
|
||
"providers": {
|
||
"searchPlaceholder": "Search providers",
|
||
"noMatches": "No providers match this search."
|
||
},
|
||
"image": {
|
||
"selectProvider": "Sélectionner un fournisseur",
|
||
"selectAspect": "Sélectionner un format",
|
||
"selectSize": "Sélectionner une taille",
|
||
"configureProvider": "Configurer le fournisseur",
|
||
"missingCredential": "Configurez ce fournisseur avant d’activer la génération d’images."
|
||
}
|
||
},
|
||
"chat": {
|
||
"fallbackTitle": "Discussion {{id}}",
|
||
"loading": "Chargement…",
|
||
"noSessions": "Aucune session pour le moment.",
|
||
"actions": "Actions de la discussion {{title}}",
|
||
"activity": {
|
||
"running": "Agent running",
|
||
"complete": "Agent finished"
|
||
},
|
||
"pin": "Pin",
|
||
"unpin": "Unpin",
|
||
"rename": "Rename",
|
||
"renameTitle": "Rename chat",
|
||
"renameDescription": "Choose a local sidebar name for this chat.",
|
||
"renamePlaceholder": "Chat name",
|
||
"renameSave": "Save",
|
||
"archive": "Archive",
|
||
"unarchive": "Unarchive",
|
||
"showArchived": "Show archived",
|
||
"hideArchived": "Hide archived",
|
||
"delete": "Supprimer",
|
||
"newChat": "Nouvelle discussion",
|
||
"groups": {
|
||
"pinned": "Pinned",
|
||
"all": "Chats",
|
||
"today": "Today",
|
||
"yesterday": "Yesterday",
|
||
"earlier": "Earlier",
|
||
"archived": "Archived"
|
||
}
|
||
},
|
||
"deleteConfirm": {
|
||
"title": "Supprimer cette discussion ?",
|
||
"description": "Cette action est irréversible.",
|
||
"cancel": "Annuler",
|
||
"confirm": "Supprimer"
|
||
},
|
||
"connection": {
|
||
"idle": "Inactif",
|
||
"connecting": "Connexion…",
|
||
"open": "Connecté",
|
||
"reconnecting": "Reconnexion…",
|
||
"closed": "Déconnecté",
|
||
"error": "Erreur de connexion"
|
||
},
|
||
"thread": {
|
||
"loadingConversation": "Chargement de la conversation…",
|
||
"empty": {
|
||
"greeting": "Que puis-je faire pour vous ?",
|
||
"quickActions": {
|
||
"plan": {
|
||
"title": "Créer un plan de projet",
|
||
"prompt": "Créez un plan de projet concis pour ce que je devrais construire ensuite."
|
||
},
|
||
"analyze": {
|
||
"title": "Analyser ces données",
|
||
"prompt": "Aidez-moi à analyser ces données et à faire ressortir les tendances les plus importantes."
|
||
},
|
||
"brainstorm": {
|
||
"title": "Trouver des idées",
|
||
"prompt": "Proposez quelques idées pratiques et leurs compromis pour ce problème."
|
||
},
|
||
"code": {
|
||
"title": "Écrire du code",
|
||
"prompt": "Aidez-moi à écrire le code pour cette tâche, en commençant par le plus petit changement utile."
|
||
},
|
||
"summarize": {
|
||
"title": "Résumer ce document",
|
||
"prompt": "Résumez ce document et listez les points clés à retenir."
|
||
},
|
||
"more": {
|
||
"title": "Plus",
|
||
"prompt": "Montrez-moi quelques façons utiles dont vous pouvez m’aider dans cet espace de travail."
|
||
}
|
||
},
|
||
"imageQuickActions": {
|
||
"icon": {
|
||
"title": "Créer une icône d’app",
|
||
"prompt": "Générez une icône d’application 1:1 propre pour nanobot : robot sympathique, style vectoriel simple, palette douce bleu et blanc, sans texte."
|
||
},
|
||
"sticker": {
|
||
"title": "Créer un sticker",
|
||
"prompt": "Générez une image façon sticker d’un petit assistant robot, avec un fond d’apparence transparente, expressive et ludique."
|
||
},
|
||
"poster": {
|
||
"title": "Créer une affiche",
|
||
"prompt": "Générez un concept d’affiche soigné pour un assistant IA personnel, composition moderne, hiérarchie visuelle forte, adapté à une landing page."
|
||
},
|
||
"product": {
|
||
"title": "Maquette produit",
|
||
"prompt": "Générez une maquette produit propre pour une application web d’IA conversationnelle, interface minimale, éclairage premium, cadre d’appareil réaliste."
|
||
},
|
||
"portrait": {
|
||
"title": "Portrait stylisé",
|
||
"prompt": "Générez un portrait stylisé d’un compagnon IA sympathique, lumière douce, détaillé mais accessible, style illustration moderne."
|
||
},
|
||
"edit": {
|
||
"title": "Modifier une image",
|
||
"prompt": "Aidez-moi à modifier une image. Demandez-moi d’abord de téléverser ou d’indiquer l’image, puis générez le résultat modifié."
|
||
}
|
||
},
|
||
"description": "Posez des questions, poursuivez votre travail local ou démarrez un nouveau fil."
|
||
},
|
||
"header": {
|
||
"toggleSidebar": "Afficher ou masquer la barre latérale",
|
||
"newChat": "Démarrer un nouveau chat",
|
||
"toggleTheme": "Changer le thème depuis l’en-tête",
|
||
"settings": "Ouvrir les paramètres"
|
||
},
|
||
"composer": {
|
||
"placeholderThread": "Saisissez votre message…",
|
||
"placeholderHero": "Qu’avez-vous en tête ?",
|
||
"placeholderOpening": "Ouverture d’une nouvelle discussion…",
|
||
"placeholderStreaming": "Le modèle est en train de répondre…",
|
||
"inputAria": "Champ de message",
|
||
"sendHint": "Entrée pour envoyer · Maj+Entrée pour un retour à la ligne",
|
||
"runRuntimeTitle": "Exécution · {{elapsed}}",
|
||
"goalStateStrip": "Objectif · {{label}}",
|
||
"goalStateFallback": "Objectif",
|
||
"goalStateExpandAria": "Afficher l’objectif complet",
|
||
"goalStateSheetTitle": "Objectif",
|
||
"goalStateCloseAria": "Fermer l’objectif",
|
||
"send": "Envoyer le message",
|
||
"stop": "Arrêter la réponse",
|
||
"attachImage": "Joindre une image",
|
||
"imageMode": {
|
||
"label": "Génération d’image",
|
||
"toggle": "Activer ou désactiver le mode génération d’image",
|
||
"placeholder": "Décrire ou modifier une image…",
|
||
"aspectAria": "Format de l’image",
|
||
"aspectLabel": "Format de l’image",
|
||
"aspect": {
|
||
"auto": "Auto",
|
||
"1_1": "Carré 1:1",
|
||
"3_4": "Portrait 3:4",
|
||
"9_16": "Story 9:16",
|
||
"4_3": "Paysage 4:3",
|
||
"16_9": "Large 16:9"
|
||
}
|
||
},
|
||
"tools": {
|
||
"search": "Rechercher",
|
||
"reason": "Raisonner",
|
||
"deepResearch": "Recherche approfondie",
|
||
"voice": "Entrée vocale"
|
||
},
|
||
"slash": {
|
||
"ariaLabel": "Commandes slash",
|
||
"label": "commandes",
|
||
"navigateHint": "↑↓ Naviguer",
|
||
"selectHint": "Entrée/Tab Insérer",
|
||
"closeHint": "Échap Fermer",
|
||
"commands": {
|
||
"new": {
|
||
"title": "Nouvelle discussion",
|
||
"description": "Arrêter la tâche en cours et démarrer une nouvelle conversation."
|
||
},
|
||
"stop": {
|
||
"title": "Arrêter la tâche en cours",
|
||
"description": "Annuler le tour agent actif pour cette discussion."
|
||
},
|
||
"restart": {
|
||
"title": "Redémarrer nanobot",
|
||
"description": "Redémarrer le processus du bot sur place."
|
||
},
|
||
"status": {
|
||
"title": "Afficher l’état",
|
||
"description": "Afficher l’état du runtime, du provider et des channels."
|
||
},
|
||
"history": {
|
||
"title": "Afficher l’historique",
|
||
"description": "Afficher les N derniers messages persistés de la conversation."
|
||
},
|
||
"dream": {
|
||
"title": "Lancer Dream",
|
||
"description": "Déclencher manuellement la consolidation de la mémoire."
|
||
},
|
||
"dream_log": {
|
||
"title": "Afficher le journal Dream",
|
||
"description": "Afficher ce que la dernière consolidation Dream a changé."
|
||
},
|
||
"dream_restore": {
|
||
"title": "Restaurer la mémoire",
|
||
"description": "Revenir à un instantané Dream précédent."
|
||
},
|
||
"goal": {
|
||
"title": "Objectif long terme",
|
||
"description": "Demandez à l’agent de traiter ceci comme un objectif multi‑étapes durable."
|
||
},
|
||
"help": {
|
||
"title": "Afficher l’aide",
|
||
"description": "Lister les commandes slash disponibles."
|
||
}
|
||
}
|
||
},
|
||
"encoding": "Traitement…",
|
||
"remove": "Retirer la pièce jointe",
|
||
"normalizedSizeHint": "{{orig}} → {{current}} (auto)",
|
||
"imageRejected": {
|
||
"unsupported_type": "Type de fichier non pris en charge",
|
||
"too_many_images": "Maximum {{max}} images par message",
|
||
"magic_mismatch": "Ce fichier n'est pas une image",
|
||
"decode_failed": "Impossible de décoder cette image",
|
||
"too_large": "Image trop grande — essayez-en une plus petite",
|
||
"io": "Impossible de lire ce fichier"
|
||
}
|
||
},
|
||
"scrollToBottom": "Faire défiler vers le bas",
|
||
"loadEarlier": "Charger les messages précédents"
|
||
},
|
||
"message": {
|
||
"streaming": "en cours de génération",
|
||
"assistantTyping": "L’assistant est en train d’écrire",
|
||
"toolSingle": "Utilisation d’un outil",
|
||
"toolMany": "{{count}} outils utilisés",
|
||
"toolSummary": "{{count}} outil",
|
||
"toolSummaryMany": "{{count}} outils",
|
||
"reasoningTools": "Raisonnement · {{count}} outils",
|
||
"reasoningToolsSingular": "Raisonnement · 1 outil",
|
||
"reasoning": "Raisonnement",
|
||
"reasoningStreaming": "En réflexion…",
|
||
"reasoningSummary": "Raisonnement",
|
||
"agentActivitySummary": "{{reasoning}} étapes · {{tools}} appels d’outils",
|
||
"agentActivityToolsOnly": "{{tools}} appels d’outils",
|
||
"agentActivityLiveSummary": "En cours… · {{reasoning}} étapes · {{tools}} appels d’outils",
|
||
"agentActivityLiveToolsOnly": "En cours… · {{tools}} appels d’outils",
|
||
"imageAttachment": "Pièce jointe image",
|
||
"copyReply": "Copier la réponse",
|
||
"copiedReply": "Réponse copiée",
|
||
"turnLatencyTitle": "Temps de réponse (de bout en bout)"
|
||
},
|
||
"lightbox": {
|
||
"title": "Aperçu de l’image",
|
||
"open": "Voir l’image",
|
||
"prev": "Image précédente",
|
||
"next": "Image suivante",
|
||
"close": "Fermer l’aperçu"
|
||
},
|
||
"code": {
|
||
"fallbackLanguage": "code",
|
||
"copyAria": "Copier le code",
|
||
"copy": "Copier",
|
||
"copied": "Copié"
|
||
},
|
||
"common": {
|
||
"dismiss": "Fermer"
|
||
},
|
||
"errors": {
|
||
"messageTooBig": {
|
||
"title": "Message trop volumineux",
|
||
"body": "Le serveur a rejeté votre dernier message car il dépasse la taille autorisée. Retirez des images ou choisissez des fichiers plus légers, puis renvoyez-le."
|
||
}
|
||
}
|
||
}
|