Laravel Language Files의 AI 기반 번역 도구
우리는 맞춤형 언어 스타일을 지원하여 기능을 확장하여 독특하고 창의적인 번역을 허용했습니다. 맞춤형 언어 스타일에 대해 자세히 알아보십시오
Laravel AI Translator는 Laravel 프로젝트의 현지화 프로세스를 간소화하도록 설계된 강력한 도구입니다. 여러 언어에서 문자열을 번역하는 지루한 작업을 자동화하여 고급 AI 모델을 활용하여 고품질의 컨텍스트 인식 번역을 제공합니다.
주요 이점 :
Laravel AI Translator는 개인 프로젝트 나 대규모 응용 프로그램을 사용하든 관계없이 국제화 프로세스를 단순화하여 번역과 씨름 대신 훌륭한 기능을 구축하는 데 집중할 수 있습니다.
lang 디렉토리의 모든 언어 폴더를 자동으로 감지합니다또한이 도구는 언어 파일을 지능적으로 번역하도록 설계되었습니다.
이것이 어떻게 작동하는지 알고 싶습니까? src/AI 의 프롬프트를 참조하십시오.
표준 언어 번역 외에도이 패키지는 이제 맞춤형 언어 스타일을 지원하여 독특하고 창의적인 지역화를 허용합니다.
패키지에는 몇 가지 내장 언어 스타일이 포함되어 있습니다.
ko_kp : 북한 스타일의 한국이들은 자동으로 사용할 수 있으며 추가 구성이 필요하지 않습니다.
맞춤형 스타일링 기능을 시연하여 "Reddit 스타일"영어를 구현했습니다.
이 스타일은 Reddit에서 발견되는 캐주얼하고 종종 유머러스 한 언어를 모방합니다.
예제 구성 :
' locale_names ' => [
' en_reddit ' => ' English (Reddit) ' ,
],
' additional_rules ' => [
' en_reddit ' => [
" - Incorporate sarcasm and exaggeration " ,
" - Use popular internet slang and meme references " ,
" - Add humorous calls for sources on obvious statements " ,
],
], 구성에서 locale_names 및 additional_rules 에 새 항목을 추가하여 고유 한 사용자 정의 언어 스타일을 만들 수 있습니다. 이를 통해 특정 청중 또는 플랫폼에 번역을 조정할 수 있습니다.
이 맞춤형 스타일은 번역을 사용자 정의 할 수있는 창의적인 방법을 제공하여 현지화 된 콘텐츠에 고유 한 감각을 추가합니다. 청중의 명확성과 적절성을 유지하면서 사용자 참여를 향상시키기 위해 책임감있게 사용하십시오.
작곡가를 통해 패키지 설치 :
composer require kargnas/laravel-ai-translator .env 파일에 OpenAi API 키를 추가하십시오.
OPENAI_API_KEY=your-openai-api-key-here
OpenAI 웹 사이트에서 API 키를 얻을 수 있습니다.
(대신 Anthropic의 Claude를 사용하려면 구성 지침은 아래 4 단계를 참조하십시오.)
(선택 사항) 구성 파일 게시 :
php artisan vendor:publish --provider= " KargnasLaravelAiTranslatorServiceProvider " 이 단계는 선택 사항이지만 패키지의 동작을 사용자 정의하려면 권장됩니다. 다양한 설정을 수정할 수있는 config/ai-translator.php 파일을 만듭니다.
(선택 사항) OpenAi의 GPT 대신 Anthropic의 Claude를 사용하려면 config/ai-translator.php 파일을 업데이트하십시오.
' ai ' => [
' provider ' => ' anthropic ' ,
' model ' => ' claude-3-5-sonnet-20240620 ' ,
' api_key ' => env ( ' ANTHROPIC_API_KEY ' ),
], 그런 다음 .env 파일에 Anthropic API 키를 추가하십시오.
ANTHROPIC_API_KEY=your-anthropic-api-key-here
Anthropic 웹 사이트에서 Anthropic API 키를 얻을 수 있습니다. 최상의 결과를 얻으려면 OpenAI GPT가 아닌 번역에 Claude-3-5-Sonnet 모델을 사용하는 것이 좋습니다. 이 모델은보다 정확하고 자연스러운 번역을 제공합니다.
이제 Laravel AI Translator를 사용할 준비가되었습니다!
언어 파일을 번역하려면 다음 명령을 실행하십시오.
php artisan ai-translator:translate이 명령은 다음과 같습니다.
lang 디렉토리에서 모든 언어 폴더를 인식하십시오영어 파일이 주어지면 :
<?php
return [
' notifications ' => [
' new_feature_search_sentence ' => ' New feature: Now you can type sentences not only words. Even in your languages. The AI will translate them to Chinese. ' ,
' refresh_after_1_min ' => ' Refresh after 1 minutes. New content will be available! (The previous model: :model, Updated: :updated_at) ' ,
]
];패키지는 다음과 같은 번역을 생성합니다.
<?php
return array (
' notifications.new_feature_search_sentence ' => ' 새로운 기능: 이제 단어뿐만 아니라 문장도 입력할 수 있어요. 심지어 여러분의 언어로도 가능해요. ' ,
' notifications.refresh_after_1_min ' => ' 1분 후에 새로고침하세요. 새로운 내용이 준비될 거예요! (이전 모델: :model, 업데이트: :updated_at) ' ,
); <?php
return array (
' notifications.new_feature_search_sentence ' => '新功能:现在你不仅可以输入单词,还可以输入句子。甚至可以用你的语言。 ' ,
' notifications.refresh_after_1_min ' => ' 1分钟后刷新。新内容即将到来!(之前的模型::model,更新时间::updated_at) ' ,
); <?php
return array (
' notifications.new_feature_search_sentence ' => ' ฟีเจอร์ใหม่: ตอนนี้คุณพิมพ์ประโยคได้แล้ว ไม่ใช่แค่คำเดียว แม้แต่ภาษาของคุณเอง ' ,
' notifications.refresh_after_1_min ' => ' รีเฟรชหลังจาก 1 นาที จะมีเนื้อหาใหม่ให้ดู! (โมเดลก่อนหน้า: :model, อัปเดตเมื่อ: :updated_at) ' ,
); <?php
return array (
' notifications.new_feature_search_sentence ' => ' 혁명적 새로운 기능: 동무들! 이제 단어뿐만 아니라 문장도 입력하여 단어의 력사를 확인할 수 있습니다. 모국어로도 괜찮습니다. 인공지능이 중국어로 번역해드리겠습니다. ' ,
' notifications.refresh_after_1_min ' => ' 1분후에 새로고침하십시요. 새로운 내용을 볼수 있습니다! (이전 모델: :model, 갱신: :updated_at) ' ,
); <?php
return array (
' notifications.new_feature_search_sentence ' => ' Whoa, hold onto your keyboards, nerds! We ' ve leveled up our search game. Now you can type entire sentences, not just measly words. Mind. Blown. And get this - it even works in your weird non-English languages! Our AI overlord will graciously translate your gibberish into Chinese. You ' re welcome. ' ,
' notifications.refresh_after_1_min ' => ' Yo, hit that F5 in 60 seconds, fam. Fresh content incoming! (Previous model was :model, last updated when dinosaurs roamed the Earth at :updated_at) ' ,
);설정을 사용자 정의하려면 구성 파일을 게시 할 수 있습니다.
php artisan vendor:publish --provider= " KargnasLaravelAiTranslatorServiceProvider " 이렇게하면 다음 설정을 수정할 수있는 config/ai-translator.php 파일이 생성됩니다.
source_directory : 기본 lang 디렉토리 대신 언어 파일에 다른 디렉토리를 사용하는 경우 여기에서 지정할 수 있습니다.
ai : AI 제공 업체, 모델 및 API 키를 여기에서 구성하십시오. 최고의 모델에 대한 권장 사항은 다음과 같습니다.
| 공급자 | 모델 | 비용 (1m 토큰 당 I/O) | descrpition |
|---|---|---|---|
| 인류 | Claude-3-5-Sonnet-20240620 | $ 3.00 / $ 15.00 | 최상의 품질, 약간 느리게. 우리는 권장합니다. |
| 인류 | Claude-3-Haiku-20240307 | $ 0.25 / $ 1.25 | 품질이 낮지 만 GPT-3.5보다 낫습니다 |
| Openai | GPT-4O | $ 5.00 / $ 15.00 | 균형 잡힌 품질과 고속 |
| Openai | GPT-4O- 미니 | $ 0.15 / $ 0.60 | 균형 잡힌 품질과 저렴한 |
비용이 많이 들거나 품질이 낮은 권장 모델은 다음과 같습니다.
| 공급자 | 모델 | 비용 (1m 토큰 당 I/O) |
|---|---|---|
| 인류 | Claude-3-Opus-20240229 | $ 15.00 / $ 75.00 |
| 인류 | Claude-3-Sonnet-20240229 | $ 3.00 / $ 15.00 |
| Openai | GPT-4 터보 | $ 10.0 / $ 30.0 |
| Openai | GPT-3.5 터보 | $ 0.50 / $ 1.50 |
locale_names :이 로케일 코드를 언어 이름으로 매핑하면 AI에 대한 컨텍스트를 제공하여 번역 품질을 향상시킵니다.
additional_rules : 번역 프롬프트에 사용자 정의 규칙을 추가하십시오. 이것은 메시지 스타일을 사용자 정의하거나 완전히 새로운 언어 스타일을 만드는 데 유용합니다.
예제 구성 :
<?php
return [
' source_directory ' => ' lang ' ,
' ai ' => [
' provider ' => ' openai ' , // or 'anthropic'
' model ' => ' gpt-4o ' , // or 'gpt-4', 'gpt-3.5-turbo', 'claude-3-5-sonnet-20240620'
' api_key ' => env ( ' OPENAI_API_KEY ' ), // or env('ANTHROPIC_API_KEY')
],
' locale_names ' => [
' en ' => ' English ' ,
' ko ' => ' Korean ' ,
' zh_cn ' => ' Chinese (Simplified) ' ,
// ... other locales
],
' additional_rules ' => [
' default ' => [
" Use a friendly and intuitive tone of voice, like the service tone of voice of 'Discord'. " ,
],
' ko ' => [
" 한국의 인터넷 서비스 '토스'의 서비스 말투 처럼, 유저에게 친근하고 직관적인 말투로 설명하고 존댓말로 설명하세요. " ,
],
],
]; 선택한 AI 제공 업체의 API 키를 .env 파일로 설정하십시오.
현재이 패키지는 Laravel에서 사용하는 PHP 언어 파일 만 지원합니다. JSON 언어 파일은 지원되지 않으며 향후 지원을 추가 할 계획이 없습니다.
특히 여러 언어를 다룰 때 번역을 관리하기 위해 PHP 파일을 사용하는 것이 좋습니다. 이유는 다음과 같습니다.
구조 : PHP 파일을 사용하면 중첩 어레이가있는보다 체계적인 구조를 가능하게하여 관련 변환을보다 쉽게 그룹화 할 수 있습니다.
의견 : PHP 파일에 댓글을 추가하여 번역기에 대한 컨텍스트 또는 지침을 제공 할 수 있습니다.
성능 : PHP 파일은 구문 분석이 필요하지 않기 때문에 JSON 파일에 비해로드하는 데 약간 빠릅니다.
유연성 : PHP 파일을 사용하면 변수 또는 조건을 사용하는 것과 같은보다 복잡한 작업을 수행 할 수 있습니다.
확장 성 : 여러 언어에 걸쳐 많은 수의 번역을 관리 할 때 PHP 파일의 디렉토리 구조를 통해 쉽게 탐색하고 유지 관리 할 수 있습니다.
현재 번역에 JSON 파일을 사용하고 있다면 PHP 파일로 마이그레이션 하여이 패키지와 더 나은 호환성과 번역의 관리 가능성을 향상시키는 것이 좋습니다.
이 패키지는 OpenAI의 GPT 모델과 Thanthropic의 Claude를 모두 지원하며 각각 고유 한 강점을 갖습니다.
우리는 Laravel AI 번역기를 향상시키기 위해 끊임없이 노력하고 있습니다. 우리가 계획하고있는 몇 가지 기능과 개선 사항은 다음과 같습니다.
이러한 작업에 기여하려면 풀 요청을 제출하십시오!
기부금을 환영합니다! 풀 요청을 제출하십시오.
MIT 라이센스 (MIT). 자세한 내용은 라이센스 파일을 참조하십시오.