Застосуйте переклад Google Cloud AI API проти Google Translate для Laravel

Застосуйте переклад Google Cloud AI API проти Google Translate для Laravel
Зміст

Для тих із вас, хто володіє Laravel , надання точного та природного перекладу вмісту дуже важливо для перекладу вашого веб-сайту та забезпечення хорошої взаємодії з користувачем.

На щастя, доступно кілька служб автоматичного перекладу, які допоможуть розробникам подолати цю проблему, зокрема Google Cloud AI Translation і Google Translate. Обидві служби пропонують можливості перекладу за допомогою машинних технологій.

У цій статті ми дослідимо основні відмінності між впровадженням Google Cloud AI Translation і Google Translate для Laravel і порекомендуємо найкращі служби перекладу для вашого Laravel .

Що таке Google Cloud AI API і Google Translate?

Перш ніж розпочати обговорення, ми обговоримо відповідне значення API Google Cloud AI і перекладів Google Translate.

Переклад Google Cloud AI API

Переклад Google Cloud AI – запровадьте переклад Google Cloud AI API проти Google Translate для Laravel

Google Cloud AI API Translation – це вдосконалена служба автоматичного перекладу, яка надається Google Cloud Platform. Ця служба використовує найновіші технології штучного інтелекту (ШІ) і машинного навчання для надання точних і природних перекладів тексту, голосу та документів.

Google Cloud AI API Translation використовує моделі нейронного перекладу, засновані на глибокому навчанні, що дозволяє краще вловлювати мовні нюанси та контекст, забезпечуючи більш ідіоматичні переклади, які відповідають фактичному використанню мови. Крім того, використання Google Cloud AI Translation до 500 000 символів є безкоштовним, а наступні 75 000 символів стягуватимуться за ціною 20 доларів США за мільйон символів.  

Перекладач Google

Перекладач Google – запровадьте переклад Google Cloud AI API проти Google Translate для Laravel

Тим часом Google Translate — це давній і широко відомий сервіс автоматичного перекладу тексту. Він використовує більш традиційний підхід статистичного перекладу, який генерує переклади на основі шаблонів і ймовірностей, отриманих із великих навчальних наборів даних.

Хоча він не такий просунутий, як Google Cloud AI Translation з точки зору точності та обробки мовних нюансів, Google Translate залишається популярним вибором через його простоту використання та безкоштовну доступність для некомерційного використання.

Реалізуйте переклад Google Cloud AI API на Laravel

Кілька служб перекладу, зокрема Linguise , використовують хмарну технологію AI Translation

Служба мовного перекладу використовує хмарний AI API як одну зі своїх технологій перекладу. Нижче наведено етапи реалізації на Laravel . Ми припускаємо, що у вас уже є готовий Laravel .

Створіть обліковий запис Linguise

Щоб використовувати Linguise , ви повинні зареєструвати обліковий запис . Ви можете зробити це безкоштовно або підписатися на один місяць чи рік. Вам потрібно лише надати таку інформацію, як електронна адреса, ім’я користувача та пароль.

Додайте інформацію про веб-сайт Laravel

Після цього додайте інформацію про веб-сайт, який ви використовуватимете, введіть дані свого облікового запису Linguise та веб-адресу, виберіть платформу Laravel і додайте мову за замовчуванням і мову, яку ви хочете додати на веб-сайт.

 

Додайте доменний веб-сайт – запровадьте переклад Google Cloud AI API проти Google Translate для Laravel

Потім завантажте скрипт PHP за допомогою наступної кнопки та збережіть його на локальному комп’ютері.

Завантажте та налаштуйте скрипт PHP

Після завантаження сценарію розпакуйте його та завантажте в кореневу папку, де встановлено Laravel . Переконайтеся, що він розташований у кореневому каталозі інсталяції Laravel (зазвичай там, де зберігаються файли CMS). Переконайтеся, що папка має назву «linguise» (ім’я за умовчанням, коли папку розархівовано).

Завантажте в папку Linguise - запровадьте переклад Google Cloud AI API проти Google Translate для Laravel

Потім ключ Linguise API потрібно скопіювати у файл …/linguise/Configuration.php, який ви завантажили на свій сервер. Відредагуйте файл і вставте свій ключ API між лапками, замінивши текст REPLACE_BY_YOUR_TOKEN.

Замінити ключ API – запровадити переклад Google Cloud AI API проти Google Translate для Laravel

Вставте сценарій перемикання мов

Далі вставте сценарій перемикання мови, який ви отримали з Linguise .

Перемикач мов сценаріїв – запровадьте переклад Google Cloud AI API проти Google Translate для Laravel

Вставлено у файл front.blade.php у каталозі resources/views/layouts/. Ось попередній перегляд вставленого сценарію.

Front Blade.php – реалізуйте переклад Google Cloud AI API проти Google Translate для Laravel

Налаштуйте .htaccess

Нарешті, URL-адреси на основі мови потрібно налаштувати у файлі .htaccess. Якщо ваш файл містить «RewriteBase /», просто скопіюйте та вставте наступний код після цього рядка.

				
					<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>
				
			

Готово. На даний момент ви успішно впровадили хмарний переклад AI API у Linguise . Тепер ви можете перевірити Laravel . З’явиться перемикач мов за замовчуванням, і ви можете налаштувати перемикач мов для Laravel за допомогою інформаційної панелі.

Перемикач мов Laravel – реалізуйте переклад Google Cloud AI API проти Google Translate для Laravel

Застосуйте Google Translate на Laravel

Тепер ми спробуємо реалізувати Google Translate у Laravel. Тут ми припускаємо, що ви успішно створили проект Laravel і вам просто потрібно додати Google Translate.

Ви також можете знайти наступні кроки встановлення на офіційному Laravel .

Встановіть пакет Google Translator

Щоб установити пакет Google Translator, відкрийте вікно проекту та введіть таку команду. Цей пакет дозволить вам використовувати робочі функції google-translator-language.

				
					composer require stichoza/google-translate-php
				
			

Налаштування пакета Google Translator

Ми повинні налаштувати «пакет Google Translator» у програмі. Відкрийте файл app.php у папці /config, знайдіть розділ «псевдоніми» та додайте наступний рядок коду.

App.php – реалізуйте переклад Google Cloud AI API проти Google Translate для 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(),

				
			

Налаштування контролера мови

Вам потрібно створити файл контролера мови, як показано нижче

				
					php artisan make:controller LangController
				
			

Він створить файл LangController.php у папці /app/Http/Controllers.

Контролер мови – реалізуйте переклад Google Cloud AI API проти Google Translate для 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();
    }
}


				
			

Створити файл шаблону Blade

Перейдіть до папки /resources/views і створіть файл з назвою lang.blade.php. Відкрийте файл і вставте в нього наступний код.

LangBlade.php – реалізуйте переклад Google Cloud AI API проти Google Translate для 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>

				
			

Налаштування мовного проміжного ПЗ

Відкрийте термінал проекту та виконайте цю команду,

				
					php artisan make:middleware LanguageManager


				
			

Він створить файл LanguageManager.php у папці /app/Http/Middleware і вставить його.

Менеджер мов – запровадьте переклад Google Cloud AI API проти Google Translate для 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);
    }
}

				
			

Зареєструйте проміжне програмне забезпечення мови через Kernel.php

Відкрийте файл Kernel.php, який знаходиться в каталозі /app/Http. Знайдіть масив $middlewareGroups і перейдіть до веб-розділу.

Kernel.php – реалізуйте переклад Google Cloud AI API проти Google Translate для Laravel
				
					/**
 * The application's route middleware groups.
 *
 * @var array<string, array<int, class-string|string>>
 */
protected $middlewareGroups = [
    'web' => [
        
        //...

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

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

				
			

Додайте маршрут

Відкрийте web.php з папки /routes і додайте в неї ці маршрути.

Web.php – реалізуйте переклад Google Cloud AI API проти Google Translate для Laravel
				
					//...
use App\Http\Controllers\LangController;

//...

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


				
			

Тестування сайту

Виконайте цю команду в терміналі проекту, щоб запустити сервер розробки.

				
					php artisan serve
				
			

Ось відображення Laravel із веб-сайту onlinewebtutorblog.com , який було створено, як ви бачите, на наступному відображенні є спадне меню Google Translate.

Перекладач Google на веб-сайті Laravel – запровадьте переклад Google Cloud AI API проти Google Translate для Laravel

Тоді ось як це виглядає, коли веб-сайт Laravel перекладено арабською мовою.

Яка різниця між впровадженням Google Cloud AI перекладу та Google Translate на Laravel?

Зрозумівши кожну реалізацію Google Cloud AI і Google Translate перекладу в Laravel, ми обговоримо їх відмінності.

Процес встановлення та налаштування

Встановлення та конфігурація. Застосуйте переклад Google Cloud AI API проти Google Translate для Laravel
  • Переклад Google Cloud AI API: процес інсталяції та налаштування складніший, оскільки вам потрібно створити проект на Google Cloud Platform (GCP), увімкнути Cloud Translation API, створити обліковий запис служби, згенерувати ключі API та налаштувати клієнт API у своєму Laravel . Це включає кілька кроків і вимагає дійсного облікового запису GCP.
  • Перекладач Google: встановлення та налаштування набагато простіше. Вам потрібно лише встановити сторонній пакет або бібліотеку через Composer, наприклад stichoza/google-translate-php. Після цього ви можете налаштувати ключ API Google Translate у Laravel .

Точність перекладу

Точність перекладу. Застосуйте переклад Google Cloud AI API проти Google Translate для Laravel
  • Google Cloud AI API Translation: завдяки можливостям глибокого навчання ця служба може краще вловлювати складні мовні контексти та нюанси. Це дозволяє точніше перекладати ідіоматичні вирази, образні фрази та гру слів, які важко перекласти буквально.
  • Google Translate: часто важко вловити точніший мовний контекст і нюанси, через що результати звучать жорстко або менш природно. Через статистичний підхід переклад ідіоматичних виразів або образних фраз часто менш точний.

Швидкість відгуку

Швидкість відповіді. Застосуйте переклад Google Cloud AI API проти Google Translate для Laravel
  • Переклад Google Cloud AI API: зазвичай швидше відповідає на запити перекладу, оскільки використовує оптимізовані нейронного машинного перекладу , розміщені в надійній хмарній інфраструктурі Google. Це забезпечує швидший час відповіді, особливо для довших текстів або великого обсягу перекладів.
  • Перекладач Google: він може дещо повільніше відповідати на запити на переклад, особливо для довших документів або текстів. Це пояснюється тим, що він використовує більш традиційне поєднання статистичних і нейронних підходів до перекладу, які можуть бути не такими ефективними, як нейронні моделі, які використовуються для перекладу Google Cloud AI API.

Можливості налаштування та контролю

Налаштування та контроль – запровадьте переклад Google Cloud AI API проти Google Translate для Laravel
  • Google Cloud AI API Translation: пропонує більше можливостей для налаштування та керування процесом перекладу, наприклад налаштування параметрів перекладу, завантаження власних глосаріїв і доступ до перекладу в реальному часі для редагування результатів перекладу вручну. Це дозволяє користувачам підвищити точність перекладу відповідно до своїх потреб.
  • Перекладач Google: має більш обмежені параметри налаштування та керування. Користувачі повинні покладатися на результати автоматичного перекладу без особливої ​​можливості редагувати або безпосередньо налаштовувати результати.

Розширені функції

Розширені функції – Застосуйте переклад Google Cloud AI API проти Google Translate для Laravel
  • Переклад Google Cloud AI API: технологія перекладу Google Cloud AI має кілька розширених функцій, як-от глосарій, вибір моделі та моделі AutoML. Крім того, у контексті перекладу хмарного штучного інтелекту за допомогою Linguise він також має розширені функції, як-от виключення перекладу для певних слів, таких як технічні терміни, назви брендів тощо, на основі рядків, сторінок або URL-адрес.
  • Перекладач Google: Перекладач Google, встановлений у Laravel не може перекладати аудіодокументи чи інші документи. Він може лише перекладати текст на веб-сайті іншою мовою без можливості редагувати результати перекладу.
Подолайте мовні бар’єри
Попрощайтеся з мовними бар’єрами та привіт безмежному зростанню! Спробуйте нашу службу автоматичного перекладу сьогодні.

Чинники, які слід враховувати при виборі служби перекладу для вашого веб-сайту Laravel

Ось деякі міркування щодо вибору найкращої служби перекладу для вашого веб-сайту Laravel .

  • Висока точність перекладу – одним із найважливіших факторів є точність зробленого перекладу. Якщо ваш веб-сайт потребує дуже точного перекладу, особливо для складного вмісту та нюансів мови, тоді Google Cloud AI API Translation може бути кращим вибором, ніж Google Translate.
  • Простота інтеграції та конфігурації — подумайте про встановлення та налаштування служби перекладу за допомогою Laravel . Перекладач Google загалом легше інтегрувати, оскільки він доступний як пакет або бібліотека PHP. Тим часом Google Cloud AI API Translation вимагає більш складної конфігурації на Google Cloud Platform.
  • Функції та параметри налаштування. Якщо вам потрібні додаткові функції, такі як глосарій або переклад спеціальної термінології, перекладу редактора чи інші параметри налаштування, Google Cloud AI API Translation пропонує більше можливостей, ніж Google Translate.
  • Швидкість і час відповіді – для програм із великим обсягом перекладу або потребують швидкої відповіді Google Cloud AI API Translation зазвичай відповідає на запити на переклад швидше, ніж Google Translate.
  • Вартість і бюджет – Google Translate доступний безкоштовно для некомерційного використання, тоді як Google Cloud AI API Translation використовує платну модель виставлення рахунків на основі використання. Враховуйте свій бюджет і приблизний обсяг перекладу, щоб вибрати найвигіднішу послугу.
  • Підтримка та документація – також зверніть увагу на технічну підтримку та документацію, доступну для кожної служби. Google Cloud AI API Translation може мати більш повну документацію та підтримку від Google.

Linguise, найкращий хмарний сервіс перекладу AI для веб-сайту Laravel

Застосуйте переклад Google Cloud AI API проти Google Translate для Laravel

До цього моменту ви вже знаєте міркування щодо вибору служби перекладу для Laravel; Майже всі перераховані вище чинники присутні в службі перекладу Linguise .

Linguise — це служба перекладу веб-сайтів, яка використовує хмарну технологію перекладу штучного інтелекту для перекладу вмісту. Ця послуга може бути найкращим рішенням для перекладу Laravel . Чому так? Тому що Linguise розглядає міркування, згадані вище.

  • Linguise має ідеальну якість перекладу. Хоча ця точність змінюється залежно від мовної пари, Linguise може похвалитися рівнем точності майже 97%, подібно до людського перекладу.
  • Linguise також інтегровано з більш ніж 40 CMS і веб-конструкторами, а також інтегровано з веб-сайтами на основі PHP, такими як Laravel .
  • Незважаючи на автоматичний переклад, Linguise має живий редактор, який можна використовувати для редагування результатів перекладу. Таким чином переклад можна адаптувати до бізнес-уподобань.
  • Час завантаження багатомовних сторінок лише на 5% довший, ніж час завантаження сторінок оригінальною мовою.
  • Наша послуга доступна в трьох пакетах від 15 до 45 доларів на місяць. Незважаючи на те, що він платний, ми також пропонуємо безкоштовний пробний період тривалістю 30 днів із обмеженням у 600 000 слів, які можна перекласти.
  • Нарешті, Linguise підтримує всі форми допомоги клієнтам, включно зі статтями посібників, документацією, новинами про продукти, відеоуроками YouTube і цілодобовим чатом служби підтримки.

З огляду на наведене вище, Linguise може бути рішенням хмарної технології перекладу AI для Laravel.

Готові досліджувати нові ринки? Спробуйте нашу службу автоматичного перекладу безкоштовно за допомогою 1-місячної безризикової пробної версії. Кредитна картка не потрібна!

Висновок

У цій статті ми дослідили основні відмінності між впровадженням Google Cloud AI Translation і Google Translate для веб-додатків Laravel .

Google Cloud AI API Translation відрізняється точністю та потребою у високоточних перекладах. Однак ця послуга вимагає складнішої конфігурації та дорожча за Google Translate. З іншого боку, Google Translate пропонує легку інтеграцію, але має обмеження щодо точності та можливостей налаштування.

Linguise постає як альтернативний хмарний сервіс перекладу на основі ШІ, сумісний із веб-сайтами Laravel . Завдяки рівням точності, які майже відповідають перекладам, зробленим людиною, параметрам редактора перекладів, швидкому завантаженню та комплексній підтримці клієнтів Linguise стає чудовим рішенням перекладу для вашого веб-сайту Laravel .

Якщо ви хочете спробувати Linguise , ви можете зареєструвати безкоштовний обліковий запис і отримати 30-денний пробний період із обмеженням у 600 000 перекладених слів. Відвідайте linguise для отримання додаткової інформації!

Вам також може бути цікаво прочитати

Не пропустіть!
Підпишіться на нашу розсилку

Отримуйте новини про автоматичний переклад веб-сайтів, міжнародне SEO та багато іншого!

Invalid email address
Спробувати. Один на місяць, і ви можете скасувати підписку в будь-який час.

Не йдіть, не поділившись електронною поштою!

Ми не можемо гарантувати, що ви виграєте в лотерею, але можемо пообіцяти кілька цікавих інформаційних новин щодо перекладу та періодичних знижок.

Не пропустіть!
Invalid email address