import { SubmitKey } from "../store/config"; import type { PartialLocaleType } from "./index"; import { getClientConfig } from "../config/client"; import { SAAS_CHAT_UTM_URL } from "@/app/constant"; const isApp = !!getClientConfig()?.isApp; const de: PartialLocaleType = { WIP: "In Bearbeitung...", Error: { Unauthorized: isApp ? `😆 Das GesprĂ€ch hatte einige Probleme, keine Sorge: \\ 1ïžâƒŁ Wenn du ohne Konfiguration sofort starten möchtest, [klicke hier, um sofort zu chatten 🚀](${SAAS_CHAT_UTM_URL}) \\ 2ïžâƒŁ Wenn du deine eigenen OpenAI-Ressourcen verwenden möchtest, klicke [hier](/#/settings), um die Einstellungen zu Ă€ndern ⚙` : `😆 Das GesprĂ€ch hatte einige Probleme, keine Sorge: \ 1ïžâƒŁ Wenn du ohne Konfiguration sofort starten möchtest, [klicke hier, um sofort zu chatten 🚀](${SAAS_CHAT_UTM_URL}) \ 2ïžâƒŁ Wenn du eine private Bereitstellung verwendest, klicke [hier](/#/auth), um den ZugriffsschlĂŒssel einzugeben 🔑 \ 3ïžâƒŁ Wenn du deine eigenen OpenAI-Ressourcen verwenden möchtest, klicke [hier](/#/settings), um die Einstellungen zu Ă€ndern ⚙ `, }, Auth: { Title: "Passwort erforderlich", Tips: "Der Administrator hat die PasswortĂŒberprĂŒfung aktiviert. Bitte geben Sie den Zugangscode unten ein.", SubTips: "Oder geben Sie Ihren OpenAI oder Google API-SchlĂŒssel ein.", Input: "Geben Sie hier den Zugangscode ein", Confirm: "BestĂ€tigen", Later: "SpĂ€ter", Return: "ZurĂŒck", SaasTips: "Die Konfiguration ist zu kompliziert, ich möchte es sofort nutzen", TopTips: "đŸ„ł NextChat AI EinfĂŒhrungsangebot, schalte jetzt OpenAI o1, GPT-4o, Claude-3.5 und die neuesten großen Modelle frei", }, ChatItem: { ChatItemCount: (count: number) => `${count} GesprĂ€che`, }, Chat: { SubTitle: (count: number) => `Insgesamt ${count} GesprĂ€che`, EditMessage: { Title: "Nachricht bearbeiten", Topic: { Title: "Chat-Thema", SubTitle: "Ändern Sie das aktuelle Chat-Thema", }, }, Actions: { ChatList: "Nachrichtliste anzeigen", CompressedHistory: "Komprimierte Historie anzeigen", Export: "Chatverlauf exportieren", Copy: "Kopieren", Stop: "Stoppen", Retry: "Erneut versuchen", Pin: "Anheften", PinToastContent: "1 GesprĂ€ch an den voreingestellten Prompt angeheftet", PinToastAction: "Ansehen", Delete: "Löschen", Edit: "Bearbeiten", RefreshTitle: "Titel aktualisieren", RefreshToast: "Anfrage zur Titelaktualisierung gesendet", }, Commands: { new: "Neues GesprĂ€ch", newm: "Neues GesprĂ€ch aus Maske erstellen", next: "NĂ€chstes GesprĂ€ch", prev: "Vorheriges GesprĂ€ch", clear: "Kontext löschen", del: "GesprĂ€ch löschen", }, InputActions: { Stop: "Antwort stoppen", ToBottom: "Zum neuesten Beitrag", Theme: { auto: "Automatisches Thema", light: "Helles Thema", dark: "Dunkles Thema", }, Prompt: "Schnellbefehle", Masks: "Alle Masken", Clear: "Chat löschen", Settings: "GesprĂ€chseinstellungen", UploadImage: "Bild hochladen", }, Rename: "GesprĂ€ch umbenennen", Typing: "Tippt
", Input: (submitKey: string) => { var inputHints = `${submitKey} senden`; if (submitKey === String(SubmitKey.Enter)) { inputHints += "Shift + Enter fĂŒr Zeilenumbruch"; } return inputHints + "/ fĂŒr AutovervollstĂ€ndigung, : fĂŒr Befehle"; }, Send: "Senden", Config: { Reset: "Erinnerung löschen", SaveAs: "Als Maske speichern", }, IsContext: "Voreingestellter Prompt", }, Export: { Title: "Chatverlauf teilen", Copy: "Alles kopieren", Download: "Datei herunterladen", Share: "Auf ShareGPT teilen", MessageFromYou: "Benutzer", MessageFromChatGPT: "ChatGPT", Format: { Title: "Exportformat", SubTitle: "Kann als Markdown-Text oder PNG-Bild exportiert werden", }, IncludeContext: { Title: "Maske Kontext einbeziehen", SubTitle: "Soll der Maskenkontext in den Nachrichten angezeigt werden?", }, Steps: { Select: "AuswĂ€hlen", Preview: "Vorschau", }, Image: { Toast: "Screenshot wird erstellt", Modal: "Lang drĂŒcken oder Rechtsklick, um Bild zu speichern", }, }, Select: { Search: "Nachrichten suchen", All: "Alles auswĂ€hlen", Latest: "Neueste", Clear: "Auswahl aufheben", }, Memory: { Title: "Historische Zusammenfassung", EmptyContent: "GesprĂ€chsinhalte sind zu kurz, keine Zusammenfassung erforderlich", Send: "Chatverlauf automatisch komprimieren und als Kontext senden", Copy: "Zusammenfassung kopieren", Reset: "[nicht verwendet]", ResetConfirm: "Zusammenfassung löschen bestĂ€tigen?", }, Home: { NewChat: "Neues GesprĂ€ch", DeleteChat: "BestĂ€tigen Sie das Löschen des ausgewĂ€hlten GesprĂ€chs?", DeleteToast: "GesprĂ€ch gelöscht", Revert: "RĂŒckgĂ€ngig machen", }, Settings: { Title: "Einstellungen", SubTitle: "Alle Einstellungsmöglichkeiten", Danger: { Reset: { Title: "Alle Einstellungen zurĂŒcksetzen", SubTitle: "Setzt alle Einstellungen auf die Standardwerte zurĂŒck", Action: "Jetzt zurĂŒcksetzen", Confirm: "BestĂ€tigen Sie das ZurĂŒcksetzen aller Einstellungen?", }, Clear: { Title: "Alle Daten löschen", SubTitle: "Löscht alle Chats und Einstellungsdaten", Action: "Jetzt löschen", Confirm: "BestĂ€tigen Sie das Löschen aller Chats und Einstellungsdaten?", }, }, Lang: { Name: "Sprache", // ACHTUNG: Wenn Sie eine neue Übersetzung hinzufĂŒgen möchten, ĂŒbersetzen Sie diesen Wert bitte nicht, lassen Sie ihn als `Sprache` All: "Alle Sprachen", }, Avatar: "Avatar", FontSize: { Title: "SchriftgrĂ¶ĂŸe", SubTitle: "SchriftgrĂ¶ĂŸe des Chat-Inhalts", }, FontFamily: { Title: "Chat-Schriftart", SubTitle: "Schriftart des Chat-Inhalts, leer lassen, um die globale Standardschriftart anzuwenden", Placeholder: "Schriftartname", }, InjectSystemPrompts: { Title: "Systemweite Eingabeaufforderungen einfĂŒgen", SubTitle: "FĂŒgt jeder Nachricht am Anfang der Nachrichtenliste eine simulierte ChatGPT-Systemaufforderung hinzu", }, InputTemplate: { Title: "Benutzer-Eingabeverarbeitung", SubTitle: "Die neueste Nachricht des Benutzers wird in diese Vorlage eingefĂŒgt", }, Update: { Version: (x: string) => `Aktuelle Version: ${x}`, IsLatest: "Bereits die neueste Version", CheckUpdate: "Auf Updates ĂŒberprĂŒfen", IsChecking: "ÜberprĂŒfe auf Updates...", FoundUpdate: (x: string) => `Neue Version gefunden: ${x}`, GoToUpdate: "Zum Update gehen", }, SendKey: "Sende-Taste", Theme: "Thema", TightBorder: "Randloser Modus", SendPreviewBubble: { Title: "Vorschau-Bubble", SubTitle: "Markdown-Inhalt in der Vorschau-Bubble anzeigen", }, AutoGenerateTitle: { Title: "Titel automatisch generieren", SubTitle: "Basierend auf dem Chat-Inhalt einen passenden Titel generieren", }, Sync: { CloudState: "Cloud-Daten", NotSyncYet: "Noch nicht synchronisiert", Success: "Synchronisation erfolgreich", Fail: "Synchronisation fehlgeschlagen", Config: { Modal: { Title: "Cloud-Synchronisation konfigurieren", Check: "VerfĂŒgbarkeit ĂŒberprĂŒfen", }, SyncType: { Title: "Synchronisationstyp", SubTitle: "WĂ€hlen Sie den bevorzugten Synchronisationsserver aus", }, Proxy: { Title: "Proxy aktivieren", SubTitle: "Beim Synchronisieren im Browser muss ein Proxy aktiviert werden, um Cross-Origin-BeschrĂ€nkungen zu vermeiden", }, ProxyUrl: { Title: "Proxy-Adresse", SubTitle: "Nur fĂŒr projektinterne Cross-Origin-Proxy", }, WebDav: { Endpoint: "WebDAV-Adresse", UserName: "Benutzername", Password: "Passwort", }, UpStash: { Endpoint: "UpStash Redis REST-Url", UserName: "Sicherungsname", Password: "UpStash Redis REST-Token", }, }, LocalState: "Lokale Daten", Overview: (overview: any) => { return `${overview.chat} Chats, ${overview.message} Nachrichten, ${overview.prompt} Eingabeaufforderungen, ${overview.mask} Masken`; }, ImportFailed: "Import fehlgeschlagen", }, Mask: { Splash: { Title: "Masken-Startseite", SubTitle: "Zeige die Masken-Startseite beim Erstellen eines neuen Chats", }, Builtin: { Title: "Eingebaute Masken ausblenden", SubTitle: "Blendet eingebaute Masken in allen Maskenlisten aus", }, }, Prompt: { Disable: { Title: "Automatische Eingabeaufforderung deaktivieren", SubTitle: "Geben Sie am Anfang des Eingabefelds / ein, um die automatische VervollstĂ€ndigung auszulösen", }, List: "Benutzerdefinierte Eingabeaufforderungsliste", ListCount: (builtin: number, custom: number) => `Eingebaut ${builtin} StĂŒck, Benutzerdefiniert ${custom} StĂŒck`, Edit: "Bearbeiten", Modal: { Title: "Eingabeaufforderungsliste", Add: "Neu erstellen", Search: "Eingabeaufforderungen suchen", }, EditModal: { Title: "Eingabeaufforderung bearbeiten", }, }, HistoryCount: { Title: "Anzahl der historischen Nachrichten", SubTitle: "Anzahl der historischen Nachrichten, die bei jeder Anfrage mitgesendet werden", }, CompressThreshold: { Title: "Komprimierungsschwelle fĂŒr historische NachrichtenlĂ€nge", SubTitle: "Wenn die unkomprimierten historischen Nachrichten diesen Wert ĂŒberschreiten, wird komprimiert", }, Usage: { Title: "Guthabenabfrage", SubTitle(used: any, total: any) { return `In diesem Monat verwendet $${used}, Abonnement insgesamt $${total}`; }, IsChecking: "Wird ĂŒberprĂŒft
", Check: "Erneut ĂŒberprĂŒfen", NoAccess: "Geben Sie API-SchlĂŒssel oder Zugangspasswort ein, um das Guthaben einzusehen", }, Access: { SaasStart: { Title: "NextChat AI verwenden", Label: "(Die kosteneffektivste Lösung)", SubTitle: "Offiziell von NextChat verwaltet, sofort einsatzbereit ohne Konfiguration, unterstĂŒtzt die neuesten großen Modelle wie OpenAI o1, GPT-4o und Claude-3.5", ChatNow: "Jetzt chatten", }, AccessCode: { Title: "Zugangscode", SubTitle: "Der Administrator hat die verschlĂŒsselte Zugriffskontrolle aktiviert", Placeholder: "Geben Sie den Zugangscode ein", }, CustomEndpoint: { Title: "Benutzerdefinierte Schnittstelle", SubTitle: "Benutzerdefinierte Azure- oder OpenAI-Dienste verwenden", }, Provider: { Title: "Modellanbieter", SubTitle: "Wechseln Sie zu verschiedenen Anbietern", }, OpenAI: { ApiKey: { Title: "API-SchlĂŒssel", SubTitle: "Verwenden Sie benutzerdefinierten OpenAI-SchlĂŒssel, um PasswortzugangsbeschrĂ€nkungen zu umgehen", Placeholder: "OpenAI API-SchlĂŒssel", }, Endpoint: { Title: "Schnittstellenadresse", SubTitle: "Neben der Standardadresse muss http(s):// enthalten sein", }, }, Azure: { ApiKey: { Title: "SchnittstellenschlĂŒssel", SubTitle: "Verwenden Sie benutzerdefinierten Azure-SchlĂŒssel, um PasswortzugangsbeschrĂ€nkungen zu umgehen", Placeholder: "Azure API-SchlĂŒssel", }, Endpoint: { Title: "Schnittstellenadresse", SubTitle: "Beispiel:", }, ApiVerion: { Title: "Schnittstellenversion (azure api version)", SubTitle: "WĂ€hlen Sie eine spezifische Teilversion aus", }, }, Anthropic: { ApiKey: { Title: "SchnittstellenschlĂŒssel", SubTitle: "Verwenden Sie benutzerdefinierten Anthropic-SchlĂŒssel, um PasswortzugangsbeschrĂ€nkungen zu umgehen", Placeholder: "Anthropic API-SchlĂŒssel", }, Endpoint: { Title: "Schnittstellenadresse", SubTitle: "Beispiel:", }, ApiVerion: { Title: "Schnittstellenversion (claude api version)", SubTitle: "WĂ€hlen Sie eine spezifische API-Version aus", }, }, Google: { ApiKey: { Title: "API-SchlĂŒssel", SubTitle: "Holen Sie sich Ihren API-SchlĂŒssel von Google AI", Placeholder: "Geben Sie Ihren Google AI Studio API-SchlĂŒssel ein", }, Endpoint: { Title: "Endpunktadresse", SubTitle: "Beispiel:", }, ApiVersion: { Title: "API-Version (nur fĂŒr gemini-pro)", SubTitle: "WĂ€hlen Sie eine spezifische API-Version aus", }, GoogleSafetySettings: { Title: "Google Sicherheitsfilterstufe", SubTitle: "Inhaltfilterstufe einstellen", }, }, Baidu: { ApiKey: { Title: "API-SchlĂŒssel", SubTitle: "Verwenden Sie benutzerdefinierten Baidu API-SchlĂŒssel", Placeholder: "Baidu API-SchlĂŒssel", }, SecretKey: { Title: "GeheimschlĂŒssel", SubTitle: "Verwenden Sie benutzerdefinierten Baidu GeheimschlĂŒssel", Placeholder: "Baidu GeheimschlĂŒssel", }, Endpoint: { Title: "Schnittstellenadresse", SubTitle: "Keine benutzerdefinierten Adressen unterstĂŒtzen, konfigurieren Sie in .env", }, }, ByteDance: { ApiKey: { Title: "SchnittstellenschlĂŒssel", SubTitle: "Verwenden Sie benutzerdefinierten ByteDance API-SchlĂŒssel", Placeholder: "ByteDance API-SchlĂŒssel", }, Endpoint: { Title: "Schnittstellenadresse", SubTitle: "Beispiel:", }, }, Alibaba: { ApiKey: { Title: "SchnittstellenschlĂŒssel", SubTitle: "Verwenden Sie benutzerdefinierten Alibaba Cloud API-SchlĂŒssel", Placeholder: "Alibaba Cloud API-SchlĂŒssel", }, Endpoint: { Title: "Schnittstellenadresse", SubTitle: "Beispiel:", }, }, CustomModel: { Title: "Benutzerdefinierter Modellname", SubTitle: "FĂŒgen Sie benutzerdefinierte Modelloptionen hinzu, getrennt durch Kommas", }, }, Model: "Modell", CompressModel: { Title: "Kompressionsmodell", SubTitle: "Modell zur Komprimierung des Verlaufs", }, Temperature: { Title: "ZufĂ€lligkeit (temperature)", SubTitle: "Je höher der Wert, desto zufĂ€lliger die Antwort", }, TopP: { Title: "Kern-Sampling (top_p)", SubTitle: "Ähnlich der ZufĂ€lligkeit, aber nicht zusammen mit ZufĂ€lligkeit Ă€ndern", }, MaxTokens: { Title: "Maximale Token-Anzahl pro Antwort", SubTitle: "Maximale Anzahl der Tokens pro Interaktion", }, PresencePenalty: { Title: "Themenfrische (presence_penalty)", SubTitle: "Je höher der Wert, desto wahrscheinlicher wird auf neue Themen eingegangen", }, FrequencyPenalty: { Title: "HĂ€ufigkeitsstrafe (frequency_penalty)", SubTitle: "Je höher der Wert, desto wahrscheinlicher werden wiederholte Wörter reduziert", }, }, Store: { DefaultTopic: "Neuer Chat", BotHello: "Wie kann ich Ihnen helfen?", Error: "Ein Fehler ist aufgetreten, bitte versuchen Sie es spĂ€ter noch einmal", Prompt: { History: (content: string) => "Dies ist eine Zusammenfassung des bisherigen Chats als Hintergrundinformation: " + content, Topic: "Geben Sie ein kurzes Thema in vier bis fĂŒnf Wörtern zurĂŒck, ohne ErklĂ€rungen, ohne Satzzeichen, ohne FĂŒllwörter, ohne zusĂ€tzliche Texte und ohne Fettdruck. Wenn kein Thema vorhanden ist, geben Sie bitte „Allgemeines GesprĂ€ch“ zurĂŒck.", Summarize: "Fassen Sie den GesprĂ€chsinhalt zusammen, um als Kontextaufforderung fĂŒr den nĂ€chsten Schritt zu dienen, halten Sie es unter 200 Zeichen", }, }, Copy: { Success: "In die Zwischenablage geschrieben", Failed: "Kopieren fehlgeschlagen, bitte erlauben Sie Zugriff auf die Zwischenablage", }, Download: { Success: "Inhalt wurde in Ihrem Verzeichnis heruntergeladen.", Failed: "Download fehlgeschlagen.", }, Context: { Toast: (x: any) => `Beinhaltet ${x} vordefinierte Eingabeaufforderungen`, Edit: "Aktuelle GesprĂ€chseinstellungen", Add: "Neues GesprĂ€ch hinzufĂŒgen", Clear: "Kontext gelöscht", Revert: "Kontext wiederherstellen", }, Plugin: { Name: "Plugins", }, FineTuned: { Sysmessage: "Du bist ein Assistent", }, SearchChat: { Name: "Suche", Page: { Title: "Chatverlauf durchsuchen", Search: "Suchbegriff eingeben", NoResult: "Keine Ergebnisse gefunden", NoData: "Keine Daten", Loading: "Laden", SubTitle: (count: number) => `${count} Ergebnisse gefunden`, }, Item: { View: "Ansehen", }, }, Mask: { Name: "Masken", Page: { Title: "Vordefinierte Rollenmasken", SubTitle: (count: number) => `${count} vordefinierte Rollenbeschreibungen`, Search: "Rollenmasken suchen", Create: "Neu erstellen", }, Item: { Info: (count: number) => `Beinhaltet ${count} vordefinierte GesprĂ€che`, Chat: "GesprĂ€ch", View: "Anzeigen", Edit: "Bearbeiten", Delete: "Löschen", DeleteConfirm: "BestĂ€tigen Sie das Löschen?", }, EditModal: { Title: (readonly: boolean) => `Vordefinierte Maske bearbeiten ${readonly ? "Nur lesen" : ""}`, Download: "Vorgabe herunterladen", Clone: "Vorgabe klonen", }, Config: { Avatar: "Rollen-Avatar", Name: "Rollenname", Sync: { Title: "Globale Einstellungen verwenden", SubTitle: "Soll das aktuelle GesprĂ€ch die globalen Modelleinstellungen verwenden?", Confirm: "Die benutzerdefinierten Einstellungen des aktuellen GesprĂ€chs werden automatisch ĂŒberschrieben. BestĂ€tigen Sie, dass Sie die globalen Einstellungen aktivieren möchten?", }, HideContext: { Title: "Vordefinierte GesprĂ€che ausblenden", SubTitle: "Nach dem Ausblenden werden vordefinierte GesprĂ€che nicht mehr im Chat angezeigt", }, Share: { Title: "Diese Maske teilen", SubTitle: "Generieren Sie einen Direktlink zu dieser Maske", Action: "Link kopieren", }, }, }, NewChat: { Return: "ZurĂŒck", Skip: "Direkt beginnen", NotShow: "Nicht mehr anzeigen", ConfirmNoShow: "BestĂ€tigen Sie die Deaktivierung? Nach der Deaktivierung können Sie jederzeit in den Einstellungen wieder aktivieren.", Title: "WĂ€hlen Sie eine Maske aus", SubTitle: "Starten Sie jetzt und lassen Sie sich von den Gedanken hinter der Maske inspirieren", More: "Alle anzeigen", }, URLCommand: { Code: "Ein Zugangscode wurde im Link gefunden. Möchten Sie diesen automatisch einfĂŒgen?", Settings: "Vordefinierte Einstellungen wurden im Link gefunden. Möchten Sie diese automatisch einfĂŒgen?", }, UI: { Confirm: "BestĂ€tigen", Cancel: "Abbrechen", Close: "Schließen", Create: "Neu erstellen", Edit: "Bearbeiten", Export: "Exportieren", Import: "Importieren", Sync: "Synchronisieren", Config: "Konfigurieren", }, Exporter: { Description: { Title: "Nur Nachrichten nach dem Löschen des Kontexts werden angezeigt", }, Model: "Modell", Messages: "Nachrichten", Topic: "Thema", Time: "Zeit", }, }; export default de;