Google ক্লাউডের জন্য ABAP SDK-এর সাথে অনুবাদ API ব্যবহার করা

1। পরিচিতি

এই কোডল্যাবটি Google ক্লাউডের জন্য ABAP SDK ব্যবহার করে অনুবাদ API V3 (অ্যাডভান্সড) এর পদ্ধতিগুলিকে কল করার পদক্ষেপগুলি প্রদান করে৷ এই কোডল্যাবে আমরা দেখব, কিভাবে একটি টেক্সট অনুবাদ করা যায়, টেক্সটের ভাষা সনাক্ত করা যায় এবং Translation API V3 ব্যবহার করে সমর্থিত ভাষার তালিকা করা যায়।

নিম্নলিখিত Google ক্লাউড পরিষেবাগুলি এই কোডল্যাবে ব্যবহার করা হয়:

  • কম্পিউট ইঞ্জিন
  • নেটওয়ার্ক পরিষেবা
  • মেঘের শেল
  • ক্লাউড অনুবাদ API V3

পূর্বশর্ত

আপনি কি নির্মাণ করবেন

আপনি Google ক্লাউডের জন্য ABAP SDK ব্যবহার করে আপনার SAP সিস্টেমে নিম্নলিখিত প্রোগ্রামগুলি তৈরি করবেন:

  • Google-এর ক্লাউড ট্রান্সলেশন API V3 ব্যবহার করে একাধিক ভাষায় পাঠ্য অনুবাদ করুন
  • Google ক্লাউড ট্রান্সলেশন API V3 ব্যবহার করে উৎস পাঠের ভাষা সনাক্ত করুন
  • Google ক্লাউড অনুবাদ API V3-এর সমর্থিত ভাষার তালিকা করুন

2. প্রয়োজনীয়তা

  • একটি ব্রাউজার, যেমন ক্রোম বা ফায়ারফক্স
  • বিলিং সক্ষম সহ একটি Google ক্লাউড প্রকল্প বা Google ক্লাউড প্ল্যাটফর্মের জন্য একটি 90-দিনের বিনামূল্যে ট্রায়াল অ্যাকাউন্ট তৈরি করুন
  • আপনার সিস্টেমে ইনস্টল করা SAP GUI (উইন্ডোজ বা জাভা)। SAP GUI ইতিমধ্যেই আপনার মেশিনে ইনস্টল করা থাকলে VM বাহ্যিক IP ঠিকানাটি অ্যাপ্লিকেশন সার্ভার IP হিসাবে ব্যবহার করে SAP-এর সাথে সংযোগ করুন। আপনি যদি ম্যাকে থাকেন, তাহলে আপনি এই লিঙ্কে উপলব্ধ জাভার জন্য SAP GUI ইনস্টল করতে পারেন।

3. আপনি শুরু করার আগে

6757b2fb50ddcc2d.png

  • আপনার অ্যাকাউন্টের জন্য প্রমাণীকরণ করতে নিম্নলিখিত কমান্ডগুলি চালান এবং ডিফল্ট প্রকল্পটিকে abap-sdk-poc এ সেট করুন। Zone us-west4-b উদাহরণ হিসেবে ব্যবহার করা হয়েছে। যদি প্রয়োজন হয়, অনুগ্রহ করে আপনার পছন্দের উপর ভিত্তি করে নিম্নলিখিত কমান্ডগুলিতে প্রকল্প এবং অঞ্চল পরিবর্তন করুন।
gcloud auth login
gcloud config set project abap-sdk-poc
gcloud config set compute/zone us-west4-b
  • Google ক্লাউড ইনস্টল করার জন্য ABAP SDK সহ একটি SAP সিস্টেমে আপনার অ্যাক্সেস থাকতে হবে।
  • এই কোডল্যাব নিয়ে এগিয়ে যাওয়ার আগে আপনাকে অবশ্যই কোডল্যাব 1 ( Google ক্লাউড প্ল্যাটফর্মে ABAP প্ল্যাটফর্ম ট্রায়াল 1909 ইনস্টল করতে হবে এবং Google Cloud এর জন্য ABAP SDK ইনস্টল করতে হবে) এবং কোডল্যাব 2 ( Compute Engine VM-তে SAP হোস্ট করা টোকেন ব্যবহার করে ABAP SDK প্রমাণীকরণ কনফিগার করতে হবে )।
  • আপনি যদি কোডল্যাব 1 এবং কোডল্যাব 2 সম্পূর্ণ করে থাকেন, তাহলে এটি আপনাকে প্রমাণীকরণ এবং সংযোগের জন্য প্রয়োজনীয় সেটআপ সহ Google ক্লাউডে একটি ABAP প্ল্যাটফর্ম ট্রায়াল 1909 সিস্টেমের ব্যবস্থা করবে।
  • আপনি যদি কোডল্যাব 1 এবং কোডল্যাব 2 সম্পূর্ণ না করে থাকেন তবে এই কোডল্যাবে প্রদত্ত পদক্ষেপগুলি সম্পাদন করার জন্য আপনার কাছে প্রয়োজনীয় সমস্ত অবকাঠামো এবং সংযোগ থাকবে না। অতএব, এই কোডল্যাবের সাথে এগিয়ে যাওয়ার আগে আপনাকে অবশ্যই কোডল্যাব 1 এবং কোডল্যাব 2 সম্পূর্ণ করতে হবে।

4. আপনার Google ক্লাউড প্রজেক্টে Cloud Translation API V3 সক্ষম করুন৷

  1. ক্লাউড শেলে নীচের কমান্ডটি চালান, এটি আপনার Google ক্লাউড প্রকল্পে ক্লাউড অনুবাদ API সক্ষম করবে:
gcloud services enable translate.googleapis.com

সফলভাবে সঞ্চালন করার সময় আপনি নীচের হিসাবে প্রদর্শিত একটি বার্তা দেখতে পাবেন:

b5f52859df2c2f56.png

আপনার এখন আপনার Google ক্লাউড প্রকল্পে ক্লাউড অনুবাদ API সক্ষম করা উচিত

5. ক্লাউড অনুবাদ ব্যবহারকারীর ভূমিকা সহ একটি পরিষেবা অ্যাকাউন্ট তৈরি করুন৷

প্রয়োজনীয় ভূমিকা সহ একটি পরিষেবা অ্যাকাউন্ট তৈরি করতে, নিম্নলিখিত পদক্ষেপগুলি সম্পাদন করুন:

  1. ক্লাউড শেল টার্মিনালে নিম্নলিখিত কমান্ডটি চালান:
gcloud iam service-accounts create abap-sdk-translation-tester \
--display-name="Service Account for Translation"
  1. এখন উপরের ধাপে তৈরি পরিষেবা অ্যাকাউন্টে প্রয়োজনীয় ভূমিকা যোগ করুন
gcloud projects add-iam-policy-binding abap-sdk-poc\
--member='serviceAccount:abap-sdk-translation-tester@abap-sdk-poc.iam.gserviceaccount.com' \
--role='roles/cloudtranslate.user'

উপরের কমান্ডটি Google ক্লাউড প্রকল্পের টেমপ্লেট নাম হিসাবে abap-sdk-poc ব্যবহার করে। আপনার প্রকল্প আইডি দিয়ে এটি প্রতিস্থাপন করুন।

  1. যাচাই করতে, ভূমিকা যোগ করা হয়েছে, IAM পৃষ্ঠায় যান। আপনি যে পরিষেবা অ্যাকাউন্টটি তৈরি করেছেন সেটিকে নীচে দেখানো ভূমিকার সাথে তালিকাভুক্ত করা উচিত:

6af77a519ed3e357.png

6. ক্লায়েন্ট কী কনফিগারেশন তৈরি করুন

এখন যেহেতু আপনি Google ক্লাউড সাইডে প্রাক-প্রয়োজনীয়তা সেট আপ করেছেন, আমরা SAP সাইডে কনফিগারেশন নিয়ে এগিয়ে যেতে পারি।

প্রমাণীকরণ এবং সংযোগ সম্পর্কিত কনফিগারেশনের জন্য, Google ক্লাউডের জন্য ABAP SDK টেবিল /GOOG/CLIENT_KEY ব্যবহার করে

/GOOG/CLIENT_KEY টেবিলে কনফিগারেশন বজায় রাখতে, নিম্নলিখিত পদক্ষেপগুলি সম্পাদন করুন:

  1. SAP GUI-তে, লেনদেন কোড SPRO লিখুন।
  2. SAP রেফারেন্স IMG এ ক্লিক করুন।
  3. Google ক্লাউড > বেসিক সেটিংস > কনফিগার ক্লায়েন্ট কী-এর জন্য ABAP SDK-এ ক্লিক করুন।
  4. ক্ষেত্রগুলির বিপরীতে নিম্নলিখিত মানগুলি বজায় রাখুন:

মাঠ

মান

গুগল ক্লাউড কী নাম

TEST_TRANSLATION

Google ক্লাউড পরিষেবা অ্যাকাউন্টের নাম

abap-sdk-translation-tester@abap-sdk-poc.iam.gserviceaccount.com

গুগল ক্লাউড স্কোপ

https://www.googleapis.com/auth/cloud-platform

প্রকল্প আইডি

abap-sdk-poc

অনুমোদন শ্রেণী

/GOOG/CL_AUTH_GOOGLE

অন্য সব ক্ষেত্র ফাঁকা রাখুন

7. ক্লাউড ট্রান্সলেশন API V3 কল করার জন্য একটি Z-রিপোর্ট তৈরি করুন এবং একটি পাঠ্য অনুবাদ করুন৷

  1. আপনার SAP সিস্টেমে লগ ইন করুন।
  2. লেনদেন কোড SE38 এ যান এবং ZDEMO_TRANSLATE_TEXT.
  3. পপ-আপে যেটি খোলে, নীচে দেখানো হিসাবে বিশদ বিবরণ প্রদান করুন এবং সংরক্ষণ করুন ক্লিক করুন।

6ba124f9187d1fc0.png

পরবর্তী পপ-আপে হয় স্থানীয় অবজেক্ট নির্বাচন করুন অথবা আপনার পছন্দ অনুযায়ী একটি প্যাকেজ নাম প্রদান করুন।

  1. ABAP সম্পাদকে, নিম্নলিখিত কোড যোগ করুন:
DATA lo_translate TYPE REF TO /goog/cl_translation_v3.
DATA ls_input TYPE /goog/cl_translation_v3=>ty_050.

TRY.
    lo_translate = NEW #( iv_key_name = 'TEST_TRANSLATION').

    ls_input = VALUE #(  mime_type = 'text/plain'
                         source_language_code = 'en-US'
                         target_language_code = 'es-ES'
                         contents =  VALUE #( ( |Sun is our nearest star| ) ) ).

    lo_translate->translate_text_projects(
      EXPORTING
        iv_p_projects_id = CONV #( lo_translate->gv_project_id )
        is_input         = ls_input
      IMPORTING
        es_output        =  DATA(ls_output)
        ev_ret_code      =  DATA(lv_ret_code)
        ev_err_text      =  DATA(lv_err_text)
        es_err_resp      =  DATA(lv_err_resp)
    ).
    IF lo_translate->is_success( lv_ret_code ) = abap_true.
      cl_demo_output=>new(
      )->begin_section( 'API Call Successful:'
      )->write_text( 'Translated Text:'
      )->write_data( ls_output-translations[ 1 ]-translated_text
      )->display( ).
    ELSE.
      cl_demo_output=>new(
      )->begin_section( 'API Call Unsuccessful:'
      )->write_text( 'Error Message:'
      )->write_text( lv_err_text
      )->display( ).
    ENDIF.
  CATCH /goog/cx_sdk INTO DATA(lo_sdk_excp).
    DATA(lv_error) = lo_sdk_excp->get_text( ).
    cl_demo_output=>new(
     )->begin_section( 'Exception Occured:'
     )->write_text( lv_error
     )->display( ).
ENDTRY.
  1. প্রতিবেদনটি সংরক্ষণ করুন এবং সক্রিয় করুন।
  2. রিপোর্ট চালান (F8)।

সফলভাবে সঞ্চালন করার সময় আপনাকে নীচে দেখানো হিসাবে রিপোর্ট আউটপুট দেখতে হবে:

2dd3bf270d2b1477.png

8. ক্লাউড ট্রান্সলেশন API V3 কল করতে এবং ভাষা সনাক্ত করতে একটি Z-রিপোর্ট তৈরি করুন

  1. আপনার SAP সিস্টেমে লগ ইন করুন।
  2. লেনদেন কোড SE38 এ যান এবং ZDEMO_DETECT_LANGUAGE.
  3. যে পপ-আপটি খোলে, নীচে দেখানো হিসাবে বিশদ প্রদান করুন এবং সংরক্ষণ করুন ক্লিক করুন:

64c2eb0e0173ae51.png

পরবর্তী পপ-আপে হয় স্থানীয় অবজেক্ট নির্বাচন করুন অথবা আপনার পছন্দ অনুযায়ী একটি প্যাকেজ নাম প্রদান করুন।

  1. ABAP সম্পাদকে, নিম্নলিখিত কোড যোগ করুন:
DATA lo_translate TYPE REF TO /goog/cl_translation_v3.
DATA ls_input TYPE /goog/cl_translation_v3=>ty_009.

TRY.
    lo_translate = NEW #( iv_key_name = 'TEST_TRANSLATION').

    ls_input = VALUE #(  mime_type = |text/plain|
                         content =  |La luce viaggia più veloce del suono| ).

    lo_translate->detect_language_projects(
      EXPORTING
        iv_p_projects_id = CONV #( lo_translate->gv_project_id )
        is_input         = ls_input
      IMPORTING
        es_output        =  DATA(ls_output)
        ev_ret_code      =  DATA(lv_ret_code)
        ev_err_text      =  DATA(lv_err_text)
        es_err_resp      =  DATA(lv_err_resp)
    ).
    IF lo_translate->is_success( lv_ret_code ) = abap_true.
      cl_demo_output=>new(
      )->begin_section( 'API Call Successful:'
      )->write_text( 'Detected Language:'
      )->write_data( ls_output-languages[ 1 ]-language_code
      )->display( ).
    ELSE.
      cl_demo_output=>new(
      )->begin_section( 'API Call Unsuccessful:'
      )->write_text( 'Error Message:'
      )->write_text( lv_err_text
      )->display( ).
    ENDIF.
  CATCH /goog/cx_sdk INTO DATA(lo_sdk_excp).
    DATA(lv_error) = lo_sdk_excp->get_text( ).
    cl_demo_output=>new(
     )->begin_section( 'Exception Occured:'
     )->write_text( lv_error
     )->display( ).
ENDTRY.
  1. প্রতিবেদনটি সংরক্ষণ করুন এবং সক্রিয় করুন।
  2. রিপোর্ট চালান (F8)।

সফলভাবে সঞ্চালন করার সময় আপনাকে নীচে দেখানো হিসাবে রিপোর্ট আউটপুট দেখতে হবে:

a36e48bded53e62d.png

9. GET_SUPPORTED_LANGUAGES পদ্ধতিতে কল করার জন্য একটি Z-রিপোর্ট তৈরি করুন

  1. আপনার SAP সিস্টেমে লগ ইন করুন
  2. লেনদেন কোড SE38 এ যান এবং ZDEMO_GET_LANGUAGES.
  3. পপ-আপে যেটি খোলে, নীচে দেখানো হিসাবে বিশদ বিবরণ দিন এবং সংরক্ষণ করুন ক্লিক করুন।

3819fc355cf2cd4d.png

পরবর্তী পপ-আপে হয় স্থানীয় অবজেক্ট নির্বাচন করুন অথবা আপনার পছন্দ অনুযায়ী একটি প্যাকেজ নাম প্রদান করুন।

  1. ABAP সম্পাদকে, নিম্নলিখিত কোড যোগ করুন:
DATA lo_translate TYPE REF TO /goog/cl_translation_v3.

TRY.
    lo_translate = NEW #( iv_key_name = 'TEST_TRANSLATION').

    lo_translate->get_supported_languages_pro(
      EXPORTING
        iv_q_displaylanguagecode = 'en-US'
        iv_p_projects_id         =  CONV #( lo_translate->gv_project_id )
      IMPORTING
        es_output        =  DATA(ls_output)
        ev_ret_code      =  DATA(lv_ret_code)
        ev_err_text      =  DATA(lv_err_text)
        es_err_resp      =  DATA(lv_err_resp)
    ).

    IF lo_translate->is_success( lv_ret_code ) = abap_true.
      cl_demo_output=>new(
      )->begin_section( 'API Call Successful:'
      )->write_text( 'Supported Languages:'
      )->write_data( ls_output-languages
      )->display( ).
    ELSE.
      cl_demo_output=>new(
      )->begin_section( 'API Call Unsuccessful:'
      )->write_text( 'Error Message:'
      )->write_text( lv_err_text
      )->display( ).
    ENDIF.
  CATCH /goog/cx_sdk INTO DATA(lo_sdk_excp).
    DATA(lv_error) = lo_sdk_excp->get_text( ).
    cl_demo_output=>new(
     )->begin_section( 'Exception Occured:'
     )->write_text( lv_error
     )->display( ).
ENDTRY.
  1. প্রতিবেদনটি সংরক্ষণ করুন এবং সক্রিয় করুন।
  2. রিপোর্ট চালান (F8)।

সফলভাবে সঞ্চালন করার সময় আপনাকে নীচে দেখানো হিসাবে রিপোর্ট আউটপুট দেখতে হবে:

78199926919e7801.png

10. অভিনন্দন

অভিনন্দন! আপনি "Google ক্লাউডের জন্য ABAP SDK-এর সাথে অনুবাদ API ব্যবহার" কোডল্যাব সফলভাবে সম্পন্ন করেছেন।

ক্লাউড ট্রান্সলেশন এপিআই ভি 3 ক্লাউড ট্রান্সলেশন এপিআই অ্যাডভান্সড নামেও পরিচিত এর অনেকগুলি বৈশিষ্ট্য রয়েছে যার মধ্যে রয়েছে:

  • কাস্টম মডেলের সাথে অনুবাদ করুন
  • শব্দকোষ ব্যবহার করে অনুবাদ করুন
  • প্রতিবর্ণীকরণ সমর্থন
  • নথি অনুবাদ

বিভিন্ন Google ক্লাউড পরিষেবাগুলি অ্যাক্সেস করার জন্য আপনি এখন Google Cloud এর জন্য ABAP SDK ব্যবহার করার আপনার শেখার যাত্রা চালিয়ে যেতে নিম্নলিখিত কোডল্যাবগুলির সাথে এগিয়ে যেতে পারেন৷

  • পাব/সাব-এ একটি ইভেন্ট পাঠান
  • Cloud Pub/Sub থেকে একটি ইভেন্ট পান
  • চাঙ্কিং ব্যবহার করে একটি ক্লাউড স্টোরেজ বালতিতে একটি বড় বস্তু আপলোড করুন
  • PII রিডাকশনের জন্য DLP API ব্যবহার করুন
  • ABAP থেকে BigQuery ML-এ কল করুন

11. পরিষ্কার করুন

আপনি যদি Google ক্লাউডের জন্য ABAP SDK-এর সাথে সম্পর্কিত অতিরিক্ত কোডল্যাবগুলি চালিয়ে যেতে না চান, তাহলে অনুগ্রহ করে পরিষ্কারের সাথে এগিয়ে যান৷

প্রকল্পটি মুছুন

  • Google ক্লাউড প্রকল্প মুছুন:
gcloud projects delete abap-sdk-poc

পৃথক সম্পদ মুছুন

  1. গণনা উদাহরণ মুছুন:
gcloud compute instances delete abap-trial-docker
  1. ফায়ারওয়াল-নিয়ম মুছুন:
gcloud compute firewall-rules delete sapmachine
  1. পরিষেবা অ্যাকাউন্ট মুছুন:
gcloud iam service-accounts delete \
    abap-sdk-dev@abap-sdk-poc.iam.gserviceaccount.com