পাইথনে হাগিং ফেস ট্রান্সফরমার কীভাবে ব্যবহার করবেন

Pa Ithane Hagim Phesa Transapharamara Kibhabe Byabahara Karabena



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

বাক্য গঠন

অত্যাধুনিক হাগিং ফেস ট্রান্সফরমারগুলিতে প্রি-প্রশিক্ষিত মডেলের বিস্তৃত বৈচিত্র্য রয়েছে। এই মডেলগুলি বিভিন্ন ভাষার মডেলগুলিতে প্রয়োগ করা যেতে পারে যা নিম্নলিখিতগুলিতে তালিকাভুক্ত করা হয়েছে:

  • এই ট্রান্সফরমারগুলি বিভিন্ন ভাষায় পাঠ্য প্রক্রিয়া করতে পারে এবং পাঠ্যের উপর বিভিন্ন কাজ সম্পাদন করতে পারে যেমন পাঠ্য শ্রেণিবিন্যাস, প্রশ্ন ও উত্তর, বিভিন্ন ভাষায় পাঠ্যের অনুবাদ এবং পাঠ্যের প্রজন্ম।
  • আমরা এই ট্রান্সফরমারগুলিকে আলিঙ্গন মুখের দৃষ্টি-ভিত্তিক শ্রেণীবিভাগের কাজের জন্যও ব্যবহার করতে পারি যেমন বস্তু সনাক্তকরণ এবং বক্তৃতা-ভিত্তিক কাজগুলি, যেমন স্পিকার শ্রেণীবিভাগ বা বক্তৃতা সনাক্তকরণ/স্বীকৃতি।

আলিঙ্গন মুখের ট্রান্সফরমারগুলির মধ্যে রয়েছে TensorFlow, PyTorch, ONNX, ইত্যাদি। এই ট্রান্সফরমারগুলির জন্য প্যাকেজ ইনস্টল করার সিনট্যাক্সের জন্য, আমরা নিম্নলিখিত কমান্ডটি ব্যবহার করি:







$ pip ট্রান্সফরমার ইনস্টল করুন

এখন, আমরা বিভিন্ন উদাহরণ চেষ্টা করার চেষ্টা করি যেখানে আমরা বিভিন্ন ভাষা প্রক্রিয়াকরণ কাজের জন্য হাগিং ফেস ট্রান্সফরমার থেকে মডেলগুলি ব্যবহার করি।



উদাহরণ 1: হাগিং ফেস ট্রান্সফরমার ব্যবহার করে টেক্সট জেনারেশন

এই উদাহরণে টেক্সট জেনারেশনের জন্য ট্রান্সফরমার ব্যবহার করার পদ্ধতি রয়েছে। পাঠ্য প্রজন্মের জন্য, আমরা ট্রান্সফরমার থেকে প্রাক-প্রশিক্ষিত পাঠ্য প্রজন্মের মডেল ব্যবহার করি এবং আমদানি করি। ট্রান্সফরমারের একটি মৌলিক গ্রন্থাগার রয়েছে যা 'পাইপলাইন' নামে পরিচিত। এই পাইপলাইনগুলি প্রাক-প্রশিক্ষিত মডেলগুলিতে ইনপুট হিসাবে খাওয়ানোর জন্য প্রয়োজনীয় ডেটার সমস্ত প্রাক এবং পরে প্রয়োজনীয় প্রক্রিয়াকরণ করে ট্রান্সফরমারগুলির জন্য কাজ করে।



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





আমরা pprint থেকে 'pprint' আমদানি করি। এই প্যাকেজটি পাঠ্য প্রজন্মের মডেল থেকে আউটপুটকে আরও পাঠযোগ্য, কাঠামোগত এবং ভাল-ফরম্যাটেড আকারে প্রিন্ট করার জন্য ইনস্টল করা হয়েছে। অন্যথায়, যদি আমরা 'প্রিন্ট()' ফাংশন ব্যবহার করি, এটি একটি একক লাইনে আউটপুট প্রদর্শন করে যা ভালভাবে ফরম্যাট করা হয় না এবং সহজে পঠনযোগ্য। টেক্সট জেনারেশন মডেলগুলি টেক্সট তৈরি করতে বা আরও টেক্সট যোগ করতে সাহায্য করে যা আমরা প্রাথমিকভাবে মডেলকে ইনপুট হিসেবে দিয়েছিলাম।

ট্রান্সফরমার থেকে প্রশিক্ষিত মডেল কল করার জন্য, আমরা পাইপলাইন() ফাংশন ব্যবহার করি যার ইনপুট হিসাবে দুটি প্যারামিটার রয়েছে। প্রথমটি নির্বাচিত টাস্কের নাম নির্দিষ্ট করে এবং দ্বিতীয়টি একটি ট্রান্সফরমার থেকে মডেলের নাম। এই পরিস্থিতিতে, নির্বাচিত কাজটি পাঠ্য প্রজন্ম। ট্রান্সফরমার থেকে আমরা যে প্রাক-প্রশিক্ষিত মডেলটি ব্যবহার করি তা হল 'gpt'।



পাইপলাইন ফাংশন ব্যবহার করার পরে, আমরা সিদ্ধান্ত নিই যে ইনপুটটি আমরা আমাদের মডেলকে দিতে চাই তার জন্য অতিরিক্ত পাঠ্য তৈরি করতে। তারপর, আমরা এই ইনপুটটিকে 'task_pipeline()' ফাংশনে প্রেরণ করি। এই ফাংশনটি ইনপুট, আউটপুটের সর্বোচ্চ দৈর্ঘ্য এবং আউটপুটের ইনপুট প্যারামিটার হিসাবে থাকা বাক্যগুলির সংখ্যা গ্রহণ করে মডেলের জন্য আউটপুট তৈরি করে।

আমরা 'এটি একটি ভাষা মডেল' হিসাবে ইনপুট দিই। আমরা আউটপুটের সর্বাধিক দৈর্ঘ্য '30' এবং আউটপুটে বাক্যের সংখ্যা '3' এ ঠিক করি। এখন, আমরা কেবল pprint() ফাংশনকে কল করি আমাদের মডেল থেকে উৎপন্ন ফলাফলগুলি প্রদর্শন করতে।

পাইপ ইনস্টল ট্রান্সফরমার

ট্রান্সফরমার থেকে পাইপলাইন আমদানি
pprint আমদানি pprint থেকে

SELECTED_TASK = 'টেক্সট-জেনারেশন'
মডেল = 'gpt2'
টাস্ক = পাইপলাইন(f'{SELECTED_TASK}', মডেল = MODEL)

INPUT = 'এটি একটি ভাষার মডেল'
OUt_put = টাস্ক (INPUT, max_length = 30, num_return_sequences=3)

প্রিন্ট (OUt_put)

পূর্বে উল্লিখিত কোডের স্নিপেট এবং আউটপুট থেকে, আমরা দেখতে পাচ্ছি যে মডেলটি অতিরিক্ত তথ্য/পাঠ্য তৈরি করে যা আমরা এতে যে ইনপুট দিয়েছি তার সাথে প্রাসঙ্গিক।

উদাহরণ 2: ট্রান্সফরমার থেকে পাইপলাইন ব্যবহার করে পাঠ্য শ্রেণিবিন্যাস

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

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

সুতরাং, 'pd' হিসাবে পান্ডাগুলি আমদানি করুন। আমরা এই প্যাকেজটি আমদানি করতে চাই কারণ আমরা ডেটাফ্রেম আকারে মডেল থেকে আউটপুট প্রিন্ট করতে চাই। এখন, আমরা যে টেক্সটটিকে ইতিবাচক বা নেতিবাচক বাক্য হিসাবে শ্রেণীবদ্ধ করতে ইনপুট হিসাবে আমাদের মডেলকে দিতে চাই তা নির্দিষ্ট করি। আমরা পাঠ্যটিকে 'আমি একজন ভাল লোক' হিসাবে সেট করেছি। আমরা এই টেক্সটটি ক্লাসিফায়ার() মডেলে পাস করি যা আমরা এই উদাহরণে তৈরি করেছি এবং ফলাফলগুলি একটি 'আউটপুট' ভেরিয়েবলে সংরক্ষণ করি।

আউটপুট প্রদর্শনের জন্য, আমরা পান্ডাসের উপসর্গকে বলি, যেমন pd কে “.Dataframe()” বলে এবং ক্লাসিফায়ার মডেল থেকে এই ফাংশনে আউটপুট পাস করি। এটি এখন নিম্নলিখিত আউটপুট স্নিপেটে দেখানো হিসাবে ক্লাসিফায়ার মডেল থেকে ফলাফল প্রদর্শন করে। আমাদের ক্লাসিফায়ার মডেল পাঠ্যটিকে ইতিবাচক শ্রেণী হিসাবে শ্রেণীবদ্ধ করে।

পাইপ ইনস্টল ট্রান্সফরমার
ট্রান্সফরমার থেকে পাইপলাইন আমদানি
পিডি হিসাবে পান্ডা আমদানি করুন
ক্লাসিফায়ার = পাইপলাইন('টেক্সট-শ্রেণিকরণ', মডেল = 'টেক্সট্যাক/ডিস্টিলবার্ট-বেস-আনকেসড-কোএলএ')
টেক্সট = 'আমি একজন ভালো লোক'
ফলাফল = শ্রেণিবিন্যাসকারী (পাঠ্য)
প্রিন্ট (ফলাফল)
df = pd. ডেটাফ্রেম (ফলাফল)

উপসংহার

এই গাইড হাগিং ফেস থেকে ট্রান্সফরমার আর্কিটেকচারকে কভার করেছে। আমরা হাগিং ফেস ট্রান্সফরমার থেকে 'পাইপলাইন' লাইব্রেরি নিয়ে আলোচনা করেছি। তারপর, এই লাইব্রেরির সাহায্যে, আমরা পাঠ্য তৈরি এবং শ্রেণিবিন্যাস কাজের জন্য প্রাক-প্রশিক্ষিত ট্রান্সফরমার মডেলগুলি ব্যবহার করেছি।