Używając mojego skryptu do tłumaczenia Markdown zasilanego przez SI (Mistral AI i OpenAI) do pliku README mojego projektu Stable Diffusion na GitLabie, napotkałem poważny problem. Niektóre części tekstu nie były tłumaczone, a niektóre bloki kodu zostały błędnie przetłumaczone. Ten artykuł opisuje ulepszenie wprowadzone w celu rozwiązania tego krytycznego problemu.
Napotkany problem
Podczas tłumaczenia README projektu Stable Diffusion skrypt nie odróżniał prawidłowo bloków kodu od zwykłego tekstu w niektórych miejscach. Powodowało to nieodpowiednie tłumaczenia treści, które powinny pozostać niezmienione, co ujawniło potrzebę dokładniejszego zarządzania blokami kodu.
Strategia rozwiązania
Aby rozwiązać ten problem, ulepszyłem skrypt tak, aby precyzyjnie identyfikował i wyodrębniał bloki kodu przed tłumaczeniem przez SI, a następnie poprawnie je przywracał po tłumaczeniu. Podejście to zapobiega niepożądanym zmianom w treści.
Mechanizm ulepszenia
- Precyzyjna identyfikacja i wyodrębnianie: Dzięki ulepszonemu wyrażeniu regularnemu bloki kodu są teraz wyraźnie identyfikowane i wyodrębniane przed tłumaczeniem, co zapobiega ich modyfikacji.
- Właściwe przywracanie: Bloki kodu są wstawiane z powrotem na swoje oryginalne miejsca po tłumaczeniu, co gwarantuje wierność końcowej treści.
Zalety ulepszenia
- Zachowanie bloków kodu: Kody pozostają nienaruszone, zachowując swoją precyzję techniczną. Tłumaczenie nie wpływa już na bloki kodu, co zapewnia integralność treści technicznej.
- Zwiększona niezawodność: Skrypt radzi sobie teraz niezawodnie z złożonymi dokumentami Markdown zawierającymi istotne bloki kodu. Tłumaczenie jest w pełni zautomatyzowane i nie wymaga ręcznej korekty, co zwiększa efektywność i szybkość procesu.
- Lepsze rozróżnianie: Ulepszone wykrywanie bloków kodu umożliwia lepsze rozróżnienie między tekstem do tłumaczenia a blokami kodu do zachowania. Zmniejsza to błędy tłumaczeniowe i zapewnia dokładniejszy oraz spójniejszy rezultat.
Wyniki tłumaczenia
Aby zobaczyć ulepszenia w praktyce, rzuć okiem na przetłumaczone wersje oryginalnego README po francusku projektu Stable Diffusion na GitLabie :
- README po angielsku (przetłumaczone przez gpt-4-1106-preview, bez żadnej korekty)
- README po hiszpańsku (przetłumaczone przez gpt-4-1106-preview, bez żadnej korekty)
- README po chińsku (przetłumaczone przez gpt-4-1106-preview, bez żadnej korekty)
Te tłumaczenia demonstrują zdolność ulepszonego skryptu do skutecznego zarządzania blokami kodu i dostarczania precyzyjnych oraz spójnych tłumaczeń na różne języki, wszystko bez ręcznej korekty.
Dostęp do ulepszonego skryptu
Możesz znaleźć ulepszony skrypt w projekcie AI-Powered Markdown Translator, dostępny do użycia lub dostosowania według potrzeb.
Nowe funkcje i udoskonalenia
Oprócz ulepszenia wykrywania i obsługi bloków kodu, skrypt do tłumaczenia Markdown zasilany przez SI otrzymał kilka innych aktualizacji i usprawnień. Oto przegląd nowych funkcji:
Ulepszone zarządzanie plikami wyjściowymi
Skrypt teraz uwzględnia istnienie plików wyjściowych przed rozpoczęciem tłumaczenia. Jeśli plik wyjściowy już istnieje i opcja --force nie jest aktywna, skrypt wyświetli komunikat informujący, że tłumaczenie nie zostanie wykonane i przejdzie do następnego pliku. Zapobiega to redundantnym tłumaczeniom i oszczędza czas.
Ulepszone wykrywanie istniejących plików
Wykrywanie istniejących plików zostało poprawione poprzez użycie biblioteki glob. Skrypt teraz sprawdza, czy tłumaczenie już istnieje, niezależnie od użytego modelu, wyszukując pliki odpowiadające bazowej nazwie pliku źródłowego i docelowemu językowi.
Odwrócenie modelu i języka w nazwie pliku wyjściowego
Format nazwy pliku wyjściowego został zmieniony, aby lepiej odzwierciedlać język docelowy i użyty model. Teraz nazwa pliku wyjściowego będzie miała format {base}-{langue_cible}-{modèle}.md zamiast {base}-{modèle}-{langue_cible}.md.
Dodanie opcji --force
Do skryptu dodano nową opcję --force. Po jej włączeniu skrypt wymusi tłumaczenie, nawet jeśli dla pliku wejściowego istnieje już tłumaczenie. Może to być przydatne, gdy chcesz zaktualizować tłumaczenia przy użyciu nowszego modelu lub wprowadzić zmiany w parametrach tłumaczenia.
Te ulepszenia i nowe funkcje sprawiają, że skrypt do tłumaczenia Markdown zasilany przez SI jest jeszcze potężniejszy i bardziej elastyczny, ułatwiając zarządzanie i tłumaczenie twoich dokumentów Markdown.
Wnioski
Ta aktualizacja stanowi znaczący krok naprzód dla narzędzia do tłumaczenia Markdown, zwiększając jego zdolność do obsługi dokumentów technicznych. Dalsze udoskonalanie tego narzędzia ma na celu ułatwienie dostępu do projektów open source dla globalnej publiczności.
Bądź na bieżąco z kolejnymi aktualizacjami i innowacjami w ekscytującym świecie generatywnej SI i automatyzacji!
Ten dokument został przetłumaczony z wersji fr na język pl przy użyciu modelu gpt-5-mini. Aby uzyskać więcej informacji na temat procesu tłumaczenia, zobacz https://gitlab.com/jls42/ai-powered-markdown-translator