/ / Cách xây dựng một trình dịch bằng Python

Cách xây dựng một trình dịch bằng Python

Có hơn 7.000 ngôn ngữ được sử dụng trên thế giới ngày nay. Với sự đa dạng như vậy, cần phải tìm hiểu chúng để chúng ta có thể hiểu nhau. Do có quá nhiều ngôn ngữ, chắc chắn chúng ta đã bỏ lỡ cơ hội chia sẻ ý kiến, kiến ​​thức và cách diễn đạt cá nhân.


May mắn thay, bạn có thể giao tiếp với sự trợ giúp của người phiên dịch, kể cả phiên dịch dựa trên máy. Nhập hoặc nói câu của bạn và một chương trình có thể chuyển đổi nó thành ngôn ngữ bạn muốn. Sử dụng mô-đun Googletrans Python, bạn có thể xây dựng trình dịch cơ bản của riêng mình chỉ với một vài dòng mã.


Googletrans là gì?

Googletrans là một mô-đun sử dụng API Google Dịch để phát hiện và dịch các câu từ ngôn ngữ này sang ngôn ngữ khác. Một vài tính năng của mô-đun này là:

TẠO VIDEO TRONG NGÀY
  • Miễn phí: Bạn không phải trả bất kỳ chi phí nào để sử dụng mô-đun này.
  • Không giới hạn: Không giống như hầu hết các API, Googletrans không bị giới hạn tốc độ và bạn có thể sử dụng nó để dịch không giới hạn.
  • Đáng tin cậy: Google là một trong những nguồn đáng tin cậy nhất trên internet. Googletrans sử dụng cùng một máy chủ mà Google Dịch sử dụng.
  • Tự động phát hiện ngôn ngữ: Không giống như các trình dịch khác, bạn không cần chỉ định ngôn ngữ nguồn. Mô-đun này có thể tự động phát hiện ngôn ngữ và hoạt động ngay cả khi bạn không biết ngôn ngữ hoặc phương ngữ của câu đó.
  • Dịch hàng loạt: Thay vì dịch từng câu hoặc từng đoạn văn, bạn có thể nhập danh sách nhiều đoạn.

Nếu bạn đang tìm kiếm một giải pháp thay thế hoặc chỉ muốn khám phá trạng thái hiện tại của công nghệ dịch thuật, bạn có thể sử dụng các công cụ trình duyệt này để dịch các trang web.

Tìm danh sách các ngôn ngữ mà Googletrans hỗ trợ

Bắt đầu bằng cách cài đặt mô-đun bằng phương pháp ưa thích của bạn; trình cài đặt Pip là cách đơn giản nhất.

Bạn có thể gặp sự cố liên quan đến phiên bản googletrans mà bạn cài đặt. Nếu bạn gặp lỗi khi chạy các ví dụ này, hãy thử cài đặt phiên bản 3.1.0a0, tức là cài đặt pip googletrans==3.1.0a0.

Googletrans hỗ trợ nhiều ngôn ngữ để chuyển đổi. Để tìm danh sách các ngôn ngữ mà nó hỗ trợ, hãy chạy đoạn mã Python sau:


import googletransnprint(googletrans.LANGUAGES)

Nhập thư viện Googletrans vào môi trường của bạn và sử dụng NGÔN NGỮ để lấy danh sách các ngôn ngữ và từ viết tắt cùng với nó.

Đầu ra từ chương trình này sẽ tương tự như ảnh chụp màn hình này:

Danh sách các ngôn ngữ được hỗ trợ trong Googletrans

Sử dụng Googletrans để phát hiện ngôn ngữ

Một trong những tính năng tốt nhất của Googletrans là nó tự động phát hiện ngôn ngữ nhập, vì vậy bạn không phải tự cung cấp ngôn ngữ đó. Để phát hiện ngôn ngữ, hãy nhập Người phiên dịch có mặt trong Google dịch mô-đun và tạo phiên bản của nó. Sử dụng phát hiện() phương thức và chuyển một chuỗi bằng bất kỳ ngôn ngữ mong muốn nào. Hiển thị đầu ra bằng cách sử dụng in() bản tường trình.


from googletrans import Translatorntranslator = Translator()nprint(translator.detect('이 문장은 한글로 쓰여졌습니다.'))nprint(translator.detect('この文章は日本語で書かれました。'))nprint(translator.detect('This sentence is written in English.'))

Đoạn mã Python này tạo ra đầu ra sau:

Sử dụng Googletrans để phát hiện các ngôn ngữ

Nó hiển thị từ viết tắt của ngôn ngữ được phát hiện, chẳng hạn như vi Tiếng Anh và hiển thị độ chính xác mà nó đã phát hiện ngôn ngữ.

Sử dụng Googletrans để tự động phát hiện và dịch sang ngôn ngữ mong muốn

Nhập khẩu Người phiên dịch từ Google dịch module và chuyển một số dòng văn bản mà bạn muốn chuyển đổi. Tạo một thể hiện của Người phiên dịch. Lấy hai tham số, văn bản đóng vai trò là nguồn và đích, ngôn ngữ bạn muốn chuyển đổi sang và chuyển nó tới dịch() phương pháp.

Các dịch() tự động phát hiện và dịch văn bản của bạn sang ngôn ngữ bạn muốn. Hiển thị văn bản đã dịch. Điều này sẽ hiển thị ngôn ngữ nguồn, ngôn ngữ đích và văn bản đã dịch. Bạn có thể sử dụng chức năng văn bản để chỉ hiển thị văn bản đã dịch.


from googletrans import Translatorntest = ''' आयरन मैन मार्वल कॉमिक्स का सुपर हीरो है। चरित्र लेखक और संपादक स्टैन ली द्वारा बनाया गया था,nऔर इसकी स्क्रिप्ट लारी लिबियर द्वारा विकसित की गई थी,nऔर डिजाइन कलाकार डॉन हैक और जैक किर्बी द्वारा बनाया गया था।nचरित्र ने अपनी पहली उपस्थिति टेल्स ऑफ सस्पेंस #३९ (कवर मार्च १९६३) में दर्ज की। '''ntranslator = Translator()ntranslated = translator.translate(test, dest = 'en')nprint(translated.text)

Đầu ra để tự động phát hiện và dịch ngôn ngữ là:

Sử dụng Googletrans để dịch ngôn ngữ

Sử dụng Googletrans để thực hiện dịch hàng loạt

Bạn có thể thực hiện dịch hàng loạt ngôn ngữ. Để thực hiện điều này, hãy nhập mô-đun cần thiết và tạo một phiên bản của Người phiên dịch. Sử dụng dịch và chuyển danh sách các chuỗi văn bản cùng với từ viết tắt ngôn ngữ mong muốn mà bạn muốn chuyển đổi ngôn ngữ thành.

Lặp lại đối tượng được trả về và sử dụng hàm gốc để hiển thị văn bản gốc và tham số văn bản để hiển thị văn bản đã dịch.


from googletrans import Translatorntranslator = Translator()ntranslations = translator.translate(['What do you know?', 'Is this true?', 'We will eat a burger tomorrow'], dest='hi')nfor translation in translations:n print(translation.origin, ' -> ', translation.text)

Đầu ra cho Googletrans thực hiện Dịch hàng loạt là:

Sử dụng Googletrans để dịch hàng loạt ngôn ngữ

Cách dịch từ ngôn ngữ này sang ngôn ngữ khác bằng âm thanh

Bạn cũng có thể sử dụng giọng nói của mình để tương tác với người dịch và xây dựng một phiên bản dịch thời gian thực đơn giản của Trợ lý Google. Để làm như vậy, nhập khẩu nhận dạng giọng nói mô-đun có bí danh là mùa xuân. Nhập khẩu Google dịch thư viện dịch và gTTS (Google Text-to-Speech) để chuyển đổi văn bản đã dịch thành tệp âm thanh mà bạn có thể nghe được. Nhập khẩu hệ điều hành để lưu tệp âm thanh.


import speech_recognition as sprnfrom googletrans import Translatornfrom gtts import gTTSnimport os

Tạo một đối tượng lớp của Nhận dạng để nhận dạng các từ mà người dùng nói làm đầu vào và một đối tượng khác để khởi tạo micrô để thu giọng nói.


recog1 = spr.Recognizer()nmc = spr.Microphone()

Sử dụng với tuyên bố như là một phần của xử lý ngoại lệ. Với đối tượng micrô là nguồn, hãy thực hiện các thao tác này. Khởi tạo đối tượng dịch để dịch. Đặt nguồn và ngôn ngữ đích mong muốn của bạn. Thông báo cho người dùng nói điều gì đó bằng cách sử dụng câu lệnh in.

Sử dụng điều chỉnh_for_ambient_noise() phương pháp hiệu chỉnh lần đầu tiên nó bắt đầu nghe. Bạn làm điều này vì thuộc tính ngưỡng của phiên bản có thể được đặt thành giá trị cao hơn và sau đó được điều chỉnh theo giọng nói nghe được. Việc hiệu chỉnh này sẽ tự động đặt ngưỡng này thành giá trị thấp hơn.

Sử dụng thuộc tính nghe để ghi lại một cụm từ. Chương trình ghi lại giọng nói cho đến khi có vài giây im lặng hoặc không còn âm thanh đầu vào. Sử dụng nhận diện_google() để sử dụng Google Web API và nhận dạng giọng nói từ nguồn âm thanh. Ngoài ra, bạn cũng có thể sử dụng Bing, IBM, Sphinx và Wit.


with mc as source:n translator = Translator()n from_lang = 'en'n to_lang = 'hi'n print("Speak something...")n recog1.adjust_for_ambient_noise(source, duration=0.2)n audio = recog1.listen(source)n get_sentence = recog1.recognize_google(audio)

Hiển thị cụm từ được nhận dạng từ âm thanh. Chuyển câu, ngôn ngữ nguồn và ngôn ngữ đích cho dịch() hàm số. Hiển thị văn bản đã dịch bằng cách gọi tham số văn bản và hiển thị nó bằng cách sử dụng in bản tường trình.


print("Phrase to be Translated :" + get_sentence)n text_to_translate = translator.translate(get_sentence,n src=from_lang,n dest=to_lang)n text = text_to_translate.textn print("The translated text is: ", text)

Cuối cùng, sử dụng gTTS để chuyển văn bản thành giọng nói. Truyền văn bản, ngôn ngữ để đọc và tùy ý đặt tham số chậm thành sai. Lưu giọng nói dưới dạng tệp mp3 và sử dụng hệ điều hành mô-đun để chạy tệp âm thanh đã lưu.


speak = gTTS(text=text, lang=to_lang, slow=False)n speak.save("captured_voice.mp3")n os.system("start captured_voice.mp3")

Dòng cuối cùng của chương trình này yêu cầu bắt đầu lệnh để phát tệp mp3. Bạn có thể cần phải thay thế lệnh này bằng một lệnh khác, tùy thuộc vào môi trường cục bộ của bạn. Ví dụ: trên macOS, bạn có thể sử dụng chơi đùa yêu cầu.

Đầu ra bạn nhận được để dịch từ ngôn ngữ này sang ngôn ngữ khác bằng âm thanh là:

Dịch câu bằng khẩu lệnh

Các lựa chọn thay thế cho Google Dịch

Mặc dù Google Dịch là trang web phổ biến nhất để dịch, nhưng nó có khả năng tùy chỉnh hạn chế nên có thể không phù hợp với một số trường hợp sử dụng.

Nếu Google Dịch không phục vụ nhu cầu của bạn, bạn có thể khám phá các giải pháp thay thế như iTranslate, Baidu Translate, Liguee và DeepL. Chúng miễn phí, hỗ trợ nhiều nền tảng và có thể phù hợp hơn cho mục đích sử dụng của bạn.

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *