এলএলএম এক্সিকিউশনকে সহজ করতে Llamfiles ব্যবহার করা

এলএলএম এক্সিকিউশনকে সহজ করতে Llamfiles ব্যবহার করা

উত্স নোড: 3068075

ভূমিকা

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

শিক্ষার উদ্দেশ্য

  • ঐতিহ্যগত এলএলএম সম্পাদনের চ্যালেঞ্জগুলি বুঝুন
  • লামাফাইলসের উদ্ভাবনী ধারণাটি উপলব্ধি করুন
  • সহজে আপনার নিজস্ব Llamafile এক্সিকিউটেবল ডাউনলোড এবং চালাতে শিখুন
  • কোয়ান্টাইজড এলএলএম থেকে Llamfiles তৈরি করা শেখা
  • এই পদ্ধতির সীমাবদ্ধতা চিহ্নিত করুন

এই নিবন্ধটি একটি অংশ হিসাবে প্রকাশিত হয়েছিল ডেটা সায়েন্স ব্লগাথন।

সুচিপত্র

বড় ভাষার মডেলের সমস্যা

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

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

Llamfiles কি?

জনপ্রিয় ওপেন সোর্স বৃহৎ ভাষার মডেলের সাথে সহজে কাজ করার জন্য Llamfiles তৈরি করা হয়েছে। এগুলি একক-ফাইল এক্সিকিউটেবল। এটি একটি এলএলএম ডাউনলোড করার মতো এবং এটিকে এক্সিকিউটেবলের মতো চালানোর মতো। লাইব্রেরিগুলির প্রাথমিক ইনস্টলেশনের প্রয়োজন নেই। llama.cpp এবং কসমোপলিটান libc-এর কারণে এটি সম্ভব হয়েছিল, যা LLMগুলিকে বিভিন্ন ওএসে চালিত করে।

llama.cpp-কে Georgi Gerganov দ্বারা পরিমাপকৃত বিন্যাসে বড় ভাষার মডেল চালানোর জন্য তৈরি করা হয়েছিল যাতে তারা একটি CPU-তে চলতে পারে। llama.cpp হল একটি C লাইব্রেরি যা আমাদের ভোক্তা হার্ডওয়্যারে কোয়ান্টাইজড এলএলএম চালাতে দেয়। অন্যদিকে, কসমোপলিটান libc হল আরেকটি C লাইব্রেরি যা একটি বাইনারি তৈরি করে যা যেকোনো OS (Windows, Mac, Ubuntu) তে কোনো দোভাষীর প্রয়োজন ছাড়াই চলতে পারে। সুতরাং এই লাইব্রেরির উপরে Llamfile তৈরি করা হয়েছে, যা এটিকে একক-ফাইল এক্সিকিউটেবল এলএলএম তৈরি করতে দেয়

উপলব্ধ মডেলগুলি GGUF কোয়ান্টাইজড বিন্যাসে রয়েছে। GGUF হল llama.cpp-এর স্রষ্টা, Georgi Gerganov দ্বারা বিকশিত বড় ভাষার মডেলগুলির জন্য একটি ফাইল বিন্যাস৷ GGUF হল CPU এবং GPU-তে কার্যকরীভাবে এবং দক্ষতার সাথে বড় ভাষার মডেলগুলি সংরক্ষণ, ভাগ করা এবং লোড করার জন্য একটি বিন্যাস। GGUF মডেলগুলিকে তাদের আসল 16-বিট ফ্লোটিং পয়েন্ট থেকে 4-বিট বা 8-বিট পূর্ণসংখ্যা বিন্যাসে সংকুচিত করার জন্য একটি কোয়ান্টাইজেশন কৌশল ব্যবহার করে। এই কোয়ান্টাইজড মডেলের ওজন এই GGUF ফর্ম্যাটে সংরক্ষণ করা যেতে পারে

এটি একটি 7GB VRAM সহ একটি কম্পিউটারে 16 বিলিয়ন প্যারামিটার মডেল চালানো সহজ করে তোলে৷ আমরা একটি GPU প্রয়োজন ছাড়াই বড় ভাষার মডেলগুলি চালাতে পারি (যদিও Llamafile আমাদেরকে GPU-তে LLM চালানোর অনুমতি দেয়)। এই মুহূর্তে, LlaVa, Mistral, এবং WizardCoder-এর মতো জনপ্রিয় ওপেন সোর্স লার্জ ল্যাঙ্গুয়েজ মডেলের লামাফাইলগুলি ডাউনলোড এবং চালানোর জন্য সহজেই উপলব্ধ

ওয়ান শট এক্সিকিউটেবল

এই বিভাগে, আমরা একটি মাল্টিমোডাল লাভা লামাফাইল ডাউনলোড করে চালানোর চেষ্টা করব। এখানে, আমরা GPU এর সাথে কাজ করব না এবং CPU তে মডেল চালাব। ক্লিক করে অফিসিয়াল লামাফাইল গিটহাব রিপোজিটরিতে যান এখানে এবং LlaVa 1.5 মডেল ডাউনলোড করা হচ্ছে।

এক শট এক্সিকিউটেবল | লামাফাইলস

মডেলটি ডাউনলোড করুন

উপরের ছবিটি তাদের নাম, আকার এবং ডাউনলোডযোগ্য লিঙ্ক সহ উপলব্ধ সমস্ত মডেল দেখায়। LlaVa 1.5 প্রায় 4GB এবং এটি একটি শক্তিশালী মাল্টি-মডেল যা ছবি বুঝতে পারে। ডাউনলোড করা মডেলটি একটি 7 বিলিয়ন প্যারামিটার মডেল যা 4-বিটে পরিমাপ করা হয়। মডেলটি ডাউনলোড করার পরে, ফোল্ডারে যান যেখানে এটি ডাউনলোড করা হয়েছিল।

"

তারপর সিএমডি খুলুন, এই মডেলটি ডাউনলোড করা ফোল্ডারে নেভিগেট করুন, আমরা যে ফাইলটি ডাউনলোড করেছি তার নাম টাইপ করুন এবং এন্টার টিপুন।

llava-v1.5-7b-q4.llamafile
"

ম্যাক এবং লিনাক্স ব্যবহারকারীদের জন্য

ম্যাক এবং লিনাক্সের জন্য, ডিফল্টরূপে, এই ফাইলটির জন্য এক্সিকিউশন অনুমতি বন্ধ থাকে। সুতরাং, আমাদের লামাফাইলের জন্য সম্পাদনের অনুমতি প্রদান করতে হবে, যা আমরা নীচের কমান্ডটি চালিয়ে তা করতে পারি।

chmod +x llava-v1.5-7b-q4.llamafile

এটি llava-v1.5-7b-q4.llamafile-এর জন্য কার্যকর করার অনুমতি সক্রিয় করতে। এছাড়াও, ম্যাক এবং লিনাক্সে ফাইল চালানোর জন্য ফাইলের নামের আগে "./" যোগ করুন। আপনি এন্টার কীওয়ার্ড চাপার পরে, মডেলটি সিস্টেম র‌্যামে পুশ করা হবে এবং নিম্নলিখিত আউটপুটটি দেখাবে।

ম্যাক এবং লিনাক্স ব্যবহারকারীদের জন্য | লামাফাইলস

তারপর ব্রাউজারটি পপআপ হবে এবং মডেলটি URL-এ চলবে http://127.0.0.1:8080/

"
"

উপরের ছবিটি ডিফল্ট প্রম্পট, ব্যবহারকারীর নাম, এলএলএম নাম, প্রম্পট টেমপ্লেট এবং চ্যাট ইতিহাস টেমপ্লেট দেখায়। এগুলি কনফিগার করা যেতে পারে, তবে আপাতত, আমরা ডিফল্ট মানগুলির সাথে যাব।

নীচে, আমরা এমনকি কনফিগারযোগ্য LLM হাইপারপ্যারামিটার যেমন টপ পি, টপ কে, তাপমাত্রা এবং অন্যান্যগুলি পরীক্ষা করতে পারি। এমনকি এই, আমরা তাদের আপাতত ডিফল্ট হতে দেব। এখন কিছু টাইপ করুন এবং send এ ক্লিক করুন।

"

উপরের ছবিতে, আমরা দেখতে পাচ্ছি যে আমরা একটি বার্তা টাইপ করেছি এবং এমনকি একটি প্রতিক্রিয়া পেয়েছি। এর নীচে, আমরা পরীক্ষা করতে পারি যে আমরা প্রতি সেকেন্ডে প্রায় 6 টোকেন পাচ্ছি, যা একটি ভাল টোকেন/সেকেন্ড বিবেচনা করে যে আমরা এটি সম্পূর্ণভাবে CPU-তে চালাচ্ছি। এই সময়, এর একটি চিত্র দিয়ে চেষ্টা করা যাক.

CPU | টিনিলামা

100% সঠিক না হলেও, মডেলটি প্রায় বেশিরভাগ জিনিস ইমেজ থেকে পেতে পারে। এখন চ্যাটের ইতিহাস মনে আছে কিনা তা পরীক্ষা করার জন্য LlaVa-এর সাথে একটি বহুমুখী কথোপকথন করা যাক।

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

লামাফাইল তৈরি করা হচ্ছে

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

একটি এলএলএম নির্বাচন করুন

আমরা প্রথমে একটি বড় ভাষার মডেল নির্বাচন করে শুরু করব। এই ডেমোর জন্য, আমরা TinyLlama-এর একটি কোয়ান্টাইজড সংস্করণ নির্বাচন করব। এখানে, আমরা TinyLlama এর 8-বিট কোয়ান্টাইজড GGUF মডেল ডাউনলোড করব (আপনি ক্লিক করতে পারেন এখানে HuggingFace এ যেতে এবং মডেল ডাউনলোড করতে)

টিনিলামা

সর্বশেষ লামাফাইলটি ডাউনলোড করুন

অফিসিয়াল গিটহাব লিঙ্ক থেকে সর্বশেষ লামাফাইল জিপ ডাউনলোড করা যেতে পারে। এছাড়াও, জিপ ডাউনলোড করুন এবং জিপ ফাইলটি বের করুন। এই নিবন্ধটির বর্তমান সংস্করণ হল llama file-0.6. লামা এক্সট্র্যাক্ট করার পরে, ফাইল ফোল্ডার সহ বিন ফোল্ডারে নীচের ছবির মতো ফাইলগুলি থাকবে।

"

এখন ডাউনলোড করা TinyLlama 8-বিট কোয়ান্টাইজড মডেলটিকে এই বিন ফোল্ডারে নিয়ে যান। একক-ফাইল এক্সিকিউটেবল তৈরি করতে, আমাদের llamafile-এর বিন ফোল্ডারে একটি .args ফাইল তৈরি করতে হবে। এই ফাইলে, আমাদের নিম্নলিখিত বিষয়বস্তু যোগ করতে হবে:

-m
tinyllama-1.1b-chat-v0.3.Q8_0.gguf
--host
0.0.0.0
...
  • প্রথম লাইনটি -m পতাকা নির্দেশ করে। এটি লামাফাইলকে বলে যে আমরা একটি মডেলের ওজনে লোড করছি।
  • দ্বিতীয় লাইনে, আমরা যে মডেলের নামটি ডাউনলোড করেছি তা উল্লেখ করেছি, যেটি একই ডিরেক্টরিতে উপস্থিত রয়েছে যেখানে .args ফাইলটি রয়েছে, অর্থাৎ, llamafile-এর বিন ফোল্ডার।
  • তৃতীয় লাইনে, আমরা হোস্ট পতাকা যোগ করি, ইঙ্গিত করে যে আমরা এক্সিকিউটেবল ফাইলটি চালাই এবং এটি একটি ওয়েব সার্ভারে হোস্ট করতে চাই।
  • অবশেষে, শেষ লাইনে, আমরা যেখানে হোস্ট করতে চাই সেই ঠিকানাটি উল্লেখ করেছি, যা লোকালহোস্টে মানচিত্র করে। এর পরে তিনটি বিন্দু রয়েছে, যা নির্দিষ্ট করে যে আমরা আমাদের লামাফাইল তৈরি হয়ে গেলে আর্গুমেন্ট পাঠাতে পারি।
  • .args ফাইলে এই লাইনগুলি যোগ করুন এবং এটি সংরক্ষণ করুন।

উইন্ডোজ ব্যবহারকারীদের জন্য

এখন, পরবর্তী পদক্ষেপটি উইন্ডোজ ব্যবহারকারীদের জন্য। উইন্ডোজে কাজ করলে, আমাদের WSL এর মাধ্যমে লিনাক্স ইনস্টল করা দরকার। যদি না হয়, ক্লিক করুন এখানে WSL-এর মাধ্যমে লিনাক্স ইনস্টল করার ধাপগুলি অতিক্রম করতে। ম্যাক এবং লিনাক্সে, কোন অতিরিক্ত পদক্ষেপের প্রয়োজন নেই। এখন টার্মিনালে llamafile ফোল্ডারের বিন ফোল্ডারটি খুলুন (উইন্ডোজে কাজ করলে, এই ডিরেক্টরিটি WSL এ খুলুন) এবং নিম্নলিখিত কমান্ড টাইপ করুন।

cp llamafile tinyllama-1.1b-chat-v0.3.Q8_0.llamafile

এখানে, আমরা tinyllama-1.1b-chat-v0.3.Q3_0.llamafile নামে একটি নতুন ফাইল তৈরি করছি; অর্থাৎ, আমরা .llamafile এক্সটেনশনের সাথে একটি ফাইল তৈরি করছি এবং ফাইলটি llamafileটিকে এই নতুন ফাইলে স্থানান্তর করছি। এখন, এটি অনুসরণ করে, আমরা এই পরবর্তী কমান্ডটি টাইপ করব।

./zipalign -j0 tinyllama-1.1b-chat-v0.3.Q8_0.llamafile tinyllama-1.1b-chat-v0.3.Q8_0.gguf .args

এখানে আমরা জিপলাইন ফাইলের সাথে কাজ করি যা আমরা গিটহাব থেকে লামাফাইল জিপ ডাউনলোড করার সময় এসেছিল। আমরা আমাদের কোয়ান্টাইজড TinyLlama এর জন্য llamafile তৈরি করতে এই কমান্ডের সাথে কাজ করি। এই zipalign কমান্ডে, আমরা tinyllama-1.1b-chat-v0.3.Q8_0.llamafile পাস করি যা আমরা আগের ধাপে তৈরি করেছি, তারপর আমরা tinyllama-1.1b-chat-v0.3.Q8_0.llamafile পাস করি। বিন ফোল্ডারে যে মডেলটি আছে এবং অবশেষে .args ফাইলে পাস করি যা আমরা আগে তৈরি করেছি।

এটি অবশেষে আমাদের একক ফাইল এক্সিকিউটেবল tinyllama-1.1b-chat-v0.3.Q8_0.llamafile তৈরি করবে। আমরা একই পৃষ্ঠায় আছি তা নিশ্চিত করতে, বিন ফোল্ডারে এখন নিম্নলিখিত ফাইলগুলি রয়েছে।

এক্সিকিউটেবল ফাইল | লামাফাইলস

এখন, আমরা tinyllama-1.1b-chat-v0.3.Q8_0.llama ফাইলটি আগের মতোই চালাতে পারি। উইন্ডোজে, আপনি এমনকি .llamafile-এর নাম পরিবর্তন করে .exe করতে পারেন এবং এটিকে ডাবল-ক্লিক করে চালাতে পারেন।

OpenAI সামঞ্জস্যপূর্ণ সার্ভার

এই বিভাগে Llamfile এর মাধ্যমে কিভাবে LLM সার্ভার করা যায় তা দেখবে। আমরা লক্ষ্য করেছি যে যখন আমরা লামা ফাইলটি চালাই, তখন ব্রাউজারটি খোলে এবং আমরা WebUI এর মাধ্যমে LLM এর সাথে যোগাযোগ করতে পারি। এটিকে আমরা মূলত হোস্টিং বলি লার্জ ল্যাঙ্গুয়েজ মডেল।

একবার আমরা লামাফাইলটি চালালে, আমরা একটি শেষ পয়েন্ট হিসাবে সংশ্লিষ্ট LLM-এর সাথে যোগাযোগ করতে পারি কারণ মডেলটি PORT 8080 এ স্থানীয় হোস্টে পরিবেশন করা হচ্ছে। সার্ভারটি OpenAI API প্রোটোকল অনুসরণ করে, অর্থাৎ, OpenAI GPT এন্ডপয়েন্টের অনুরূপ, এইভাবে ওপেনএআই জিপিটি মডেল এবং লামাফাইলের সাথে চলমান এলএলএম-এর মধ্যে স্যুইচ করা সহজ।

এখানে, আমরা পূর্বে তৈরি করা TinyLlama llamafile চালাব। এখন, এটি অবশ্যই লোকালহোস্ট 8080-এ চলছে। আমরা এখন পাইথনে OpenAI API এর মাধ্যমে এটি পরীক্ষা করব

from openai import OpenAI
client = OpenAI(
    base_url="http://localhost:8080/v1", 
    api_key = "sk-no-key-required"
)
completion = client.chat.completions.create(
    model="TinyLlama",
    messages=[
        {"role": "system", "content": "You are a usefull AI 
        Assistant who helps answering user questions"},
        {"role": "user", "content": "Distance between earth to moon?"}
    ]
)
print(completion.choices[0].message.content)
  • এখানে, আমরা OpenAI লাইব্রেরির সাথে কাজ করি। কিন্তু OpenAI এন্ডপয়েন্ট নির্দিষ্ট করার পরিবর্তে, আমরা URL উল্লেখ করি যেখানে আমাদের TinyLlama হোস্ট করা হয়েছে এবং "স্ক-নো-টোকেন-প্রয়োজনীয়" api_key-এর জন্য
  • তারপর, ক্লায়েন্ট আমাদের TinyLlama এন্ডপয়েন্টের সাথে সংযুক্ত হবে
  • এখন, ওপেনএআই-এর সাথে আমরা যেভাবে কাজ করি তার মতো, আমরা আমাদের TinyLlama-এর সাথে চ্যাট করতে কোডটি ব্যবহার করতে পারি।
  • এই জন্য, আমরা সঙ্গে কাজ পরিপূর্ণতা OpenAI এর ক্লাস। আমরা নতুন তৈরি করি পরিপূর্ণতা সাথে .সৃষ্টি() অবজেক্ট করুন এবং মডেলের নাম এবং বার্তাগুলির মতো বিবরণ পাস করুন।
  • বার্তাগুলি অভিধানের একটি তালিকার আকারে রয়েছে, যেখানে আমাদের ভূমিকা রয়েছে, যা সিস্টেম, ব্যবহারকারী বা সহকারী হতে পারে এবং আমাদের সামগ্রী রয়েছে৷
  • অবশেষে, আমরা উপরের প্রিন্ট স্টেটমেন্টের মাধ্যমে উত্পন্ন তথ্য পুনরুদ্ধার করতে পারি।

উপরের জন্য আউটপুট নীচে দেখা যাবে.

লামাফাইলস | আউটপুট

এইভাবে, আমরা llamafiles গুলোকে লিভারেজ করতে পারি এবং ওপেনএআই এপিআইকে সহজেই আমরা চালানোর জন্য বেছে নেওয়া লামাফাইলের সাথে প্রতিস্থাপন করতে পারি।

Llamfiles সীমাবদ্ধতা

বিপ্লবী থাকাকালীন, লামাফাইলগুলি এখনও বিকাশের অধীনে রয়েছে। কিছু সীমাবদ্ধতা অন্তর্ভুক্ত:

  • সীমিত মডেল নির্বাচন: বর্তমানে, সব এলএলএম লামাফাইল আকারে পাওয়া যায় না। প্রাক-নির্মিত লামাফাইলের বর্তমান নির্বাচন এখনও বাড়ছে। বর্তমানে, Llamafiles Llama 2, LlaVa, Mistral, এবং Wizard Coder-এর জন্য উপলব্ধ।
  • হার্ডওয়্যার প্রয়োজনীয়তা: LLM চালানোর জন্য, এমনকি Llamfiles-এর মাধ্যমে, এখনও অনেক কম্পিউটেশনাল রিসোর্স প্রয়োজন। যদিও এগুলি প্রচলিত পদ্ধতির তুলনায় সহজে চালানো যায়, তবে পুরানো বা কম শক্তিশালী কম্পিউটারগুলিকে মসৃণভাবে চালানোর জন্য সাহায্যের প্রয়োজন হতে পারে।
  • নিরাপত্তা উদ্বেগ: অবিশ্বস্ত উৎস থেকে এক্সিকিউটেবল ডাউনলোড এবং চালানো সহজাত ঝুঁকি বহন করে। তাই একটি বিশ্বস্ত প্ল্যাটফর্ম থাকতে হবে যেখানে আমরা এই লামাফাইলগুলি ডাউনলোড করতে পারি।

লামাফাইলস বনাম বাকি

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

তারপরেও, কখনও কখনও, আমরা নির্ভরতা সমস্যার কারণে সমস্যার সম্মুখীন হতে পারি (অর্থাৎ, কিছু লাইব্রেরিতে প্রয়োজনের তুলনায় কম বা উচ্চতর সংস্করণ রয়েছে)। এবং এছাড়াও আছে সিটি ট্রান্সফরমার লাইব্রেরি যা আমাদের কোয়ান্টাইজড এলএলএম চালাতে দেয়। এমনকি এর জন্য একই প্রক্রিয়ার প্রয়োজন যা আমরা llama_cpp_python-এর জন্য আলোচনা করেছি

এবং তারপর, আছে ওল্লামা. ওল্লামা AI সম্প্রদায়ের মধ্যে অত্যন্ত সফল হয়েছে এর ব্যবহার সহজে লোড করা এবং বড় ভাষার মডেলগুলি চালানোর জন্য, বিশেষ করে কোয়ান্টাইজডগুলি। ওল্লামা হল এলএলএম-এর জন্য এক ধরনের টিইউআই (টার্মিনাল ইউজার ইন্টারফেস)। ওল্লামা এবং লামাফাইলের মধ্যে পার্থক্য হল শেয়ারযোগ্যতা। অর্থাৎ, আমি চাইলে আমার model.llamafile কারো সাথে শেয়ার করতে পারি এবং তারা কোনো অতিরিক্ত সফটওয়্যার ডাউনলোড না করেই চালাতে পারে। কিন্তু ওল্লামার ক্ষেত্রে, আমাকে model.gguf ফাইলটি শেয়ার করতে হবে, যেটি অন্য ব্যক্তি তখনই চালাতে পারে যখন তারা ওল্লামা সফ্টওয়্যারটি ইনস্টল করে বা উপরের পাইথন লাইব্রেরির মাধ্যমে।

সম্পদের বিষয়ে, তাদের সকলের জন্য একই পরিমাণ সম্পদের প্রয়োজন কারণ এই সমস্ত পদ্ধতিগুলি কোয়ান্টাইজড মডেলগুলি চালানোর জন্য নীচে llama.cpp ব্যবহার করে। এটি শুধুমাত্র ব্যবহারের সহজতা সম্পর্কে যেখানে এইগুলির মধ্যে পার্থক্য রয়েছে৷

উপসংহার

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

কী Takeaways

  • Llamfiles হল একক-ফাইল এক্সিকিউটেবল যা বড় ভাষা মডেল (LLMs) চালানো সহজ এবং আরও সহজে উপলব্ধ করে।
  • তারা জটিল সেটআপ এবং কনফিগারেশনের প্রয়োজনীয়তা দূর করে, ব্যবহারকারীদের পাইথন বা GPU প্রয়োজনীয়তা ছাড়াই সরাসরি LLM ডাউনলোড এবং চালানোর অনুমতি দেয়।
  • LlaVa, Mistral এবং WizardCoder সহ ওপেন-সোর্স LLM-এর সীমিত নির্বাচনের জন্য Llamfiles এখনই উপলব্ধ।
  • সুবিধাজনক হলেও, Llamfiles এর এখনও সীমাবদ্ধতা রয়েছে, যেমন হার্ডওয়্যার প্রয়োজনীয়তা এবং অবিশ্বস্ত উত্স থেকে এক্সিকিউটেবল ডাউনলোড করার সাথে সম্পর্কিত নিরাপত্তা উদ্বেগ।
  • এই সীমাবদ্ধতা থাকা সত্ত্বেও, ডেভেলপার, গবেষক এবং এমনকি নৈমিত্তিক ব্যবহারকারীদের জন্য এলএলএম অ্যাক্সেসকে গণতান্ত্রিক করার জন্য Llamfiles একটি গুরুত্বপূর্ণ পদক্ষেপের প্রতিনিধিত্ব করে।

সচরাচর জিজ্ঞাস্য

প্রশ্ন ১. Llamfiles ব্যবহার করার সুবিধা কি কি?

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

প্রশ্ন ২. Llamfiles এর সীমাবদ্ধতা কি কি?

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

Q3. আমি কিভাবে Llamfiles দিয়ে শুরু করতে পারি?

উ: লামাফাইলস দিয়ে শুরু করতে, আপনি অফিসিয়াল লামাফাইল গিটহাব রিপোজিটরিতে যেতে পারেন। সেখানে, আপনি যে LLM মডেলটি ব্যবহার করতে চান তার জন্য আপনি Llamafile ডাউনলোড করতে পারেন। একবার আপনি ফাইলটি ডাউনলোড করার পরে, আপনি এটিকে সরাসরি এক্সিকিউটেবলের মতো চালাতে পারেন।

Q4. আমি কি Llamfiles এর সাথে আমার নিজের এলএলএম মডেল ব্যবহার করতে পারি?

উঃ না। বর্তমানে, Llamfiles শুধুমাত্র নির্দিষ্ট পূর্ব-নির্মিত মডেল সমর্থন করে। ভবিষ্যতের সংস্করণগুলির জন্য আমাদের নিজস্ব Llamfiles তৈরি করার পরিকল্পনা করা হয়েছে।

প্রশ্ন 5. Llamfiles এর সম্ভাবনা কি?

A. Llamafiles-এর বিকাশকারীরা উপলব্ধ LLM মডেলগুলির নির্বাচন প্রসারিত করতে, সেগুলিকে আরও দক্ষতার সাথে চালাতে এবং নিরাপত্তা ব্যবস্থাগুলি বাস্তবায়নের জন্য কাজ করছে৷ এই অগ্রগতির লক্ষ্য হল Llamfiles কে আরও বেশি উপলভ্য এবং আরও বেশি লোকের জন্য সুরক্ষিত করা যাদের প্রযুক্তিগত পটভূমি খুব কম।

এই নিবন্ধে দেখানো মিডিয়া Analytics বিদ্যার মালিকানাধীন নয় এবং লেখকের বিবেচনার ভিত্তিতে ব্যবহার করা হয়।

সময় স্ট্যাম্প:

থেকে আরো বিশ্লেষণ বিদ্যা