লেখক:
(1) মিংজি লিউ, NVIDIA {সমান অবদান};
(2) টিওডোর-ডুমিত্রু এনি, এনভিআইডিএ {সমান অবদান};
(3) রবার্ট কিরবি, NVIDIA {সমান অবদান};
(4) ক্রিস চেং, NVIDIA {সমান অবদান};
(5) নাথানিয়েল পিঙ্কনি, NVIDIA {সমান অবদান};
(6) Rongjian Liang, NVIDIA {সমান অবদান};
(7) জোনাহ আলবেন, এনভিআইডিএ;
(8) হিমাংশু আনন্দ, NVIDIA;
(9) সন্মিত্র ব্যানার্জী, NVIDIA;
(10) Ismet Bayraktaroglu, NVIDIA;
(11) বনিতা ভাস্করন, NVIDIA;
(12) Bryan Catanzaro, NVIDIA;
(13) অর্জুন চৌধুরী, NVIDIA;
(14) শ্যারন ক্লে, NVIDIA;
(15) বিল ডালি, NVIDIA;
(16) লরা ড্যাং, NVIDIA;
(17) পরীক্ষিত দেশপান্ডে, NVIDIA;
(18) সিদ্ধান্ত ধোধি, NVIDIA;
(19) সমীর হালেপেট, NVIDIA;
(20) এরিক হিল, NVIDIA;
(21) জিয়াং হু, এনভিআইডিএ;
(22) সুমিত জৈন, NVIDIA;
(23) ব্রুসেক খাইলানি, NVIDIA;
(24) জর্জ কোকাই, NVIDIA;
(25) কিশোর কুনাল, NVIDIA;
(26) Xiaowei Li, NVIDIA;
(27) চার্লি লিন্ড, NVIDIA;
(28) হাও লিউ, NVIDIA;
(29) স্টুয়ার্ট ওবারম্যান, NVIDIA;
(30) সুজিত ওমর, NVIDIA;
(31) শ্রীধর প্রাট্টি, NVIDIA;
(23) জোনাথন রাইমান, এনভিআইডিএ;
(33) অম্বর সরকার, NVIDIA;
(34) Zhengjiang Shao, NVIDIA;
(35) হানফেই সান, এনভিআইডিএ;
(36) প্রতীক পি সুথার, NVIDIA;
(37) বরুণ তেজ, NVIDIA;
(38) ওয়াকার টার্নার, NVIDIA;
(39) কাইজে জু, NVIDIA;
(40) Haoxing Ren, NVIDIA.
ChipNeMo একাধিক ডোমেন অভিযোজন কৌশল প্রয়োগ করে LLM-কে চিপ ডিজাইন ডোমেনে মানিয়ে নিতে। এই কৌশলগুলির মধ্যে রয়েছে চিপ ডিজাইন ডেটার জন্য কাস্টম টোকেনাইজার, ডোমেন ডেটার বৃহৎ কর্পাস সহ ডোমেন অভিযোজিত প্রাক-প্রশিক্ষণ, ডোমেন নির্দিষ্ট কাজের সাথে তত্ত্বাবধান-সূক্ষ্ম-টিউনিং এবং একটি সূক্ষ্ম-টিউনড পুনরুদ্ধার মডেলের সাথে পুনরুদ্ধার করা প্রজন্ম। আমরা এই বিভাগে প্রতিটি কৌশলের বিশদ বর্ণনা করব।
উঃ টোকেনাইজার
একটি প্রাক-প্রশিক্ষিত টোকেনাইজারকে অভিযোজিত করার সময়, প্রধান লক্ষ্যগুলি হল ডোমেন-নির্দিষ্ট ডেটাতে টোকেনাইজেশন দক্ষতা উন্নত করা, সাধারণ ডেটাসেটে দক্ষতা এবং ভাষা মডেলের কার্যকারিতা বজায় রাখা এবং পুনরায় প্রশিক্ষণ/সূক্ষ্ম-টিউনিংয়ের প্রচেষ্টাকে কমিয়ে আনা। এটি অর্জন করার জন্য, আমরা একটি চার-পদক্ষেপ পদ্ধতি তৈরি করেছি:
• ধাপ 1: ডোমেন নির্দিষ্ট ডেটা ব্যবহার করে স্ক্র্যাচ থেকে একটি টোকেনাইজার প্রশিক্ষণ।
• ধাপ 2: নতুন টোকেনাইজারের শব্দভাণ্ডার থেকে, সাধারণ-উদ্দেশ্য টোকেনাইজারে অনুপস্থিত এবং সাধারণ-উদ্দেশ্য ডেটাসেটে খুব কমই পাওয়া যায় এমন টোকেনগুলি সনাক্ত করা।
• ধাপ 3: ধাপ 2-এ নতুন চিহ্নিত টোকেনগুলির সাথে সাধারণ-উদ্দেশ্য টোকেনাইজার প্রসারিত করা।
• ধাপ 4: সাধারণ-উদ্দেশ্য টোকেনাইজার ব্যবহার করে নতুন টোকেনগুলির এম্বেডিং শুরু করা।
বিশেষ করে ধাপ 4 এর জন্য, যখন একটি নতুন টোকেন সম্মুখীন হয়, এটি পূর্বপ্রশিক্ষিত সাধারণ-উদ্দেশ্য টোকেনাইজার ব্যবহার করে টোকেনাইজ করা হয়। নতুন টোকেনের এমবেডিং সাধারণ-উদ্দেশ্য টোকেনাইজার দ্বারা উত্পন্ন টোকেনগুলির এম্বেডিংয়ের গড় নির্ধারণ করে এবং আউটপুট স্তরের ওজন শূন্য থেকে শুরু করে।
ধাপ 2 সাধারণ ডেটাসেটগুলিতে প্রাক-প্রশিক্ষিত LLM-এর কার্যক্ষমতা বজায় রাখতে সাহায্য করে বেছে বেছে নতুন টোকেনগুলি প্রবর্তন করে যা সাধারণ-উদ্দেশ্য ডেটাসেটে কদাচিৎ সম্মুখীন হয়। এবং ধাপ 4 সাধারণ-উদ্দেশ্য টোকেনাইজার দ্বারা পরিচালিত নতুন টোকেনগুলির এম্বেডিংয়ের প্রাথমিককরণের মাধ্যমে এলএলএমকে পুনরায় প্রশিক্ষণ/ফাইনটিউন করার জন্য প্রয়োজনীয় প্রচেষ্টাকে হ্রাস করে।
B. ডোমেন অ্যাডাপটিভ প্রিট্রেনিং
আমাদের গবেষণায়, আমরা LLaMA2 7B/13B প্রাক-প্রশিক্ষিত ফাউন্ডেশন বেস মডেলগুলিতে DAPT প্রয়োগ করি। প্রতিটি DAPT মডেল তাদের প্রাক-প্রশিক্ষিত ফাউন্ডেশনাল বেস মডেলের ওজন ব্যবহার করে শুরু করা হয়। আমরা আমাদের DAPT মডেলের নাম রাখি ChipNeMo । আমরা বিভাগ III-A-তে চিত্রিত হিসাবে টোকেনাইজার বৃদ্ধি নিযুক্ত করি এবং সেই অনুযায়ী এম্বেডিং ওজন শুরু করি [24]। আমরা স্ট্যান্ডার্ড অটোরিগ্রেসিভ ল্যাঙ্গুয়েজ মডেলিং উদ্দেশ্যকে কাজে লাগিয়ে ডোমেন-নির্দিষ্ট ডেটার উপর আরও প্রাক-প্রশিক্ষণ পরিচালনা করি। সমস্ত মডেল প্রশিক্ষণ পদ্ধতি NVIDIA NeMo ফ্রেমওয়ার্ক ব্যবহার করে পরিচালিত হয় [25], উন্নত দক্ষতার জন্য টেনসর সমান্তরালতা [26] এবং ফ্ল্যাশ মনোযোগ [27] এর মতো কৌশলগুলি অন্তর্ভুক্ত করে।
চিত্র 2 নির্দিষ্ট হাইপারপ্যারামিটারের অধীনে ChipNeMo-এর প্রশিক্ষণের ক্ষতিকে চিত্রিত করে। আমরা প্রশিক্ষণের ক্ষতির মধ্যে স্পাইক পর্যবেক্ষণ করি। [২৮] অনুমানের বিপরীতে, আমরা অনুমান করি যে আমাদের পরিস্থিতিতে, এই স্পাইকগুলিকে "খারাপ ডেটা" হিসাবে দায়ী করা যেতে পারে কারণ এই অনিয়মগুলি একই মডেলের জন্য অনুরূপ প্রশিক্ষণের ধাপে ধারাবাহিকভাবে ঘটে বলে মনে হয়, এমনকি বিভিন্ন মডেলের আকার জুড়ে। আমরা এই সমস্যাটির সমাধান না করা বেছে নিয়েছি, কারণ এই অসামঞ্জস্যগুলি পরবর্তী প্রশিক্ষণের পদক্ষেপগুলিকে উল্লেখযোগ্যভাবে বাধা দেয়নি (বৈধতা হারানোর ক্ষেত্রে কোন লক্ষণীয় অবনতি ছাড়াই), সম্ভবত আমাদের কম শেখার হারের প্রয়োগের কারণে।
C. তত্ত্বাবধানে ফাইন-টিউনিং
DAPT-এর পরে, আমরা তত্ত্বাবধানকৃত ফাইন-টিউনিং (SFT) দিয়ে মডেল সারিবদ্ধকরণ করি। আমরা DAPT হিসাবে অভিন্ন হাইপারপ্যারামিটার প্রশিক্ষণ কনফিগারেশন গ্রহণ করি 128 এর একটি হ্রাস করা বৈশ্বিক ব্যাচের আকার ব্যবহার করা বাদ দিয়ে। সমস্ত SFT ডেটা নীচের চ্যাট টেমপ্লেট অনুযায়ী গঠন করা হয়েছে:
<extra_id_0>সিস্টেম\n{system}
<extra_id_1>ব্যবহারকারী\n{user_utterance}
<extra_id_1>Assistant\n{chipnemo_response}
…
আমরা একটি অটোরিগ্রেসিভ অপ্টিমাইজেশান উদ্দেশ্য নিযুক্ত করি, একটি কৌশল বাস্তবায়ন করি যেখানে সিস্টেম থেকে উদ্ভূত টোকেন এবং ব্যবহারকারীর প্রম্পটগুলির সাথে সম্পর্কিত ক্ষতিগুলি মুখোশ করা হয় [5]। এই পদ্ধতিটি নিশ্চিত করে যে ব্যাকপ্রোপাগেশনের সময়, আমাদের ফোকাস একচেটিয়াভাবে উত্তর টোকেনগুলির অপ্টিমাইজেশনের দিকে পরিচালিত হয়।
আমরা আমাদের ডোমেন SFT ডেটাসেটকে একত্রিত করি, প্রায় 1.1k নমুনা সমন্বিত, 128k নমুনার আরও ব্যাপক সাধারণ চ্যাট SFT ডেটাসেটের সাথে। তারপরে আমরা ডেটাতে একটি র্যান্ডম শাফেল প্রয়োগ করার পরে একটি একক যুগের জন্য সূক্ষ্ম-টিউনিংয়ে নিযুক্ত হয়েছি। আমরা একাধিক যুগের জন্য ডোমেন-নির্দিষ্ট এসএফটি ডেটাসেট বৃদ্ধির সাথে জড়িত পরীক্ষাগুলি পরিচালনা করেছি। যাইহোক, এটি স্পষ্ট হয়ে ওঠে যে মডেলটি দ্রুত ওভারফিটিং এর লক্ষণগুলি প্রদর্শন করে যখন ইন-ডোমেন প্রশ্নগুলি উপস্থাপন করা হয়, প্রায়শই ডোমেন SFT ডেটাসেট থেকে অপ্রাসঙ্গিক উত্তরগুলি পুনরাবৃত্তি করে।
উপরন্তু, আমরা কোনো ডোমেন-নির্দিষ্ট SFT ডেটা বাদ দিয়ে শুধুমাত্র সাধারণ চ্যাট ডেটাসেট ব্যবহার করে একটি অতিরিক্ত SFT পরিচালনা করেছি। স্পষ্টতার জন্য, আমরা আমাদের সমস্ত ChipNeMo মডেলকে নিম্নরূপ মনোনীত করি:
ChipNeMo-Chat: মডেলগুলি ডোমেন এবং সাধারণ চ্যাট ডেটা উভয়ের সাথেই সূক্ষ্মভাবে তৈরি;
ChipNeMo-Chat (noDSFT): মডেলগুলি একচেটিয়াভাবে সাধারণ চ্যাট ডেটার সাথে সূক্ষ্মভাবে তৈরি।
আমরা DAPT-এর সাথে সরাসরি চ্যাট সারিবদ্ধ মডেল, যেমন LLaMA2-চ্যাট মডেলে পরীক্ষা করেছি। আমরা দেখেছি যে DAPT মডেলের সারিবদ্ধকরণকে উল্লেখযোগ্যভাবে অবনমিত করেছে, ফলে মডেলটিকে ডাউনস্ট্রিম কাজের জন্য অকেজো করে তুলেছে।
D. পুনরুদ্ধার-অগমেন্টেড জেনারেশন
এটা সুপরিচিত যে এলএলএমগুলি ভুল পাঠ্য তৈরি করতে পারে, তথাকথিত হ্যালুসিনেশন [২৯]। যদিও ঘটনাটি সম্পূর্ণরূপে বোঝা যায় না, তবুও আমাদের অবশ্যই হ্যালুসিনেশনগুলি প্রশমিত করতে হবে কারণ সেগুলি বিশেষত একটি ইঞ্জিনিয়ারিং সহকারী চ্যাটবট প্রসঙ্গে সমস্যাযুক্ত, যেখানে নির্ভুলতা গুরুত্বপূর্ণ। আমাদের প্রস্তাব হল পুনরুদ্ধার অগমেন্টেড জেনারেশন (RAG) পদ্ধতির সুবিধা নেওয়া। RAG একটি ডাটাবেস থেকে প্রাসঙ্গিক প্যাসেজগুলি পুনরুদ্ধার করার চেষ্টা করে যাতে প্রশ্নের সাথে প্রম্পটে অন্তর্ভুক্ত করা যায়, যা এলএলএমকে আরও সঠিক উত্তর তৈরি করার জন্য ভিত্তি করে। আমরা দেখতে পাই যে RAG-এর জন্য একটি ডোমেন অভিযোজিত ভাষা মডেল ব্যবহার করা আমাদের ডোমেন নির্দিষ্ট প্রশ্নের উত্তরের গুণমানকে উল্লেখযোগ্যভাবে উন্নত করে। এছাড়াও, আমরা দেখতে পাই যে ডোমেন নির্দিষ্ট প্রশিক্ষণ ডেটার একটি পরিমিত পরিমাণের সাথে একটি অফ-দ্য-শেল্ফ অ-সুপারভাইসড প্রাক-প্রশিক্ষিত ঘন পুনরুদ্ধার মডেলকে ফাইন-টিউনিং উল্লেখযোগ্যভাবে পুনরুদ্ধারের সঠিকতাকে উন্নত করে। আমাদের ডোমেন-অভিযোজিত RAG বাস্তবায়ন ডায়াগ্রাম চিত্র 3 এ দেখানো হয়েছে।
আমরা Tevatron ফ্রেমওয়ার্ক ব্যবহার করে 3000 ডোমেন নির্দিষ্ট স্বয়ংক্রিয়-উত্পন্ন নমুনার সাথে e5_small_unsupervised মডেল [30] ফাইন-টিউনিং করে আমাদের ডোমেন অভিযোজিত পুনরুদ্ধার মডেল তৈরি করেছি [31]। নমুনা তৈরি এবং প্রশিক্ষণ প্রক্রিয়া পরিশিষ্ট সি-তে কভার করা হয়েছে।
এমনকি একটি পুনরুদ্ধার মডেলের ফাইন-টিউনিংয়ের সাথে আসা উল্লেখযোগ্য লাভের সাথেও, সত্যটি এখনও রয়ে গেছে যে পুনরুদ্ধার এখনও এমন প্রশ্নের সাথে লড়াই করে যা ডকুমেন্ট কর্পাসের প্যাসেজে সরাসরি ম্যাপ করে না বা প্যাসেজে উপস্থিত নয় এমন আরও প্রসঙ্গ প্রয়োজন। দুর্ভাগ্যবশত, এই ক্যোয়ারীগুলি এমন প্রশ্নেরও বেশি প্রতিনিধিত্ব করে যা বাস্তব পরিস্থিতিতে ইঞ্জিনিয়ারদের দ্বারা জিজ্ঞাসা করা হবে। একটি ডোমেন অভিযোজিত ভাষা মডেলের সাথে পুনরুদ্ধার একত্রিত করা এই সমস্যাটি সমাধান করার একটি উপায়।
এই কাগজটি CC 4.0 লাইসেন্সের অধীনে arxiv-এ উপলব্ধ ।