feat(playground): enhance SSE debugging and add image paste support with i18n

- Add SSEViewer component for interactive SSE message inspection
  * Display SSE data stream with collapsible panels
  * Show parsed JSON with syntax highlighting
  * Display key information badges (content, tokens, finish reason)
  * Support copy individual or all SSE messages
  * Show error messages with detailed information

- Support Ctrl+V to paste images in chat input
  * Enable image paste in CustomInputRender component
  * Auto-detect and add pasted images to image list
  * Show toast notifications for paste results

- Add complete i18n support for 6 languages
  * Chinese (zh): Complete translations
  * English (en): Complete translations
  * Japanese (ja): Add 28 new translations
  * French (fr): Add 28 new translations
  * Russian (ru): Add 28 new translations
  * Vietnamese (vi): Add 32 new translations

- Update .gitignore to exclude data directory
This commit is contained in:
ImogeneOctaviap794
2025-11-26 16:54:11 +08:00
parent a6a20a2069
commit 9140dee70c
20 changed files with 810 additions and 65 deletions

View File

@@ -2093,6 +2093,46 @@
"统一的": "La Passerelle",
"大模型接口网关": "API LLM Unifiée",
"正在跳转 GitHub...": "Redirection vers GitHub...",
"请求超时,请刷新页面后重新发起 GitHub 登录": "Délai dépassé, veuillez actualiser la page puis relancer la connexion GitHub"
"请求超时,请刷新页面后重新发起 GitHub 登录": "Délai dépassé, veuillez actualiser la page puis relancer la connexion GitHub",
"请先在设置中启用图片功能": "Veuillez d'abord activer la fonction image dans les paramètres",
"图片已添加": "Image ajoutée",
"无法添加图片": "Impossible d'ajouter l'image",
"粘贴图片失败": "Échec du collage de l'image",
"支持 Ctrl+V 粘贴图片": "Supporte Ctrl+V pour coller l'image",
"已复制全部数据": "Toutes les données copiées",
"流式响应完成": "Flux terminé",
"图片地址": "URL de l'image",
"已在自定义模式中忽略": "Ignoré en mode personnalisé",
"停用": "Désactiver",
"图片功能在自定义请求体模式下不可用": "La fonction image n'est pas disponible en mode requête personnalisée",
"启用后可添加图片URL进行多模态对话": "Activer pour ajouter des URL d'images pour une conversation multimodale",
"点击 + 按钮添加图片URL进行多模态对话": "Cliquez sur + pour ajouter des URL d'images pour une conversation multimodale",
"已添加": "Ajouté",
"张图片": "images",
"自定义模式下不可用": "Non disponible en mode personnalisé",
"控制输出的随机性和创造性": "Contrôle l'aléatoire et la créativité de la sortie",
"核采样,控制词汇选择的多样性": "Échantillonnage nucléaire, contrôle la diversité de la sélection du vocabulaire",
"频率惩罚,减少重复词汇的出现": "Pénalité de fréquence, réduit la répétition des mots",
"存在惩罚,鼓励讨论新话题": "Pénalité de présence, encourage de nouveaux sujets",
"流式输出": "Sortie en flux",
"暂无SSE响应数据": "Aucune donnée de réponse SSE",
"SSE数据流": "Flux de données SSE",
"解析错误": "Erreur d'analyse",
"有 Reasoning": "A un raisonnement",
"全部收起": "Tout réduire",
"全部展开": "Tout développer",
"SSE 事件": "Événement SSE",
"JSON格式错误": "Erreur de format JSON",
"自定义请求体模式": "Mode de corps de requête personnalisé",
"启用此模式后将使用您自定义的请求体发送API请求模型配置面板的参数设置将被忽略。": "Lorsqu'il est activé, votre corps de requête personnalisé sera utilisé pour les requêtes API et les paramètres du panneau de configuration du modèle seront ignorés.",
"请求体 JSON": "Corps de requête JSON",
"格式正确": "Format valide",
"格式错误": "Format invalide",
"格式化": "Formater",
"请输入有效的JSON格式的请求体。您可以参考预览面板中的默认请求体格式。": "Veuillez entrer un corps de requête au format JSON valide. Vous pouvez vous référer au format de corps de requête par défaut dans le panneau d'aperçu.",
"默认用户消息": "Bonjour",
"默认助手消息": "Bonjour ! Comment puis-je vous aider aujourd'hui ?",
"可选,用于复现结果": "Optionnel, pour des résultats reproductibles",
"随机种子 (留空为随机)": "Graine aléatoire (laisser vide pour aléatoire)"
}
}
}