Browse Source

german translations + new vars

Jannik Streidl 1 year ago
parent
commit
893b738cbf

+ 2 - 2
package-lock.json

@@ -1,12 +1,12 @@
 {
 	"name": "open-webui",
-	"version": "0.1.106",
+	"version": "0.1.107",
 	"lockfileVersion": 2,
 	"requires": true,
 	"packages": {
 		"": {
 			"name": "open-webui",
-			"version": "0.1.106",
+			"version": "0.1.107",
 			"dependencies": {
 				"@sveltejs/adapter-node": "^1.3.1",
 				"async": "^3.2.5",

+ 21 - 21
src/lib/components/chat/Settings/Advanced/AdvancedParams.svelte

@@ -45,7 +45,7 @@
 				<input
 					class="w-full rounded py-1.5 px-4 text-sm dark:text-gray-300 dark:bg-gray-800 outline-none border border-gray-100 dark:border-gray-600"
 					type="text"
-					placeholder="Enter Stop Sequence"
+					placeholder={$i18n.t('Enter stop sequence')}
 					bind:value={options.stop}
 					autocomplete="off"
 				/>
@@ -111,9 +111,9 @@
 				}}
 			>
 				{#if options.mirostat === ''}
-					<span class="ml-2 self-center">{$i18n.t(' Default ')}</span>
+					<span class="ml-2 self-center">{$i18n.t('Default')}</span>
 				{:else}
-					<span class="ml-2 self-center">{$i18n.t(' Custom ')}</span>
+					<span class="ml-2 self-center">{$i18n.t('Default')}</span>
 				{/if}
 			</button>
 		</div>
@@ -157,9 +157,9 @@
 				}}
 			>
 				{#if options.mirostat_eta === ''}
-					<span class="ml-2 self-center">{$i18n.t(' Default ')}</span>
+					<span class="ml-2 self-center">{$i18n.t('Default')}</span>
 				{:else}
-					<span class="ml-2 self-center">{$i18n.t(' Custom ')}</span>
+					<span class="ml-2 self-center">{$i18n.t('Default')}</span>
 				{/if}
 			</button>
 		</div>
@@ -203,9 +203,9 @@
 				}}
 			>
 				{#if options.mirostat_tau === ''}
-					<span class="ml-2 self-center">{$i18n.t(' Default ')}</span>
+					<span class="ml-2 self-center">{$i18n.t('Default')}</span>
 				{:else}
-					<span class="ml-2 self-center">{$i18n.t(' Custom ')}</span>
+					<span class="ml-2 self-center">{$i18n.t('Custom')}</span>
 				{/if}
 			</button>
 		</div>
@@ -249,9 +249,9 @@
 				}}
 			>
 				{#if options.top_k === ''}
-					<span class="ml-2 self-center">{$i18n.t(' Default ')}</span>
+					<span class="ml-2 self-center">{$i18n.t('Default')}</span>
 				{:else}
-					<span class="ml-2 self-center">{$i18n.t(' Custom ')}</span>
+					<span class="ml-2 self-center">{$i18n.t('Default')}</span>
 				{/if}
 			</button>
 		</div>
@@ -295,9 +295,9 @@
 				}}
 			>
 				{#if options.top_p === ''}
-					<span class="ml-2 self-center">{$i18n.t(' Default ')}</span>
+					<span class="ml-2 self-center">{$i18n.t('Default')}</span>
 				{:else}
-					<span class="ml-2 self-center">{$i18n.t(' Custom ')}</span>
+					<span class="ml-2 self-center">{$i18n.t('Default')}</span>
 				{/if}
 			</button>
 		</div>
@@ -341,9 +341,9 @@
 				}}
 			>
 				{#if options.repeat_penalty === ''}
-					<span class="ml-2 self-center">{$i18n.t(' Default ')}</span>
+					<span class="ml-2 self-center">{$i18n.t('Default')}</span>
 				{:else}
-					<span class="ml-2 self-center">{$i18n.t(' Custom ')}</span>
+					<span class="ml-2 self-center">{$i18n.t('Default')}</span>
 				{/if}
 			</button>
 		</div>
@@ -387,9 +387,9 @@
 				}}
 			>
 				{#if options.repeat_last_n === ''}
-					<span class="ml-2 self-center">{$i18n.t(' Default ')}</span>
+					<span class="ml-2 self-center">{$i18n.t('Default')}</span>
 				{:else}
-					<span class="ml-2 self-center">{$i18n.t(' Custom ')}</span>
+					<span class="ml-2 self-center">{$i18n.t('Default')}</span>
 				{/if}
 			</button>
 		</div>
@@ -433,9 +433,9 @@
 				}}
 			>
 				{#if options.tfs_z === ''}
-					<span class="ml-2 self-center">{$i18n.t(' Default ')}</span>
+					<span class="ml-2 self-center">{$i18n.t('Default')}</span>
 				{:else}
-					<span class="ml-2 self-center">{$i18n.t(' Custom ')}</span>
+					<span class="ml-2 self-center">{$i18n.t('Default')}</span>
 				{/if}
 			</button>
 		</div>
@@ -479,9 +479,9 @@
 				}}
 			>
 				{#if options.num_ctx === ''}
-					<span class="ml-2 self-center">{$i18n.t(' Default ')}</span>
+					<span class="ml-2 self-center">{$i18n.t('Default')}</span>
 				{:else}
-					<span class="ml-2 self-center">{$i18n.t(' Custom ')}</span>
+					<span class="ml-2 self-center">{$i18n.t('Default')}</span>
 				{/if}
 			</button>
 		</div>
@@ -524,9 +524,9 @@
 				}}
 			>
 				{#if options.num_predict === ''}
-					<span class="ml-2 self-center">{$i18n.t(' Default ')}</span>
+					<span class="ml-2 self-center">{$i18n.t('Default')}</span>
 				{:else}
-					<span class="ml-2 self-center">{$i18n.t(' Custom ')}</span>
+					<span class="ml-2 self-center">{$i18n.t('Default')}</span>
 				{/if}
 			</button>
 		</div>

+ 2 - 2
src/lib/components/chat/Settings/Connections.svelte

@@ -72,7 +72,7 @@
 						type="button"
 						on:click={() => {
 							showOpenAI = !showOpenAI;
-						}}>{showOpenAI ? 'Hide' : 'Show'}</button
+						}}>{showOpenAI ? $i18n.t('Hide') : $i18n.t('Show')}</button
 					>
 				</div>
 
@@ -83,7 +83,7 @@
 							<div class="flex-1">
 								<input
 									class="w-full rounded py-2 px-4 text-sm dark:text-gray-300 dark:bg-gray-800 outline-none"
-									placeholder="Enter OpenAI API Key"
+									placeholder={$i18n.t('Enter OpenAI API Key')}
 									bind:value={OPENAI_API_KEY}
 									autocomplete="off"
 								/>

+ 2 - 2
src/lib/components/chat/Settings/General.svelte

@@ -175,7 +175,7 @@
 
 			<div>
 				<div class=" py-0.5 flex w-full justify-between">
-					<div class=" self-center text-xs font-medium">{$i18n.t('Notification')}</div>
+					<div class=" self-center text-xs font-medium">{$i18n.t('Desktop Notifications')}</div>
 
 					<button
 						class="p-1 px-3 text-xs flex rounded transition"
@@ -213,7 +213,7 @@
 					type="button"
 					on:click={() => {
 						showAdvanced = !showAdvanced;
-					}}>{showAdvanced ? 'Hide' : 'Show'}</button
+					}}>{showAdvanced ? $i18n.t('Hide') : $i18n.t('Show')}</button
 				>
 			</div>
 

+ 3 - 4
src/lib/components/chat/Settings/Interface.svelte

@@ -82,8 +82,7 @@
 		fullScreenMode = settings.fullScreenMode ?? false;
 		titleAutoGenerateModel = settings.titleAutoGenerateModel ?? '';
 		titleGenerationPrompt =
-			settings.titleGenerationPrompt ??
-			`Create a concise, 3-5 word phrase as a header for the following query, strictly adhering to the 3-5 word limit and avoiding the use of the word 'title': {{prompt}}`;
+			settings.titleGenerationPrompt ?? $i18n.t('Default titleGenerationPromt') + ' {{prompt}}';
 	});
 </script>
 
@@ -163,7 +162,7 @@
 			<div>
 				<div class=" py-0.5 flex w-full justify-between">
 					<div class=" self-center text-xs font-medium">
-						Display the username instead of "You" in the Chat
+						{$i18n.t('Display the username instead of You in the Chat')}
 					</div>
 
 					<button
@@ -194,7 +193,7 @@
 						bind:value={titleAutoGenerateModel}
 						placeholder={$i18n.t('Select a model')}
 					>
-						<option value="" selected>Current Model</option>
+						<option value="" selected>{$i18n.t('Current Model')}</option>
 						{#each $models as model}
 							{#if model.size != null}
 								<option value={model.name} class="bg-gray-100 dark:bg-gray-700">

+ 253 - 7
src/lib/i18n/locales/de/common.json

@@ -1,10 +1,256 @@
 {
-	"New Chat": "Neuer Chat",
-	"Modelfiles": "Modelfiles",
-	"How can I help you today?": "Wie kann ich dir heute behilflich sein?",
+	"About": "Über",
+	"Account": "Account",
+	"Action": "Aktion",
+	"Add a model": "Füge ein Modell hinzu",
+	"Add Docs": "Dokumente hinzufügen",
+	"Add Files": "Dateien hinzufügen",
+	"Add LiteLLM Model": "LiteLLM Modell hinzufügen",
+	"add tags": "Tags hinzufügen",
+	"Admin": "Admin",
+	"Admin Panel": "Admin Panel",
+	"Admin Settings": "Admin Einstellungen",
+	"Advanced Model Params": "Erweiterte Modell Parameter",
+	"Advanced Parameters": "Erweiterte Parameter",
+	"all": "Alle",
+	"Allow": "Erlauben",
+	"Allow Chat Deletion": "Chat Löschung erlauben",
+	"API Base URL": "API Basis URL",
+	"API Key": "API Key",
+	"API RPM": "API RPM",
+	"Audio": "Audio",
+	"AUTOMATIC1111 Base URL": "AUTOMATIC1111 Basis URL",
+	"Auto-playback response": "Automatische Wiedergabe der Antwort",
+	"Auto-send input after 3 sec.": "Automatisches Senden der Eingabe nach 3 Sek",
+	"Back": "Zurück",
+	"Builder Mode": "Builder Modus",
+	"Cancel": "Abbrechen",
+	"Categories": "Kategorien",
+	"Change Password": "Passwort ändern",
+	"Chat History": "Chat Verlauf",
+	"Chat History is off for this browser.": "Chat Verlauf ist für diesen Browser ausgeschaltet.",
+	"Chats": "Chats",
+	"Check Again": "Erneut überprüfen",
+	"Choose a model before saving...": "Wählen Sie ein Modell, bevor Sie speichern...",
+	"Chunk Overlap": "Chunk Overlap",
+	"Chunk Params": "Chunk Parameter",
+	"Chunk Size": "Chunk Size",
+	"click here.": "hier klicken.",
+	"Click here to check other modelfiles.": "Klicken Sie hier, um andere Modelfiles zu überprüfen.",
+	"Collection": "Kollektion",
+	"Command": "Befehl",
+	"Confirm Password": "Passwort bestätigen",
+	"Connections": "Verbindungen",
+	"Content": "Inhalt",
+	"Context Length": "Context Length",
+	"Conversation Mode": "Konversationsmodus",
+	"Copying to clipboard was successful!": "Das Kopieren in die Zwischenablage war erfolgreich!",
+	"Copy last code block": "Letzten Codeblock kopieren",
+	"Copy last response": "Letzte Antwort kopieren",
+	"Create a modelfile": "Modelfiles erstellen",
+	"Current Password": "Aktuelles Passwort",
+	"Custom": "Benutzerdefiniert",
+	"Customize Ollama models for a specific purpose": "Ollama-Modelle für einen bestimmten Zweck anpassen",
+	"Dark": "Dunkel",
+	"Database": "Datenbank",
+	"Default": "Standard",
+	"Default model updated": "Standardmodell aktualisiert",
+	"Default Prompt Suggestions": "Standard-Prompt-Vorschläge",
+	"Default User Role": "Standardbenutzerrolle",
+	"Default (Web API)": "Standard (Web-API)",
+	"Delete a model": "Ein Modell löschen",
+	"Delete chat": "Chat löschen",
+	"Delete Chats": "Chats löschen",
+	"Deleted {{deleteModelTag}}": "{{deleteModelTag}} gelöscht",
+	"delete": "löschen",
+	"Deleted {tagName}": "{tagName} gelöscht",
+	"Description": "Beschreibung",
+	"Disabled": "Deaktiviert",
+	"Discover a modelfile": "Eine Modelfiles entdecken",
+	"Discover a prompt": "Einen Prompt entdecken",
+	"Discover, download, and explore custom prompts": "Benutzerdefinierte Prompts entdecken, herunterladen und erkunden",
+	"Discover, download, and explore model presets": "Modellvorgaben entdecken, herunterladen und erkunden",
+	"Document": "Dokument",
+	"Documents": "Dokumente",
+	"Document Settings": "Dokumenteinstellungen",
+	"Don't Allow": "Nicht erlauben",
+	"Download as a File": "Als Datei herunterladen",
+	"Download Database": "Datenbank herunterladen",
+	"Edit Doc": "Dokument bearbeiten",
+	"Edit User": "Benutzer bearbeiten",
+	"Email": "E-Mail",
+	"Enabled": "Aktiviert",
+	"Enable New Sign Ups": "Neue Anmeldungen aktivieren",
+	"Experimental": "Experimentell",
+	"Export All Chats (All Users)": "Alle Chats exportieren (alle Benutzer)",
+	"Export Chats": "Chats exportieren",
+	"Export Documents Mapping": "Dokumentenmapping exportieren",
+	"Export Modelfiles": "Modelfiles exportieren",
+	"Export Prompts": "Prompts exportieren",
+	"Failed to read clipboard contents": "Fehler beim Lesen des Zwischenablageninhalts",
+	"File Mode": "Dateimodus",
+	"File not found.`": "Datei nicht gefunden.`",
+	"Focus chat input": "Chat-Eingabe fokussieren",
+	"From (Base Model)": "Von (Basismodell)",
+	"Full Screen Mode": "Vollbildmodus",
+	"General": "Allgemein",
+	"General Settings": "Allgemeine Einstellungen",
 	"Hello, {{name}}": "Hallo, {{name}}",
-	"Listening...": "nimmt auf...",
-	"Send a Message": "Sende eine Nachricht",
-	"Select a model": "Wähle ein Modell",
-	"Set as default": "Als Standard festlegen"
+	"How can I help you today?": "Wie kann ich Ihnen heute helfen?",
+	"Image Generation (Experimental)": "Bildgenerierung (experimentell)",
+	"Image Settings": "Bildeinstellungen",
+	"Images": "Bilder",
+	"Import Chats": "Chats importieren",
+	"Import Documents Mapping": "Dokumentenmapping importieren",
+	"Import Modelfiles": "Modelfiles importieren",
+	"Import Prompts": "Prompts importieren",
+	"Interface": "Benutzeroberfläche",
+	"{{item}} not provided": "{{item}} nicht angegeben",
+	"join our Discord for help.": "treten Sie unserem Discord bei, um Hilfe zu erhalten.",
+	"JSON": "JSON",
+	"JWT Expiration": "JWT-Ablauf",
+	"JWT Token": "JWT-Token",
+	"Keep Alive": "Keep Alive",
+	"Keyboard shortcuts": "Tastenkürzel",
+	"Language": "Sprache",
+	"Light": "Hell",
+	"Listening...": "Hören...",
+	"LiteLLM API Base URL": "LiteLLM-API-Basis-URL",
+	"LiteLLM API Key": "LiteLLM-API-Schlüssel",
+	"LiteLLM API RPM": "LiteLLM-API-RPM",
+	"LLMs can make mistakes. Verify important information.": "LLMs können Fehler machen. Überprüfen Sie wichtige Informationen.",
+	"Made by OpenWebUI Community": "Von der OpenWebUI-Community",
+	"Manage LiteLLM Models": "LiteLLM-Modelle verwalten",
+	"Maximum of 3 models can be downloaded simultaneously. Please try again later.": "Es können maximal 3 Modelle gleichzeitig heruntergeladen werden. Bitte versuchen Sie es später erneut.",
+	"Max Tokens": "Maximale Tokens",
+	"Mirostat Eta": "Mirostat Eta",
+	"Mirostat": "Mirostat",
+	"Mirostat Tau": "Mirostat Tau",
+	"Model '{{modelName}}' has been successfully downloaded.`": "Modell '{{modelName}}' wurde erfolgreich heruntergeladen.`",
+	"Modelfile Advanced Settings": "Erweiterte Modelfileseinstellungen",
+	"Modelfile Content": "Modelfilesinhalt",
+	"Modelfile": "Modelfiles",
+	"Modelfiles": "Modelfiles",
+	"Model {{modelId}} not found": "Modell {{modelId}} nicht gefunden",
+	"Model {{modelName}} already exists.": "Modell {{modelName}} existiert bereits.",
+	"Model '{{modelTag}}' is already in queue for downloading.": "Modell '{{modelTag}}' befindet sich bereits in der Warteschlange zum Herunterladen.",
+	"{{modelName}} is thinking...": "{{modelName}} denkt nach...",
+	"Model Name": "Modellname",
+	"Model not selected": "Modell nicht ausgewählt",
+	"Models": "Modelle",
+	"Model Tag Name": "Modell-Tag-Name",
+	"My Documents": "Meine Dokumente",
+	"My Modelfiles": "Meine Modelfiles",
+	"My Prompts": "Meine Prompts",
+	"Name": "Name",
+	"Name Tag": "Namens-Tag",
+	"New Chat": "Neuer Chat",
+	"New Password": "Neues Passwort",
+	"Desktop Notifications": "Desktop-Benachrichtigungen",
+	"Not sure what to write? Switch to": "Nicht sicher, was Sie schreiben sollen? Wechseln Sie zu",
+	"Off": "Aus",
+	"Okay, Let's Go!": "Okay, los geht's!",
+	"Ollama API URL": "Ollama-API-URL",
+	"Ollama Version": "Ollama-Version",
+	"Only alphanumeric characters and hyphens are allowed in the command string.": "Nur alphanumerische Zeichen und Bindestriche sind im Befehlsstring erlaubt.",
+	"On": "Ein",
+	"Oops! Hold tight! Your files are still in the processing oven. We're cooking them up to perfection. Please be patient and we'll let you know once they're ready.": "Hoppla! Halten Sie sich fest! Ihre Dateien sind noch im Verarbeitungsofen. Wir bereiten sie perfekt zu. Bitte haben Sie Geduld und wir informieren Sie, sobald sie bereit sind.",
+	"OpenAI API": "OpenAI-API",
+	"Open AI": "Open AI",
+	"Open new chat": "Neuen Chat öffnen",
+	"or": "oder",
+	"Parameters": "Parameter",
+	"Password": "Passwort",
+	"Pending": "Ausstehend",
+	"Permission denied when accessing microphone: {{error}}": "Zugriff auf das Mikrofon verweigert: {{error}}",
+	"Profile": "Profil",
+	"Prompt Content": "Prompt-Inhalt",
+	"Prompts": "Prompts",
+	"Prompt suggestions": "Prompt-Vorschläge",
+	"Pull a model from Ollama.com": "Ein Modell von Ollama.com abrufen",
+	"Pull Progress": "Fortschritt abrufen",
+	"RAG Template": "RAG-Vorlage",
+	"Raw Format": "Rohformat",
+	"Record voice": "Stimme aufnehmen",
+	"Redirecting you to OpenWebUI Community": "Sie werden zur OpenWebUI-Community weitergeleitet",
+	"Release Notes": "Versionshinweise",
+	"Repeat Last N": "Repeat Last N",
+	"Repeat Penalty": "Repeat Penalty",
+	"Request Mode": "Request-Modus",
+	"Reset Vector Storage": "Vektorspeicher zurücksetzen",
+	"Response AutoCopy to Clipboard": "Antwort automatisch in die Zwischenablage kopieren",
+	"Role": "Rolle",
+	"Rosé Pine Dawn": "Rosé Pine Dawn",
+	"Rosé Pine": "Rosé Pine",
+	"Save & Create": "Speichern und erstellen",
+	"Save": "Speichern",
+	"Save & Submit": "Speichern und senden",
+	"Save & Update": "Speichern und aktualisieren",
+	"Saving chat logs directly to your browser's storage is no longer supported. Please take a moment to download and delete your chat logs by clicking the button below. Don't worry, you can easily re-import your chat logs to the backend through": "Das direkte Speichern von Chat-Protokollen im Browser-Speicher wird nicht mehr unterstützt. Bitte nehmen Sie sich einen Moment Zeit, um Ihre Chat-Protokolle herunterzuladen und zu löschen, indem Sie auf die Schaltfläche unten klicken. Keine Sorge, Sie können Ihre Chat-Protokolle problemlos über das Backend wieder importieren.",
+	"Scan complete!": "Scan abgeschlossen!",
+	"Scan for documents from {{path}}'": "Dokumente von {{path}} scannen'",
+	"Scan": "Scannen",
+	"Seed": "Seed",
+	"See readme.md for instructions": "Anleitung in readme.md anzeigen",
+	"Select a model": "Ein Modell auswählen",
+	"Send a Messsage": "Eine Nachricht senden",
+	"Send message": "Nachricht senden",
+	"Server connection verified": "Serververbindung überprüft",
+	"Set as default": "Als Standard festlegen",
+	"Set Default Model": "Standardmodell festlegen",
+	"Set Image Size": "Bildgröße festlegen",
+	"Set Steps": "Schritte festlegen",
+	"Settings": "Einstellungen",
+	"Set Title Auto-Generation Model": "Modell für automatische Titelgenerierung festlegen",
+	"Set Voice": "Stimme festlegen",
+	"Share to OpenWebUI Community": "Mit OpenWebUI Community teilen",
+	"Show shortcuts": "Verknüpfungen anzeigen",
+	"Sign Out": "Abmelden",
+	"SpeechRecognition API is not supported in this browser.": "Die SpeechRecognition-API wird in diesem Browser nicht unterstützt.",
+	"Speech recognition error: {{error}}": "Spracherkennungsfehler: {{error}}",
+	"Speech-to-Text Engine": "Sprache-zu-Text-Engine",
+	"Stop Sequence": "Stop Sequence",
+	"STT Settings": "STT-Einstellungen",
+	"Successfully updated": "Erfolgreich aktualisiert",
+	"Successfully updated.": "Erfolgreich aktualisiert.",
+	"Success": "Erfolg",
+	"Sync All": "Alles synchronisieren",
+	"System Prompt": "System-Prompt",
+	"Tags": "Tags",
+	"Temperature": "Temperatur",
+	"Template": "Vorlage",
+	"Text-to-Speech Engine": "Text-zu-Sprache-Engine",
+	"Tfs Z": "Tfs Z",
+	"Theme": "Design",
+	"This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "Dadurch werden Ihre wertvollen Unterhaltungen sicher in Ihrer Backend-Datenbank gespeichert. Vielen Dank!",
+	"Title Auto-Generation": "Automatische Titelgenerierung",
+	"Title Generation Prompt": "Prompt für Titelgenerierung",
+	"Title": "Titel",
+	"To access the available model names for downloading,": "Um auf die verfügbaren Modellnamen zum Herunterladen zuzugreifen,",
+	"Toggle settings": "Einstellungen umschalten",
+	"Toggle sidebar": "Seitenleiste umschalten",
+	"Top K": "Top K",
+	"Top P": "Top P",
+	"TTS Settings": "TTS-Einstellungen",
+	"Uh-oh! There was an issue connecting to {{provider}}.": "Ups! Es gab ein Problem bei der Verbindung mit {{provider}}.",
+	"Upload a GGUF model": "Ein GGUF-Modell hochladen",
+	"Upload files": "Dateien hochladen",
+	"Upload Progress": "Upload-Fortschritt",
+	"URL Mode": "URL-Modus",
+	"User Permissions": "Benutzerberechtigungen",
+	"Users": "Benutzer",
+	"User": "Benutzer",
+	"WebUI Add-ons": "WebUI-Add-Ons",
+	"{{webui_name}} Backend Required": "{{webui_name}}-Backend erforderlich",
+	"WebUI Settings": "WebUI-Einstellungen",
+	"Web": "Web",
+	"Whisper (Local)": "Flüstern (Lokal)",
+	"You're now logged in.": "Sie sind jetzt angemeldet.",
+	"Hide": "Verbergen",
+	"Show": "Anzeigen",
+	"Enter stop sequence": "Stop-Sequenz eingeben",
+	"Enter OpenAI API Key": "OpenAI-API-Key eingeben",
+	"Current Model": "Aktuelles Modell",
+	"Display the username instead of You in the Chat": "Den Benutzernamen anstelle von 'Sie' im Chat anzeigen",
+	"Default titleGenerationPromt": "Erstelle einen prägnanten Satz mit 3-5 Wörtern als Überschrift für die folgende Abfrage. Halte dich dabei strikt an die 3-5-Wort-Grenze und vermeide die Verwendung des Wortes Titel:"
 }

+ 9 - 2
src/lib/i18n/locales/en/common.json

@@ -146,7 +146,7 @@
 	"Name Tag": "Name Tag",
 	"New Chat": "New Chat",
 	"New Password": "New Password",
-	"Notification": "Notification",
+	"Desktop Notifications": "Notification",
 	"Not sure what to write? Switch to": "Not sure what to write? Switch to",
 	"Off": "Off",
 	"Okay, Let's Go!": "Okay, Let's Go!",
@@ -245,5 +245,12 @@
 	"WebUI Settings": "WebUI Settings",
 	"Web": "Web",
 	"Whisper (Local)": "Whisper (Local)",
-	"You're now logged in.": "You're now logged in."
+	"You're now logged in.": "You're now logged in.",
+	"Hide": "Hide",
+	"Show": "Shop",
+	"Enter stop sequence": "Enter stop sequence",
+	"Enter OpenAI API Key": "Enter OpenAI API Key",
+	"Current Model": "Current Model",
+	"Display the username instead of You in the Chat": "Display the username instead of 'You' in the Chat",
+	"Default titleGenerationPromt": "Create a concise, 3-5 word phrase as a header for the following query, strictly adhering to the 3-5 word limit and avoiding the use of the word 'title':"
 }

+ 9 - 2
src/lib/i18n/locales/fa/common.json

@@ -146,7 +146,7 @@
 	"Name Tag": "Name Tag",
 	"New Chat": "گپ جدید",
 	"New Password": "رمز عبور جدید",
-	"Notification": "اعلان",
+	"Desktop Notifications": "اعلان",
 	"Not sure what to write? Switch to": "مطمئن نیستید چه بنویسید؟ تغییر به",
 	"Off": "خاموش",
 	"Okay, Let's Go!": "Okay, Let's Go!",
@@ -245,5 +245,12 @@
 	"WebUI Settings": "تنظیمات WebUI",
 	"Web": "وب",
 	"Whisper (Local)": "Whisper (Local)",
-	"You're now logged in.": "شما اکنون وارد شده‌اید."
+	"You're now logged in.": "شما اکنون وارد شده‌اید.",
+	"Hide": "Hide",
+	"Show": "Shop",
+	"Enter stop sequence": "Enter stop sequence",
+	"Enter OpenAI API Key": "Enter OpenAI API Key",
+	"Current Model": "Current Model",
+	"Display the username instead of You in the Chat": "Display the username instead of 'You' in the Chat",
+	"Default titleGenerationPromt": "Create a concise, 3-5 word phrase as a header for the following query, strictly adhering to the 3-5 word limit and avoiding the use of the word 'title':"
 }

+ 1 - 2
src/routes/(app)/+page.svelte

@@ -772,8 +772,7 @@
 		if ($settings.titleAutoGenerate ?? true) {
 			const title = await generateTitle(
 				localStorage.token,
-				$settings?.titleGenerationPrompt ??
-					"Create a concise, 3-5 word phrase as a header for the following query, strictly adhering to the 3-5 word limit and avoiding the use of the word 'title': {{prompt}}",
+				$settings?.titleGenerationPrompt ?? $i18n.t('Default titleGenerationPromt') + ' {{prompt}}',
 				$settings?.titleAutoGenerateModel ?? selectedModels[0],
 				userPrompt
 			);

+ 1 - 2
src/routes/(app)/c/[id]/+page.svelte

@@ -781,8 +781,7 @@
 		if ($settings.titleAutoGenerate ?? true) {
 			const title = await generateTitle(
 				localStorage.token,
-				$settings?.titleGenerationPrompt ??
-					"Create a concise, 3-5 word phrase as a header for the following query, strictly adhering to the 3-5 word limit and avoiding the use of the word 'title': {{prompt}}",
+				$settings?.titleGenerationPrompt ?? $i18n.t('Default titleGenerationPromt') + ' {{prompt}}',
 				$settings?.titleAutoGenerateModel ?? selectedModels[0],
 				userPrompt
 			);