সংস্করণ নিয়ন্ত্রণ থেকে ক্লাউড রানে জেনারেটিভ AI Node.js জেনকিট ওয়েব অ্যাপ্লিকেশন স্বয়ংক্রিয়ভাবে স্থাপন করুন

1. ওভারভিউ

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

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

যা শিখবেন

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

2. পূর্বশর্ত

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

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

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

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

  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 কমান্ড চালানোর চেষ্টা করুন।

5. API সক্রিয় করুন

টার্মিনালে, APIs সক্ষম করুন:

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

এই কমান্ডটি সম্পূর্ণ হতে কয়েক মিনিট সময় নিতে পারে, তবে এটি শেষ পর্যন্ত এটির মতো একটি সফল বার্তা তৈরি করবে:

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

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

  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
    

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

Node.js এ একটি আবেদন লিখতে:

  1. হোম ডিরেক্টরিতে নেভিগেট করুন:
    cd ~
    
  2. codelab-genai ডিরেক্টরি তৈরি করুন:
    mkdir codelab-genai
    
  3. codelab-genai ডিরেক্টরিতে নেভিগেট করুন:
    cd codelab-genai
    
  4. একটি index.js ফাইল তৈরি করুন:
    touch index.js
    
  5. package.json ফাইল তৈরি করুন:
    npm init es6 -y
    
  6. একটি নির্ভরতা হিসাবে express যোগ করুন
    npm install express
    
  7. node_modules কমিট প্রতিরোধ করতে .gitignore ফাইল যোগ করুন
    echo node_modules/ >> .gitignore
    
  8. ক্লাউড শেল এডিটরে index.js ফাইলটি খুলুন:
    cloudshell edit index.js
    
    একটি খালি ফাইল এখন পর্দার উপরের অংশে উপস্থিত হওয়া উচিত। এখানে আপনি এই index.js ফাইলটি সম্পাদনা করতে পারেন। দেখান যে কোডটি স্ক্রিনের উপরের বিভাগে যায়
  9. নিম্নলিখিত কোডটি অনুলিপি করুন এবং খোলা index.js ফাইলে পেস্ট করুন:
    import express from 'express';
    
    const app = express();
    app.get('/', async (req, res) => {
        res.send('Hello world!');
    });
    
    const port = process.env.PORT || 8080;
    app.listen(port, () => {
        console.log(`codelab-genai: listening on port ${port}`);
    });
    
    কয়েক সেকেন্ড পরে, ক্লাউড শেল এডিটর আপনার কোড স্বয়ংক্রিয়ভাবে সংরক্ষণ করবে। এই কোড আমাদের "হ্যালো ওয়ার্ল্ড!" অভিবাদন

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

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

  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 শংসাপত্রের সাথে গিটকে প্রমাণীকরণ করবেন? 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 নামে একটি খালি গিটহাব সংগ্রহস্থল তৈরি করুন:
    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
    

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

  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/index.js \n\n"

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

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

একবার বিল্ড শেষ হয়ে গেলে (যা বেশ কয়েক মিনিট সময় নেবে), এই কমান্ডটি চালান এবং আপনার চলমান অ্যাপ্লিকেশনটি দেখতে ফলস্বরূপ 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"

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

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

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

  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 কমান্ড চালানোর চেষ্টা করুন।

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

  1. আপনার স্ক্রিনের নীচে ক্লাউড শেল টার্মিনালে ফিরে যান।
  2. নিশ্চিত করুন যে আপনি এখনও সঠিক ডিরেক্টরিতে আছেন:
    cd ~/codelab-genai
    
  3. Node.js Genkit SDK ইনস্টল করুন:
    npm install @genkit-ai/ai
    
  4. Vertex AI এর জন্য Node.js Genkit SDK ইনস্টল করুন:
    npm install @genkit-ai/vertexai
    
  5. ক্লাউড শেল এডিটরে index.js পুনরায় খুলুন
    cloudshell edit ~/codelab-genai/index.js
    
  6. আপনার index.js ফাইলের কোডটি এর সাথে প্রতিস্থাপন করুন:
    import express from 'express';
    const app = express();
    
    import { genkit } from 'genkit';
    import { gemini15Flash, vertexAI } from '@genkit-ai/vertexai';
    
    const ai = genkit({
        plugins: [
            vertexAI({ location: 'us-central1' }),
        ],
    });
    
    app.get('/', async (req, res) => {
        const animal = req.query.animal || 'dog';
        const prompt = `Give me 10 fun facts about ${animal}. Return this as html without backticks.`
        const llmResponse = await ai.generate({
            model: gemini15Flash,
            prompt: prompt,
        });
        const html = llmResponse.text;
        res.send(html);
    });
    
    const port = process.env.PORT || 8080;
    app.listen(port, () => {
        console.log(`codelab-genai: listening on port ${port}`);
    });
    
  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

12. (ঐচ্ছিক) Genkit এর সাথে .prompt ফাইল ব্যবহার করুন

  1. আপনার স্ক্রিনের নীচে ক্লাউড শেল টার্মিনালে ফিরে যান।
  2. নিশ্চিত করুন যে আপনি এখনও সঠিক ডিরেক্টরিতে আছেন:
    cd ~/codelab-genai
    
  3. আপনার প্রম্পটগুলি সংরক্ষণ করতে একটি prompts ফোল্ডার তৈরি করুন:
    mkdir prompts
    
  4. আপনার প্রথম প্রম্পট তৈরি করতে একটি animal-facts.prompt ফাইল তৈরি করুন:
    touch prompts/animal-facts.prompt
    
  5. ক্লাউড শেল এডিটরে animal-facts.prompt ফাইলটি খুলুন:
    cloudshell edit ~/codelab-genai/prompts/animal-facts.prompt
    
  6. animal-facts.prompt সম্পাদনা করুন এবং এতে নিম্নলিখিত কোড পেস্ট করুন:
    ---
    model: vertexai/gemini-1.5-flash
    input:
        schema:
            animal: string
    ---
    
    Give me 10 fun facts about {{animal}}. Return the results as HTML without markdown backticks.
    
  7. ক্লাউড শেল এডিটরে index.js ফাইলটি খুলুন:
    cloudshell edit ~/codelab-genai/index.js
    
  8. আপনার index.js ফাইলের কোডটি এর সাথে প্রতিস্থাপন করুন:
    import express from 'express';
    const app = express();
    
    import { genkit } from 'genkit';
    import { vertexAI } from '@genkit-ai/vertexai';
    
    const ai = genkit({
        plugins: [
            vertexAI({ location: 'us-central1' }),
        ],
    });
    
    app.get('/', async (req, res) => {
        const animal = req.query.animal || 'dog';
        const animalPrompt = ai.prompt('animal-facts');
        const llmResponse = await animalPrompt({animal});
        const html = llmResponse.text;
        res.send(html);
    });
    
    const port = process.env.PORT || 8080;
    app.listen(port, () => {
        console.log(`codelab-genai: listening on port ${port}`);
    });
    
  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

13. (ঐচ্ছিক) সিস্টেম প্রম্পট ব্যবহার করুন

এই ধাপটি অনুমান করে আপনি ইতিমধ্যেই পূর্ববর্তী ধাপে .prompt ফাইল যোগ করেছেন।

  1. আপনার স্ক্রিনের নীচে ক্লাউড শেল টার্মিনালে ফিরে যান।
  2. নিশ্চিত করুন যে আপনি এখনও সঠিক ডিরেক্টরিতে আছেন:
    cd ~/codelab-genai
    
  3. ক্লাউড শেল এডিটরে animal-facts.prompt ফাইলটি খুলুন:
    cloudshell edit ~/codelab-genai/prompts/animal-facts.prompt
    
  4. animal-facts.prompt সম্পাদনা করুন এবং এতে নিম্নলিখিত কোড পেস্ট করুন:
    ---
    model: vertexai/gemini-1.5-flash
    config:
        temperature: 0.9
    input:
        schema:
            animal: string
    ---
    
    role "system"
    The user should have submitted an animal.
    If the user requests anything besides animal fun facts, respond in a kind and firm manner that you only provide information about fun facts.
    Give the user 10 fun facts about the animal the user provided.
    All responses should be valid HTML without markdown backticks.
    
    role "user"
    {{animal}}
    
  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

14. অভিনন্দন

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

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

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

,

1. ওভারভিউ

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

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

যা শিখবেন

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

2. পূর্বশর্ত

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

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

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

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

  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 কমান্ড চালানোর চেষ্টা করুন।

5. API সক্রিয় করুন

টার্মিনালে, APIs সক্ষম করুন:

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

এই কমান্ডটি সম্পূর্ণ হতে কয়েক মিনিট সময় নিতে পারে, তবে এটি শেষ পর্যন্ত এটির মতো একটি সফল বার্তা তৈরি করবে:

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

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

  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
    

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

Node.js এ একটি আবেদন লিখতে:

  1. হোম ডিরেক্টরিতে নেভিগেট করুন:
    cd ~
    
  2. codelab-genai ডিরেক্টরি তৈরি করুন:
    mkdir codelab-genai
    
  3. codelab-genai ডিরেক্টরিতে নেভিগেট করুন:
    cd codelab-genai
    
  4. একটি index.js ফাইল তৈরি করুন:
    touch index.js
    
  5. package.json ফাইল তৈরি করুন:
    npm init es6 -y
    
  6. একটি নির্ভরতা হিসাবে express যোগ করুন
    npm install express
    
  7. node_modules কমিট প্রতিরোধ করতে .gitignore ফাইল যোগ করুন
    echo node_modules/ >> .gitignore
    
  8. ক্লাউড শেল এডিটরে index.js ফাইলটি খুলুন:
    cloudshell edit index.js
    
    একটি খালি ফাইল এখন পর্দার উপরের অংশে উপস্থিত হওয়া উচিত। এখানে আপনি এই index.js ফাইলটি সম্পাদনা করতে পারেন। দেখান যে কোডটি স্ক্রিনের উপরের বিভাগে যায়
  9. নিম্নলিখিত কোডটি অনুলিপি করুন এবং খোলা index.js ফাইলে পেস্ট করুন:
    import express from 'express';
    
    const app = express();
    app.get('/', async (req, res) => {
        res.send('Hello world!');
    });
    
    const port = process.env.PORT || 8080;
    app.listen(port, () => {
        console.log(`codelab-genai: listening on port ${port}`);
    });
    
    কয়েক সেকেন্ড পরে, ক্লাউড শেল এডিটর আপনার কোড স্বয়ংক্রিয়ভাবে সংরক্ষণ করবে। এই কোড আমাদের "হ্যালো ওয়ার্ল্ড!" অভিবাদন

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

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

  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 শংসাপত্রের সাথে গিটকে প্রমাণীকরণ করবেন? 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 নামে একটি খালি গিটহাব সংগ্রহস্থল তৈরি করুন:
    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
    

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

  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/index.js \n\n"

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

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

একবার বিল্ড শেষ হয়ে গেলে (যা বেশ কয়েক মিনিট সময় নেবে), এই কমান্ডটি চালান এবং আপনার চলমান অ্যাপ্লিকেশনটি দেখতে ফলস্বরূপ 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"

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

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

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

  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 কমান্ড চালানোর চেষ্টা করুন।

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

  1. আপনার স্ক্রিনের নীচে ক্লাউড শেল টার্মিনালে ফিরে যান।
  2. নিশ্চিত করুন যে আপনি এখনও সঠিক ডিরেক্টরিতে আছেন:
    cd ~/codelab-genai
    
  3. Node.js Genkit SDK ইনস্টল করুন:
    npm install @genkit-ai/ai
    
  4. Vertex AI এর জন্য Node.js Genkit SDK ইনস্টল করুন:
    npm install @genkit-ai/vertexai
    
  5. ক্লাউড শেল এডিটরে index.js পুনরায় খুলুন
    cloudshell edit ~/codelab-genai/index.js
    
  6. আপনার index.js ফাইলের কোডটি এর সাথে প্রতিস্থাপন করুন:
    import express from 'express';
    const app = express();
    
    import { genkit } from 'genkit';
    import { gemini15Flash, vertexAI } from '@genkit-ai/vertexai';
    
    const ai = genkit({
        plugins: [
            vertexAI({ location: 'us-central1' }),
        ],
    });
    
    app.get('/', async (req, res) => {
        const animal = req.query.animal || 'dog';
        const prompt = `Give me 10 fun facts about ${animal}. Return this as html without backticks.`
        const llmResponse = await ai.generate({
            model: gemini15Flash,
            prompt: prompt,
        });
        const html = llmResponse.text;
        res.send(html);
    });
    
    const port = process.env.PORT || 8080;
    app.listen(port, () => {
        console.log(`codelab-genai: listening on port ${port}`);
    });
    
  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

12. (ঐচ্ছিক) Genkit এর সাথে .prompt ফাইল ব্যবহার করুন

  1. আপনার স্ক্রিনের নীচে ক্লাউড শেল টার্মিনালে ফিরে যান।
  2. নিশ্চিত করুন যে আপনি এখনও সঠিক ডিরেক্টরিতে আছেন:
    cd ~/codelab-genai
    
  3. আপনার প্রম্পটগুলি সংরক্ষণ করতে একটি prompts ফোল্ডার তৈরি করুন:
    mkdir prompts
    
  4. আপনার প্রথম প্রম্পট তৈরি করতে একটি animal-facts.prompt ফাইল তৈরি করুন:
    touch prompts/animal-facts.prompt
    
  5. ক্লাউড শেল এডিটরে animal-facts.prompt ফাইলটি খুলুন:
    cloudshell edit ~/codelab-genai/prompts/animal-facts.prompt
    
  6. animal-facts.prompt সম্পাদনা করুন এবং এতে নিম্নলিখিত কোড পেস্ট করুন:
    ---
    model: vertexai/gemini-1.5-flash
    input:
        schema:
            animal: string
    ---
    
    Give me 10 fun facts about {{animal}}. Return the results as HTML without markdown backticks.
    
  7. ক্লাউড শেল এডিটরে index.js ফাইলটি খুলুন:
    cloudshell edit ~/codelab-genai/index.js
    
  8. আপনার index.js ফাইলের কোডটি এর সাথে প্রতিস্থাপন করুন:
    import express from 'express';
    const app = express();
    
    import { genkit } from 'genkit';
    import { vertexAI } from '@genkit-ai/vertexai';
    
    const ai = genkit({
        plugins: [
            vertexAI({ location: 'us-central1' }),
        ],
    });
    
    app.get('/', async (req, res) => {
        const animal = req.query.animal || 'dog';
        const animalPrompt = ai.prompt('animal-facts');
        const llmResponse = await animalPrompt({animal});
        const html = llmResponse.text;
        res.send(html);
    });
    
    const port = process.env.PORT || 8080;
    app.listen(port, () => {
        console.log(`codelab-genai: listening on port ${port}`);
    });
    
  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

13. (ঐচ্ছিক) সিস্টেম প্রম্পট ব্যবহার করুন

এই ধাপটি অনুমান করে আপনি ইতিমধ্যেই পূর্ববর্তী ধাপে .prompt ফাইল যোগ করেছেন।

  1. আপনার স্ক্রিনের নীচে ক্লাউড শেল টার্মিনালে ফিরে যান।
  2. নিশ্চিত করুন যে আপনি এখনও সঠিক ডিরেক্টরিতে আছেন:
    cd ~/codelab-genai
    
  3. ক্লাউড শেল এডিটরে animal-facts.prompt ফাইলটি খুলুন:
    cloudshell edit ~/codelab-genai/prompts/animal-facts.prompt
    
  4. animal-facts.prompt সম্পাদনা করুন এবং এতে নিম্নলিখিত কোড পেস্ট করুন:
    ---
    model: vertexai/gemini-1.5-flash
    config:
        temperature: 0.9
    input:
        schema:
            animal: string
    ---
    
    role "system"
    The user should have submitted an animal.
    If the user requests anything besides animal fun facts, respond in a kind and firm manner that you only provide information about fun facts.
    Give the user 10 fun facts about the animal the user provided.
    All responses should be valid HTML without markdown backticks.
    
    role "user"
    {{animal}}
    
  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

14. অভিনন্দন

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

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

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