llmtranslate adalah pustaka Python yang dirancang untuk mengidentifikasi bahasa teks tertentu dan menerjemahkan teks antara beberapa bahasa menggunakan GPT-4o OpenAI. Perpustakaan ini sangat berguna untuk menerjemahkan teks yang berisi berbagai bahasa ke dalam satu bahasa target.
Dokumentasi komprehensif, termasuk informasi penggunaan terperinci, tersedia di https://llm-translate.com
Untuk menggunakan perpustakaan ini, Anda harus memiliki kunci API OpenAI. Kunci ini memungkinkan perpustakaan memanfaatkan GPT-4o OpenAI untuk terjemahan dan deteksi bahasa.
Anda dapat menginstal perpustakaan llmtranslate dari PyPI:
pip install llmtranslate
Sebelum menggunakan llmtranslate dengan OpenAI, Anda perlu menyetel kunci API OpenAI Anda. Anda dapat melakukan ini dengan membuat instance kelas TranslatorOpenAI.
from llmtranslate import TranslatorOpenAI
# Set your OpenAI API key
translator = TranslatorOpenAI ( api_key = "YOUR_OPENAI_API_KEY" , model = "gpt-4o-mini" )
Untuk mendeteksi bahasa teks tertentu:
from llmtranslate import TranslatorOpenAI
# Set your OpenAI API key
translator = TranslatorOpenAI ( api_key = "YOUR_OPENAI_API_KEY" , model = "gpt-4o-mini" )
# Detect language
detected_language = translator . get_text_language ( "Hello world" )
if detected_language is not None :
print ( detected_language . ISO_639_1_code ) # Output: 'en'
print ( detected_language . ISO_639_2_code ) # Output: 'eng'
print ( detected_language . ISO_639_3_code ) # Output: 'eng'
print ( detected_language . language_name ) # Output: 'English'
Penting
Jika penerjemah tidak mendeteksi bahasa apa pun, ia akan mengembalikan Tidak Ada.
Sebelum menggunakan hasil deteksi penerjemah, Anda harus memeriksa apakah hasilnya benar atau Tidak Ada
Untuk menerjemahkan teks yang berisi beberapa bahasa ke bahasa lain, Anda perlu memberikan kode bahasa ISO 639 untuk bahasa target. Untuk daftar semua kode bahasa ISO 639, Anda dapat merujuk ke situs web daftar kode ISO 639-1 ini.
from llmtranslate import TranslatorOpenAI
# Set your OpenAI API key
translator = TranslatorOpenAI ( api_key = "YOUR_OPENAI_API_KEY" , model = "gpt-4o-mini" )
# Translate text
translated_text = translator . translate (
text = "Cześć jak się masz? Meu nome é Adam" ,
to_language = "en" # Use ISO 639-1 code for the target language
)
print ( translated_text ) # Output: "Hello how are you? My name is Adam"
Berikut adalah contoh lengkap yang menunjukkan cara menggunakan perpustakaan:
from llmtranslate import TranslatorOpenAI
# Initialize the translator with your OpenAI API key
translator = TranslatorOpenAI ( api_key = "YOUR_OPENAI_API_KEY" , model = "gpt-4o-mini" )
# Detect language
detected_language = translator . get_text_language ( "jak ty się nazywasz" )
if detected_language is not None :
print ( detected_language . ISO_639_1_code ) # Output: 'pl'
print ( detected_language . ISO_639_2_code ) # Output: 'pol'
print ( detected_language . ISO_639_3_code ) # Output: 'pol'
print ( detected_language . language_name ) # Output 'Polish'
# Translate text
translated_text = translator . translate (
text = "Cześć jak się masz? Meu nome é Adam" ,
to_language = "en"
)
print ( translated_text ) # Output: "Hello how are you? My name is Adam"
Pustaka llmtranslate menyediakan akses ke berbagai model OpenAI untuk terjemahan. Berikut adalah model yang didukung dan kasus penggunaannya:
from llmtranslate import TranslatorOpenAI
# Recommended for precise translation, high-precision model
translator = TranslatorOpenAI ( api_key = "YOUR_OPENAI_API_KEY" , model = "gpt-4o" )
# A budget-friendly option, balancing cost and quality
translator = TranslatorOpenAI ( api_key = "YOUR_OPENAI_API_KEY" , model = "gpt-4o-mini" )
Pustaka llmtranslate
menyediakan metode asinkron untuk memungkinkan Anda melakukan tugas deteksi dan terjemahan bahasa secara efisien dalam lingkungan asinkron. Jika aplikasi Anda menggunakan asyncio
atau kerangka kerja asinkron lainnya, Anda dapat memanfaatkan sepenuhnya metode async ini untuk menghindari pemblokiran program Anda sambil menunggu deteksi bahasa atau tugas terjemahan selesai.
Contoh berikut menunjukkan cara menggunakan metode async_get_text_language
dan async_translate_text
:
import asyncio
from llmtranslate import TranslatorOpenAI
# Initialize the translator with your OpenAI API key
translator = TranslatorOpenAI ( api_key = "YOUR_OPENAI_API_KEY" , model = "gpt-4o-mini" )
# Async function to detect language and translate text
async def detect_and_translate ():
# Detect language asynchronously
detected_language = await translator . async_get_text_language ( "Hola, ¿cómo estás?" )
if detected_language is not None :
print ( detected_language . ISO_639_1_code ) # Output: 'es'
print ( detected_language . language_name ) # Output: 'Spanish'
# Translate text asynchronously
translated_text = await translator . async_translate (
text = "Cześć jak się masz? Meu nome é Adam" ,
to_language = "en" # Use ISO 639-1 code for the target language
)
print ( translated_text ) # Output: "Hello how are you? My name is Adam"
# Run the async function
asyncio . run ( detect_and_translate ())
async_get_text_language(text: str)
: Metode ini mendeteksi bahasa teks yang disediakan secara asinkron.
text
: Teks masukan yang bahasanya perlu dideteksi.TextLanguage
berisi kode ISO 639-1, ISO 639-2, ISO 639-3 bahasa yang terdeteksi, dan nama bahasa.Contoh :
detected_language = await translator . async_get_text_language ( "Hallo, wie geht's?" )
async_translate_text(text: str, to_language: str)
: Metode ini menerjemahkan teks masukan secara asinkron ke bahasa target yang ditentukan.
text
: Teks masukan yang akan diterjemahkan.to_language
: Bahasa target dalam kode ISO 639-1.Contoh :
translated_text = await translator . async_translate ( "Bonjour tout le monde" , "en" )
Penggunaan metode asinkron memungkinkan aplikasi Anda menangani beberapa tugas secara bersamaan, sehingga meningkatkan efisiensi, terutama saat menangani teks dalam jumlah besar atau melakukan beberapa terjemahan secara bersamaan. Perilaku non-pemblokiran ini ideal untuk layanan web, API, dan skenario apa pun yang memerlukan respons tinggi.
Ingatlah bahwa metode asinkron harus dipanggil dalam fungsi async
. Untuk menjalankannya, Anda dapat menggunakan asyncio.run()
seperti yang ditunjukkan pada contoh di atas.
Jika Anda menggunakan layanan OpenAI Azure, Anda perlu mengatur kunci API Azure OpenAI Anda bersama dengan parameter tambahan yang diperlukan. Gunakan kelas TranslatorAzureOpenAI untuk ini.
from llmtranslate import TranslatorAzureOpenAI
# Set your Azure OpenAI API key and related parameters
translator = TranslatorAzureOpenAI (
azure_endpoint = "YOUR_AZURE_ENDPOINT" ,
api_key = "YOUR_AZURE_API_KEY" ,
api_version = "YOUR_API_VERSION" ,
azure_deployment = "YOUR_AZURE_DEPLOYMENT"
)
llmtranslate mendukung semua bahasa yang didukung oleh GPT-4o. Untuk daftar lengkap kode bahasa, Anda dapat mengunjungi website ISO 639-1.
Berikut adalah tabel yang menunjukkan bahasa mana yang didukung oleh gpt-4o dan gpt4o-mini:
Nama Bahasa | Kode Bahasa | Didukung oleh gpt-4o | Didukung oleh gpt4o-mini |
---|---|---|---|
Bahasa inggris | en | Ya | Ya |
Mandarin Cina | zh | Ya | Ya |
Hindi | Hai | Ya | Ya |
Spanyol | yaitu | Ya | Ya |
Perancis | NS | Ya | Ya |
Jerman | de | Ya | Ya |
Rusia | ru | Ya | Ya |
Arab | ar | Ya | Ya |
Italia | dia | Ya | Ya |
Korea | ko | Ya | Ya |
Punjabi | pa | Ya | Ya |
Benggala | bn | Ya | Ya |
Portugis | pt | Ya | Ya |
Indonesia | pengenal | Ya | Ya |
bahasa Urdu | kamu | Ya | Ya |
Persia (Farsi) | fa | Ya | Ya |
Vietnam | vi | Ya | Ya |
Polandia | hal | Ya | Ya |
Samoa | sm | Ya | Ya |
Thai | th | Ya | Ya |
Ukraina | inggris | Ya | Ya |
Turki | tr | Ya | Ya |
Maori | mi | TIDAK | TIDAK |
Norwegia | TIDAK | Ya | Ya |
Belanda | tidak | Ya | Ya |
Orang yunani | el | Ya | Ya |
Rumania | ro | Ya | Ya |
Swahili | sw | Ya | Ya |
Hongaria | huh | Ya | Ya |
Ibrani | Dia | Ya | Ya |
Swedia | St | Ya | Ya |
Ceko | cs | Ya | Ya |
Finlandia | fi | Ya | Ya |
Amharik | pagi | TIDAK | TIDAK |
bahasa Tagalog | tl | Ya | Ya |
Birma | -ku | Ya | Ya |
Tamil | ta | Ya | Ya |
Kannada | buku | Ya | Ya |
pasto | hal | Ya | Ya |
Yoruba | kamu | Ya | Ya |
Melayu | MS | Ya | Ya |
Kreol Haiti | ht | Ya | Ya |
Nepal | tidak | Ya | Ya |
Sinhala | ya | Ya | Ya |
Katalan | ca | Ya | Ya |
Malagasi | mg | Ya | Ya |
Latvia | lv | Ya | Ya |
Lithuania | lt | Ya | Ya |
Estonia | et | Ya | Ya |
Somalia | Jadi | Ya | Ya |
harimaunya | ti | TIDAK | TIDAK |
Breton | saudara | TIDAK | TIDAK |
Fiji | fj | Ya | TIDAK |
Malta | mt | Ya | Ya |
Korsika | bersama | Ya | Ya |
Luksemburg | pon | Ya | Ya |
orang oksitan | ok | Ya | Ya |
bahasa Wales | cy | Ya | Ya |
bahasa Albania | persegi | Ya | Ya |
Makedonia | mk | Ya | Ya |
Islandia | adalah | Ya | Ya |
Slovenia | sl | Ya | Ya |
Galisia | jam | Ya | Ya |
Basque | uni eropa | Ya | Ya |
Azerbaijan | az | Ya | Ya |
Uzbekistan | kamus | Ya | Ya |
Kazakh | kk | Ya | Ya |
Mongolia | M N | Ya | Ya |
Tibet | bo | TIDAK | TIDAK |
Khmer | km | Ya | TIDAK |
Laos | lihatlah | Ya | Ya |
Telugu | te | Ya | Ya |
Marathi | Tn. | Ya | Ya |
Chichewa | tidak | Ya | Ya |
Esperanto | eo | Ya | Ya |
Kurdi | ku | TIDAK | TIDAK |
Tajik | tg | Ya | Ya |
Xhosa | xh | Ya | TIDAK |
Yiddi | ya | Ya | Ya |
Zulu | zu | Ya | Ya |
Sunda | su | Ya | Ya |
Tatar | tt | Ya | Ya |
Quechua | qu | TIDAK | TIDAK |
Uighur | jelek | TIDAK | TIDAK |
Wolof | wo | TIDAK | TIDAK |
Tswana | tn | Ya | Ya |
llmtranslate dilisensikan di bawah Lisensi MIT. Lihat file LISENSI untuk lebih jelasnya.