সংস্করণ নিয়ন্ত্রণ থেকে ক্লাউড রানে স্বয়ংক্রিয়ভাবে জেনারেটিভ এআই স্ভেল্ট ওয়েব অ্যাপ্লিকেশন স্থাপন করুন

1. সংক্ষিপ্ত বিবরণ

প্রথমবারের মতো একটি ওয়েব অ্যাপ্লিকেশন স্থাপন করা ভীতিকর হতে পারে। প্রথমবার স্থাপনের পরেও, যদি প্রক্রিয়াটি খুব বেশি পরিশ্রমের হয়, তাহলে আপনি আপনার অ্যাপ্লিকেশনের নতুন সংস্করণ স্থাপন করা এড়াতে পারেন। ক্রমাগত স্থাপনের মাধ্যমে, আপনি সহজেই আপনার অ্যাপ্লিকেশনের পরিবর্তনগুলি স্বয়ংক্রিয়ভাবে স্থাপন করতে পারেন।

এই ল্যাবে, আপনি একটি ওয়েব অ্যাপ্লিকেশন লেখেন এবং আপনার অ্যাপ্লিকেশনের সোর্স কোডে কোনও পরিবর্তন করা হলে স্বয়ংক্রিয়ভাবে আপনার অ্যাপ্লিকেশন স্থাপনের জন্য ক্লাউড রান কনফিগার করেন। তারপর আপনি আপনার অ্যাপ্লিকেশনটি পরিবর্তন করেন এবং আবার স্থাপন করেন।

তুমি কি শিখবে

  • ক্লাউড শেল এডিটর দিয়ে একটি ওয়েব অ্যাপ্লিকেশন লিখুন
  • আপনার অ্যাপ্লিকেশন কোডটি GitHub-এ সংরক্ষণ করুন
  • ক্লাউড রানে আপনার অ্যাপ্লিকেশনটি স্বয়ংক্রিয়ভাবে স্থাপন করুন
  • Vertex AI ব্যবহার করে আপনার অ্যাপ্লিকেশনে জেনারেটিভ AI যোগ করুন

2. পূর্বশর্ত

  1. যদি আপনার ইতিমধ্যেই একটি Google অ্যাকাউন্ট না থাকে, তাহলে আপনাকে অবশ্যই একটি Google অ্যাকাউন্ট তৈরি করতে হবে।
    • কর্মক্ষেত্র বা স্কুল অ্যাকাউন্টের পরিবর্তে ব্যক্তিগত অ্যাকাউন্ট ব্যবহার করুন। কর্মক্ষেত্র এবং স্কুল অ্যাকাউন্টগুলিতে এমন বিধিনিষেধ থাকতে পারে যা আপনাকে এই ল্যাবের জন্য প্রয়োজনীয় API গুলি সক্ষম করতে বাধা দেয়।
  2. যদি আপনার ইতিমধ্যেই একটি GitHub অ্যাকাউন্ট না থাকে, তাহলে আপনাকে অবশ্যই একটি GitHub অ্যাকাউন্ট তৈরি করতে হবে।

৩. প্রকল্প সেটআপ

  1. গুগল ক্লাউড কনসোলে সাইন-ইন করুন।
  2. ক্লাউড কনসোলে বিলিং সক্ষম করুন
    • এই ল্যাবটি সম্পূর্ণ করতে ক্লাউড রিসোর্সে $1 USD এর কম খরচ হবে।
    • আরও চার্জ এড়াতে আপনি এই ল্যাবের শেষে রিসোর্স মুছে ফেলার ধাপগুলি অনুসরণ করতে পারেন।
    • নতুন ব্যবহারকারীরা $300 USD বিনামূল্যে ট্রায়ালের জন্য যোগ্য।
    • Gen AI for Devs ইভেন্টে যোগ দিচ্ছেন? $1 USD ক্রেডিট পাওয়া যেতে পারে।
  3. একটি নতুন প্রকল্প তৈরি করুন অথবা বিদ্যমান প্রকল্পটি পুনরায় ব্যবহার করতে বেছে নিন।
  4. ক্লাউড বিলিং-এর আমার প্রকল্পগুলিতে বিলিং সক্ষম আছে কিনা তা নিশ্চিত করুন।
    • যদি আপনার নতুন প্রকল্পের Billing account কলামে Billing is disabled বলে:
      1. Actions কলামের তিনটি বিন্দুতে ক্লিক করুন।
      2. বিলিং পরিবর্তন করুন ক্লিক করুন
      3. আপনি যে বিলিং অ্যাকাউন্টটি ব্যবহার করতে চান তা নির্বাচন করুন।
    • আপনি যদি Gen AI for Devs ইভেন্টে যোগদান করেন, তাহলে অ্যাকাউন্টটির নাম সম্ভবত Google Cloud Platform Trial Billing Account হবে।

৪. ক্লাউড শেল এডিটর খুলুন

  1. ক্লাউড শেল এডিটরে নেভিগেট করুন
  2. যদি স্ক্রিনের নীচে টার্মিনালটি না দেখা যায়, তাহলে এটি খুলুন:
    • হ্যামবার্গার মেনুতে ক্লিক করুন হ্যামবার্গার মেনু আইকন
    • টার্মিনাল ক্লিক করুন
    • নতুন টার্মিনাল ক্লিক করুন ক্লাউড শেল এডিটরে নতুন টার্মিনাল খুলুন
  3. টার্মিনালে, এই কমান্ড দিয়ে আপনার প্রকল্পটি সেট করুন:
    • বিন্যাস:
      gcloud config set project [PROJECT_ID]
      
    • উদাহরণ:
      gcloud config set project lab-project-id-example
      
    • যদি আপনি আপনার প্রকল্প আইডি মনে করতে না পারেন:
      • আপনি আপনার সমস্ত প্রকল্প আইডি তালিকাভুক্ত করতে পারেন:
        gcloud projects list | awk '/PROJECT_ID/{print $2}'
        
      ক্লাউড শেল এডিটর টার্মিনালে প্রোজেক্ট আইডি সেট করুন
  4. অনুমোদনের জন্য অনুরোধ করা হলে, চালিয়ে যেতে অনুমোদনে ক্লিক করুন। ক্লাউড শেল অনুমোদন করতে ক্লিক করুন
  5. আপনার এই বার্তাটি দেখা উচিত:
    Updated property [core/project].
    
    যদি আপনি একটি WARNING দেখতে পান এবং জিজ্ঞাসা করা হয় Do you want to continue (Y/N)? তাহলে সম্ভবত আপনি প্রজেক্ট আইডি ভুলভাবে প্রবেশ করেছেন। N টিপুন, Enter টিপুন, এবং আবার gcloud config set project কমান্ডটি চালানোর চেষ্টা করুন।

৫. API গুলি সক্ষম করুন

টার্মিনালে, API গুলি সক্রিয় করুন:

gcloud services enable \
  run.googleapis.com \
  cloudbuild.googleapis.com \
  aiplatform.googleapis.com

এই কমান্ডটি সম্পন্ন হতে কয়েক মিনিট সময় লাগতে পারে, কিন্তু অবশেষে এটির মতো একটি সফল বার্তা আসবে:

Operation "operations/acf.p2-73d90d00-47ee-447a-b600" finished successfully.

৬. গিট কনফিগার করুন

  1. আপনার গ্লোবাল গিট ব্যবহারকারীর ইমেল সেট করুন:
    git config --global user.email "you@example.com"
    
  2. আপনার গ্লোবাল গিট ব্যবহারকারীর নাম সেট করুন:
    git config --global user.name "Your Name"
    
  3. আপনার গ্লোবাল গিট ডিফল্ট শাখাটি main এ সেট করুন:
    git config --global init.defaultBranch main
    

৭. আপনার কোড লিখুন

Svelte ভাষায় আবেদনপত্র লেখার জন্য:

  1. হোম ডিরেক্টরিতে নেভিগেট করুন:
    cd ~
    
  2. নতুন codelab-genai Svelte অ্যাপ্লিকেশন তৈরি করুন: অ্যাপ্লিকেশনটি SvelteKit কে তার ওয়েব পরিবেশন কাঠামো হিসেবে ব্যবহার করে।
     npx sv create codelab-genai \
         --template=minimal \
         --types=ts \
         --no-add-ons
    
  3. যদি sv প্যাকেজ ইনস্টল করতে বলা হয়, তাহলে Enter টিপুন এবং এগিয়ে যান:
    Need to install the following packages:
    sv@0.6.4
    Ok to proceed? (y)
    
  4. কোন প্যাকেজ ম্যানেজার ব্যবহার করবেন জিজ্ঞাসা করা হলে, npm নির্বাচন করুন এবং Enter টিপুন:
    Which package manager do you want to install dependencies with?
    │  ○ None
    │  ● npm
    │  ○ yarn
    │  ○ pnpm
    │  ○ bun
    
  5. codelab-genai ডিরেক্টরিতে নেভিগেট করুন:
    cd codelab-genai
    
  6. ক্লাউড শেল এডিটরে +page.svelte ফাইলটি খুলুন:
    cloudshell edit src/routes/+page.svelte
    
    এখন স্ক্রিনের উপরের অংশে একটি ফাইল প্রদর্শিত হবে। এখানেই আপনি এই +page.svelte ফাইলটি সম্পাদনা করতে পারবেন। দেখান যে কোডটি স্ক্রিনের উপরের অংশে যায়।
  7. বিদ্যমান কোডটি মুছে ফেলুন। নিম্নলিখিত কোডটি কপি করুন এবং খোলা +page.svelte ফাইলে পেস্ট করুন:
    <script lang="ts">
        let greeting="Hello, World!"
    </script>
    
    <main>
        {greeting}
    </main>
    
    কয়েক সেকেন্ড পরে, ক্লাউড শেল এডিটর আপনার কোডটি স্বয়ংক্রিয়ভাবে সংরক্ষণ করবে। এই কোডটি আমাদের "হ্যালো ওয়ার্ল্ড!" শুভেচ্ছা জানিয়ে http অনুরোধের জবাব দেয়।

আপনার অ্যাপ্লিকেশনের জন্য আপনার প্রাথমিক কোডটি সম্পন্ন হয়েছে এবং সংস্করণ নিয়ন্ত্রণে সংরক্ষণের জন্য প্রস্তুত।

৮. একটি সংগ্রহস্থল তৈরি করুন

  1. আপনার স্ক্রিনের নীচে ক্লাউড শেল টার্মিনালে ফিরে যান।
  2. নিশ্চিত করুন যে আপনি এখনও সঠিক ডিরেক্টরিতে আছেন:
    cd ~/codelab-genai
    
  3. আপনার গিট রিপোজিটরিটি শুরু করুন
    git init -b main
    
  4. GitHub CLI তে লগ ইন করুন
    gh auth login
    
    ডিফল্ট বিকল্পগুলি গ্রহণ করতে এন্টার Enter এবং GitHub CLI টুলের নির্দেশাবলী অনুসরণ করুন, যার মধ্যে রয়েছে:
    1. আপনি কোন অ্যাকাউন্টে লগ ইন করতে চান? GitHub.com
    2. এই হোস্টে গিট অপারেশনের জন্য আপনার পছন্দের প্রোটোকল কী? HTTPS
    3. আপনার GitHub শংসাপত্র দিয়ে Git প্রমাণীকরণ করবেন? Y (যদি এটি প্রদর্শিত না হয় তবে এড়িয়ে যান।)
    4. আপনি কিভাবে GitHub CLI প্রমাণীকরণ করতে চান? Login with a web browser
    5. আপনার এককালীন কোডটি কপি করুন
    6. https://github.com/login/device খুলুন
    7. আপনার এককালীন কোডটি পেস্ট করুন
    8. গিটহাব অনুমোদন করুন ক্লিক করুন
    9. আপনার লগইন সম্পূর্ণ করুন
  5. আপনি লগ ইন করেছেন তা নিশ্চিত করুন:
    gh api user -q ".login"
    
    আপনি যদি সফলভাবে লগ ইন করে থাকেন, তাহলে এটি আপনার GitHub ব্যবহারকারীর নামটি আউটপুট করবে।
  6. একটি GITHUB_USERNAME ভেরিয়েবল তৈরি করুন
    GITHUB_USERNAME=$(gh api user -q ".login")
    
  7. নিশ্চিত করুন যে আপনি পরিবেশ পরিবর্তনশীল তৈরি করেছেন:
    echo ${GITHUB_USERNAME}
    
    যদি আপনি সফলভাবে ভেরিয়েবলটি তৈরি করে থাকেন, তাহলে এটি আপনার GitHub ব্যবহারকারীর নামটি আউটপুট করবে।
  8. codelab-genai নামে একটি খালি GitHub সংগ্রহস্থল তৈরি করুন:
    gh repo create codelab-genai --private
    
    যদি আপনি ত্রুটিটি পান:
    GraphQL: Name already exists on this account (createRepository)
    
    তাহলে আপনার কাছে ইতিমধ্যেই codelab-genai নামে একটি সংগ্রহস্থল আছে। এই টিউটোরিয়ালটি অনুসরণ করার জন্য আপনার কাছে দুটি বিকল্প আছে:
  9. রিমোট origin হিসেবে codelab-genai রিপোজিটরি যোগ করুন:
    git remote add origin https://github.com/${GITHUB_USERNAME}/codelab-genai
    

৯. আপনার কোড শেয়ার করুন

  1. আপনি সঠিক ডিরেক্টরিতে আছেন তা নিশ্চিত করুন:
    cd ~/codelab-genai
    
  2. বর্তমান ডিরেক্টরির সমস্ত ফাইল এই কমিটে যোগ করুন:
    git add .
    
  3. প্রথম কমিট তৈরি করুন:
    git commit -m "add http server"
    
  4. আপনার কমিটটি origin রিপোজিটরির main শাখায় ঠেলে দিন:
    git push -u origin main
    

আপনি এই কমান্ডটি চালাতে পারেন এবং GitHub-এ আপনার অ্যাপ্লিকেশন কোড দেখতে ফলাফলের URL-এ যেতে পারেন:

echo -e "\n\nTo see your code, visit this URL:\n \
    https://github.com/${GITHUB_USERNAME}/codelab-genai/blob/main/src/routes/+page.svelte \n\n"

১০. স্বয়ংক্রিয় স্থাপনা সেট আপ করুন

  1. ক্লাউড শেল এডিটর ট্যাবটি খোলা রাখুন। আমরা পরে এই ট্যাবে ফিরে আসব।
  2. একটি নতুন ট্যাবে, ক্লাউড রান পৃষ্ঠাটি দেখুন।
  3. কনসোলে সঠিক Google ক্লাউড প্রজেক্টটি নির্বাচন করুন গুগল ক্লাউড কনসোল প্রকল্পের ড্রপডাউন
  4. কানেক্ট রেপোতে ক্লিক করুন
  5. "ক্লাউড বিল্ড দিয়ে সেট আপ করুন" এ ক্লিক করুন
    1. রিপোজিটরি প্রোভাইডার হিসেবে GitHub নির্বাচন করুন
      • যদি আপনি ব্রাউজারে আপনার GitHub অ্যাকাউন্টে লগ ইন না করে থাকেন, তাহলে আপনার শংসাপত্র দিয়ে লগ ইন করুন।
    2. প্রমাণীকরণ ক্লিক করুন এবং তারপর চালিয়ে যান ক্লিক করুন।
    3. লগ ইন করার পর, আপনি ক্লাউড রান পৃষ্ঠায় একটি বার্তা দেখতে পাবেন যেখানে লেখা থাকবে যে আপনার কোনও রিপোজিটরিতে গিটহাব অ্যাপ ইনস্টল করা নেই।
    4. INSTALL GOOGLE CLOUD BUILD বোতামে ক্লিক করুন।
      • ইনস্টলেশন সেটআপ পৃষ্ঠায়, "Only select repositories" নির্বাচন করুন এবং CLI এর মাধ্যমে তৈরি করা codelab-genai repository নির্বাচন করুন।
      • ইনস্টল এ ক্লিক করুন
      • দ্রষ্টব্য: যদি আপনার অনেক GitHub রিপোজিটরি থাকে, তাহলে এটি লোড হতে কয়েক মিনিট সময় নিতে পারে।
    5. রিপোজিটরি হিসেবে your-user-name/codelab-genai নির্বাচন করুন
      • যদি রিপোজিটরিটি উপস্থিত না থাকে, তাহলে Manage Connected Repositories লিঙ্কে ক্লিক করুন।
    6. শাখাটিকে ^main$ হিসেবে ছেড়ে দিন
    7. গুগল ক্লাউডের বিল্ডপ্যাকের মাধ্যমে Go, Node.js, Python, Java, .NET Core, Ruby অথবা PHP- তে ক্লিক করুন।
      • অন্যান্য ক্ষেত্রগুলি ( Build context directory , Entrypoint এবং Function target ) যেমন আছে তেমনই ছেড়ে দিন।
    8. সংরক্ষণ করুন ক্লিক করুন
  6. প্রমাণীকরণে নিচে স্ক্রোল করুন
  7. অননুমোদিত আহ্বানগুলিকে অনুমতি দিন ক্লিক করুন
  8. তৈরি করুন ক্লিক করুন

বিল্ড শেষ হয়ে গেলে (যাতে বেশ কয়েক মিনিট সময় লাগবে), এই কমান্ডটি চালান এবং আপনার চলমান অ্যাপ্লিকেশনটি দেখতে ফলাফলের URL টি দেখুন:

echo -e "\n\nOnce the build finishes, visit your live application:\n \
    "$( \
        gcloud run services list | \
        grep codelab-genai | \
        awk '/URL/{print $2}' | \
        head -1 \
    )" \n\n"

১১. আপনার কোড পরিবর্তন করুন

ক্লাউড শেল এডিটরে ফিরে যান

যদি আপনার এখনও ক্লাউড শেল এডিটর খোলা থাকে, তাহলে আপনি এই ধাপগুলি এড়িয়ে যেতে পারেন।

  1. ক্লাউড শেল এডিটরে নেভিগেট করুন
  2. যদি স্ক্রিনের নীচে টার্মিনালটি না দেখা যায়, তাহলে এটি খুলুন:
    • হ্যামবার্গার মেনুতে ক্লিক করুন হ্যামবার্গার মেনু আইকন
    • টার্মিনাল ক্লিক করুন
    • নতুন টার্মিনাল ক্লিক করুন ক্লাউড শেল এডিটরে নতুন টার্মিনাল খুলুন
  3. টার্মিনালে, এই কমান্ড দিয়ে আপনার প্রকল্পটি সেট করুন:
    • বিন্যাস:
      gcloud config set project [PROJECT_ID]
      
    • উদাহরণ:
      gcloud config set project lab-project-id-example
      
    • যদি আপনি আপনার প্রকল্প আইডি মনে করতে না পারেন:
      • আপনি আপনার সমস্ত প্রকল্প আইডি তালিকাভুক্ত করতে পারেন:
        gcloud projects list | awk '/PROJECT_ID/{print $2}'
        
      ক্লাউড শেল এডিটর টার্মিনালে প্রোজেক্ট আইডি সেট করুন
  4. অনুমোদনের জন্য অনুরোধ করা হলে, চালিয়ে যেতে অনুমোদনে ক্লিক করুন। ক্লাউড শেল অনুমোদন করতে ক্লিক করুন
  5. আপনার এই বার্তাটি দেখা উচিত:
    Updated property [core/project].
    
    যদি আপনি একটি WARNING দেখতে পান এবং জিজ্ঞাসা করা হয় Do you want to continue (Y/N)? তাহলে সম্ভবত আপনি প্রজেক্ট আইডি ভুলভাবে প্রবেশ করেছেন। N টিপুন, Enter টিপুন, এবং আবার gcloud config set project কমান্ডটি চালানোর চেষ্টা করুন।

আপনার অ্যাপ্লিকেশনে Vertex AI যোগ করুন

  1. আপনার স্ক্রিনের নীচে ক্লাউড শেল টার্মিনালে ফিরে যান।
  2. নিশ্চিত করুন যে আপনি এখনও সঠিক ডিরেক্টরিতে আছেন:
    cd ~/codelab-genai
    
  3. Node.js Vertex AI SDK ইনস্টল করুন:
    npm install @google-cloud/vertexai
    
  4. Node.js Google Auth SDK ইনস্টল করুন:
    npm install google-auth-library
    
  5. টার্মিনালে src/routes/facts/+server.ts তৈরি করুন
    mkdir src/routes/facts
    touch src/routes/facts/+server.ts
    
  6. ক্লাউড শেল এডিটরে +server.ts খুলুন।
    cloudshell edit src/routes/facts/+server.ts
    
  7. নিচের কোডটি কপি করে খোলা +server.ts ফাইলে পেস্ট করুন:
    import { VertexAI } from '@google-cloud/vertexai';
    import { GoogleAuth } from 'google-auth-library';
    
    const auth = new GoogleAuth();
    const project = await auth.getProjectId();
    
    const getAnimalFacts = async (animal: string): Promise<string> => {
    
        const vertex = new VertexAI({ project: project });
        const generativeModel = vertex.getGenerativeModel({
            model: 'gemini-1.5-flash'
        });
    
        const prompt = `Give me 10 fun facts about ${animal || 'dog'}. 
                Return as json as an array in the format ['fact 1', 'fact 2']
                Remove backticks and other markdown formatting.`;
        const resp = await generativeModel.generateContent(prompt);
    
        if (!resp.response.candidates) {
            throw new Error('Did not receive response candidates.')
        }
    
        console.log({ text: resp.response.candidates[0].content.parts[0].text })
    
        return JSON.stringify(JSON.parse(resp.response.candidates[0].content.parts[0].text || '[]'));
    }
    
    export async function GET({ url }:{ url:URL}): Promise<Response> {
    
        let animal: string = url.searchParams.get('animal') || 'dog';
    
        const animalFacts = await getAnimalFacts(animal);
    
        return new Response(animalFacts, {
            headers: {
                'Content-Type': 'application/json'
            }
        });
    }
    
  8. ক্লাউড শেল এডিটরে +page.svelte খুলুন
    cloudshell edit src/routes/+page.svelte
    
  9. আপনার +page.svelte ফাইলের কোডটি দিয়ে প্রতিস্থাপন করুন:
    <script lang="ts">
        let animal: string = $state("");
        let animalFacts: string[] = $state([]);
    
        async function getNewFunFacts() {
            animalFacts = ["(loading...)"];
            const response = await fetch(`/facts?animal=${animal}`);
            animalFacts = await response.json();
        }
    </script>
    
    <main>
        <h1>Animal Fun Facts!</h1>
        <label for="animal">Animal</label>
        <input id="animal" placeholder="dog" bind:value={animal} />
        <button onclick={getNewFunFacts}> Get New Fun Facts </button>
        <ul>
            {#each animalFacts as animalFact}
                <li>{animalFact}</li>
            {/each}
        </ul>
    </main>
    

১২. পুনঃমোতায়েন

  1. নিশ্চিত করুন যে আপনি এখনও ক্লাউড শেলের সঠিক ডিরেক্টরিতে আছেন:
    cd ~/codelab-genai
    
  2. আপনার স্থানীয় গিট রিপোজিটরিতে আপনার অ্যাপ্লিকেশনের একটি নতুন সংস্করণ কমিট করতে এই কমান্ডগুলি চালান:
    git add .
    git commit -m "add latest changes"
    
  3. পরিবর্তনগুলি GitHub-এ পুশ করুন:
    git push
    
  4. বিল্ড শেষ হয়ে গেলে, এই কমান্ডটি চালান এবং আপনার ডিপ্লয় করা অ্যাপ্লিকেশনটি দেখুন:
    echo -e "\n\nOnce the build finishes, visit your live application:\n \
        "$( \
            gcloud run services list | \
            grep codelab-genai | \
            awk '/URL/{print $2}' | \
            head -1 \
        )" \n\n"
    

আপনার পরিবর্তনগুলি দেখতে পাওয়ার আগে বিল্ডটি সম্পূর্ণ হতে কয়েক মিনিট সময় লাগতে পারে।

আপনি সমস্ত সংশোধনের ইতিহাস এখানে দেখতে পারেন: https://console.cloud.google.com/run/detail/us-central1/codelab-genai/revisions

১৩. (ঐচ্ছিক) আপনার ভার্টেক্স এআই ব্যবহার অডিট করুন

অন্যান্য গুগল ক্লাউড পরিষেবার মতো আপনিও ভার্টেক্স এআই কার্যক্রম নিরীক্ষা করতে পারেন। অডিট লগ আপনাকে "কে কী করেছে, কোথায় এবং কখন করেছে?" প্রশ্নের উত্তর দিতে সাহায্য করে। ভার্টেক্স এআই-এর জন্য প্রশাসনিক অডিট লগগুলি ডিফল্টরূপে সক্ষম থাকে। কন্টেন্ট তৈরির অনুরোধ নিরীক্ষা করতে আপনাকে ডেটা অ্যাক্সেস অডিট লগ সক্ষম করতে হবে:

  1. গুগল ক্লাউড কনসোলে, অডিট লগ পৃষ্ঠায় যান:

    যদি আপনি এই পৃষ্ঠাটি খুঁজে পেতে অনুসন্ধান বার ব্যবহার করেন, তাহলে ফলাফলটি নির্বাচন করুন যার উপশিরোনাম IAM & Admin
  2. নিশ্চিত করুন যে বিদ্যমান গুগল ক্লাউড প্রকল্পটিই আপনার ক্লাউড রান অ্যাপ্লিকেশন তৈরি করছে।
  3. ডেটা অ্যাক্সেস অডিট লগ কনফিগারেশন টেবিলে, সার্ভিস কলাম থেকে নির্বাচিত Vertex AI API খুঁজুন।
  4. লগ টাইপস ট্যাবে, ডেটা অ্যাক্সেস অডিট লগ টাইপ Admin read এবং Data read নির্বাচন করুন।
  5. সংরক্ষণ করুন ক্লিক করুন।

এটি সক্রিয় করার পরে আপনি অ্যাপ্লিকেশনের প্রতিটি আমন্ত্রণের জন্য অডিট লগ দেখতে সক্ষম হবেন। আমন্ত্রণের বিবরণ সহ অডিট লগগুলি দেখতে নিম্নলিখিতগুলি করুন:

  1. আপনার ডিপ্লয় করা অ্যাপ্লিকেশনে ফিরে যান এবং লগটি ট্রিগার করতে পৃষ্ঠাটি রিফ্রেশ করুন।
  2. গুগল ক্লাউড কনসোলে, লগ এক্সপ্লোরার পৃষ্ঠায় যান:

  3. কোয়েরি উইন্ডোতে টাইপ করুন:
    LOG_ID("cloudaudit.googleapis.com%2Fdata_access")
    protoPayload.serviceName="aiplatform.googleapis.com"
    
  4. রান কোয়েরি ক্লিক করুন।

অডিট লগগুলি ভার্টেক্স এআই এপিআই-এর ব্যবহার ক্যাপচার করে কিন্তু তারা আপনাকে প্রম্পট বা প্রতিক্রিয়ার বিবরণের মতো কাজের চাপ সম্পর্কিত ডেটা পর্যবেক্ষণ করতে দেয় না।

১৪. (ঐচ্ছিক) আপনার এআই কাজের চাপের পর্যবেক্ষণযোগ্যতা বৃদ্ধি করুন

অডিট লগগুলি কাজের চাপ সম্পর্কিত তথ্য ধারণ করে না। আপনার কাজের চাপের পর্যবেক্ষণযোগ্যতা বাড়ানোর জন্য আপনাকে স্পষ্টভাবে এই তথ্য লগ করতে হবে। এটি করার জন্য আপনি আপনার পছন্দের লগিং ফ্রেমওয়ার্ক ব্যবহার করতে পারেন। নিম্নলিখিত পদক্ষেপগুলি নেটিভ Node.js লগিং প্রক্রিয়া ব্যবহার করে কীভাবে এটি করবেন তা প্রদর্শন করে।

  1. ক্লাউড শেল এডিটরে +server.ts পুনরায় খুলুন
    cloudshell edit src/routes/facts/+server.ts
    
  2. await generativeModel.generateContent(prompt) (লাইন ১৭) কলের পরে নিম্নলিখিত লাইনটি যোগ করুন:
        console.log(JSON.stringify({
            severity: 'DEBUG',
            message: 'Content is generated',
            prompt: prompt,
            response: resp.response,
        }));
    
    এই কোডটি স্ট্রাকচার্ড লগিং ফর্ম্যাট ব্যবহার করে জেনারেট করা কন্টেন্ট সম্পর্কে তথ্য stdout এ লেখে। Cloud Run-এ একটি লগিং এজেন্ট stdout এ প্রিন্ট করা আউটপুট ক্যাপচার করে এবং এই ফর্ম্যাটটি ক্লাউড লগিং-এ লেখে
  3. ক্লাউড শেল পুনরায় খুলুন এবং আপনি সঠিক ডিরেক্টরিতে আছেন তা নিশ্চিত করতে নিম্নলিখিত কমান্ডটি টাইপ করুন:
    cd ~/codelab-genai
    
  4. পরিবর্তনগুলি করুন:
    git commit -am "observe generated content"
    
  5. পরিবর্তিত সংস্করণের পুনঃস্থাপন শুরু করতে GitHub-এ পরিবর্তনগুলি পুশ করুন:
    git push
    

নতুন সংস্করণটি স্থাপনের পরে আপনি ভার্টেক্স এআই-তে কল সম্পর্কে ডিবাগ তথ্য পর্যবেক্ষণ করতে পারবেন।

আপনার অ্যাপ্লিকেশন লগগুলি দেখতে নিম্নলিখিতগুলি করুন:

  1. গুগল ক্লাউড কনসোলে, লগ এক্সপ্লোরার পৃষ্ঠায় যান:

  2. কোয়েরি উইন্ডোতে টাইপ করুন:
    LOG_ID("run.googleapis.com%2Fstdout")
    severity=DEBUG
    
  3. রান কোয়েরি ক্লিক করুন।

কোয়েরির ফলাফলে প্রম্পট এবং ভার্টেক্স এআই রেসপন্স সহ লগ দেখানো হয়েছে যার মধ্যে "নিরাপত্তা রেটিং" রয়েছে যা নিরাপত্তা অনুশীলন পর্যবেক্ষণের জন্য ব্যবহার করা যেতে পারে।

১৫. (ঐচ্ছিক) পরিষ্কার করা

পরিষেবাটি ব্যবহার না করা অবস্থায় ক্লাউড রান চার্জ করে না, তবুও আর্টিফ্যাক্ট রেজিস্ট্রিতে কন্টেইনার ছবি সংরক্ষণের জন্য আপনাকে চার্জ করা হতে পারে। চার্জ এড়াতে আপনি আপনার ক্লাউড প্রকল্পটি মুছে ফেলতে পারেন। আপনার ক্লাউড প্রকল্পটি মুছে ফেলার ফলে সেই প্রকল্পের মধ্যে ব্যবহৃত সমস্ত সংস্থানের জন্য বিলিং বন্ধ হয়ে যায়।

আপনি যদি চান, প্রকল্পটি মুছে ফেলুন:

gcloud projects delete $GOOGLE_CLOUD_PROJECT

আপনি আপনার ক্লাউডশেল ডিস্ক থেকে অপ্রয়োজনীয় রিসোর্স মুছে ফেলতেও চাইতে পারেন। আপনি করতে পারেন:

  1. কোডল্যাব প্রজেক্ট ডিরেক্টরিটি মুছে ফেলুন:
    rm -rf ~/codelab-genai
    
  2. সতর্কতা! এই ক্রিয়াটি পূর্বাবস্থায় ফেরানো যাবে না! যদি আপনি আপনার ক্লাউড শেলের সবকিছু মুছে ফেলতে চান যাতে জায়গা খালি হয়, তাহলে আপনি আপনার সম্পূর্ণ হোম ডিরেক্টরি মুছে ফেলতে পারেন। আপনি যা রাখতে চান তা যেন অন্য কোথাও সংরক্ষিত থাকে সেদিকে খেয়াল রাখুন।
    sudo rm -rf $HOME
    

১৬. অভিনন্দন

এই ল্যাবে, আপনি একটি ওয়েব অ্যাপ্লিকেশন লিখেছিলেন এবং আপনার অ্যাপ্লিকেশনের সোর্স কোডে কোনও পরিবর্তন করা হলে স্বয়ংক্রিয়ভাবে আপনার অ্যাপ্লিকেশনটি স্থাপনের জন্য ক্লাউড রান কনফিগার করেছিলেন। তারপর আপনি আপনার অ্যাপ্লিকেশনটি পরিবর্তন করেছেন এবং এটি আবার স্থাপন করেছেন।

যদি আপনি এই ল্যাবটি উপভোগ করেন, তাহলে আপনি অন্য কোডিং ভাষা বা ফ্রেমওয়ার্কে এটি আবার চেষ্টা করে দেখতে পারেন:

আপনি যদি আজ যে পণ্যগুলির সাথে কাজ করেছেন সেগুলি উন্নত করার জন্য ব্যবহারকারীর অভিজ্ঞতা (UX) গবেষণা গবেষণায় অন্তর্ভুক্ত হতে আগ্রহী হন, তাহলে এখানে নিবন্ধন করুন

আপনার শেখা চালিয়ে যাওয়ার জন্য এখানে কিছু বিকল্প রয়েছে: