Menerapkan terjemahan Google Cloud AI API vs Google Translate untuk Laravel

Menerapkan terjemahan Google Cloud AI API vs Google Translate untuk Laravel
Daftar isi

Bagi Anda pemilik Laravel , menyediakan konten terjemahan yang akurat dan natural sangat penting untuk menerjemahkan website Anda dan menawarkan pengalaman pengguna yang baik.

Untungnya, beberapa layanan terjemahan otomatis tersedia untuk membantu pengembang mengatasi tantangan ini, termasuk Google Cloud AI API Translation dan Google Translate. Kedua layanan tersebut menawarkan kemampuan penerjemahan menggunakan teknologi mesin.

Pada artikel ini, kita akan mengeksplorasi perbedaan utama antara penerapan Google Cloud AI Translation dan aplikasi Google Translate untuk Laravel dan merekomendasikan layanan terjemahan terbaik untuk Laravel .

Apa itu terjemahan Google Cloud AI API & Google Terjemahan?

Sebelum masuk ke pembahasan, kita akan membahas masing-masing pengertian Google Cloud AI API dan terjemahan Google Translate.

Terjemahan Google Cloud AI API

Terjemahan Google Cloud AI - Menerapkan terjemahan Google Cloud AI API vs Google Terjemahan untuk Laravel

Terjemahan Google Cloud AI API adalah layanan terjemahan otomatis yang disediakan oleh Google Cloud Platform. Layanan ini memanfaatkan kecerdasan buatan (AI) dan teknologi pembelajaran mesin terbaru untuk menghasilkan terjemahan teks, suara, dan dokumen yang akurat dan alami.

Google Cloud AI API Translation menggunakan model terjemahan neural berdasarkan pembelajaran mendalam, yang memungkinkannya menangkap nuansa dan konteks bahasa dengan lebih baik, sehingga menghasilkan terjemahan yang lebih idiomatis dan selaras dengan penggunaan bahasa sebenarnya. Selain itu, penggunaan Google Cloud AI Translation hingga 500.000 karakter tidak dikenai biaya, sedangkan 75.000 karakter berikutnya akan dikenakan biaya sebesar $20 per juta karakter.  

penerjemah Google

Google Terjemahan - Menerapkan terjemahan Google Cloud AI API vs Google Terjemahan untuk Laravel

Sementara itu, Google Translate merupakan layanan terjemahan teks otomatis yang sudah lama berdiri dan dikenal luas. Ini menggunakan pendekatan terjemahan statistik yang lebih tradisional, yang menghasilkan terjemahan berdasarkan pola dan probabilitas yang dipelajari dari kumpulan data pelatihan yang besar.

Meskipun tidak secanggih Google Cloud AI API Translation dalam hal akurasi dan penanganan nuansa bahasa, Google Translate tetap menjadi pilihan populer karena kemudahan penggunaan dan ketersediaan gratis untuk penggunaan non-komersial.

Menerapkan terjemahan Google Cloud AI API di Laravel

Beberapa layanan terjemahan, termasuk Linguise , menggunakan AI Translation untuk menerjemahkan situs web.

Layanan terjemahan bahasa ini menggunakan cloud AI API sebagai salah satu teknologi penerjemahannya. Berikut langkah implementasi pada Laravel . Kami berasumsi di sini bahwa Anda sudah memiliki Laravel .

Buat akun Linguise

Untuk menggunakan Linguise , Anda harus mendaftarkan akun terlebih dahulu. Anda dapat melakukan ini secara gratis atau berlangganan selama satu bulan atau satu tahun. Anda hanya perlu memberikan informasi seperti email, nama pengguna, dan kata sandi Anda.

Tambahkan info situs web Laravel

Setelah itu, tambahkan informasi tentang website yang akan Anda gunakan, masukkan info akun Linguise dan URL web Anda, pilih platform Laravel , dan tambahkan bahasa default dan bahasa yang ingin Anda tambahkan ke website.

 

Tambahkan Situs Web Domain - Terapkan terjemahan Google Cloud AI API vs Google Translate untuk Laravel

Kemudian unduh skrip PHP melalui tombol berikut dan simpan di komputer lokal Anda.

Unggah dan konfigurasikan skrip PHP

Setelah mengunduh skrip, unzip dan unggah ke folder root tempat Laravel diinstal. Pastikan itu terletak di root instalasi Laravel Anda (biasanya di tempat file CMS Anda berada). Pastikan folder tersebut diberi nama “linguise” (nama default saat folder tersebut di-unzip).

Unggah di Folder Linguise - Implementasikan terjemahan Google Cloud AI API vs Google Translate untuk Laravel

Kemudian, kunci Linguise API harus disalin ke file …/linguise/Configuration.php yang Anda unggah ke server Anda. Edit file dan tempel kunci API Anda di antara tanda kutip, ganti teks REPLACE_BY_YOUR_TOKEN.

Ganti kunci API - Terapkan terjemahan Google Cloud AI API vs Google Terjemahan untuk Laravel

Masukkan skrip pengalih bahasa

Selanjutnya masukkan script alih bahasa yang Anda dapatkan dari Linguise .

Pengalih Bahasa Skrip - Menerapkan terjemahan Google Cloud AI API vs Google Terjemahan untuk Laravel

Dimasukkan ke dalam file front.blade.php di direktori resources/views/layouts/. Berikut ini preview script yang disisipkan.

Front Blade.php - Menerapkan terjemahan Google Cloud AI API vs Google Translate untuk Laravel

Konfigurasikan .htaccess

Terakhir, URL berbasis bahasa perlu dikonfigurasi dalam file .htaccess. Jika file Anda menyertakan “RewriteBase /,” cukup salin dan tempel kode berikut setelah baris tersebut.

				
					<IfModule mod_rewrite.c>
  RewriteEngine On
  RewriteRule ^(af|sq|am|ar|hy|az|eu|be|bn|bs|bg|ca|ceb|ny|zh-cn|zh-tw|co|hr|cs|da|nl|en|eo|et|tl|fi|fr|fy|gl|ka|de|el|gu|ht|ha|haw|iw|hi|hmn|hu|is|ig|id|ga|it|ja|jw|kn|kk|km|ko|ku|ky|lo|la|lv|lt|lb|mk|mg|ms|ml|mt|mi|mr|mn|my|ne|no|ps|fa|pl|pt|pa|ro|ru|sm|gd|sr|st|sn|sd|si|sk|sl|so|es|su|sw|sv|tg|ta|te|th|tr|uk|ur|uz|vi|cy|xh|yi|yo|zu|zz-zz)(?:$|/)(.*)$ linguise/linguise.php?linguise_language=$1&original_url=$2 [L,QSA]
</IfModule>
				
			

Selesai. Sampai di sini, Anda telah berhasil mengimplementasikan Cloud AI API Translation pada Linguise . Sekarang, Anda dapat memeriksa Laravel . Pengalih bahasa default akan muncul, dan Anda dapat menyesuaikan pengalih bahasa untuk Laravel melalui dasbor.

Pengalih bahasa Laravel - Menerapkan terjemahan Google Cloud AI API vs Google Terjemahan untuk Laravel

Implementasikan Google Terjemahan di Laravel

Sekarang kita akan mencoba mengimplementasikan Google Translate di Laravel. Disini kami asumsikan Anda sudah berhasil membuat proyek Laravel dan tinggal menambahkan Google Translate saja.

Langkah-langkah instalasi berikut juga dapat Anda temukan di resmi Laravel .

Instal Paket Penerjemah Google

Untuk menginstal Paket Google Translator, buka prompt proyek dan masukkan perintah berikut. Paket ini akan memungkinkan Anda untuk memanfaatkan fungsi kerja bahasa penerjemah Google.

				
					composer require stichoza/google-translate-php
				
			

Pengaturan Paket Google Translator

Kita harus menyiapkan "paket penerjemah google" di dalam aplikasi. Buka file app.php di folder /config, cari bagian “alias”, dan tambahkan baris kode berikut.

App.php - Menerapkan terjemahan Google Cloud AI API vs Google Translate untuk Laravel
				
					/*
|--------------------------------------------------------------------------
| Class Aliases
|--------------------------------------------------------------------------
|
| This array of class aliases will be registered when this application
| is started. However, feel free to register as many as you wish as
| the aliases are "lazy" loaded so they don't hinder performance.
|
*/

'aliases' => Facade::defaultAliases()->merge([
    // 'Example' => App\Facades\Example::class,
    'GoogleTranslate' => Stichoza\GoogleTranslate\GoogleTranslate::class,
])->toArray(),

				
			

Atur Pengontrol Bahasa

Anda perlu membuat file pengontrol bahasa seperti berikut

				
					php artisan make:controller LangController
				
			

Ini akan membuat file LangController.php di dalam folder /app/Http/Controllers.

Pengontrol bahasa - Menerapkan terjemahan Google Cloud AI API vs Google Translate untuk Laravel
				
					<?php

namespace App\Http\Controllers;

use Illuminate\Contracts\View\View;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\App;

class LangController extends Controller
{
    public function index(): View
    {
        return view('lang');
    }

    public function change(Request $request)
    {
        App::setLocale($request->lang);
        
        session()->put('locale', $request->lang);

        return redirect()->back();
    }
}


				
			

Buat File Templat Pisau

Arahkan ke folder /resources/views dan buat file bernama lang.blade.php. Buka file dan masukkan kode berikut ke dalamnya.

LangBlade.php - Menerapkan terjemahan Google Cloud AI API vs Google Translate untuk Laravel
				
					<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Laravel 10 Create Multi Language Website Tutorial</title> <script type="litespeed/javascript" data-src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script> <script type="application/ld+json" class="gnpub-schema-markup-output">{"@context":"https:\/\/schema.org\/","@type":"NewsArticle","@id":"https:\/\/www.linguise.com\/blog\/guide\/implement-google-cloud-ai-api-translation-vs-google-translate-for-laravel\/#newsarticle","url":"https:\/\/www.linguise.com\/blog\/guide\/implement-google-cloud-ai-api-translation-vs-google-translate-for-laravel\/","image":{"@type":"ImageObject","url":"https:\/\/www.linguise.com\/wp-content\/uploads\/2024\/05\/Implement-Google-Cloud-AI-API-translation-vs-Google-Translate-for-Laravel-150x150.png","width":150,"height":150},"headline":"Implement Google Cloud AI API translation vs Google Translate for Laravel","mainEntityOfPage":"https:\/\/www.linguise.com\/blog\/guide\/implement-google-cloud-ai-api-translation-vs-google-translate-for-laravel\/","datePublished":"2024-05-31T07:32:47+00:00","dateModified":"2024-08-26T19:19:15+00:00","description":"For those of you who own Laravel-based websites, providing accurate and natural translation content is very important to translate your website and offer a good","articleSection":"Guide","articleBody":"For those of you who own Laravel-based websites, providing accurate and natural translation content is very important to translate your website and offer a good user experience.\nFortunately, several automatic translation services are available to help developers overcome this challenge, including Google Cloud AI API Translation and Google Translate. Both services offer translation capabilities using machine technology.\nIn this article, we will explore the main differences between implementing Google Cloud AI Translation and Google Translate for Laravel applications and recommend the best translation services for your Laravel website.&nbsp;\t\t\n\t\t\tWhat are Google Cloud AI API translation &amp; Google Translate?\n\t\t\n\t\tBefore entering into the discussion, we will discuss the respective meanings of Google Cloud AI API and Google Translate translations.\t\t\n\t\t\tGoogle Cloud AI API translation\n\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\tGoogle Cloud AI API Translation is an advanced automatic translation service provided by Google Cloud Platform. This service leverages the latest artificial intelligence (AI) and machine learning technologies to deliver accurate and natural translations of text, voice, and documents.Google Cloud AI API Translation uses neural translation models based on deep learning, which allows it to capture language nuances and context better, providing more idiomatic translations that align with actual language usage. Additionally, using Google Cloud AI Translation for up to 500,000 characters is free of charge, while the next 75,000 characters will incur a cost of $20 per million characters.\u00a0\t\t\n\t\t\tGoogle Translate\n\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\tMeanwhile, Google Translate is a long-standing and widely known automatic text translation service. It uses a more traditional statistical translation approach, which generates translations based on patterns and probabilities learned from large training datasets.Although it is not as advanced as Google Cloud AI API Translation in terms of accuracy and handling language nuances, Google Translate remains a popular choice due to its ease of use and free availability for non-commercial use.\t\t\n\t\t\tImplement Google Cloud AI API translation on Laravel\n\t\t\n\t\tSeveral translation services, including Linguise, use AI Translation cloud technology to translate websites.The language translation service uses cloud AI API as one of its translation technologies. The following are the implementation steps on the Laravel website. We assume here that you already have a ready Laravel project website.\t\t\n\t\t\tCreate Linguise account\n\t\t\n\t\tTo use Linguise, you must register an account first. You can do this for free or subscribe for one month or a year. You only need to provide information such as your email, username, and password.\t\t\n\t\t\tAdd Laravel website info\n\t\t\n\t\tAfter that, add information about the website you will use, enter your Linguise account info and web URL, select the Laravel platform, and add the default language and the language you want to add to the website.\u00a0\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\tThen download the PHP script via the following button and save it on your local computer.\t\t\n\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\tDOWNLOAD PHP-JS TRANSLATION SCRIPT\n\t\t\t\t\t\n\t\t\tUpload and configure the PHP script\n\t\t\n\t\tAfter downloading the script, unzip it and upload it to the root folder where Laravel is installed. Ensure it is located at the root of your Laravel installation (typically where your CMS files are). Ensure the folder is named \"linguise\" (the default name when the folder is unzipped).\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\tThen, the Linguise API key must be copied into the \u2026\/linguise\/Configuration.php file you uploaded to your server. Edit the file and paste your API key between the quotes, replacing the text REPLACE_BY_YOUR_TOKEN.\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\tInsert script of language switcher\t\t\n\t\tNext, insert the language switch script that you got from the Linguise dashboard.\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\tInserted into the front.blade.php file in the resources\/views\/layouts\/ directory. Here is a preview of the inserted script.\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\tConfigure .htaccess\n\t\t\n\t\tLastly, language-based URLs need to be configured in the .htaccess file. If your file includes \"RewriteBase \/,\" simply copy and paste the following code after that line.\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n  RewriteEngine On\n  RewriteRule ^(af|sq|am|ar|hy|az|eu|be|bn|bs|bg|ca|ceb|ny|zh-cn|zh-tw|co|hr|cs|da|nl|en|eo|et|tl|fi|fr|fy|gl|ka|de|el|gu|ht|ha|haw|iw|hi|hmn|hu|is|ig|id|ga|it|ja|jw|kn|kk|km|ko|ku|ky|lo|la|lv|lt|lb|mk|mg|ms|ml|mt|mi|mr|mn|my|ne|no|ps|fa|pl|pt|pa|ro|ru|sm|gd|sr|st|sn|sd|si|sk|sl|so|es|su|sw|sv|tg|ta|te|th|tr|uk|ur|uz|vi|cy|xh|yi|yo|zu|zz-zz)(?:$|\/)(.*)$ linguise\/linguise.php?linguise_language=$1&original_url=$2 [L,QSA]\n\n\t\t\t\t\n\t\t\t\n\t\tDone. At this point, you have successfully implemented cloud AI API Translation on the Linguise service. Now, you can check the Laravel website. A default language switcher will appear, and you can customize the Language switcher for Laravel via the dashboard.\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\tImplement Google Translate on Laravel\t\t\n\t\tNow we will try to implement Google Translate in Laravel. Here we assume that you have successfully created a Laravel project and just need to add Google Translate.You can also find the following installation steps on the official Laravel website.\t\t\n\t\t\tInstall Google Translator Package\n\t\t\n\t\tTo install the Google Translator Package, open the project prompt and input the following command. This package will enable you to utilize the working functions of the google-translator-language.\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\tcomposer require stichoza\/google-translate-php\n\t\t\t\t\n\t\t\t\n\t\t\tSetting of Google Translator Package\n\t\t\n\t\tWe must set up the \"google translator package\" within the the application. Open the app.php file in the \/config folder, find the \"aliases\" section, and add the following line of code.\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\/*\n|--------------------------------------------------------------------------\n| Class Aliases\n|--------------------------------------------------------------------------\n|\n| This array of class aliases will be registered when this application\n| is started. However, feel free to register as many as you wish as\n| the aliases are \"lazy\" loaded so they don't hinder performance.\n|\n*\/\n'aliases' => Facade::defaultAliases()->merge([\n    \/\/ 'Example' => AppFacadesExample::class,\n    'GoogleTranslate' => StichozaGoogleTranslateGoogleTranslate::class,\n])->toArray(),\n\n\t\t\t\t\n\t\t\t\n\t\t\tSetup Language Controller\n\t\t\n\t\tYou need to create a language controller file like the following\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\tphp artisan make:controller LangController\n\t\t\t\t\n\t\t\t\n\t\tIt will create LangController.php file inside \/app\/Http\/Controllers folder.","keywords":"","name":"Implement Google Cloud AI API translation vs Google Translate for Laravel","thumbnailUrl":"https:\/\/www.linguise.com\/wp-content\/uploads\/2024\/05\/Implement-Google-Cloud-AI-API-translation-vs-Google-Translate-for-Laravel-150x150.png","wordCount":809,"timeRequired":"PT3M35S","mainEntity":{"@type":"WebPage","@id":"https:\/\/www.linguise.com\/blog\/guide\/implement-google-cloud-ai-api-translation-vs-google-translate-for-laravel\/"},"author":{"@type":"Person","name":"Tristan","url":"https:\/\/www.linguise.com\/author\/tristan\/","sameAs":[],"image":{"@type":"ImageObject","url":"https:\/\/secure.gravatar.com\/avatar\/50d7238660b192d8d54ebf6367be5e97bb41c24dbd190daae062d931efd351ae?s=96&d=mm&r=g","height":96,"width":96}},"editor":{"@type":"Person","name":"Tristan","url":"https:\/\/www.linguise.com\/author\/tristan\/","sameAs":[],"image":{"@type":"ImageObject","url":"https:\/\/secure.gravatar.com\/avatar\/50d7238660b192d8d54ebf6367be5e97bb41c24dbd190daae062d931efd351ae?s=96&d=mm&r=g","height":96,"width":96}}}</script> </head>

<body>
    <div class="container mt-5">
        <div class="row">
            <div class="col-md-12">
                <div class="card w-75 m-auto">
                    <div class="card-header text-center bg-primary text-white">
                        <h4 style="font-size: 17px;">Laravel 10 Create Multi Language Website Tutorial</h4>
                    </div>
                    <div class="card-body">
                        <div class="row">
                            <div class="col-md-4">
                                <strong>Select Language: </strong>
                            </div>
                            <div class="col-md-4">
                                <select class="form-select changeLang">
                                    <option value="en" {{ session()->get('locale') == 'en' ? 'selected' : '' }}>
                                        English
                                    </option>
                                    <option value="fr" {{ session()->get('locale') == 'fr' ? 'selected' : '' }}>
                                        French
                                    </option>
                                    <option value="ar" {{ session()->get('locale') == 'ar' ? 'selected' : '' }}>
                                        Arabic
                                    </option>
                                    <option value="hi" {{ session()->get('locale') == 'hi' ? 'selected' : '' }}>
                                        Hindi
                                    </option>
                                </select>
                            </div>
                        </div>

                        <div style="margin-top: 20px;">
                            <p>{{ GoogleTranslate::trans('Welcome to Online Web Tutor', app()->getLocale()) }}</p>
                            <p>{{ GoogleTranslate::trans('It is a passionate and innovative Web Development Community dedicated to empowering aspiring web developers with the latest tools and techniques. Our platform offers a comprehensive range of web development courses, including PHP and its frameworks, Node.js, MySQL, Javascript and WordPress.', app()->getLocale()) }}
                            </p>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>

     <script data-no-optimize="1">!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t="undefined"!=typeof globalThis?globalThis:t||self).LazyLoad=e()}(this,function(){"use strict";function e(){return(e=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n,a=arguments[e];for(n in a)Object.prototype.hasOwnProperty.call(a,n)&&(t[n]=a[n])}return t}).apply(this,arguments)}function i(t){return e({},it,t)}function o(t,e){var n,a="LazyLoad::Initialized",i=new t(e);try{n=new CustomEvent(a,{detail:{instance:i}})}catch(t){(n=document.createEvent("CustomEvent")).initCustomEvent(a,!1,!1,{instance:i})}window.dispatchEvent(n)}function l(t,e){return t.getAttribute(gt+e)}function c(t){return l(t,bt)}function s(t,e){return function(t,e,n){e=gt+e;null!==n?t.setAttribute(e,n):t.removeAttribute(e)}(t,bt,e)}function r(t){return s(t,null),0}function u(t){return null===c(t)}function d(t){return c(t)===vt}function f(t,e,n,a){t&&(void 0===a?void 0===n?t(e):t(e,n):t(e,n,a))}function _(t,e){nt?t.classList.add(e):t.className+=(t.className?" ":"")+e}function v(t,e){nt?t.classList.remove(e):t.className=t.className.replace(new RegExp("(^|\\s+)"+e+"(\\s+|$)")," ").replace(/^\s+/,"").replace(/\s+$/,"")}function g(t){return t.llTempImage}function b(t,e){!e||(e=e._observer)&&e.unobserve(t)}function p(t,e){t&&(t.loadingCount+=e)}function h(t,e){t&&(t.toLoadCount=e)}function n(t){for(var e,n=[],a=0;e=t.children[a];a+=1)"SOURCE"===e.tagName&&n.push(e);return n}function m(t,e){(t=t.parentNode)&&"PICTURE"===t.tagName&&n(t).forEach(e)}function a(t,e){n(t).forEach(e)}function E(t){return!!t[st]}function I(t){return t[st]}function y(t){return delete t[st]}function A(e,t){var n;E(e)||(n={},t.forEach(function(t){n[t]=e.getAttribute(t)}),e[st]=n)}function k(a,t){var i;E(a)&&(i=I(a),t.forEach(function(t){var e,n;e=a,(t=i[n=t])?e.setAttribute(n,t):e.removeAttribute(n)}))}function L(t,e,n){_(t,e.class_loading),s(t,ut),n&&(p(n,1),f(e.callback_loading,t,n))}function w(t,e,n){n&&t.setAttribute(e,n)}function x(t,e){w(t,ct,l(t,e.data_sizes)),w(t,rt,l(t,e.data_srcset)),w(t,ot,l(t,e.data_src))}function O(t,e,n){var a=l(t,e.data_bg_multi),i=l(t,e.data_bg_multi_hidpi);(a=at&&i?i:a)&&(t.style.backgroundImage=a,n=n,_(t=t,(e=e).class_applied),s(t,ft),n&&(e.unobserve_completed&&b(t,e),f(e.callback_applied,t,n)))}function N(t,e){!e||0<e.loadingCount||0<e.toLoadCount||f(t.callback_finish,e)}function C(t,e,n){t.addEventListener(e,n),t.llEvLisnrs[e]=n}function M(t){return!!t.llEvLisnrs}function z(t){if(M(t)){var e,n,a=t.llEvLisnrs;for(e in a){var i=a[e];n=e,i=i,t.removeEventListener(n,i)}delete t.llEvLisnrs}}function R(t,e,n){var a;delete t.llTempImage,p(n,-1),(a=n)&&--a.toLoadCount,v(t,e.class_loading),e.unobserve_completed&&b(t,n)}function T(o,r,c){var l=g(o)||o;M(l)||function(t,e,n){M(t)||(t.llEvLisnrs={});var a="VIDEO"===t.tagName?"loadeddata":"load";C(t,a,e),C(t,"error",n)}(l,function(t){var e,n,a,i;n=r,a=c,i=d(e=o),R(e,n,a),_(e,n.class_loaded),s(e,dt),f(n.callback_loaded,e,a),i||N(n,a),z(l)},function(t){var e,n,a,i;n=r,a=c,i=d(e=o),R(e,n,a),_(e,n.class_error),s(e,_t),f(n.callback_error,e,a),i||N(n,a),z(l)})}function G(t,e,n){var a,i,o,r,c;t.llTempImage=document.createElement("IMG"),T(t,e,n),E(c=t)||(c[st]={backgroundImage:c.style.backgroundImage}),o=n,r=l(a=t,(i=e).data_bg),c=l(a,i.data_bg_hidpi),(r=at&&c?c:r)&&(a.style.backgroundImage='url("'.concat(r,'")'),g(a).setAttribute(ot,r),L(a,i,o)),O(t,e,n)}function D(t,e,n){var a;T(t,e,n),a=e,e=n,(t=It[(n=t).tagName])&&(t(n,a),L(n,a,e))}function V(t,e,n){var a;a=t,(-1<yt.indexOf(a.tagName)?D:G)(t,e,n)}function F(t,e,n){var a;t.setAttribute("loading","lazy"),T(t,e,n),a=e,(e=It[(n=t).tagName])&&e(n,a),s(t,vt)}function j(t){t.removeAttribute(ot),t.removeAttribute(rt),t.removeAttribute(ct)}function P(t){m(t,function(t){k(t,Et)}),k(t,Et)}function S(t){var e;(e=At[t.tagName])?e(t):E(e=t)&&(t=I(e),e.style.backgroundImage=t.backgroundImage)}function U(t,e){var n;S(t),n=e,u(e=t)||d(e)||(v(e,n.class_entered),v(e,n.class_exited),v(e,n.class_applied),v(e,n.class_loading),v(e,n.class_loaded),v(e,n.class_error)),r(t),y(t)}function $(t,e,n,a){var i;n.cancel_on_exit&&(c(t)!==ut||"IMG"===t.tagName&&(z(t),m(i=t,function(t){j(t)}),j(i),P(t),v(t,n.class_loading),p(a,-1),r(t),f(n.callback_cancel,t,e,a)))}function q(t,e,n,a){var i,o,r=(o=t,0<=pt.indexOf(c(o)));s(t,"entered"),_(t,n.class_entered),v(t,n.class_exited),i=t,o=a,n.unobserve_entered&&b(i,o),f(n.callback_enter,t,e,a),r||V(t,n,a)}function H(t){return t.use_native&&"loading"in HTMLImageElement.prototype}function B(t,i,o){t.forEach(function(t){return(a=t).isIntersecting||0<a.intersectionRatio?q(t.target,t,i,o):(e=t.target,n=t,a=i,t=o,void(u(e)||(_(e,a.class_exited),$(e,n,a,t),f(a.callback_exit,e,n,t))));var e,n,a})}function J(e,n){var t;et&&!H(e)&&(n._observer=new IntersectionObserver(function(t){B(t,e,n)},{root:(t=e).container===document?null:t.container,rootMargin:t.thresholds||t.threshold+"px"}))}function K(t){return Array.prototype.slice.call(t)}function Q(t){return t.container.querySelectorAll(t.elements_selector)}function W(t){return c(t)===_t}function X(t,e){return e=t||Q(e),K(e).filter(u)}function Y(e,t){var n;(n=Q(e),K(n).filter(W)).forEach(function(t){v(t,e.class_error),r(t)}),t.update()}function t(t,e){var n,a,t=i(t);this._settings=t,this.loadingCount=0,J(t,this),n=t,a=this,Z&&window.addEventListener("online",function(){Y(n,a)}),this.update(e)}var Z="undefined"!=typeof window,tt=Z&&!("onscroll"in window)||"undefined"!=typeof navigator&&/(gle|ing|ro)bot|crawl|spider/i.test(navigator.userAgent),et=Z&&"IntersectionObserver"in window,nt=Z&&"classList"in document.createElement("p"),at=Z&&1<window.devicePixelRatio,it={elements_selector:".lazy",container:tt||Z?document:null,threshold:300,thresholds:null,data_src:"src",data_srcset:"srcset",data_sizes:"sizes",data_bg:"bg",data_bg_hidpi:"bg-hidpi",data_bg_multi:"bg-multi",data_bg_multi_hidpi:"bg-multi-hidpi",data_poster:"poster",class_applied:"applied",class_loading:"litespeed-loading",class_loaded:"litespeed-loaded",class_error:"error",class_entered:"entered",class_exited:"exited",unobserve_completed:!0,unobserve_entered:!1,cancel_on_exit:!0,callback_enter:null,callback_exit:null,callback_applied:null,callback_loading:null,callback_loaded:null,callback_error:null,callback_finish:null,callback_cancel:null,use_native:!1},ot="src",rt="srcset",ct="sizes",lt="poster",st="llOriginalAttrs",ut="loading",dt="loaded",ft="applied",_t="error",vt="native",gt="data-",bt="ll-status",pt=[ut,dt,ft,_t],ht=[ot],mt=[ot,lt],Et=[ot,rt,ct],It={IMG:function(t,e){m(t,function(t){A(t,Et),x(t,e)}),A(t,Et),x(t,e)},IFRAME:function(t,e){A(t,ht),w(t,ot,l(t,e.data_src))},VIDEO:function(t,e){a(t,function(t){A(t,ht),w(t,ot,l(t,e.data_src))}),A(t,mt),w(t,lt,l(t,e.data_poster)),w(t,ot,l(t,e.data_src)),t.load()}},yt=["IMG","IFRAME","VIDEO"],At={IMG:P,IFRAME:function(t){k(t,ht)},VIDEO:function(t){a(t,function(t){k(t,ht)}),k(t,mt),t.load()}},kt=["IMG","IFRAME","VIDEO"];return t.prototype={update:function(t){var e,n,a,i=this._settings,o=X(t,i);{if(h(this,o.length),!tt&&et)return H(i)?(e=i,n=this,o.forEach(function(t){-1!==kt.indexOf(t.tagName)&&F(t,e,n)}),void h(n,0)):(t=this._observer,i=o,t.disconnect(),a=t,void i.forEach(function(t){a.observe(t)}));this.loadAll(o)}},destroy:function(){this._observer&&this._observer.disconnect(),Q(this._settings).forEach(function(t){y(t)}),delete this._observer,delete this._settings,delete this.loadingCount,delete this.toLoadCount},loadAll:function(t){var e=this,n=this._settings;X(t,n).forEach(function(t){b(t,e),V(t,n,e)})},restoreAll:function(){var e=this._settings;Q(e).forEach(function(t){U(t,e)})}},t.load=function(t,e){e=i(e);V(t,e)},t.resetStatus=function(t){r(t)},Z&&function(t,e){if(e)if(e.length)for(var n,a=0;n=e[a];a+=1)o(t,n);else o(t,e)}(t,window.lazyLoadOptions),t});!function(e,t){"use strict";function a(){t.body.classList.add("litespeed_lazyloaded")}function n(){console.log("[LiteSpeed] Start Lazy Load Images"),d=new LazyLoad({elements_selector:"[data-lazyloaded]",callback_finish:a}),o=function(){d.update()},e.MutationObserver&&new MutationObserver(o).observe(t.documentElement,{childList:!0,subtree:!0,attributes:!0})}var d,o;e.addEventListener?e.addEventListener("load",n,!1):e.attachEvent("onload",n)}(window,document);</script><script data-no-optimize="1">var litespeed_vary=document.cookie.replace(/(?:(?:^|.*;\s*)_lscache_vary\s*\=\s*([^;]*).*$)|^.*$/,"");litespeed_vary||fetch("/wp-content/plugins/litespeed-cache/guest.vary.php",{method:"POST",cache:"no-cache",redirect:"follow"}).then(e=>e.json()).then(e=>{console.log(e),e.hasOwnProperty("reload")&&"yes"==e.reload&&(sessionStorage.setItem("litespeed_docref",document.referrer),window.location.reload(!0))});</script><script data-optimized="1" type="litespeed/javascript" data-src="https://www.linguise.com/wp-content/litespeed/js/fcc4ee94c0d05276772b7b97132c2178.js?ver=0e199"></script><script>const litespeed_ui_events=["mouseover","click","keydown","wheel","touchmove","touchstart"];var urlCreator=window.URL||window.webkitURL;function litespeed_load_delayed_js_force(){console.log("[LiteSpeed] Start Load JS Delayed"),litespeed_ui_events.forEach(e=>{window.removeEventListener(e,litespeed_load_delayed_js_force,{passive:!0})}),document.querySelectorAll("iframe[data-litespeed-src]").forEach(e=>{e.setAttribute("src",e.getAttribute("data-litespeed-src"))}),"loading"==document.readyState?window.addEventListener("DOMContentLoaded",litespeed_load_delayed_js):litespeed_load_delayed_js()}litespeed_ui_events.forEach(e=>{window.addEventListener(e,litespeed_load_delayed_js_force,{passive:!0})});async function litespeed_load_delayed_js(){let t=[];for(var d in document.querySelectorAll('script[type="litespeed/javascript"]').forEach(e=>{t.push(e)}),t)await new Promise(e=>litespeed_load_one(t[d],e));document.dispatchEvent(new Event("DOMContentLiteSpeedLoaded")),window.dispatchEvent(new Event("DOMContentLiteSpeedLoaded"))}function litespeed_load_one(t,e){console.log("[LiteSpeed] Load ",t);var d=document.createElement("script");d.addEventListener("load",e),d.addEventListener("error",e),t.getAttributeNames().forEach(e=>{"type"!=e&&d.setAttribute("data-src"==e?"src":e,t.getAttribute(e))});let a=!(d.type="text/javascript");!d.src&&t.textContent&&(d.src=litespeed_inline2src(t.textContent),a=!0),t.after(d),t.remove(),a&&e()}function litespeed_inline2src(t){try{var d=urlCreator.createObjectURL(new Blob([t.replace(/^(?:<!--)?(.*?)(?:-->)?$/gm,"$1")],{type:"text/javascript"}))}catch(e){d="data:text/javascript;base64,"+btoa(t.replace(/^(?:<!--)?(.*?)(?:-->)?$/gm,"$1"))}return d}</script></body>

</html>

				
			

Pengaturan Middleware Bahasa

Buka terminal proyek dan jalankan perintah ini,

				
					php artisan make:middleware LanguageManager


				
			

Ini akan membuat file LanguageManager.php di dalam folder /app/Http/Middleware dan menempelkannya.

Manajer Bahasa - Menerapkan terjemahan Google Cloud AI API vs Google Translate untuk Laravel
				
					<?php

namespace App\Http\Middleware;

use Closure;
use Illuminate\Http\Request;
use Symfony\Component\HttpFoundation\Response;
use Illuminate\Support\Facades\App;

class LanguageManager
{
    /**
     * Handle an incoming request.
     *
     * @param  \Closure(\Illuminate\Http\Request): (\Symfony\Component\HttpFoundation\Response)  $next
     */
    public function handle(Request $request, Closure $next): Response
    {
        if (session()->has('locale')) {

            App::setLocale(session()->get('locale'));
        }

        return $next($request);
    }
}

				
			

Daftarkan Middleware Bahasa melalui Kernel.php

Buka file Kernel.php yang terletak di direktori /app/Http. Cari array $middlewareGroups dan navigasikan ke bagian web.

Kernel.php - Menerapkan terjemahan Google Cloud AI API vs Google Translate untuk Laravel
				
					/**
 * The application's route middleware groups.
 *
 * @var array<string, array<int, class-string|string>>
 */
protected $middlewareGroups = [
    'web' => [
        
        //...

        \App\Http\Middleware\LanguageManager::class,
    ],

    'api' => [
        
        //...
    ],
];

				
			

Tambahkan rute

Buka web.php dari folder /routes dan tambahkan rute ini ke dalamnya.

Web.php - Menerapkan terjemahan Google Cloud AI API vs Google Translate untuk Laravel
				
					//...
use App\Http\Controllers\LangController;

//...

Route::get('lang/home', [LangController::class, 'index']);
Route::get('lang/change', [LangController::class, 'change'])->name('changeLang');


				
			

Situs web pengujian

Jalankan perintah ini di terminal proyek untuk meluncurkan server pengembangan.

				
					php artisan serve
				
			

Berikut tampilan Laravel dari website onlinewebtutorblog.com yang telah dibuat, seperti terlihat pada tampilan berikut terdapat dropdown Google Translate.

Google Terjemahan di situs web Laravel - Menerapkan terjemahan Google Cloud AI API vs Google Terjemahan untuk Laravel

Lalu seperti inilah tampilan website Laravel jika ditranslate ke bahasa arab.

Apa perbedaan antara mengimplementasikan terjemahan Google Cloud AI & Google Translate di Laravel?

Setelah memahami masing-masing implementasi Google Cloud AI dan terjemahan Google Translate di Laravel, kita akan membahas perbedaannya.

Proses Instalasi dan Konfigurasi

Instalasi dan konfigurasi - Menerapkan terjemahan Google Cloud AI API vs Google Translate untuk Laravel
  • Terjemahan Google Cloud AI API: Proses instalasi dan konfigurasi lebih kompleks karena Anda harus membuat proyek di Google Cloud Platform (GCP), mengaktifkan Cloud Translation API, membuat akun layanan, membuat kunci API, dan mengonfigurasi klien API di Laravel . Ini melibatkan beberapa langkah dan memerlukan akun GCP yang valid.
  • Google Terjemahan: Instalasi dan konfigurasi jauh lebih sederhana. Anda hanya perlu menginstal paket atau perpustakaan pihak ketiga melalui Composer, seperti stichoza/google-translate-php. Setelah itu, Anda dapat mengkonfigurasi kunci Google Translate API di Laravel .

Akurasi Terjemahan

Akurasi Terjemahan - Menerapkan terjemahan Google Cloud AI API vs Google Translate untuk Laravel
  • Terjemahan Google Cloud AI API: Berkat kemampuan pembelajaran mendalamnya, layanan ini dapat menangkap konteks dan nuansa bahasa yang kompleks dengan lebih baik. Hal ini memungkinkan terjemahan ekspresi idiomatik, frasa kiasan, dan permainan kata yang lebih akurat yang sulit diterjemahkan secara harfiah.
  • Google Terjemahan: sering kali kesulitan menangkap konteks dan nuansa bahasa yang lebih baik, sehingga hasilnya terdengar kaku atau kurang alami. Karena pendekatan statistik, penerjemahan ungkapan idiomatik atau frasa kiasan seringkali kurang akurat.

Kecepatan Respon

Kecepatan respons - Menerapkan terjemahan Google Cloud AI API vs Google Translate untuk Laravel
  • Terjemahan Google Cloud AI API: Umumnya lebih cepat dalam merespons permintaan terjemahan karena menggunakan terjemahan mesin saraf yang dihosting di infrastruktur cloud Google yang kuat. Hal ini memberikan waktu respons yang lebih cepat, terutama untuk teks yang lebih panjang atau terjemahan dalam jumlah besar.
  • Google Terjemahan: Mungkin sedikit lebih lambat dalam merespons permintaan terjemahan, terutama untuk dokumen atau teks yang lebih panjang. Hal ini karena model ini menggunakan perpaduan pendekatan terjemahan statistik dan saraf yang lebih tradisional, yang mungkin tidak seefisien model saraf yang digunakan oleh terjemahan Google Cloud AI API.

Kemampuan Kustomisasi dan Kontrol

Penyesuaian dan kontrol - Menerapkan terjemahan Google Cloud AI API vs Google Translate untuk Laravel
  • Terjemahan Google Cloud AI API: Menawarkan lebih banyak opsi untuk menyesuaikan dan mengontrol proses terjemahan, seperti mengatur preferensi terjemahan, mengunggah glosarium khusus, dan mengakses terjemahan editor langsung untuk mengedit hasil terjemahan secara manual. Hal ini memungkinkan pengguna untuk meningkatkan akurasi terjemahan sesuai dengan kebutuhannya.
  • Google Terjemahan: Memiliki opsi penyesuaian dan kontrol yang lebih terbatas. Pengguna harus mengandalkan hasil terjemahan otomatis tanpa banyak kemampuan untuk mengedit atau menyesuaikan hasilnya secara langsung.

Fitur lanjutan

Fitur lanjutan - Menerapkan terjemahan Google Cloud AI API vs Google Translate untuk Laravel
  • Terjemahan Google Cloud AI API: Teknologi terjemahan Google Cloud AI memiliki beberapa fitur canggih seperti Glosarium, Pemilihan model, dan model AutoML. Selain itu, dalam konteks terjemahan cloud AI dengan Linguise , ia juga memiliki fitur-fitur canggih seperti pengecualian terjemahan untuk kata-kata tertentu seperti istilah teknis, nama merek, dll., berdasarkan baris, halaman, atau URL.
  • Google Translate: Google Translate yang terpasang di Laravel tidak bisa menerjemahkan dokumen audio atau lainnya. Ia hanya dapat menerjemahkan teks di website ke bahasa lain tanpa kemampuan mengedit hasil terjemahannya.
Hancurkan Hambatan Bahasa
Ucapkan selamat tinggal pada hambatan bahasa dan sambut pertumbuhan tanpa batas! Coba layanan terjemahan otomatis kami hari ini.

Faktor-faktor yang harus Anda pertimbangkan ketika memilih layanan terjemahan untuk situs web Laravel Anda

Berikut beberapa pertimbangan dalam memilih layanan terjemahan terbaik untuk website Laravel Anda.

  • Akurasi Terjemahan Tinggi – Salah satu faktor terpenting adalah keakuratan terjemahan yang dihasilkan. Jika situs web Anda memerlukan terjemahan yang sangat akurat, terutama untuk konten yang kompleks dan bahasa yang berbeda, maka Terjemahan Google Cloud AI API mungkin merupakan pilihan yang lebih baik daripada Google Terjemahan.
  • Kemudahan Integrasi dan Konfigurasi — Pertimbangkan untuk menginstal dan mengonfigurasi layanan terjemahan dengan aplikasi Laravel Google Terjemahan umumnya lebih mudah diintegrasikan karena tersedia sebagai paket atau pustaka PHP. Sementara itu, Google Cloud AI API Translation memerlukan konfigurasi yang lebih kompleks di Google Cloud Platform.
  • Fitur dan Opsi Penyesuaian – Jika Anda memerlukan fitur tambahan seperti glosarium atau terjemahan terminologi khusus, terjemahan editor , atau opsi penyesuaian lainnya, Google Cloud AI API Translation menawarkan lebih banyak pilihan daripada Google Terjemahan.
  • Kecepatan dan Waktu Respons – Untuk aplikasi dengan volume terjemahan besar atau memerlukan respons cepat, Google Cloud AI API Translation umumnya merespons permintaan terjemahan lebih cepat dibandingkan Google Terjemahan.
  • Biaya dan Anggaran – Google Terjemahan tersedia gratis untuk penggunaan non-komersial, sedangkan Google Cloud AI API Translation menggunakan model penagihan berbayar berdasarkan penggunaan. Pertimbangkan anggaran Anda dan perkiraan volume terjemahan untuk memilih layanan yang paling hemat biaya.
  • Dukungan dan Dokumentasi – Juga, pertimbangkan dukungan teknis dan dokumentasi yang tersedia untuk setiap layanan. Terjemahan Google Cloud AI API mungkin memiliki dokumentasi dan dukungan yang lebih komprehensif dari Google.

Linguise, layanan terjemahan cloud AI terbaik untuk situs web Laravel

Menerapkan terjemahan Google Cloud AI API vs Google Translate untuk Laravel

Sampai di sini Anda sudah mengetahui pertimbangan memilih layanan terjemahan untuk Laravel; hampir semua faktor yang disebutkan di atas hadir dalam layanan terjemahan Linguise .

Linguise adalah layanan terjemahan situs web yang menggunakan teknologi terjemahan cloud AI untuk menghasilkan terjemahan konten. Layanan ini bisa menjadi solusi terbaik untuk menerjemahkan Laravel . Mengapa demikian? Karena Linguise menjawab pertimbangan yang disebutkan di atas.

  • Linguise memiliki kualitas terjemahan yang sempurna. Meskipun akurasi ini bervariasi tergantung pada pasangan bahasa, Linguise menawarkan tingkat akurasi hampir 97%, mirip dengan terjemahan manusia.
  • Linguise juga terintegrasi dengan lebih dari 40 CMS dan pembuat web, serta terintegrasi dengan situs web berbasis PHP seperti Laravel .
  • Meski menerjemahkan secara otomatis, Linguise memiliki live editor yang dapat digunakan untuk mengedit hasil terjemahan. Dengan cara ini, terjemahannya dapat disesuaikan dengan preferensi bisnis.
  • Waktu pemuatan halaman multibahasa hanya 5% lebih lama dibandingkan halaman bahasa asli.
  • Layanan kami tersedia dalam tiga paket mulai dari $15 hingga $45 per bulan. Meski berbayar, kami juga menawarkan masa uji coba gratis selama 30 hari dengan batas 600.000 kata yang bisa diterjemahkan.
  • Terakhir, Linguise mendukung semua bentuk bantuan pelanggan, termasuk artikel panduan, dokumentasi, berita produk, tutorial video YouTube, dan obrolan dukungan 24/7.

Dari poin-poin di atas, Linguise dapat menjadi solusi teknologi terjemahan cloud AI untuk Laravel.

Siap menjelajahi pasar baru? Cobalah layanan terjemahan otomatis kami secara gratis dengan uji coba bebas risiko selama 1 bulan. Tidak perlu kartu kredit!

Kesimpulan

Pada artikel ini, kami telah menjelajahi perbedaan utama antara penerapan Google Cloud AI API Translation dan aplikasi web Google Translate untuk Laravel .

Google Cloud AI API Translation unggul dalam akurasi dan kebutuhan akan terjemahan dengan akurasi tinggi. Namun layanan ini memerlukan konfigurasi yang lebih kompleks dan lebih mahal dibandingkan Google Translate. Di sisi lain, Google Terjemahan menawarkan kemudahan integrasi namun memiliki keterbatasan dalam akurasi dan opsi penyesuaian.

Linguise muncul sebagai layanan terjemahan alternatif berbasis cloud AI yang kompatibel dengan situs web Laravel . Dengan tingkat akurasi yang hampir menyamai terjemahan manusia, opsi editor terjemahan, waktu pemuatan yang cepat, dan dukungan pelanggan yang komprehensif, Linguise menjadi solusi terjemahan yang sangat baik untuk situs web Laravel Anda.

Jika Anda ingin mencoba Linguise , Anda dapat mendaftar untuk mendapatkan akun gratis dan menikmati masa uji coba 30 hari dengan batas 600.000 kata terjemahan. Kunjungi linguise untuk informasi lebih lanjut!

Anda juga mungkin tertarik untuk membaca

Jangan lewatkan!
Berlangganan newsletter kami

Terima berita tentang terjemahan otomatis situs web, SEO internasional, dan lainnya!

Invalid email address
Cobalah. Satu per bulan dan Anda dapat berhenti berlangganan kapan saja.

Jangan pergi tanpa membagikan email Anda!

Kami tidak dapat menjamin Anda akan memenangkan lotre, tetapi kami dapat menjanjikan beberapa berita informasi menarik seputar terjemahan dan diskon sesekali.

Jangan lewatkan!
Invalid email address