
PS5LM কী?
PS5LM হলো জেলব্রেক করা PlayStation 5-এর জন্য llama.cpp-এর একটি পোর্ট। এটি সামঞ্জস্যপূর্ণ GGUF ভাষা মডেলগুলোকে কোনো দূরবর্তী ইনফারেন্স সার্ভিসের মাধ্যমে নয়, কনসোলেই স্থানীয়ভাবে চালাতে দেয়।
0.1 সংস্করণে ps5lm.elf নামে একটি মাত্র পেলোড রয়েছে। এটি লোড হলে PS5 ব্রাউজারে একটি মডেল লাইব্রেরি খোলে। সেখান থেকে আপনি সমর্থিত মডেল ডাউনলোড করে চালু করতে পারবেন এবং DualSense দিয়ে নিয়ন্ত্রিত একটি ইন্টার্যাক্টিভ চ্যাট খুলতে পারবেন।
PS5LM আপনার নিজের PS5-এ ব্যবহারের জন্য তৈরি। বর্তমান রিলিজটি 7.00 থেকে 13.60 পর্যন্ত ফার্মওয়্যার চালানো জেলব্রেক করা কনসোল সমর্থন করে।
প্রকল্পটির বৃহত্তর লক্ষ্য হলো PS5-এ llama.cpp-এর আর্কিটেকচার ও কোয়ান্টাইজেশন আনা, শুরুতে এর Zen 2 CPU এবং পরবর্তীতে GPU ব্যবহার করে। প্রথম প্রধান মডেল লক্ষ্য হলো Qwen 3.8 27B, যদিও বর্তমান পেলোড মেমরি সীমার কারণে 0.1 সংস্করণে কেবল অনেক ছোট মডেল চালানো যায়।
প্রধান বৈশিষ্ট্য
- কনসোলে ইনফারেন্স: GGUF মডেলগুলো PS5-এ স্থানীয়ভাবে চলে।
- ব্রাউজারভিত্তিক লাইব্রেরি: কনসোল ব্রাউজার থেকে সমর্থিত মডেল ডাউনলোড, চালু ও পরিচালনা করুন।
- ইন্টার্যাক্টিভ চ্যাট: একটি চ্যাট ইন্টারফেস খুলে DualSense দিয়ে টাইপ করুন।
- নেটওয়ার্ক অ্যাক্সেস: একই নেটওয়ার্কে সংযুক্ত ফোন বা কম্পিউটার থেকে মডেল লাইব্রেরি ব্যবহার করুন।
- OpenAI-সামঞ্জস্যপূর্ণ সার্ভিস:
8081পোর্টের চ্যাট সার্ভার OpenAI API ব্যবহার করে। - llama.cpp সামঞ্জস্যতা: পোর্টটি Qwen, Llama, Mistral ও Gemma-এর মতো আর্কিটেকচারের জন্য llama.cpp-এর সমর্থন এবং 1-bit থেকে 8-bit পর্যন্ত কোয়ান্টাইজেশন গ্রহণ করার জন্য তৈরি।
- ডেভেলপার টুলিং: রিপোজিটরিতে মেমরি ও থ্রেড প্রোব, SDK সেটআপ স্ক্রিপ্ট, ক্রস-বিল্ড স্ক্রিপ্ট এবং পেলোড ডিপ্লয়মেন্ট সহায়ক রয়েছে।
প্রয়োজনীয়তা
স্ট্যান্ডার্ড ইনস্টলেশনের জন্য আপনার প্রয়োজন:
- আপনার নিজের একটি PS5।
- 7.00 থেকে 13.60 পর্যন্ত ফার্মওয়্যার সংস্করণ।
- একটি কার্যকর জেলব্রেক।
- একটি পেলোড লোডার, যেমন WebKit Autoloader-এর Payload Manager, অথবা
9021পোর্টে শুনছে এমন একটি ELF লোডার। - মডেল ডাউনলোড, আপডেট গ্রহণ বা অন্য ডিভাইস থেকে PS5LM অ্যাক্সেস করতে চাইলে একটি নেটওয়ার্ক সংযোগ।
Payload Manager দিয়ে PS5LM ইনস্টল করুন
Payload Manager হলো সবচেয়ে সহজ ইনস্টলেশন পদ্ধতি এবং এটি PS5LM-এর আপডেটও দিতে পারে।
- জেলব্রেক করা কনসোলে Payload Manager খুলুন।
- Settings-এ যান।
- Multiple Payload Sources সক্রিয় করুন।
- পেলোড সোর্স হিসেবে
https://ps5lm.cobanov.dev/payloads.jsonযোগ করুন। - তৈরি হওয়া তালিকায় PS5LM খুঁজুন।
- পেলোডটি ইনস্টল ও লোড করুন।
পেলোড চালু হওয়ার পর PS5 ব্রাউজারে স্বয়ংক্রিয়ভাবে PS5LM মডেল লাইব্রেরি খোলার কথা।
ম্যানুয়ালি পেলোড ইনস্টল করুন
আপনি যদি Payload Manager সোর্স যোগ করতে না চান, তাহলে সর্বশেষ PS5LM রিলিজ থেকে ps5lm.elf ডাউনলোড করুন।
অন্য কোনো PS5 পেলোড যেভাবে লোড করেন, ফাইলটিও সেভাবেই লোড করুন। আপনি এটি Payload Manager-এর মাধ্যমে আপলোড করতে পারেন অথবা 9021 পোর্টে থাকা elfldr-এর মতো কোনো ELF লোডারে পাঠাতে পারেন।
মডেল ডাউনলোড ও চালান
কনসোল ব্রাউজারে PS5LM লাইব্রেরি দেখা গেলে, প্রাথমিক ধাপগুলো হলো:
- একটি মডেল নির্বাচন করে Download চাপুন।
- মডেলটি কনসোলে ডাউনলোড শেষ হওয়া পর্যন্ত অপেক্ষা করুন।
- মডেল চালু করতে Run চাপুন।
- Open chat চাপুন।
- DualSense ব্যবহার করে একটি প্রম্পট লিখে জমা দিন।
ডাউনলোড করা মডেলগুলো /data/PS5LM/models-এর অধীনে সংরক্ষিত হয়।
বর্তমান মডেল ও মেমরি সীমা
বর্তমানে একটি পেলোড PS5-এর হোম স্ক্রিনে সমস্যা না করে মেমরিতে প্রায় 1.6 GB মডেল ডেটা লক করে রাখতে পারে। তাই বিল্ট-ইন ক্যাটালগে ছোট মডেলগুলোর ওপর গুরুত্ব দেওয়া হয়েছে:
- Qwen3.5 0.8B: প্রতি সেকেন্ডে প্রায় 13 থেকে 21 টোকেন।
- Qwen3.5 2B: প্রতি সেকেন্ডে প্রায় 9 টোকেন।
বড় মডেল চালাতে বর্তমান পেলোড আর্কিটেকচারের বদলে একটি নেটিভ অ্যাপ্লিকেশন প্রয়োজন। বিশেষ করে, 27B Qwen 3.8 লক্ষ্যটি এখনো 0.1 সংস্করণের পেলোডে সমর্থিত নয়।
অন্য ডিভাইস থেকে PS5LM অ্যাক্সেস করুন
একই স্থানীয় নেটওয়ার্কে থাকা ফোন বা কম্পিউটার থেকে আপনি মডেল লাইব্রেরি পরিচালনা করতে পারবেন। ব্রাউজারে 8082 পোর্টে কনসোলের IP ঠিকানা খুলুন। উদাহরণ:
http://192.168.1.50:8082
192.168.1.50-এর জায়গায় আপনার PS5-এর প্রকৃত IP ঠিকানা বসান।
চ্যাট সার্ভিসটি 8081 পোর্টে চলে এবং OpenAI API ব্যবহার করে। এর ফলে কোনো OpenAI-সামঞ্জস্যপূর্ণ ক্লায়েন্ট PS5-কে সার্ভার হিসেবে ব্যবহার করে মডেলের সঙ্গে যোগাযোগ করতে পারে, যদি ক্লায়েন্ট ও কনসোল নেটওয়ার্কের মাধ্যমে পরস্পরের কাছে পৌঁছাতে পারে।
FTP দিয়ে একটি GGUF মডেল যোগ করুন
PS5LM মডেলের জন্য /data/PS5LM/models স্ক্যান করে। FTP-এর মাধ্যমে এই ডিরেক্টরিতে কপি করা GGUF ফাইল লাইব্রেরিতে দেখা যাবে।
- PS5-এ একটি FTP সার্ভার পেলোড চালু করুন।
- একটি FTP ক্লায়েন্ট থেকে কনসোলে সংযোগ করুন।
- GGUF ফাইলটি
/data/PS5LM/models-এ আপলোড করুন। - PS5LM লাইব্রেরিতে ফিরে যান বা সেটি রিফ্রেশ করুন।
- মডেলটি নির্বাচন করে চালান।
বর্তমান মেমরি সীমার মধ্যে ফিট করে এমন মডেল বেছে নিন। কোনো মডেল GGUF ফরম্যাটে থাকলেই যে সেটি পেলোডের প্রায় 1.6 GB লকড-মেমরি সীমার মধ্যে চালানোর মতো ছোট হবে, তা নিশ্চিত নয়।
সোর্স থেকে PS5LM টুল তৈরি করুন
যেসব ডেভেলপার পোর্টটি পরিদর্শন, পরিবর্তন বা ডিপ্লয় করতে চান, তাদের ps5-payload-dev SDK এবং হোস্টে ইনস্টল করা LLVM প্রয়োজন।
হোস্টের নির্ভরতা ইনস্টল করুন
macOS-এ Homebrew ব্যবহার করে প্রয়োজনীয় প্যাকেজগুলো ইনস্টল করুন:
brew install llvm@21 lld socat cmake ninja
Debian বা Ubuntu-তে ব্যবহার করুন:
sudo apt install clang-18 lld-18 socat cmake ninja-build
রিপোজিটরি ক্লোন ও প্রস্তুত করুন
llama.cpp নির্ভরতাটি একটি Git সাবমডিউল হিসেবে অন্তর্ভুক্ত, তাই রিপোজিটরিটি রিকার্সিভভাবে ক্লোন করুন:
git clone --recursive https://github.com/cobanov/PS5LM
cd PS5LM
scripts/setup-sdk.sh
source scripts/env.sh
সেটআপ স্ক্রিপ্টটি SDK প্রস্তুত করে, আর scripts/env.sh বর্তমান শেল পরিবেশকে প্রকল্পটির জন্য কনফিগার করে।
প্রোব ও llama.cpp টুল তৈরি করুন
make -C probes/memprobe
scripts/build-llama.sh
প্রথম কমান্ডটি Phase 0 মেমরি প্রোব তৈরি করে। দ্বিতীয়টি PS5-এর জন্য llama-cli, llama-server এবং llama-bench ক্রস-বিল্ড করে।
কনসোলে ডেভেলপমেন্ট বিল্ড চালান
এই ওয়ার্কফ্লোর জন্য PS5-এ 9021 পোর্টে একটি ELF লোডার চালু থাকতে হবে। রিপোজিটরিতে এক্সপ্লয়েট পেজ হোস্ট করা, সহায়ক পেলোড কনফিগার করা এবং ELF ফাইল পাঠানোর জন্য স্ক্রিপ্ট রয়েছে।
scripts/host-relapse.sh
export PS5_HOST=192.168.1.50
scripts/console-setup.sh
scripts/send.sh probes/memprobe/memprobe.elf
PS5_HOST-এ আপনার কনসোলের IP ঠিকানা সেট করুন। মেমরি প্রোবটি এর ফলাফল হোস্টে স্ট্রিম করে এবং কনসোলের /data/PS5LM/memprobe.txt ফাইলেও লিখে।
llama.cpp কমান্ড চালান
2121 পোর্টে ftpsrv চালু থাকলে, scripts/run.sh তৈরি করা llama.cpp টুল আপলোড করে আর্গুমেন্টসহ চালু করতে পারে।
প্রথমে FTP বা USB ব্যবহার করে একটি সামঞ্জস্যপূর্ণ GGUF মডেল /data/PS5LM/models-এ কপি করুন। এরপর llama-cli দিয়ে একটি প্রম্পট চালান:
scripts/run.sh llama-cli -m /data/PS5LM/models/model.gguf -p "Hello from a PS5" -n 64
কনসোলের সব নেটওয়ার্ক ইন্টারফেসে 8081 পোর্টে সার্ভার চালু করতে চালান:
scripts/run.sh llama-server -m /data/PS5LM/models/model.gguf --host 0.0.0.0 --port 8081
উন্নত টিপস
পেলোডের সীমার মধ্যে মডেল রাখুন
মডেল আর্কিটেকচারের সমর্থন এবং বাস্তবসম্মত মডেল-আকার দুটি পৃথক বিষয়। llama.cpp কোনো আর্কিটেকচার ও কোয়ান্টাইজেশন সমর্থন করলেও তৈরি করা GGUF-টি পেলোডের জন্য উপলব্ধ মেমরির মধ্যে ফিট করতে হবে। বড় ফাইল স্থানান্তরের আগে প্রকল্পের মডেল ডকুমেন্টেশন ও বর্তমান ক্যাটালগকে নির্দেশনা হিসেবে ব্যবহার করুন।
রিমোট ক্লায়েন্টের জন্য সার্ভার ব্যবহার করুন
ইন্টিগ্রেশনের জন্য --host 0.0.0.0 সহ llama-server চালান এবং 8081 পোর্টের মাধ্যমে সংযোগ করুন। PS5 ও ক্লায়েন্টকে একই বিশ্বস্ত নেটওয়ার্কে রাখুন এবং স্থানীয় নেটওয়ার্ক সেটিংস পোর্টটি ব্লক করছে না তা নিশ্চিত করুন।
শেষ-ব্যবহারকারী ও ডেভেলপমেন্ট ওয়ার্কফ্লো আলাদা রাখুন
সাধারণ ব্যবহারের জন্য ব্রাউজার লাইব্রেরিই সবচেয়ে সরাসরি বিকল্প। প্রোব, FTP, ক্রস-কম্পাইলেশন এবং scripts/run.sh ওয়ার্কফ্লো মূলত বিল্ড পরীক্ষা, কনসোলের তথ্য সংগ্রহ, বেঞ্চমার্কিং অথবা llama.cpp টুল নিয়ে পরীক্ষা-নিরীক্ষার জন্য উপযোগী।
রিপোজিটরির কাঠামো বুঝে নিন
third_party/llama.cpp-এ নির্দিষ্ট সংস্করণের আপস্ট্রিম llama.cpp সাবমডিউল রয়েছে।ps5/compat-এ কনসোলে অনুপস্থিত libc ফাংশনগুলোর ছোট একটি সেট বাস্তবায়ন করা হয়েছে।patches/-এ PS5-নির্দিষ্ট llama.cpp সোর্স পরিবর্তনগুলো রয়েছে।probes/-এmemprobeওthreadprobeরয়েছে।scripts/-এ SDK, ক্রস-বিল্ড, সেটআপ ও ডিপ্লয়মেন্ট সহায়ক স্ক্রিপ্ট রয়েছে।docs/-এ রোডম্যাপ, সামঞ্জস্যপূর্ণ মডেলের নির্দেশনা, পোর্টিং নোট, কনসোল নির্দেশনা ও গবেষণা রয়েছে।
উপসংহার
PS5LM একটি সুবিধাজনক ব্রাউজার ইন্টারফেসের মাধ্যমে সমর্থিত জেলব্রোকেন PS5-এ স্থানীয়ভাবে ছোট GGUF ভাষা মডেল চালানো সম্ভব করে। Payload Manager ইনস্টলেশন ও ক্যাটালগের মডেল দিয়ে শুরু করুন। আরও নিয়ন্ত্রণের প্রয়োজন হলে সোর্স বিল্ড, FTP, কমান্ড-লাইন টুল, প্রোব এবং OpenAI-সামঞ্জস্যপূর্ণ সার্ভার ব্যবহার করে কনসোলে llama.cpp নিয়ে পরীক্ষা করুন।
PS5LM GPL-3.0-or-later লাইসেন্সের অধীনে প্রকাশিত, আর llama.cpp তার MIT লাইসেন্স বজায় রাখে। প্রকল্পটিতে Sony SDK ফাইল, কী, ফার্মওয়্যার বা মডেল ওজন অন্তর্ভুক্ত নেই এবং এটি Sony Interactive Entertainment বা Alibaba-এর সঙ্গে সংশ্লিষ্ট নয়।
