diff --git a/src/assets/locale/da/common.json b/src/assets/locale/da/common.json
index 4d0de2d..de82642 100644
--- a/src/assets/locale/da/common.json
+++ b/src/assets/locale/da/common.json
@@ -70,6 +70,10 @@
"label": "Længden af Kontekst",
"placeholder": "Instast Længden af Kontekst værdien (standard: 2048)"
},
+ "numPredict": {
+ "label": "Maks Tokens (num_predict)",
+ "placeholder": "Indtast Maks Tokens værdi (fx. 2048, 4096)"
+ },
"seed": {
"label": "Seed",
"placeholder": "Indtast Seed værdi (fx. 1234)",
@@ -112,5 +116,6 @@
"older": "Ældre"
},
"pin": "Fastgør",
- "unpin": "Frigør"
+ "unpin": "Frigør",
+ "generationInfo": "Genererings Info"
}
\ No newline at end of file
diff --git a/src/assets/locale/da/openai.json b/src/assets/locale/da/openai.json
index 3410ae6..8ef3c07 100644
--- a/src/assets/locale/da/openai.json
+++ b/src/assets/locale/da/openai.json
@@ -42,7 +42,7 @@
"delete": "Slet",
"edit": "Rediger",
"newModel": "Tilføj Modeller til Udbyder",
- "noNewModel": "For LMStudio henter vi dynamisk. Ingen manuel tilføjelse nødvendig.",
+ "noNewModel": "For LMStudio, Ollama, Llamafile, henter vi dynamisk. Ingen manuel tilføjelse nødvendig.",
"searchModel": "Søg Model",
"selectAll": "Vælg Alle",
"save": "Gem",
diff --git a/src/assets/locale/da/option.json b/src/assets/locale/da/option.json
index 4548680..5fc0281 100644
--- a/src/assets/locale/da/option.json
+++ b/src/assets/locale/da/option.json
@@ -8,5 +8,6 @@
"somethingWentWrong": "Noget gik galt",
"validationSelectModel": "Venligst vælg en model for at forsæætte",
"deleteHistoryConfirmation": "Er du sikker på at du vil slette denne historik?",
- "editHistoryTitle": "Indtast en ny titel"
+ "editHistoryTitle": "Indtast en ny titel",
+ "temporaryChat": "Midlertidig Chat"
}
\ No newline at end of file
diff --git a/src/assets/locale/da/playground.json b/src/assets/locale/da/playground.json
index f8df2b2..8fdcd54 100644
--- a/src/assets/locale/da/playground.json
+++ b/src/assets/locale/da/playground.json
@@ -25,5 +25,6 @@
"stopStreaming": "Stop Streaming",
"knowledge": "Viden"
},
- "sendWhenEnter": "Søg, når Indtast trykkes"
+ "sendWhenEnter": "Søg, når Indtast trykkes",
+ "welcome": "Hej! Hvordan kan jeg hjælpe dig i dag?"
}
\ No newline at end of file
diff --git a/src/assets/locale/da/settings.json b/src/assets/locale/da/settings.json
index 1666d9c..1d088d1 100644
--- a/src/assets/locale/da/settings.json
+++ b/src/assets/locale/da/settings.json
@@ -32,6 +32,9 @@
},
"generateTitle": {
"label": "Generer titel med AI"
+ },
+ "ollamaStatus": {
+ "label": "Aktivér eller deaktivér Ollama forbindelsesstatus kontrol"
}
},
"sidepanelRag": {
diff --git a/src/assets/locale/de/common.json b/src/assets/locale/de/common.json
index 739e0dd..65b72ab 100644
--- a/src/assets/locale/de/common.json
+++ b/src/assets/locale/de/common.json
@@ -70,6 +70,10 @@
"label": "Anzahl der Kontexte",
"placeholder": "Geben Sie die Anzahl der Kontexte ein (Standard: 2048)"
},
+ "numPredict": {
+ "label": "Max Tokens (num_predict)",
+ "placeholder": "Geben Sie den Max-Tokens-Wert ein (z.B. 2048, 4096)"
+ },
"seed": {
"label": "Seed",
"placeholder": "Geben Sie den Seed-Wert ein (z.B. 1234)",
@@ -112,5 +116,6 @@
"older": "Älter"
},
"pin": "Anheften",
- "unpin": "Losheften"
+ "unpin": "Losheften",
+ "generationInfo": "Generierungsinformationen"
}
\ No newline at end of file
diff --git a/src/assets/locale/de/openai.json b/src/assets/locale/de/openai.json
index 23a684e..98e7519 100644
--- a/src/assets/locale/de/openai.json
+++ b/src/assets/locale/de/openai.json
@@ -42,7 +42,7 @@
"delete": "Löschen",
"edit": "Bearbeiten",
"newModel": "Modelle zum Anbieter hinzufügen",
- "noNewModel": "Für LMStudio holen wir die Daten dynamisch. Keine manuelle Hinzufügung erforderlich.",
+ "noNewModel": "Für LMStudio, Ollama, Llamafile, holen wir die Daten dynamisch. Keine manuelle Hinzufügung erforderlich.",
"searchModel": "Modell suchen",
"selectAll": "Alle auswählen",
"save": "Speichern",
diff --git a/src/assets/locale/de/option.json b/src/assets/locale/de/option.json
index f6ec7f9..4303931 100644
--- a/src/assets/locale/de/option.json
+++ b/src/assets/locale/de/option.json
@@ -8,5 +8,6 @@
"somethingWentWrong": "Etwas ist schiefgelaufen",
"validationSelectModel": "Bitte wähle ein Modell aus, um fortzufahren",
"deleteHistoryConfirmation": "Bist du sicher, dass du diesen Verlauf löschen möchtest?",
- "editHistoryTitle": "Gib einen neuen Titel ein"
+ "editHistoryTitle": "Gib einen neuen Titel ein",
+ "temporaryChat": "Temporärer Chat"
}
\ No newline at end of file
diff --git a/src/assets/locale/de/playground.json b/src/assets/locale/de/playground.json
index 119d87f..43eafb9 100644
--- a/src/assets/locale/de/playground.json
+++ b/src/assets/locale/de/playground.json
@@ -25,5 +25,6 @@
"stopStreaming": "Streaming stoppen",
"knowledge": "Wissen"
},
- "sendWhenEnter": "Senden bei Drücken der Eingabetaste"
+ "sendWhenEnter": "Senden bei Drücken der Eingabetaste",
+ "welcome": "Hallo! Wie kann ich Ihnen heute helfen?"
}
\ No newline at end of file
diff --git a/src/assets/locale/de/settings.json b/src/assets/locale/de/settings.json
index 30a5da3..c6b134b 100644
--- a/src/assets/locale/de/settings.json
+++ b/src/assets/locale/de/settings.json
@@ -32,6 +32,9 @@
},
"generateTitle": {
"label": "Titel mit KI generieren"
+ },
+ "ollamaStatus": {
+ "label": "Ollama-Verbindungsstatus-Überprüfung aktivieren oder deaktivieren"
}
},
"sidepanelRag": {
diff --git a/src/assets/locale/en/common.json b/src/assets/locale/en/common.json
index f5b9e39..d033144 100644
--- a/src/assets/locale/en/common.json
+++ b/src/assets/locale/en/common.json
@@ -70,6 +70,10 @@
"label": "Number of Contexts",
"placeholder": "Enter Number of Contexts value (default: 2048)"
},
+ "numPredict": {
+ "label": "Max Tokens (num_predict)",
+ "placeholder": "Enter Max Tokens value (e.g. 2048, 4096)"
+ },
"seed": {
"label": "Seed",
"placeholder": "Enter Seed value (e.g. 1234)",
@@ -116,5 +120,6 @@
"older": "Older"
},
"pin": "Pin",
- "unpin": "Unpin"
+ "unpin": "Unpin",
+ "generationInfo": "Generation Info"
}
diff --git a/src/assets/locale/en/openai.json b/src/assets/locale/en/openai.json
index c0838cb..f8ad298 100644
--- a/src/assets/locale/en/openai.json
+++ b/src/assets/locale/en/openai.json
@@ -42,7 +42,7 @@
"delete": "Delete",
"edit": "Edit",
"newModel": "Add Models to Provider",
- "noNewModel": "For LMStudio, we fetch dynamically. No manual addition needed.",
+ "noNewModel": "For LMStudio, Ollama, Llamafile, we fetch dynamically. No manual addition needed.",
"searchModel": "Search Model",
"selectAll": "Select All",
"save": "Save",
diff --git a/src/assets/locale/en/option.json b/src/assets/locale/en/option.json
index 5739b40..7d11938 100644
--- a/src/assets/locale/en/option.json
+++ b/src/assets/locale/en/option.json
@@ -8,5 +8,6 @@
"somethingWentWrong": "Something went wrong",
"validationSelectModel": "Please select a model to continue",
"deleteHistoryConfirmation": "Are you sure you want to delete this history?",
- "editHistoryTitle": "Enter a new title"
+ "editHistoryTitle": "Enter a new title",
+ "temporaryChat": "Temporary Chat"
}
\ No newline at end of file
diff --git a/src/assets/locale/en/playground.json b/src/assets/locale/en/playground.json
index 05da9ad..c4f5f5c 100644
--- a/src/assets/locale/en/playground.json
+++ b/src/assets/locale/en/playground.json
@@ -23,7 +23,9 @@
"speechToText": "Speech to Text",
"uploadImage": "Upload Image",
"stopStreaming": "Stop Streaming",
- "knowledge": "Knowledge"
+ "knowledge": "Knowledge",
+ "vision": "[Experimental] Vision Chat"
},
- "sendWhenEnter": "Send when Enter pressed"
+ "sendWhenEnter": "Send when Enter pressed",
+ "welcome": "Hello! How can I help you today?"
}
\ No newline at end of file
diff --git a/src/assets/locale/en/settings.json b/src/assets/locale/en/settings.json
index 8f19b6a..eb98bf4 100644
--- a/src/assets/locale/en/settings.json
+++ b/src/assets/locale/en/settings.json
@@ -32,6 +32,9 @@
},
"generateTitle": {
"label": "Generate Title using AI"
+ },
+ "ollamaStatus" :{
+ "label":"Enable or disable Ollama connection status check"
}
},
"sidepanelRag": {
diff --git a/src/assets/locale/es/common.json b/src/assets/locale/es/common.json
index 65590aa..210e043 100644
--- a/src/assets/locale/es/common.json
+++ b/src/assets/locale/es/common.json
@@ -70,6 +70,10 @@
"label": "Cantidad de contextos",
"placeholder": "Ingresar el valor de tamaño de la ventana de contexto (por defecto: 2048)"
},
+ "numPredict": {
+ "label": "Máximo de Tokens (num_predict)",
+ "placeholder": "Ingrese el valor máximo de Tokens (ej: 2048, 4096)"
+ },
"seed": {
"label": "Semilla",
"placeholder": "Ingresar el valor de la semilla (ej: 1234)",
@@ -111,5 +115,6 @@
"older": "Más antiguo"
},
"pin": "Fijar",
- "unpin": "Desfijar"
+ "unpin": "Desfijar",
+ "generationInfo": "Información de Generación"
}
\ No newline at end of file
diff --git a/src/assets/locale/es/openai.json b/src/assets/locale/es/openai.json
index 2e84a19..b4bd9b2 100644
--- a/src/assets/locale/es/openai.json
+++ b/src/assets/locale/es/openai.json
@@ -42,7 +42,7 @@
"delete": "Eliminar",
"edit": "Editar",
"newModel": "Añadir Modelos al Proveedor",
- "noNewModel": "Para LMStudio, obtenemos dinámicamente. No se necesita adición manual.",
+ "noNewModel": "Para LMStudio, Ollama, Llamafile, obtenemos dinámicamente. No se necesita adición manual.",
"searchModel": "Buscar Modelo",
"selectAll": "Seleccionar Todo",
"save": "Guardar",
diff --git a/src/assets/locale/es/option.json b/src/assets/locale/es/option.json
index 3c48761..d9ab8cf 100644
--- a/src/assets/locale/es/option.json
+++ b/src/assets/locale/es/option.json
@@ -8,5 +8,6 @@
"somethingWentWrong": "Hubo un error",
"validationSelectModel": "Selecione un modelo para continuar",
"deleteHistoryConfirmation": "¿Esta seguro que quiere borrar éste histórico?",
- "editHistoryTitle": "Ingrese un nuevo título"
+ "editHistoryTitle": "Ingrese un nuevo título",
+ "temporaryChat": "Chat Temporal"
}
diff --git a/src/assets/locale/es/playground.json b/src/assets/locale/es/playground.json
index afc3771..2e16639 100644
--- a/src/assets/locale/es/playground.json
+++ b/src/assets/locale/es/playground.json
@@ -25,5 +25,6 @@
"stopStreaming": "Parar Transmisión",
"knowledge": "Conocimiento"
},
- "sendWhenEnter": "Enviar cuando presione Enter"
+ "sendWhenEnter": "Enviar cuando presione Enter",
+ "welcome": "¡Hola! ¿Cómo puedo ayudarte hoy?"
}
diff --git a/src/assets/locale/es/settings.json b/src/assets/locale/es/settings.json
index 241df94..4ed17d8 100644
--- a/src/assets/locale/es/settings.json
+++ b/src/assets/locale/es/settings.json
@@ -32,6 +32,9 @@
},
"generateTitle": {
"label": "Generar título usando IA"
+ },
+ "ollamaStatus": {
+ "label": "Habilitar o deshabilitar la verificación del estado de conexión de Ollama"
}
},
"sidepanelRag": {
diff --git a/src/assets/locale/fa/common.json b/src/assets/locale/fa/common.json
index 4adb307..72301c7 100644
--- a/src/assets/locale/fa/common.json
+++ b/src/assets/locale/fa/common.json
@@ -70,6 +70,10 @@
"label": "Number of Contexts",
"placeholder": "مقدار Number of Contexts را وارد کنید (پیش فرض: 2048)"
},
+ "numPredict": {
+ "label": "حداکثر توکنها (num_predict)",
+ "placeholder": "مقدار حداکثر توکنها را وارد کنید (مثلا 2048، 4096)"
+ },
"seed": {
"label": "Seed",
"placeholder": "مقدار Seed را وارد کنید (e.g. 1234)",
@@ -105,5 +109,6 @@
"older": "قدیمیتر"
},
"pin": "پین کردن",
- "unpin": "حذف پین"
+ "unpin": "حذف پین",
+ "generationInfo": "اطلاعات تولید"
}
\ No newline at end of file
diff --git a/src/assets/locale/fa/openai.json b/src/assets/locale/fa/openai.json
index 479e509..7258e83 100644
--- a/src/assets/locale/fa/openai.json
+++ b/src/assets/locale/fa/openai.json
@@ -42,7 +42,7 @@
"delete": "حذف",
"edit": "ویرایش",
"newModel": "افزودن مدلها به ارائهدهنده",
- "noNewModel": "برای LMStudio، ما به صورت پویا دریافت میکنیم. نیازی به افزودن دستی نیست.",
+ "noNewModel": "برای LMStudio, Ollama, Llamafile, ما به صورت پویا دریافت میکنیم. نیازی به افزودن دستی نیست.",
"searchModel": "جستجوی مدل",
"selectAll": "انتخاب همه",
"save": "ذخیره",
diff --git a/src/assets/locale/fa/option.json b/src/assets/locale/fa/option.json
index 9188710..5278cd0 100644
--- a/src/assets/locale/fa/option.json
+++ b/src/assets/locale/fa/option.json
@@ -8,5 +8,6 @@
"somethingWentWrong": "مشکلی پیش آمد",
"validationSelectModel": "لطفا یک مدل را برای ادامه انتخاب کنید",
"deleteHistoryConfirmation": "آیا مطمئن هستید که می خواهید این تاریخچه را حذف کنید؟",
- "editHistoryTitle": "یک عنوان جدید وارد کنید"
+ "editHistoryTitle": "یک عنوان جدید وارد کنید",
+ "temporaryChat": "گپ موقت"
}
diff --git a/src/assets/locale/fa/playground.json b/src/assets/locale/fa/playground.json
index e9161a7..3732e7f 100644
--- a/src/assets/locale/fa/playground.json
+++ b/src/assets/locale/fa/playground.json
@@ -25,5 +25,6 @@
"stopStreaming": "توقف Streaming",
"knowledge": "دانش"
},
- "sendWhenEnter": "با فشار دادن Enter ارسال شود"
+ "sendWhenEnter": "با فشار دادن Enter ارسال شود",
+ "welcome": "سلام! امروز چطور میتوانم به شما کمک کنم؟"
}
diff --git a/src/assets/locale/fa/settings.json b/src/assets/locale/fa/settings.json
index 039f222..0a0cde8 100644
--- a/src/assets/locale/fa/settings.json
+++ b/src/assets/locale/fa/settings.json
@@ -32,6 +32,9 @@
},
"generateTitle": {
"label": "تولید عنوان با استفاده از هوش مصنوعی"
+ },
+ "ollamaStatus": {
+ "label": "فعال یا غیرفعال کردن بررسی وضعیت اتصال Ollama"
}
},
"sidepanelRag": {
diff --git a/src/assets/locale/fr/common.json b/src/assets/locale/fr/common.json
index 8dbe609..d11ef8c 100644
--- a/src/assets/locale/fr/common.json
+++ b/src/assets/locale/fr/common.json
@@ -70,6 +70,10 @@
"label": "Nombre de contextes",
"placeholder": "Entrez la valeur du nombre de contextes (par défaut: 2048)"
},
+ "numPredict": {
+ "label": "Tokens maximum (num_predict)",
+ "placeholder": "Entrez la valeur des tokens maximum (par exemple 2048, 4096)"
+ },
"seed": {
"label": "Graine",
"placeholder": "Entrez la valeur des semences (par exemple 1234)",
@@ -111,5 +115,6 @@
"older": "Plus ancien"
},
"pin": "Épingler",
- "unpin": "Désépingler"
+ "unpin": "Désépingler",
+ "generationInfo": "Informations de génération"
}
\ No newline at end of file
diff --git a/src/assets/locale/fr/openai.json b/src/assets/locale/fr/openai.json
index a71256c..2d9a0c2 100644
--- a/src/assets/locale/fr/openai.json
+++ b/src/assets/locale/fr/openai.json
@@ -42,7 +42,7 @@
"delete": "Supprimer",
"edit": "Modifier",
"newModel": "Ajouter des modèles au fournisseur",
- "noNewModel": "Pour LMStudio, nous récupérons dynamiquement. Pas besoin d'ajout manuel.",
+ "noNewModel": "Pour LMStudio, Ollama, Llamafile, nous récupérons dynamiquement. Pas besoin d'ajout manuel.",
"searchModel": "Rechercher un modèle",
"selectAll": "Tout sélectionner",
"save": "Enregistrer",
diff --git a/src/assets/locale/fr/option.json b/src/assets/locale/fr/option.json
index ec40c0e..ad374aa 100644
--- a/src/assets/locale/fr/option.json
+++ b/src/assets/locale/fr/option.json
@@ -8,5 +8,6 @@
"somethingWentWrong": "Quelque chose s'est mal passé",
"validationSelectModel": "Veuillez sélectionner un modèle pour continuer",
"deleteHistoryConfirmation": "Êtes-vous sûr de vouloir supprimer cette historique ?",
- "editHistoryTitle": "Entrez un nouveau titre"
+ "editHistoryTitle": "Entrez un nouveau titre",
+ "temporaryChat": "Chat temporaire"
}
\ No newline at end of file
diff --git a/src/assets/locale/fr/playground.json b/src/assets/locale/fr/playground.json
index fddf9c0..e81c542 100644
--- a/src/assets/locale/fr/playground.json
+++ b/src/assets/locale/fr/playground.json
@@ -25,5 +25,6 @@
"stopStreaming": "Arrêtez la diffusion",
"knowledge": "Connaissance"
},
- "sendWhenEnter": "Envoyer en appuyant sur Entrée"
+ "sendWhenEnter": "Envoyer en appuyant sur Entrée",
+ "welcome": "Bonjour ! Comment puis-je vous aider aujourd'hui ?"
}
\ No newline at end of file
diff --git a/src/assets/locale/fr/settings.json b/src/assets/locale/fr/settings.json
index 027c1b3..7d3b191 100644
--- a/src/assets/locale/fr/settings.json
+++ b/src/assets/locale/fr/settings.json
@@ -32,6 +32,9 @@
},
"generateTitle": {
"label": "Générer le titre en utilisant l'IA"
+ },
+ "ollamaStatus": {
+ "label": "Activer ou désactiver la vérification de l'état de la connexion Ollama"
}
},
"sidepanelRag": {
diff --git a/src/assets/locale/it/common.json b/src/assets/locale/it/common.json
index 80ede68..6b08509 100644
--- a/src/assets/locale/it/common.json
+++ b/src/assets/locale/it/common.json
@@ -70,6 +70,10 @@
"label": "Dimensione del Contesto",
"placeholder": "Inserisci la Dimensione del Contesto (default: 2048)"
},
+ "numPredict": {
+ "label": "Token Massimi (num_predict)",
+ "placeholder": "Inserisci il valore dei Token Massimi (es. 2048, 4096)"
+ },
"seed": {
"label": "Seed",
"placeholder": "Inserisci il Valore Seed (e.g. 1234)",
@@ -111,5 +115,6 @@
"older": "Più Vecchi"
},
"pin": "Fissa",
- "unpin": "Rimuovi"
+ "unpin": "Rimuovi",
+ "generationInfo": "Informazioni sulla Generazione"
}
\ No newline at end of file
diff --git a/src/assets/locale/it/openai.json b/src/assets/locale/it/openai.json
index c9d27ef..589da51 100644
--- a/src/assets/locale/it/openai.json
+++ b/src/assets/locale/it/openai.json
@@ -42,7 +42,7 @@
"delete": "Elimina",
"edit": "Modifica",
"newModel": "Aggiungi Modelli al Provider",
- "noNewModel": "Per LMStudio, recuperiamo dinamicamente. Non è necessaria l'aggiunta manuale.",
+ "noNewModel": "Per LMStudio, Ollama, Llamafile, recuperiamo dinamicamente. Non è necessaria l'aggiunta manuale.",
"searchModel": "Cerca Modello",
"selectAll": "Seleziona Tutto",
"save": "Salva",
diff --git a/src/assets/locale/it/option.json b/src/assets/locale/it/option.json
index 6fcd098..fb222c3 100644
--- a/src/assets/locale/it/option.json
+++ b/src/assets/locale/it/option.json
@@ -8,5 +8,6 @@
"somethingWentWrong": "Qualcosa è andato storto",
"validationSelectModel": "Scegliere un modello per continuare",
"deleteHistoryConfirmation": "Sei sicuro che vuoi eliminare la cronologia?",
- "editHistoryTitle": "Inserisci un nuovo titolo"
+ "editHistoryTitle": "Inserisci un nuovo titolo",
+ "temporaryChat": "Chat Temporanea"
}
\ No newline at end of file
diff --git a/src/assets/locale/it/playground.json b/src/assets/locale/it/playground.json
index 766fe20..c43cf87 100644
--- a/src/assets/locale/it/playground.json
+++ b/src/assets/locale/it/playground.json
@@ -25,5 +25,6 @@
"stopStreaming": "Ferma lo Streaming",
"knowledge": "Conoscenza"
},
- "sendWhenEnter": "Invia subito dopo Enter"
+ "sendWhenEnter": "Invia subito dopo Enter",
+ "welcome": "Ciao! Come posso aiutarti oggi?"
}
\ No newline at end of file
diff --git a/src/assets/locale/it/settings.json b/src/assets/locale/it/settings.json
index af15a71..e227d22 100644
--- a/src/assets/locale/it/settings.json
+++ b/src/assets/locale/it/settings.json
@@ -32,6 +32,9 @@
},
"generateTitle": {
"label": "Genera titolo utilizzando l'IA"
+ },
+ "ollamaStatus": {
+ "label": "Abilita o disabilita il controllo dello stato della connessione Ollama"
}
},
"sidepanelRag": {
diff --git a/src/assets/locale/ja-JP/common.json b/src/assets/locale/ja-JP/common.json
index df20028..92ba8e0 100644
--- a/src/assets/locale/ja-JP/common.json
+++ b/src/assets/locale/ja-JP/common.json
@@ -70,6 +70,10 @@
"label": "コンテキストの数",
"placeholder": "コンテキスト数を入力してください(デフォルト:2048)"
},
+ "numPredict": {
+ "label": "最大トークン数 (num_predict)",
+ "placeholder": "最大トークン数を入力してください(例:2048、4096)"
+ },
"seed": {
"label": "シード",
"placeholder": "シード値を入力してください(例:1234)",
@@ -111,5 +115,6 @@
"older": "それ以前"
},
"pin": "固定",
- "unpin": "固定解除"
+ "unpin": "固定解除",
+ "generationInfo": "生成情報"
}
\ No newline at end of file
diff --git a/src/assets/locale/ja-JP/openai.json b/src/assets/locale/ja-JP/openai.json
index 829e886..2e755e8 100644
--- a/src/assets/locale/ja-JP/openai.json
+++ b/src/assets/locale/ja-JP/openai.json
@@ -42,7 +42,7 @@
"delete": "削除",
"edit": "編集",
"newModel": "プロバイダーにモデルを追加",
- "noNewModel": "LMStudioの場合、動的に取得します。手動での追加は不要です。",
+ "noNewModel": "LMStudio, Ollama, Llamafile,の場合、動的に取得します。手動での追加は不要です。",
"searchModel": "モデルを検索",
"selectAll": "すべて選択",
"save": "保存",
diff --git a/src/assets/locale/ja-JP/option.json b/src/assets/locale/ja-JP/option.json
index 57b023b..76dc343 100644
--- a/src/assets/locale/ja-JP/option.json
+++ b/src/assets/locale/ja-JP/option.json
@@ -8,5 +8,6 @@
"somethingWentWrong": "何かが間違っています",
"validationSelectModel": "続行するにはモデルを選択してください",
"deleteHistoryConfirmation": "この履歴を削除しますか?",
- "editHistoryTitle": "新しいタイトルを入力"
+ "editHistoryTitle": "新しいタイトルを入力",
+ "temporaryChat": "一時的なチャット"
}
\ No newline at end of file
diff --git a/src/assets/locale/ja-JP/playground.json b/src/assets/locale/ja-JP/playground.json
index 96c4d1a..f89911c 100644
--- a/src/assets/locale/ja-JP/playground.json
+++ b/src/assets/locale/ja-JP/playground.json
@@ -25,5 +25,6 @@
"stopStreaming": "ストリーミングを停止",
"knowledge": "知識"
},
- "sendWhenEnter": "Enterキーを押すと送信"
+ "sendWhenEnter": "Enterキーを押すと送信",
+ "welcome": "こんにちは!本日はどのようなお手伝いができますか?"
}
\ No newline at end of file
diff --git a/src/assets/locale/ja-JP/settings.json b/src/assets/locale/ja-JP/settings.json
index af5a1f5..0058062 100644
--- a/src/assets/locale/ja-JP/settings.json
+++ b/src/assets/locale/ja-JP/settings.json
@@ -35,6 +35,9 @@
},
"generateTitle": {
"label": "AIを使用してタイトルを生成"
+ },
+ "ollamaStatus": {
+ "label": "Ollamaの接続状態チェックを有効または無効にする"
}
},
"sidepanelRag": {
diff --git a/src/assets/locale/ko/chrome.json b/src/assets/locale/ko/chrome.json
new file mode 100644
index 0000000..8f89fc1
--- /dev/null
+++ b/src/assets/locale/ko/chrome.json
@@ -0,0 +1,13 @@
+{
+ "heading": "Chrome AI 설정",
+ "status": {
+ "label": "Page Assist에서 Chrome AI 지원을 활성화하거나 비활성화하기"
+ },
+ "error": {
+ "browser_not_supported": "이 Chrome 버전은 Gemini Nano 모델을 지원하지 않습니다. 버전을 127 이상으로 업데이트해 주세요.",
+ "ai_not_supported": "설정 `chrome://flags/#prompt-api-for-gemini-nano`가 활성화되지 않았습니다. 활성화해 주세요.",
+ "ai_not_ready": "Gemini Nano가 아직 준비되지 않았습니다. Chrome 설정을 다시 확인해 주세요.",
+ "internal_error": "내부 오류가 발생했습니다. 나중에 다시 시도해 주세요."
+ },
+ "errorDescription": "Chrome AI를 사용하려면 현재 Dev 및 Canary 채널에 있는 127 이상의 브라우저 버전이 필요합니다. 지원되는 버전을 다운로드한 후, 다음 단계를 따르세요:\n\n1. `chrome://flags/#prompt-api-for-gemini-nano`에 접속하여 '활성화'를 선택합니다.\n2. `chrome://flags/#optimization-guide-on-device-model`에 접속하여 'EnabledBypassPrefRequirement'를 선택합니다.\n3. `chrome://components`에 접속하여 'Optimization Guide On Device Model'을 검색한 후 '업데이트 확인'을 클릭합니다. 이를 통해 모델이 다운로드됩니다. 설정이 표시되지 않는 경우, 단계 1과 2를 반복하고 브라우저를 재시작해 주세요."
+}
diff --git a/src/assets/locale/ko/common.json b/src/assets/locale/ko/common.json
new file mode 100644
index 0000000..ed9e0b9
--- /dev/null
+++ b/src/assets/locale/ko/common.json
@@ -0,0 +1,119 @@
+{
+ "pageAssist": "페이지 어시스트",
+ "selectAModel": "모델 선택",
+ "save": "저장",
+ "saved": "저장됨",
+ "cancel": "취소",
+ "retry": "재시도",
+ "share": {
+ "tooltip": {
+ "share": "공유"
+ },
+ "modal": {
+ "title": "채팅 링크 공유"
+ },
+ "form": {
+ "defaultValue": {
+ "name": "익명",
+ "title": "제목 없는 채팅"
+ },
+ "title": {
+ "label": "채팅 제목",
+ "placeholder": "채팅 제목을 입력하세요",
+ "required": "채팅 제목은 필수 항목입니다"
+ },
+ "name": {
+ "label": "이름",
+ "placeholder": "이름을 입력하세요",
+ "required": "이름은 필수 항목입니다"
+ },
+ "btn": {
+ "save": "링크 생성",
+ "saving": "링크 생성 중..."
+ }
+ },
+ "notification": {
+ "successGenerate": "링크가 클립보드에 복사되었습니다",
+ "failGenerate": "링크 생성에 실패했습니다"
+ }
+ },
+ "copyToClipboard": "클립보드에 복사",
+ "webSearch": "웹 검색 중",
+ "regenerate": "재생성",
+ "edit": "편집",
+ "delete": "삭제",
+ "saveAndSubmit": "저장하고 제출",
+ "editMessage": {
+ "placeholder": "메시지를 입력하세요..."
+ },
+ "submit": "제출",
+ "noData": "데이터가 없습니다",
+ "noHistory": "채팅 기록이 없습니다",
+ "chatWithCurrentPage": "현재 페이지에서 채팅",
+ "beta": "베타",
+ "tts": "TTS",
+ "currentChatModelSettings": "현재 채팅 모델 설정",
+ "modelSettings": {
+ "label": "모델 설정",
+ "description": "모든 채팅에 대해 글로벌 모델 옵션을 설정합니다",
+ "form": {
+ "keepAlive": {
+ "label": "Keep Alive",
+ "help": "요청 후 모델이 메모리에 유지되는 시간을 설정합니다 (기본값: 5분)",
+ "placeholder": "Keep Alive 기간을 입력하세요 (예: 5분, 10분, 1시간)"
+ },
+ "temperature": {
+ "label": "온도",
+ "placeholder": "온도 값을 입력하세요 (예: 0.7, 1.0)"
+ },
+ "numCtx": {
+ "label": "컨텍스트 수",
+ "placeholder": "컨텍스트 수를 입력하세요 (기본값: 2048)"
+ },
+ "numPredict": {
+ "label": "최대 토큰 수 (num_predict)",
+ "placeholder": "최대 토큰 수를 입력하세요 (예: 2048, 4096)"
+ }, "seed": {
+ "label": "시드",
+ "placeholder": "시드 값을 입력하세요 (예: 1234)",
+ "help": "모델 출력의 재현성"
+ },
+ "topK": {
+ "label": "Top K",
+ "placeholder": "Top K 값을 입력하세요 (예: 40, 100)"
+ },
+ "topP": {
+ "label": "Top P",
+ "placeholder": "Top P 값을 입력하세요 (예: 0.9, 0.95)"
+ },
+ "numGpu": {
+ "label": "GPU 수",
+ "placeholder": "GPU에 할당할 레이어 수를 입력하세요"
+ },
+ "systemPrompt": {
+ "label": "임시 시스템 프롬프트",
+ "placeholder": "시스템 프롬프트를 입력하세요",
+ "help": "현재 채팅에서 시스템 프롬프트를 빠르게 설정하는 방법이며, 선택된 시스템 프롬프트가 있을 경우 이를 덮어씁니다."
+ }
+ },
+ "advanced": "기타 모델 설정"
+ },
+ "copilot": {
+ "summary": "요약",
+ "explain": "설명",
+ "rephrase": "다르게 표현",
+ "translate": "번역"
+ },
+ "citations": "인용",
+ "downloadCode": "코드 다운로드",
+ "date": {
+ "pinned": "고정됨",
+ "today": "오늘",
+ "yesterday": "어제",
+ "last7Days": "지난 7일",
+ "older": "그 이전"
+ },
+ "pin": "고정",
+ "unpin": "고정 해제",
+ "generationInfo": "생성 정보"
+}
diff --git a/src/assets/locale/ko/knowledge.json b/src/assets/locale/ko/knowledge.json
new file mode 100644
index 0000000..1bf8536
--- /dev/null
+++ b/src/assets/locale/ko/knowledge.json
@@ -0,0 +1,40 @@
+{
+ "addBtn": "새 지식 추가",
+ "columns": {
+ "title": "제목",
+ "status": "상태",
+ "embeddings": "임베딩 모델",
+ "createdAt": "생성일",
+ "action": "작업"
+ },
+ "expandedColumns": {
+ "name": "이름"
+ },
+ "confirm": {
+ "delete": "이 지식을 삭제하시겠습니까?"
+ },
+ "deleteSuccess": "지식이 정상적으로 삭제되었습니다",
+ "status": {
+ "pending": "대기 중",
+ "finished": "완료",
+ "processing": "처리 중",
+ "failed": "실패"
+ },
+ "addKnowledge": "지식 추가",
+ "form": {
+ "title": {
+ "label": "지식 제목",
+ "placeholder": "지식 제목을 입력하세요",
+ "required": "지식 제목은 필수 항목입니다"
+ },
+ "uploadFile": {
+ "label": "파일 업로드",
+ "uploadText": "파일을 여기에 드래그 앤 드롭하거나 클릭하여 업로드하세요",
+ "uploadHint": "지원되는 파일 형식: .pdf, .csv, .txt",
+ "required": "파일은 필수 항목입니다"
+ },
+ "submit": "제출",
+ "success": "지식이 정상적으로 추가되었습니다"
+ },
+ "noEmbeddingModel": "먼저 RAG 설정 페이지에서 임베딩 모델을 추가해 주세요"
+}
diff --git a/src/assets/locale/ko/openai.json b/src/assets/locale/ko/openai.json
new file mode 100644
index 0000000..fae6aca
--- /dev/null
+++ b/src/assets/locale/ko/openai.json
@@ -0,0 +1,90 @@
+{
+ "settings": "OpenAI 호환 API",
+ "heading": "OpenAI 호환 API",
+ "subheading": "여기에서 OpenAI API 호환 공급자를 관리하고 설정할 수 있습니다.",
+ "addBtn": "공급자 추가",
+ "table": {
+ "name": "공급자 이름",
+ "baseUrl": "기본 URL",
+ "actions": "작업"
+ },
+ "modal": {
+ "titleAdd": "새 공급자 추가",
+ "name": {
+ "label": "공급자 이름",
+ "required": "공급자 이름은 필수 항목입니다.",
+ "placeholder": "공급자 이름 입력"
+ },
+ "baseUrl": {
+ "label": "기본 URL",
+ "help": "OpenAI API 공급자의 기본 URL 예시: (http://localhost:1234/v1)",
+ "required": "기본 URL은 필수 항목입니다.",
+ "placeholder": "기본 URL 입력"
+ },
+ "apiKey": {
+ "label": "API 키",
+ "required": "API 키는 필수 항목입니다.",
+ "placeholder": "API 키 입력"
+ },
+ "submit": "저장",
+ "update": "업데이트",
+ "deleteConfirm": "이 공급자를 삭제하시겠습니까?",
+ "model": {
+ "title": "모델 목록",
+ "subheading": "이 공급자에서 사용하고자 하는 챗 모델을 선택하세요.",
+ "success": "새로운 모델이 정상적으로 추가되었습니다."
+ },
+ "tipLMStudio": "Page Assist는 LM Studio에 로드된 모델을 자동으로 가져옵니다. 수동 추가가 필요하지 않습니다."
+ },
+ "addSuccess": "공급자가 정상적으로 추가되었습니다.",
+ "deleteSuccess": "공급자가 정상적으로 삭제되었습니다.",
+ "updateSuccess": "공급자가 정상적으로 업데이트되었습니다.",
+ "delete": "삭제",
+ "edit": "편집",
+ "newModel": "공급자에 모델 추가",
+ "noNewModel": "LMStudio, Ollama, Llamafile,의 경우 동적으로 가져옵니다. 수동 추가는 필요하지 않습니다.",
+ "searchModel": "모델 검색",
+ "selectAll": "모두 선택",
+ "save": "저장",
+ "saving": "저장 중...",
+ "manageModels": {
+ "columns": {
+ "name": "모델 이름",
+ "model_type": "모델 타입",
+ "model_id": "모델 ID",
+ "provider": "공급자 이름",
+ "actions": "작업"
+ },
+ "tooltip": {
+ "delete": "삭제"
+ },
+ "confirm": {
+ "delete": "이 모델을 삭제하시겠습니까?"
+ },
+ "modal": {
+ "title": "사용자 정의 모델 추가",
+ "form": {
+ "name": {
+ "label": "모델 ID",
+ "placeholder": "llama3.2",
+ "required": "모델 ID는 필수 항목입니다."
+ },
+ "provider": {
+ "label": "공급자",
+ "placeholder": "공급자 선택",
+ "required": "공급자는 필수 항목입니다."
+ },
+ "type": {
+ "label": "모델 타입"
+ }
+ }
+ }
+ },
+ "noModelFound": "모델을 찾을 수 없습니다. 올바른 기본 URL과 API 키를 가진 공급자가 추가되었는지 확인하세요.",
+ "radio": {
+ "chat": "챗 모델",
+ "embedding": "임베딩 모델",
+ "chatInfo": "는 챗 완료 및 대화 생성에 사용됩니다",
+ "embeddingInfo": "는 RAG 및 기타 의미 검색 관련 작업에 사용됩니다."
+ }
+}
diff --git a/src/assets/locale/ko/option.json b/src/assets/locale/ko/option.json
new file mode 100644
index 0000000..2db30cc
--- /dev/null
+++ b/src/assets/locale/ko/option.json
@@ -0,0 +1,13 @@
+{
+ "newChat": "새 채팅",
+ "selectAPrompt": "프롬프트 선택",
+ "githubRepository": "GitHub 리포지토리",
+ "settings": "설정",
+ "sidebarTitle": "채팅 기록",
+ "error": "오류",
+ "somethingWentWrong": "문제가 발생했습니다",
+ "validationSelectModel": "계속하려면 모델을 선택하세요",
+ "deleteHistoryConfirmation": "이 기록을 삭제하시겠습니까?",
+ "editHistoryTitle": "새 제목 입력",
+ "temporaryChat": "임시 채팅"
+}
diff --git a/src/assets/locale/ko/playground.json b/src/assets/locale/ko/playground.json
new file mode 100644
index 0000000..d60b102
--- /dev/null
+++ b/src/assets/locale/ko/playground.json
@@ -0,0 +1,30 @@
+{
+ "ollamaState": {
+ "searching": "Ollama 검색 중 🦙",
+ "running": "Ollama 실행 중 🦙",
+ "notRunning": "Ollama에 연결할 수 없습니다 🦙",
+ "connectionError": "연결 오류가 발생한 것 같습니다. 문제 해결에 대한 자세한 내용은 문서를 참조하세요."
+ },
+ "formError": {
+ "noModel": "모델을 선택하세요",
+ "noEmbeddingModel": "설정 > RAG 페이지에서 임베딩 모델을 설정하세요"
+ },
+ "form": {
+ "textarea": {
+ "placeholder": "메시지를 입력하세요..."
+ },
+ "webSearch": {
+ "on": "켜짐",
+ "off": "꺼짐"
+ }
+ },
+ "tooltip": {
+ "searchInternet": "인터넷 검색",
+ "speechToText": "음성 입력",
+ "uploadImage": "이미지 업로드",
+ "stopStreaming": "스트리밍 중지",
+ "knowledge": "지식"
+ },
+ "sendWhenEnter": "Enter 키를 누르면 전송",
+ "welcome": "안녕하세요! 오늘 어떻게 도와드릴까요?"
+}
diff --git a/src/assets/locale/ko/settings.json b/src/assets/locale/ko/settings.json
new file mode 100644
index 0000000..f3c7109
--- /dev/null
+++ b/src/assets/locale/ko/settings.json
@@ -0,0 +1,347 @@
+{
+ "generalSettings": {
+ "title": "일반 설정",
+ "settings": {
+ "heading": "웹 UI 설정",
+ "speechRecognitionLang": {
+ "label": "음성 인식 언어",
+ "placeholder": "언어 선택"
+ },
+ "language": {
+ "label": "언어",
+ "placeholder": "언어 선택"
+ },
+ "darkMode": {
+ "label": "테마 변경",
+ "options": {
+ "light": "라이트",
+ "dark": "다크"
+ }
+ },
+ "searchMode": {
+ "label": "간편 인터넷 검색 실행"
+ },
+ "copilotResumeLastChat": {
+ "label": "사이드 패널을 열 때 마지막 채팅 재개 (Copilot)"
+ },
+ "hideCurrentChatModelSettings": {
+ "label": "현재 채팅 모델 설정 숨기기"
+ },
+ "restoreLastChatModel": {
+ "label": "이전 채팅에서 마지막 사용한 모델 복원"
+ },
+ "sendNotificationAfterIndexing": {
+ "label": "지식 베이스 처리 완료 후 알림 전송"
+ },
+ "generateTitle": {
+ "label": "AI로 제목 생성"
+ },
+ "ollamaStatus": {
+ "label": "Ollama 연결 상태 확인 활성화 또는 비활성화"
+ }
+ },
+ "sidepanelRag": {
+ "heading": "웹사이트와의 Copilot 채팅 설정",
+ "ragEnabled": {
+ "label": "벡터 임베딩을 사용하여 웹사이트와 채팅"
+ },
+ "maxWebsiteContext": {
+ "label": "일반 모드 웹사이트 콘텐츠 크기",
+ "placeholder": "콘텐츠 크기 (기본값 4028)"
+ }
+ },
+ "webSearch": {
+ "heading": "웹 검색 관리",
+ "searchMode": {
+ "label": "간편한 인터넷 검색 실행"
+ },
+ "provider": {
+ "label": "검색 엔진",
+ "placeholder": "검색 엔진 선택"
+ },
+ "totalSearchResults": {
+ "label": "총 검색 결과",
+ "placeholder": "총 검색 결과 입력"
+ },
+ "visitSpecificWebsite": {
+ "label": "메시지에 언급된 웹사이트 방문"
+ }
+ },
+ "system": {
+ "heading": "시스템 설정",
+ "deleteChatHistory": {
+ "label": "채팅 기록 삭제",
+ "button": "삭제",
+ "confirm": "채팅 기록을 삭제하시겠습니까? 이 작업은 되돌릴 수 없습니다."
+ },
+ "export": {
+ "label": "채팅 기록, 지식 베이스, 프롬프트 내보내기",
+ "button": "데이터 내보내기",
+ "success": "내보내기 성공"
+ },
+ "import": {
+ "label": "채팅 기록, 지식 베이스, 프롬프트 가져오기",
+ "button": "데이터 가져오기",
+ "success": "가져오기 성공",
+ "error": "가져오기 오류"
+ }
+ },
+ "tts": {
+ "heading": "텍스트 음성 변환 설정",
+ "ttsEnabled": {
+ "label": "텍스트 음성 변환 활성화"
+ },
+ "ttsProvider": {
+ "label": "텍스트 음성 변환 제공자",
+ "placeholder": "제공자 선택"
+ },
+ "ttsVoice": {
+ "label": "텍스트 음성 변환 음성",
+ "placeholder": "음성 선택"
+ },
+ "ssmlEnabled": {
+ "label": "SSML (Speech Synthesis Markup Language) 활성화"
+ }
+ }
+ },
+ "manageModels": {
+ "title": "모델 관리",
+ "addBtn": "새 모델 추가",
+ "columns": {
+ "name": "이름",
+ "digest": "다이제스트",
+ "modifiedAt": "수정 일시",
+ "size": "크기",
+ "actions": "동작"
+ },
+ "expandedColumns": {
+ "parentModel": "상위 모델",
+ "format": "형식",
+ "family": "패밀리",
+ "parameterSize": "파라미터 크기",
+ "quantizationLevel": "양자화 수준"
+ },
+ "tooltip": {
+ "delete": "모델 삭제",
+ "repull": "모델 다시 가져오기"
+ },
+ "confirm": {
+ "delete": "이 모델을 정말 삭제하시겠습니까?",
+ "repull": "이 모델을 정말 다시 가져오시겠습니까?"
+ },
+ "modal": {
+ "title": "새 모델 추가",
+ "placeholder": "모델 이름 입력",
+ "pull": "모델 가져오기"
+ },
+ "notification": {
+ "pullModel": "모델 가져오는 중",
+ "pullModelDescription": "{{modelName}} 모델을 가져오는 중입니다. 자세한 내용은 확장 기능 아이콘을 확인하세요.",
+ "success": "성공",
+ "error": "오류",
+ "successDescription": "모델 가져오기가 완료되었습니다",
+ "successDeleteDescription": "모델 삭제가 완료되었습니다",
+ "someError": "문제가 발생했습니다. 나중에 다시 시도해 주세요."
+ }
+ },
+ "managePrompts": {
+ "title": "프롬프트 관리",
+ "addBtn": "새 프롬프트 추가",
+ "option1": "일반",
+ "option2": "RAG",
+ "questionPrompt": "질문 프롬프트",
+ "columns": {
+ "title": "제목",
+ "prompt": "프롬프트",
+ "type": "프롬프트 유형",
+ "actions": "동작"
+ },
+ "systemPrompt": "시스템 프롬프트",
+ "quickPrompt": "퀵 프롬프트",
+ "tooltip": {
+ "delete": "프롬프트 삭제",
+ "edit": "프롬프트 수정"
+ },
+ "confirm": {
+ "delete": "이 프롬프트를 정말 삭제하시겠습니까? 이 작업은 되돌릴 수 없습니다."
+ },
+ "modal": {
+ "addTitle": "새 프롬프트 추가",
+ "editTitle": "프롬프트 수정"
+ },
+ "segmented": {
+ "custom": "커스텀 프롬프트",
+ "copilot": "Copilot 프롬프트"
+ },
+ "form": {
+ "title": {
+ "label": "제목",
+ "placeholder": "훌륭한 프롬프트",
+ "required": "제목을 입력하세요"
+ },
+ "prompt": {
+ "label": "프롬프트",
+ "placeholder": "프롬프트 입력",
+ "required": "프롬프트를 입력하세요",
+ "help": "프롬프트 내에서 {key}를 변수로 사용할 수 있습니다.",
+ "missingTextPlaceholder": "프롬프트에 {text} 변수가 없습니다. 추가해 주세요."
+ },
+ "isSystem": {
+ "label": "시스템 프롬프트"
+ },
+ "btnSave": {
+ "saving": "프롬프트 추가 중...",
+ "save": "프롬프트 추가"
+ },
+ "btnEdit": {
+ "saving": "프롬프트 업데이트 중...",
+ "save": "프롬프트 업데이트"
+ }
+ },
+ "notification": {
+ "addSuccess": "프롬프트가 추가되었습니다",
+ "addSuccessDesc": "프롬프트가 정상적으로 추가되었습니다",
+ "error": "오류",
+ "someError": "문제가 발생했습니다. 나중에 다시 시도해 주세요.",
+ "updatedSuccess": "프롬프트가 업데이트되었습니다",
+ "updatedSuccessDesc": "프롬프트가 정상적으로 업데이트되었습니다",
+ "deletedSuccess": "프롬프트가 삭제되었습니다",
+ "deletedSuccessDesc": "프롬프트가 정상적으로 삭제되었습니다"
+ }
+ },
+ "manageShare": {
+ "title": "공유 관리",
+ "heading": "페이지 공유 URL 설정",
+ "form": {
+ "url": {
+ "label": "페이지 공유 URL",
+ "placeholder": "페이지 공유 URL 입력",
+ "required": "페이지 공유 URL을 입력해 주세요!",
+ "help": "개인정보 보호를 위해 페이지 공유를 자체 호스팅하고, 해당 URL을 여기에 입력할 수 있습니다. 자세히 보기"
+ }
+ },
+ "webshare": {
+ "heading": "웹 공유",
+ "columns": {
+ "title": "제목",
+ "url": "URL",
+ "actions": "동작"
+ },
+ "tooltip": {
+ "delete": "공유 삭제"
+ },
+ "confirm": {
+ "delete": "이 공유를 정말 삭제하시겠습니까? 이 작업은 되돌릴 수 없습니다."
+ },
+ "label": "페이지 공유 관리",
+ "description": "페이지 공유 기능을 활성화 또는 비활성화"
+ },
+ "notification": {
+ "pageShareSuccess": "페이지 공유 URL이 정상적으로 업데이트되었습니다",
+ "someError": "문제가 발생했습니다. 나중에 다시 시도해 주세요.",
+ "webShareDeleteSuccess": "웹 공유가 정상적으로 삭제되었습니다"
+ }
+ },
+ "ollamaSettings": {
+ "title": "Ollama 설정",
+ "heading": "Ollama 설정하기",
+ "settings": {
+ "ollamaUrl": {
+ "label": "Ollama URL",
+ "placeholder": "Ollama URL 입력"
+ },
+ "advanced": {
+ "label": "Ollama URL 고급 설정",
+ "urlRewriteEnabled": {
+ "label": "사용자 지정 Origin URL 활성화 또는 비활성화"
+ },
+ "rewriteUrl": {
+ "label": "사용자 지정 Origin URL",
+ "placeholder": "사용자 지정 Origin URL 입력"
+ },
+ "headers": {
+ "label": "사용자 지정 헤더",
+ "add": "헤더 추가",
+ "key": {
+ "label": "헤더 키",
+ "placeholder": "인증"
+ },
+ "value": {
+ "label": "헤더 값",
+ "placeholder": "베어러 토큰"
+ }
+ },
+ "help": "Page Assist에서 Ollama 연결에 문제가 있는 경우 사용자 지정 Origin URL을 설정할 수 있습니다. 설정에 대한 자세한 내용은 여기를 클릭하세요."
+ }
+ }
+ },
+ "manageSearch": {
+ "title": "웹 검색 관리",
+ "heading": "웹 검색 설정하기"
+ },
+ "about": {
+ "title": "소개",
+ "heading": "소개",
+ "chromeVersion": "Page Assist 버전",
+ "ollamaVersion": "Ollama 버전",
+ "support": "Page Assist 프로젝트는 다음 플랫폼에서 기부나 후원을 통해 지원할 수 있습니다:",
+ "koFi": "Ko-fi로 후원하기",
+ "githubSponsor": "GitHub에서 후원하기",
+ "githubRepo": "GitHub 저장소"
+ },
+ "manageKnowledge": {
+ "title": "지식 관리",
+ "heading": "지식 베이스 구성하기"
+ },
+ "rag": {
+ "title": "RAG 설정",
+ "ragSettings": {
+ "label": "RAG 설정",
+ "model": {
+ "label": "임베딩 모델",
+ "required": "모델을 선택해주세요",
+ "help": "`nomic-embed-text`와 같은 임베딩 모델 사용을 강력히 권장합니다.",
+ "placeholder": "모델 선택"
+ },
+ "chunkSize": {
+ "label": "청크 크기",
+ "placeholder": "청크 크기 입력",
+ "required": "청크 크기를 입력해주세요"
+ },
+ "chunkOverlap": {
+ "label": "청크 오버랩",
+ "placeholder": "청크 오버랩 입력",
+ "required": "청크 오버랩을 입력해주세요"
+ },
+ "totalFilePerKB": {
+ "label": "지식 베이스 기본 파일 업로드 제한",
+ "placeholder": "기본 파일 업로드 제한 입력 (예: 10)",
+ "required": "기본 파일 업로드 제한을 입력해주세요"
+ },
+ "noOfRetrievedDocs": {
+ "label": "검색 문서 수",
+ "placeholder": "검색 문서 수 입력",
+ "required": "검색 문서 수를 입력해주세요"
+ }
+ },
+ "prompt": {
+ "label": "RAG 프롬프트 설정",
+ "option1": "일반",
+ "option2": "웹",
+ "alert": "여기서 시스템 프롬프트를 설정하는 것은 더 이상 권장되지 않습니다. 프롬프트 추가 및 편집은 '프롬프트 관리' 섹션을 이용해주세요. 이 섹션은 향후 릴리스에서 제거될 예정입니다.",
+ "systemPrompt": "시스템 프롬프트",
+ "systemPromptPlaceholder": "시스템 프롬프트 입력",
+ "webSearchPrompt": "웹 검색 프롬프트",
+ "webSearchPromptHelp": "프롬프트에서 `{search_results}`를 제거하지 마세요.",
+ "webSearchPromptError": "웹 검색 프롬프트를 입력해주세요",
+ "webSearchPromptPlaceholder": "웹 검색 프롬프트 입력",
+ "webSearchFollowUpPrompt": "웹 검색 후속 프롬프트",
+ "webSearchFollowUpPromptHelp": "프롬프트에서 `{chat_history}`와 `{question}`를 제거하지 마세요.",
+ "webSearchFollowUpPromptError": "웹 검색 후속 프롬프트를 입력해주세요!",
+ "webSearchFollowUpPromptPlaceholder": "웹 검색 후속 프롬프트"
+ }
+ },
+ "chromeAiSettings": {
+ "title": "Chrome AI 설정"
+ }
+}
diff --git a/src/assets/locale/ko/sidepanel.json b/src/assets/locale/ko/sidepanel.json
new file mode 100644
index 0000000..b7a5eea
--- /dev/null
+++ b/src/assets/locale/ko/sidepanel.json
@@ -0,0 +1,5 @@
+{
+ "tooltip": {
+ "embed": "페이지를 임베드하는 데 몇 분이 걸릴 수 있습니다. 잠시만 기다려 주세요..."
+ }
+}
diff --git a/src/assets/locale/ml/common.json b/src/assets/locale/ml/common.json
index bb1149a..cd6868d 100644
--- a/src/assets/locale/ml/common.json
+++ b/src/assets/locale/ml/common.json
@@ -69,6 +69,10 @@
"label": "സന്ദർഭങ്ങളുടെ എണ്ണം",
"placeholder": "സന്ദർഭങ്ങളുടെ സംഖ്യ നൽകുക (സ്ഥിരം: 2048)"
},
+ "numPredict": {
+ "label": "പരമാവധി ടോക്കണുകൾ (num_predict)",
+ "placeholder": "പരമാവധി ടോക്കൺ മൂല്യം നൽകുക (ഉദാ: 2048, 4096)"
+ },
"seed": {
"label": "സീഡ്",
"placeholder": "സീഡ് വില്യമ നൽകുക (ഉദാ: 1234)",
@@ -110,5 +114,7 @@
"older": "പഴയത്"
},
"pin": "പിൻ ചെയ്യുക",
- "unpin": "അൺപിൻ ചെയ്യുക"
+ "unpin": "അൺപിൻ ചെയ്യുക",
+ "generationInfo": "ജനറേഷൻ വിവരങ്ങൾ"
+
}
\ No newline at end of file
diff --git a/src/assets/locale/ml/openai.json b/src/assets/locale/ml/openai.json
index 6fe486e..5bbaaea 100644
--- a/src/assets/locale/ml/openai.json
+++ b/src/assets/locale/ml/openai.json
@@ -42,7 +42,7 @@
"delete": "ഇല്ലാതാക്കുക",
"edit": "തിരുത്തുക",
"newModel": "ദാതാവിലേക്ക് മോഡലുകൾ ചേർക്കുക",
- "noNewModel": "LMStudio-യ്ക്കായി, ഞങ്ങൾ ഡൈനാമിക്കായി ലഭ്യമാക്കുന്നു. മാനുവലായി ചേർക്കേണ്ടതില്ല.",
+ "noNewModel": "LMStudio, Ollama, Llamafile-യ്ക്കായി, ഞങ്ങൾ ഡൈനാമിക്കായി ലഭ്യമാക്കുന്നു. മാനുവലായി ചേർക്കേണ്ടതില്ല.",
"searchModel": "മോഡൽ തിരയുക",
"selectAll": "എല്ലാം തിരഞ്ഞെടുക്കുക",
"save": "സംരക്ഷിക്കുക",
diff --git a/src/assets/locale/ml/option.json b/src/assets/locale/ml/option.json
index f8fcf70..1004b13 100644
--- a/src/assets/locale/ml/option.json
+++ b/src/assets/locale/ml/option.json
@@ -8,5 +8,6 @@
"somethingWentWrong": "എന്തോ തെറ്റായി",
"deleteHistoryConfirmation": "നിങ്ങളുടെ ചാറ്റ് ചരിത്രം ഇല്ലാതാക്കണമെന്ന് തീർച്ചയാണോ?",
"editHistoryTitle": "ചാറ്റ് title എഡിറ്റുചെയ്യുക",
- "validationSelectModel": "തുടരുന്നതിന് ഒരു മോഡല് തിരഞ്ഞെടുക്കുക"
+ "validationSelectModel": "തുടരുന്നതിന് ഒരു മോഡല് തിരഞ്ഞെടുക്കുക",
+ "temporaryChat": "താൽക്കാലിക ചാറ്റ്"
}
\ No newline at end of file
diff --git a/src/assets/locale/ml/playground.json b/src/assets/locale/ml/playground.json
index 8297aa4..e789350 100644
--- a/src/assets/locale/ml/playground.json
+++ b/src/assets/locale/ml/playground.json
@@ -25,5 +25,6 @@
"stopStreaming": "സ്ട്രീമിംഗ് നിർത്തുക",
"knowledge": "അറിവ്"
},
- "sendWhenEnter": "എന്റര് അമര്ത്തുമ്പോള് അയയ്ക്കുക"
+ "sendWhenEnter": "എന്റര് അമര്ത്തുമ്പോള് അയയ്ക്കുക",
+ "welcome": "നമസ്കാരം! ഇന്ന് എനിക്ക് നിങ്ങളെ എങ്ങനെ സഹായിക്കാൻ കഴിയും?"
}
\ No newline at end of file
diff --git a/src/assets/locale/ml/settings.json b/src/assets/locale/ml/settings.json
index b6ebd30..03d67f1 100644
--- a/src/assets/locale/ml/settings.json
+++ b/src/assets/locale/ml/settings.json
@@ -35,6 +35,9 @@
},
"generateTitle": {
"label": "എഐ ഉപയോഗിച്ച് ശീർഷകം സൃഷ്ടിക്കുക"
+ },
+ "ollamaStatus": {
+ "label": "ഒല്ലാമ കണക്ഷൻ സ്റ്റാറ്റസ് പരിശോധന പ്രവർത്തനക്ഷമമാക്കുകയോ പ്രവർത്തനരഹിതമാക്കുകയോ ചെയ്യുക"
}
},
"sidepanelRag": {
diff --git a/src/assets/locale/no/common.json b/src/assets/locale/no/common.json
index 6665280..1720d1f 100644
--- a/src/assets/locale/no/common.json
+++ b/src/assets/locale/no/common.json
@@ -70,6 +70,10 @@
"label": "Kontekstlengde",
"placeholder": "Skriv inn kontekstlengdeverdi (standard: 2048)"
},
+ "numPredict": {
+ "label": "Maks Tokens (num_predict)",
+ "placeholder": "Skriv inn Maks Tokens-verdi (f.eks. 2048, 4096)"
+ },
"seed": {
"label": "Seed",
"placeholder": "Skriv inn seedverdi (f.eks. 1234)",
@@ -112,5 +116,6 @@
"older": "Eldre"
},
"pin": "Fest",
- "unpin": "Løsne"
+ "unpin": "Løsne",
+ "generationInfo": "Generasjonsinformasjon"
}
\ No newline at end of file
diff --git a/src/assets/locale/no/openai.json b/src/assets/locale/no/openai.json
index 91ddc3d..aa748bb 100644
--- a/src/assets/locale/no/openai.json
+++ b/src/assets/locale/no/openai.json
@@ -42,7 +42,7 @@
"delete": "Slett",
"edit": "Rediger",
"newModel": "Legg til modeller for leverandør",
- "noNewModel": "For LMStudio henter vi dynamisk. Ingen manuell tillegging nødvendig.",
+ "noNewModel": "For LMStudio, Ollama, Llamafile, henter vi dynamisk. Ingen manuell tillegging nødvendig.",
"searchModel": "Søk etter modell",
"selectAll": "Velg alle",
"save": "Lagre",
diff --git a/src/assets/locale/no/option.json b/src/assets/locale/no/option.json
index 76d335e..64adb7b 100644
--- a/src/assets/locale/no/option.json
+++ b/src/assets/locale/no/option.json
@@ -8,5 +8,6 @@
"somethingWentWrong": "Noe gikk galt",
"validationSelectModel": "Vennligst velg en modell for å fortsette",
"deleteHistoryConfirmation": "Er du sikker på at du vil slette denne historikken?",
- "editHistoryTitle": "Skriv inn en ny tittel"
+ "editHistoryTitle": "Skriv inn en ny tittel",
+ "temporaryChat": "Midlertidig Chat"
}
diff --git a/src/assets/locale/no/playground.json b/src/assets/locale/no/playground.json
index b812649..43e2fa3 100644
--- a/src/assets/locale/no/playground.json
+++ b/src/assets/locale/no/playground.json
@@ -25,5 +25,6 @@
"stopStreaming": "Stopp Streaming",
"knowledge": "Kunnskap"
},
- "sendWhenEnter": "Søk når Enter trykkes"
+ "sendWhenEnter": "Søk når Enter trykkes",
+ "welcome": "Hei! Hvordan kan jeg hjelpe deg i dag?"
}
diff --git a/src/assets/locale/no/settings.json b/src/assets/locale/no/settings.json
index f31a65d..1d9c2cd 100644
--- a/src/assets/locale/no/settings.json
+++ b/src/assets/locale/no/settings.json
@@ -32,6 +32,9 @@
},
"generateTitle": {
"label": "Generer tittel med AI"
+ },
+ "ollamaStatus": {
+ "label": "Aktiver eller deaktiver Ollama tilkoblingsstatussjekk"
}
},
"sidepanelRag": {
diff --git a/src/assets/locale/pt-BR/common.json b/src/assets/locale/pt-BR/common.json
index ba4f252..660514d 100644
--- a/src/assets/locale/pt-BR/common.json
+++ b/src/assets/locale/pt-BR/common.json
@@ -70,6 +70,10 @@
"label": "Número de Contextos",
"placeholder": "Digite o valor do Número de Contextos (padrão: 2048)"
},
+ "numPredict": {
+ "label": "Máximo de Tokens (num_predict)",
+ "placeholder": "Digite o valor do Máximo de Tokens (ex: 2048, 4096)"
+ },
"seed": {
"label": "Semente",
"placeholder": "Digite o valor da Semente (ex: 1234)",
@@ -111,5 +115,6 @@
"older": "Mais Antigos"
},
"pin": "Fixar",
- "unpin": "Desafixar"
+ "unpin": "Desafixar",
+ "generationInfo": "Informações de Geração"
}
\ No newline at end of file
diff --git a/src/assets/locale/pt-BR/option.json b/src/assets/locale/pt-BR/option.json
index de29ff1..eeffe1c 100644
--- a/src/assets/locale/pt-BR/option.json
+++ b/src/assets/locale/pt-BR/option.json
@@ -8,5 +8,6 @@
"somethingWentWrong": "Algo deu errado",
"validationSelectModel": "Por favor, selecione um modelo para continuar",
"deleteHistoryConfirmation": "Tem certeza de que deseja excluir este histórico?",
- "editHistoryTitle": "Digite um novo título"
+ "editHistoryTitle": "Digite um novo título",
+ "temporaryChat": "Chat Temporário"
}
\ No newline at end of file
diff --git a/src/assets/locale/pt-BR/playground.json b/src/assets/locale/pt-BR/playground.json
index 6e91e97..ea11ffa 100644
--- a/src/assets/locale/pt-BR/playground.json
+++ b/src/assets/locale/pt-BR/playground.json
@@ -25,5 +25,6 @@
"stopStreaming": "Parar Streaming",
"knowledge": "Conhecimento"
},
- "sendWhenEnter": "Enviar ao pressionar Enter"
+ "sendWhenEnter": "Enviar ao pressionar Enter",
+ "welcome": "Olá! Como posso ajudar você hoje?"
}
\ No newline at end of file
diff --git a/src/assets/locale/pt-BR/settings.json b/src/assets/locale/pt-BR/settings.json
index ac7e70b..fad3b11 100644
--- a/src/assets/locale/pt-BR/settings.json
+++ b/src/assets/locale/pt-BR/settings.json
@@ -32,6 +32,9 @@
},
"generateTitle": {
"label": "Gerar título usando IA"
+ },
+ "ollamaStatus": {
+ "label": "Ativar ou desativar verificação de status da conexão Ollama"
}
},
"sidepanelRag": {
diff --git a/src/assets/locale/ru/common.json b/src/assets/locale/ru/common.json
index b619def..31291a0 100644
--- a/src/assets/locale/ru/common.json
+++ b/src/assets/locale/ru/common.json
@@ -70,6 +70,10 @@
"label": "Количество контекстов",
"placeholder": "Введите значение количества контекстов (по умолчанию: 2048)"
},
+ "numPredict": {
+ "label": "Максимальное количество токенов (num_predict)",
+ "placeholder": "Введите значение максимального количества токенов (например, 2048, 4096)"
+ },
"seed": {
"label": "Сид",
"placeholder": "Введите значение сида (например, 1234)",
@@ -111,5 +115,6 @@
"older": "Ранее"
},
"pin": "Закрепить",
- "unpin": "Открепить"
+ "unpin": "Открепить",
+ "generationInfo": "Информация о генерации"
}
\ No newline at end of file
diff --git a/src/assets/locale/ru/openai.json b/src/assets/locale/ru/openai.json
index 436c676..2b63545 100644
--- a/src/assets/locale/ru/openai.json
+++ b/src/assets/locale/ru/openai.json
@@ -42,7 +42,7 @@
"delete": "Удалить",
"edit": "Редактировать",
"newModel": "Добавить модели к провайдеру",
- "noNewModel": "Для LMStudio мы загружаем динамически. Ручное добавление не требуется.",
+ "noNewModel": "Для LMStudio, Ollama, Llamafile, мы загружаем динамически. Ручное добавление не требуется.",
"searchModel": "Поиск модели",
"selectAll": "Выбрать все",
"save": "Сохранить",
diff --git a/src/assets/locale/ru/option.json b/src/assets/locale/ru/option.json
index f15c106..bd8f987 100644
--- a/src/assets/locale/ru/option.json
+++ b/src/assets/locale/ru/option.json
@@ -8,5 +8,6 @@
"somethingWentWrong": "Что-то пошло не так",
"validationSelectModel": "Пожалуйста, выберите модель, чтобы продолжить",
"deleteHistoryConfirmation": "Вы уверены, что хотите удалить эту историю?",
- "editHistoryTitle": "Введите новое название"
+ "editHistoryTitle": "Введите новое название",
+ "temporaryChat": "Временный чат"
}
diff --git a/src/assets/locale/ru/playground.json b/src/assets/locale/ru/playground.json
index fdc2933..39ba724 100644
--- a/src/assets/locale/ru/playground.json
+++ b/src/assets/locale/ru/playground.json
@@ -25,5 +25,6 @@
"stopStreaming": "Остановить поток",
"knowledge": "Знание"
},
- "sendWhenEnter": "Отправить при нажатии клавиши Enter"
+ "sendWhenEnter": "Отправить при нажатии клавиши Enter",
+ "welcome": "Здравствуйте! Как я могу помочь вам сегодня?"
}
diff --git a/src/assets/locale/ru/settings.json b/src/assets/locale/ru/settings.json
index 0c3c183..adf0008 100644
--- a/src/assets/locale/ru/settings.json
+++ b/src/assets/locale/ru/settings.json
@@ -32,6 +32,9 @@
},
"generateTitle": {
"label": "Сгенерировать заголовок с помощью ИИ"
+ },
+ "ollamaStatus": {
+ "label": "Включить или отключить проверку состояния подключения Ollama"
}
},
"sidepanelRag": {
diff --git a/src/assets/locale/sv/common.json b/src/assets/locale/sv/common.json
index 3127267..4698dc7 100644
--- a/src/assets/locale/sv/common.json
+++ b/src/assets/locale/sv/common.json
@@ -70,6 +70,10 @@
"label": "Antal kontexter",
"placeholder": "Ange antal kontextvärden (standard: 2048)"
},
+ "numPredict": {
+ "label": "Max antal tokens (num_predict)",
+ "placeholder": "Ange Max antal tokens värde (t.ex. 2048, 4096)"
+ },
"seed": {
"label": "Frö",
"placeholder": "Ange frövärde (t.ex. 1234)",
@@ -116,5 +120,6 @@
"older": "Äldre"
},
"pin": "Fäst",
- "unpin": "Ta bort fäst"
+ "unpin": "Ta bort fäst",
+ "generationInfo": "Generationsinformation"
}
diff --git a/src/assets/locale/sv/option.json b/src/assets/locale/sv/option.json
index d7017ee..98e1012 100644
--- a/src/assets/locale/sv/option.json
+++ b/src/assets/locale/sv/option.json
@@ -8,5 +8,6 @@
"somethingWentWrong": "Något gick fel",
"validationSelectModel": "Vänligen välj en modell för att fortsätta",
"deleteHistoryConfirmation": "Är du säker på att du vill radera denna historik?",
- "editHistoryTitle": "Ange en ny titel"
+ "editHistoryTitle": "Ange en ny titel",
+ "temporaryChat": "Tillfällig chatt"
}
diff --git a/src/assets/locale/sv/playground.json b/src/assets/locale/sv/playground.json
index d7195c5..16c8e80 100644
--- a/src/assets/locale/sv/playground.json
+++ b/src/assets/locale/sv/playground.json
@@ -25,5 +25,6 @@
"stopStreaming": "Stoppa strömning",
"knowledge": "Kunskap"
},
- "sendWhenEnter": "Skicka när Enter trycks"
+ "sendWhenEnter": "Skicka när Enter trycks",
+ "welcome": "Hej! Hur kan jag hjälpa dig idag?"
}
diff --git a/src/assets/locale/sv/settings.json b/src/assets/locale/sv/settings.json
index cb28f1e..d1e11d0 100644
--- a/src/assets/locale/sv/settings.json
+++ b/src/assets/locale/sv/settings.json
@@ -32,6 +32,9 @@
},
"generateTitle": {
"label": "Generera titel med AI"
+ },
+ "ollamaStatus": {
+ "label": "Aktivera eller inaktivera Ollama anslutningsstatuskontroll"
}
},
"sidepanelRag": {
diff --git a/src/assets/locale/uk/chrome.json b/src/assets/locale/uk/chrome.json
new file mode 100644
index 0000000..12fa7ee
--- /dev/null
+++ b/src/assets/locale/uk/chrome.json
@@ -0,0 +1,13 @@
+{
+ "heading": "Налаштування Chrome AI",
+ "status": {
+ "label": "Ввімкнути або вимкнути підтримку Chrome AI на Page Assist"
+ },
+ "error": {
+ "browser_not_supported": "Ця версія Chrome не підтримується моделлю Gemini Nano. Будь ласка, оновіть до версії 127 або новішої",
+ "ai_not_supported": "Налаштування chrome://flags/#prompt-api-for-gemini-nano не увімкнено. Будь ласка, увімкніть його.",
+ "ai_not_ready": "Модель Gemini Nano ще не готова; вам потрібно перевірити налаштування Chrome знову",
+ "internal_error": "Стався внутрішній збій. Будь ласка, спробуйте пізніше."
+ },
+ "errorDescription": "Щоб використовувати Chrome AI, вам потрібна версія переглядача новіша за 127-му, яка наразі доступна в каналах Dev і Canary. Після завантаження підтримуваної версії виконайте наступні кроки:\n\n1. Перейдіть до `chrome://flags/#prompt-api-for-gemini-nano` та виберіть \"Ввімкнути\".\n2. Перейдіть до `chrome://flags/#optimization-guide-on-device-model` та виберіть \"EnabledBypassPrefRequirement\".\n3. Перейдіть до `chrome://components`, знайдіть \"Optimization Guide On Device Model\" і натисніть \"Перевірити оновлення\". Це завантажить модель. Якщо ви не бачите налаштувань, повторіть кроки 1 і 2 та перезапустіть переглядач."
+}
diff --git a/src/assets/locale/uk/common.json b/src/assets/locale/uk/common.json
new file mode 100644
index 0000000..899e12b
--- /dev/null
+++ b/src/assets/locale/uk/common.json
@@ -0,0 +1,125 @@
+{
+ "pageAssist": "Допомога на сторінці",
+ "selectAModel": "Виберіть модель",
+ "save": "Зберегти",
+ "saved": "Збережено",
+ "cancel": "Скасувати",
+ "retry": "Спробувати знову",
+ "share": {
+ "tooltip": {
+ "share": "Поділитися"
+ },
+ "modal": {
+ "title": "Поділитися посиланням на чат"
+ },
+ "form": {
+ "defaultValue": {
+ "name": "Анонімний",
+ "title": "Неназваний чат"
+ },
+ "title": {
+ "label": "Назва чату",
+ "placeholder": "Введіть назву чату",
+ "required": "Назва чату обовʼязкова"
+ },
+ "name": {
+ "label": "Ваше імʼя",
+ "placeholder": "Введіть ваше імʼя",
+ "required": "Ваше імʼя обов'язкове"
+ },
+ "btn": {
+ "save": "Створити посилання",
+ "saving": "Створення посилання..."
+ }
+ },
+ "notification": {
+ "successGenerate": "Посилання скопійовано до буфера обміну",
+ "failGenerate": "Не вдалося створити посилання"
+ }
+ },
+ "copyToClipboard": "Копіювати в буфер обміну",
+ "webSearch": "Пошук у мережі",
+ "regenerate": "Перегенерувати",
+ "edit": "Редагувати",
+ "delete": "Видалити",
+ "saveAndSubmit": "Зберегти та надіслати",
+ "editMessage": {
+ "placeholder": "Введіть повідомлення..."
+ },
+ "submit": "Надіслати",
+ "noData": "Немає даних",
+ "noHistory": "Немає історії чату",
+ "chatWithCurrentPage": "Чат з поточної сторінки",
+ "beta": "Бета",
+ "tts": "Читання вголос",
+ "currentChatModelSettings": "Налаштування поточної моделі чату",
+ "modelSettings": {
+ "label": "Налаштування моделі",
+ "description": "Встановіть глобальні параметри моделі для всіх чатів",
+ "form": {
+ "keepAlive": {
+ "label": "Тривалість збереження в памʼяті",
+ "help": "вказує, як довго модель залишатиметься завантаженою у памʼять після запиту (за замовчуванням: 5 хв)",
+ "placeholder": "Введіть тривалість збереження у памʼяті (наприклад, 5m, 10m, 1h)"
+ },
+ "temperature": {
+ "label": "Температура",
+ "placeholder": "Введіть значення температури (наприклад, 0.7, 1.0)"
+ },
+ "numCtx": {
+ "label": "Кількість контекстів",
+ "placeholder": "Введіть кількість контекстів (типово: 2048)"
+ },
+ "numPredict": {
+ "label": "Максимальна кількість токенів",
+ "placeholder": "Введіть максимальну кількість токенів (наприклад, 2048, 4096)"
+ },
+ "seed": {
+ "label": "Зерно",
+ "placeholder": "Введіть значення зерна (наприклад, 1234)",
+ "help": "Повторюваність виводу моделі"
+ },
+ "topK": {
+ "label": "Top K",
+ "placeholder": "Введіть значення для Верхніх K (наприклад, 40, 100)"
+ },
+ "topP": {
+ "label": "Top P",
+ "placeholder": "Введіть значення для Верхнього P (наприклад, 0.9, 0.95)"
+ },
+ "numGpu": {
+ "label": "Кількість GPU",
+ "placeholder": "Введіть кількість шарів для відправки на GPU"
+ },
+ "systemPrompt": {
+ "label": "Тимчасовий системний запит",
+ "placeholder": "Введіть системний запит",
+ "help": "Швидкий спосіб встановити системний запит для поточного чату, який замінить вибраний системний запит, якщо він існує."
+ }
+ },
+ "advanced": "Додаткові налаштування моделі"
+ },
+ "copilot": {
+ "summary": "Підсумувати",
+ "explain": "Пояснити",
+ "rephrase": "Перефразувати",
+ "translate": "Перекласти",
+ "custom": "Власне"
+ },
+ "citations": "Цитати",
+ "segmented": {
+ "ollama": "Моделі Ollama",
+ "custom": "Власні моделі"
+ },
+ "downloadCode": "Завантажити код",
+ "date": {
+ "pinned": "Прикріплено",
+ "today": "Сьогодні",
+ "yesterday": "Вчора",
+ "last7Days": "Останні 7 днів",
+ "older": "Старіше"
+ },
+ "pin": "Прикріпити",
+ "unpin": "Відкріпити",
+ "generationInfo": "Інформація про генерацію"
+}
diff --git a/src/assets/locale/uk/knowledge.json b/src/assets/locale/uk/knowledge.json
new file mode 100644
index 0000000..dd5dd9f
--- /dev/null
+++ b/src/assets/locale/uk/knowledge.json
@@ -0,0 +1,40 @@
+{
+ "addBtn": "Додати нове знання",
+ "columns": {
+ "title": "Назва",
+ "status": "Статус",
+ "embeddings": "Модель вкладень",
+ "createdAt": "Створено в",
+ "action": "Дії"
+ },
+ "expandedColumns": {
+ "name": "Імʼя"
+ },
+ "confirm": {
+ "delete": "Ви впевнені, що хочете видалити це знання?"
+ },
+ "deleteSuccess": "Знання успішно видалено",
+ "status": {
+ "pending": "Очікування",
+ "finished": "Завершено",
+ "processing": "Обробка",
+ "failed": "Не вдалося"
+ },
+ "addKnowledge": "Додати знання",
+ "form": {
+ "title": {
+ "label": "Назва знань",
+ "placeholder": "Введіть назву знань",
+ "required": "Назва знань обовʼязкова"
+ },
+ "uploadFile": {
+ "label": "Завантажити файл",
+ "uploadText": "Перетягніть файл сюди або натисніть для завантаження",
+ "uploadHint": "Підтримуються типи файлів: .pdf, .csv, .txt, .md, .docx",
+ "required": "Файл обовʼязковий"
+ },
+ "submit": "Надіслати",
+ "success": "Знання успішно додано"
+ },
+ "noEmbeddingModel": "Будь ласка, додайте модель вкладень з сторінки налаштувань RAG спочатку"
+}
diff --git a/src/assets/locale/uk/openai.json b/src/assets/locale/uk/openai.json
new file mode 100644
index 0000000..f714a97
--- /dev/null
+++ b/src/assets/locale/uk/openai.json
@@ -0,0 +1,90 @@
+{
+ "settings": "Сумісний з OpenAI API",
+ "heading": "Сумісний з OpenAI API",
+ "subheading": "Тут керування та налаштування ваших постачальників OpenAI API.",
+ "addBtn": "Додати постачальника",
+ "table": {
+ "name": "Назва постачальника",
+ "baseUrl": "Базовий URL",
+ "actions": "Дії"
+ },
+ "modal": {
+ "titleAdd": "Додати нового постачальника",
+ "name": {
+ "label": "Назва постачальника",
+ "required": "Назва постачальника обовʼязкова.",
+ "placeholder": "Введіть назву постачальника"
+ },
+ "baseUrl": {
+ "label": "Базовий URL",
+ "help": "Базовий URL постачальника OpenAI API. Наприклад, (http://localhost:1234/v1)",
+ "required": "Базовий URL обовʼязковий.",
+ "placeholder": "Введіть базовий URL"
+ },
+ "apiKey": {
+ "label": "Ключ API",
+ "required": "Ключ API обовʼязковий.",
+ "placeholder": "Введіть ключ API"
+ },
+ "submit": "Зберегти",
+ "update": "Оновити",
+ "deleteConfirm": "Ви впевнені, що хочете видалити цього постачальника?",
+ "model": {
+ "title": "Список моделей",
+ "subheading": "Виберіть чат-моделі, які ви хочете використовувати з цим постачальником.",
+ "success": "Моделі успішно додано."
+ },
+ "tipLMStudio": "Page Assist автоматично отримає моделі, завантажені в LM Studio. Вам не потрібно додавати їх вручну."
+ },
+ "addSuccess": "Постачальника додано успішно.",
+ "deleteSuccess": "Постачальника видалено успішно.",
+ "updateSuccess": "Постачальника оновлено успішно.",
+ "delete": "Видалити",
+ "edit": "Редагувати",
+ "newModel": "Додати моделі до постачальника",
+ "noNewModel": "Для LMStudio, Ollama, Llamafile ми отримуємо моделі динамічно. Ручного додавання не потрібно.",
+ "searchModel": "Пошук моделі",
+ "selectAll": "Вибрати все",
+ "save": "Зберегти",
+ "saving": "Збереження...",
+ "manageModels": {
+ "columns": {
+ "name": "Назва моделі",
+ "model_type": "Тип моделі",
+ "model_id": "Ідентифікатор моделі",
+ "provider": "Назва постачальника",
+ "actions": "Дії"
+ },
+ "tooltip": {
+ "delete": "Видалити"
+ },
+ "confirm": {
+ "delete": "Ви впевнені, що хочете видалити цю модель?"
+ },
+ "modal": {
+ "title": "Додати власну модель",
+ "form": {
+ "name": {
+ "label": "Ідентифікатор моделі",
+ "placeholder": "llama3.2",
+ "required": "Ідентифікатор моделі обовʼязковий."
+ },
+ "provider": {
+ "label": "Постачальник",
+ "placeholder": "Виберіть постачальника",
+ "required": "Постачальник обовʼязковий."
+ },
+ "type": {
+ "label": "Тип моделі"
+ }
+ }
+ }
+ },
+ "noModelFound": "Не знайдено моделей. Переконайтеся, що ви додали правильного постачальника з базовим URL та ключем API.",
+ "radio": {
+ "chat": "Модель чату",
+ "embedding": "Модель вкладень",
+ "chatInfo": "використовується для завершення чату та генерації розмови",
+ "embeddingInfo": "використовується для RAG та інших повʼязаних завдань семантичного пошуку."
+ }
+}
diff --git a/src/assets/locale/uk/option.json b/src/assets/locale/uk/option.json
new file mode 100644
index 0000000..22a76d4
--- /dev/null
+++ b/src/assets/locale/uk/option.json
@@ -0,0 +1,13 @@
+{
+ "newChat": "Новий чат",
+ "selectAPrompt": "Виберіть запит",
+ "githubRepository": "Репозиторій GitHub",
+ "settings": "Налаштування",
+ "sidebarTitle": "Історія чату",
+ "error": "Збій",
+ "somethingWentWrong": "Щось пішло не так",
+ "validationSelectModel": "Будь ласка, виберіть модель для продовження",
+ "deleteHistoryConfirmation": "Ви впевнені, що хочете видалити цю історію?",
+ "editHistoryTitle": "Введіть нову назву",
+ "temporaryChat": "Тимчасовий чат"
+}
diff --git a/src/assets/locale/uk/playground.json b/src/assets/locale/uk/playground.json
new file mode 100644
index 0000000..29e244d
--- /dev/null
+++ b/src/assets/locale/uk/playground.json
@@ -0,0 +1,30 @@
+{
+ "ollamaState": {
+ "searching": "Пошук вашого Ollama 🦙",
+ "running": "Ollama працює 🦙",
+ "notRunning": "Неможливо підключитися до Ollama 🦙",
+ "connectionError": "Здається, у вас виникла проблема з підключенням. Будь ласка, зверніться до цієї документації для усунення несправностей."
+ },
+ "formError": {
+ "noModel": "Виберіть модель",
+ "noEmbeddingModel": "Налаштуйте модель вкладень на сторінці Налаштування > RAG"
+ },
+ "form": {
+ "textarea": {
+ "placeholder": "Введіть повідомлення..."
+ },
+ "webSearch": {
+ "on": "Увімкнено",
+ "off": "Вимкнено"
+ }
+ },
+ "tooltip": {
+ "searchInternet": "Пошук в Інтернеті",
+ "speechToText": "Голос у текст",
+ "uploadImage": "Завантажити зображення",
+ "stopStreaming": "Зупинити трансляцію",
+ "knowledge": "Знання"
+ },
+ "sendWhenEnter": "Надсилати при натисканні Enter",
+ "welcome": "Вітаю! Як я можу допомогти вам сьогодні?"
+}
\ No newline at end of file
diff --git a/src/assets/locale/uk/settings.json b/src/assets/locale/uk/settings.json
new file mode 100644
index 0000000..db0695b
--- /dev/null
+++ b/src/assets/locale/uk/settings.json
@@ -0,0 +1,344 @@
+{
+ "generalSettings": {
+ "title": "Загальні налаштування",
+ "settings": {
+ "heading": "Налаштування веб-інтерфейсу",
+ "speechRecognitionLang": {
+ "label": "Мова для розпізнавання голосу",
+ "placeholder": "Виберіть мову"
+ },
+ "language": {
+ "label": "Мова інтерфейсу",
+ "placeholder": "Виберіть мову"
+ },
+ "darkMode": {
+ "label": "Змінити тему",
+ "options": {
+ "light": "Світла",
+ "dark": "Темна"
+ }
+ },
+ "copilotResumeLastChat": {
+ "label": "Поновити останню розмову при відкритті бічної панелі (Copilot)"
+ },
+ "hideCurrentChatModelSettings": {
+ "label": "Приховати налаштування поточної моделі чату"
+ },
+ "restoreLastChatModel": {
+ "label": "Відновити останню використану модель для попередніх чатів"
+ },
+ "sendNotificationAfterIndexing": {
+ "label": "Надсилати сповіщення після завершення обробки бази знань"
+ },
+ "generateTitle": {
+ "label": "Створювати заголовок за допомогою AI"
+ },
+ "ollamaStatus": {
+ "label": "Увімкнути або вимкнути перевірку стану з'єднання Ollama"
+ }
+ },
+ "sidepanelRag": {
+ "heading": "Чат з Copilot з налаштуваннями веб-сайту",
+ "ragEnabled": {
+ "label": "Чат з веб-сайтом за допомогою векторних вкладень"
+ },
+ "maxWebsiteContext": {
+ "label": "Розмір вмісту нормального режиму",
+ "placeholder": "Розмір вмісту (типово 4028)"
+ }
+ },
+ "webSearch": {
+ "heading": "Управління веб-пошуком",
+ "searchMode": {
+ "label": "Виконувати простий пошук в Інтернеті"
+ },
+ "provider": {
+ "label": "Пошукова система",
+ "placeholder": "Виберіть пошукову систему"
+ },
+ "totalSearchResults": {
+ "label": "Загальна кількість результатів пошуку",
+ "placeholder": "Введіть загальну кількість результатів пошуку"
+ },
+ "visitSpecificWebsite": {
+ "label": "Відвідати веб-сайт, згаданий у повідомленні"
+ }
+ },
+ "system": {
+ "heading": "Системні налаштування",
+ "deleteChatHistory": {
+ "label": "Видалити історію чату",
+ "button": "Видалити",
+ "confirm": "Ви впевнені, що хочете видалити історію чату? Ця дія не може бути відвернута."
+ },
+ "export": {
+ "label": "Експорт історії чату, бази знань та запитів",
+ "button": "Експортувати дані",
+ "success": "Експорт успішний"
+ },
+ "import": {
+ "label": "Імпорт історії чату, бази знань, та запитів",
+ "button": "Імпортувати дані",
+ "success": "Імпорт успішний",
+ "error": "Помилка імпорту"
+ }
+ },
+ "tts": {
+ "heading": "Налаштування Текст-у-Голос",
+ "ttsEnabled": {
+ "label": "Увімкнути Текст-у-Голос"
+ },
+ "ttsProvider": {
+ "label": "Поставник Текст-у-Голос",
+ "placeholder": "Виберіть постачальника"
+ },
+ "ttsVoice": {
+ "label": "Голос Текст-у-Голос",
+ "placeholder": "Виберіть голос"
+ },
+ "ssmlEnabled": {
+ "label": "Ввімкнути SSML (Мова Розмітки для Синтезу Голосу)"
+ }
+ }
+ },
+ "manageModels": {
+ "title": "Управління моделями",
+ "addBtn": "Додати нову модель",
+ "columns": {
+ "name": "Назва",
+ "digest": "Хеш",
+ "modifiedAt": "Оновлено",
+ "size": "Розмір",
+ "actions": "Дії"
+ },
+ "expandedColumns": {
+ "parentModel": "Батьківська модель",
+ "format": "Формат",
+ "family": "Сімʼя",
+ "parameterSize": "Розмір параметрів",
+ "quantizationLevel": "Рівень квантування"
+ },
+ "tooltip": {
+ "delete": "Видалити модель",
+ "repull": "Повторно завантажити модель"
+ },
+ "confirm": {
+ "delete": "Ви впевнені, що хочете видалити цю модель?",
+ "repull": "Ви впевнені, що хочете повторно завантажити цю модель?"
+ },
+ "modal": {
+ "title": "Додати нову модель",
+ "placeholder": "Введіть назву моделі",
+ "pull": "Завантажити модель"
+ },
+ "notification": {
+ "pullModel": "Завантаження моделі",
+ "pullModelDescription": "Завантажується модель {{modelName}}. Для отримання додаткової інформації перевірте іконку розширення.",
+ "success": "Успіх",
+ "error": "Помилка",
+ "successDescription": "Модель успішно завантажена",
+ "successDeleteDescription": "Модель успішно видалена",
+ "someError": "Щось пішло не так. Будь ласка, спробуйте пізніше."
+ }
+ },
+ "managePrompts": {
+ "title": "Управління запитами",
+ "addBtn": "Додати новий запит",
+ "option1": "Нормальний",
+ "option2": "RAG",
+ "questionPrompt": "Питання-запит",
+ "segmented": {
+ "custom": "Власні запити",
+ "copilot": "Запити Copilot"
+ },
+ "columns": {
+ "title": "Назва",
+ "prompt": "Запит",
+ "type": "Тип запиту",
+ "actions": "Дії"
+ },
+ "systemPrompt": "Системний запит",
+ "quickPrompt": "Швидкий запит",
+ "tooltip": {
+ "delete": "Видалити запит",
+ "edit": "Редагувати запит"
+ },
+ "confirm": {
+ "delete": "Ви впевнені, що хочете видалити цей запит? Його не вдасться відновити."
+ },
+ "modal": {
+ "addTitle": "Додати новий запит",
+ "editTitle": "Редагувати запит"
+ },
+ "form": {
+ "title": {
+ "label": "Назва",
+ "placeholder": "Мій чудовий запит",
+ "required": "Будь ласка, введіть назву"
+ },
+ "prompt": {
+ "label": "Запит",
+ "placeholder": "Введіть запит",
+ "required": "Будь ласка, введіть запит",
+ "help": "Ви можете використовувати {key} як змінну у вашому запиті.",
+ "missingTextPlaceholder": "Змінна {text} відсутня в запиті. Додайте її, будь ласка."
+ },
+ "isSystem": {
+ "label": "Це системний запит"
+ },
+ "btnSave": {
+ "saving": "Додавання запиту...",
+ "save": "Додати запит"
+ },
+ "btnEdit": {
+ "saving": "Оновлення запиту...",
+ "save": "Оновити запит"
+ }
+ },
+ "notification": {
+ "addSuccess": "Запит додано",
+ "addSuccessDesc": "Запит успішно додано",
+ "error": "Збій",
+ "someError": "Щось пішло не так. Спробуйте знову пізніше",
+ "updatedSuccess": "Запит оновлено",
+ "updatedSuccessDesc": "Запит успішно оновлено",
+ "deletedSuccess": "Запит видалено",
+ "deletedSuccessDesc": "Запит успішно видалено"
+ }
+ },
+ "manageShare": {
+ "title": "Управління спільним доступом",
+ "heading": "Налаштування URL спільного доступу до сторінки",
+ "form": {
+ "url": {
+ "label": "URL спільного доступу до сторінки",
+ "placeholder": "Введіть URL спільного доступу до сторінки",
+ "required": "Будь ласка, введіть ваш URL спільного доступу!",
+ "help": "З міркувань конфіденційності, ви можете самостійно обробляти спільний доступ до сторінки через цей URL. Дізнатися більше."
+ }
+ },
+ "webshare": {
+ "heading": "Спільний доступ через веб",
+ "columns": {
+ "title": "Назва",
+ "url": "URL",
+ "actions": "Дії"
+ },
+ "tooltip": {
+ "delete": "Видалити спільний доступ"
+ },
+ "confirm": {
+ "delete": "Ви впевнені, що хочете видалити цей спільний доступ? Його не вдасться відновити."
+ },
+ "label": "Управління спільним доступом до сторінки",
+ "description": "Включіть або вимкніть функцію спільного доступу до сторінки"
+ },
+ "notification": {
+ "pageShareSuccess": "URL спільного доступу до сторінки оновлено успішно",
+ "someError": "Щось пішло не так. Будь ласка, спробуйте пізніше",
+ "webShareDeleteSuccess": "Спільний доступ видалено успішно"
+ }
+ },
+ "ollamaSettings": {
+ "title": "Налаштування Ollama",
+ "heading": "Налаштуйте Ollama",
+ "settings": {
+ "ollamaUrl": {
+ "label": "URL до Ollama",
+ "placeholder": "Введіть URL до Ollama"
+ },
+ "advanced": {
+ "label": "Розширене налаштування URL Ollama",
+ "urlRewriteEnabled": {
+ "label": "Увімкнути або вимкнути налаштування власного URL походження запиту"
+ },
+ "rewriteUrl": {
+ "label": "Власний URL походження запиту",
+ "placeholder": "Введіть власний URL походження"
+ },
+ "headers": {
+ "label": "Власні заголовки",
+ "add": "Додати заголовок",
+ "key": {
+ "label": "Ключ заголовка",
+ "placeholder": "Authorization"
+ },
+ "value": {
+ "label": "Значення заголовка",
+ "placeholder": "Bearer token"
+ }
+ },
+ "help": "Якщо у вас виникають проблеми з підключенням до Ollama на Page Assist, ви можете налаштувати власний URL походження запиту. Щоб дізнатися більше про це налаштування, натисніть тут."
+ }
+ }
+ },
+ "manageSearch": {
+ "title": "Управління пошуком в Інтернеті",
+ "heading": "Налаштуйте пошук в Інтернеті"
+ },
+ "about": {
+ "title": "Про додаток",
+ "heading": "Інформація про цей додаток",
+ "chromeVersion": "Версія Page Assist",
+ "ollamaVersion": "Версія Ollama",
+ "support": "Ви можете підтримати проект Page Assist, зробивши пожертву або ставши спонсором через наступні платформи:",
+ "koFi": "Підтримка на Ko-fi",
+ "githubSponsor": "Стати спонсором на GitHub",
+ "githubRepo": "Репозиторій GitHub"
+ },
+ "manageKnowledge": {
+ "title": "Управління знаннями",
+ "heading": "Налаштування бази знань"
+ },
+ "rag": {
+ "title": "Налаштування RAG",
+ "ragSettings": {
+ "label": "Налаштування RAG",
+ "model": {
+ "label": "Модель вбудованих даних",
+ "required": "Будь ласка, виберіть модель",
+ "help": "Рекомендується використовувати моделі вбудованих даних, такі як `nomic-embed-text`.",
+ "placeholder": "Вибрати модель"
+ },
+ "chunkSize": {
+ "label": "Розмір шматка",
+ "placeholder": "Ввести розмір шматка",
+ "required": "Будь ласка, введіть розмір шматка"
+ },
+ "chunkOverlap": {
+ "label": "Перекриття шматків",
+ "placeholder": "Ввести перекриття шматків",
+ "required": "Будь ласка, введіть перекриття шматків"
+ },
+ "totalFilePerKB": {
+ "label": "Типовий ліміт кількості завантажень файлів до бази знань",
+ "placeholder": "Введіть типовий ліміт (напр. 10)",
+ "required": "Будь ласка, введіть типовий ліміт кількості файлів для завантаження"
+ },
+ "noOfRetrievedDocs": {
+ "label": "Кількість отриманих документів",
+ "placeholder": "Ввести кількість отриманих документів",
+ "required": "Будь ласка, введіть кількість документів"
+ }
+ },
+ "prompt": {
+ "label": "Налаштування запиту з RAG",
+ "option1": "Нормальний",
+ "option2": "З Веб-пошуком",
+ "alert": "Налаштування системного запиту тут застаріло. Використовуйте розділ «Управління запитами», щоб додавати або редагувати запити. Цей розділ буде видалено в майбутньому оновленні",
+ "systemPrompt": "Системний запит",
+ "systemPromptPlaceholder": "Ввести системний запит",
+ "webSearchPrompt": "Запит веб-пошуку",
+ "webSearchPromptHelp": "Не видаляйте `{search_results}` із запиту.",
+ "webSearchPromptError": "Будь ласка, введіть запит для веб-пошуку",
+ "webSearchPromptPlaceholder": "Ввести запит для веб-пошуку",
+ "webSearchFollowUpPrompt": "Запит для подальшого пошуку в мережі",
+ "webSearchFollowUpPromptHelp": "Не видаляйте `{chat_history}` і `{question}` із запиту.",
+ "webSearchFollowUpPromptError": "Будь ласка, введіть запит для подальшого пошуку в мережі!",
+ "webSearchFollowUpPromptPlaceholder": "Ваш запит для подальшого пошуку в мережі"
+ }
+ },
+ "chromeAiSettings": {
+ "title": "Налаштування Chrome AI"
+ }
+}
diff --git a/src/assets/locale/uk/sidepanel.json b/src/assets/locale/uk/sidepanel.json
new file mode 100644
index 0000000..ad8250a
--- /dev/null
+++ b/src/assets/locale/uk/sidepanel.json
@@ -0,0 +1,7 @@
+{
+ "tooltip": {
+ "embed": "Може знадобитися кілька хвилин для вкладення сторінки у базу. Будь ласка, зачекайте...",
+ "clear": "Стерти історію чату",
+ "history": "Історія чату"
+ }
+}
diff --git a/src/assets/locale/zh/common.json b/src/assets/locale/zh/common.json
index cd58e05..080776a 100644
--- a/src/assets/locale/zh/common.json
+++ b/src/assets/locale/zh/common.json
@@ -70,6 +70,10 @@
"label": "上下文数量",
"placeholder": "输入上下文数量(默认:2048)"
},
+ "numPredict": {
+ "label": "最大令牌数 (num_predict)",
+ "placeholder": "输入最大令牌数(例如:2048、4096)"
+ },
"seed": {
"label": "随机种子",
"placeholder": "输入随机种子值(例如:1234)",
@@ -111,5 +115,6 @@
"older": "更早"
},
"pin": "置顶",
- "unpin": "取消置顶"
+ "unpin": "取消置顶",
+ "generationInfo": "生成信息"
}
\ No newline at end of file
diff --git a/src/assets/locale/zh/openai.json b/src/assets/locale/zh/openai.json
index 1b02184..00583f3 100644
--- a/src/assets/locale/zh/openai.json
+++ b/src/assets/locale/zh/openai.json
@@ -42,7 +42,7 @@
"delete": "删除",
"edit": "编辑",
"newModel": "向提供商添加模型",
- "noNewModel": "对于 LMStudio,我们动态获取。无需手动添加。",
+ "noNewModel": "对于 LMStudio, Ollama, Llamafile,我们动态获取。无需手动添加。",
"searchModel": "搜索模型",
"selectAll": "全选",
"save": "保存",
diff --git a/src/assets/locale/zh/option.json b/src/assets/locale/zh/option.json
index 095daca..cba6731 100644
--- a/src/assets/locale/zh/option.json
+++ b/src/assets/locale/zh/option.json
@@ -8,5 +8,6 @@
"somethingWentWrong": "出现了错误",
"validationSelectModel": "请选择一个模型以继续",
"deleteHistoryConfirmation": "你确定要删除这个历史记录吗?",
- "editHistoryTitle": "输入一个新的标题"
+ "editHistoryTitle": "输入一个新的标题",
+ "temporaryChat": "临时聊天"
}
\ No newline at end of file
diff --git a/src/assets/locale/zh/playground.json b/src/assets/locale/zh/playground.json
index 8f7da46..2b99e39 100644
--- a/src/assets/locale/zh/playground.json
+++ b/src/assets/locale/zh/playground.json
@@ -25,5 +25,6 @@
"stopStreaming": "停止流媒体",
"knowledge": "知识"
},
- "sendWhenEnter": "按Enter发送"
+ "sendWhenEnter": "按Enter发送",
+ "welcome": "你好!今天我能帮你什么?"
}
\ No newline at end of file
diff --git a/src/assets/locale/zh/settings.json b/src/assets/locale/zh/settings.json
index 4c86040..2f834e9 100644
--- a/src/assets/locale/zh/settings.json
+++ b/src/assets/locale/zh/settings.json
@@ -35,6 +35,9 @@
},
"generateTitle": {
"label": "使用人工智能生成标题"
+ },
+ "ollamaStatus": {
+ "label": "启用或禁用Ollama连接状态检查"
}
},
"sidepanelRag": {
diff --git a/src/chain/chat-with-website.ts b/src/chain/chat-with-website.ts
index 3b909d4..1c6b5d3 100644
--- a/src/chain/chat-with-website.ts
+++ b/src/chain/chat-with-website.ts
@@ -1,3 +1,4 @@
+//@ts-nocheck
import { BaseLanguageModel } from "langchain/base_language";
import { Document } from "@langchain/core/documents";
import {
@@ -28,8 +29,8 @@ export function groupMessagesByConversation(messages: ChatHistory) {
const groupedMessages = [];
for (let i = 0; i < messages.length; i += 2) {
groupedMessages.push({
- human: messages[i].content,
- ai: messages[i + 1].content,
+ human: messages[i]?.content,
+ ai: messages[i + 1]?.content,
});
}
@@ -38,7 +39,7 @@ export function groupMessagesByConversation(messages: ChatHistory) {
const formatChatHistoryAsString = (history: BaseMessage[]) => {
return history
- .map((message) => `${message._getType()}: ${message.content}`)
+ .map((message) => `${message._getType()}: ${message?.content}`)
.join("\n");
};
diff --git a/src/chain/chat-with-x.ts b/src/chain/chat-with-x.ts
index 4a63829..296277f 100644
--- a/src/chain/chat-with-x.ts
+++ b/src/chain/chat-with-x.ts
@@ -1,3 +1,4 @@
+//@ts-nocheck
import { BaseLanguageModel } from "@langchain/core/language_models/base"
import { Document } from "@langchain/core/documents"
import {
diff --git a/src/components/Common/Playground/GenerationInfo.tsx b/src/components/Common/Playground/GenerationInfo.tsx
new file mode 100644
index 0000000..4e34710
--- /dev/null
+++ b/src/components/Common/Playground/GenerationInfo.tsx
@@ -0,0 +1,65 @@
+type GenerationMetrics = {
+ total_duration?: number
+ load_duration?: number
+ prompt_eval_count?: number
+ prompt_eval_duration?: number
+ eval_count?: number
+ eval_duration?: number
+ context?: string
+ response?: string
+}
+
+type Props = {
+ generationInfo: GenerationMetrics
+}
+
+export const GenerationInfo = ({ generationInfo }: Props) => {
+ if (!generationInfo) return null
+
+ const calculateTokensPerSecond = (
+ evalCount?: number,
+ evalDuration?: number
+ ) => {
+ if (!evalCount || !evalDuration) return 0
+ return (evalCount / evalDuration) * 1e9
+ }
+
+ const formatDuration = (nanoseconds?: number) => {
+ if (!nanoseconds) return "0ms"
+ const ms = nanoseconds / 1e6
+ if (ms < 1) return `${ms.toFixed(3)}ms`
+ if (ms < 1000) return `${Math.round(ms)}ms`
+ return `${(ms / 1000).toFixed(2)}s`
+ }
+
+ const metricsToDisplay = {
+ ...generationInfo,
+ ...(generationInfo?.eval_count && generationInfo?.eval_duration
+ ? {
+ tokens_per_second: calculateTokensPerSecond(
+ generationInfo.eval_count,
+ generationInfo.eval_duration
+ ).toFixed(2)
+ }
+ : {})
+ }
+
+ return (
+
+
+ {Object.entries(metricsToDisplay)
+ .filter(([key]) => key !== "model")
+ .map(([key, value]) => (
+
+
{key}
+
+ {key.includes("duration")
+ ? formatDuration(value as number)
+ : String(value)}
+
+
+ ))}
+
+
+ )
+}
diff --git a/src/components/Common/Playground/Message.tsx b/src/components/Common/Playground/Message.tsx
index 0c6299c..925fe4c 100644
--- a/src/components/Common/Playground/Message.tsx
+++ b/src/components/Common/Playground/Message.tsx
@@ -1,10 +1,11 @@
import Markdown from "../../Common/Markdown"
import React from "react"
-import { Tag, Image, Tooltip, Collapse } from "antd"
+import { Tag, Image, Tooltip, Collapse, Popover } from "antd"
import { WebSearch } from "./WebSearch"
import {
CheckIcon,
ClipboardIcon,
+ InfoIcon,
Pen,
PlayIcon,
RotateCcw,
@@ -16,6 +17,7 @@ import { MessageSource } from "./MessageSource"
import { useTTS } from "@/hooks/useTTS"
import { tagColors } from "@/utils/color"
import { removeModelSuffix } from "@/db/models"
+import { GenerationInfo } from "./GenerationInfo"
type Props = {
message: string
@@ -37,6 +39,7 @@ type Props = {
hideEditAndRegenerate?: boolean
onSourceClick?: (source: any) => void
isTTSEnabled?: boolean
+ generationInfo?: any
}
export const PlaygroundMessage = (props: Props) => {
@@ -206,6 +209,18 @@ export const PlaygroundMessage = (props: Props) => {
)}
+ {props.generationInfo && (
+
+ }
+ title={t("generationInfo")}>
+
+
+ )}
+
{!props.hideEditAndRegenerate &&
props.currentMessageIndex === props.totalMessages - 1 && (
diff --git a/src/components/Common/Playground/MessageSource.tsx b/src/components/Common/Playground/MessageSource.tsx
index d0a006a..b0d3ad9 100644
--- a/src/components/Common/Playground/MessageSource.tsx
+++ b/src/components/Common/Playground/MessageSource.tsx
@@ -13,7 +13,7 @@ type Props = {
}
export const MessageSource: React.FC = ({ source, onSourceClick }) => {
- if (source?.mode === "rag") {
+ if (source?.mode === "rag" || source?.mode === "chat") {
return (