API Gateway ব্যবহার করে মডেল সার্ভ করা

Model Deployment এবং API Integration - আমাজন জেনারেটিভ এআই (Generative AI on AWS) - Latest Technologies

232

API Gateway ব্যবহার করে মডেল সার্ভ করা

AWS API Gateway একটি পরিচালিত সার্ভিস যা ডেভেলপারদের জন্য RESTful API তৈরি ও পরিচালনা করার সুবিধা প্রদান করে। এটি ব্যবহার করে আপনি মডেল সার্ভ করার জন্য একটি API তৈরি করতে পারেন, যা Lambda ফাংশন বা অন্য AWS সেবা দ্বারা সমর্থিত হবে। এখানে আমরা দেখব কিভাবে একটি মডেলকে AWS API Gateway ব্যবহার করে সার্ভ করা যায়।

১. পরিবেশ প্রস্তুতি

১.১. মডেল তৈরি এবং ডিপ্লয় করা

প্রথমে আপনার মেশিন লার্নিং মডেল তৈরি করুন এবং AWS Lambda বা SageMaker ব্যবহার করে ডিপ্লয় করুন। উদাহরণস্বরূপ, এখানে আমরা একটি Lambda ফাংশন তৈরি করব যা মডেলটি সার্ভ করবে।

২. Lambda ফাংশন তৈরি করা

২.১. AWS Lambda ফাংশন তৈরি করা

  1. AWS Management Console-এ লগ ইন করুন।
  2. Lambda সার্ভিসে যান এবং একটি নতুন ফাংশন তৈরি করুন।
  3. ফাংশনের নাম দিন (যেমন MyModelFunction) এবং রানটাইম হিসেবে Python 3.x নির্বাচন করুন।
  4. একটি IAM রোল নির্বাচন করুন যা Lambda ফাংশনকে S3 এবং Rekognition (যদি প্রয়োজন হয়) অ্যাক্সেস করতে দেয়।

২.২. Lambda ফাংশনের কোড লেখা

import json
import joblib
import numpy as np

# মডেল লোড করুন (প্রথমে মডেল S3 তে আপলোড করতে হবে)
def load_model():
    model = joblib.load('s3://your-bucket-name/model.pkl')
    return model

model = load_model()

def lambda_handler(event, context):
    # ইনপুট ডেটা গ্রহণ করুন
    data = json.loads(event['body'])
    
    # ডেটাকে NumPy অ্যারেতে রূপান্তর করুন
    input_data = np.array(data['input']).reshape(1, -1)
    
    # পূর্বাভাস করা
    prediction = model.predict(input_data)
    
    # ফলাফল ফিরিয়ে দিন
    return {
        'statusCode': 200,
        'body': json.dumps({'prediction': prediction[0]})
    }

৩. API Gateway তৈরি করা

৩.১. AWS API Gateway সার্ভিসে যান

  1. AWS Management Console-এ API Gateway নির্বাচন করুন।
  2. একটি নতুন API তৈরি করুন (REST API নির্বাচন করুন)।
  3. API এর নাম এবং অন্যান্য সেটিংস পূরণ করুন এবং API তৈরি করুন।

৩.২. API Resource এবং Method তৈরি করা

  1. Resources ট্যাবে যান এবং একটি নতুন Resource তৈরি করুন (যেমন /predict)।
  2. নতুন Resource-এ একটি Method তৈরি করুন (যেমন POST)।
  3. Method Integration হিসেবে Lambda Function নির্বাচন করুন এবং আপনার Lambda ফাংশনের নাম দিন।

৩.৩. CORS কনফিগার করা

  • যদি আপনার API কে ব্রাউজারের মাধ্যমে অ্যাক্সেস করতে হয়, তবে CORS (Cross-Origin Resource Sharing) কনফিগার করুন। এটি Method Settings-এ CORS কনফিগার করে করা যায়।

৪. API টেস্ট করা

৪.১. API ডিপ্লয় করা

  1. Actions থেকে Deploy API নির্বাচন করুন।
  2. একটি নতুন Deployment Stage তৈরি করুন (যেমন dev)।

৪.২. API Endpoint ব্যবহার করা

  • API ডিপ্লয় করার পর একটি URL পাবেন, যা API Endpoint হিসেবে কাজ করবে।

৪.৩. API কল করা

এখন আপনি Postman বা একটি Python স্ক্রিপ্ট ব্যবহার করে API কল করতে পারেন।

import requests

# API URL
url = 'https://your-api-id.execute-api.region.amazonaws.com/dev/predict'

# ইনপুট ডেটা
input_data = {
    'input': [value1, value2, value3]  # আপনার মডেলের ইনপুট অনুযায়ী
}

# POST অনুরোধ করুন
response = requests.post(url, json=input_data)

# ফলাফল দেখুন
print(response.json())

সারসংক্ষেপ

  1. Lambda ফাংশন: আপনার মডেলটি Lambda ফাংশনে লোড করুন এবং পূর্বাভাস তৈরির জন্য কোড লিখুন।
  2. API Gateway: API Gateway ব্যবহার করে REST API তৈরি করুন।
  3. Integration: Lambda ফাংশনকে API Gateway এর সাথে সংযুক্ত করুন।
  4. API টেস্টিং: API Endpoint ব্যবহার করে টেস্ট করুন।

AWS API Gateway এবং Lambda ব্যবহার করে আপনি আপনার মডেলকে একটি কার্যকরী API সার্ভ করতে পারেন, যা সহজেই বিভিন্ন অ্যাপ্লিকেশন থেকে অ্যাক্সেসযোগ্য।

Content added By
Promotion

Are you sure to start over?

Loading...