This commit is contained in:
2025-12-01 17:21:38 +08:00
parent 32fee2b8ab
commit fab8c13cb3
7511 changed files with 996300 additions and 0 deletions

View File

@@ -0,0 +1,100 @@
const translation = {
title: 'Adnotacje',
name: 'Odpowiedź adnotacji',
editBy: 'Odpowiedź edytowana przez {{author}}',
noData: {
title: 'Brak adnotacji',
description:
'Możesz edytować adnotacje podczas debugowania aplikacji lub importować adnotacje tutaj w celu uzyskania wysokiej jakości odpowiedzi.',
},
table: {
header: {
question: 'pytanie',
answer: 'odpowiedź',
createdAt: 'utworzono',
hits: 'trafienia',
actions: 'akcje',
addAnnotation: 'Dodaj adnotację',
bulkImport: 'Masowy import',
bulkExport: 'Masowy eksport',
clearAll: 'Wyczyść wszystkie adnotacje',
clearAllConfirm: 'Usunąć wszystkie adnotacje?',
},
},
editModal: {
title: 'Edytuj odpowiedź adnotacji',
queryName: 'Zapytanie użytkownika',
answerName: 'Bot opowiadający historie',
yourAnswer: 'Twoja odpowiedź',
answerPlaceholder: 'Wpisz tutaj swoją odpowiedź',
yourQuery: 'Twoje zapytanie',
queryPlaceholder: 'Wpisz tutaj swoje zapytanie',
removeThisCache: 'Usuń tę adnotację',
createdAt: 'Utworzono',
},
addModal: {
title: 'Dodaj odpowiedź adnotacji',
queryName: 'Pytanie',
answerName: 'Odpowiedź',
answerPlaceholder: 'Wpisz tutaj odpowiedź',
queryPlaceholder: 'Wpisz tutaj zapytanie',
createNext: 'Dodaj kolejną odpowiedź adnotacji',
},
batchModal: {
title: 'Masowy import',
csvUploadTitle: 'Przeciągnij i upuść tutaj swój plik CSV, lub ',
browse: 'przeglądaj',
tip: 'Plik CSV musi spełniać następującą strukturę:',
question: 'pytanie',
answer: 'odpowiedź',
contentTitle: 'zawartość fragmentu',
content: 'zawartość',
template: 'Pobierz szablon tutaj',
cancel: 'Anuluj',
run: 'Uruchom batch',
runError: 'Uruchomienie batcha nie powiodło się',
processing: 'Przetwarzanie batcha',
completed: 'Import zakończony',
error: 'Błąd importu',
ok: 'OK',
},
errorMessage: {
answerRequired: 'Odpowiedź jest wymagana',
queryRequired: 'Pytanie jest wymagane',
},
viewModal: {
annotatedResponse: 'Odpowiedź adnotacji',
hitHistory: 'Historia trafień',
hit: 'Trafienie',
hits: 'Trafienia',
noHitHistory: 'Brak historii trafień',
},
hitHistoryTable: {
query: 'Zapytanie',
match: 'Dopasowanie',
response: 'Odpowiedź',
source: 'Źródło',
score: 'Wynik',
time: 'Czas',
},
initSetup: {
title: 'Początkowa konfiguracja odpowiedzi adnotacji',
configTitle: 'Konfiguracja odpowiedzi adnotacji',
confirmBtn: 'Zapisz i włącz',
configConfirmBtn: 'Zapisz',
},
embeddingModelSwitchTip:
'Model wektoryzacji tekstu adnotacji, przełączanie modeli spowoduje ponowne osadzenie, co wiąże się z dodatkowymi kosztami.',
list: {
delete: {
title: 'Czy na pewno chcesz usunąć?',
},
},
batchAction: {
selected: 'Wybrany',
delete: 'Usuń',
cancel: 'Anuluj',
},
}
export default translation

View File

@@ -0,0 +1,104 @@
const translation = {
apiServer: 'Serwer API',
apiKey: 'Klucz API',
status: 'Status',
disabled: 'Wyłączony',
ok: 'W usłudze',
copy: 'Kopiuj',
copied: 'Skopiowane',
play: 'Graj',
pause: 'Pauza',
playing: 'Gra',
loading: 'Ładowanie',
merMaid: {
rerender: 'Przerób Renderowanie',
},
never: 'Nigdy',
apiKeyModal: {
apiSecretKey: 'Tajny klucz API',
apiSecretKeyTips:
'Aby zapobiec nadużyciom API, chron swój klucz API. Unikaj używania go jako zwykłego tekstu w kodzie front-end. :)',
createNewSecretKey: 'Utwórz nowy tajny klucz',
secretKey: 'Tajny Klucz',
created: 'UTWORZONY',
lastUsed: 'OSTATNIO UŻYWANY',
generateTips: 'Przechowuj ten klucz w bezpiecznym i dostępnym miejscu.',
},
actionMsg: {
deleteConfirmTitle: 'Usunąć ten tajny klucz?',
deleteConfirmTips: 'Tej akcji nie można cofnąć.',
ok: 'OK',
},
completionMode: {
title: 'Zakończenie App API',
info: 'Do generowania tekstu wysokiej jakości, takiego jak artykuły, podsumowania i tłumaczenia, użyj API completion-messages z danymi wejściowymi użytkownika. Generowanie tekstu zależy od parametrów modelu i szablonów promptów ustawionych w Dify Prompt Engineering.',
createCompletionApi: 'Utwórz Wiadomość Zakończenia',
createCompletionApiTip:
'Utwórz Wiadomość Zakończenia, aby obsługiwać tryb pytanie-odpowiedź.',
inputsTips:
'(Opcjonalnie) Podaj pola wejściowe użytkownika jako pary klucz-wartość, odpowiadające zmiennym w Prompt Eng. Klucz to nazwa zmiennej, Wartość to wartość parametru. Jeśli typ pola to Wybierz, przesłana Wartość musi być jednym z predefiniowanych wyborów.',
queryTips: 'Treść tekstu wprowadzanego przez użytkownika.',
blocking:
'Typ blokujący, czekanie na zakończenie wykonania i zwrócenie wyników. (Żądania mogą być przerywane, jeśli proces jest długi)',
streaming:
'zwraca strumieniowo. Implementacja strumieniowego zwrotu na podstawie SSE (Server-Sent Events).',
messageFeedbackApi: 'Informacje zwrotne o wiadomości (lubię)',
messageFeedbackApiTip:
'Oceniaj otrzymane wiadomości w imieniu użytkowników końcowych na podstawie polubień lub niepolubień. Te dane są widoczne na stronie Logi i adnotacje i są używane do przyszłego dostrojenia modelu.',
messageIDTip: 'ID wiadomości',
ratingTip: 'lubię lub nie lubię, null to cofnięcie',
parametersApi: 'Uzyskaj informacje o parametrach aplikacji',
parametersApiTip:
'Pobierz skonfigurowane parametry wejściowe, w tym nazwy zmiennych, nazwy pól, typy i domyślne wartości. Zwykle używane do wyświetlania tych pól w formularzu lub wypełniania domyślnych wartości po załadowaniu klienta.',
},
chatMode: {
title: 'Chat App API',
info: 'Do wszechstronnych aplikacji konwersacyjnych w formacie Q&A, wywołaj API chat-messages, aby rozpocząć dialog. Utrzymuj trwające rozmowy, przekazując zwrócone conversation_id. Parametry odpowiedzi i szablony zależą od ustawień Dify Prompt Eng.',
createChatApi: 'Utwórz wiadomość czatu',
createChatApiTip:
'Utwórz nową wiadomość konwersacji lub kontynuuj istniejący dialog.',
inputsTips:
'(Opcjonalnie) Podaj pola wejściowe użytkownika jako pary klucz-wartość, odpowiadające zmiennym w Prompt Eng. Klucz to nazwa zmiennej, Wartość to wartość parametru. Jeśli typ pola to Wybierz, przesłana Wartość musi być jednym z predefiniowanych wyborów.',
queryTips: 'Treść pytania/wprowadzanej przez użytkownika',
blocking:
'Typ blokujący, czekanie na zakończenie wykonania i zwrócenie wyników. (Żądania mogą być przerywane, jeśli proces jest długi)',
streaming:
'zwraca strumieniowo. Implementacja strumieniowego zwrotu na podstawie SSE (Server-Sent Events).',
conversationIdTip:
'(Opcjonalnie) ID rozmowy: pozostaw puste dla pierwszej rozmowy; przekaż conversation_id z kontekstu, aby kontynuować dialog.',
messageFeedbackApi: 'Informacje zwrotne od użytkownika terminala, lubię',
messageFeedbackApiTip:
'Oceniaj otrzymane wiadomości w imieniu użytkowników końcowych na podstawie polubień lub niepolubień. Te dane są widoczne na stronie Logi i adnotacje i są używane do przyszłego dostrojenia modelu.',
messageIDTip: 'ID wiadomości',
ratingTip: 'lubię lub nie lubię, null to cofnięcie',
chatMsgHistoryApi: 'Pobierz historię wiadomości czatu',
chatMsgHistoryApiTip:
'Pierwsza strona zwraca najnowsze `limit` wiadomości, które są w odwrotnej kolejności.',
chatMsgHistoryConversationIdTip: 'ID rozmowy',
chatMsgHistoryFirstId:
'ID pierwszego rekordu czatu na bieżącej stronie. Domyślnie brak.',
chatMsgHistoryLimit: 'Ile czatów jest zwracanych w jednym żądaniu',
conversationsListApi: 'Pobierz listę rozmów',
conversationsListApiTip:
'Pobiera listę sesji bieżącego użytkownika. Domyślnie zwraca ostatnie 20 sesji.',
conversationsListFirstIdTip:
'ID ostatniego rekordu na bieżącej stronie, domyślnie brak.',
conversationsListLimitTip: 'Ile czatów jest zwracanych w jednym żądaniu',
conversationRenamingApi: 'Zmiana nazwy rozmowy',
conversationRenamingApiTip:
'Zmień nazwy rozmów; nazwa jest wyświetlana w interfejsach klienta wielosesyjnego.',
conversationRenamingNameTip: 'Nowa nazwa',
parametersApi: 'Uzyskaj informacje o parametrach aplikacji',
parametersApiTip:
'Pobierz skonfigurowane parametry wejściowe, w tym nazwy zmiennych, nazwy pól, typy i domyślne wartości. Zwykle używane do wyświetlania tych pól w formularzu lub wypełniania domyślnych wartości po załadowaniu klienta.',
},
develop: {
requestBody: 'Ciało żądania',
pathParams: 'Parametry ścieżki',
query: 'Zapytanie',
toc: 'Treść',
},
regenerate: 'Ponownie wygenerować',
}
export default translation

View File

@@ -0,0 +1,611 @@
const translation = {
pageTitle: {
line1: 'MONIT',
line2: 'Inżynieria',
},
orchestrate: 'Orkiestracja',
promptMode: {
simple: 'Przełącz na tryb Ekspert, aby edytować cały MONIT',
advanced: 'Tryb Ekspert',
switchBack: 'Przełącz z powrotem',
advancedWarning: {
title:
'Przełączyłeś się na Tryb Ekspert, i po modyfikacji MONITU, NIE można powrócić do trybu podstawowego.',
description: 'W Trybie Ekspert, możesz edytować cały MONIT.',
learnMore: 'Dowiedz się więcej',
ok: 'OK',
},
operation: {
addMessage: 'Dodaj Wiadomość',
},
contextMissing:
'Brak komponentu kontekstowego, skuteczność monitu może być niewystarczająca.',
},
operation: {
applyConfig: 'Publikuj',
resetConfig: 'Resetuj',
debugConfig: 'Debuguj',
addFeature: 'Dodaj funkcję',
automatic: 'Automatyczny',
stopResponding: 'Przestaje odpowiadać',
agree: 'lubię',
disagree: 'nie lubię',
cancelAgree: 'Anuluj polubienie',
cancelDisagree: 'Anuluj niepolubienie',
userAction: 'Akcja użytkownika ',
},
notSetAPIKey: {
title: 'Klucz dostawcy LLM nie został ustawiony',
trailFinished: 'Ścieżka zakończona',
description:
'Klucz dostawcy LLM nie został ustawiony, musi zostać ustawiony przed debugowaniem.',
settingBtn: 'Przejdź do ustawień',
},
trailUseGPT4Info: {
title: 'Obecnie nie obsługuje GPT-4',
description: 'Użyj GPT-4, proszę ustawić klucz API.',
},
feature: {
groupChat: {
title: 'Rozmowy grupowe',
description:
'Dodanie ustawień przedkonwersacyjnych dla aplikacji może poprawić doświadczenia użytkownika.',
},
groupExperience: {
title: 'Poprawa doświadczenia',
},
conversationOpener: {
title: 'Otwieracze do rozmów',
description:
'W aplikacji czatowej pierwsze zdanie, które AI aktywnie wypowiada do użytkownika, zazwyczaj służy jako powitanie.',
},
suggestedQuestionsAfterAnswer: {
title: 'Nawiązanie',
description: 'Ustawienie kolejnych pytań może poprawić czat.',
resDes: '3 sugestie dla kolejnego pytania użytkownika.',
tryToAsk: 'Spróbuj zapytać',
},
moreLikeThis: {
title: 'Więcej takich jak ten',
description:
'Generuj wiele tekstów na raz, a następnie edytuj i kontynuuj generowanie',
generateNumTip: 'Liczba generowanych razów',
tip: 'Korzystanie z tej funkcji spowoduje dodatkowe zużycie tokenów',
},
speechToText: {
title: 'Mowa na tekst',
description: 'Po włączeniu można używać wprowadzania głosowego.',
resDes: 'Wprowadzanie głosowe jest włączone',
},
textToSpeech: {
title: 'Tekst na mowę',
description: 'Po włączeniu tekst można przekształcić w mowę.',
resDes: 'Tekst na audio jest włączony',
},
citation: {
title: 'Cytaty i odniesienia',
description:
'Po włączeniu, pokaż dokument źródłowy i przypisaną sekcję wygenerowanej treści.',
resDes: 'Cytaty i odniesienia są włączone',
},
annotation: {
title: 'Odpowiedź z adnotacją',
description:
'Możesz ręcznie dodać odpowiedź wysokiej jakości do pamięci podręcznej dla priorytetowego dopasowania do podobnych pytań użytkownika.',
resDes: 'Odpowiedź z adnotacją jest włączona',
scoreThreshold: {
title: 'Próg wyników',
description:
'Służy do ustawienia progu podobieństwa dla odpowiedzi z adnotacją.',
easyMatch: 'Łatwe dopasowanie',
accurateMatch: 'Dokładne dopasowanie',
},
matchVariable: {
title: 'Zmienna dopasowania',
choosePlaceholder: 'Wybierz zmienną do dopasowania',
},
cacheManagement: 'Adnotacje',
cached: 'Zanotowano',
remove: 'Usuń',
removeConfirm: 'Usunąć tę adnotację?',
add: 'Dodaj adnotację',
edit: 'Edytuj adnotację',
},
dataSet: {
title: 'Kontekst',
noData: 'Możesz importować wiedzę jako kontekst',
selectTitle: 'Wybierz odniesienie do wiedzy',
selected: 'Wiedza wybrana',
noDataSet: 'Nie znaleziono wiedzy',
toCreate: 'Przejdź do tworzenia',
notSupportSelectMulti: 'Obecnie obsługiwana jest tylko jedna wiedza',
queryVariable: {
title: 'Zmienna zapytania',
tip: 'Ta zmienna będzie używana jako dane wejściowe zapytania do odzyskiwania kontekstu, uzyskując informacje kontekstowe związane z wprowadzonymi danymi.',
choosePlaceholder: 'Wybierz zmienną zapytania',
noVar: 'Brak zmiennych',
noVarTip: 'proszę stworzyć zmienną w sekcji Zmienne',
unableToQueryDataSet: 'Nie można odzyskać wiedzy',
unableToQueryDataSetTip:
'Nie udało się pomyślnie odzyskać wiedzy, proszę wybrać zmienną zapytania kontekstowego w sekcji kontekstowej.',
ok: 'OK',
contextVarNotEmpty:
'zmienna zapytania kontekstowego nie może być pusta',
deleteContextVarTitle: 'Usunąć zmienną „{{varName}}”?',
deleteContextVarTip:
'Ta zmienna została ustawiona jako zmienna zapytania kontekstowego, a jej usunięcie wpłynie na normalne korzystanie z wiedzy. Jeśli nadal potrzebujesz jej usunąć, wybierz ją ponownie w sekcji kontekstowej.',
},
},
tools: {
title: 'Narzędzia',
tips: 'Narzędzia zapewniają standardową metodę wywołania API, przyjmując dane wejściowe użytkownika lub zmienne jako parametry żądania do zapytania o dane zewnętrzne jako kontekst.',
toolsInUse: '{{count}} narzędzi w użyciu',
modal: {
title: 'Narzędzie',
toolType: {
title: 'Typ narzędzia',
placeholder: 'Wybierz typ narzędzia',
},
name: {
title: 'Nazwa',
placeholder: 'Wprowadź nazwę',
},
variableName: {
title: 'Nazwa zmiennej',
placeholder: 'Wprowadź nazwę zmiennej',
},
},
},
conversationHistory: {
title: 'Historia konwersacji',
description: 'Ustaw prefixy dla ról w rozmowie',
tip: 'Historia konwersacji nie jest włączona, proszę dodać <historie> w monicie powyżej.',
learnMore: 'Dowiedz się więcej',
editModal: {
title: 'Edycja nazw ról konwersacyjnych',
userPrefix: 'Prefix użytkownika',
assistantPrefix: 'Prefix asystenta',
},
},
toolbox: {
title: 'SKRZYNKA NARZĘDZIOWA',
},
moderation: {
title: 'Moderacja treści',
description:
'Zabezpiecz wyjście modelu, używając API moderacji lub utrzymując listę wrażliwych słów.',
allEnabled: 'Treść WEJŚCIOWA/WYJŚCIOWA Włączona',
inputEnabled: 'Treść WEJŚCIOWA Włączona',
outputEnabled: 'Treść WYJŚCIOWA Włączona',
modal: {
title: 'Ustawienia moderacji treści',
provider: {
title: 'Dostawca',
openai: 'Moderacja OpenAI',
openaiTip: {
prefix:
'Moderacja OpenAI wymaga skonfigurowanego klucza API OpenAI w ',
suffix: '.',
},
keywords: 'Słowa kluczowe',
},
keywords: {
tip: 'Po jednym w wierszu, oddzielone znakiem nowej linii. Maksymalnie 100 znaków na wiersz.',
placeholder: 'Po jednym w wierszu, oddzielone znakiem nowej linii',
line: 'Linia',
},
content: {
input: 'Moderuj treść WEJŚCIOWĄ',
output: 'Moderuj treść WYJŚCIOWĄ',
preset: 'Ustawione odpowiedzi',
placeholder: 'Tutaj wprowadź ustawione odpowiedzi',
condition:
'Treść WEJŚCIA i WYJŚCIA musi być włączona przynajmniej jedna',
fromApi: 'Ustawione odpowiedzi zwracane przez API',
errorMessage: 'Ustawione odpowiedzi nie mogą być puste',
supportMarkdown: 'Obsługuje Markdown',
},
openaiNotConfig: {
before:
'Moderacja OpenAI wymaga skonfigurowanego klucza API OpenAI w',
after: '',
},
},
contentEnableLabel: 'Włączono moderowanie treści',
},
fileUpload: {
title: 'Przesyłanie plików',
description: 'Pole wprowadzania czatu umożliwia przesyłanie obrazów, dokumentów i innych plików.',
supportedTypes: 'Obsługiwane typy plików',
numberLimit: 'Maksymalna liczba przesłanych plików',
modalTitle: 'Ustawienia przesyłania plików',
},
imageUpload: {
title: 'Przesyłanie obrazów',
description: 'Umożliwia przesyłanie obrazów.',
supportedTypes: 'Obsługiwane typy plików',
numberLimit: 'Maksymalna liczba przesłanych plików',
modalTitle: 'Ustawienia przesyłania obrazów',
},
bar: {
empty: 'Włącz funkcje aby poprawić doświadczenie użytkownika aplikacji webowej',
enableText: 'Funkcje włączone',
manage: 'Zarządzaj',
},
documentUpload: {
title: 'Dokument',
description: 'Włączenie Dokumentu pozwoli modelowi na przyjmowanie dokumentów i odpowiadanie na pytania o nich.',
},
audioUpload: {
title: 'Dźwięk',
description: 'Włączenie Dźwięku pozwoli modelowi na przetwarzanie plików audio do transkrypcji i analizy.',
},
},
automatic: {
},
resetConfig: {
title: 'Potwierdź reset?',
message:
'Reset odrzuca zmiany, przywracając ostatnią opublikowaną konfigurację.',
},
errorMessage: {
nameOfKeyRequired: 'nazwa klucza: {{key}} wymagana',
valueOfVarRequired: '{{key}} wartość nie może być pusta',
queryRequired: 'Tekst żądania jest wymagany.',
waitForResponse: 'Proszę czekać na odpowiedź na poprzednią wiadomość.',
waitForBatchResponse: 'Proszę czekać na odpowiedź na zadanie wsadowe.',
notSelectModel: 'Proszę wybrać model',
waitForImgUpload: 'Proszę czekać na przesłanie obrazu',
waitForFileUpload: 'Poczekaj na przesłanie pliku/plików',
},
chatSubTitle: 'Instrukcje',
completionSubTitle: 'Prefix Monitu',
promptTip:
'Monity kierują odpowiedziami AI za pomocą instrukcji i ograniczeń. Wstaw zmienne takie jak {{input}}. Ten monit nie będzie widoczny dla użytkowników.',
formattingChangedTitle: 'Zmiana formatowania',
formattingChangedText:
'Modyfikacja formatowania zresetuje obszar debugowania, czy jesteś pewien?',
variableTitle: 'Zmienne',
variableTip:
'Użytkownicy wypełniają zmienne w formularzu, automatycznie zastępując zmienne w monicie.',
notSetVar:
'Zmienne pozwalają użytkownikom wprowadzać słowa wstępujące lub otwierające uwagi podczas wypełniania formularzy. Możesz spróbować wpisać "{{input}}" w słowach monitu.',
autoAddVar:
'Niezdefiniowane zmienne odwołują się w pre-monicie, czy chcesz je dodać do formularza wejściowego użytkownika?',
variableTable: {
key: 'Klucz Zmiennej',
name: 'Nazwa Pola Wejściowego Użytkownika',
type: 'Typ Wejścia',
action: 'Akcje',
typeString: 'String',
typeSelect: 'Wybierz',
},
varKeyError: {
canNoBeEmpty: '{{klucz}} jest wymagany',
tooLong:
'{{key}} za długi. Nie może być dłuższy niż 30 znaków',
notValid:
'{{key}} jest nieprawidłowy. Może zawierać tylko litery, cyfry i podkreślenia',
notStartWithNumber:
'{{key}} nie może zaczynać się od cyfry',
keyAlreadyExists: '{{key}} już istnieje',
},
otherError: {
promptNoBeEmpty: 'Monit nie może być pusty',
historyNoBeEmpty: 'Historia konwersacji musi być ustawiona w monicie',
queryNoBeEmpty: 'Zapytanie musi być ustawione w monicie',
},
variableConfig: {
'addModalTitle': 'Dodaj Pole Wejściowe',
'editModalTitle': 'Edytuj Pole Wejściowe',
'description': 'Ustawienia dla zmiennej {{varName}}',
'fieldType': 'Typ pola',
'string': 'Krótki tekst',
'text-input': 'Krótki tekst',
'paragraph': 'Akapit',
'select': 'Wybierz',
'number': 'Numer',
'notSet': 'Nie ustawione, spróbuj wpisać {{input}} w monicie wstępnym',
'stringTitle': 'Opcje pola tekstowego formularza',
'maxLength': 'Maksymalna długość',
'options': 'Opcje',
'addOption': 'Dodaj opcję',
'apiBasedVar': 'Zmienna oparta na API',
'varName': 'Nazwa zmiennej',
'labelName': 'Nazwa etykiety',
'inputPlaceholder': 'Proszę wpisać',
'required': 'Wymagane',
'hide': 'Ukryj',
'errorMsg': {
labelNameRequired: 'Wymagana nazwa etykiety',
varNameCanBeRepeat: 'Nazwa zmiennej nie może się powtarzać',
atLeastOneOption: 'Wymagana jest co najmniej jedna opcja',
optionRepeat: 'Powtarzają się opcje',
},
'defaultValue': 'Wartość domyślna',
'noDefaultValue': 'Brak wartości domyślnej',
'selectDefaultValue': 'Wybierz wartość domyślną',
'file': {
image: {
name: 'Obraz',
},
audio: {
name: 'Dźwięk',
},
document: {
name: 'Dokument',
},
video: {
name: 'Wideo',
},
custom: {
description: 'Określ inne typy plików.',
createPlaceholder: ' Rozszerzenie pliku, np. .doc',
name: 'Inne typy plików',
},
supportFileTypes: 'Obsługa typów plików',
},
'both': 'Obie',
'localUpload': 'Przesyłanie lokalne',
'uploadFileTypes': 'Typy przesyłanych plików',
'maxNumberOfUploads': 'Maksymalna liczba przesyłanych plików',
'maxNumberTip': 'Dokument < {{docLimit}}, obraz < {{imgLimit}}, audio < {{audioLimit}}, wideo < {{videoLimit}}',
'single-file': 'Pojedynczy plik',
'content': 'Zawartość',
'multi-files': 'Lista plików',
'json': 'Kod JSON',
'jsonSchema': 'Schemat JSON',
'optional': 'opcjonalny',
'checkbox': 'Pole wyboru',
'unit': 'Jednostka',
'startChecked': 'Rozpocznij sprawdzone',
'placeholder': 'Symbol zastępczy',
'showAllSettings': 'Pokaż wszystkie ustawienia',
'noDefaultSelected': 'Nie wybieraj',
'uploadMethod': 'Metoda przesyłania',
'defaultValuePlaceholder': 'Wprowadź wartość domyślną, aby wstępnie wypełnić pole',
'tooltips': 'Podpowiedzi',
'placeholderPlaceholder': 'Wprowadź tekst, który ma być wyświetlany, gdy pole jest puste',
'tooltipsPlaceholder': 'Wprowadzanie pomocnego tekstu wyświetlanego po najechaniu kursorem na etykietę',
'startSelectedOption': 'Uruchom wybraną opcję',
'displayName': 'Nazwa wyświetlana',
'unitPlaceholder': 'Wyświetlanie jednostek po liczbach, np. żetonów',
},
vision: {
name: 'Wizja',
description:
'Włączenie Wizji pozwoli modelowi przyjmować obrazy i odpowiadać na pytania o nich.',
settings: 'Ustawienia',
visionSettings: {
title: 'Ustawienia Wizji',
resolution: 'Rozdzielczość',
resolutionTooltip: `niska rozdzielczość pozwoli modelowi odbierać obrazy o rozdzielczości 512 x 512 i reprezentować obraz z limitem 65 tokenów. Pozwala to API na szybsze odpowiedzi i zużywa mniej tokenów wejściowych dla przypadków, które nie wymagają wysokiego szczegółu.
\n
wysoka rozdzielczość pozwala najpierw modelowi zobaczyć obraz niskiej rozdzielczości, a następnie tworzy szczegółowe przycięcia obrazów wejściowych jako 512px kwadratów w oparciu o rozmiar obrazu wejściowego. Każde z tych szczegółowych przycięć używa dwukrotności budżetu tokenów, co daje razem 129 tokenów.`,
high: 'Wysoka',
low: 'Niska',
uploadMethod: 'Metoda przesyłania',
both: 'Obie',
localUpload: 'Przesyłanie lokalne',
url: 'URL',
uploadLimit: 'Limit przesyłania',
},
onlySupportVisionModelTip: 'Obsługuje tylko modele wizyjne',
},
voice: {
name: 'Głos',
defaultDisplay: 'Domyślny Głos',
description: 'Ustawienia głosu tekstu na mowę',
settings: 'Ustawienia',
voiceSettings: {
title: 'Ustawienia Głosu',
language: 'Język',
resolutionTooltip: 'Wsparcie językowe głosu tekstu na mowę.',
voice: 'Głos',
autoPlay: 'Automatyczne odtwarzanie',
autoPlayEnabled: 'włączyć coś',
autoPlayDisabled: 'zamknięcie',
},
},
openingStatement: {
title: 'Wstęp do rozmowy',
add: 'Dodaj',
writeOpener: 'Napisz wstęp',
placeholder:
'Tutaj napisz swoją wiadomość wprowadzającą, możesz użyć zmiennych, spróbuj wpisać {{variable}}.',
openingQuestion: 'Pytania otwierające',
openingQuestionPlaceholder: 'Możesz używać zmiennych, spróbuj wpisać {{variable}}.',
noDataPlaceHolder:
'Rozpoczynanie rozmowy z użytkownikiem może pomóc AI nawiązać bliższe połączenie z nim w aplikacjach konwersacyjnych.',
varTip: 'Możesz używać zmiennych, spróbuj wpisać {{variable}}',
tooShort:
'Wymagane jest co najmniej 20 słów wstępnego monitu, aby wygenerować uwagi wstępne do rozmowy.',
notIncludeKey:
'Wstępny monit nie zawiera zmiennej: {{key}}. Proszę dodać ją do wstępnego monitu.',
},
modelConfig: {
model: 'Model',
setTone: 'Ustaw ton odpowiedzi',
title: 'Model i parametry',
modeType: {
chat: 'Czat',
completion: 'Uzupełnienie',
},
},
inputs: {
title: 'Debugowanie i podgląd',
noPrompt: 'Spróbuj wpisać jakiś monit w polu przedmonitu',
userInputField: 'Pole wejściowe użytkownika',
noVar:
'Wypełnij wartość zmiennej, która będzie automatycznie zastępowana w monicie za każdym razem, gdy rozpocznie się nowa sesja.',
chatVarTip:
'Wypełnij wartość zmiennej, która będzie automatycznie zastępowana w monicie za każdym razem, gdy rozpocznie się nowa sesja',
completionVarTip:
'Wypełnij wartość zmiennej, która będzie automatycznie zastępowana w słowach monitu za każdym razem, gdy zostanie przesłane pytanie.',
previewTitle: 'Podgląd monitu',
queryTitle: 'Treść zapytania',
queryPlaceholder: 'Proszę wprowadzić tekst żądania.',
run: 'URUCHOM',
},
result: 'Tekst wyjściowy',
datasetConfig: {
settingTitle: 'Ustawienia odzyskiwania',
knowledgeTip: 'Kliknij przycisk „+”, aby dodać wiedzę',
retrieveOneWay: {
title: 'Odzyskiwanie N-do-1',
description:
'Na podstawie zamiaru użytkownika i opisów Wiedzy, Agent samodzielnie wybiera najlepszą Wiedzę do zapytania. Najlepiej sprawdza się w aplikacjach o wyraźnej, ograniczonej Wiedzy.',
},
retrieveMultiWay: {
title: 'Odzyskiwanie wielościeżkowe',
description:
'Na podstawie zamiaru użytkownika, zapytania obejmują wszystkie Wiedze, pobierają odpowiedni tekst z wielu źródeł i wybierają najlepsze wyniki dopasowane do zapytań użytkownika po ponownym rankingu. Wymagana jest konfiguracja API modelu Przerankowania.',
},
rerankModelRequired: 'Wymagany model Przerankowania',
params: 'Parametry',
top_k: 'Najlepsze K',
top_kTip:
'Używane do filtrowania fragmentów najbardziej podobnych do pytań użytkownika. System również dynamicznie dostosowuje wartość Najlepszych K, zgodnie z maksymalną liczbą tokenów wybranego modelu.',
score_threshold: 'Próg punktacji',
score_thresholdTip:
'Używany do ustawienia progu podobieństwa dla filtrowania fragmentów.',
retrieveChangeTip:
'Modyfikacja trybu indeksowania i odzyskiwania może wpłynąć na aplikacje powiązane z tą Wiedzą.',
embeddingModelRequired: 'Wymagany jest skonfigurowany model osadzania',
},
debugAsSingleModel: 'Debuguj jako pojedynczy model',
debugAsMultipleModel: 'Debuguj jako wiele modeli',
duplicateModel: 'Duplikuj',
publishAs: 'Opublikuj jako',
assistantType: {
name: 'Typ asystenta',
chatAssistant: {
name: 'Podstawowy Asystent',
description:
'Buduj asystenta opartego na czacie, korzystając z dużego modelu językowego',
},
agentAssistant: {
name: 'Asystent Agent',
description:
'Buduj inteligentnego agenta, który może autonomicznie wybierać narzędzia do wykonywania zadań',
},
},
agent: {
agentMode: 'Tryb Agenta',
agentModeDes: 'Ustaw rodzaj trybu wnioskowania dla agenta',
agentModeType: {
ReACT: 'ReAct',
functionCall: 'Wywołanie funkcji',
},
setting: {
name: 'Ustawienia Agenta',
description:
'Ustawienia Asystenta Agenta pozwalają ustawić tryb agenta i zaawansowane funkcje, takie jak wbudowane monity, dostępne tylko w typie Agent.',
maximumIterations: {
name: 'Maksymalna liczba iteracji',
description:
'Ogranicz liczbę iteracji, które asystent agenta może wykonać',
},
},
buildInPrompt: 'Wbudowany Monit',
firstPrompt: 'Pierwszy Monit',
nextIteration: 'Następna Iteracja',
promptPlaceholder: 'Napisz tutaj swój monit',
tools: {
name: 'Narzędzia',
description:
'Używanie narzędzi może rozszerzyć możliwości LLM, takie jak wyszukiwanie w internecie lub wykonywanie obliczeń naukowych',
enabled: 'Włączone',
},
},
codegen: {
generate: 'Stworzyć',
applyChanges: 'Stosowanie zmian',
loading: 'Generowanie kodu...',
generatedCodeTitle: 'Wygenerowany kod',
description: 'Generator kodów używa skonfigurowanych modeli do generowania wysokiej jakości kodu na podstawie Twoich instrukcji. Podaj jasne i szczegółowe instrukcje.',
resTitle: 'Wygenerowany kod',
title: 'Generator kodów',
overwriteConfirmMessage: 'Ta akcja spowoduje zastąpienie istniejącego kodu. Czy chcesz kontynuować?',
instruction: 'Instrukcje',
apply: 'Zastosować',
instructionPlaceholder: 'Wprowadź szczegółowy opis kodu, który chcesz wygenerować.',
noDataLine2: 'W tym miejscu zostanie wyświetlony podgląd kodu.',
noDataLine1: 'Opisz swój przypadek użycia po lewej stronie,',
overwriteConfirmTitle: 'Nadpisać istniejący kod?',
},
generate: {
template: {
pythonDebugger: {
name: 'Debuger języka Python',
instruction: 'Bot, który może generować i debugować kod na podstawie instrukcji',
},
translation: {
name: 'Tłumaczenie',
instruction: 'Tłumacz, który może tłumaczyć wiele języków',
},
professionalAnalyst: {
instruction: 'Wyodrębniaj szczegółowe informacje, identyfikuj ryzyko i destyluj kluczowe informacje z długich raportów w jednej notatce',
name: 'Zawodowy analityk',
},
excelFormulaExpert: {
name: 'Ekspert ds. formuł programu Excel',
instruction: 'Chatbot, który może pomóc początkującym użytkownikom zrozumieć, używać i tworzyć formuły Excela na podstawie instrukcji użytkownika',
},
travelPlanning: {
name: 'Planowanie podróży',
instruction: 'Asystent planowania podróży to inteligentne narzędzie zaprojektowane, aby pomóc użytkownikom w łatwym planowaniu podróży',
},
SQLSorcerer: {
instruction: 'Przekształć język potoczny w zapytania SQL',
name: 'Czarownik SQL',
},
GitGud: {
instruction: 'Generowanie odpowiednich poleceń usługi Git na podstawie opisanych przez użytkownika akcji kontroli wersji',
name: 'Git gud',
},
meetingTakeaways: {
name: 'Wnioski ze spotkania',
instruction: 'Podziel spotkania na zwięzłe podsumowania, w tym tematy dyskusji, kluczowe wnioski i działania',
},
writingsPolisher: {
instruction: 'Korzystaj z zaawansowanych technik redakcyjnych, aby ulepszyć swoje teksty',
name: 'Polerka do pisania',
},
},
instruction: 'Instrukcje',
generate: 'Stworzyć',
tryIt: 'Spróbuj',
overwriteMessage: 'Zastosowanie tego monitu spowoduje zastąpienie istniejącej konfiguracji.',
resTitle: 'Wygenerowany monit',
title: 'Generator podpowiedzi',
apply: 'Zastosować',
overwriteTitle: 'Nadpisać istniejącą konfigurację?',
loading: 'Orkiestracja aplikacji dla Ciebie...',
description: 'Generator podpowiedzi używa skonfigurowanego modelu do optymalizacji podpowiedzi w celu uzyskania wyższej jakości i lepszej struktury. Napisz jasne i szczegółowe instrukcje.',
idealOutput: 'Idealny wynik',
to: 'do',
version: 'Wersja',
dismiss: 'Odrzuć',
latest: 'Najnowszy',
insertContext: 'wstaw kontekst',
versions: 'Wersje',
press: 'Prasa',
optimizationNote: 'Uwaga dotycząca optymalizacji',
instructionPlaceHolderLine2: 'Format wyjściowy jest nieprawidłowy, proszę ściśle przestrzegać formatu JSON.',
optimizePromptTooltip: 'Optymalizuj w generatorze podpowiedzi',
instructionPlaceHolderLine3: 'Ton jest zbyt ostry, proszę uczynić go bardziej przyjaznym.',
newNoDataLine1: 'Napisz instrukcję w lewej kolumnie, a następnie kliknij Generuj, aby zobaczyć odpowiedź.',
instructionPlaceHolderTitle: 'Opisz, jak chciałbyś poprawić ten wskazówkę. Na przykład:',
instructionPlaceHolderLine1: 'Uczyń output bardziej zwięzłym, zachowując kluczowe punkty.',
codeGenInstructionPlaceHolderLine: 'Im bardziej szczegółowy jest feedback, na przykład dotyczący typów danych wejściowych i wyjściowych oraz sposobu przetwarzania zmiennych, tym dokładniejsze będzie generowanie kodu.',
optional: 'Opcjonalny',
idealOutputPlaceholder: 'Opisz swój idealny format odpowiedzi, długość, ton i wymagania dotyczące treści...',
},
warningMessage: {
timeoutExceeded: 'Wyniki nie są wyświetlane z powodu przekroczenia limitu czasu. Zapoznaj się z dziennikami, aby zebrać pełne wyniki.',
},
noResult: 'W tym miejscu zostaną wyświetlone dane wyjściowe.',
}
export default translation

View File

@@ -0,0 +1,116 @@
const translation = {
title: 'Dzienniki',
description:
'Dzienniki rejestrują stan działania aplikacji, w tym dane wejściowe użytkowników i odpowiedzi AI.',
dateTimeFormat: 'DD/MM/YYYY HH:mm:ss',
table: {
header: {
updatedTime: 'Czas aktualizacji',
time: 'Czas utworzenia',
endUser: 'Użytkownik końcowy lub konto',
input: 'Wejście',
output: 'Wyjście',
summary: 'Tytuł',
messageCount: 'Liczba wiadomości',
userRate: 'Ocena użytkownika',
adminRate: 'Ocena operatora',
startTime: 'CZAS STARTU',
status: 'STATUS',
runtime: 'CZAS DZIAŁANIA',
tokens: 'TOKENY',
user: 'UŻYTKOWNIK KOŃCOWY LUB KONTO',
version: 'WERSJA',
triggered_from: 'URUCHOMIONE PRZEZ',
},
pagination: {
previous: 'Poprzedni',
next: 'Następny',
},
empty: {
noChat: 'Brak rozmowy',
noOutput: 'Brak wyników',
element: {
title: 'Czy ktoś jest?',
content:
'Obserwuj i adnotuj interakcje między użytkownikami końcowymi a aplikacjami AI tutaj, aby ciągle poprawiać dokładność AI. Możesz spróbować <shareLink>udostępnić</shareLink> lub <testLink>przetestować</testLink> aplikację internetową samodzielnie, a następnie wrócić na tę stronę.',
},
},
},
detail: {
time: 'Czas',
conversationId: 'ID rozmowy',
promptTemplate: 'Szablon monitu',
promptTemplateBeforeChat:
'Szablon monitu przed rozmową · Jako wiadomość systemowa',
annotationTip: 'Usprawnienia oznaczone przez {{user}}',
timeConsuming: '',
second: 's',
tokenCost: 'Wydatkowane tokeny',
loading: 'ładowanie',
operation: {
like: 'lubię',
dislike: 'nie lubię',
addAnnotation: 'Dodaj usprawnienie',
editAnnotation: 'Edytuj usprawnienie',
annotationPlaceholder:
'Wprowadź oczekiwaną odpowiedź, którą chcesz, aby AI odpowiedziało, co może być używane do dokładnego dostrojenia modelu i ciągłej poprawy jakości generacji tekstu w przyszłości.',
},
variables: 'Zmienne',
uploadImages: 'Przesłane obrazy',
modelParams: 'Parametry modelu',
},
filter: {
period: {
today: 'Dzisiaj',
last7days: 'Ostatnie 7 dni',
last4weeks: 'Ostatnie 4 tygodnie',
last3months: 'Ostatnie 3 miesiące',
last12months: 'Ostatnie 12 miesięcy',
monthToDate: 'Od początku miesiąca',
quarterToDate: 'Od początku kwartału',
yearToDate: 'Od początku roku',
allTime: 'Cały czas',
custom: 'Niestandardowy',
last30days: 'Ostatnie 30 dni',
},
annotation: {
all: 'Wszystkie',
annotated: 'Zanotowane usprawnienia ({{count}} elementów)',
not_annotated: 'Nie zanotowane',
},
sortBy: 'Sortuj według:',
descending: 'malejąco',
ascending: 'rosnąco',
},
workflowTitle: 'Dzienniki przepływu pracy',
workflowSubtitle: 'Dziennik zarejestrował operację Automatyzacji.',
runDetail: {
title: 'Dziennik rozmowy',
workflowTitle: 'Szczegół dziennika',
fileListDetail: 'Detal',
fileListLabel: 'Szczegóły pliku',
testWithParams: 'Test z parametrami',
},
promptLog: 'Dziennik monitów',
agentLog: 'Dziennik agenta',
viewLog: 'Zobacz dziennik',
agentLogDetail: {
agentMode: 'Tryb agenta',
toolUsed: 'Użyte narzędzia',
iterations: 'Iteracje',
iteration: 'Iteracja',
finalProcessing: 'Końcowa obróbka',
},
dateFormat: 'DD/MM/RRRR',
triggerBy: {
debugging: 'Debugowanie',
appRun: 'Aplikacja internetowa',
webhook: 'Webhook',
schedule: 'Harmonogram',
plugin: 'Wtyczka',
ragPipelineRun: 'Pipeline RAG',
ragPipelineDebugging: 'Debugowanie RAG',
},
}
export default translation

View File

@@ -0,0 +1,207 @@
const translation = {
welcome: {
firstStepTip: 'Aby rozpocząć,',
enterKeyTip: 'wprowadź poniżej swój klucz API OpenAI',
getKeyTip: 'Pobierz swój klucz API z pulpitu nawigacyjnego OpenAI',
placeholder: 'Twój klucz API OpenAI (np. sk-xxxx)',
},
apiKeyInfo: {
cloud: {
trial: {
title: 'Korzystasz z limitu próbnego {{providerName}}.',
description:
'Limit próbny jest dostarczany do użytku testowego. Zanim wykorzystasz dozwolone wywołania limitu próbnego, skonfiguruj swojego własnego dostawcę modelu lub zakup dodatkowy limit.',
},
exhausted: {
title:
'Twój limit próbny został wyczerpany, proszę skonfiguruj swój klucz API.',
description:
'Twój limit próbny został wyczerpany. Skonfiguruj swojego własnego dostawcę modelu lub zakup dodatkowy limit.',
},
},
selfHost: {
title: {
row1: 'Aby rozpocząć,',
row2: 'najpierw skonfiguruj swojego dostawcę modelu.',
},
},
callTimes: 'Liczba wywołań',
usedToken: 'Zużyty token',
setAPIBtn: 'Przejdź do konfiguracji dostawcy modelu',
tryCloud: 'Lub wypróbuj wersję chmurową Dify z darmowym limitem',
},
overview: {
title: 'Przegląd',
appInfo: {
explanation: 'Gotowa do użycia aplikacja internetowa AI',
accessibleAddress: 'Publiczny adres URL',
preview: 'Podgląd',
regenerate: 'Wygeneruj ponownie',
regenerateNotice: 'Czy chcesz wygenerować ponownie publiczny adres URL?',
preUseReminder: 'Przed kontynuowaniem włącz aplikację web app.',
settings: {
entry: 'Ustawienia',
title: 'Ustawienia web app',
webName: 'Nazwa web app',
webDesc: 'Opis web app',
webDescTip:
'Ten tekst będzie wyświetlany po stronie klienta, zapewniając podstawowe wskazówki, jak korzystać z aplikacji',
webDescPlaceholder: 'Wpisz opis web app',
language: 'Język',
workflow: {
title: 'Kroki przepływu pracy',
show: 'Pokaż',
hide: 'Ukryj',
subTitle: 'Szczegóły przepływu pracy',
showDesc: 'Pokazywanie lub ukrywanie szczegółów przepływu pracy w aplikacji internetowej',
},
chatColorTheme: 'Motyw kolorystyczny czatu',
chatColorThemeDesc: 'Ustaw motyw kolorystyczny czatu',
chatColorThemeInverted: 'Odwrócony',
invalidHexMessage: 'Nieprawidłowa wartość heksadecymalna',
invalidPrivacyPolicy: 'Nieprawidłowy link do polityki prywatności. Proszę użyć prawidłowego linku zaczynającego się od http lub https',
more: {
entry: 'Pokaż więcej ustawień',
copyright: 'Prawa autorskie',
copyRightPlaceholder: 'Wprowadź nazwę autora lub organizacji',
privacyPolicy: 'Polityka prywatności',
privacyPolicyPlaceholder: 'Wprowadź link do polityki prywatności',
privacyPolicyTip:
'Pomaga odwiedzającym zrozumieć, jakie dane zbiera aplikacja, zobacz <privacyPolicyLink>Politykę prywatności Dify</privacyPolicyLink>.',
customDisclaimer: 'Oświadczenie o ochronie danych',
customDisclaimerPlaceholder: 'Wprowadź oświadczenie o ochronie danych',
customDisclaimerTip: 'Niestandardowy tekst oświadczenia będzie wyświetlany po stronie klienta, dostarczając dodatkowych informacji o aplikacji.',
copyrightTip: 'Wyświetlanie informacji o prawach autorskich w aplikacji internetowej',
copyrightTooltip: 'Uaktualnij do planu Professional lub wyższego',
},
sso: {
tooltip: 'Skontaktuj się z administratorem, aby włączyć logowanie jednokrotne w aplikacji internetowej',
title: 'Logowanie jednokrotne w aplikacji internetowej',
label: 'Uwierzytelnianie logowania jednokrotnego',
description: 'Wszyscy użytkownicy muszą zalogować się za pomocą logowania jednokrotnego przed użyciem aplikacji internetowej',
},
modalTip: 'Ustawienia aplikacji internetowej po stronie klienta.',
},
embedded: {
entry: 'Osadzone',
title: 'Osadź na stronie internetowej',
explanation:
'Wybierz sposób osadzenia aplikacji czatu na swojej stronie internetowej',
iframe:
'Aby dodać aplikację czatu w dowolnym miejscu na swojej stronie internetowej, dodaj ten kod iframe do swojego kodu HTML.',
scripts:
'Aby dodać aplikację czatu w prawym dolnym rogu swojej strony internetowej, dodaj ten kod do swojego HTML.',
chromePlugin: 'Zainstaluj rozszerzenie Chrome Dify Chatbot',
copied: 'Skopiowane',
copy: 'Kopiuj',
},
qrcode: {
title: 'Kod QR do udostępniania',
scan: 'Skanuj aplikację udostępniania',
download: 'Pobierz kod QR',
},
customize: {
way: 'sposób',
entry: 'Dostosuj',
title: 'Dostosuj aplikację internetową AI',
explanation:
'Możesz dostosować front aplikacji internetowej do swoich scenariuszy i potrzeb stylowych.',
way1: {
name: 'Skopiuj kod klienta, zmodyfikuj go i wdroż na Vercel (zalecane)',
step1: 'Skopiuj kod klienta i zmodyfikuj go',
step1Tip:
'Kliknij tutaj, aby skopiować kod źródłowy na swoje konto GitHub i zmodyfikować kod',
step1Operation: 'Dify-WebClient',
step2: 'Wdroż na Vercel',
step2Tip:
'Kliknij tutaj, aby zaimportować repozytorium do Vercel i wdrożyć',
step2Operation: 'Import repozytorium',
step3: 'Konfiguracja zmiennych środowiskowych',
step3Tip: 'Dodaj następujące zmienne środowiskowe w Vercel',
},
way2: {
name: 'Napisz kod po stronie klienta, aby wywołać API i wdrożyć go na serwerze',
operation: 'Dokumentacja',
},
},
launch: 'Uruchomić',
enableTooltip: {
description: 'Aby włączyć tę funkcję, dodaj węzeł Wprowadzanie użytkownika na planszę. (Może już istnieć w szkicu, zacznie działać po opublikowaniu)',
learnMore: 'Dowiedz się więcej',
},
title: 'Aplikacja internetowa',
},
apiInfo: {
title: 'API usługi w tle',
explanation: 'Łatwe do zintegrowania z twoją aplikacją',
accessibleAddress: 'Punkt końcowy API usługi',
doc: 'Dokumentacja API',
},
status: {
running: 'W usłudze',
disable: 'Wyłącz',
},
triggerInfo: {
title: 'Czynniki wywołujące',
explanation: 'Zarządzanie wyzwalaczami przepływu pracy',
triggersAdded: '{{count}} Wyzwalacze dodane',
noTriggerAdded: 'Nie dodano wyzwalacza',
triggerStatusDescription: 'Status węzła wyzwalacza pojawia się tutaj. (Może już istnieć w wersji roboczej, obowiązuje po opublikowaniu)',
learnAboutTriggers: 'Dowiedz się o wyzwalaczach',
},
disableTooltip: {
triggerMode: 'Funkcja {{feature}} nie jest obsługiwana w trybie węzła wyzwalającego.',
},
},
analysis: {
title: 'Analiza',
ms: 'ms',
tokenPS: 'Tokeny/s',
totalMessages: {
title: 'Łączna liczba wiadomości',
explanation: 'Liczba dziennych interakcji z AI.',
},
totalConversations: {
title: 'Całkowita liczba rozmów',
explanation: 'Liczba dziennych rozmów z AI; inżynieria/debugowanie promptów wykluczone.',
},
activeUsers: {
title: 'Aktywni użytkownicy',
explanation:
'Unikalni użytkownicy uczestniczący w pytaniach i odpowiedziach z AI; inżynieria i debugowanie monitów wykluczone.',
},
tokenUsage: {
title: 'Zużycie tokenów',
explanation:
'Odbija dziennie używane tokeny modelu językowego dla aplikacji, przydatne do kontroli kosztów.',
consumed: 'Zużyte',
},
avgSessionInteractions: {
title: 'Śr. interakcji w sesji',
explanation:
'Liczba ciągłych komunikacji użytkownik-AI; dla aplikacji opartych na rozmowach.',
},
avgUserInteractions: {
title: 'Śr. interakcji użytkownika',
explanation:
'Odbija dzienną częstotliwość użytkowania przez użytkowników. Ta metryka odzwierciedla przywiązanie użytkowników.',
},
userSatisfactionRate: {
title: 'Wskaźnik zadowolenia użytkowników',
explanation:
'Liczba polubień na 1000 wiadomości. Wskazuje to proporcję odpowiedzi, z których użytkownicy są bardzo zadowoleni.',
},
avgResponseTime: {
title: 'Śr. czas odpowiedzi',
explanation:
'Czas (ms) potrzebny AI na przetworzenie/odpowiedź; dla aplikacji opartych na tekście.',
},
tps: {
title: 'Szybkość wydajności tokenów',
explanation:
'Mierzy wydajność LLM. Liczy szybkość wydajności tokenów LLM od początku żądania do zakończenia wyjścia.',
},
},
}
export default translation

350
dify/web/i18n/pl-PL/app.ts Normal file
View File

@@ -0,0 +1,350 @@
const translation = {
createApp: 'UTWÓRZ APLIKACJĘ',
types: {
all: 'Wszystkie',
chatbot: 'Chatbot',
agent: 'Agent',
workflow: 'Przepływ pracy',
completion: 'Zakończenie',
advanced: 'Przepływ czatu',
basic: 'Podstawowy',
},
duplicate: 'Duplikuj',
duplicateTitle: 'Duplikuj aplikację',
export: 'Eksportuj DSL',
exportFailed: 'Eksport DSL nie powiódł się.',
importDSL: 'Importuj plik DSL',
createFromConfigFile: 'Utwórz z pliku DSL',
deleteAppConfirmTitle: 'Usunąć tę aplikację?',
deleteAppConfirmContent:
'Usunięcie aplikacji jest nieodwracalne. Użytkownicy nie będą mieli już dostępu do twojej aplikacji, a wszystkie konfiguracje monitów i dzienniki zostaną trwale usunięte.',
appDeleted: 'Aplikacja usunięta',
appDeleteFailed: 'Nie udało się usunąć aplikacji',
join: 'Dołącz do społeczności',
communityIntro:
'Dyskutuj z członkami zespołu, współtwórcami i deweloperami na różnych kanałach.',
roadmap: 'Zobacz naszą mapę drogową',
newApp: {
startFromBlank: 'Utwórz od podstaw',
startFromTemplate: 'Utwórz z szablonu',
workflowWarning: 'Obecnie w fazie beta',
captionName: 'Ikona i nazwa aplikacji',
appNamePlaceholder: 'Podaj nazwę swojej aplikacji',
captionDescription: 'Opis',
appDescriptionPlaceholder: 'Wprowadź opis aplikacji',
useTemplate: 'Użyj tego szablonu',
previewDemo: 'Podgląd demo',
chatApp: 'Asystent',
chatAppIntro:
'Chcę zbudować aplikację opartą na czacie. Ta aplikacja używa formatu pytań i odpowiedzi, umożliwiając wielokrotne rundy ciągłej konwersacji.',
agentAssistant: 'Nowy asystent agenta',
completeApp: 'Generator tekstu',
completeAppIntro:
'Chcę stworzyć aplikację, która generuje teksty wysokiej jakości na podstawie monitów, takich jak generowanie artykułów, streszczeń, tłumaczeń i innych.',
showTemplates: 'Chcę wybrać z szablonu',
hideTemplates: 'Wróć do wyboru trybu',
Create: 'Utwórz',
Cancel: 'Anuluj',
nameNotEmpty: 'Nazwa nie może być pusta',
appTemplateNotSelected: 'Proszę wybrać szablon',
appTypeRequired: 'Proszę wybrać typ aplikacji',
appCreated: 'Aplikacja utworzona',
appCreateFailed: 'Nie udało się utworzyć aplikacji',
appCreateDSLErrorPart3: 'Aktualna wersja aplikacji DSL:',
appCreateDSLErrorPart2: 'Czy chcesz kontynuować?',
Confirm: 'Potwierdzić',
caution: 'Ostrożność',
appCreateDSLWarning: 'Przestroga: Różnica w wersji DSL może mieć wpływ na niektóre funkcje',
appCreateDSLErrorTitle: 'Niezgodność wersji',
appCreateDSLErrorPart4: 'Wersja DSL obsługiwana przez system:',
appCreateDSLErrorPart1: 'Wykryto istotną różnicę w wersjach DSL. Wymuszenie importu może spowodować nieprawidłowe działanie aplikacji.',
noTemplateFoundTip: 'Spróbuj wyszukać za pomocą różnych słów kluczowych.',
noAppsFound: 'Nie znaleziono aplikacji',
foundResults: '{{count}} Wyniki',
noTemplateFound: 'Nie znaleziono szablonów',
chatbotUserDescription: 'Szybko zbuduj chatbota opartego na LLM z prostą konfiguracją. Możesz przełączyć się na Chatflow później.',
optional: 'Fakultatywny',
workflowUserDescription: 'Twórz autonomiczne przepływy AI wizualnie, z prostotą przeciągnij i upuść.',
completionUserDescription: 'Szybko zbuduj asystenta AI do zadań generowania tekstu za pomocą prostej konfiguracji.',
forBeginners: 'Prostsze typy aplikacji',
agentShortDescription: 'Inteligentny agent z rozumowaniem i autonomicznym wykorzystaniem narzędzi',
completionShortDescription: 'Asystent AI do zadań generowania tekstu',
noIdeaTip: 'Nie masz pomysłów? Sprawdź nasze szablony',
forAdvanced: 'DLA ZAAWANSOWANYCH UŻYTKOWNIKÓW',
foundResult: '{{count}} Wynik',
advancedShortDescription: 'Przepływ ulepszony dla wieloturowych czatów',
learnMore: 'Dowiedz się więcej',
chatbotShortDescription: 'Chatbot oparty na LLM z prostą konfiguracją',
chooseAppType: 'Wybierz typ aplikacji',
agentUserDescription: 'Inteligentny agent zdolny do iteracyjnego wnioskowania i autonomicznego wykorzystania narzędzi do osiągania celów zadań.',
workflowShortDescription: 'Agentowy przepływ dla inteligentnych automatyzacji',
advancedUserDescription: 'Przepływ z dodatkowymi funkcjami pamięci i interfejsem chatbota.',
dropDSLToCreateApp: 'Upuść plik DSL tutaj, aby utworzyć aplikację',
import: 'Import',
},
editApp: 'Edytuj informacje',
editAppTitle: 'Edytuj informacje o aplikacji',
editDone: 'Informacje o aplikacji zaktualizowane',
editFailed: 'Nie udało się zaktualizować informacji o aplikacji',
iconPicker: {
ok: 'OK',
cancel: 'Anuluj',
emoji: 'Emoji',
image: 'Obraz',
},
switch: 'Przełącz na Orkiestrację Przepływu Pracy',
switchTipStart:
'Dla ciebie zostanie utworzona nowa kopia aplikacji, a nowa kopia przełączy się na Orkiestrację Przepływu Pracy. Nowa kopia będzie ',
switchTip: 'nie pozwoli',
switchTipEnd: ' na powrót do Podstawowej Orkiestracji.',
switchLabel: 'Kopia aplikacji do utworzenia',
removeOriginal: 'Usuń oryginalną aplikację',
switchStart: 'Rozpocznij przełączanie',
typeSelector: {
all: 'WSZYSTKIE Typy',
chatbot: 'Chatbot',
agent: 'Agent',
workflow: 'Przepływ pracy',
completion: 'Zakończenie',
advanced: 'Przepływ czatu',
},
tracing: {
title: 'Śledzenie wydajności aplikacji',
description: 'Konfiguracja zewnętrznego dostawcy LLMOps i śledzenie wydajności aplikacji.',
config: 'Konfiguruj',
collapse: 'Zwiń',
expand: 'Rozwiń',
tracing: 'Śledzenie',
disabled: 'Wyłączone',
disabledTip: 'Najpierw skonfiguruj dostawcę',
enabled: 'W użyciu',
tracingDescription: 'Przechwytywanie pełnego kontekstu wykonania aplikacji, w tym wywołań LLM, kontekstu, promptów, żądań HTTP i więcej, do platformy śledzenia stron trzecich.',
configProviderTitle: {
configured: 'Skonfigurowano',
notConfigured: 'Skonfiguruj dostawcę, aby włączyć śledzenie',
moreProvider: 'Więcej dostawców',
},
arize: {
title: 'Arize',
description: 'Obserwowalność LLM klasy korporacyjnej, ocena online i offline, monitorowanie i eksperymentowanie — oparta na OpenTelemetry. Zaprojektowana specjalnie dla aplikacji opartych na LLM i agentach.',
},
phoenix: {
title: 'Phoenix',
description: 'Otwarta i oparta na OpenTelemetry platforma do obserwowalności, oceny, inżynierii promptów i eksperymentowania dla Twoich przepływów pracy i agentów LLM.',
},
langsmith: {
title: 'LangSmith',
description: 'Kompleksowa platforma deweloperska dla każdego etapu cyklu życia aplikacji opartej na LLM.',
},
langfuse: {
title: 'Langfuse',
description: 'Śledzenie, oceny, zarządzanie promptami i metryki do debugowania i ulepszania twojej aplikacji LLM.',
},
inUse: 'W użyciu',
configProvider: {
title: 'Konfiguruj ',
placeholder: 'Wprowadź swój {{key}}',
project: 'Projekt',
publicKey: 'Klucz publiczny',
secretKey: 'Klucz tajny',
viewDocsLink: 'Zobacz dokumentację {{key}}',
removeConfirmTitle: 'Usunąć konfigurację {{key}}?',
removeConfirmContent: 'Obecna konfiguracja jest w użyciu, jej usunięcie wyłączy funkcję Śledzenia.',
password: 'Hasło',
experimentId: 'ID eksperymentu',
username: 'Nazwa użytkownika',
trackingUri: 'Śledzenie URI',
clientId: 'ID klienta OAuth',
personalAccessToken: 'Osobisty token dostępu (stary)',
clientSecret: 'Sekretny klucz klienta OAuth',
databricksHost: 'Adres URL obszaru roboczego Databricks',
},
view: 'Widok',
opik: {
description: 'Opik to platforma typu open source do oceny, testowania i monitorowania aplikacji LLM.',
title: 'Opik',
},
weave: {
title: 'Tkaj',
description: 'Weave to platforma open-source do oceny, testowania i monitorowania aplikacji LLM.',
},
aliyun: {
title: 'Monitor Chmury',
description: 'W pełni zarządzana i wolna od konserwacji platforma obserwowalności oferowana przez Alibaba Cloud umożliwia gotowe monitorowanie, śledzenie i oceny aplikacji Dify.',
},
mlflow: {
title: 'MLflow',
description: 'Platforma LLMOps open source do śledzenia eksperymentów, obserwowalności i oceny, aby tworzyć aplikacje AI/LLM z pewnością.',
},
databricks: {
title: 'Databricks',
description: 'Databricks oferuje w pełni zarządzany MLflow z silną kontrolą i bezpieczeństwem do przechowywania danych śledzenia.',
},
tencent: {
title: 'Tencent APM',
description: 'Tencent Application Performance Monitoring zapewnia kompleksowe śledzenie i wielowymiarową analizę dla aplikacji LLM.',
},
},
answerIcon: {
description: 'Czy w aplikacji udostępnionej ma być używana ikona aplikacji internetowej do zamiany 🤖.',
title: 'Użyj ikony web app, aby zastąpić 🤖',
descriptionInExplore: 'Czy używać ikony aplikacji internetowej do zastępowania 🤖 w Eksploruj',
},
importFromDSL: 'Importowanie z DSL',
importFromDSLUrl: 'Z adresu URL',
importFromDSLFile: 'Z pliku DSL',
importFromDSLUrlPlaceholder: 'Wklej tutaj link DSL',
dslUploader: {
button: 'Przeciągnij i upuść plik, lub',
browse: 'Przeglądaj',
},
mermaid: {
handDrawn: 'Ręcznie rysowane',
classic: 'Klasyczny',
},
openInExplore: 'Otwieranie w obszarze Eksploruj',
newAppFromTemplate: {
sidebar: {
Recommended: 'Zalecane',
Assistant: 'Asystent',
Writing: 'Pismo',
Programming: 'Programowanie',
Workflow: 'Przepływ pracy',
Agent: 'Agent',
HR: 'HR',
},
searchAllTemplate: 'Przeszukaj wszystkie szablony...',
byCategories: 'WEDŁUG KATEGORII',
},
showMyCreatedAppsOnly: 'Pokaż tylko moje utworzone aplikacje',
appSelector: {
params: 'PARAMETRY APLIKACJI',
noParams: 'Nie są potrzebne żadne parametry',
placeholder: 'Wybierz aplikację...',
label: 'Aplikacja',
},
structOutput: {
structured: 'Ustrukturyzowany',
LLMResponse: 'Odpowiedź LLM',
notConfiguredTip: 'Strukturalne wyjście nie zostało jeszcze skonfigurowane',
structuredTip: 'Strukturalne wyniki to funkcja, która zapewnia, że model zawsze generuje odpowiedzi zgodne z dostarczonym schematem JSON.',
moreFillTip: 'Pokazując maksymalnie 10 poziomów zagnieżdżenia',
configure: 'Konfiguruj',
required: 'Wymagane',
modelNotSupported: 'Model nie jest obsługiwany',
modelNotSupportedTip: 'Aktualny model nie obsługuje tej funkcji i zostaje automatycznie obniżony do wstrzyknięcia zapytania.',
},
accessItemsDescription: {
anyone: 'Każdy może uzyskać dostęp do aplikacji webowej',
specific: 'Tylko określone grupy lub członkowie mogą uzyskać dostęp do aplikacji internetowej',
organization: 'Każdy w organizacji ma dostęp do aplikacji internetowej.',
external: 'Tylko uwierzytelnieni zewnętrzni użytkownicy mogą uzyskać dostęp do aplikacji internetowej.',
},
accessControlDialog: {
accessItems: {
anyone: 'Każdy z linkiem',
specific: 'Specyficzne grupy lub członkowie',
organization: 'Tylko członkowie w obrębie przedsiębiorstwa',
external: 'Uwierzytelnieni użytkownicy zewnętrzni',
},
operateGroupAndMember: {
searchPlaceholder: 'Szukaj grup i członków',
allMembers: 'Wszyscy członkowie',
expand: 'Rozszerz',
noResult: 'Brak wyniku',
},
title: 'Kontrola dostępu do aplikacji internetowej',
description: 'Ustaw uprawnienia dostępu do aplikacji webowej',
accessLabel: 'Kto ma dostęp',
groups_one: '{{count}} GRUPA',
groups_other: '{{count}} GRUPY',
members_one: '{{count}} CZŁONEK',
members_other: '{{count}} CZŁONKÓW',
noGroupsOrMembers: 'Nie wybrano żadnych grup ani członków',
webAppSSONotEnabledTip: 'Proszę skontaktować się z administratorem przedsiębiorstwa, aby skonfigurować metodę uwierzytelniania aplikacji internetowej.',
updateSuccess: 'Aktualizacja powiodła się',
},
publishApp: {
title: 'Kto ma dostęp do aplikacji internetowej',
notSet: 'Nie ustawiono',
notSetDesc: 'Obecnie nikt nie może uzyskać dostępu do aplikacji internetowej. Proszę ustawić uprawnienia.',
},
accessControl: 'Kontrola dostępu do aplikacji internetowej',
noAccessPermission: 'Brak uprawnień do dostępu do aplikacji internetowej',
maxActiveRequests: 'Maksymalne równoczesne żądania',
maxActiveRequestsPlaceholder: 'Wprowadź 0, aby uzyskać nielimitowane',
maxActiveRequestsTip: 'Maksymalna liczba jednoczesnych aktywnych żądań na aplikację (0 dla nieograniczonej)',
gotoAnything: {
actions: {
searchPlugins: 'Szukaj wtyczek',
searchWorkflowNodesHelp: 'Ta funkcja działa tylko podczas wyświetlania przepływu pracy. Najpierw przejdź do przepływu pracy.',
searchApplicationsDesc: 'Wyszukiwanie aplikacji i przechodzenie do nich',
searchPluginsDesc: 'Wyszukiwanie i przechodzenie do wtyczek',
searchApplications: 'Szukaj aplikacji',
searchKnowledgeBasesDesc: 'Wyszukiwanie i przechodzenie do baz wiedzy',
searchWorkflowNodesDesc: 'Znajdowanie węzłów w bieżącym przepływie pracy i przechodzenie do nich według nazwy lub typu',
searchKnowledgeBases: 'Szukaj w bazach wiedzy',
searchWorkflowNodes: 'Wyszukiwanie węzłów przepływu pracy',
themeSystem: 'Motyw systemu',
themeCategoryTitle: 'Temat',
languageCategoryTitle: 'Język',
themeDark: 'Ciemny motyw',
runTitle: 'Polecenia',
themeLight: 'Jasny motyw',
themeCategoryDesc: 'Zmień motyw aplikacji',
languageCategoryDesc: 'Zmień język interfejsu',
themeDarkDesc: 'Użyj ciemnego wyglądu',
themeLightDesc: 'Użyj jasnego wyglądu',
languageChangeDesc: 'Zmień język interfejsu',
themeSystemDesc: 'Podążaj za wyglądem swojego systemu operacyjnego',
runDesc: 'Uruchom szybkie polecenia (motyw, język, ...)',
slashDesc: 'Wykonuj polecenia takie jak /theme, /lang',
communityDesc: 'Otwarta społeczność Discord',
docDesc: 'Otwórz dokumentację pomocy',
accountDesc: 'Przejdź do strony konta',
feedbackDesc: 'Otwarte dyskusje na temat opinii społeczności',
},
emptyState: {
noAppsFound: 'Nie znaleziono aplikacji',
noKnowledgeBasesFound: 'Nie znaleziono baz wiedzy',
noWorkflowNodesFound: 'Nie znaleziono węzłów przepływu pracy',
noPluginsFound: 'Nie znaleziono wtyczek',
tryDifferentTerm: 'Spróbuj innego terminu wyszukiwania lub usuń filtr {{mode}}',
trySpecificSearch: 'Spróbuj {{shortcuts}} dla konkretnych wyszukiwań',
},
groups: {
apps: 'Aplikacje',
workflowNodes: 'Węzły przepływu pracy',
knowledgeBases: 'Bazy wiedzy',
plugins: 'Wtyczki',
commands: 'Polecenia',
},
useAtForSpecific: 'Użyj @ dla określonych typów',
searchPlaceholder: 'Wyszukaj lub wpisz @ dla poleceń...',
searching: 'Wyszukiwanie...',
noResults: 'Nie znaleziono wyników',
searchTitle: 'Szukaj czegokolwiek',
someServicesUnavailable: 'Niektóre usługi wyszukiwania są niedostępne',
clearToSearchAll: 'Wyczyść @, aby przeszukać wszystko',
searchTemporarilyUnavailable: 'Wyszukiwanie chwilowo niedostępne',
servicesUnavailableMessage: 'W przypadku niektórych usług wyszukiwania mogą występować problemy. Spróbuj ponownie za chwilę.',
searchFailed: 'Wyszukiwanie nie powiodło się',
searchHint: 'Zacznij pisać, aby natychmiast wszystko przeszukać',
commandHint: 'Wpisz @, aby przeglądać według kategorii',
selectSearchType: 'Wybierz, czego chcesz szukać',
resultCount: '{{count}} wynik',
resultCount_other: '{{count}} wyników',
inScope: 'w {{scope}}s',
noMatchingCommands: 'Nie znaleziono pasujących poleceń',
tryDifferentSearch: 'Spróbuj użyć innego hasła',
slashHint: 'Wpisz / aby zobaczyć wszystkie dostępne polecenia',
selectToNavigate: 'Wybierz, aby nawigować',
tips: 'Naciśnij ↑↓, aby nawigować',
startTyping: 'Zacznij pisać, aby wyszukać',
pressEscToClose: 'Naciśnij ESC, aby zamknąć',
},
notPublishedYet: 'Aplikacja nie została jeszcze opublikowana',
noUserInputNode: 'Brak węzła wejściowego użytkownika',
}
export default translation

View File

@@ -0,0 +1,213 @@
const translation = {
currentPlan: 'Obecny plan',
upgradeBtn: {
plain: 'Ulepsz plan',
encourage: 'Ulepsz teraz',
encourageShort: 'Ulepsz',
},
viewBilling: 'Zarządzaj rozliczeniami i subskrypcjami',
buyPermissionDeniedTip:
'Skontaktuj się z administratorem swojej firmy, aby zasubskrybować',
plansCommon: {
yearlyTip: 'Otrzymaj 2 miesiące za darmo, subskrybując rocznie!',
mostPopular: 'Najpopularniejszy',
planRange: {
monthly: 'Miesięczny',
yearly: 'Roczny',
},
month: 'miesiąc',
year: 'rok',
save: 'Oszczędź ',
free: 'Darmowy',
currentPlan: 'Obecny plan',
contractSales: 'Skontaktuj się z działem sprzedaży',
contractOwner: 'Skontaktuj się z zarządcą zespołu',
startForFree: 'Zacznij za darmo',
contactSales: 'Kontakt z działem sprzedaży',
talkToSales: 'Porozmawiaj z działem sprzedaży',
modelProviders: 'Dostawcy modeli',
buildApps: 'Twórz aplikacje',
vectorSpace: 'Przestrzeń wektorowa',
vectorSpaceTooltip:
'Przestrzeń wektorowa jest systemem pamięci długoterminowej wymaganym dla LLM, aby zrozumieć Twoje dane.',
documentProcessingPriority: 'Priorytet przetwarzania dokumentów',
documentProcessingPriorityUpgrade:
'Przetwarzaj więcej danych z większą dokładnością i w szybszym tempie.',
priority: {
'standard': 'Standardowy',
'priority': 'Priorytetowy',
'top-priority': 'Najwyższy priorytet',
},
logsHistory: 'Historia logów',
customTools: 'Niestandardowe narzędzia',
unavailable: 'Niedostępne',
days: 'dni',
unlimited: 'Nieograniczony',
support: 'Wsparcie',
supportItems: {
communityForums: 'Forum społecznościowe',
emailSupport: 'Wsparcie mailowe',
priorityEmail: 'Priorytetowa pomoc mailowa i czat',
logoChange: 'Zmiana logo',
SSOAuthentication: 'Uwierzytelnianie SSO',
personalizedSupport: 'Personalizowane wsparcie',
dedicatedAPISupport: 'Dedykowane wsparcie API',
customIntegration: 'Niestandardowa integracja i wsparcie',
ragAPIRequest: 'Żądania API RAG',
bulkUpload: 'Masowe przesyłanie dokumentów',
agentMode: 'Tryb agenta',
workflow: 'Przepływ pracy',
llmLoadingBalancing: 'Równoważenie obciążenia LLM',
llmLoadingBalancingTooltip: 'Dodaj wiele kluczy API do modeli, skutecznie omijając limity szybkości interfejsu API.',
},
comingSoon: 'Wkrótce dostępne',
member: 'Członek',
memberAfter: 'Członek',
messageRequest: {
title: 'Limity kredytów wiadomości',
tooltip:
'Limity wywołań wiadomości dla różnych planów używających modeli OpenAI (z wyjątkiem gpt4). Wiadomości przekraczające limit będą korzystać z twojego klucza API OpenAI.',
titlePerMonth: '{{count,number}} wiadomości/miesiąc',
},
annotatedResponse: {
title: 'Limity kredytów na adnotacje',
tooltip:
'Ręczna edycja i adnotacja odpowiedzi zapewniają możliwość dostosowania wysokiej jakości odpowiedzi na pytania dla aplikacji. (Stosowane tylko w aplikacjach czatowych)',
},
ragAPIRequestTooltip:
'Odnosi się do liczby wywołań API wykorzystujących tylko zdolności przetwarzania bazy wiedzy Dify.',
receiptInfo:
'Tylko właściciel zespołu i administrator zespołu mogą subskrybować i przeglądać informacje o rozliczeniach',
annotationQuota: 'Przydział adnotacji',
documents: '{{count,number}} Dokumentów Wiedzy',
apiRateLimit: 'Limit liczby wywołań API',
documentsTooltip: 'Kwota dotycząca liczby dokumentów importowanych z Źródła Danych Wiedzy.',
unlimitedApiRate: 'Brak limitu liczby zapytań API',
annualBilling: 'Roczne rozliczenie',
getStarted: 'Zacznij',
freeTrialTip: 'bezpłatny okres próbny 200 wywołań OpenAI.',
comparePlanAndFeatures: 'Porównaj plany i funkcje',
freeTrialTipPrefix: 'Zarejestruj się i zdobądź',
teamMember_other: '{{count,number}} członków zespołu',
teamWorkspace: '{{count,number}} Zespół Workspace',
apiRateLimitUnit: '{{count,number}}',
cloud: 'Usługa chmurowa',
teamMember_one: '{{count,number}} Członek zespołu',
priceTip: 'na przestrzeń roboczą/',
self: 'Samo-hostowane',
apiRateLimitTooltip: 'Limit aktywności API dotyczy wszystkich żądań składanych za pośrednictwem API Dify, w tym generowania tekstu, rozmów czatowych, wykonywania przepływów pracy i przetwarzania dokumentów.',
freeTrialTipSuffix: 'Nie jest wymagana karta kredytowa',
documentsRequestQuota: '{{count,number}}/min Limit wiedzy na żądanie',
documentsRequestQuotaTooltip: 'Określa całkowitą liczbę działań, jakie przestrzeń robocza może wykonać na minutę w ramach bazy wiedzy, w tym tworzenie zbiorów danych, usuwanie, aktualizacje, przesyłanie dokumentów, modyfikacje, archiwizowanie i zapytania do bazy wiedzy. Ta metryka jest używana do oceny wydajności zapytań do bazy wiedzy. Na przykład, jeśli użytkownik Sandbox wykona 10 kolejnych testów w ciągu jednej minuty, jego przestrzeń robocza zostanie tymczasowo ograniczona w wykonywaniu następujących działań przez następną minutę: tworzenie zbiorów danych, usuwanie, aktualizacje oraz przesyłanie lub modyfikacje dokumentów.',
startBuilding: 'Zacznij budować',
taxTip: 'Wszystkie ceny subskrypcji (miesięczne/roczne) nie obejmują obowiązujących podatków (np. VAT, podatek od sprzedaży).',
taxTipSecond: 'Jeśli w Twoim regionie nie ma obowiązujących przepisów podatkowych, podatek nie pojawi się podczas realizacji zamówienia i nie zostaną naliczone żadne dodatkowe opłaty przez cały okres subskrypcji.',
triggerEvents: {
unlimited: 'Nieograniczone zdarzenia wyzwalające',
tooltip: 'Liczba zdarzeń, które automatycznie uruchamiają przepływy pracy za pomocą wtyczki, harmonogramu lub wyzwalaczy Webhook.',
sandbox: '{{count,number}} Wyzwalacze zdarzeń',
professional: '{{count,number}} Wywołania zdarzeń/miesiąc',
},
workflowExecution: {
standard: 'Standardowe wykonywanie przepływu pracy',
tooltip: 'Priorytet i szybkość wykonywania kolejki przepływu pracy.',
priority: 'Wykonywanie przepływu pracy według priorytetu',
faster: 'Szybsze wykonywanie przepływu pracy',
},
startNodes: {
unlimited: 'Nieograniczone wyzwalacze/przepływ pracy',
limited: 'Do {{count}} wyzwalaczy/przepływów pracy',
},
title: {
plans: 'plany',
description: 'Wybierz plan, który najlepiej odpowiada potrzebom Twojego zespołu.',
},
},
plans: {
sandbox: {
name: 'Sandbox',
description: '200 razy darmowa próba GPT',
for: 'Darmowy okres próbny podstawowych funkcji',
},
professional: {
name: 'Profesjonalny',
description:
'Dla osób fizycznych i małych zespołów, aby odblokować więcej mocy w przystępnej cenie.',
for: 'Dla niezależnych deweloperów/małych zespołów',
},
team: {
name: 'Zespół',
description:
'Współpracuj bez ograniczeń i ciesz się najwyższą wydajnością.',
for: 'Dla średniej wielkości zespołów',
},
enterprise: {
name: 'Przedsiębiorstwo',
description:
'Uzyskaj pełne możliwości i wsparcie dla systemów o kluczowym znaczeniu dla misji.',
includesTitle: 'Wszystko w planie Zespołowym, plus:',
features: ['Skalowalne rozwiązania wdrożeniowe klasy korporacyjnej', 'Autoryzacja licencji komercyjnej', 'Ekskluzywne funkcje dla przedsiębiorstw', 'Wiele przestrzeni roboczych i zarządzanie przedsiębiorstwem', 'SSO', 'Negocjowane umowy SLA przez partnerów Dify', 'Zaawansowane zabezpieczenia i kontrola', 'Aktualizacje i konserwacja przez Dify oficjalnie', 'Profesjonalne wsparcie techniczne'],
priceTip: 'Tylko roczne fakturowanie',
btnText: 'Skontaktuj się z działem sprzedaży',
for: 'Dla dużych zespołów',
price: 'Niestety, nie mogę przetłumaczyć tego tekstu bez konkretnego zdania do przetłumaczenia.',
},
community: {
features: ['Wszystkie podstawowe funkcje udostępnione w publicznym repozytorium', 'Pojedyncza przestrzeń robocza', 'Zgodne z licencją Dify Open Source'],
includesTitle: 'Darmowe funkcje:',
name: 'Społeczność',
price: 'Darmowy',
description: 'Dla użytkowników indywidualnych, małych zespołów lub projektów niekomercyjnych',
btnText: 'Rozpocznij pracę z społecznością',
for: 'Dla użytkowników indywidualnych, małych zespołów lub projektów niekomercyjnych',
},
premium: {
features: ['Niezawodność zarządzana samodzielnie przez różnych dostawców chmury', 'Pojedyncza przestrzeń robocza', 'Dostosowywanie logo i marki aplikacji webowej', 'Priorytetowe wsparcie e-mail i czat'],
description: 'Dla średnich organizacji i zespołów',
for: 'Dla średnich organizacji i zespołów',
name: 'Premium',
priceTip: 'Oparte na rynku chmurowym',
btnText: 'Uzyskaj premium w',
price: 'Skalowalny',
comingSoon: 'Wsparcie dla Microsoft Azure i Google Cloud wkrótce dostępne',
includesTitle: 'Wszystko z Community, plus:',
},
},
vectorSpace: {
fullTip: 'Przestrzeń wektorowa jest pełna.',
fullSolution: 'Ulepsz swój plan, aby uzyskać więcej miejsca.',
},
apps: {
fullTip1des: 'Osiągnąłeś limit tworzenia aplikacji w tym planie.',
fullTip1: 'Zaktualizuj, aby stworzyć więcej aplikacji',
fullTip2: 'Osiągnięto limit planu',
contactUs: 'Skontaktuj się z nami',
fullTip2des: 'Zaleca się usunięcie nieaktywnych aplikacji, aby zwolnić miejsce, lub skontaktowanie się z nami.',
},
annotatedResponse: {
fullTipLine1: 'Ulepsz swój plan, aby',
fullTipLine2: 'adnotować więcej rozmów.',
quotaTitle: 'Limit adnotacji odpowiedzi',
},
usagePage: {
vectorSpace: 'Magazynowanie danych wiedzy',
teamMembers: 'Członkowie zespołu',
documentsUploadQuota: 'Limit przesyłania dokumentów',
buildApps: 'Twórz aplikacje',
annotationQuota: 'Kwota aneksji',
vectorSpaceTooltip: 'Dokumenty z trybem indeksowania o wysokiej jakości będą zużywać zasoby magazynu danych wiedzy. Gdy magazyn danych wiedzy osiągnie limit, nowe dokumenty nie będą przesyłane.',
perMonth: 'miesięcznie',
triggerEvents: 'Wydarzenia wyzwalające',
resetsIn: 'Resetuje się za {{count,number}} dni',
},
teamMembers: 'Członkowie zespołu',
triggerLimitModal: {
upgrade: 'Uaktualnij',
usageTitle: 'WYDARZENIA WYZWALAJĄCE',
description: 'Osiągnąłeś limit wyzwalaczy zdarzeń przepływu pracy dla tego planu.',
title: 'Uaktualnij, aby odblokować więcej zdarzeń wyzwalających',
dismiss: 'Odrzuć',
},
}
export default translation

View File

@@ -0,0 +1,806 @@
const translation = {
api: {
success: 'Sukces',
actionSuccess: 'Akcja powiodła się',
saved: 'Zapisane',
create: 'Utworzono',
remove: 'Usunięto',
},
operation: {
create: 'Utwórz',
confirm: 'Potwierdź',
cancel: 'Anuluj',
clear: 'Wyczyść',
save: 'Zapisz',
saveAndEnable: 'Zapisz i Włącz',
edit: 'Edytuj',
add: 'Dodaj',
added: 'Dodano',
refresh: 'Odśwież',
reset: 'Resetuj',
search: 'Szukaj',
change: 'Zmień',
remove: 'Usuń',
send: 'Wyślij',
copy: 'Kopiuj',
lineBreak: 'Złamanie linii',
sure: 'Jestem pewien',
download: 'Pobierz',
delete: 'Usuń',
settings: 'Ustawienia',
setup: 'Konfiguruj',
getForFree: 'Zdobądź za darmo',
reload: 'Przeładuj',
ok: 'OK',
log: 'Dziennik',
learnMore: 'Dowiedz się więcej',
params: 'Parametry',
duplicate: 'Duplikuj',
rename: 'Zmień nazwę',
audioSourceUnavailable: 'AudioSource jest niedostępny',
copyImage: 'Kopiuj obraz',
openInNewTab: 'Otwórz w nowej karcie',
zoomIn: 'Powiększenie',
zoomOut: 'Pomniejszanie',
saveAndRegenerate: 'Zapisywanie i regeneracja fragmentów podrzędnych',
view: 'Widok',
regenerate: 'Ponownie wygenerować',
viewMore: 'ZOBACZ WIĘCEJ',
close: 'Zamykać',
submit: 'Prześlij',
skip: 'Statek',
imageCopied: 'Skopiowany obraz',
deleteApp: 'Usuń aplikację',
copied: 'Kopiowane',
in: 'w',
viewDetails: 'Wyświetl szczegóły',
format: 'Format',
downloadFailed: 'Pobieranie nie powiodło się. Proszę spróbować ponownie później.',
more: 'Więcej',
downloadSuccess: 'Pobieranie zakończone.',
deSelectAll: 'Odznacz wszystkie',
selectAll: 'Zaznacz wszystkie',
config: 'Konfiguracja',
yes: 'Tak',
no: 'Nie',
deleteConfirmTitle: 'Usunąć?',
confirmAction: 'Proszę potwierdzić swoją akcję.',
noSearchResults: 'Nie znaleziono {{content}}',
resetKeywords: 'Resetuj słowa kluczowe',
selectCount: '{{count}} Wybrane',
searchCount: 'Znajdź {{count}} {{content}}',
noSearchCount: '0 {{content}}',
now: 'Teraz',
},
placeholder: {
input: 'Proszę wprowadzić',
select: 'Proszę wybrać',
search: 'Szukaj...',
},
voice: {
language: {
zhHans: 'Chiński',
zhHant: 'Chiński tradycyjny',
enUS: 'Angielski',
deDE: 'Niemiecki',
frFR: 'Francuski',
esES: 'Hiszpański',
itIT: 'Włoski',
thTH: 'Tajski',
idID: 'Indonezyjski',
jaJP: 'Japoński',
koKR: 'Koreański',
ptBR: 'Portugalski',
ruRU: 'Rosyjski',
ukUA: 'Ukraiński',
viVN: 'Wietnamski',
plPL: 'Polski',
roRO: 'Rumuński',
hiIN: 'Hindi',
trTR: 'Turecki',
faIR: 'Perski',
},
},
unit: {
char: 'znaki',
},
actionMsg: {
noModification: 'W tej chwili brak zmian.',
modifiedSuccessfully: 'Zmodyfikowano pomyślnie',
modifiedUnsuccessfully: 'Nie udało się zmodyfikować',
copySuccessfully: 'Skopiowano pomyślnie',
paySucceeded: 'Płatność zakończona sukcesem',
payCancelled: 'Płatność anulowana',
generatedSuccessfully: 'Wygenerowano pomyślnie',
generatedUnsuccessfully: 'Nie udało się wygenerować',
},
model: {
params: {
temperature: 'Temperatura',
temperatureTip:
'Kontroluje przypadkowość: obniżenie powoduje mniej przypadkowych uzupełnień. Gdy temperatura zbliża się do zera, model staje się deterministyczny i powtarzalny.',
top_p: 'Top P',
top_pTip:
'Kontroluje różnorodność poprzez próbkowanie jądra: 0,5 oznacza, że rozważane są połowa wszystkich opcji ważonych prawdopodobieństwem.',
presence_penalty: 'Kara za obecność',
presence_penaltyTip:
'Jak bardzo karać nowe tokeny w zależności od tego, czy pojawiły się już w tekście.\nZwiększa prawdopodobieństwo, że model zacznie rozmawiać o nowych tematach.',
frequency_penalty: 'Kara za częstotliwość',
frequency_penaltyTip:
'Jak bardzo karać nowe tokeny bazując na ich dotychczasowej częstotliwości w tekście.\nZmniejsza prawdopodobieństwo, że model będzie powtarzał tę samą linię dosłownie.',
max_tokens: 'Maksymalna liczba tokenów',
max_tokensTip:
'Służy do ograniczania maksymalnej długości odpowiedzi w tokenach. \nWiększe wartości mogą ograniczyć miejsce na słowa wstępne, dzienniki rozmów i Wiedzę. \nZaleca się ustawienie go poniżej dwóch trzecich\ngpt-4-1106-preview, gpt-4-vision-preview maksymalna liczba tokenów (input 128k output 4k)',
maxTokenSettingTip:
'Twoje ustawienie maksymalnej liczby tokenów jest wysokie, potencjalnie ograniczając miejsce na monity, zapytania i dane. Rozważ ustawienie go poniżej 2/3.',
setToCurrentModelMaxTokenTip:
'Maksymalna liczba tokenów została zaktualizowana do 80% maksymalnej liczby tokenów obecnego modelu {{maxToken}}.',
stop_sequences: 'Sekwencje zatrzymujące',
stop_sequencesTip:
'Do czterech sekwencji, w których API przestanie generować dalsze tokeny. Zwrócony tekst nie będzie zawierał sekwencji zatrzymującej.',
stop_sequencesPlaceholder: 'Wpisz sekwencję i naciśnij Tab',
},
tone: {
Creative: 'Kreatywny',
Balanced: 'Zrównoważony',
Precise: 'Precyzyjny',
Custom: 'Niestandardowy',
},
addMoreModel: 'Przejdź do ustawień, aby dodać więcej modeli',
settingsLink: 'Ustawienia dostawcy modelu',
capabilities: 'Możliwości multimodalne',
},
menus: {
status: 'beta',
explore: 'Eksploruj',
apps: 'Studio',
plugins: 'Pluginy',
pluginsTips:
'Integruj pluginy stron trzecich lub twórz pluginy AI kompatybilne z ChatGPT.',
datasets: 'Wiedza',
datasetsTips:
'NADCHODZI: Importuj swoje własne dane tekstowe lub wpisuj dane w czasie rzeczywistym przez Webhook, aby wzmocnić kontekst LLM.',
newApp: 'Nowa aplikacja',
newDataset: 'Utwórz Wiedzę',
tools: 'Narzędzia',
exploreMarketplace: 'Zapoznaj się z Marketplace',
appDetail: 'Szczegóły aplikacji',
account: 'klient',
},
userProfile: {
settings: 'Ustawienia',
emailSupport: 'Wsparcie e-mail',
workspace: 'Przestrzeń robocza',
createWorkspace: 'Utwórz przestrzeń roboczą',
helpCenter: 'Pomoc',
roadmap: 'Plan działania',
community: 'Społeczność',
about: 'O',
logout: 'Wyloguj się',
support: 'Wsparcie',
github: 'GitHub',
compliance: 'Zgodność',
contactUs: 'Skontaktuj się z nami',
forum: 'Forum',
},
settings: {
accountGroup: 'KONTO',
workplaceGroup: 'PRZESTRZEŃ ROBOCZA',
account: 'Moje konto',
members: 'Członkowie',
billing: 'Rozliczenia',
integrations: 'Integracje',
language: 'Język',
provider: 'Dostawca modelu',
dataSource: 'Źródło danych',
plugin: 'Pluginy',
apiBasedExtension: 'Rozszerzenie API',
generalGroup: 'OGÓLNE',
},
account: {
avatar: 'Awatar',
name: 'Nazwa',
email: 'Email',
password: 'Hasło',
passwordTip:
'Możesz ustawić stałe hasło, jeśli nie chcesz używać tymczasowych kodów logowania',
setPassword: 'Ustaw hasło',
resetPassword: 'Zresetuj hasło',
currentPassword: 'Obecne hasło',
newPassword: 'Nowe hasło',
confirmPassword: 'Potwierdź hasło',
notEqual: 'Dwa hasła są różne.',
langGeniusAccount: 'Konto Dify',
langGeniusAccountTip: 'Twoje konto Dify i powiązane dane użytkownika.',
editName: 'Edytuj nazwę',
showAppLength: 'Pokaż {{length}} aplikacje',
delete: 'Usuń konto',
deleteTip: 'Usunięcie konta spowoduje trwałe usunięcie wszystkich danych i nie będzie można ich odzyskać.',
myAccount: 'Moje konto',
studio: 'Dify Studio',
account: 'Rachunek',
deletePrivacyLinkTip: 'Aby uzyskać więcej informacji o tym, jak postępujemy z Twoimi danymi, zapoznaj się z naszą',
deletePrivacyLink: 'Polityka prywatności.',
deleteSuccessTip: 'Twoje konto potrzebuje czasu na dokończenie usuwania. Wyślemy Ci wiadomość e-mail, gdy wszystko będzie gotowe.',
deleteLabel: 'Aby potwierdzić, wpisz poniżej swój adres e-mail',
deletePlaceholder: 'Podaj swój adres e-mail',
sendVerificationButton: 'Wyślij kod weryfikacyjny',
verificationLabel: 'Kod weryfikacyjny',
verificationPlaceholder: 'Wklej 6-cyfrowy kod',
permanentlyDeleteButton: 'Trwale usuń konto',
feedbackTitle: 'Sprzężenie zwrotne',
feedbackLabel: 'Powiedz nam, dlaczego usunąłeś swoje konto?',
feedbackPlaceholder: 'Fakultatywny',
workspaceIcon: 'Ikona robocza',
workspaceName: 'Nazwa miejsca pracy',
editWorkspaceInfo: 'Edytuj informacje o przestrzeni roboczej',
changeEmail: {
emailLabel: 'Nowy e-mail',
emailPlaceholder: 'Wprowadź nowy adres e-mail',
changeTo: 'Zmień na {{email}}',
sendVerifyCode: 'Wyślij kod weryfikacyjny',
resend: 'Wyślij ponownie',
title: 'Zmień e-mail',
newEmail: 'Utwórz nowy adres e-mail',
existingEmail: 'Użytkownik z tym adresem e-mail już istnieje.',
content1: 'Jeśli będziesz kontynuować, wyślemy kod weryfikacyjny na <email>{{email}}</email> w celu ponownej autoryzacji.',
resendCount: 'Wyślij ponownie za {{count}}s',
codeLabel: 'Kod weryfikacyjny',
codePlaceholder: 'Wklej 6-cyfrowy kod',
continue: 'Kontynuuj',
content3: 'Wprowadź nowy adres e-mail, a my wyślemy ci kod weryfikacyjny.',
verifyEmail: 'Zweryfikuj swój aktualny adres e-mail',
verifyNew: 'Zweryfikuj swój nowy adres e-mail',
resendTip: 'Nie otrzymałeś kodu?',
content2: 'Twój aktualny adres email to <email>{{email}}</email>. Kod weryfikacyjny został wysłany na ten adres email.',
content4: 'Właśnie wysłaliśmy Ci tymczasowy kod weryfikacyjny na <email>{{email}}</email>.',
authTip: 'Gdy twoje e-mail zostanie zmienione, konta Google lub GitHub powiązane z twoim starym e-mailem nie będą mogły już logować się do tego konta.',
unAvailableEmail: 'Ten email jest tymczasowo niedostępny.',
},
},
members: {
team: 'Zespół',
invite: 'Dodaj',
name: 'NAZWA',
lastActive: 'OSTATNIA AKTYWNOŚĆ',
role: 'ROLE',
pending: 'Oczekujący...',
owner: 'Właściciel',
admin: 'Admin',
adminTip: 'Może tworzyć aplikacje i zarządzać ustawieniami zespołu',
normal: 'Normalny',
normalTip: 'Może tylko korzystać z aplikacji, nie może tworzyć aplikacji',
editor: 'Edytor',
editorTip: 'Może tworzyć i edytować aplikacje, ale nie zarządzać ustawieniami zespołu',
inviteTeamMember: 'Dodaj członka zespołu',
inviteTeamMemberTip:
'Mogą uzyskać bezpośredni dostęp do danych Twojego zespołu po zalogowaniu.',
emailNotSetup: 'Serwer poczty nie jest skonfigurowany, więc nie można wysyłać zaproszeń e-mail. Proszę powiadomić użytkowników o linku do zaproszenia, który zostanie wydany po zaproszeniu.',
email: 'Email',
emailInvalid: 'Nieprawidłowy format e-maila',
emailPlaceholder: 'Proszę podać adresy e-mail',
sendInvite: 'Wyślij zaproszenie',
invitedAsRole: 'Zaproszony jako użytkownik typu {{role}}',
invitationSent: 'Zaproszenie wysłane',
invitationSentTip:
'Zaproszenie zostało wysłane, a oni mogą zalogować się do Dify, aby uzyskać dostęp do danych Twojego zespołu.',
invitationLink: 'Link zaproszenia',
failedInvitationEmails: 'Poniższe osoby nie zostały pomyślnie zaproszone',
ok: 'OK',
removeFromTeam: 'Usuń z zespołu',
removeFromTeamTip: 'Usunie dostęp do zespołu',
setAdmin: 'Ustaw jako administratora',
setMember: 'Ustaw jako zwykłego członka',
setEditor: 'Ustaw jako edytora',
disInvite: 'Anuluj zaproszenie',
deleteMember: 'Usuń członka',
you: '(Ty)',
datasetOperatorTip: 'Może zarządzać tylko bazą wiedzy',
setBuilder: 'Ustaw jako budowniczego',
builder: 'Budowniczy',
builderTip: 'Może tworzyć i edytować własne aplikacje',
datasetOperator: 'Wiedza Admin',
transferModal: {
sendVerifyCode: 'Wyślij kod weryfikacyjny',
resend: 'Wyślij ponownie',
codePlaceholder: 'Wklej 6-cyfrowy kod',
verifyContent: 'Twój aktualny adres e-mail to <email>{{email}}</email>.',
continue: 'Kontynuuj',
verifyEmail: 'Zweryfikuj swój aktualny adres e-mail',
resendTip: 'Nie otrzymałeś kodu?',
transferPlaceholder: 'Wybierz członka zespołu…',
transfer: 'Przenieś własność przestrzeni roboczej',
warning: 'Zaraz przekażesz własność „{{workspace}}”. To nastąpi natychmiast i nie można tego cofnąć.',
title: 'Przenieś własność przestrzeni roboczej',
codeLabel: 'Kod weryfikacyjny',
transferLabel: 'Przenieś właśność przestrzeni roboczej na',
resendCount: 'Wyślij ponownie za {{count}}s',
verifyContent2: 'Wyślemy tymczasowy kod weryfikacyjny na ten adres e-mail w celu ponownej autoryzacji.',
sendTip: 'Jeśli będziesz kontynuować, wyślemy kod weryfikacyjny na <email>{{email}}</email> w celu ponownej autoryzacji.',
warningTip: 'Staniesz się członkiem administracji, a nowy właściciel będzie miał pełną kontrolę.',
},
transferOwnership: 'Przenieś własność',
},
integrations: {
connected: 'Połączony',
google: 'Google',
googleAccount: 'Zaloguj się przy użyciu konta Google',
github: 'GitHub',
githubAccount: 'Zaloguj się przy użyciu konta GitHub',
connect: 'Połącz',
},
language: {
displayLanguage: 'Język interfejsu',
timezone: 'Strefa czasowa',
},
provider: {
apiKey: 'Klucz API',
enterYourKey: 'Wprowadź tutaj swój klucz API',
invalidKey: 'Nieprawidłowy klucz API OpenAI',
validatedError: 'Weryfikacja nie powiodła się: ',
validating: 'Weryfikowanie klucza...',
saveFailed: 'Zapis klucza API nie powiódł się',
apiKeyExceedBill: 'Ten KLUCZ API nie ma dostępnych limitów, przeczytaj',
addKey: 'Dodaj klucz',
comingSoon: 'Już wkrótce',
editKey: 'Edytuj',
invalidApiKey: 'Nieprawidłowy klucz API',
azure: {
apiBase: 'Podstawa API',
apiBasePlaceholder:
'Adres URL podstawowy Twojego końcowego punktu Azure OpenAI.',
apiKey: 'Klucz API',
apiKeyPlaceholder: 'Wprowadź tutaj swój klucz API',
helpTip: 'Dowiedz się więcej o usłudze Azure OpenAI',
},
openaiHosted: {
openaiHosted: 'Hostowany OpenAI',
onTrial: 'NA PROBĘ',
exhausted: 'WYCZERPANY LIMIT',
desc: 'Usługa hostowania OpenAI dostarczana przez Dify pozwala korzystać z modeli takich jak GPT-3.5. Przed wyczerpaniem limitu próbnego należy skonfigurować inne dostawców modeli.',
callTimes: 'Czasy wywołań',
usedUp: 'Limit próbny został wyczerpany. Dodaj własnego dostawcę modeli.',
useYourModel: 'Aktualnie używany jest własny dostawca modeli.',
close: 'Zamknij',
},
anthropicHosted: {
anthropicHosted: 'Anthropic Claude',
onTrial: 'NA PROBĘ',
exhausted: 'WYCZERPANY LIMIT',
desc: 'Potężny model, który doskonale sprawdza się w szerokim spektrum zadań, od zaawansowanego dialogu i generowania treści twórczych po szczegółowe instrukcje.',
callTimes: 'Czasy wywołań',
usedUp: 'Limit próbny został wyczerpany. Dodaj własnego dostawcę modeli.',
useYourModel: 'Aktualnie używany jest własny dostawca modeli.',
close: 'Zamknij',
trialQuotaTip: 'Twój limit próbny Anthropic wygaśnie w dniu 11.03.2025 i nie będzie już dostępny po tym czasie. Prosimy o skorzystanie z niego w odpowiednim czasie.',
},
anthropic: {
using: 'Zdolność do osadzania jest używana',
enableTip:
'Aby włączyć model Anthropica, musisz najpierw powiązać się z usługą OpenAI lub Azure OpenAI.',
notEnabled: 'Nie włączono',
keyFrom: 'Pobierz swój klucz API od Anthropic',
},
encrypted: {
front: 'Twój KLUCZ API będzie szyfrowany i przechowywany za pomocą',
back: ' technologii.',
},
},
modelProvider: {
notConfigured:
'Systemowy model nie został jeszcze w pełni skonfigurowany, co może skutkować niedostępnością niektórych funkcji.',
systemModelSettings: 'Ustawienia modelu systemowego',
systemModelSettingsLink:
'Dlaczego konieczne jest skonfigurowanie modelu systemowego?',
selectModel: 'Wybierz swój model',
setupModelFirst: 'Proszę najpierw skonfigurować swój model',
systemReasoningModel: {
key: 'Model wnioskowania systemowego',
tip: 'Ustaw domyślny model wnioskowania do użytku przy tworzeniu aplikacji, a także cechy takie jak generowanie nazw dialogów i sugestie następnego pytania będą również korzystać z domyślnego modelu wnioskowania.',
},
embeddingModel: {
key: 'Model osadzania',
tip: 'Ustaw domyślny model do przetwarzania osadzania dokumentów wiedzy; zarówno pozyskiwanie, jak i importowanie wiedzy wykorzystują ten model osadzania do przetwarzania wektorowego. Zmiana spowoduje niezgodność wymiarów wektorów między importowaną wiedzą a pytaniem, co skutkować będzie niepowodzeniem w pozyskiwaniu. Aby uniknąć niepowodzeń, prosimy nie zmieniać tego modelu dowolnie.',
required: 'Model osadzania jest wymagany',
},
speechToTextModel: {
key: 'Model mowy na tekst',
tip: 'Ustaw domyślny model do przetwarzania mowy na tekst w rozmowach.',
},
ttsModel: {
key: 'Model tekstu na mowę',
tip: 'Ustaw domyślny model dla konwersji tekstu na mowę w rozmowach.',
},
rerankModel: {
key: 'Model ponownego rankingu',
tip: 'Model ponownego rankingu zmieni kolejność listy dokumentów kandydatów na podstawie semantycznego dopasowania z zapytaniem użytkownika, poprawiając wyniki rankingu semantycznego',
},
quota: 'Limit',
searchModel: 'Model wyszukiwania',
noModelFound: 'Nie znaleziono modelu dla {{model}}',
models: 'Modele',
showMoreModelProvider: 'Pokaż więcej dostawców modeli',
selector: {
tip: 'Ten model został usunięty. Proszę dodać model lub wybrać inny model.',
emptyTip: 'Brak dostępnych modeli',
emptySetting: 'Przejdź do ustawień, aby skonfigurować',
rerankTip: 'Proszę skonfigurować model ponownego rankingu',
},
card: {
quota: 'LIMIT',
onTrial: 'Na próbę',
paid: 'Płatny',
quotaExhausted: 'Wyczerpany limit',
callTimes: 'Czasy wywołań',
tokens: 'Tokeny',
buyQuota: 'Kup limit',
priorityUse: 'Używanie z priorytetem',
removeKey: 'Usuń klucz API',
tip: 'Priorytet zostanie nadany płatnemu limitowi. Po wyczerpaniu limitu próbnego zostanie użyty limit płatny.',
},
item: {
deleteDesc:
'{{modelName}} są używane jako modele wnioskowania systemowego. Niektóre funkcje mogą nie być dostępne po usunięciu. Proszę potwierdź.',
freeQuota: 'LIMIT GRATIS',
},
addApiKey: 'Dodaj swój klucz API',
invalidApiKey: 'Nieprawidłowy klucz API',
encrypted: {
front: 'Twój KLUCZ API będzie szyfrowany i przechowywany za pomocą',
back: ' technologii.',
},
freeQuota: {
howToEarn: 'Jak zdobyć',
},
addMoreModelProvider: 'DODAJ WIĘCEJ DOSTAWCÓW MODELI',
addModel: 'Dodaj model',
modelsNum: '{{num}} Modele',
showModels: 'Pokaż modele',
showModelsNum: 'Pokaż {{num}} modele',
collapse: 'Zwiń',
config: 'Konfiguracja',
modelAndParameters: 'Model i parametry',
model: 'Model',
featureSupported: '{{feature}} obsługiwane',
callTimes: 'Czasy wywołań',
credits: 'Kredyty wiadomości',
buyQuota: 'Kup limit',
getFreeTokens: 'Odbierz darmowe tokeny',
priorityUsing: 'Priorytetyzacja użycia',
deprecated: 'Przestarzałe',
confirmDelete: 'potwierdzić usunięcie?',
quotaTip: 'Pozostałe dostępne darmowe tokeny',
loadPresets: 'Załaduj ustawienia wstępne',
parameters: 'PARAMETRY',
apiKey: 'KLUCZ-API',
loadBalancing: 'Równoważenie obciążenia',
defaultConfig: 'Domyślna konfiguracja',
providerManagedDescription: 'Użyj pojedynczego zestawu poświadczeń dostarczonych przez dostawcę modelu.',
loadBalancingHeadline: 'Równoważenie obciążenia',
modelHasBeenDeprecated: 'Ten model jest przestarzały',
loadBalancingDescription: 'Zmniejsz presję dzięki wielu zestawom poświadczeń.',
providerManaged: 'Zarządzany przez dostawcę',
upgradeForLoadBalancing: 'Uaktualnij swój plan, aby włączyć równoważenie obciążenia.',
apiKeyStatusNormal: 'Stan APIKey jest normalny',
loadBalancingLeastKeyWarning: 'Aby włączyć równoważenie obciążenia, muszą być włączone co najmniej 2 klucze.',
loadBalancingInfo: 'Domyślnie równoważenie obciążenia używa strategii działania okrężnego. Jeśli zostanie uruchomione ograniczenie szybkości, zostanie zastosowany 1-minutowy okres odnowienia.',
configLoadBalancing: 'Równoważenie obciążenia konfiguracji',
editConfig: 'Edytuj konfigurację',
addConfig: 'Dodaj konfigurację',
apiKeyRateLimit: 'Osiągnięto limit szybkości, dostępny po {{sekund}}s',
installProvider: 'Instalowanie dostawców modeli',
emptyProviderTip: 'Najpierw zainstaluj dostawcę modeli.',
discoverMore: 'Dowiedz się więcej w',
toBeConfigured: 'Do skonfigurowania',
configureTip: 'Konfigurowanie klucza interfejsu API lub dodawanie modelu do użycia',
emptyProviderTitle: 'Dostawca modelu nie jest skonfigurowany',
auth: {
apiKeyModal: {
addModel: 'Dodaj model',
title: 'Konfiguracja autoryzacji klucza API',
desc: 'Po skonfigurowaniu poświadczeń wszyscy członkowie w przestrzeni roboczej mogą korzystać z tego modelu podczas orkiestracji aplikacji.',
},
addApiKey: 'Dodaj klucz API',
configModel: 'Skonfiguruj model',
modelCredentials: 'Uprawnienia modelu',
configLoadBalancing: 'Konfiguracja równoważenia obciążenia',
unAuthorized: 'Nieautoryzowany',
specifyModelCredentialTip: 'Użyj skonfigurowanych poświadczeń modelu.',
addCredential: 'Dodaj dane uwierzytelniające',
providerManagedTip: 'Bieżąca konfiguracja jest hostowana przez dostawcę.',
specifyModelCredential: 'Określ dane uwierzytelniające modelu',
authorizationError: 'Błąd autoryzacji',
apiKeys: 'Klucze API',
providerManaged: 'Zarządzane przez dostawcę',
addNewModel: 'Dodaj nowy model',
authRemoved: 'Autoryzacja usunięta',
addModelCredential: 'Dodaj dane uwierzytelniające modelu',
customModelCredentials: 'Poświadczenia modelu niestandardowego',
modelCredential: 'Poświadczenie modelu',
removeModel: 'Usuń model',
addModel: 'Dodaj model',
manageCredentials: 'Zarządzanie poświadczeniami',
addNewModelCredential: 'Dodawanie nowego poświadczenia modelu',
customModelCredentialsDeleteTip: 'Poświadczenie jest w użyciu i nie można go usunąć',
selectModelCredential: 'Wybieranie poświadczeń modelu',
editModelCredential: 'Edytowanie poświadczeń modelu',
},
parametersInvalidRemoved: 'Niektóre parametry są nieprawidłowe i zostały usunięte.',
installDataSourceProvider: 'Zainstaluj dostawców źródeł danych',
},
dataSource: {
add: 'Dodaj źródło danych',
connect: 'Połącz',
notion: {
title: 'Notion',
description: 'Korzystanie z Notion jako źródła danych dla Wiedzy.',
connectedWorkspace: 'Połączona przestrzeń robocza',
addWorkspace: 'Dodaj przestrzeń roboczą',
connected: 'Połączono',
disconnected: 'Rozłączono',
changeAuthorizedPages: 'Zmień uprawnione strony',
pagesAuthorized: 'Strony autoryzowane',
sync: 'Synchronizuj',
remove: 'Usuń',
selector: {
pageSelected: 'Zaznaczone strony',
searchPages: 'Szukaj stron...',
noSearchResult: 'Brak wyników wyszukiwania',
addPages: 'Dodaj strony',
preview: 'PODGLĄD',
},
integratedAlert: 'Notion jest zintegrowany za pomocą wewnętrznych poświadczeń, nie ma potrzeby ponownej autoryzacji.',
},
website: {
active: 'Aktywny',
with: 'Z',
title: 'Strona internetowa',
description: 'Importuj zawartość ze stron internetowych za pomocą robota indeksującego.',
configuredCrawlers: 'Skonfigurowane roboty indeksujące',
inactive: 'Nieaktywny',
},
configure: 'Konfigurować',
},
plugin: {
serpapi: {
apiKey: 'Klucz API',
apiKeyPlaceholder: 'Wprowadź swój klucz API',
keyFrom: 'Pobierz swój klucz SerpAPI ze strony konta SerpAPI',
},
},
apiBasedExtension: {
title:
'Rozszerzenia oparte na interfejsie API zapewniają scentralizowane zarządzanie interfejsami API, upraszczając konfigurację dla łatwego użytkowania w aplikacjach Dify.',
link: 'Dowiedz się, jak opracować własne rozszerzenie interfejsu API.',
add: 'Dodaj rozszerzenie interfejsu API',
selector: {
title: 'Rozszerzenie interfejsu API',
placeholder: 'Wybierz rozszerzenie interfejsu API',
manage: 'Zarządzaj rozszerzeniem interfejsu API',
},
modal: {
title: 'Dodaj rozszerzenie interfejsu API',
editTitle: 'Edytuj rozszerzenie interfejsu API',
name: {
title: 'Nazwa',
placeholder: 'Proszę wprowadź nazwę',
},
apiEndpoint: {
title: 'Koniec API',
placeholder: 'Proszę wprowadź koniec API',
},
apiKey: {
title: 'Klucz API',
placeholder: 'Proszę wprowadź klucz API',
lengthError: 'Długość klucza API nie może być mniejsza niż 5 znaków',
},
},
type: 'Typ',
},
about: {
changeLog: 'Dziennik zmian',
updateNow: 'Aktualizuj teraz',
nowAvailable: 'Dify {{version}} jest teraz dostępny.',
latestAvailable: 'Dify {{version}} jest najnowszą dostępną wersją.',
},
appMenus: {
overview: 'Monitorowanie',
promptEng: 'Orkiestracja',
apiAccess: 'Dostęp API',
logAndAnn: 'Logi i ogł.',
logs: 'Logi',
},
environment: {
testing: 'TESTOWANIE',
development: 'ROZWOJOWA',
},
appModes: {
completionApp: 'Generator tekstu',
chatApp: 'Aplikacja czatowa',
},
datasetMenus: {
documents: 'Dokumenty',
hitTesting: 'Testowanie poboru',
settings: 'Ustawienia',
emptyTip:
'Wiedza nie została powiązana, przejdź do aplikacji lub wtyczki, aby ukończyć powiązanie.',
viewDoc: 'Zobacz dokumentację',
relatedApp: 'powiązane aplikacje',
noRelatedApp: 'Brak połączonych aplikacji',
pipeline: 'Rurociąg',
},
voiceInput: {
speaking: 'Mów teraz...',
converting: 'Konwertowanie na tekst...',
notAllow: 'mikrofon nieautoryzowany',
},
modelName: {
'gpt-3.5-turbo': 'GPT-3.5-Turbo',
'gpt-3.5-turbo-16k': 'GPT-3.5-Turbo-16K',
'gpt-4': 'GPT-4',
'gpt-4-32k': 'GPT-4-32K',
'text-davinci-003': 'Tekst-Davinci-003',
'text-embedding-ada-002': 'Tekst-Wan-Ada-002',
'whisper-1': 'Szept-1',
'claude-instant-1': 'Claude-Natychmiastowy',
'claude-2': 'Claude-2',
},
chat: {
renameConversation: 'Zmień nazwę rozmowy',
conversationName: 'Nazwa rozmowy',
conversationNamePlaceholder: 'Proszę wprowadź nazwę rozmowy',
conversationNameCanNotEmpty: 'Nazwa rozmowy wymagana',
citation: {
title: 'Cytaty',
linkToDataset: 'Link do Wiedzy',
characters: 'Postacie:',
hitCount: 'Liczba trafień:',
vectorHash: 'Wektor hash:',
hitScore: 'Wynik trafień:',
},
inputPlaceholder: 'Porozmawiaj z {{botName}}',
thought: 'Myśl',
thinking: 'Myślenie...',
resend: 'Prześlij ponownie',
},
promptEditor: {
placeholder:
'Wpisz swoje słowo kluczowe tutaj, wprowadź \'{\' aby wstawić zmienną, wprowadź \'/\' aby wstawić blok treści słownika',
context: {
item: {
title: 'Kontekst',
desc: 'Wstaw szablon kontekstu',
},
modal: {
title: '{{num}} Wiedzy w Kontekście',
add: 'Dodaj Kontekst ',
footer: 'Możesz zarządzać kontekstami poniżej w sekcji Kontekstów.',
},
},
history: {
item: {
title: 'Historia rozmów',
desc: 'Wstaw szablon historycznej wiadomości',
},
modal: {
title: 'PRZYKŁAD',
user: 'Cześć',
assistant: 'Cześć! W czym mogę pomóc?',
edit: 'Edytuj nazwy ról rozmów',
},
},
variable: {
item: {
title: 'Zmienne i Narzędzia Zewnętrzne',
desc: 'Wstaw Zmienne i Narzędzia Zewnętrzne',
},
outputToolDisabledItem: {
title: 'Zmienne',
desc: 'Wstaw Zmienne',
},
modal: {
add: 'Nowa zmienna',
addTool: 'Nowe narzędzie',
},
},
query: {
item: {
title: 'Zapytanie',
desc: 'Wstaw szablon zapytania użytkownika',
},
},
existed: 'Już istnieje w poleceniu',
},
imageUploader: {
uploadFromComputer: 'Załaduj z komputera',
uploadFromComputerReadError: 'Błąd odczytu obrazu, spróbuj ponownie.',
uploadFromComputerUploadError:
'Błąd przesyłania obrazu, prześlij go ponownie.',
uploadFromComputerLimit:
'Obrazy do przesłania nie mogą przekroczyć {{size}} MB',
pasteImageLink: 'Wklej link do obrazu',
pasteImageLinkInputPlaceholder: 'Wklej tutaj link do obrazu',
pasteImageLinkInvalid: 'Nieprawidłowy link obrazu',
imageUpload: 'Przesyłanie obrazu',
},
tag: {
placeholder: 'Wszystkie tagi',
addNew: 'Dodaj nowy tag',
noTag: 'Brak tagów',
noTagYet: 'Brak tagów jeszcze',
addTag: 'Dodaj tagi',
editTag: 'Edytuj tagi',
manageTags: 'Zarządzaj Tagami',
selectorPlaceholder: 'Wpisz, aby wyszukać lub utworzyć',
create: 'Utwórz',
delete: 'Usuń tag',
deleteTip: 'Ten tag jest używany, czy chcesz go usunąć?',
created: 'Tag został pomyślnie utworzony',
failed: 'Nie udało się utworzyć tagu',
},
errorMsg: {
fieldRequired: '{{field}} jest wymagane',
urlError: 'Adres URL powinien zaczynać się od http:// lub https://',
},
fileUploader: {
pasteFileLinkInputPlaceholder: 'Wpisz adres URL...',
uploadFromComputerLimit: 'Prześlij plik nie może przekraczać {{size}}',
pasteFileLink: 'Wklej link do pliku',
uploadFromComputerUploadError: 'Przesyłanie pliku nie powiodło się, prześlij ponownie.',
pasteFileLinkInvalid: 'Nieprawidłowy link do pliku',
uploadFromComputerReadError: 'Odczyt pliku nie powiódł się, spróbuj ponownie.',
fileExtensionNotSupport: 'Rozszerzenie pliku nie jest obsługiwane',
uploadFromComputer: 'Przesyłanie lokalne',
fileExtensionBlocked: 'Ten typ pliku jest zablokowany ze względów bezpieczeństwa',
},
license: {
expiring_plural: 'Wygasa za {{count}} dni',
expiring: 'Wygasa w ciągu jednego dnia',
unlimited: 'Nieograniczony',
},
pagination: {
perPage: 'Ilość elementów na stronie',
},
theme: {
light: 'światło',
theme: 'Temat',
dark: 'ciemny',
auto: 'system',
},
compliance: {
soc2Type2: 'Raport SOC 2 Typ II',
sandboxUpgradeTooltip: 'Dostępne tylko w planie Professional lub Team.',
professionalUpgradeTooltip: 'Dostępne tylko w planie zespołowym lub wyższym.',
iso27001: 'Certyfikacja ISO 27001:2022',
soc2Type1: 'Raport SOC 2 Typ I',
gdpr: 'GDPR DPA',
},
imageInput: {
dropImageHere: 'Upuść swój obraz tutaj, lub',
browse: 'przeglądaj',
supportedFormats: 'Obsługuje PNG, JPG, JPEG, WEBP i GIF',
},
you: 'Ty',
avatar: {
deleteTitle: 'Usuń awatar',
deleteDescription: 'Czy na pewno chcesz usunąć swoje zdjęcie profilowe? Twoje konto będzie używać domyślnego, początkowego awatara.',
},
feedback: {
title: 'Przekaż opinie',
content: 'Treść opinii',
subtitle: 'Proszę powiedz nam, co poszło nie tak z tą odpowiedzią.',
placeholder: 'Proszę opisać, co poszło nie tak lub jak możemy poprawić...',
},
label: {
optional: '(Opcjonalnie)',
},
noData: 'Brak danych',
dynamicSelect: {
error: 'Nie udało się załadować opcji',
noData: 'Brak dostępnych opcji',
loading: 'Ładowanie opcji...',
selected: '{{count}} wybrano',
},
}
export default translation

View File

@@ -0,0 +1,33 @@
const translation = {
custom: 'Dostosowanie',
upgradeTip: {
prefix: 'Zaktualizuj swój plan, aby',
suffix: 'dostosować swoją markę.',
title: 'Zmień swój plan',
des: 'Zaktualizuj swój plan, aby dostosować swoją markę',
},
webapp: {
title: 'Dostosuj markę aplikacji internetowej',
removeBrand: 'Usuń zasilane przez Dify',
changeLogo: 'Zmień obraz marki zasilany przez Brand',
changeLogoTip: 'Format SVG lub PNG o minimalnym rozmiarze 40x40px',
},
app: {
title: 'Dostosuj markę nagłówka aplikacji',
changeLogoTip: 'Format SVG lub PNG o minimalnym rozmiarze 80x80px',
},
upload: 'Prześlij',
uploading: 'Przesyłanie',
uploadedFail:
'Wystąpił problem podczas przesyłania obrazu, proszę spróbować ponownie.',
change: 'Zmień',
apply: 'Zastosuj',
restore: 'Przywróć domyślne',
customize: {
contactUs: ' skontaktuj się z nami ',
prefix: 'Aby dostosować logo marki w aplikacji, proszę',
suffix: 'dla aktualizacji do wersji Enterprise.',
},
}
export default translation

View File

@@ -0,0 +1,233 @@
const translation = {
steps: {
header: {
fallbackRoute: 'Wiedza',
},
one: 'Wybierz źródło danych',
two: 'Przetwarzanie i Czyszczenie Tekstu',
three: 'Wykonaj i zakończ',
},
error: {
unavailable: 'Ta Wiedza nie jest dostępna',
},
stepOne: {
filePreview: 'Podgląd pliku',
pagePreview: 'Podgląd strony',
dataSourceType: {
file: 'Importuj z pliku tekstowego',
notion: 'Synchronizuj z Notion',
web: 'Synchronizuj z witryny',
},
uploader: {
title: 'Prześlij plik tekstowy',
button: 'Przeciągnij i upuść pliki lub foldery lub',
buttonSingleFile: 'Przeciągnij i upuść plik lub',
browse: 'Przeglądaj',
tip: 'Obsługuje {{supportTypes}}. Maksymalnie {{size}}MB każdy.',
validation: {
typeError: 'Nieobsługiwany typ pliku',
size: 'Plik jest za duży. Maksymalnie {{size}}MB',
count: 'Nieobsługiwane przesyłanie wielu plików',
filesNumber: 'Osiągnąłeś limit przesłania partii {{filesNumber}}.',
},
cancel: 'Anuluj',
change: 'Zmień',
failed: 'Przesyłanie nie powiodło się',
},
notionSyncTitle: 'Notion nie jest podłączony',
notionSyncTip:
'Aby synchronizować z Notion, najpierw trzeba ustanowić połączenie z Notion.',
connect: 'Przejdź do połączenia',
button: 'dalej',
emptyDatasetCreation: 'Chcę utworzyć pustą Wiedzę',
modal: {
title: 'Utwórz pustą Wiedzę',
tip: 'Pusta Wiedza nie będzie zawierała żadnych dokumentów, a można przesyłać dokumenty w dowolnym momencie.',
input: 'Nazwa Wiedzy',
placeholder: 'Proszę wpisz',
nameNotEmpty: 'Nazwa nie może być pusta',
nameLengthInvalid: 'Nazwa musi zawierać od 1 do 40 znaków',
cancelButton: 'Anuluj',
confirmButton: 'Utwórz',
failed: 'Utworzenie nie powiodło się',
},
website: {
limit: 'Ograniczać',
firecrawlDoc: 'Dokumentacja Firecrawl',
unknownError: 'Nieznany błąd',
fireCrawlNotConfiguredDescription: 'Skonfiguruj Firecrawl z kluczem API, aby z niego korzystać.',
run: 'Biegać',
configure: 'Konfigurować',
resetAll: 'Zresetuj wszystko',
preview: 'Prapremiera',
exceptionErrorTitle: 'Wystąpił wyjątek podczas uruchamiania zadania Firecrawl:',
maxDepth: 'Maksymalna głębokość',
crawlSubPage: 'Przeszukiwanie podstron',
options: 'Opcje',
scrapTimeInfo: 'Zeskrobano {{total}} stron w sumie w ciągu {{time}}s',
totalPageScraped: 'Łączna liczba zeskrobanych stron:',
extractOnlyMainContent: 'Wyodrębnij tylko główną zawartość (bez nagłówków, nawigacji, stopek itp.)',
excludePaths: 'Wykluczanie ścieżek',
includeOnlyPaths: 'Uwzględnij tylko ścieżki',
selectAll: 'Zaznacz wszystko',
firecrawlTitle: 'Wyodrębnij zawartość internetową za pomocą 🔥Firecrawl',
fireCrawlNotConfigured: 'Firecrawl nie jest skonfigurowany',
maxDepthTooltip: 'Maksymalna głębokość przeszukiwania względem wprowadzonego adresu URL. Głębokość 0 po prostu zeskrobuje stronę z wprowadzonego adresu URL, głębokość 1 zeskrobuje adres URL i wszystko po wprowadzeniuURL+ jeden / i tak dalej.',
useSitemap: 'Użyj mapy witryny',
useSitemapTooltip: 'Postępuj zgodnie z mapą witryny, aby zindeksować witrynę. Jeśli nie, Jina Reader będzie indeksować iteracyjnie w oparciu o trafność strony, dając mniej stron, ale o wyższej jakości.',
chooseProvider: 'Wybierz dostawcę',
jinaReaderDocLink: 'https://jina.ai/reader',
jinaReaderNotConfigured: 'Czytnik Jina nie jest skonfigurowany',
jinaReaderDoc: 'Dowiedz się więcej o Jina Reader',
jinaReaderTitle: 'Konwertowanie całej witryny na język Markdown',
jinaReaderNotConfiguredDescription: 'Skonfiguruj Jina Reader, wprowadzając bezpłatny klucz API, aby uzyskać dostęp.',
watercrawlTitle: 'Wyodrębnij treści z sieci za pomocą Watercrawl',
configureWatercrawl: 'Skonfiguruj Watercrawl',
configureJinaReader: 'Skonfiguruj Czytnik Jina',
configureFirecrawl: 'Skonfiguruj Firecrawl',
watercrawlDoc: 'Dokumentacja Watercrawl',
waterCrawlNotConfiguredDescription: 'Skonfiguruj Watercrawl z kluczem API, aby go używać.',
waterCrawlNotConfigured: 'Watercrawl nie jest skonfigurowany',
running: 'Bieganie',
},
cancel: 'Anuluj',
},
stepTwo: {
segmentation: 'Ustawienia bloków tekstu',
auto: 'Automatycznie',
autoDescription:
'Automatyczne ustawianie bloków i reguł preprocessingu. Nieużytkownicy są zaleceni do wyboru tej opcji.',
custom: 'Niestandardowo',
customDescription:
'Dostosuj reguły bloków, długość bloków i reguły preprocessingu itp.',
separator: 'Separator bloków',
separatorPlaceholder:
'Na przykład nowa linia (\\n) lub specjalny separator (np. "***")',
maxLength: 'Maksymalna długość bloku',
overlap: 'Nakładka bloków',
overlapTip:
'Ustawienie nakładki bloków pozwala zachować semantyczną zgodność między nimi, poprawiając efekt pobierania. Zaleca się ustawienie 10%-25% maksymalnej długości bloku.',
overlapCheck:
'nakładka bloków nie powinna być większa niż maksymalna długość bloku',
rules: 'Reguły preprocessingu tekstu',
removeExtraSpaces: 'Zastąp kolejne spacje, nowe linie i tabulatory',
removeUrlEmails: 'Usuń wszystkie adresy URL i e-maile',
removeStopwords: 'Usuń słowa powszechne takie jak "a", "an", "the"',
preview: 'Potwierdź i Podgląd',
reset: 'Reset',
indexMode: 'Tryb indeksowania',
qualified: 'Wysoka jakość',
recommend: 'Polecać',
qualifiedTip:
'Wywołaj domyślne interfejsy wbudowania systemu do przetwarzania, zapewniając wyższą dokładność podczas zapytań przez użytkowników.',
warning: 'Proszę najpierw skonfigurować klucz API dostawcy modelu.',
click: 'Przejdź do ustawień',
economical: 'Ekonomiczny',
economicalTip:
'Użyj offline\'owych silników wektorowych, indeksów słów kluczowych itp., aby zmniejszyć dokładność bez wydawania tokenów',
QATitle: 'Segmentacja w formacie pytania i odpowiedzi',
QATip: 'Włączenie tej opcji spowoduje zużycie większej liczby tokenów',
QALanguage: 'Segmentacja przy użyciu',
estimateCost: 'Oszacowanie',
estimateSegment: 'Oszacowane bloki',
segmentCount: 'bloki',
calculating: 'Obliczanie...',
fileSource: 'Przetwarzaj dokumenty',
notionSource: 'Przetwarzaj strony',
other: 'i inne ',
fileUnit: ' plików',
notionUnit: ' stron',
previousStep: 'Poprzedni krok',
nextStep: 'Zapisz & Przetwarzaj',
save: 'Zapisz & Przetwarzaj',
cancel: 'Anuluj',
sideTipTitle: 'Dlaczego blok i preprocess?',
sideTipP1:
'Podczas przetwarzania danych tekstowych, blok i czyszczenie są dwoma ważnymi krokami preprocessingu.',
sideTipP2:
'Segmentacja dzieli długi tekst na akapity, dzięki czemu modele są w stanie lepiej zrozumieć. Poprawia to jakość i trafność wyników modelu.',
sideTipP3:
'Czyszczenie usuwa zbędne znaki i formatowanie, sprawiając, że Wiedza jest czystsza i łatwiejsza do analizy.',
sideTipP4:
'Odpowiednie blok i czyszczenie poprawiają wydajność modelu, zapewniając bardziej dokładne i wartościowe wyniki.',
previewTitle: 'Podgląd',
previewTitleButton: 'Podgląd',
previewButton: 'Przełącz do formatu pytania i odpowiedzi',
previewSwitchTipStart:
'Aktulany podgląd bloku jest w formacie tekstu, przełączenie na podgląd w formacie pytania i odpowiedzi spowoduje',
previewSwitchTipEnd: ' dodatkowe zużycie tokenów',
characters: 'znaki',
indexSettingTip: 'Aby zmienić metodę indeksowania, przejdź do ',
retrievalSettingTip: 'Aby zmienić metodę indeksowania, przejdź do ',
datasetSettingLink: 'ustawień Wiedzy.',
webpageUnit: 'Stron',
websiteSource: 'Witryna internetowa przetwarzania wstępnego',
separatorTip: 'Ogranicznik to znak używany do oddzielania tekstu. \\n\\n i \\n są powszechnie używanymi ogranicznikami do oddzielania akapitów i wierszy. W połączeniu z przecinkami (\\n\\n,\\n), akapity będą segmentowane wierszami po przekroczeniu maksymalnej długości fragmentu. Możesz również skorzystać ze zdefiniowanych przez siebie specjalnych ograniczników (np. ***).',
maxLengthCheck: 'Maksymalna długość porcji powinna być mniejsza niż {{limit}}',
parentChunkForContext: 'Fragment nadrzędny dla kontekstu',
generalTip: 'Ogólny tryb fragmentowania tekstu, fragmenty pobierane i odwoływane są takie same.',
parentChildDelimiterTip: 'Ogranicznik to znak używany do oddzielania tekstu. \\n\\n jest zalecane do dzielenia oryginalnego dokumentu na duże fragmenty nadrzędne. Możesz również użyć specjalnych ograniczników zdefiniowanych przez siebie.',
switch: 'Przełącznik',
parentChildChunkDelimiterTip: 'Ogranicznik to znak używany do oddzielania tekstu. \\n jest zalecane do dzielenia fragmentów nadrzędnych na małe fragmenty podrzędne. Możesz również użyć specjalnych ograniczników zdefiniowanych przez siebie.',
paragraphTip: 'W tym trybie tekst jest dzielony na akapity na podstawie ograniczników i maksymalnej długości fragmentu, używając podzielonego tekstu jako fragmentu nadrzędnego do pobierania.',
general: 'Ogólne',
notAvailableForQA: 'Niedostępne dla indeksu pytań i odpowiedziNot available for Q&A Index',
childChunkForRetrieval: 'Fragment podrzędny do pobrania',
fullDoc: 'Pełna wersja dokumentu',
fullDocTip: 'Cały dokument jest używany jako fragment nadrzędny i pobierany bezpośrednio. Należy pamiętać, że ze względu na wydajność, tekst przekraczający 10000 tokenów zostanie automatycznie obcięty.',
previewChunkCount: '{{liczba}} Szacowane porcje',
paragraph: 'Akapit',
parentChild: 'Rodzic-dziecko',
previewChunk: 'Fragment podglądu',
notAvailableForParentChild: 'Niedostępne dla indeksu nadrzędny-podrzędny',
highQualityTip: 'Po zakończeniu osadzania w trybie wysokiej jakości powrót do trybu ekonomicznego nie jest dostępny.',
previewChunkTip: 'Kliknij przycisk "Podgląd fragmentu" po lewej stronie, aby załadować podgląd',
qaSwitchHighQualityTipContent: 'Obecnie tylko metoda indeksu wysokiej jakości obsługuje fragmentowanie formatu pytań i odpowiedzi. Czy chcesz przełączyć się w tryb wysokiej jakości?',
useQALanguage: 'Fragment przy użyciu formatu Q&A w',
parentChildTip: 'W przypadku korzystania z trybu nadrzędny-podrzędny fragment podrzędny jest używany do pobierania, a fragment nadrzędny jest używany do przywoływania jako kontekstu.',
qaSwitchHighQualityTipTitle: 'Format Q&A wymaga metody indeksowania wysokiej jakości',
qaTip: 'Korzystając z ustrukturyzowanych danych pytań i odpowiedzi, można tworzyć dokumenty, które łączą pytania z odpowiedziami. Dokumenty te są indeksowane na podstawie części pytań, dzięki czemu system może pobrać odpowiednie odpowiedzi na podstawie podobieństwa zapytania.',
},
stepThree: {
creationTitle: '🎉 Utworzono Wiedzę',
creationContent:
'Automatycznie nadaliśmy nazwę Wiedzy, możesz ją dowolnie zmienić w każdej chwili',
label: 'Nazwa Wiedzy',
additionTitle: '🎉 Przesłano dokument',
additionP1: 'Dokument został przesłany do Wiedzy',
additionP2: ', możesz go znaleźć na liście dokumentów Wiedzy.',
stop: 'Zatrzymaj przetwarzanie',
resume: 'Wznów przetwarzanie',
navTo: 'Przejdź do dokumentu',
sideTipTitle: 'Co dalej',
sideTipContent:
'Po zakończeniu indeksowania dokumentu, Wiedza może być zintegrowana z aplikacją jako kontekst, można znaleźć ustawienie kontekstu na stronie orkiestracji. Można również stworzyć ją jako niezależny plugin indeksowania ChatGPT do wydania.',
modelTitle: 'Czy na pewno chcesz zatrzymać embedded?',
modelContent:
'Jeśli będziesz potrzebować wznowić przetwarzanie później, będziesz kontynuować od miejsca, w którym przerwałeś.',
modelButtonConfirm: 'Potwierdź',
modelButtonCancel: 'Anuluj',
},
firecrawl: {
apiKeyPlaceholder: 'Klucz API od firecrawl.dev',
configFirecrawl: 'Konfiguracja 🔥Firecrawla',
getApiKeyLinkText: 'Pobierz klucz API z firecrawl.dev',
},
jinaReader: {
getApiKeyLinkText: 'Odbierz darmowy klucz API na jina.ai',
apiKeyPlaceholder: 'Klucz API od jina.ai',
configJinaReader: 'Konfiguracja czytnika Jina',
},
otherDataSource: {
learnMore: 'Dowiedz się więcej',
title: 'Połączyć się z innymi źródłami danych?',
description: 'Obecnie baza wiedzy Dify ma tylko ograniczone źródła danych. Dodanie źródła danych do bazy wiedzy Dify to fantastyczny sposób na zwiększenie elastyczności i możliwości platformy dla wszystkich użytkowników. Nasz przewodnik po wkładach ułatwia rozpoczęcie pracy. Kliknij poniższy link, aby dowiedzieć się więcej.',
},
watercrawl: {
apiKeyPlaceholder: 'Klucz API z watercrawl.dev',
configWatercrawl: 'Skonfiguruj Watercrawl',
getApiKeyLinkText: 'Uzyskaj swój klucz API z watercrawl.dev',
},
}
export default translation

View File

@@ -0,0 +1,408 @@
const translation = {
list: {
title: 'Dokumenty',
desc: 'Wszystkie pliki wiedzy są tutaj pokazane, a cała wiedza może być powiązana z odnośnikami Dify lub zindeksowana za pomocą wtyczki Chat.',
addFile: 'dodaj plik',
addPages: 'Dodaj strony',
table: {
header: {
fileName: 'NAZWA PLIKU',
words: 'SŁOWA',
hitCount: 'LICZBA ZNALEZIEŃ',
uploadTime: 'CZAS WGRANIA',
status: 'STATUS',
action: 'AKCJA',
chunkingMode: 'TRYB CHUNKINGU',
},
name: 'Nazwa',
rename: 'Przemianować',
},
action: {
uploadFile: 'Wgraj nowy plik',
settings: 'Ustawienia segmentacji',
addButton: 'Dodaj fragment',
add: 'Dodaj fragment',
batchAdd: 'Dodaj partię',
archive: 'Archiwum',
unarchive: 'Usuń z archiwum',
delete: 'Usuń',
enableWarning: 'Zarchiwizowany plik nie może zostać włączony',
sync: 'Synchronizuj',
resume: 'Wznów',
pause: 'Pauza',
},
index: {
enable: 'Włącz',
disable: 'Wyłącz',
all: 'Wszystkie',
enableTip: 'Plik może być zindeksowany',
disableTip: 'Plik nie może być zindeksowany',
},
status: {
queuing: 'Oczekiwanie',
indexing: 'Indeksowanie',
paused: 'Wstrzymane',
error: 'Błąd',
available: 'Dostępny',
enabled: 'Włączony',
disabled: 'Wyłączony',
archived: 'Zaarchiwizowany',
},
empty: {
title: 'Nie ma jeszcze dokumentacji',
upload: {
tip: 'Możesz wgrać pliki, synchronizować z witryny lub z aplikacji internetowych takich jak Notion, GitHub, itp.',
},
sync: {
tip: 'Dify regularnie pobiera pliki z Twojego Notion i dokonuje ich przetwarzania.',
},
},
delete: {
title: 'Czy na pewno chcesz usunąć?',
content:
'Jeśli będziesz musiał wznowić przetwarzanie później, będziesz kontynuować tam, gdzie przerwałeś',
},
batchModal: {
title: 'Dodaj partię fragmentów',
csvUploadTitle: 'Przeciągnij i upuść swój plik CSV tutaj, lub ',
browse: 'wybierz',
tip: 'Plik CSV musi być zgodny z następującą strukturą:',
question: 'pytanie',
answer: 'odpowiedź',
contentTitle: 'treść fragmentu',
content: 'treść',
template: 'Pobierz szablon tutaj',
cancel: 'Anuluj',
run: 'Uruchom partię',
runError: 'Błąd uruchomienia partii',
processing: 'Przetwarzanie partii',
completed: 'Import zakończony',
error: 'Błąd importu',
ok: 'OK',
},
addUrl: 'Dodaj adres URL',
learnMore: 'Dowiedz się więcej',
sort: {
uploadTime: 'Czas przesyłania',
hitCount: 'Liczba wyszukiwań',
},
},
metadata: {
title: 'Metadane',
desc: 'Etykietowanie metadanych dla dokumentów pozwala sztucznej inteligencji na dostęp do nich w odpowiednim czasie i ujawnia źródło odniesień dla użytkowników.',
dateTimeFormat: 'D MMMM YYYY, HH:mm',
docTypeSelectTitle: 'Wybierz rodzaj dokumentu',
docTypeChangeTitle: 'Zmień rodzaj dokumentu',
docTypeSelectWarning:
'Jeśli zmieniony zostanie rodzaj dokumentu, teraz wypełnione metadane nie zostaną zachowane',
firstMetaAction: 'Zacznijmy',
placeholder: {
add: 'Dodaj ',
select: 'Wybierz ',
},
source: {
upload_file: 'Wgraj plik',
notion: 'Synchronizuj z Notion',
github: 'Synchronizuj z Github',
online_document: 'Dokument online',
local_file: 'Plik lokalny',
website_crawl: 'Indeksowanie witryny',
},
type: {
book: 'Książka',
webPage: 'Strona internetowa',
paper: 'Artykuł',
socialMediaPost: 'Post w mediach społecznościowych',
personalDocument: 'Dokument osobisty',
businessDocument: 'Dokument biznesowy',
IMChat: 'Czat na komunikatorze',
wikipediaEntry: 'Artykuł w Wikipedii',
notion: 'Synchronizuj z Notion',
github: 'Synchronizuj z Github',
technicalParameters: 'Parametry techniczne',
},
field: {
processRule: {
processDoc: 'Przetwórz dokument',
segmentRule: 'Reguła fragmentacji',
segmentLength: 'Długość fragmentów',
processClean: 'Oczyszczanie tekstu',
},
book: {
title: 'Tytuł',
language: 'Język',
author: 'Autor',
publisher: 'Wydawca',
publicationDate: 'Data publikacji',
ISBN: 'ISBN',
category: 'Kategoria',
},
webPage: {
title: 'Tytuł',
url: 'URL',
language: 'Język',
authorPublisher: 'Autor/Wydawca',
publishDate: 'Data publikacji',
topicKeywords: 'Tematy/Słowa kluczowe',
description: 'Opis',
},
paper: {
title: 'Tytuł',
language: 'Język',
author: 'Autor',
publishDate: 'Data publikacji',
journalConferenceName: 'Nazwa czasopisma/konferencji',
volumeIssuePage: 'Tom/Wydanie/Strona',
DOI: 'DOI',
topicsKeywords: 'Tematy/Słowa kluczowe',
abstract: 'Abstrakt',
},
socialMediaPost: {
platform: 'Platforma',
authorUsername: 'Autor/Nazwa użytkownika',
publishDate: 'Data publikacji',
postURL: 'Adres URL posta',
topicsTags: 'Tematy/Tagi',
},
personalDocument: {
title: 'Tytuł',
author: 'Autor',
creationDate: 'Data utworzenia',
lastModifiedDate: 'Data ostatniej modyfikacji',
documentType: 'Typ dokumentu',
tagsCategory: 'Tagi/Kategoria',
},
businessDocument: {
title: 'Tytuł',
author: 'Autor',
creationDate: 'Data utworzenia',
lastModifiedDate: 'Data ostatniej modyfikacji',
documentType: 'Typ dokumentu',
departmentTeam: 'Dział/Zespół',
},
IMChat: {
chatPlatform: 'Platforma czatu',
chatPartiesGroupName: 'Podmioty czatu/Nazwa grupy',
participants: 'Uczestnicy',
startDate: 'Data rozpoczęcia',
endDate: 'Data zakończenia',
topicsKeywords: 'Tematy/Słowa kluczowe',
fileType: 'Typ pliku',
},
wikipediaEntry: {
title: 'Tytuł',
language: 'Język',
webpageURL: 'Adres URL strony internetowej',
editorContributor: 'Edytor/Współtwórca',
lastEditDate: 'Data ostatniej edycji',
summaryIntroduction: 'Podsumowanie/Wstęp',
},
notion: {
title: 'Tytuł',
language: 'Język',
author: 'Autor',
createdTime: 'Czas utworzenia',
lastModifiedTime: 'Czas ostatniej modyfikacji',
url: 'URL',
tag: 'Tag',
description: 'Opis',
},
github: {
repoName: 'Nazwa repozytorium',
repoDesc: 'Opis repozytorium',
repoOwner: 'Właściciel repozytorium',
fileName: 'Nazwa pliku',
filePath: 'Ścieżka pliku',
programmingLang: 'Język programowania',
url: 'URL',
license: 'Licencja',
lastCommitTime: 'Czas ostatniego zobowiązania',
lastCommitAuthor: 'Autor ostatniego zobowiązania',
},
originInfo: {
originalFilename: 'Oryginalna nazwa pliku',
originalFileSize: 'Oryginalny rozmiar pliku',
uploadDate: 'Data wgrywania',
lastUpdateDate: 'Data ostatniej aktualizacji',
source: 'Źródło',
},
technicalParameters: {
segmentSpecification: 'Specyfikacja fragmentów',
segmentLength: 'Długość fragmentów',
avgParagraphLength: 'Średnia długość akapitu',
paragraphs: 'Akapity',
hitCount: 'Liczba odwołań',
embeddingTime: 'Czas embedowania',
embeddedSpend: 'Wydatki związane z embedowaniem',
},
},
languageMap: {
zh: 'Chiński',
en: 'Angielski',
es: 'Hiszpański',
fr: 'Francuski',
de: 'Niemiecki',
ja: 'Japoński',
ko: 'Koreański',
ru: 'Rosyjski',
ar: 'Arabski',
pt: 'Portugalski',
it: 'Włoski',
nl: 'Holenderski',
pl: 'Polski',
sv: 'Szwedzki',
tr: 'Turecki',
he: 'Hebrajski',
hi: 'Hinduski',
da: 'Duński',
fi: 'Fiński',
no: 'Norweski',
hu: 'Węgierski',
el: 'Grecki',
cs: 'Czeski',
th: 'Tajski',
id: 'Indonezyjski',
},
categoryMap: {
book: {
fiction: 'Literatura piękna',
biography: 'Biografia',
history: 'Historia',
science: 'Nauka',
technology: 'Technologia',
education: 'Edukacja',
philosophy: 'Filozofia',
religion: 'Religia',
socialSciences: 'Nauki społeczne',
art: 'Sztuka',
travel: 'Podróże',
health: 'Zdrowie',
selfHelp: 'Samorozwój',
businessEconomics: 'Biznes/ekonomia',
cooking: 'Gotowanie',
childrenYoungAdults: 'Dzieci/Młodzież',
comicsGraphicNovels: 'Komiksy/Graphic Novels',
poetry: 'Poezja',
drama: 'Dramat',
other: 'Inne',
},
personalDoc: {
notes: 'Notatki',
blogDraft: 'Wersja robocza bloga',
diary: 'Dziennik',
researchReport: 'Raport badawczy',
bookExcerpt: 'Fragment książki',
schedule: 'Harmonogram',
list: 'Lista',
projectOverview: 'Przegląd projektu',
photoCollection: 'Kolekcja zdjęć',
creativeWriting: 'Twórcze pisanie',
codeSnippet: 'Fragment kodu',
designDraft: 'Projekt/wersja robocza',
personalResume: 'CV',
other: 'Inne',
},
businessDoc: {
meetingMinutes: 'Protokoły zebrań',
researchReport: 'Raport badawczy',
proposal: 'Propozycja',
employeeHandbook: 'Podręcznik pracownika',
trainingMaterials: 'Materiały szkoleniowe',
requirementsDocument: 'Dokument wymagań',
designDocument: 'Dokument projektowy',
productSpecification: 'Specyfikacja produktu',
financialReport: 'Raport finansowy',
marketAnalysis: 'Analiza rynku',
projectPlan: 'Plan projektu',
teamStructure: 'Struktura zespołu',
policiesProcedures: 'Zasady i procedury',
contractsAgreements: 'Umowy',
emailCorrespondence: 'Korespondencja e-mailowa',
other: 'Inne',
},
},
},
embedding: {
processing: 'Przetwarzanie osadzania...',
paused: 'Osadzanie wstrzymane',
completed: 'Osadzanie zakończone',
error: 'Błąd osadzania',
docName: 'Przetwarzanie wstępne dokumentu',
mode: 'Reguła segmentacji',
segmentLength: 'Długość fragmentów',
textCleaning: 'Predefinicja tekstu i czyszczenie',
segments: 'Akapity',
highQuality: 'Tryb wysokiej jakości',
economy: 'Tryb ekonomiczny',
estimate: 'Szacowany czas',
stop: 'Zatrzymaj przetwarzanie',
resume: 'Wznów przetwarzanie',
automatic: 'Automatyczny',
custom: 'Niestandardowy',
previewTip: 'Podgląd akapitu będzie dostępny po zakończeniu osadzania',
parentMaxTokens: 'Rodzic',
hierarchical: 'Rodzic-dziecko',
childMaxTokens: 'Dziecko',
pause: 'Pauza',
waiting: 'Oczekiwanie na osadzenie...',
},
segment: {
paragraphs: 'Akapity',
keywords: 'Słowa kluczowe',
addKeyWord: 'Dodaj słowo kluczowe',
keywordError: 'Maksymalna długość słowa kluczowego wynosi 20',
hitCount: 'Liczba odwołań',
vectorHash: 'Wektor hash: ',
questionPlaceholder: 'dodaj pytanie tutaj',
questionEmpty: 'Pytanie nie może być puste',
answerPlaceholder: 'dodaj odpowiedź tutaj',
answerEmpty: 'Odpowiedź nie może być pusta',
contentPlaceholder: 'dodaj treść tutaj',
contentEmpty: 'Treść nie może być pusta',
newTextSegment: 'Nowy segment tekstowy',
newQaSegment: 'Nowy segment Q&A',
delete: 'Usunąć ten fragment?',
parentChunks_one: 'FRAGMENT NADRZĘDNY',
parentChunks_other: 'FRAGMENTY NADRZĘDNE',
searchResults_one: 'WYNIK',
chunk: 'Kawał',
parentChunk: 'Fragment nadrzędny',
characters_other: 'Znaków',
addChunk: 'Dodaj kawałek',
addChildChunk: 'Dodaj fragment podrzędny',
addAnother: 'Dodaj kolejny',
childChunkAdded: 'Dodano 1 fragment podrzędny',
editChunk: 'Edytuj fragment',
regenerationSuccessTitle: 'Regeneracja zakończona',
edited: 'EDYTOWANE',
editedAt: 'Zredagowane w',
dateTimeFormat: 'MM/DD/YYYY h:mm',
collapseChunks: 'Zwijanie fragmentów',
empty: 'Nie znaleziono fragmentu',
newChunk: 'Nowy fragment',
regenerationConfirmTitle: 'Czy chcesz zregenerować fragmenty podrzędne?',
chunks_other: 'KAWAŁKI',
editChildChunk: 'Edytuj fragment podrzędny',
characters_one: 'znak',
regeneratingMessage: 'To może chwilę potrwać, proszę czekać...',
chunkDetail: 'Szczegóły kawałka',
chunkAdded: 'Dodano 1 kawałek',
regeneratingTitle: 'Regenerowanie fragmentów podrzędnych',
childChunks_other: 'FRAGMENTY POTOMNE',
expandChunks: 'Rozwijanie fragmentów',
childChunk: 'Fragment podrzędny',
regenerationConfirmMessage: 'Ponowne wygenerowanie fragmentów podrzędnych spowoduje zastąpienie bieżących fragmentów podrzędnych, w tym fragmentów edytowanych i nowo dodanych fragmentów. Regeneracji nie można cofnąć.',
regenerationSuccessMessage: 'Możesz zamknąć to okno.',
searchResults_other: 'WYNIKI',
searchResults_zero: 'WYNIK',
chunks_one: 'KAWAŁ',
editParentChunk: 'Edytuj fragment nadrzędny',
newChildChunk: 'Nowy fragment podrzędny',
clearFilter: 'Wyczyść filtr',
childChunks_one: 'FRAGMENT POTOMNY',
keywordDuplicate: 'Słowo kluczowe już istnieje',
keywordEmpty: 'Słowo kluczowe nie może być puste',
},
}
export default translation

View File

@@ -0,0 +1,34 @@
const translation = {
title: 'Testowanie odzyskiwania',
desc: 'Przetestuj efekt uderzenia wiedzy na podstawie podanego tekstu zapytania.',
dateTimeFormat: 'MM/DD/YYYY hh:mm A',
table: {
header: {
source: 'Źródło',
text: 'Tekst',
time: 'Czas',
},
},
input: {
title: 'Tekst źródłowy',
placeholder: 'Proszę wpisać tekst, zaleca się krótkie zdanie deklaratywne.',
countWarning: 'Do 200 znaków.',
indexWarning: 'Tylko wiedza wysokiej jakości.',
testing: 'Testowanie',
},
hit: {
title: 'AKAPITY ODZYSKIWANIA',
emptyTip: 'Wyniki testowania odzyskiwania będą tu pokazane',
},
noRecentTip: 'Brak ostatnich wyników zapytań tutaj',
viewChart: 'Zobacz WYKRES WEKTOROWY',
settingTitle: 'Ustawienie pobierania',
viewDetail: 'Pokaż szczegóły',
keyword: 'Słowa kluczowe',
hitChunks: 'Trafienie w {{num}} fragmentów podrzędnych',
open: 'Otwierać',
records: 'Rekordy',
chunkDetail: 'Szczegóły kawałka',
}
export default translation

View File

@@ -0,0 +1,166 @@
const translation = {
creation: {
createFromScratch: {
title: 'Pusty potok wiedzy',
description: 'Utwórz niestandardowy potok od podstaw z pełną kontrolą nad przetwarzaniem i strukturą danych.',
},
caution: 'Ostrożność',
backToKnowledge: 'Powrót do wiedzy',
importDSL: 'Importowanie z pliku DSL',
createKnowledge: 'Tworzenie wiedzy',
successTip: 'Pomyślnie utworzono bazę wiedzy',
errorTip: 'Nie można utworzyć bazy wiedzy',
},
templates: {
customized: 'Dostosowane',
},
operations: {
details: 'Szczegóły',
preview: 'Prapremiera',
convert: 'Nawrócić',
choose: 'Wybierać',
process: 'Proces',
dataSource: 'Źródło danych',
editInfo: 'Edytowanie informacji',
useTemplate: 'Korzystanie z tego potoku wiedzy',
exportPipeline: 'Potok eksportu',
backToDataSource: 'Powrót do źródła danych',
saveAndProcess: 'Zapisywanie i przetwarzanie',
},
deletePipeline: {
title: 'Czy na pewno chcesz usunąć ten szablon potoku?',
content: 'Usunięcie szablonu potoku jest nieodwracalne.',
},
publishPipeline: {
success: {
message: 'Opublikowano potok wiedzy',
tip: 'Przejdź do Dokumenty, aby dodać lub zarządzać dokumentami.',
},
error: {
message: 'Nie można opublikować potoku wiedzy',
},
},
publishTemplate: {
success: {
learnMore: 'Dowiedz się więcej',
tip: 'Możesz użyć tego szablonu na stronie tworzenia.',
message: 'Opublikowano szablon potoku',
},
error: {
message: 'Nie można opublikować szablonu potoku',
},
},
exportDSL: {
errorTip: 'Nie można wyeksportować DSL potoku',
successTip: 'Pomyślnie wyeksportowano potok DSL',
},
details: {
structure: 'Struktura',
structureTooltip: 'Struktura fragmentów określa sposób dzielenia i indeksowania dokumentów — oferując tryby Ogólne, Nadrzędny-Podrzędny oraz Q&A — i jest unikatowa dla każdej bazy wiedzy.',
createdBy: 'Przez {{author}}',
},
testRun: {
steps: {
documentProcessing: 'Przetwarzanie dokumentów',
dataSource: 'Źródło danych',
},
dataSource: {
localFiles: 'Pliki lokalne',
},
notion: {
title: 'Wybierz strony Notion',
docTitle: 'Dokumenty Notion',
},
title: 'Uruchomienie testowe',
tooltip: 'W trybie uruchamiania testowego można importować tylko jeden dokument naraz w celu łatwiejszego debugowania i obserwacji.',
},
inputFieldPanel: {
uniqueInputs: {
title: 'Unikalne wejścia dla każdego wejścia',
tooltip: 'Unikatowe dane wejściowe są dostępne tylko dla wybranego źródła danych i jego węzłów podrzędnych. Użytkownicy nie będą musieli go wypełniać podczas wybierania innych źródeł danych. W pierwszym kroku (Źródło danych) pojawią się tylko pola wejściowe, do których odwołują się zmienne źródła danych. Wszystkie inne pola zostaną wyświetlone w drugim kroku (Dokumenty procesowe).',
},
globalInputs: {
title: 'Globalne dane wejściowe dla wszystkich wejść',
tooltip: 'Globalne dane wejściowe są współdzielone we wszystkich węzłach. Użytkownicy będą musieli je wypełnić podczas wybierania dowolnego źródła danych. Na przykład pola, takie jak ogranicznik i maksymalna długość fragmentu, mogą być jednolicie stosowane w wielu źródłach danych. W pierwszym kroku (Źródło danych) pojawiają się tylko pola wejściowe, do których odwołują się zmienne źródła danych. Wszystkie inne pola pojawiają się w drugim kroku (Dokumenty procesowe).',
},
preview: {
stepOneTitle: 'Źródło danych',
stepTwoTitle: 'Dokumenty procesowe',
},
error: {
variableDuplicate: 'Nazwa zmiennej już istnieje. Wybierz inną nazwę.',
},
editInputField: 'Edytuj pole wejściowe',
addInputField: 'Dodaj pole wejściowe',
title: 'Pola wprowadzania danych przez użytkownika',
description: 'Pola wejściowe użytkownika służą do definiowania i zbierania zmiennych wymaganych podczas procesu wykonywania potoku. Użytkownicy mogą dostosować typ pola i elastycznie konfigurować wartość wejściową, aby spełnić potrzeby różnych źródeł danych lub etapów przetwarzania dokumentów.',
},
addDocuments: {
steps: {
processDocuments: 'Dokumenty procesowe',
chooseDatasource: 'Wybieranie źródła danych',
processingDocuments: 'Przetwarzanie dokumentów',
},
stepOne: {
preview: 'Prapremiera',
},
stepTwo: {
chunkSettings: 'Ustawienia porcji',
previewChunks: 'Podgląd fragmentów',
},
stepThree: {
learnMore: 'Dowiedz się więcej',
},
backToDataSource: 'Źródło danych',
characters: 'Znaków',
title: 'Dodawanie dokumentów',
selectOnlineDocumentTip: 'Przetwórz do {{count}} stron',
selectOnlineDriveTip: 'Przetwórz do {{count}} plików, maksymalnie {{fileSize}} MB każdy',
},
documentSettings: {
title: 'Ustawienia dokumentu',
},
onlineDocument: {
pageSelectorTitle: '{{name}} strony',
},
onlineDrive: {
breadcrumbs: {
searchPlaceholder: 'Szukaj w plikach...',
allFiles: 'Wszystkie pliki',
allBuckets: 'Wszystkie zasobniki pamięci masowej w chmurze',
searchResult: 'Znajdź {{searchResultsLength}} elementów w folderze "{{folderName}}"',
},
resetKeywords: 'Resetowanie słów kluczowych',
emptySearchResult: 'Nie znaleziono żadnych przedmiotów',
notSupportedFileType: 'Ten typ pliku nie jest obsługiwany',
emptyFolder: 'Ten folder jest pusty',
notConnected: '{{name}} nie jest połączony',
notConnectedTip: 'Aby zsynchronizować się z {{name}}, najpierw należy nawiązać połączenie z {{name}}.',
},
credentialSelector: {
name: '{{credentialName}}\'s {{pluginName}}',
},
conversion: {
confirm: {
title: 'Potwierdzenie',
content: 'To działanie jest trwałe. Nie będzie można powrócić do poprzedniej metody. Potwierdź, aby przekonwertować.',
},
warning: 'Tej czynności nie można cofnąć.',
errorMessage: 'Nie można przekonwertować zestawu danych na potok',
descriptionChunk1: 'Teraz możesz przekonwertować istniejącą bazę wiedzy tak, aby używała potoku wiedzy do przetwarzania dokumentów',
successMessage: 'Pomyślnie przekonwertowano zestaw danych na potok',
title: 'Konwertuj na potok wiedzy',
descriptionChunk2: '— bardziej otwarte i elastyczne podejście z dostępem do wtyczek z naszego rynku. Spowoduje to zastosowanie nowej metody przetwarzania do wszystkich przyszłych dokumentów.',
},
knowledgePermissions: 'Uprawnienia',
knowledgeNameAndIcon: 'Nazwa i ikona wiedzy',
inputField: 'Pole wejściowe',
knowledgeDescription: 'Opis wiedzy',
pipelineNameAndIcon: 'Nazwa i ikona potoku',
knowledgeNameAndIconPlaceholder: 'Podaj nazwę Bazy Wiedzy',
editPipelineInfo: 'Edytowanie informacji o potoku',
knowledgeDescriptionPlaceholder: 'Opisz, co znajduje się w tej Bazie wiedzy. Szczegółowy opis umożliwia sztucznej inteligencji dokładniejszy dostęp do zawartości zestawu danych. Jeśli pole jest puste, Dify użyje domyślnej strategii trafień. (Opcjonalnie)',
configurationTip: 'Skonfiguruj {{pluginName}}',
}
export default translation

View File

@@ -0,0 +1,56 @@
const translation = {
title: 'Ustawienia wiedzy',
desc: 'Tutaj możesz modyfikować właściwości i metody działania Wiedzy.',
form: {
name: 'Nazwa wiedzy',
namePlaceholder: 'Proszę wprowadzić nazwę wiedzy',
nameError: 'Nazwa nie może być pusta',
desc: 'Opis wiedzy',
descInfo:
'Proszę napisać klarowny opis tekstowy, aby zarysować zawartość Wiedzy. Ten opis będzie wykorzystywany jako podstawa do dopasowywania podczas wyboru z wielu wiedz dla wnioskowania.',
descPlaceholder:
'Opisz, co znajduje się w tej Wiedzy. Szczegółowy opis pozwala sztucznej inteligencji na dostęp do treści Wiedzy w odpowiednim czasie. Jeśli jest pusty, Dify użyje domyślnej strategii trafień.',
descWrite: 'Dowiedz się, jak napisać dobry opis Wiedzy.',
permissions: 'Uprawnienia',
permissionsOnlyMe: 'Tylko ja',
permissionsAllMember: 'Wszyscy członkowie zespołu',
indexMethod: 'Metoda indeksowania',
indexMethodHighQuality: 'Wysoka jakość',
indexMethodHighQualityTip:
'Wywołaj model Embedding do przetwarzania, aby zapewnić większą dokładność przy zapytaniach użytkowników.',
indexMethodEconomy: 'Ekonomiczna',
indexMethodEconomyTip:
'Użyj silników wektorów offline, indeksów słów kluczowych itp., aby zmniejszyć dokładność bez wydawania tokenów',
embeddingModel: 'Model wbudowywania',
embeddingModelTip: 'Aby zmienić model wbudowywania, przejdź do ',
embeddingModelTipLink: 'Ustawienia',
retrievalSetting: {
title: 'Ustawienia doboru',
learnMore: 'Dowiedz się więcej',
description: ' dotyczące metody doboru.',
longDescription:
' dotyczące metody doboru, możesz to zmienić w dowolnym momencie w ustawieniach wiedzy.',
method: 'Metoda pozyskiwania',
},
save: 'Zapisz',
permissionsInvitedMembers: 'Częściowi członkowie zespołu',
me: '(Ty)',
externalKnowledgeAPI: 'Interfejs API wiedzy zewnętrznej',
retrievalSettings: 'Ustawienia pobierania',
externalKnowledgeID: 'Zewnętrzny identyfikator wiedzy',
helpText: 'Dowiedz się, jak napisać dobry opis zestawu danych.',
upgradeHighQualityTip: 'Po uaktualnieniu do trybu wysokiej jakości powrót do trybu ekonomicznego nie jest dostępny',
indexMethodChangeToEconomyDisabledTip: 'Niedostępne w przypadku zmiany z HQ na ECO',
searchModel: 'Szukaj modelu',
chunkStructure: {
learnMore: 'Dowiedz się więcej',
description: 'o strukturze porcji.',
title: 'Struktura porcji',
},
numberOfKeywords: 'Liczba słów kluczowych',
onSearchResults: 'Żaden członek nie pasuje do Twojego zapytania.\nSpróbuj ponownie wyszukać.',
nameAndIcon: 'Nazwa i ikona',
},
}
export default translation

View File

@@ -0,0 +1,247 @@
const translation = {
knowledge: 'Wiedza',
documentCount: ' dokumenty',
wordCount: ' k słów',
appCount: ' powiązane aplikacje',
createDataset: 'Utwórz Wiedzę',
createDatasetIntro:
'Zaimportuj własne dane tekstowe lub zapisuj dane w czasie rzeczywistym za pomocą Webhooka w celu wzmocnienia kontekstu LLM.',
deleteDatasetConfirmTitle: 'Czy na pewno usunąć tę Wiedzę?',
deleteDatasetConfirmContent:
'Usunięcie Wiedzy jest nieodwracalne. Użytkownicy nie będą już mieli dostępu do Twojej Wiedzy, a wszystkie konfiguracje i logi zostaną trwale usunięte.',
datasetUsedByApp: 'Ta wiedza jest wykorzystywana przez niektóre aplikacje. Aplikacje nie będą już mogły korzystać z tej Wiedzy, a wszystkie konfiguracje podpowiedzi i logi zostaną trwale usunięte.',
datasetDeleted: 'Wiedza usunięta',
datasetDeleteFailed: 'Nie udało się usunąć Wiedzy',
didYouKnow: 'Czy wiedziałeś?',
intro1: 'Wiedzę można zintegrować z aplikacją Dify ',
intro2: 'jako kontekst',
intro3: ',',
intro4: 'lub ',
intro5: 'może być utworzona',
intro6: ' jako samodzielny wtyczka indeksująca ChatGPT do publikacji',
unavailable: 'Niedostępny',
datasets: 'WIEDZA',
datasetsApi: 'DOSTĘP DO API',
retrieval: {
semantic_search: {
title: 'Wyszukiwanie wektorowe',
description:
'Generowanie osadzeń zapytań i wyszukiwanie fragmentów tekstu najbardziej podobnych do ich wektorowej reprezentacji.',
},
full_text_search: {
title: 'Wyszukiwanie pełnotekstowe',
description:
'Indeksowanie wszystkich terminów w dokumencie, umożliwiając użytkownikom wyszukiwanie dowolnego terminu i odzyskiwanie odpowiedniego fragmentu tekstu zawierającego te terminy.',
},
hybrid_search: {
title: 'Wyszukiwanie hybrydowe',
description:
'Wykonaj jednocześnie pełnotekstowe wyszukiwanie i wyszukiwanie wektorowe, ponownie porządkuj, aby wybrać najlepsze dopasowanie dla zapytania użytkownika. Konieczna jest konfiguracja API Rerank model.',
recommend: 'Polecany',
},
invertedIndex: {
},
change: 'Zmień',
changeRetrievalMethod: 'Zmień metodę odzyskiwania',
keyword_search: {
title: 'Odwrócony indeks',
description: 'Inverted Index to struktura używana do efektywnego wyszukiwania. Uporządkowany według terminów, każdy termin wskazuje dokumenty lub strony internetowe, które go zawierają.',
},
},
docsFailedNotice: 'nie udało się zindeksować dokumentów',
retry: 'Ponów',
indexingTechnique: {
high_quality: 'WJ',
economy: 'EKO',
},
indexingMethod: {
semantic_search: 'WEKTOR',
full_text_search: 'PEŁNY TEKST',
hybrid_search: 'HYBRYDOWY',
invertedIndex: 'ODWRÓCONY',
},
mixtureHighQualityAndEconomicTip: 'Model ponownego rankingu jest wymagany dla mieszanki wysokiej jakości i ekonomicznych baz wiedzy.',
inconsistentEmbeddingModelTip: 'Model ponownego rankingu jest wymagany, jeśli modele osadzania wybranych baz wiedzy są niespójne.',
retrievalSettings: 'Ustawienia wyszukiwania',
rerankSettings: 'Ustawienia ponownego rankingu',
weightedScore: {
title: 'Ważona ocena',
description: 'Poprzez dostosowanie przypisanych wag, ta strategia ponownego rankingu określa, czy priorytetowo traktować dopasowanie semantyczne czy słów kluczowych.',
semanticFirst: 'Najpierw semantyczne',
keywordFirst: 'Najpierw słowa kluczowe',
customized: 'Dostosowane',
semantic: 'Semantyczne',
keyword: 'Słowo kluczowe',
},
nTo1RetrievalLegacy: 'Wyszukiwanie N-do-1 zostanie oficjalnie wycofane od września. Zaleca się korzystanie z najnowszego wyszukiwania wielościeżkowego, aby uzyskać lepsze wyniki.',
nTo1RetrievalLegacyLink: 'Dowiedz się więcej',
nTo1RetrievalLegacyLinkText: 'Wyszukiwanie N-do-1 zostanie oficjalnie wycofane we wrześniu.',
defaultRetrievalTip: 'Pobieranie wielu ścieżek jest używane domyślnie. Wiedza jest pobierana z wielu baz wiedzy, a następnie ponownie klasyfikowana.',
editExternalAPIConfirmWarningContent: {
end: 'wiedzy zewnętrznej, a ta modyfikacja zostanie zastosowana do nich wszystkich. Czy na pewno chcesz zapisać tę zmianę?',
front: 'Ten interfejs API wiedzy zewnętrznej jest połączony z',
},
editExternalAPIFormWarning: {
front: 'Ten zewnętrzny interfejs API jest powiązany z',
end: 'Wiedza zewnętrzna',
},
deleteExternalAPIConfirmWarningContent: {
title: {
end: '?',
front: 'Usunąć',
},
content: {
front: 'Ten interfejs API wiedzy zewnętrznej jest połączony z',
end: 'wiedza zewnętrzna. Usunięcie tego interfejsu API spowoduje unieważnienie ich wszystkich. Czy na pewno chcesz usunąć ten interfejs API?',
},
noConnectionContent: 'Czy na pewno chcesz usunąć ten interfejs API?',
},
selectExternalKnowledgeAPI: {
placeholder: 'Wybieranie interfejsu API wiedzy zewnętrznej',
},
connectDatasetIntro: {
content: {
front: 'Aby nawiązać połączenie z zewnętrzną bazą wiedzy, należy najpierw utworzyć zewnętrzny interfejs API. Przeczytaj uważnie i zapoznaj się z',
link: 'Dowiedz się, jak utworzyć zewnętrzny interfejs API',
end: '. Następnie znajdź odpowiedni identyfikator wiedzy i wypełnij go w formularzu po lewej stronie. Jeśli wszystkie informacje są poprawne, po kliknięciu przycisku połączenia automatycznie przejdzie do testu wyszukiwania w bazie wiedzy.',
},
learnMore: 'Dowiedz się więcej',
title: 'Jak połączyć się z zewnętrzną bazą wiedzy',
},
connectHelper: {
helper1: 'Połącz się z zewnętrznymi bazami wiedzy za pośrednictwem interfejsu API i identyfikatora bazy wiedzy. Obecnie',
helper3: '. Zdecydowanie zalecamy, aby',
helper5: 'ostrożnie przed użyciem tej funkcji.',
helper4: 'Zapoznaj się z dokumentacją pomocy',
helper2: 'Obsługiwana jest tylko funkcja pobierania',
},
externalKnowledgeForm: {
connect: 'Połączyć',
cancel: 'Anuluj',
},
externalAPIForm: {
encrypted: {
end: 'Technologia.',
front: 'Twój token API zostanie zaszyfrowany i będzie przechowywany za pomocą',
},
edit: 'Redagować',
save: 'Zapisać',
name: 'Nazwa',
apiKey: 'Klucz API',
cancel: 'Anuluj',
endpoint: 'Punkt końcowy interfejsu API',
},
externalAPIPanelDocumentation: 'Dowiedz się, jak utworzyć interfejs API wiedzy zewnętrznej',
noExternalKnowledge: 'Nie ma jeszcze interfejsu API wiedzy zewnętrznej, kliknij tutaj, aby utworzyć',
createExternalAPI: 'Dodawanie interfejsu API wiedzy zewnętrznej',
connectDataset: 'Nawiązywanie połączenia z zewnętrzną bazą wiedzy',
editExternalAPITooltipTitle: 'POWIĄZANA WIEDZA',
externalKnowledgeId: 'Zewnętrzny identyfikator wiedzy',
externalAPIPanelTitle: 'Interfejs API wiedzy zewnętrznej',
externalKnowledgeName: 'Nazwa wiedzy zewnętrznej',
externalKnowledgeIdPlaceholder: 'Podaj identyfikator wiedzy',
createNewExternalAPI: 'Tworzenie nowego interfejsu API wiedzy zewnętrznej',
externalKnowledgeDescription: 'Opis wiedzy',
externalKnowledgeDescriptionPlaceholder: 'Opisz, co znajduje się w tej bazie wiedzy (opcjonalnie)',
allExternalTip: 'W przypadku korzystania tylko z wiedzy zewnętrznej użytkownik może zdecydować, czy chce włączyć model Rerank. Jeśli ta opcja nie jest włączona, pobrane fragmenty będą sortowane na podstawie wyników. Gdy strategie wyszukiwania z różnych baz wiedzy są niespójne, będzie to niedokładne.',
editExternalAPIFormTitle: 'Edytowanie interfejsu API wiedzy zewnętrznej',
mixtureInternalAndExternalTip: 'Model Rerank jest wymagany do połączenia wiedzy wewnętrznej i zewnętrznej.',
externalAPI: 'Zewnętrzny interfejs API',
externalTag: 'Zewnętrzny',
learnHowToWriteGoodKnowledgeDescription: 'Dowiedz się, jak napisać dobry opis wiedzy',
externalKnowledgeNamePlaceholder: 'Podaj nazwę bazy wiedzy',
externalAPIPanelDescription: 'Interfejs API wiedzy zewnętrznej służy do łączenia się z bazą wiedzy poza Dify i pobierania wiedzy z tej bazy wiedzy.',
chunkingMode: {
parentChild: 'Rodzic-dziecko',
general: 'Ogólne',
graph: 'Wykres',
qa: 'Pytania i odpowiedziQ&A',
},
parentMode: {
fullDoc: 'Pełna wersja dokumentu',
paragraph: 'Akapit',
},
batchAction: {
selected: 'Wybrany',
archive: 'Archiwum',
enable: 'Umożliwiać',
disable: 'Wyłączać',
delete: 'Usunąć',
cancel: 'Anuluj',
},
preprocessDocument: '{{liczba}} Przetwarzanie wstępne dokumentów',
localDocs: 'Lokalne dokumenty',
documentsDisabled: '{{num}} dokumenty wyłączone - nieaktywne przez ponad 30 dni',
enable: 'Umożliwiać',
allKnowledge: 'Cała wiedza',
allKnowledgeDescription: 'Wybierz tę opcję, aby wyświetlić całą wiedzę w tym obszarze roboczym. Tylko właściciel obszaru roboczego może zarządzać całą wiedzą.',
metadata: {
createMetadata: {
back: 'Tył',
namePlaceholder: 'Dodaj nazwę metadanych',
name: 'Imię',
title: 'Nowe metadane',
type: 'Typ',
},
checkName: {
empty: 'Nazwa metadanych nie może być pusta',
invalid: 'Nazwa metadanych może zawierać tylko małe litery, cyfry i podkreślenia oraz musi zaczynać się od małej litery',
tooLong: 'Nazwa metadanych nie może przekraczać {{max}} znaków',
},
batchEditMetadata: {
multipleValue: 'Wielokrotna wartość',
editMetadata: 'Edytuj metadane',
editDocumentsNum: 'Edycja {{num}} dokumentów',
applyToAllSelectDocument: 'Zastosuj do wszystkich wybranych dokumentów',
applyToAllSelectDocumentTip: 'Automatycznie utwórz wszystkie powyżej wymienione edytowane i nowe metadane dla wszystkich wybranych dokumentów, w przeciwnym razie edytowanie metadanych będzie dotyczyć tylko dokumentów, które je posiadają.',
},
selectMetadata: {
manageAction: 'Zarządzaj',
newAction: 'Nowe metadane',
search: 'Szukaj metadanych',
},
datasetMetadata: {
values: '{{num}} Wartości',
rename: 'Zmień nazwę',
namePlaceholder: 'Nazwa metadanych',
addMetaData: 'Dodaj metadane',
deleteContent: 'Czy na pewno chcesz usunąć metadane "{{name}}"?',
builtIn: 'Wbudowany',
deleteTitle: 'Potwierdź usunięcie',
description: 'Możesz zarządzać wszystkimi metadanymi w tej wiedzy tutaj. Modyfikacje będą synchronizowane z każdym dokumentem.',
name: 'Imię',
disabled: 'Wyłączone',
builtInDescription: 'Wbudowane metadane są automatycznie ekstraktowane i generowane. Muszą być włączone przed użyciem i nie można ich edytować.',
},
documentMetadata: {
technicalParameters: 'Parametry techniczne',
startLabeling: 'Rozpocznij etykietowanie',
documentInformation: 'Informacje o dokumencie',
metadataToolTip: 'Metadane służą jako istotny filtr, który zwiększa dokładność i trafność wyszukiwania informacji. Możesz modyfikować i dodawać metadane do tego dokumentu tutaj.',
},
metadata: 'Metadane',
addMetadata: 'Dodaj metadane',
chooseTime: 'Wybierz czas...',
},
embeddingModelNotAvailable: 'Model osadzający jest niedostępny.',
updated: 'Aktualizowano',
createFromPipeline: 'Tworzenie na podstawie potoku wiedzy',
externalKnowledgeBase: 'Zewnętrzna baza wiedzy',
serviceApi: {
card: {
apiKey: 'Klucz API',
title: 'Usługa backendowa API',
apiReference: 'Dokumentacja API',
endpoint: 'Punkt końcowy API usługi',
},
title: 'Interfejs API usługi',
disabled: 'Niepełnosprawny',
enabled: 'W serwisie',
},
docAllEnabled_one: 'Dokument {{count}} włączony',
docAllEnabled_other: 'Wszystkie dokumenty {{count}} włączone',
partialEnabled_one: 'Łącznie {{count}} dokumentów, {{num}} dostępnych',
partialEnabled_other: 'Łącznie {{count}} dokumentów, {{num}} dostępnych',
}
export default translation

View File

@@ -0,0 +1,76 @@
const translation = {
toVerifiedTip: {
coupon: 'ekskluzywny kupon 100%',
front: 'Teraz jesteś uprawniony do statusu zweryfikowanej edukacji. Proszę wprowadzić swoje informacje edukacyjne poniżej, aby zakończyć proces i otrzymać',
end: 'dla Profesjonalnego Planu Dify.',
},
form: {
schoolName: {
title: 'Nazwa Twojej Szkoły',
placeholder: 'Wpisz oficjalną, pełną nazwę swojej szkoły',
},
schoolRole: {
option: {
student: 'Uczniowie',
teacher: 'Nauczyciel',
administrator: 'Administrator szkoły',
},
title: 'Twoja rola w szkole',
},
terms: {
desc: {
termsOfService: 'Warunki świadczenia usług',
privacyPolicy: 'Polityka prywatności',
and: 'i',
front: 'Twoje informacje i użycie statusu Weryfikowanej Edukacji podlegają naszym',
end: 'Przez przesłanie:',
},
option: {
age: 'Potwierdzam, że mam co najmniej 18 lat',
inSchool: 'Potwierdzam, że jestem zapisany lub zatrudniony w podanej instytucji. Dify może wymagać dowodu zapisania/zatrudnienia. Jeśli wprowadzę w błąd dotyczący mojej zdolności do uczestnictwa, zgadzam się zapłacić wszelkie opłaty, które zostały początkowo zaniechane w oparciu o mój status edukacyjny.',
},
title: 'Warunki i umowy',
},
},
toVerified: 'Uzyskaj potwierdzenie edukacji',
submit: 'Zatwierdź',
rejectContent: 'Niestety, nie kwalifikujesz się do statusu Zweryfikowanej Edukacji i w związku z tym nie możesz otrzymać ekskluzywnego kuponu 100% na plan Dify Professional, jeśli korzystasz z tego adresu e-mail.',
successContent: 'Wydaliśmy kupon rabatowy na 100% dla planu Dify Professional na Twoje konto. Kupon jest ważny przez jeden rok, prosimy o jego użycie w okresie ważności.',
currentSigned: 'AKTUALNIE ZALOGOWANY JAKO',
successTitle: 'Masz zweryfikowane wykształcenie Dify',
rejectTitle: 'Twoja weryfikacja edukacyjna Dify została odrzucona',
learn: 'Dowiedz się, jak uzyskać potwierdzenie wykształcenia',
emailLabel: 'Twój aktualny email',
submitError: 'Przesłanie formularza nie powiodło się. Proszę spróbować ponownie później.',
notice: {
expired: {
summary: {
line1: 'Możesz nadal uzyskać dostęp i korzystać z Dify.',
line2: 'Jednakże, nie kwalifikujesz się już do nowych kuponów zniżkowych na edukację.',
},
title: 'Twój status edukacji wygasł.',
},
isAboutToExpire: {
summary: 'Nie martw się — to nie wpłynie na twoją obecną subskrypcję, ale nie otrzymasz zniżki edukacyjnej przy jej odnawianiu, chyba że ponownie zweryfikujesz swój status.',
title: 'Twój status edukacyjny wygaśnie {{date}}',
},
stillInEducation: {
title: 'Wciąż w edukacji?',
isAboutToExpire: 'Zweryfikuj ponownie teraz, aby otrzymać nowy kupon na nadchodzący rok akademicki. Zostanie zapisany na Twoim koncie i gotowy do użycia przy następnej odnowie.',
expired: 'Sprawdź ponownie teraz, aby otrzymać nowy kupon na nadchodzący rok akademicki. Dodamy go do twojego konta i będziesz mógł go użyć przy następnej aktualizacji.',
},
alreadyGraduated: {
title: 'Już ukończone studia?',
isAboutToExpire: 'Twoja obecna subskrypcja pozostanie aktywna. Gdy się zakończy, przejdziesz na plan Sandbox, lub możesz w każdej chwili zaktualizować, aby przywrócić pełny dostęp do płatnych funkcji.',
expired: 'Nie wahaj się zaktualizować w dowolnym momencie, aby uzyskać pełny dostęp do płatnych funkcji.',
},
action: {
upgrade: 'Ulepsz',
dismiss: 'Odrzuć',
reVerify: 'Ponownie zweryfikuj',
},
dateFormat: 'DD/MM/RRRR',
},
}
export default translation

View File

@@ -0,0 +1,45 @@
const translation = {
title: 'Odkryj',
sidebar: {
discovery: 'Odkrywanie',
chat: 'Czat',
workspace: 'Przestrzeń robocza',
action: {
pin: 'Przypnij',
unpin: 'Odepnij',
rename: 'Zmień nazwę',
delete: 'Usuń',
},
delete: {
title: 'Usuń aplikację',
content: 'Czy na pewno chcesz usunąć tę aplikację?',
},
},
apps: {
title: 'Odkrywaj aplikacje stworzone przez Dify',
description:
'Wykorzystaj te aplikacje szablonowe natychmiast lub dostosuj własne aplikacje na podstawie szablonów.',
allCategories: 'Polecane',
},
appCard: {
addToWorkspace: 'Dodaj do przestrzeni roboczej',
customize: 'Dostosuj',
},
appCustomize: {
title: 'Utwórz aplikację z {{name}}',
subTitle: 'Ikona i nazwa aplikacji',
nameRequired: 'Nazwa aplikacji jest wymagana',
},
category: {
Assistant: 'Asystent',
Writing: 'Pisanie',
Translate: 'Tłumaczenie',
Programming: 'Programowanie',
HR: 'HR',
Agent: 'Agent',
Workflow: 'Przepływ pracy',
Entertainment: 'Rozrywka',
},
}
export default translation

View File

@@ -0,0 +1,8 @@
const translation = {
sidebar: {
expandSidebar: 'Rozwiń pasek boczny',
collapseSidebar: 'Zwiń pasek boczny',
},
}
export default translation

View File

@@ -0,0 +1,131 @@
const translation = {
pageTitle: 'Cześć, zaczynajmy!👋',
welcome: 'Witaj w Dify, zaloguj się, aby kontynuować.',
email: 'Adres e-mail',
emailPlaceholder: 'Twój adres e-mail',
password: 'Hasło',
passwordPlaceholder: 'Twoje hasło',
name: 'Nazwa użytkownika',
namePlaceholder: 'Twoja nazwa użytkownika',
forget: 'Zapomniałeś hasła?',
signBtn: 'Zaloguj się',
installBtn: 'Ustaw',
setAdminAccount: 'Ustawianie konta administratora',
setAdminAccountDesc:
'Maksymalne uprawnienia dla konta administratora, które można użyć do tworzenia aplikacji i zarządzania dostawcami LLM, itp.',
createAndSignIn: 'Utwórz i zaloguj się',
oneMoreStep: 'Jeszcze jeden krok',
createSample:
'Na podstawie tych informacji, utworzymy dla Ciebie przykładową aplikację',
invitationCode: 'Kod zaproszenia',
invitationCodePlaceholder: 'Twój kod zaproszenia',
interfaceLanguage: 'Język interfejsu',
timezone: 'Strefa czasowa',
go: 'Przejdź do Dify',
sendUsMail:
'Wyślij nam e-mail z swoim wstępem, a my zajmiemy się prośbą o zaproszenie.',
acceptPP: 'Przeczytałem/am i akceptuję politykę prywatności',
reset: 'Uruchom poniższą komendę, aby zresetować swoje hasło',
withGitHub: 'Kontynuuj za pomocą GitHub',
withGoogle: 'Kontynuuj za pomocą Google',
rightTitle: 'Odblokuj pełny potencjał LLM',
rightDesc:
'Łatwo buduj wizualnie atrakcyjne, działające i udoskonalane aplikacje AI.',
tos: 'Warunki świadczenia usług',
pp: 'Polityka prywatności',
tosDesc: 'Założeniem konta zgadzasz się z naszymi',
goToInit: 'Jeśli nie zainicjowałeś konta, przejdź do strony inicjalizacji',
dontHave: 'Nie masz?',
invalidInvitationCode: 'Niewłaściwy kod zaproszenia',
accountAlreadyInited: 'Konto już zainicjowane',
forgotPassword: 'Zapomniałeś hasła?',
resetLinkSent: 'Link resetujący został wysłany',
sendResetLink: 'Wyślij link resetujący',
backToSignIn: 'Powrót do logowania',
forgotPasswordDesc: 'Proszę podać swój adres e-mail, aby zresetować hasło. Wyślemy Ci e-mail z instrukcjami, jak zresetować hasło.',
checkEmailForResetLink: 'Proszę sprawdzić swój e-mail w poszukiwaniu linku do resetowania hasła. Jeśli nie pojawi się w ciągu kilku minut, sprawdź folder spam.',
passwordChanged: 'Zaloguj się teraz',
changePassword: 'Zmień hasło',
changePasswordTip: 'Wprowadź nowe hasło do swojego konta',
invalidToken: 'Nieprawidłowy lub wygasły token',
confirmPassword: 'Potwierdź hasło',
confirmPasswordPlaceholder: 'Potwierdź nowe hasło',
passwordChangedTip: 'Twoje hasło zostało pomyślnie zmienione',
error: {
emailEmpty: 'Adres e-mail jest wymagany',
emailInValid: 'Proszę wpisać prawidłowy adres e-mail',
nameEmpty: 'Nazwa jest wymagana',
passwordEmpty: 'Hasło jest wymagane',
passwordInvalid:
'Hasło musi zawierać litery i cyfry, a jego długość musi być większa niż 8',
passwordLengthInValid: 'Hasło musi składać się z co najmniej 8 znaków',
registrationNotAllowed: 'Nie znaleziono konta. Skontaktuj się z administratorem systemu, aby się zarejestrować.',
invalidEmailOrPassword: 'Nieprawidłowy adres e-mail lub hasło.',
},
license: {
tip: 'Przed rozpoczęciem wersji społecznościowej Dify, przeczytaj GitHub',
link: 'Licencję open-source',
},
join: 'Dołącz',
joinTipStart: 'Zapraszam Cię do dołączenia do',
joinTipEnd: 'zespołu na Dify',
invalid: 'Link wygasł',
explore: 'Odkryj Dify',
activatedTipStart: 'Dołączyłeś do',
activatedTipEnd: 'zespołu',
activated: 'Zaloguj się teraz',
adminInitPassword: 'Hasło inicjalizacyjne administratora',
validate: 'Sprawdź',
checkCode: {
verify: 'Zweryfikować',
resend: 'Wysłać',
invalidCode: 'Nieprawidłowy kod',
verificationCodePlaceholder: 'Wprowadź 6-cyfrowy kod',
validTime: 'Pamiętaj, że kod jest ważny przez 5 minut',
checkYourEmail: 'Sprawdź swoją pocztę e-mail',
useAnotherMethod: 'Użyj innej metody',
didNotReceiveCode: 'Nie otrzymałeś kodu?',
verificationCode: 'Kod weryfikacyjny',
emptyCode: 'Kod jest wymagany',
tipsPrefix: 'Wysyłamy kod weryfikacyjny do',
},
continueWithCode: 'Kontynuuj z kodem',
setYourAccount: 'Ustaw swoje konto',
usePassword: 'Użyj hasła',
withSSO: 'Kontynuuj logowanie jednokrotne',
sendVerificationCode: 'Wyślij kod weryfikacyjny',
back: 'Wstecz',
resetPassword: 'Zresetuj hasło',
changePasswordBtn: 'Ustawianie hasła',
backToLogin: 'Powrót do logowania',
useVerificationCode: 'Użyj kodu weryfikacyjnego',
enterYourName: 'Podaj swoją nazwę użytkownika',
resetPasswordDesc: 'Wpisz adres e-mail, którego użyłeś do rejestracji w Dify, a my wyślemy Ci wiadomość e-mail z prośbą o zresetowanie hasła.',
or: 'LUB',
noLoginMethodTip: 'Skontaktuj się z administratorem systemu, aby dodać metodę uwierzytelniania.',
noLoginMethod: 'Nie skonfigurowano metody uwierzytelniania',
licenseLost: 'Utrata licencji',
licenseExpired: 'Licencja wygasła',
licenseInactive: 'Licencja nieaktywna',
licenseExpiredTip: 'Licencja Dify Enterprise dla Twojego obszaru roboczego wygasła. Skontaktuj się z administratorem, aby kontynuować korzystanie z Dify.',
licenseLostTip: 'Nie udało się nawiązać połączenia z serwerem licencji Dify. Skontaktuj się z administratorem, aby kontynuować korzystanie z Dify.',
licenseInactiveTip: 'Licencja Dify Enterprise dla Twojego obszaru roboczego jest nieaktywna. Skontaktuj się z administratorem, aby kontynuować korzystanie z Dify.',
webapp: {
noLoginMethod: 'Metoda uwierzytelniania nie jest skonfigurowana dla aplikacji internetowej',
noLoginMethodTip: 'Proszę skontaktować się z administratorem systemu, aby dodać metodę uwierzytelniania.',
disabled: 'Uwierzytelnianie aplikacji internetowej jest wyłączone. Proszę skontaktować się z administratorem systemu, aby je włączyć. Możesz spróbować użyć aplikacji bezpośrednio.',
login: 'Zaloguj się',
},
signup: {
createAccount: 'Utwórz swoje konto',
signUp: 'Zarejestruj się',
noAccount: 'Nie masz konta?',
verifyMail: 'Kontynuuj z kodem weryfikacyjnym',
signIn: 'Zaloguj się',
haveAccount: 'Masz już konto?',
welcome: '👋 Witaj! Proszę wypełnić szczegóły, aby rozpocząć.',
},
pageTitleForE: 'Hej, zaczynajmy!',
}
export default translation

View File

@@ -0,0 +1,27 @@
const translation = {
tips: {
needLogin: 'Proszę się zalogować, aby autoryzować',
notLoggedIn: 'Ta aplikacja chce uzyskać dostęp do twojego konta Dify Cloud',
common: 'Szanujemy Twoją prywatność i będziemy wykorzystywać te informacje tylko w celu ulepszenia Twojego doświadczenia z naszymi narzędziami deweloperskimi.',
loggedIn: 'Ta aplikacja chce uzyskać dostęp do następujących informacji z twojego konta Dify Cloud.',
},
scopes: {
timezone: 'Strefa czasowa',
name: 'Imię',
avatar: 'Avatar',
languagePreference: 'Preferencje językowe',
email: 'Email',
},
error: {
invalidParams: 'Nieprawidłowe parametry',
authorizeFailed: 'Autoryzacja nie powiodła się',
authAppInfoFetchFailed: 'Nie udało się pobrać informacji o aplikacji w celu autoryzacji',
},
unknownApp: 'Nieznana aplikacja',
continue: 'Kontynuuj',
login: 'Zaloguj się',
connect: 'Połącz z',
switchAccount: 'Zmień konto',
}
export default translation

View File

@@ -0,0 +1,40 @@
const translation = {
common: {
publishAsPipeline: {
name: 'Nazwa i ikona potoku',
descriptionPlaceholder: 'Wprowadź opis tego potoku wiedzy. (Opcjonalnie)',
namePlaceholder: 'Wprowadź nazwę tego potoku wiedzy. (Wymagane)',
description: 'Opis wiedzy',
},
processing: 'Przetwarzanie',
publishAs: 'Publikowanie jako potoku wiedzy',
goToAddDocuments: 'Przejdź do dodawania dokumentów',
confirmPublish: 'Potwierdź publikowanie',
reRun: 'Ponowne uruchomienie',
testRun: 'Uruchomienie testowe',
confirmPublishContent: 'Po pomyślnym opublikowaniu potoku wiedzy nie można zmodyfikować struktury fragmentów tej bazy wiedzy. Czy na pewno chcesz go opublikować?',
preparingDataSource: 'Przygotowywanie źródła danych',
},
inputField: {
manage: 'Zarządzać',
create: 'Utwórz pole wprowadzania danych przez użytkownika',
},
publishToast: {
title: 'Ten rurociąg nie został jeszcze opublikowany',
desc: 'Gdy potok nie zostanie opublikowany, można zmodyfikować strukturę fragmentów w węźle bazy wiedzy, a aranżacja potoku i zmiany zostaną automatycznie zapisane jako wersja robocza.',
},
result: {
resultPreview: {
loading: 'Przetwarzanie... Czekaj',
error: 'Wystąpił błąd podczas wykonywania',
viewDetails: 'Zobacz szczegóły',
footerTip: 'W trybie testowym, podgląd do {{count}} fragmentów',
},
},
ragToolSuggestions: {
title: 'Propozycje dotyczące RAG',
noRecommendationPlugins: 'Brak polecanych wtyczek, znajdź więcej w <CustomLink>Marketplacu</CustomLink>',
},
}
export default translation

View File

@@ -0,0 +1,26 @@
const translation = {
tags: {
business: 'Biznes',
weather: 'Pogoda',
entertainment: 'Rozrywka',
education: 'Edukacja',
agent: 'Agent',
videos: 'Filmy',
utilities: 'Narzędzia',
image: 'Obraz',
other: 'Inny',
news: 'Wiadomości',
social: 'Społeczny',
medical: 'Medyczny',
search: 'Szukać',
productivity: 'Produktywność',
travel: 'Podróż',
design: 'Projekt',
finance: 'Finanse',
rag: '',
},
searchTags: 'Szukaj tagów',
allTags: 'Wszystkie tagi',
}
export default translation

View File

@@ -0,0 +1,186 @@
const translation = {
subscription: {
title: 'Subskrypcje',
listNum: 'subskrypcje {{num}}',
empty: {
title: 'Brak subskrypcji',
button: 'Nowa subskrypcja',
},
createButton: {
oauth: 'Nowa subskrypcja z OAuth',
apiKey: 'Nowa subskrypcja z kluczem API',
manual: 'Wklej adres URL, aby utworzyć nową subskrypcję',
},
createSuccess: 'Subskrypcja została pomyślnie utworzona',
createFailed: 'Nie udało się utworzyć subskrypcji',
maxCount: 'Maksymalnie {{num}} subskrypcji',
selectPlaceholder: 'Wybierz subskrypcję',
noSubscriptionSelected: 'Nie wybrano subskrypcji',
subscriptionRemoved: 'Subskrypcja usunięta',
list: {
title: 'Subskrypcje',
addButton: 'Dodaj',
tip: 'Odbieraj zdarzenia poprzez subskrypcję',
item: {
enabled: 'Włączone',
disabled: 'Niepełnosprawny',
credentialType: {
api_key: 'Klucz API',
oauth2: 'OAuth',
unauthorized: 'Instrukcja',
},
actions: {
delete: 'Usuń',
deleteConfirm: {
title: 'Usunąć {{name}}?',
success: 'Subskrypcja {{name}} została pomyślnie usunięta',
error: 'Nie udało się usunąć subskrypcji {{name}}',
content: 'Po usunięciu, tej subskrypcji nie da się odzyskać. Proszę potwierdzić.',
contentWithApps: 'Aktualna subskrypcja jest wykorzystywana przez {{count}} aplikacji. Usunięcie jej spowoduje, że skonfigurowane aplikacje przestaną otrzymywać zdarzenia subskrypcji.',
confirm: 'Potwierdź usunięcie',
cancel: 'Anuluj',
confirmInputWarning: 'Proszę wpisać poprawną nazwę, aby potwierdzić.',
confirmInputPlaceholder: 'Wprowadź "{{name}}", aby potwierdzić.',
confirmInputTip: 'Proszę wpisać „{{name}}”, aby potwierdzić.',
},
},
status: {
active: 'Aktywny',
inactive: 'Nieaktywny',
},
usedByNum: 'Używane przez {{num}} przepływy pracy',
noUsed: 'Nie użyto przepływu pracy',
},
},
addType: {
title: 'Dodaj subskrypcję',
description: 'Wybierz, jak chcesz utworzyć swoją subskrypcję wyzwalacza',
options: {
apikey: {
title: 'Twórz z kluczem API',
description: 'Automatyczne tworzenie subskrypcji przy użyciu danych uwierzytelniających API',
},
oauth: {
title: 'Utwórz za pomocą OAuth',
description: 'Autoryzuj za pomocą platformy zewnętrznej, aby utworzyć subskrypcję',
clientSettings: 'Ustawienia klienta OAuth',
clientTitle: 'Klient OAuth',
default: 'Domyślny',
custom: 'Niestandardowy',
},
manual: {
title: 'Ręczna konfiguracja',
description: 'Wklej adres URL, aby utworzyć nową subskrypcję',
tip: 'Skonfiguruj adres URL na platformie zewnętrznej ręcznie',
},
},
},
},
modal: {
steps: {
verify: 'Zweryfikuj',
configuration: 'Konfiguracja',
},
common: {
cancel: 'Anuluj',
back: 'Wstecz',
next: 'Dalej',
create: 'Utwórz',
verify: 'Zweryfikuj',
authorize: 'Autoryzuj',
creating: 'Tworzenie...',
verifying: 'Weryfikacja...',
authorizing: 'Autoryzacja...',
},
oauthRedirectInfo: 'Ponieważ nie znaleziono żadnych poufnych danych klienta systemu dla tego dostawcy narzędzi, konieczne jest ręczne skonfigurowanie. Dla redirect_uri proszę użyć',
apiKey: {
title: 'Twórz z kluczem API',
verify: {
title: 'Zweryfikuj poświadczenia',
description: 'Proszę podać swoje dane uwierzytelniające API, aby zweryfikować dostęp',
error: 'Weryfikacja poświadczeń nie powiodła się. Proszę sprawdzić swój klucz API.',
success: 'Dane uwierzytelniające zostały pomyślnie zweryfikowane',
},
configuration: {
title: 'Skonfiguruj subskrypcję',
description: 'Skonfiguruj parametry subskrypcji',
},
},
oauth: {
title: 'Utwórz za pomocą OAuth',
authorization: {
title: 'Autoryzacja OAuth',
description: 'Autoryzuj Dify, aby uzyskać dostęp do Twojego konta',
redirectUrl: 'Przekieruj URL',
redirectUrlHelp: 'Użyj tego adresu URL w konfiguracji swojej aplikacji OAuth',
authorizeButton: 'Autoryzuj za pomocą {{provider}}',
waitingAuth: 'Oczekiwanie na autoryzację...',
authSuccess: 'Autoryzacja powiodła się',
authFailed: 'Nie udało się pobrać informacji autoryzacyjnych OAuth',
waitingJump: 'Autoryzowany, oczekujący na start',
},
configuration: {
title: 'Skonfiguruj subskrypcję',
description: 'Skonfiguruj parametry subskrypcji po autoryzacji',
success: 'Konfiguracja OAuth zakończona powodzeniem',
failed: 'Konfiguracja OAuth nie powiodła się',
},
remove: {
success: 'Usunięcie OAuth powiodło się',
failed: 'Usunięcie OAuth nie powiodło się',
},
save: {
success: 'Konfiguracja OAuth została zapisana pomyślnie',
},
},
manual: {
title: 'Ręczna konfiguracja',
description: 'Skonfiguruj subskrypcję webhooka ręcznie',
logs: {
title: 'Dzienniki żądań',
request: 'Żądanie',
loading: 'Oczekiwanie na żądanie od {{pluginName}}...',
},
},
form: {
subscriptionName: {
label: 'Nazwa subskrypcji',
placeholder: 'Wprowadź nazwę subskrypcji',
required: 'Nazwa subskrypcji jest wymagana',
},
callbackUrl: {
label: 'Adres URL zwrotny',
description: 'Ten adres URL będzie odbierać zdarzenia webhook',
tooltip: 'Udostępnij publicznie dostępny punkt końcowy, który może odbierać żądania wywołań zwrotnych od dostawcy wyzwalacza.',
placeholder: 'Generowanie...',
privateAddressWarning: 'Ten adres URL wydaje się być adresem wewnętrznym, co może spowodować niepowodzenie żądań webhook. Możesz zmienić TRIGGER_URL na adres publiczny.',
},
},
errors: {
createFailed: 'Nie udało się utworzyć subskrypcji',
verifyFailed: 'Nie udało się zweryfikować danych uwierzytelniających',
authFailed: 'Autoryzacja nie powiodła się',
networkError: 'Błąd sieci, spróbuj ponownie',
},
},
events: {
title: 'Dostępne wydarzenia',
description: 'Zdarzenia, na które ten wtyczka wyzwalacza może się subskrybować',
empty: 'Brak dostępnych wydarzeń',
event: 'Wydarzenie',
events: 'Wydarzenia',
actionNum: '{{num}} {{event}} WŁĄCZONE',
item: {
parameters: 'parametry {{count}}',
noParameters: 'Brak parametrów',
},
output: 'Wynik',
},
node: {
status: {
warning: 'Rozłącz',
},
},
}
export default translation

View File

@@ -0,0 +1,320 @@
const translation = {
category: {
extensions: 'Rozszerzenia',
agents: 'Strategie agentów',
bundles: 'Wiązki',
all: 'Cały',
tools: 'Narzędzia',
models: 'Modele',
datasources: 'Źródła danych',
triggers: 'Czynniki wywołujące',
},
categorySingle: {
model: 'Model',
extension: 'Rozszerzenie',
bundle: 'Pakiet',
agent: 'Strategia agenta',
tool: 'Narzędzie',
datasource: 'Źródło danych',
trigger: 'Spust',
},
list: {
source: {
marketplace: 'Instalowanie z Marketplace',
github: 'Instalowanie z usługi GitHub',
local: 'Zainstaluj z lokalnego pliku pakietu',
},
notFound: 'Nie znaleziono wtyczek',
noInstalled: 'Brak zainstalowanych wtyczek',
},
source: {
github: 'Usługa GitHub',
local: 'Lokalny plik pakietu',
marketplace: 'Rynek',
},
detailPanel: {
categoryTip: {
local: 'Wtyczka lokalna',
github: 'Zainstalowany z Github',
marketplace: 'Zainstalowano z witryny Marketplace',
debugging: 'Wtyczka do debugowania',
},
operation: {
remove: 'Usunąć',
checkUpdate: 'Sprawdź aktualizację',
detail: 'Szczegóły',
update: 'Aktualizacja',
install: 'Instalować',
viewDetail: 'Pokaż szczegóły',
info: 'Informacje o wtyczce',
back: 'Wstecz',
},
toolSelector: {
unsupportedContent2: 'Kliknij, aby zmienić wersję.',
uninstalledLink: 'Zarządzanie we wtyczkach',
placeholder: 'Wybierz narzędzie...',
paramsTip1: 'Steruje parametrami wnioskowania LLM.',
unsupportedContent: 'Zainstalowana wersja wtyczki nie zapewnia tej akcji.',
params: 'KONFIGURACJA ROZUMOWANIA',
auto: 'Auto',
empty: 'Kliknij przycisk "+", aby dodać narzędzia. Możesz dodać wiele narzędzi.',
descriptionLabel: 'Opis narzędzia',
title: 'Dodaj narzędzie',
descriptionPlaceholder: 'Krótki opis przeznaczenia narzędzia, np. zmierzenie temperatury dla konkretnej lokalizacji.',
settings: 'USTAWIENIA UŻYTKOWNIKA',
uninstalledContent: 'Ta wtyczka jest instalowana z repozytorium lokalnego/GitHub. Proszę użyć po instalacji.',
unsupportedTitle: 'Nieobsługiwana akcja',
uninstalledTitle: 'Narzędzie nie jest zainstalowane',
paramsTip2: 'Gdy opcja "Auto" jest wyłączona, używana jest wartość domyślna.',
toolLabel: 'Narzędzie',
toolSetting: 'Ustawienia narzędzi',
unsupportedMCPTool: 'Obecnie wybrana wersja wtyczki strategii agenta nie obsługuje narzędzi MCP.',
},
strategyNum: '{{liczba}} {{strategia}} ZAWARTE',
endpointsEmpty: 'Kliknij przycisk "+", aby dodać punkt końcowy',
endpointDisableTip: 'Wyłącz punkt końcowy',
endpoints: 'Punkty końcowe',
disabled: 'Niepełnosprawny',
endpointModalTitle: 'Punkt końcowy konfiguracji',
endpointsDocLink: 'Wyświetlanie dokumentu',
endpointDeleteTip: 'Usuń punkt końcowy',
actionNum: '{{liczba}} {{akcja}} ZAWARTE',
configureTool: 'Narzędzie konfiguracji',
configureModel: 'Konfiguracja modelu',
switchVersion: 'Wersja przełącznika',
serviceOk: 'Serwis OK',
configureApp: 'Konfiguracja aplikacji',
endpointModalDesc: 'Po skonfigurowaniu można korzystać z funkcji dostarczanych przez wtyczkę za pośrednictwem punktów końcowych API.',
endpointDisableContent: 'Czy chcesz wyłączyć {{name}}?',
endpointDeleteContent: 'Czy chcesz usunąć {{name}}?',
endpointsTip: 'Ta wtyczka zapewnia określone funkcje za pośrednictwem punktów końcowych i można skonfigurować wiele zestawów punktów końcowych dla bieżącego obszaru roboczego.',
modelNum: '{{liczba}} MODELE W ZESTAWIE',
deprecation: {
reason: {
businessAdjustments: 'dostosowania biznesowe',
ownershipTransferred: 'własność przekazana',
noMaintainer: 'brak opiekuna',
},
onlyReason: 'Ten plugin został wycofany z użycia z powodu {{deprecatedReason}} i nie będzie już aktualizowany.',
noReason: 'Ten wtyczka została przestarzała i nie będzie dłużej aktualizowana.',
fullMessage: 'Ten plugin został wycofany z użycia z powodu {{deprecatedReason}} i nie będzie już aktualizowany. Proszę użyć zamiast tego <CustomLink href=\'https://example.com/\'>{{-alternativePluginId}}</CustomLink>.',
},
},
debugInfo: {
viewDocs: 'Wyświetlanie dokumentów',
title: 'Debugowanie',
},
privilege: {
everyone: 'Każdy',
whoCanDebug: 'Kto może debugować wtyczki?',
admins: 'Administratorzy',
noone: 'Nikt',
whoCanInstall: 'Kto może instalować wtyczki i nimi zarządzać?',
title: 'Preferencje wtyczek',
},
pluginInfoModal: {
packageName: 'Pakiet',
title: 'Informacje o wtyczce',
release: 'Zwolnić',
repository: 'Repozytorium',
},
action: {
deleteContentLeft: 'Czy chcesz usunąć',
delete: 'Usuń wtyczkę',
pluginInfo: 'Informacje o wtyczce',
checkForUpdates: 'Sprawdź dostępność aktualizacji',
usedInApps: 'Ta wtyczka jest używana w aplikacjach {{num}}.',
deleteContentRight: 'wtyczka?',
},
installModal: {
labels: {
package: 'Pakiet',
repository: 'Repozytorium',
version: 'Wersja',
},
installPlugin: 'Zainstaluj wtyczkę',
install: 'Instalować',
installFailedDesc: 'Instalacja wtyczki nie powiodła się.',
installedSuccessfullyDesc: 'Wtyczka została pomyślnie zainstalowana.',
back: 'Wstecz',
readyToInstallPackages: 'Informacje o instalacji następujących wtyczek {{num}}',
cancel: 'Anuluj',
pluginLoadError: 'Błąd ładowania wtyczki',
installing: 'Instalowanie...',
installFailed: 'Instalacja nie powiodła się',
installComplete: 'Instalacja zakończona',
readyToInstall: 'Informacje o instalacji następującej wtyczki',
dropPluginToInstall: 'Upuść pakiet wtyczek tutaj, aby zainstalować',
uploadFailed: 'Przekazywanie nie powiodło się',
next: 'Następny',
fromTrustSource: 'Upewnij się, że instalujesz wtyczki tylko z <trustSource>zaufanego źródła</trustSource>.',
pluginLoadErrorDesc: 'Ta wtyczka nie zostanie zainstalowana',
close: 'Zamykać',
readyToInstallPackage: 'Informacje o instalacji następującej wtyczki',
uploadingPackage: 'Przesyłanie {{packageName}}...',
installedSuccessfully: 'Instalacja powiodła się',
installWarning: 'Ten plugin nie może być zainstalowany.',
},
installFromGitHub: {
installPlugin: 'Zainstaluj wtyczkę z GitHub',
selectVersionPlaceholder: 'Proszę wybrać wersję',
gitHubRepo: 'Repozytorium GitHub',
uploadFailed: 'Przekazywanie nie powiodło się',
selectVersion: 'Wybierz wersję',
installFailed: 'Instalacja nie powiodła się',
updatePlugin: 'Zaktualizuj wtyczkę z GitHub',
selectPackagePlaceholder: 'Proszę wybrać pakiet',
selectPackage: 'Wybierz pakiet',
installedSuccessfully: 'Instalacja powiodła się',
installNote: 'Upewnij się, że instalujesz wtyczki tylko z zaufanego źródła.',
},
upgrade: {
successfulTitle: 'Instalacja powiodła się',
description: 'Informacje o instalacji następującej wtyczki',
close: 'Zamykać',
upgrade: 'Instalować',
title: 'Zainstaluj wtyczkę',
upgrading: 'Instalowanie...',
usedInApps: 'Używane w aplikacjach {{num}}',
},
error: {
inValidGitHubUrl: 'Nieprawidłowy adres URL usługi GitHub. Podaj prawidłowy adres URL w formacie: https://github.com/owner/repo',
noReleasesFound: 'Nie znaleziono wydań. Sprawdź repozytorium GitHub lub wejściowy adres URL.',
fetchReleasesError: 'Nie można pobrać wydań. Spróbuj ponownie później.',
},
marketplace: {
sortOption: {
newlyReleased: 'Nowo wydany',
firstReleased: 'Po raz pierwszy wydany',
recentlyUpdated: 'Ostatnio zaktualizowane',
mostPopular: 'Najpopularniejsze',
},
sortBy: 'Czarne miasto',
discover: 'Odkryć',
moreFrom: 'Więcej z Marketplace',
empower: 'Zwiększ możliwości rozwoju sztucznej inteligencji',
viewMore: 'Zobacz więcej',
and: 'i',
difyMarketplace: 'Rynek Dify',
noPluginFound: 'Nie znaleziono wtyczki',
pluginsResult: '{{num}} wyniki',
partnerTip: 'Zweryfikowane przez partnera Dify',
verifiedTip: 'Zweryfikowane przez Dify',
},
task: {
installError: 'Nie udało się zainstalować wtyczek {{errorLength}}, kliknij, aby wyświetlić',
installedError: 'Nie udało się zainstalować wtyczek {{errorLength}}',
installing: 'Instalowanie wtyczek {{installingLength}}, 0 gotowe.',
installingWithSuccess: 'Instalacja wtyczek {{installingLength}}, {{successLength}} powodzenie.',
clearAll: 'Wyczyść wszystko',
installingWithError: 'Instalacja wtyczek {{installingLength}}, {{successLength}} powodzenie, {{errorLength}} niepowodzenie',
},
search: 'Szukać',
installFrom: 'ZAINSTALUJ Z',
searchCategories: 'Kategorie wyszukiwania',
allCategories: 'Wszystkie kategorie',
findMoreInMarketplace: 'Więcej informacji w Marketplace',
searchInMarketplace: 'Wyszukiwanie w Marketplace',
endpointsEnabled: '{{num}} włączone zestawy punktów końcowych',
install: '{{num}} instalacji',
installAction: 'Instalować',
installPlugin: 'Zainstaluj wtyczkę',
from: 'Z',
fromMarketplace: 'Z Marketplace',
searchPlugins: 'Wtyczki wyszukiwania',
searchTools: 'Narzędzia wyszukiwania...',
metadata: {
title: 'Wtyczki',
},
difyVersionNotCompatible: 'Obecna wersja Dify nie jest kompatybilna z tym wtyczką, proszę zaktualizować do minimalnej wymaganej wersji: {{minimalDifyVersion}}',
requestAPlugin: 'Poproś o wtyczkę',
publishPlugins: 'Publikowanie wtyczek',
auth: {
useOAuth: 'Użyj OAuth',
default: 'Domyślny',
useOAuthAuth: 'Użyj autoryzacji OAuth',
authRemoved: 'Autoryzacja usunięta',
addApi: 'Dodaj klucz API',
setupOAuth: 'Skonfiguruj klienta OAuth',
useApi: 'Użyj klucza API',
workspaceDefault: 'Domyślna przestrzeń robocza',
authorization: 'Autoryzacja',
custom: 'Niestandardowy',
oauthClient: 'Klient OAuth',
authorizations: 'Uprawnienia',
setDefault: 'Ustaw jako domyślne',
saveOnly: 'Zapisz tylko',
oauthClientSettings: 'Ustawienia klienta OAuth',
authorizationName: 'Nazwa autoryzacji',
useApiAuth: 'Konfiguracja autoryzacji klucza API',
saveAndAuth: 'Zapisz i autoryzuj',
addOAuth: 'Dodaj OAuth',
useApiAuthDesc: 'Po skonfigurowaniu poświadczeń wszyscy członkowie w przestrzeni roboczej mogą korzystać z tego narzędzia podczas orkiestracji aplikacji.',
clientInfo: 'Ponieważ nie znaleziono tajemnic klientów systemu dla tego dostawcy narzędzi, wymagane jest ręczne skonfigurowanie, dla redirect_uri proszę użyć',
unavailable: 'Niedostępny',
customCredentialUnavailable: 'Niestandardowe dane logowania są obecnie niedostępne',
credentialUnavailable: 'Kredencje są obecnie niedostępne. Proszę skontaktować się z administratorem.',
credentialUnavailableInButton: 'Credential niedostępny',
connectedWorkspace: 'Połączona przestrzeń robocza',
emptyAuth: 'Skonfiguruj uwierzytelnianie',
},
deprecated: 'Nieaktualny',
autoUpdate: {
strategy: {
disabled: {
description: 'Wtyczki nie będą się automatycznie aktualizować',
name: 'Niepełnosprawny',
},
fixOnly: {
selectedDescription: 'Automatyczna aktualizacja tylko dla wersji poprawek',
name: 'Napraw tylko',
description: 'Automatyczna aktualizacja tylko dla wersji łatkowych (np. 1.0.1 → 1.0.2). Zmiany w wersjach mniejszych nie będą wywoływać aktualizacji.',
},
latest: {
name: 'Najświeższy',
description: 'Zawsze aktualizuj do najnowszej wersji',
selectedDescription: 'Zawsze aktualizuj do najnowszej wersji',
},
},
upgradeMode: {
all: 'Zaktualizuj wszystko',
partial: 'Tylko wybrane',
exclude: 'Wyłącz wybrane',
},
upgradeModePlaceholder: {
exclude: 'Wybrane wtyczki nie będą aktualizować się automatycznie.',
partial: 'Tylko wybrane wtyczki będą się aktualizować automatycznie. Obecnie nie wybrano żadnych wtyczek, więc żadna wtyczka nie będzie się automatycznie aktualizować.',
},
operation: {
clearAll: 'Wyczyść wszystko',
select: 'Wybierz wtyczki',
},
pluginDowngradeWarning: {
exclude: 'Wyłącz z automatycznej aktualizacji',
downgrade: 'Zrób downgrade tak czy inaczej',
title: 'Obniżenie wersji wtyczki',
description: 'Automatyczna aktualizacja jest obecnie włączona dla tej wtyczki. Obniżenie wersji może spowodować, że twoje zmiany zostaną nadpisane podczas następnej automatycznej aktualizacji.',
},
noPluginPlaceholder: {
noInstalled: 'Brak zainstalowanych wtyczek',
noFound: 'Nie znaleziono wtyczek',
},
updateTime: 'Czas aktualizacji',
updateSettings: 'Zaktualizuj ustawienia',
updateTimeTitle: 'Czas aktualizacji',
specifyPluginsToUpdate: 'Określ wtyczki do zaktualizowania',
nextUpdateTime: 'Następna automatyczna aktualizacja: {{time}}',
automaticUpdates: 'Automatyczne aktualizacje',
excludeUpdate: 'Następujące {{num}} wtyczki nie będą aktualizować się automatycznie',
changeTimezone: 'Aby zmienić strefę czasową, przejdź do <setTimezone>Ustawienia</setTimezone>',
partialUPdate: 'Tylko następujące {{num}} wtyczki będą się automatycznie aktualizować',
},
readmeInfo: {
title: 'PRZECZYTAJMNIE',
needHelpCheckReadme: 'Potrzebujesz pomocy? Sprawdź plik README.',
noReadmeAvailable: 'Brak dostępnego pliku README',
failedToFetch: 'Nie udało się pobrać pliku README',
},
}
export default translation

View File

@@ -0,0 +1,4 @@
const translation = {
}
export default translation

View File

@@ -0,0 +1,31 @@
const translation = {
input: 'WEJŚCIE',
result: 'WYNIK',
detail: 'SZCZEGÓŁY',
tracing: 'ŚLEDZENIE',
resultPanel: {
status: 'STATUS',
time: 'CZAS WYKONANIA',
tokens: 'CAŁKOWITA LICZBA TOKENÓW',
},
meta: {
title: 'METADANE',
status: 'Status',
version: 'Wersja',
executor: 'Wykonawca',
startTime: 'Czas rozpoczęcia',
time: 'Czas trwania',
tokens: 'Liczba tokenów',
steps: 'Kroki wykonania',
},
resultEmpty: {
title: 'To wykonanie generuje tylko format JSON,',
tipLeft: 'proszę przejdź do ',
link: 'panelu szczegółów',
tipRight: ' aby je zobaczyć.',
},
circularInvocationTip: 'W bieżącym przepływie pracy istnieje cykliczne wywoływanie narzędzi/węzłów.',
actionLogs: 'Dzienniki akcji',
}
export default translation

View File

@@ -0,0 +1,87 @@
const translation = {
common: {
welcome: '',
appUnavailable: 'Aplikacja jest niedostępna',
appUnknownError: 'Aplikacja jest niedostępna',
},
chat: {
newChat: 'Nowy czat',
pinnedTitle: 'Przypięte',
unpinnedTitle: 'Czaty',
newChatDefaultName: 'Nowa rozmowa',
resetChat: 'Resetuj rozmowę',
poweredBy: 'Działany przez',
prompt: 'Podpowiedź',
privatePromptConfigTitle: 'Ustawienia rozmowy',
publicPromptConfigTitle: 'Początkowa podpowiedź',
configStatusDes:
'Przed rozpoczęciem możesz zmodyfikować ustawienia rozmowy',
configDisabled: 'Ustawienia poprzedniej sesji zostały użyte w tej sesji.',
startChat: 'Zacznij czat',
privacyPolicyLeft: 'Proszę przeczytać ',
privacyPolicyMiddle: 'politykę prywatności',
privacyPolicyRight: ' dostarczoną przez dewelopera aplikacji.',
deleteConversation: {
title: 'Usuń rozmowę',
content: 'Czy na pewno chcesz usunąć tę rozmowę?',
},
tryToSolve: 'Spróbuj rozwiązać',
temporarySystemIssue: 'Przepraszamy, tymczasowy problem systemowy.',
expand: 'Rozwiń',
collapse: 'Zwiń',
chatSettingsTitle: 'Nowa konfiguracja czatu',
viewChatSettings: 'Zobacz ustawienia czatu',
chatFormTip: 'Ustawienia czatu nie mogą być modyfikowane po rozpoczęciu czatu.',
newChatTip: 'Już w nowej czacie',
},
generation: {
tabs: {
create: 'Uruchom raz',
batch: 'Uruchom partię',
saved: 'Zapisane',
},
savedNoData: {
title: 'Nie zapisałeś jeszcze wyniku!',
description:
'Zacznij generować treść i znajdź swoje zapisane wyniki tutaj.',
startCreateContent: 'Zacznij tworzyć treść',
},
title: 'Uzupełnianie AI',
queryTitle: 'Zapytaj o treść',
completionResult: 'Wynik uzupełnienia',
queryPlaceholder: 'Wpisz swoją treść zapytania...',
run: 'Wykonaj',
copy: 'Kopiuj',
resultTitle: 'Uzupełnianie AI',
noData: 'AI poda Ci to, czego chcesz tutaj.',
csvUploadTitle: 'Przeciągnij i upuść plik CSV tutaj lub ',
browse: 'przeglądaj',
csvStructureTitle: 'Plik CSV musi być zgodny z następującą strukturą:',
downloadTemplate: 'Pobierz szablon tutaj',
field: 'Pole',
batchFailed: {
info: '{{num}} nieudanych wykonan',
retry: 'Powtórz',
outputPlaceholder: 'Brak treści wyjściowej',
},
errorMsg: {
empty: 'Proszę wprowadź treść w załadowanym pliku.',
fileStructNotMatch: 'Załadowany plik CSV nie pasuje do struktury.',
emptyLine: 'Wiersz {{rowIndex}} jest pusty',
invalidLine:
'Wiersz {{rowIndex}}: wartość {{varName}} nie może być pusta',
moreThanMaxLengthLine:
'Wiersz {{rowIndex}}: wartość {{varName}} nie może mieć więcej niż {{maxLength}} znaków',
atLeastOne:
'Proszę wprowadź co najmniej jeden wiersz w załadowanym pliku.',
},
execution: 'Uruchom',
executions: '{{num}} uruchomień',
stopRun: 'Zatrzymaj wykonanie',
},
login: {
backToHome: 'Powrót do strony głównej',
},
}
export default translation

View File

@@ -0,0 +1,44 @@
const translation = {
daysInWeek: {
Thu: 'Czw',
Tue: 'Wtorek',
Mon: 'Mon',
Sun: 'Słońce',
Fri: 'Wolny',
Sat: 'Sat',
Wed: 'Środa',
},
months: {
July: 'lipiec',
January: 'Styczeń',
August: 'Sierpień',
February: 'Luty',
October: 'Październik',
April: 'Kwiecień',
December: 'Grudzień',
March: 'Marzec',
May: 'Maj',
September: 'Wrzesień',
June: 'Czerwiec',
November: 'Listopad',
},
operation: {
cancel: 'Anuluj',
pickDate: 'Wybierz datę',
now: 'Teraz',
ok: 'OK',
},
title: {
pickTime: 'Wybierz czas',
},
defaultPlaceholder: 'Wybierz czas...',
dateFormats: {
output: 'RRRR-MM-DD',
displayWithTime: 'MMMM D, YYYY hh:mm A',
display: 'MMMM D, YYYY',
input: 'RRRR-MM-DD',
outputWithTime: 'RRRR-MM-DDTHH:mm:ss.SSSZ',
},
}
export default translation

View File

@@ -0,0 +1,261 @@
const translation = {
title: 'Narzędzia',
createCustomTool: 'Utwórz niestandardowe narzędzie',
type: {
builtIn: 'Wbudowane',
custom: 'Niestandardowe',
workflow: 'Przepływ pracy',
},
contribute: {
line1: 'Interesuje mnie ',
line2: 'współtworzenie narzędzi dla Dify.',
viewGuide: 'Zobacz przewodnik',
},
author: 'Przez',
auth: {
authorized: 'Zautoryzowane',
setup: 'Skonfiguruj autoryzację aby użyć',
setupModalTitle: 'Konfiguruj autoryzację',
setupModalTitleDescription:
'Po skonfigurowaniu poświadczeń wszyscy członkowie w przestrzeni roboczej mogą używać tego narzędzia podczas projektowania aplikacji.',
},
includeToolNum: '{{num}} narzędzi zawarte',
createTool: {
title: 'Utwórz niestandardowe narzędzie',
editAction: 'Konfiguruj',
editTitle: 'Edytuj niestandardowe narzędzie',
name: 'Nazwa',
toolNamePlaceHolder: 'Wprowadź nazwę narzędzia',
schema: 'Schemat',
schemaPlaceHolder: 'Wprowadź tutaj swój schemat OpenAPI',
viewSchemaSpec: 'Zobacz specyfikację OpenAPI-Swagger',
importFromUrl: 'Importuj z adresu URL',
importFromUrlPlaceHolder: 'https://...',
urlError: 'Proszę podać prawidłowy URL',
examples: 'Przykłady',
exampleOptions: {
json: 'Pogoda (JSON)',
yaml: 'Sklep Zoologiczny (YAML)',
blankTemplate: 'Pusty szablon',
},
availableTools: {
title: 'Dostępne narzędzia',
name: 'Nazwa',
description: 'Opis',
method: 'Metoda',
path: 'Ścieżka',
action: 'Akcje',
test: 'Test',
},
authMethod: {
title: 'Metoda autoryzacji',
type: 'Typ autoryzacji',
keyTooltip:
'Klucz nagłówka HTTP, Możesz pozostawić go z "Autoryzacja" jeśli nie wiesz co to jest lub ustaw go na niestandardową wartość',
types: {
none: 'Brak',
apiKeyPlaceholder: 'Nazwa nagłówka HTTP dla Klucza API',
apiValuePlaceholder: 'Wprowadź Klucz API',
api_key_query: 'Parametr zapytania',
api_key_header: 'Nagłówek',
queryParamPlaceholder: 'Nazwa parametru zapytania dla klucza API',
},
key: 'Klucz',
value: 'Wartość',
queryParam: 'Parametr zapytania',
queryParamTooltip: 'Nazwa parametru zapytania klucza API do przekazania, np. "key" w "https://example.com/test?key=API_KEY".',
},
authHeaderPrefix: {
title: 'Typ autoryzacji',
types: {
basic: 'Podstawowa',
bearer: 'Bearer',
custom: 'Niestandardowa',
},
},
privacyPolicy: 'Polityka prywatności',
privacyPolicyPlaceholder: 'Proszę wprowadzić politykę prywatności',
customDisclaimer: 'Oświadczenie niestandardowe',
customDisclaimerPlaceholder: 'Proszę wprowadzić oświadczenie niestandardowe',
deleteToolConfirmTitle: 'Skasuj ten przyrząd?',
deleteToolConfirmContent: 'Usunięcie narzędzia jest nieodwracalne. Użytkownicy nie będą mieli już dostępu do Twojego narzędzia.',
toolInput: {
name: 'Nazwa',
required: 'Wymagane',
descriptionPlaceholder: 'Opis znaczenia parametru',
methodParameter: 'Parametr',
label: 'Tagi',
methodSetting: 'Ustawienie',
description: 'Opis',
method: 'Metoda',
methodParameterTip: 'LLM wypełnia się podczas wnioskowania',
labelPlaceholder: 'Wybierz tagi (opcjonalnie)',
methodSettingTip: 'Użytkownik wypełnia konfigurację narzędzia',
title: 'Wprowadzanie narzędzi',
},
nameForToolCall: 'Nazwa wywołania narzędzia',
description: 'Opis',
descriptionPlaceholder: 'Krótki opis przeznaczenia narzędzia, np. zmierz temperaturę dla konkretnej lokalizacji.',
nameForToolCallTip: 'Obsługuje tylko cyfry, litery i podkreślenia.',
nameForToolCallPlaceHolder: 'Służy do rozpoznawania maszyn, takich jak getCurrentWeather, list_pets',
confirmTip: 'Będzie to miało wpływ na aplikacje korzystające z tego narzędzia',
confirmTitle: 'Potwierdź, aby zapisać ?',
},
test: {
title: 'Test',
parametersValue: 'Parametry i Wartość',
parameters: 'Parametry',
value: 'Wartość',
testResult: 'Wyniki testu',
testResultPlaceholder: 'Wynik testu pojawi się tutaj',
},
thought: {
using: 'Używanie',
used: 'Użyty',
requestTitle: 'Żądanie do',
responseTitle: 'Odpowiedź od',
},
setBuiltInTools: {
info: 'Informacje',
setting: 'Ustawienia',
toolDescription: 'Opis narzędzia',
parameters: 'parametry',
string: 'ciąg znaków',
number: 'liczba',
required: 'Wymagane',
infoAndSetting: 'Informacje i Ustawienia',
file: 'plik',
},
noCustomTool: {
title: 'Brak niestandardowych narzędzi!',
content:
'Dodaj i zarządzaj niestandardowymi narzędziami tutaj, aby budować aplikacje AI.',
createTool: 'Utwórz Narzędzie',
},
noSearchRes: {
title: 'Przykro nam, brak wyników!',
content:
'Nie znaleźliśmy żadnych narzędzi pasujących do Twojego wyszukiwania.',
reset: 'Resetuj Wyszukiwanie',
},
builtInPromptTitle: 'Komunikat',
toolRemoved: 'Narzędzie usunięte',
notAuthorized: 'Narzędzie nieautoryzowane',
howToGet: 'Jak uzyskać',
addToolModal: {
added: 'Dodane',
type: 'typ',
category: 'kategoria',
custom: {
title: 'Brak dostępnego narzędzia niestandardowego',
tip: 'Utwórz narzędzie niestandardowe',
},
workflow: {
title: 'Brak dostępnego narzędzia workflow',
tip: 'Publikuj przepływy pracy jako narzędzia w Studio',
},
mcp: {
title: 'Brak dostępnego narzędzia MCP',
tip: 'Dodaj serwer MCP',
},
agent: {
title: 'Brak dostępnej strategii agenta',
},
},
openInStudio: 'Otwieranie w Studio',
customToolTip: 'Dowiedz się więcej o niestandardowych narzędziach Dify',
toolNameUsageTip: 'Nazwa wywołania narzędzia do wnioskowania i podpowiadania agentowi',
noTools: 'Nie znaleziono narzędzi',
copyToolName: 'Kopiuj nazwę',
mcp: {
create: {
cardTitle: 'Dodaj serwer MCP (HTTP)',
cardLink: 'Dowiedz się więcej o integracji serwera MCP',
},
noConfigured: 'Serwer nieskonfigurowany',
updateTime: 'Zaktualizowano',
toolsCount: '{count} narzędzi',
noTools: 'Brak dostępnych narzędzi',
modal: {
title: 'Dodaj serwer MCP (HTTP)',
editTitle: 'Edytuj serwer MCP (HTTP)',
name: 'Nazwa i ikona',
namePlaceholder: 'Nazwij swój serwer MCP',
serverUrl: 'URL serwera',
serverUrlPlaceholder: 'URL do punktu końcowego serwera',
serverUrlWarning: 'Aktualizacja adresu serwera może zakłócić działanie aplikacji od niego zależnych',
serverIdentifier: 'Identyfikator serwera',
serverIdentifierTip: 'Unikalny identyfikator serwera MCP w obszarze roboczym. Tylko małe litery, cyfry, podkreślenia i myślniki. Maks. 24 znaki.',
serverIdentifierPlaceholder: 'Unikalny identyfikator, np. my-mcp-server',
serverIdentifierWarning: 'Po zmianie ID serwer nie będzie rozpoznawany przez istniejące aplikacje',
cancel: 'Anuluj',
save: 'Zapisz',
confirm: 'Dodaj i autoryzuj',
timeout: 'Limit czasu',
sseReadTimeout: 'Przekroczenie czasu oczekiwania na odczyt SSE',
addHeader: 'Dodaj nagłówek',
headers: 'Nagłówki',
headerKeyPlaceholder: 'np. Autoryzacja',
timeoutPlaceholder: 'trzydzieści',
headerValuePlaceholder: 'np. Token dostępu 123',
headerKey: 'Nazwa nagłówka',
headersTip: 'Dodatkowe nagłówki HTTP do wysłania z żądaniami serwera MCP',
headerValue: 'Wartość nagłówka',
noHeaders: 'Brak skonfigurowanych nagłówków niestandardowych',
maskedHeadersTip: 'Wartości nagłówków są ukryte dla bezpieczeństwa. Zmiany zaktualizują rzeczywiste wartości.',
configurations: 'Konfiguracje',
authentication: 'Uwierzytelnianie',
clientSecretPlaceholder: 'Tajny klucz klienta',
clientSecret: 'Tajny klucz klienta',
useDynamicClientRegistration: 'Użyj dynamicznej rejestracji klienta',
clientID: 'ID klienta',
redirectUrlWarning: 'Proszę skonfigurować swój adres URL przekierowania OAuth na:',
},
delete: 'Usuń serwer MCP',
deleteConfirmTitle: 'Usunąć {mcp}?',
operation: {
edit: 'Edytuj',
remove: 'Usuń',
},
authorize: 'Autoryzuj',
authorizing: 'Autoryzowanie...',
authorizingRequired: 'Wymagana autoryzacja',
authorizeTip: 'Po autoryzacji narzędzia będą wyświetlane tutaj.',
update: 'Aktualizuj',
updating: 'Aktualizowanie...',
gettingTools: 'Pobieranie narzędzi...',
updateTools: 'Aktualizowanie narzędzi...',
toolsEmpty: 'Narzędzia niezaładowane',
getTools: 'Pobierz narzędzia',
toolUpdateConfirmTitle: 'Aktualizuj listę narzędzi',
toolUpdateConfirmContent: 'Aktualizacja listy narzędzi może wpłynąć na istniejące aplikacje. Kontynuować?',
toolsNum: '{count} narzędzi zawartych',
onlyTool: '1 narzędzie zawarte',
identifier: 'Identyfikator serwera (Kliknij, aby skopiować)',
server: {
title: 'Serwer MCP',
url: 'URL serwera',
reGen: 'Wygenerować ponownie URL serwera?',
addDescription: 'Dodaj opis',
edit: 'Edytuj opis',
modal: {
addTitle: 'Dodaj opis, aby aktywować serwer MCP',
editTitle: 'Edytuj opis',
description: 'Opis',
descriptionPlaceholder: 'Wyjaśnij funkcjonalność tego narzędzia i sposób użycia przez LLM',
parameters: 'Parametry',
parametersTip: 'Dodaj opisy każdego parametru, aby pomóc LLM zrozumieć ich cel i ograniczenia.',
parametersPlaceholder: 'Cel i ograniczenia parametru',
confirm: 'Aktywuj serwer MCP',
},
publishTip: 'Aplikacja nieopublikowana. Najpierw opublikuj aplikację.',
},
toolItem: {
parameters: 'Parametry',
noDescription: 'Brak opisu',
},
},
allTools: 'Wszystkie narzędzia',
}
export default translation

File diff suppressed because it is too large Load Diff