Initial commit

This commit is contained in:
2025-10-14 14:17:21 +08:00
commit ac715a8b88
35011 changed files with 3834178 additions and 0 deletions

View File

@@ -0,0 +1,89 @@
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',
},
},
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.',
}
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,466 @@
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',
words: 'Słowa',
textBlocks: 'Bloki tekstu',
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: '',
},
},
},
},
automatic: {
title: 'Zautomatyzowana orkiestracja aplikacji',
description:
'Opisz swój scenariusz, Dify zorkiestruje aplikację dla Ciebie.',
intendedAudience: 'Dla kogo jest przeznaczona ta aplikacja?',
intendedAudiencePlaceHolder: 'np. Uczeń',
solveProblem:
'Jakie problemy mają nadzieję, że AI może rozwiązać dla nich?',
solveProblemPlaceHolder:
'np. Wyciąganie wniosków i podsumowanie informacji z długich raportów i artykułów',
generate: 'Generuj',
audiencesRequired: 'Wymagana publiczności',
problemRequired: 'Wymagany problem',
resTitle: 'Stworzyliśmy następującą aplikację dla Ciebie.',
apply: 'Zastosuj tę orkiestrację',
noData:
'Opisz swój przypadek po lewej, podgląd orkiestracji pojawi się tutaj.',
loading: 'Orkiestracja aplikacji dla Ciebie...',
overwriteTitle: 'Zastąpić istniejącą konfigurację?',
overwriteMessage:
'Zastosowanie tej orkiestracji zastąpi istniejącą konfigurację.',
},
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',
},
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',
optional: 'Opcjonalnie',
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',
'errorMsg': {
varNameRequired: 'Wymagana nazwa zmiennej',
labelNameRequired: 'Wymagana nazwa etykiety',
varNameCanBeRepeat: 'Nazwa zmiennej nie może się powtarzać',
atLeastOneOption: 'Wymagana jest co najmniej jedna opcja',
optionRepeat: 'Powtarzają się opcje',
},
},
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',
},
},
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',
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ą.',
},
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',
},
},
}
export default translation

View File

@@ -0,0 +1,102 @@
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',
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',
},
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',
},
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',
},
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',
},
}
export default translation

View File

@@ -0,0 +1,189 @@
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ę WebApp.',
settings: {
entry: 'Ustawienia',
title: 'Ustawienia WebApp',
webName: 'Nazwa WebApp',
webDesc: 'Opis WebApp',
webDescTip:
'Ten tekst będzie wyświetlany po stronie klienta, zapewniając podstawowe wskazówki, jak korzystać z aplikacji',
webDescPlaceholder: 'Wpisz opis WebApp',
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',
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',
},
},
},
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',
},
},
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

View File

@@ -0,0 +1,200 @@
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',
captionAppType: 'Jaki typ aplikacji chcesz stworzyć?',
chatbotDescription:
'Zbuduj aplikację opartą na czacie. Ta aplikacja używa formatu pytań i odpowiedzi, umożliwiając wielokrotne rundy ciągłej konwersacji.',
completionDescription:
'Zbuduj aplikację generującą teksty wysokiej jakości na podstawie monitów, takich jak generowanie artykułów, streszczeń, tłumaczeń i innych.',
completionWarning: 'Ten typ aplikacji nie będzie już obsługiwany.',
agentDescription:
'Zbuduj inteligentnego agenta, który może autonomicznie wybierać narzędzia do wykonywania zadań',
workflowDescription:
'Zbuduj aplikację, która w oparciu o przepływ pracy generuje teksty wysokiej jakości z dużą możliwością dostosowania. Jest odpowiednia dla doświadczonych użytkowników.',
workflowWarning: 'Obecnie w fazie beta',
chatbotType: 'Metoda orkiestracji chatbota',
basic: 'Podstawowy',
basicTip: 'Dla początkujących, można przełączyć się później na Chatflow',
basicFor: 'Dla początkujących',
basicDescription:
'Podstawowa orkiestracja pozwala na skonfigurowanie aplikacji Chatbot za pomocą prostych ustawień, bez możliwości modyfikacji wbudowanych monitów. Jest odpowiednia dla początkujących.',
advanced: 'Chatflow',
advancedFor: 'Dla zaawansowanych użytkowników',
advancedDescription:
'Orkiestracja przepływu pracy organizuje Chatboty w formie przepływów pracy, oferując wysoki stopień dostosowania, w tym możliwość edycji wbudowanych monitów. Jest odpowiednia dla doświadczonych użytkowników.',
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: '{{liczba}} 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: 'Orkiestracja przepływu pracy dla zadań jednoetapowych, takich jak automatyzacja i przetwarzanie wsadowe.',
completionUserDescription: 'Szybko zbuduj asystenta AI do zadań generowania tekstu za pomocą prostej konfiguracji.',
forBeginners: 'DLA POCZĄTKUJĄCYCH',
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: '{{liczba}} Wynik',
advancedShortDescription: 'Przepływ pracy dla złożonych, wieloetapowych dialogów z pamięcią',
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: 'Orkiestracja dla jednoetapowych zadań automatyzacji',
advancedUserDescription: 'Orkiestracja przepływu pracy dla wielorundowych, złożonych zadań dialogowych z funkcjami pamięci.',
},
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',
},
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.',
},
view: 'Widok',
opik: {
description: 'Opik to platforma typu open source do oceny, testowania i monitorowania aplikacji LLM.',
title: 'Opik',
},
},
answerIcon: {
description: 'Czy w aplikacji udostępnionej ma być używana ikona aplikacji internetowej do zamiany 🤖.',
title: 'Użyj ikony WebApp, 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',
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',
}
export default translation

View File

@@ -0,0 +1,130 @@
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: {
title: 'Wybierz plan odpowiedni dla siebie',
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',
getStartedWith: 'Rozpocznij z ',
contactSales: 'Kontakt z działem sprzedaży',
talkToSales: 'Porozmawiaj z działem sprzedaży',
modelProviders: 'Dostawcy modeli',
teamMembers: 'Członkowie zespołu',
buildApps: 'Twórz aplikacje',
vectorSpace: 'Przestrzeń wektorowa',
vectorSpaceBillingTooltip:
'Każdy 1MB może przechowywać około 1,2 miliona znaków z wektoryzowanych danych (szacowane na podstawie OpenAI Embeddings, różni się w zależności od modelu).',
vectorSpaceTooltip:
'Przestrzeń wektorowa jest systemem pamięci długoterminowej wymaganym dla LLM, aby zrozumieć Twoje dane.',
documentsUploadQuota: 'Limit przesyłanych dokumentów',
documentProcessingPriority: 'Priorytet przetwarzania dokumentów',
documentProcessingPriorityTip:
'Dla wyższego priorytetu przetwarzania dokumentów, ulepsz swój plan.',
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.',
},
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',
},
plans: {
sandbox: {
name: 'Sandbox',
description: '200 razy darmowa próba GPT',
includesTitle: 'Zawiera:',
},
professional: {
name: 'Profesjonalny',
description:
'Dla osób fizycznych i małych zespołów, aby odblokować więcej mocy w przystępnej cenie.',
includesTitle: 'Wszystko w darmowym planie, plus:',
},
team: {
name: 'Zespół',
description:
'Współpracuj bez ograniczeń i ciesz się najwyższą wydajnością.',
includesTitle: 'Wszystko w planie Profesjonalnym, plus:',
},
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:',
},
},
vectorSpace: {
fullTip: 'Przestrzeń wektorowa jest pełna.',
fullSolution: 'Ulepsz swój plan, aby uzyskać więcej miejsca.',
},
apps: {
fullTipLine1: 'Ulepsz swój plan, aby',
fullTipLine2: 'tworzyć więcej aplikacji.',
},
annotatedResponse: {
fullTipLine1: 'Ulepsz swój plan, aby',
fullTipLine2: 'adnotować więcej rozmów.',
quotaTitle: 'Limit adnotacji odpowiedzi',
},
}
export default translation

View File

@@ -0,0 +1,643 @@
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',
},
placeholder: {
input: 'Proszę wprowadzić',
select: 'Proszę wybrać',
},
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',
},
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',
},
userProfile: {
settings: 'Ustawienia',
emailSupport: 'Wsparcie e-mail',
workspace: 'Przestrzeń robocza',
createWorkspace: 'Utwórz przestrzeń roboczą',
helpCenter: 'Pomoc',
communityFeedback: 'Opinie',
roadmap: 'Plan działania',
community: 'Społeczność',
about: 'O',
logout: 'Wyloguj się',
},
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',
},
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ć.',
deleteConfirmTip: 'Aby potwierdzić, wyślij następujące informacje z zarejestrowanego adresu e-mail na adres ',
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',
},
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',
},
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',
},
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',
},
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',
},
},
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.',
linkUrl: 'https://docs.dify.ai/features/extension/api_based_extension',
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',
},
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 botem',
},
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',
},
license: {
expiring_plural: 'Wygasa za {{count}} dni',
expiring: 'Wygasa w ciągu jednego dnia',
},
pagination: {
perPage: 'Ilość elementów na stronie',
},
}
export default translation

View File

@@ -0,0 +1,31 @@
const translation = {
custom: 'Dostosowanie',
upgradeTip: {
prefix: 'Zaktualizuj swój plan, aby',
suffix: '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,220 @@
const translation = {
steps: {
header: {
creation: 'Utwórz Wiedzę',
update: 'Dodaj dane',
},
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ść 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ć',
firecrawlDocLink: 'https://docs.dify.ai/guides/knowledge-base/sync-from-website',
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.',
},
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',
},
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.',
},
}
export default translation

View File

@@ -0,0 +1,396 @@
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',
},
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',
},
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',
},
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',
topicsKeywords: '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',
},
segment: {
paragraphs: 'Akapity',
keywords: 'Słowa kluczowe',
addKeyWord: 'Dodaj słowo kluczowe',
keywordError: 'Maksymalna długość słowa kluczowego wynosi 20',
characters: 'znaków',
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',
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',
},
}
export default translation

View File

@@ -0,0 +1,35 @@
const translation = {
title: 'Testowanie odzyskiwania',
desc: 'Przetestuj efekt uderzenia wiedzy na podstawie podanego tekstu zapytania.',
dateTimeFormat: 'MM/DD/YYYY hh:mm A',
recents: 'Ostatnie',
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,46 @@
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.',
},
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',
},
}
export default translation

View File

@@ -0,0 +1,179 @@
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',
unavailableTip:
'Model osadzający jest niedostępny, domyślny model osadzający musi być skonfigurowany',
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: {
title: 'Indeks odwrócony',
description:
'Indeks odwrócony to struktura używana do efektywnego odzyskiwania informacji. Zorganizowane według terminów, każdy termin wskazuje na dokumenty lub strony internetowe zawierające go.',
},
change: 'Zmień',
changeRetrievalMethod: 'Zmień metodę odzyskiwania',
},
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',
},
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ą.',
}
export default translation

View File

@@ -0,0 +1,44 @@
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',
},
}
export default translation

View File

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

View File

@@ -0,0 +1,115 @@
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ę',
sso: 'Kontynuuj za pomocą SSO',
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ć.',
},
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',
tips: 'Wysyłamy kod weryfikacyjny na <strong>adres {{email}}</strong>',
emptyCode: 'Kod jest wymagany',
},
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.',
}
export default translation

View File

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

View File

@@ -0,0 +1,29 @@
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ć.',
},
}
export default translation

View File

@@ -0,0 +1,75 @@
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.',
},
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.',
},
},
}
export default translation

View File

@@ -0,0 +1,159 @@
const translation = {
title: 'Narzędzia',
createCustomTool: 'Utwórz niestandardowe narzędzie',
type: {
all: 'Wszystkie',
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: {
unauthorized: 'Autoryzacja',
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',
addTool: 'Dodaj narzędzie',
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',
api_key: 'Klucz API',
apiKeyPlaceholder: 'Nazwa nagłówka HTTP dla Klucza API',
apiValuePlaceholder: 'Wprowadź Klucz API',
},
key: 'Klucz',
value: 'Wartość',
},
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',
},
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: {
manageInTools: 'Zarządzanie w Narzędziach',
added: 'Dodane',
type: 'typ',
category: 'kategoria',
add: 'dodawać',
emptyTitle: 'Brak dostępnego narzędzia do przepływu pracy',
emptyTip: 'Przejdź do "Przepływ pracy -> Opublikuj jako narzędzie"',
emptyTitleCustom: 'Brak dostępnego narzędzia niestandardowego',
emptyTipCustom: 'Tworzenie narzędzia niestandardowego',
},
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',
}
export default translation

View File

@@ -0,0 +1,707 @@
const translation = {
common: {
undo: 'Cofnij',
redo: 'Ponów',
editing: 'Edytowanie',
autoSaved: 'Automatycznie zapisane',
unpublished: 'Nieopublikowane',
published: 'Opublikowane',
publish: 'Opublikuj',
update: 'Aktualizuj',
run: 'Uruchom',
running: 'Uruchamianie',
inRunMode: 'W trybie uruchamiania',
inPreview: 'W podglądzie',
inPreviewMode: 'W trybie podglądu',
preview: 'Podgląd',
viewRunHistory: 'Zobacz historię uruchomień',
runHistory: 'Historia uruchomień',
goBackToEdit: 'Wróć do edytora',
conversationLog: 'Dziennik rozmów',
features: 'Funkcje',
debugAndPreview: 'Podgląd',
restart: 'Uruchom ponownie',
currentDraft: 'Bieżący szkic',
currentDraftUnpublished: 'Bieżący szkic nieopublikowany',
latestPublished: 'Najnowsze opublikowane',
publishedAt: 'Opublikowane',
restore: 'Przywróć',
runApp: 'Uruchom aplikację',
batchRunApp: 'Uruchom aplikację wsadowo',
accessAPIReference: 'Uzyskaj dostęp do dokumentacji API',
embedIntoSite: 'Osadź na stronie',
addTitle: 'Dodaj tytuł...',
addDescription: 'Dodaj opis...',
noVar: 'Brak zmiennej',
searchVar: 'Szukaj zmiennej',
variableNamePlaceholder: 'Nazwa zmiennej',
setVarValuePlaceholder: 'Ustaw zmienną',
needConnectTip: 'Ten krok nie jest połączony z niczym',
maxTreeDepth: 'Maksymalny limit {{depth}} węzłów na gałąź',
needEndNode: 'Należy dodać blok końcowy',
needAnswerNode: 'Należy dodać blok odpowiedzi',
workflowProcess: 'Proces przepływu pracy',
notRunning: 'Jeszcze nie uruchomiono',
previewPlaceholder: 'Wprowadź treść w poniższym polu, aby rozpocząć debugowanie Chatbota',
effectVarConfirm: {
title: 'Usuń zmienną',
content: 'Zmienna jest używana w innych węzłach. Czy na pewno chcesz ją usunąć?',
},
insertVarTip: 'Naciśnij klawisz \'/\', aby szybko wstawić',
processData: 'Przetwórz dane',
input: 'Wejście',
output: 'Wyjście',
jinjaEditorPlaceholder: 'Naciśnij \'/\' lub \'{\', aby wstawić zmienną',
viewOnly: 'Tylko do podglądu',
showRunHistory: 'Pokaż historię uruchomień',
enableJinja: 'Włącz obsługę szablonów Jinja',
learnMore: 'Dowiedz się więcej',
copy: 'Kopiuj',
duplicate: 'Duplikuj',
addBlock: 'Dodaj blok',
pasteHere: 'Wklej tutaj',
pointerMode: 'Tryb wskaźnika',
handMode: 'Tryb ręczny',
model: 'Model',
workflowAsTool: 'Przepływ pracy jako narzędzie',
configureRequired: 'Wymagana konfiguracja',
configure: 'Skonfiguruj',
manageInTools: 'Zarządzaj w narzędziach',
workflowAsToolTip: 'Wymagana rekonfiguracja narzędzia po aktualizacji przepływu pracy.',
viewDetailInTracingPanel: 'Zobacz szczegóły',
importDSLTip: 'Bieżąca wersja robocza zostanie nadpisana. Eksportuj przepływ pracy jako kopię zapasową przed zaimportowaniem.',
syncingData: 'Synchronizacja danych w zaledwie kilka sekund.',
importSuccess: 'Import powodzenie',
importDSL: 'Importowanie DSL',
overwriteAndImport: 'Nadpisywanie i importowanie',
chooseDSL: 'Wybierz plik DSL(yml)',
backupCurrentDraft: 'Utwórz kopię zapasową bieżącej wersji roboczej',
importFailure: 'Niepowodzenie importu',
parallelTip: {
click: {
title: 'Klikać',
desc: ', aby dodać',
},
drag: {
title: 'Przeciągnąć',
desc: 'aby się połączyć',
},
limit: 'Równoległość jest ograniczona do gałęzi {{num}}.',
depthLimit: 'Limit warstw zagnieżdżania równoległego dla warstw {{num}}',
},
parallelRun: 'Bieg równoległy',
jumpToNode: 'Przejdź do tego węzła',
disconnect: 'Odłączyć',
addParallelNode: 'Dodaj węzeł równoległy',
parallel: 'RÓWNOLEGŁY',
branch: 'GAŁĄŹ',
ImageUploadLegacyTip: 'Teraz można tworzyć zmienne typu pliku w formularzu startowym. W przyszłości nie będziemy już obsługiwać funkcji przesyłania obrazów.',
fileUploadTip: 'Funkcje przesyłania obrazów zostały zaktualizowane do przesyłania plików.',
featuresDescription: 'Ulepszanie środowiska użytkownika aplikacji internetowej',
featuresDocLink: 'Dowiedz się więcej',
importWarning: 'Ostrożność',
importWarningDetails: 'Różnica w wersji DSL może mieć wpływ na niektóre funkcje',
openInExplore: 'Otwieranie w obszarze Eksploruj',
onFailure: 'W przypadku niepowodzenia',
addFailureBranch: 'Dodawanie gałęzi niepowodzenia',
loadMore: 'Załaduj więcej przepływów pracy',
noHistory: 'Brak historii',
},
env: {
envPanelTitle: 'Zmienne Środowiskowe',
envDescription: 'Zmienne środowiskowe mogą być używane do przechowywania prywatnych informacji i poświadczeń. Są one tylko do odczytu i mogą być oddzielone od pliku DSL podczas eksportu.',
envPanelButton: 'Dodaj Zmienną',
modal: {
title: 'Dodaj Zmienną Środowiskową',
editTitle: 'Edytuj Zmienną Środowiskową',
type: 'Typ',
name: 'Nazwa',
namePlaceholder: 'nazwa środowiska',
value: 'Wartość',
valuePlaceholder: 'wartość środowiska',
secretTip: 'Używane do definiowania wrażliwych informacji lub danych, z ustawieniami DSL skonfigurowanymi do zapobiegania wyciekom.',
},
export: {
title: 'Eksportować tajne zmienne środowiskowe?',
checkbox: 'Eksportuj tajne wartości',
ignore: 'Eksportuj DSL',
export: 'Eksportuj DSL z tajnymi wartościami',
},
},
chatVariable: {
panelTitle: 'Zmienne Konwersacji',
panelDescription: 'Zmienne Konwersacji służą do przechowywania interaktywnych informacji, które LLM musi pamiętać, w tym historii konwersacji, przesłanych plików, preferencji użytkownika. Są one do odczytu i zapisu.',
docLink: 'Odwiedź naszą dokumentację, aby dowiedzieć się więcej.',
button: 'Dodaj Zmienną',
modal: {
title: 'Dodaj Zmienną Konwersacji',
editTitle: 'Edytuj Zmienną Konwersacji',
name: 'Nazwa',
namePlaceholder: 'Nazwa zmiennej',
type: 'Typ',
value: 'Wartość Domyślna',
valuePlaceholder: 'Wartość domyślna, pozostaw puste aby nie ustawiać',
description: 'Opis',
descriptionPlaceholder: 'Opisz zmienną',
editInJSON: 'Edytuj w JSON',
oneByOne: 'Dodawaj po kolei',
editInForm: 'Edytuj w Formularzu',
arrayValue: 'Wartość',
addArrayValue: 'Dodaj Wartość',
objectKey: 'Klucz',
objectType: 'Typ',
objectValue: 'Wartość Domyślna',
},
storedContent: 'Przechowywana zawartość',
updatedAt: 'Zaktualizowano ',
},
changeHistory: {
title: 'Historia Zmian',
placeholder: 'Nie dokonano jeszcze żadnych zmian',
clearHistory: 'Wyczyść Historię',
hint: 'Wskazówka',
hintText: 'Działania edycji są śledzone w historii zmian, która jest przechowywana na urządzeniu przez czas trwania tej sesji. Ta historia zostanie usunięta po opuszczeniu edytora.',
stepBackward_one: '{{count}} krok do tyłu',
stepBackward_other: '{{count}} kroki do tyłu',
stepForward_one: '{{count}} krok do przodu',
stepForward_other: '{{count}} kroki do przodu',
sessionStart: 'Początek sesji',
currentState: 'Aktualny stan',
nodeTitleChange: 'Tytuł bloku zmieniony',
nodeDescriptionChange: 'Opis bloku zmieniony',
nodeDragStop: 'Blok przeniesiony',
nodeChange: 'Blok zmieniony',
nodeConnect: 'Blok połączony',
nodePaste: 'Blok wklejony',
nodeDelete: 'Blok usunięty',
nodeAdd: 'Blok dodany',
nodeResize: 'Notatka zmieniona',
noteAdd: 'Notatka dodana',
noteChange: 'Notatka zmieniona',
noteDelete: 'Notatka usunięta',
edgeDelete: 'Blok rozłączony',
},
errorMsg: {
fieldRequired: '{{field}} jest wymagane',
authRequired: 'Wymagana autoryzacja',
invalidJson: '{{field}} jest nieprawidłowym JSON-em',
fields: {
variable: 'Nazwa zmiennej',
variableValue: 'Wartość zmiennej',
code: 'Kod',
model: 'Model',
rerankModel: 'Model rerank',
visionVariable: 'Zmienna wizji',
},
invalidVariable: 'Nieprawidłowa zmienna',
rerankModelRequired: 'Przed włączeniem Rerank Model upewnij się, że model został pomyślnie skonfigurowany w ustawieniach.',
},
singleRun: {
testRun: 'Testowe uruchomienie ',
startRun: 'Rozpocznij uruchomienie',
running: 'Uruchamianie',
testRunIteration: 'Iteracja testowego uruchomienia',
back: 'Wstecz',
iteration: 'Iteracja',
},
tabs: {
'searchBlock': 'Szukaj bloku',
'blocks': 'Bloki',
'tools': 'Narzędzia',
'allTool': 'Wszystkie',
'builtInTool': 'Wbudowane',
'customTool': 'Niestandardowe',
'workflowTool': 'Przepływ pracy',
'question-understand': 'Zrozumienie pytania',
'logic': 'Logika',
'transform': 'Transformacja',
'utilities': 'Narzędzia pomocnicze',
'noResult': 'Nie znaleziono dopasowań',
'searchTool': 'Wyszukiwarka',
},
blocks: {
'start': 'Start',
'end': 'Koniec',
'answer': 'Odpowiedź',
'llm': 'LLM',
'knowledge-retrieval': 'Wyszukiwanie wiedzy',
'question-classifier': 'Klasyfikator pytań',
'if-else': 'JEŚLI/W PRZECIWNYM WYPADKU',
'code': 'Kod',
'template-transform': 'Szablon',
'http-request': 'Żądanie HTTP',
'variable-assigner': 'Agregator zmiennych',
'variable-aggregator': 'Agregator zmiennych',
'assigner': 'Przypisywacz Zmiennych',
'iteration-start': 'Początek iteracji',
'iteration': 'Iteracja',
'parameter-extractor': 'Ekstraktor parametrów',
'document-extractor': 'Ekstraktor dokumentów',
'list-operator': 'Operator listy',
},
blocksAbout: {
'start': 'Zdefiniuj początkowe parametry uruchamiania przepływu pracy',
'end': 'Zdefiniuj zakończenie i typ wyniku przepływu pracy',
'answer': 'Zdefiniuj treść odpowiedzi w rozmowie',
'llm': 'Wywołaj duże modele językowe do odpowiadania na pytania lub przetwarzania języka naturalnego',
'knowledge-retrieval': 'Pozwala na wyszukiwanie treści tekstowych związanych z pytaniami użytkowników z bazy wiedzy',
'question-classifier': 'Zdefiniuj warunki klasyfikacji pytań użytkowników, LLM może definiować, jak rozmowa postępuje na podstawie opisu klasyfikacji',
'if-else': 'Pozwala na podział przepływu pracy na dwie gałęzie na podstawie warunków if/else',
'code': 'Wykonaj fragment kodu Python lub NodeJS, aby wdrożyć niestandardową logikę',
'template-transform': 'Konwertuj dane na ciąg znaków przy użyciu składni szablonu Jinja',
'http-request': 'Pozwala na wysyłanie żądań serwera za pomocą protokołu HTTP',
'variable-assigner': 'Zbierz zmienne z wielu gałęzi do jednej zmiennej dla jednolitej konfiguracji węzłów końcowych.',
'assigner': 'Węzeł przypisania zmiennych służy do przypisywania wartości do zmiennych zapisywalnych (takich jak zmienne konwersacji).',
'variable-aggregator': 'Zbierz zmienne z wielu gałęzi do jednej zmiennej dla jednolitej konfiguracji węzłów końcowych.',
'iteration': 'Wykonuj wielokrotne kroki na liście obiektów, aż wszystkie wyniki zostaną wypisane.',
'parameter-extractor': 'Użyj LLM do wyodrębnienia strukturalnych parametrów z języka naturalnego do wywołań narzędzi lub żądań HTTP.',
'document-extractor': 'Służy do analizowania przesłanych dokumentów w treści tekstowej, która jest łatwo zrozumiała dla LLM.',
'list-operator': 'Służy do filtrowania lub sortowania zawartości tablicy.',
},
operator: {
zoomIn: 'Powiększ',
zoomOut: 'Pomniejsz',
zoomTo50: 'Powiększ do 50%',
zoomTo100: 'Powiększ do 100%',
zoomToFit: 'Dopasuj do ekranu',
},
panel: {
userInputField: 'Pole wprowadzania użytkownika',
changeBlock: 'Zmień blok',
helpLink: 'Link do pomocy',
about: 'O',
createdBy: 'Stworzone przez ',
nextStep: 'Następny krok',
addNextStep: 'Dodaj następny blok w tym przepływie pracy',
selectNextStep: 'Wybierz następny blok',
runThisStep: 'Uruchom ten krok',
checklist: 'Lista kontrolna',
checklistTip: 'Upewnij się, że wszystkie problemy zostały rozwiązane przed opublikowaniem',
checklistResolved: 'Wszystkie problemy zostały rozwiązane',
organizeBlocks: 'Organizuj bloki',
change: 'Zmień',
optional: '(opcjonalne)',
},
nodes: {
common: {
outputVars: 'Zmienne wyjściowe',
insertVarTip: 'Wstaw zmienną',
memory: {
memory: 'Pamięć',
memoryTip: 'Ustawienia pamięci rozmowy',
windowSize: 'Rozmiar okna',
conversationRoleName: 'Nazwa roli w rozmowie',
user: 'Prefiks użytkownika',
assistant: 'Prefiks asystenta',
},
memories: {
title: 'Pamięci',
tip: 'Pamięć rozmowy',
builtIn: 'Wbudowane',
},
errorHandle: {
none: {
desc: 'Węzeł przestanie działać, jeśli wystąpi wyjątek i nie zostanie obsłużony',
title: 'Żaden',
},
defaultValue: {
title: 'Wartość domyślna',
desc: 'Gdy wystąpi błąd, określ statyczną zawartość wyjściową.',
tip: 'W przypadku błędu, zwróci wartość poniżej.',
inLog: 'Wyjątek węzła, wyprowadzanie zgodnie z wartościami domyślnymi.',
output: 'Wyjściowa wartość domyślna',
},
failBranch: {
title: 'Gałąź Fail (Gałąź Niepowodzenia',
customize: 'Przejdź do kanwy, aby dostosować logikę gałęzi niepowodzenia.',
customizeTip: 'Gdy gałąź fail jest aktywowana, wyjątki zgłaszane przez węzły nie zakończą procesu. Zamiast tego automatycznie wykona predefiniowaną gałąź niepowodzenia, co pozwoli Ci elastycznie dostarczać komunikaty o błędach, raporty, poprawki lub pomijać akcje.',
inLog: 'Wyjątek węzła, automatycznie wykona gałąź niepowodzenia. Dane wyjściowe węzła zwrócą typ błędu i komunikat o błędzie, a następnie przekażą je do podrzędnego.',
desc: 'Gdy wystąpi błąd, wykona gałąź wyjątku',
},
partialSucceeded: {
tip: 'W procesie {{num}} węzły działają nieprawidłowo, przejdź do śledzenia, aby sprawdzić dzienniki.',
},
tip: 'Strategia obsługi wyjątków, wyzwalana, gdy węzeł napotka wyjątek.',
title: 'Obsługa błędów',
},
retry: {
retry: 'Ponów próbę',
maxRetries: 'Maksymalna liczba ponownych prób',
retryInterval: 'Interwał ponawiania prób',
retryTimes: 'Ponów próbę {{times}} razy w przypadku niepowodzenia',
retrying: 'Ponawianie...',
retrySuccessful: 'Ponawianie próby powiodło się',
retryFailed: 'Ponawianie próby nie powiodło się',
times: 'razy',
retries: '{{liczba}} Ponownych prób',
retryOnFailure: 'Ponawianie próby w przypadku niepowodzenia',
retryFailedTimes: '{{times}} ponawianie prób nie powiodło się',
ms: 'Ms',
},
},
start: {
required: 'wymagane',
inputField: 'Pole wejściowe',
builtInVar: 'Wbudowane zmienne',
outputVars: {
query: 'Wprowadzenie użytkownika',
memories: {
des: 'Historia rozmowy',
type: 'typ wiadomości',
content: 'treść wiadomości',
},
files: 'Lista plików',
},
noVarTip: 'Ustaw wejścia, które mogą być używane w przepływie pracy',
},
end: {
outputs: 'Wyniki',
output: {
type: 'typ wyniku',
variable: 'zmienna wyjściowa',
},
type: {
'none': 'Brak',
'plain-text': 'Zwykły tekst',
'structured': 'Strukturalny',
},
},
answer: {
answer: 'Odpowiedź',
outputVars: 'Zmienne wyjściowe',
},
llm: {
model: 'model',
variables: 'zmienne',
context: 'kontekst',
contextTooltip: 'Możesz zaimportować wiedzę jako kontekst',
notSetContextInPromptTip: 'Aby włączyć funkcję kontekstu, wypełnij zmienną kontekstu w PROMPT.',
prompt: 'prompt',
roleDescription: {
system: 'Podaj wysokopoziomowe instrukcje dla rozmowy',
user: 'Podaj instrukcje, zapytania lub dowolne tekstowe wejście dla modelu',
assistant: 'Odpowiedzi modelu oparte na wiadomościach użytkownika',
},
addMessage: 'Dodaj wiadomość',
vision: 'wizja',
files: 'Pliki',
resolution: {
name: 'Rozdzielczość',
high: 'Wysoka',
low: 'Niska',
},
outputVars: {
output: 'Generowana treść',
usage: 'Informacje o użyciu modelu',
},
singleRun: {
variable: 'Zmienna',
},
sysQueryInUser: 'sys.query w wiadomości użytkownika jest wymagane',
},
knowledgeRetrieval: {
queryVariable: 'Zmienna zapytania',
knowledge: 'Wiedza',
outputVars: {
output: 'Odzyskane dane segmentowane',
content: 'Treść segmentowana',
title: 'Tytuł segmentowany',
icon: 'Ikona segmentowana',
url: 'URL segmentowany',
metadata: 'Inne metadane',
},
},
http: {
inputVars: 'Zmienne wejściowe',
api: 'API',
apiPlaceholder: 'Wpisz URL, wpisz /, aby wstawić zmienną',
notStartWithHttp: 'API powinno zaczynać się od http:// lub https://',
key: 'Klucz',
value: 'Wartość',
bulkEdit: 'Edycja zbiorcza',
keyValueEdit: 'Edycja klucz-wartość',
headers: 'Nagłówki',
params: 'Parametry',
body: 'Treść',
outputVars: {
body: 'Treść odpowiedzi',
statusCode: 'Kod statusu odpowiedzi',
headers: 'Lista nagłówków odpowiedzi w formacie JSON',
files: 'Lista plików',
},
authorization: {
'authorization': 'Autoryzacja',
'authorizationType': 'Typ autoryzacji',
'no-auth': 'Brak',
'api-key': 'Klucz API',
'auth-type': 'Typ autoryzacji',
'basic': 'Podstawowa',
'bearer': 'Bearer',
'custom': 'Niestandardowa',
'api-key-title': 'Klucz API',
'header': 'Nagłówek',
},
insertVarPlaceholder: 'wpisz \'/\', aby wstawić zmienną',
timeout: {
title: 'Limit czasu',
connectLabel: 'Limit czasu połączenia',
connectPlaceholder: 'Wpisz limit czasu połączenia w sekundach',
readLabel: 'Limit czasu odczytu',
readPlaceholder: 'Wpisz limit czasu odczytu w sekundach',
writeLabel: 'Limit czasu zapisu',
writePlaceholder: 'Wpisz limit czasu zapisu w sekundach',
},
type: 'Typ',
binaryFileVariable: 'Binarna zmienna pliku',
extractListPlaceholder: 'Wprowadź indeks elementu listy, wpisz "/" wstaw zmienną',
curl: {
placeholder: 'Wklej tutaj ciąg cURL',
title: 'Importowanie z cURL',
},
},
code: {
inputVars: 'Zmienne wejściowe',
outputVars: 'Zmienne wyjściowe',
advancedDependencies: 'Zaawansowane zależności',
advancedDependenciesTip: 'Dodaj niektóre preładowane zależności, które zajmują więcej czasu lub nie są domyślnie wbudowane',
searchDependencies: 'Wyszukaj zależności',
},
templateTransform: {
inputVars: 'Zmienne wejściowe',
code: 'Kod',
codeSupportTip: 'Obsługuje tylko Jinja2',
outputVars: {
output: 'Przekształcona treść',
},
},
ifElse: {
if: 'Jeśli',
else: 'W przeciwnym razie',
elseDescription: 'Używane do określenia logiki, która powinna być wykonana, gdy warunek if nie jest spełniony.',
and: 'i',
or: 'lub',
operator: 'Operator',
notSetVariable: 'Najpierw ustaw zmienną',
comparisonOperator: {
'contains': 'zawiera',
'not contains': 'nie zawiera',
'start with': 'zaczyna się od',
'end with': 'kończy się na',
'is': 'jest',
'is not': 'nie jest',
'empty': 'jest pusty',
'not empty': 'nie jest pusty',
'null': 'jest null',
'not null': 'nie jest null',
'regex match': 'Dopasowanie wyrażenia regularnego',
'in': 'w',
'not exists': 'nie istnieje',
'exists': 'Istnieje',
'all of': 'wszystkie z nich',
'not in': 'nie w',
},
enterValue: 'Wpisz wartość',
addCondition: 'Dodaj warunek',
conditionNotSetup: 'Warunek NIE został ustawiony',
selectVariable: 'Wybierz zmienną...',
optionName: {
video: 'Wideo',
image: 'Obraz',
url: 'Adres URL',
localUpload: 'Przesyłanie lokalne',
doc: 'Doc',
audio: 'Dźwięk',
},
addSubVariable: 'Zmienna podrzędna',
select: 'Wybrać',
},
variableAssigner: {
title: 'Przypisz zmienne',
outputType: 'Typ wyjścia',
varNotSet: 'Zmienna nie została ustawiona',
noVarTip: 'Dodaj zmienne do przypisania',
type: {
string: 'Ciąg znaków',
number: 'Liczba',
object: 'Obiekt',
array: 'Tablica',
},
aggregationGroup: 'Grupa agregacji',
aggregationGroupTip: 'Włączenie tej funkcji pozwala na agregowanie wielu zestawów zmiennych przez agregator zmiennych.',
addGroup: 'Dodaj grupę',
outputVars: {
varDescribe: 'Wyjście {{groupName}}',
},
setAssignVariable: 'Ustaw przypisanie zmiennej',
},
assigner: {
'assignedVariable': 'Przypisana Zmienna',
'writeMode': 'Tryb Zapisu',
'writeModeTip': 'Gdy PRZYPISANA ZMIENNA jest tablicą, tryb dopisywania dodaje na końcu.',
'over-write': 'Nadpisz',
'append': 'Dopisz',
'plus': 'Plus',
'clear': 'Wyczyść',
'setVariable': 'Ustaw Zmienną',
'variable': 'Zmienna',
'operations': {
'over-write': 'Zastąpić',
'set': 'Zbiór',
'title': 'Operacja',
'overwrite': 'Zastąpić',
'*=': '*=',
'/=': '/=',
'-=': '-=',
'extend': 'Rozszerzyć',
'+=': '+=',
'clear': 'Jasny',
'append': 'Dołączyć',
},
'variables': 'Zmiennych',
'selectAssignedVariable': 'Wybierz przypisaną zmienną...',
'varNotSet': 'Zmienna NIE jest ustawiona',
'noAssignedVars': 'Brak dostępnych przypisanych zmiennych',
'assignedVarsDescription': 'Przypisane zmienne muszą być zmiennymi zapisywalnymi, takimi jak zmienne konwersacji.',
'setParameter': 'Ustaw parametr...',
'noVarTip': 'Kliknij przycisk "+", aby dodać zmienne',
},
tool: {
toAuthorize: 'Do autoryzacji',
inputVars: 'Zmienne wejściowe',
outputVars: {
text: 'treść generowana przez narzędzie',
files: {
title: 'pliki generowane przez narzędzie',
type: 'Typ wsparcia. Obecnie tylko obsługuje obraz',
transfer_method: 'Metoda transferu. Wartość to remote_url lub local_file',
url: 'URL obrazu',
upload_file_id: 'ID przesłanego pliku',
},
json: 'JSON wygenerowany przez narzędzien',
},
},
questionClassifiers: {
model: 'model',
inputVars: 'Zmienne wejściowe',
outputVars: {
className: 'Nazwa klasy',
},
class: 'Klasa',
classNamePlaceholder: 'Napisz nazwę swojej klasy',
advancedSetting: 'Zaawansowane ustawienia',
topicName: 'Nazwa tematu',
topicPlaceholder: 'Napisz nazwę swojego tematu',
addClass: 'Dodaj klasę',
instruction: 'Instrukcja',
instructionTip: 'Wprowadź dodatkowe instrukcje, aby pomóc klasyfikatorowi pytań lepiej zrozumieć, jak kategoryzować pytania.',
instructionPlaceholder: 'Napisz swoją instrukcję',
},
parameterExtractor: {
inputVar: 'Zmienna wejściowa',
extractParameters: 'Wyodrębnij parametry',
importFromTool: 'Importuj z narzędzi',
addExtractParameter: 'Dodaj parametr wyodrębniania',
addExtractParameterContent: {
name: 'Nazwa',
namePlaceholder: 'Nazwa parametru wyodrębniania',
type: 'Typ',
typePlaceholder: 'Typ parametru wyodrębniania',
description: 'Opis',
descriptionPlaceholder: 'Opis parametru wyodrębniania',
required: 'Wymagane',
requiredContent: 'Wymagane jest tylko jako odniesienie do wnioskowania modelu, a nie do obowiązkowej walidacji wyjścia parametru.',
},
extractParametersNotSet: 'Parametry wyodrębniania nie zostały ustawione',
instruction: 'Instrukcja',
instructionTip: 'Wprowadź dodatkowe instrukcje, aby pomóc ekstraktorowi parametrów zrozumieć, jak wyodrębniać parametry.',
advancedSetting: 'Zaawansowane ustawienia',
reasoningMode: 'Tryb wnioskowania',
reasoningModeTip: 'Możesz wybrać odpowiedni tryb wnioskowania w zależności od zdolności modelu do reagowania na instrukcje dotyczące wywoływania funkcji lub zapytań.',
isSuccess: 'Czy się udało. W przypadku sukcesu wartość wynosi 1, w przypadku niepowodzenia wartość wynosi 0.',
errorReason: 'Powód błędu',
},
iteration: {
deleteTitle: 'Usunąć węzeł iteracji?',
deleteDesc: 'Usunięcie węzła iteracji usunie wszystkie węzły potomne',
input: 'Wejście',
output: 'Zmienne wyjściowe',
iteration_one: '{{count}} Iteracja',
iteration_other: '{{count}} Iteracje',
currentIteration: 'Bieżąca iteracja',
ErrorMethod: {
continueOnError: 'kontynuacja w przypadku błędu',
operationTerminated: 'Zakończone',
removeAbnormalOutput: 'usuń-nieprawidłowe-wyjście',
},
comma: ',',
parallelModeUpper: 'TRYB RÓWNOLEGŁY',
parallelModeEnableTitle: 'Włączony tryb równoległy',
MaxParallelismTitle: 'Maksymalna równoległość',
error_one: '{{liczba}} Błąd',
error_other: '{{liczba}} Błędy',
parallelPanelDesc: 'W trybie równoległym zadania w iteracji obsługują wykonywanie równoległe.',
parallelMode: 'Tryb równoległy',
MaxParallelismDesc: 'Maksymalna równoległość służy do kontrolowania liczby zadań wykonywanych jednocześnie w jednej iteracji.',
parallelModeEnableDesc: 'W trybie równoległym zadania w iteracjach obsługują wykonywanie równoległe. Możesz to skonfigurować w panelu właściwości po prawej stronie.',
answerNodeWarningDesc: 'Ostrzeżenie w trybie równoległym: węzły odpowiedzi, przypisania zmiennych konwersacji i trwałe operacje odczytu/zapisu w iteracjach mogą powodować wyjątki.',
errorResponseMethod: 'Metoda odpowiedzi na błąd',
},
note: {
editor: {
link: 'Łącze',
medium: 'Średni',
small: 'Mały',
italic: 'Kursywa',
enterUrl: 'Wpisz adres URL...',
showAuthor: 'Pokaż autora',
bold: 'Śmiały',
unlink: 'Odłączyć',
bulletList: 'Lista punktowana',
large: 'Duży',
openLink: 'Otwierać',
strikethrough: 'Przekreślenie',
invalidUrl: 'Nieprawidłowy adres URL',
placeholder: 'Napisz swoją notatkę...',
},
addNote: 'Dodaj notatkę',
},
docExtractor: {
outputVars: {
text: 'Wyodrębniony tekst',
},
learnMore: 'Dowiedz się więcej',
inputVar: 'Zmienna wejściowa',
supportFileTypes: 'Obsługiwane typy plików: {{types}}.',
},
listFilter: {
outputVars: {
result: 'Wynik filtrowania',
last_record: 'Ostatni rekord',
first_record: 'Pierwszy rekord',
},
desc: 'DESC',
asc: 'ASC',
inputVar: 'Zmienna wejściowa',
limit: 'Pierwsze N',
orderBy: 'Sortuj według',
filterConditionComparisonOperator: 'Operator porównania warunków filtru',
filterConditionKey: 'Klucz warunku filtra',
filterCondition: 'Stan filtra',
filterConditionComparisonValue: 'Wartość warunku filtru',
selectVariableKeyPlaceholder: 'Wybierz klucz zmiennej podrzędnej',
extractsCondition: 'Wyodrębnij element N',
},
},
tracing: {
stopBy: 'Zatrzymane przez {{user}}',
},
variableReference: {
conversationVars: 'Zmienne konwersacji',
assignedVarsDescription: 'Przypisane zmienne muszą być zmiennymi zapisywalnymi, takimi jak',
noVarsForOperation: 'Nie ma dostępnych zmiennych do przypisania do wybranej operacji.',
noAssignedVars: 'Brak dostępnych przypisanych zmiennych',
noAvailableVars: 'Brak dostępnych zmiennych',
},
}
export default translation