Zephyrnet লোগো

অ্যামাজন বেডরকের জন্য জ্ঞানের ভিত্তিগুলি এখন পুনরুদ্ধার সঠিকতা উন্নত করতে মেটাডেটা ফিল্টারিং সমর্থন করে | আমাজন ওয়েব সার্ভিসেস

তারিখ:

At এডাব্লুএস পুনরায়: উদ্ভাবন 2023, আমরা সাধারণ প্রাপ্যতা ঘোষণা আমাজন বেডরকের জন্য জ্ঞানের ভিত্তি. অ্যামাজন বেডরকের জন্য জ্ঞানের ভিত্তির সাহায্যে, আপনি নিরাপদে ফাউন্ডেশন মডেল (এফএম) এর সাথে সংযুক্ত করতে পারেন আমাজন বেডরক সম্পূর্ণরূপে পরিচালিত পুনরুদ্ধার অগমেন্টেড জেনারেশন (RAG) মডেল ব্যবহার করে আপনার কোম্পানির ডেটাতে।

RAG-ভিত্তিক অ্যাপ্লিকেশানগুলির জন্য, FM গুলি থেকে উত্পন্ন প্রতিক্রিয়াগুলির নির্ভুলতা মডেলকে দেওয়া প্রসঙ্গের উপর নির্ভর করে৷ ব্যবহারকারীর প্রশ্নের উপর ভিত্তি করে প্রসঙ্গগুলি ভেক্টর স্টোর থেকে পুনরুদ্ধার করা হয়। অ্যামাজন বেডরকের জন্য নলেজ বেসের জন্য সম্প্রতি প্রকাশিত বৈশিষ্ট্যে, হাইব্রিড অনুসন্ধান, আপনি কীওয়ার্ড অনুসন্ধানের সাথে শব্দার্থিক অনুসন্ধান একত্রিত করতে পারেন। যাইহোক, অনেক পরিস্থিতিতে, আপনাকে একটি নির্দিষ্ট সময়ের মধ্যে তৈরি বা নির্দিষ্ট বিভাগের সাথে ট্যাগ করা নথিগুলি পুনরুদ্ধার করতে হতে পারে। অনুসন্ধানের ফলাফলগুলিকে পরিমার্জিত করতে, আপনি পুনরুদ্ধারের নির্ভুলতা উন্নত করতে নথির মেটাডেটার উপর ভিত্তি করে ফিল্টার করতে পারেন, যার ফলে আপনার আগ্রহের সাথে সংযুক্ত আরও প্রাসঙ্গিক এফএম প্রজন্মের দিকে পরিচালিত হয়।

এই পোস্টে, আমরা Amazon Bedrock-এর জন্য নলেজ বেসেস-এ নতুন কাস্টম মেটাডেটা ফিল্টারিং বৈশিষ্ট্য নিয়ে আলোচনা করব, যা আপনি ভেক্টর স্টোর থেকে আপনার পুনরুদ্ধারগুলিকে প্রাক-ফিল্টার করে অনুসন্ধান ফলাফল উন্নত করতে ব্যবহার করতে পারেন।

মেটাডেটা ফিল্টারিং ওভারভিউ

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

এই বৈশিষ্ট্যটির সাহায্যে, আপনি এখন জ্ঞানের ভিত্তির প্রতিটি নথির জন্য একটি কাস্টম মেটাডেটা ফাইল (প্রতিটি 10 ​​KB পর্যন্ত) সরবরাহ করতে পারেন। আপনি আপনার পুনরুদ্ধারের জন্য ফিল্টার প্রয়োগ করতে পারেন, ভেক্টর স্টোরকে নথির মেটাডেটার উপর ভিত্তি করে প্রি-ফিল্টার করার নির্দেশ দিতে পারেন এবং তারপরে প্রাসঙ্গিক নথিগুলি অনুসন্ধান করতে পারেন। এইভাবে, পুনরুদ্ধার করা নথিগুলির উপর আপনার নিয়ন্ত্রণ থাকবে, বিশেষ করে যদি আপনার প্রশ্নগুলি অস্পষ্ট হয়। উদাহরণস্বরূপ, আপনি বিভিন্ন প্রসঙ্গের জন্য অনুরূপ পদ সহ আইনি নথি ব্যবহার করতে পারেন, বা বিভিন্ন বছরে মুক্তিপ্রাপ্ত একই ধরনের প্লট আছে এমন সিনেমা ব্যবহার করতে পারেন। উপরন্তু, অনুসন্ধান করা হচ্ছে এমন খণ্ডের সংখ্যা হ্রাস করে, আপনি নির্ভুলতার উন্নতি ছাড়াও CPU চক্রের হ্রাস এবং ভেক্টর স্টোরের অনুসন্ধানের খরচের মতো কার্যকারিতা সুবিধাগুলি অর্জন করেন।

মেটাডেটা ফিল্টারিং বৈশিষ্ট্যটি ব্যবহার করার জন্য, আপনাকে উত্স ডেটা ফাইলগুলির পাশাপাশি উত্স ডেটা ফাইলের মতো একই নামের মেটাডেটা ফাইল সরবরাহ করতে হবে এবং .metadata.json প্রত্যয়. মেটাডেটা স্ট্রিং, সংখ্যা বা বুলিয়ান হতে পারে। নিম্নলিখিত মেটাডেটা ফাইল সামগ্রীর একটি উদাহরণ:

{
    "metadataAttributes" : { 
        "tag" : "project EVE",
        "year" :  2016,
        "team": "ninjas"
    }
}

অ্যামাজন বেডরকের জন্য নলেজ বেসের মেটাডেটা ফিল্টারিং বৈশিষ্ট্যটি AWS অঞ্চল ইউএস ইস্ট (এন. ভার্জিনিয়া) এবং ইউএস ওয়েস্ট (ওরেগন) এ উপলব্ধ।

নিম্নলিখিতগুলি মেটাডেটা ফিল্টারিংয়ের জন্য সাধারণ ব্যবহারের ক্ষেত্রে রয়েছে:

  • একটি সফ্টওয়্যার কোম্পানির জন্য নথি চ্যাটবট - এটি ব্যবহারকারীদের পণ্যের তথ্য এবং সমস্যা সমাধানের নির্দেশিকা খুঁজে পেতে অনুমতি দেয়। অপারেটিং সিস্টেম বা অ্যাপ্লিকেশন সংস্করণে ফিল্টার, উদাহরণস্বরূপ, অপ্রচলিত বা অপ্রাসঙ্গিক নথিগুলি পুনরুদ্ধার এড়াতে সাহায্য করতে পারে।
  • একটি প্রতিষ্ঠানের আবেদন কথোপকথন অনুসন্ধান - এটি ব্যবহারকারীদের নথি, কানব্যান, মিটিং রেকর্ডিং ট্রান্সক্রিপ্ট এবং অন্যান্য সম্পদের মাধ্যমে অনুসন্ধান করতে দেয়। কাজের গ্রুপ, ব্যবসায়িক ইউনিট বা প্রকল্প আইডিগুলিতে মেটাডেটা ফিল্টার ব্যবহার করে, আপনি চ্যাট অভিজ্ঞতা ব্যক্তিগতকৃত করতে এবং সহযোগিতা উন্নত করতে পারেন। একটি উদাহরণ হতে পারে, "প্রজেক্ট স্ফিঙ্কসের অবস্থা কী এবং উত্থাপিত ঝুঁকিগুলি" যেখানে ব্যবহারকারীরা একটি নির্দিষ্ট প্রকল্প বা উত্স প্রকারের (যেমন ইমেল বা মিটিংয়ের নথি) নথিগুলি ফিল্টার করতে পারে৷
  • সফ্টওয়্যার বিকাশকারীদের জন্য বুদ্ধিমান অনুসন্ধান - এটি বিকাশকারীদের একটি নির্দিষ্ট রিলিজের তথ্য সন্ধান করতে দেয়। রিলিজ সংস্করণে ফিল্টার, নথির প্রকার (যেমন কোড, API রেফারেন্স, বা সমস্যা) প্রাসঙ্গিক নথিগুলিকে চিহ্নিত করতে সহায়তা করতে পারে।

সমাধান ওভারভিউ

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

অ্যামাজন বেডরকের জন্য জ্ঞানের ভিত্তিগুলির জন্য একটি ডেটাসেট প্রস্তুত করুন৷

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

আপনি যদি একটি বিদ্যমান নলেজ বেসে আপনার নথিতে মেটাডেটা যোগ করতে চান, তাহলে প্রত্যাশিত ফাইলের নাম এবং স্কিমা সহ মেটাডেটা ফাইলগুলি তৈরি করুন, তারপর ক্রমবর্ধমান ইনজেশন শুরু করতে জ্ঞান বেসের সাথে আপনার ডেটা সিঙ্ক করার ধাপে যান।

আমাদের নমুনা ডেটাসেটে, প্রতিটি গেমের নথি একটি পৃথক CSV ফাইল (উদাহরণস্বরূপ, s3://$bucket_name/video_game/$game_id.csv) নিম্নলিখিত কলামগুলির সাথে:

title, description, genres, year, publisher, score

প্রতিটি গেমের মেটাডেটার প্রত্যয় আছে .metadata.json (উদাহরণ স্বরূপ, s3://$bucket_name/video_game/$game_id.csv.metadata.json) নিম্নলিখিত স্কিমা সহ:

{
  "metadataAttributes": {
    "id": number, 
    "genres": string,
    "year": number,
    "publisher": string,
    "score": number
  }
}

অ্যামাজন বেডরকের জন্য একটি জ্ঞানের ভিত্তি তৈরি করুন

একটি নতুন জ্ঞানের ভিত্তি তৈরি করার নির্দেশাবলীর জন্য, দেখুন একটি জ্ঞান ভিত্তি তৈরি করুন. এই উদাহরণের জন্য, আমরা নিম্নলিখিত সেটিংস ব্যবহার করি:

  • উপরে ডেটা সোর্স সেট আপ করুন পাতা, অধীনে চঙ্কিং কৌশল, নির্বাচন করুন কোন খণ্ড, কারণ আপনি ইতিমধ্যেই পূর্ববর্তী ধাপে নথিগুলি প্রিপ্রসেস করেছেন৷
  • মধ্যে এমবেডিং মডেল বিভাগ, চয়ন করুন টাইটান জি 1 এম্বেডিংস – পাঠ্য.
  • মধ্যে ভেক্টর ডাটাবেস বিভাগ, চয়ন করুন দ্রুত একটি নতুন ভেক্টর স্টোর তৈরি করুন. মেটাডেটা ফিল্টারিং বৈশিষ্ট্য সমস্ত সমর্থিত ভেক্টর স্টোরের জন্য উপলব্ধ।

জ্ঞান বেসের সাথে ডেটাসেট সিঙ্ক্রোনাইজ করুন

আপনি জ্ঞান বেস তৈরি করার পরে, এবং আপনার ডেটা ফাইল এবং মেটাডেটা ফাইল একটি আমাজন সিম্পল স্টোরেজ সার্ভিস (Amazon S3) বালতি, আপনি ইনক্রিমেন্টাল ইনজেশন শুরু করতে পারেন। নির্দেশাবলীর জন্য, দেখুন জ্ঞানের ভিত্তির মধ্যে আপনার ডেটা উত্সগুলি ইনজেস্ট করতে সিঙ্ক করুন৷.

অ্যামাজন বেডরক কনসোলে মেটাডেটা ফিল্টারিং সহ ক্যোয়ারী

অ্যামাজন বেডরক কনসোলে মেটাডেটা ফিল্টারিং বিকল্পগুলি ব্যবহার করতে, নিম্নলিখিত পদক্ষেপগুলি সম্পূর্ণ করুন:

  1. অ্যামাজন বেডরক কনসোলে, বেছে নিন জ্ঞানের ভিত্তি নেভিগেশন ফলকে।
  2. আপনার তৈরি জ্ঞান বেস চয়ন করুন.
  3. বেছে নিন জ্ঞানের ভিত্তি পরীক্ষা করুন.
  4. পছন্দ কনফিগারেশন আইকন, তারপর প্রসারিত করুন ফিল্টার.
  5. বিন্যাস ব্যবহার করে একটি শর্ত লিখুন: কী = মান (উদাহরণস্বরূপ, জেনারস = কৌশল) এবং টিপুন প্রবেশ করান.
  6. কী, মান বা অপারেটর পরিবর্তন করতে, শর্তটি নির্বাচন করুন।
  7. অবশিষ্ট শর্তগুলির সাথে চালিয়ে যান (উদাহরণস্বরূপ, (জেনার = কৌশল এবং বছর >= 2023) বা (রেটিং >= 9))
  8. সমাপ্ত হলে, বার্তা বাক্সে আপনার প্রশ্ন লিখুন, তারপর নির্বাচন করুন চালান.

এই পোস্টের জন্য, আমরা "2023 সালের পরে প্রকাশিত দুর্দান্ত গ্রাফিক সহ একটি কৌশল গেম" প্রশ্নটি প্রবেশ করি।

SDK ব্যবহার করে মেটাডেটা ফিল্টারিং সহ ক্যোয়ারী

SDK ব্যবহার করতে, প্রথমে এর জন্য ক্লায়েন্ট তৈরি করুন অ্যামাজন বেডরকের জন্য এজেন্ট রানটাইম:

import boto3

bedrock_agent_runtime = boto3.client(
    service_name = "bedrock-agent-runtime"
)

তারপর ফিল্টার তৈরি করুন (নিম্নলিখিত কিছু উদাহরণ):

# genres = Strategy
single_filter= {
    "equals": {
        "key": "genres",
        "value": "Strategy"
    }
}

# genres = Strategy AND year >= 2023
one_group_filter= {
    "andAll": [
        {
            "equals": {
                "key": "genres",
                "value": "Strategy"
            }
        },
        {
            "GreaterThanOrEquals": {
                "key": "year",
                "value": 2023
            }
        }
    ]
}

# (genres = Strategy AND year >=2023) OR score >= 9
two_group_filter = {
    "orAll": [
        {
            "andAll": [
                {
                    "equals": {
                        "key": "genres",
                        "value": "Strategy"
                    }
                },
                {
                    "GreaterThanOrEquals": {
                        "key": "year",
                        "value": 2023
                    }
                }
            ]
        },
        {
            "GreaterThanOrEquals": {
                "key": "score",
                "value": "9"
            }
        }
    ]
}

ফিল্টার পাস করুন retrievalConfiguration এর পুনরুদ্ধার API or RetrieveAndGenerate এপিআই:

retrievalConfiguration={
        "vectorSearchConfiguration": {
            "filter": metadata_filter
        }
    }

নিম্নলিখিত সারণীতে বিভিন্ন মেটাডেটা ফিল্টারিং শর্ত সহ কয়েকটি প্রতিক্রিয়া তালিকাভুক্ত করা হয়েছে।

প্রশ্ন মেটাডেটা ফিল্টারিং নথি উদ্ধার করা হয়েছে পর্যবেক্ষণ
"2023 সালের পরে মুক্তিপ্রাপ্ত দুর্দান্ত গ্রাফিক সহ একটি কৌশল গেম" বন্ধ

* ভাইকিং সাগা: দ্য সি রাইডার, বছর: 2023, জেনার: কৌশল

* মধ্যযুগীয় দুর্গ: অবরোধ এবং বিজয়, বছর:2022, শৈলী: কৌশল
* ফ্যান্টাসি কিংডম: ক্রনিকলস অফ এলডোরিয়া, বছর: 2023, জেনার: কৌশল

* সাইবারনেটিক বিপ্লব: মেশিনের উত্থান, বছর:2022, শৈলী: কৌশল
* স্টিম্পঙ্ক ক্রনিকলস: ক্লকওয়ার্ক সাম্রাজ্য, বছর:2021, জেনার: সিটি-বিল্ডিং

2/5 গেম শর্ত পূরণ করে (জেনার = কৌশল এবং বছর >= 2023)
On * ভাইকিং সাগা: দ্য সি রাইডার, বছর: 2023, জেনার: কৌশল
* ফ্যান্টাসি কিংডম: ক্রনিকলস অফ এলডোরিয়া, বছর: 2023, জেনার: কৌশল
2/2 গেম শর্ত পূরণ করে (জেনার = কৌশল এবং বছর >= 2023)

কাস্টম মেটাডেটা ছাড়াও, আপনি S3 উপসর্গ ব্যবহার করেও ফিল্টার করতে পারেন (যা একটি অন্তর্নির্মিত মেটাডেটা, তাই আপনাকে কোনও মেটাডেটা ফাইল সরবরাহ করতে হবে না)। উদাহরণস্বরূপ, যদি আপনি গেমের নথিগুলিকে প্রকাশকের দ্বারা উপসর্গগুলিতে সংগঠিত করেন (উদাহরণস্বরূপ, s3://$bucket_name/video_game/$publisher/$game_id.csv), আপনি নির্দিষ্ট প্রকাশকের সাথে ফিল্টার করতে পারেন (উদাহরণস্বরূপ, neo_tokyo_games) নিম্নলিখিত সিনট্যাক্স ব্যবহার করে:

publisher_filter = {
    "startsWith": {
                    "key": "x-amz-bedrock-kb-source-uri",
                    "value": "s3://$bucket_name/video_game/neo_tokyo_games/"
                }
}

পরিষ্কার কর

আপনার সংস্থানগুলি পরিষ্কার করতে, নিম্নলিখিত পদক্ষেপগুলি সম্পূর্ণ করুন:

  1. জ্ঞানের ভিত্তি মুছুন:
    1. অ্যামাজন বেডরক কনসোলে, বেছে নিন জ্ঞানের ভিত্তি অধীনে অর্কেস্ট্রারচনা নেভিগেশন ফলকে।
    2. আপনার তৈরি জ্ঞান বেস চয়ন করুন.
    3. নোট নিন এডাব্লুএস আইডেন্টিটি এবং অ্যাক্সেস ম্যানেজমেন্ট (IAM) পরিষেবার ভূমিকার নাম জ্ঞানের ভিত্তি ওভারভিউ অধ্যায়.
    4. মধ্যে ভেক্টর ডাটাবেস বিভাগে, সংগ্রহ ARN নোট নিন।
    5. বেছে নিন মুছে ফেলা, তারপর নিশ্চিত করতে মুছে ফেলুন লিখুন।
  2. ভেক্টর ডাটাবেস মুছুন:
    1. উপরে আমাজন ওপেন সার্চ সার্ভিস কনসোল, নির্বাচন করুন সংগ্রহ অধীনে Serverless নেভিগেশন ফলকে।
    2. আপনি অনুসন্ধান বারে সংরক্ষিত ARN সংগ্রহটি লিখুন।
    3. সংগ্রহ নির্বাচন করুন এবং নির্বাচন করুন মুছে ফেলা.
    4. নিশ্চিতকরণ প্রম্পটে নিশ্চিত লিখুন, তারপর নির্বাচন করুন মুছে ফেলা.
  3. IAM পরিষেবার ভূমিকা মুছুন:
    1. আইএএম কনসোলে, নির্বাচন করুন ভূমিকা নেভিগেশন ফলকে।
    2. আপনি আগে উল্লেখ করা ভূমিকার নাম খুঁজুন।
    3. ভূমিকা নির্বাচন করুন এবং নির্বাচন করুন মুছে ফেলা.
    4. নিশ্চিতকরণ প্রম্পটে ভূমিকার নাম লিখুন এবং ভূমিকাটি মুছুন।
  4. নমুনা ডেটাসেট মুছুন:
    1. Amazon S3 কনসোলে, আপনার ব্যবহৃত S3 বালতিতে নেভিগেট করুন।
    2. উপসর্গ এবং ফাইল নির্বাচন করুন, তারপর নির্বাচন করুন মুছে ফেলা.
    3. মুছে ফেলার নিশ্চিতকরণ প্রম্পটে স্থায়ীভাবে মুছে ফেলুন লিখুন।

উপসংহার

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

অতিরিক্ত সম্পদের জন্য, নিম্নলিখিত পড়ুন:


লেখক সম্পর্কে

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

আহমেদ ইউইস তিনি AWS GenAI ল্যাবসের একজন সিনিয়র সলিউশন আর্কিটেক্ট, গ্রাহকদের ব্যবসায়িক সমস্যা সমাধানের জন্য জেনারেটিভ এআই প্রোটোটাইপ তৈরি করতে সাহায্য করে। গ্রাহকদের সাথে সহযোগিতা না করার সময়, তিনি তার বাচ্চাদের সাথে খেলতে এবং রান্না করা উপভোগ করেন।

ক্রিস পেকোরা অ্যামাজন ওয়েব সার্ভিসেসের জেনারেটিভ এআই ডেটা সায়েন্টিস্ট। তিনি উদ্ভাবনী পণ্য এবং সমাধান তৈরির বিষয়ে উত্সাহী এবং গ্রাহক-আবিষ্ট বিজ্ঞানের দিকেও মনোনিবেশ করেন। পরীক্ষা-নিরীক্ষা না চালিয়ে এবং GenAI-র সাম্প্রতিক উন্নয়নের সাথে তাল মিলিয়ে চলার সময়, তিনি তার বাচ্চাদের সাথে সময় কাটাতে পছন্দ করেন।

স্পট_আইএমজি

সর্বশেষ বুদ্ধিমত্তা

স্পট_আইএমজি