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

LLM gateway হলো একটি হালকা ও স্বয়ংসম্পূর্ণ প্রক্সি/রাউটার যা লোকাল হার্ডওয়্যারের মাধ্যমে ব্যক্তিগত একক-ব্যবহারকারীর ব্যবহারের জন্য ডিজাইন করা হয়েছে। এটি ডাইনামিকভাবে একাধিক Llama.cpp-কম্প্যাটিবল ইঞ্জিন পরিচালনা করে এবং ইনকামিং রিকোয়েস্ট প্যারামিটারের উপর ভিত্তি করে—বিশেষ করে কনটেক্সট সাইজের প্রয়োজনীয়তা অনুযায়ী—সঠিক মডেল ভেরিয়েন্টটি স্বয়ংক্রিয়ভাবে নির্বাচন এবং চালু করে। সিস্টেমটি স্ট্যান্ডঅ্যালোন টোকেনাইজার বা রানিং ইঞ্জিন এন্ডপয়েন্টের মাধ্যমে টোকেন ব্যবহারের হিসাব করে, প্রয়োজন হলে অপ্টিমাইজড কনফিগারেশনের সাথে ইঞ্জিন রিস্টার্ট করে এবং মেমরি সাশ্রয় করতে আইডল ইনস্ট্যান্সগুলো বন্ধ করে দেয়। এটি Lua স্ক্রিপ্টের (যেমন, example.cfg.lua) মাধ্যমে কনফিগারেশন সমর্থন করে, যেখানে সার্ভার সেটিংস এবং বিভিন্ন কনটেক্সট সাইজ, বাইনারি পাথ এবং স্টার্টআপ আর্গুমেন্টসহ মডেল ভেরিয়েন্টগুলো সংজ্ঞায়িত করা হয়। ব্যবহারকারীরা ডাইনামিক সুইচিংয়ের জন্য প্রতিটি মডেলের একাধিক ভেরিয়েন্ট (যেমন, low VRAM বনাম high performance) কনফিগার করতে পারেন। এই গেটওয়েটি কনফিগারযোগ্য IPv4/IPv6 অ্যাড্রেসে লিসেন করে এবং /v1/chat/completions এবং /v1/models-এর মতো OpenAI API-কম্প্যাটিবল এন্ডপয়েন্ট প্রদান করে। অভ্যন্তরীণ লকিংয়ের কারণে এক সময়ে কেবল একটি রিকোয়েস্ট প্রসেস করা হয়। এটি বর্তমানে শুধুমাত্র চ্যাট কমপ্লিশন এন্ডপয়েন্ট ইমপ্লিমেন্ট করেছে এবং শুধুমাত্র llama.cpp ইঞ্জিন সমর্থন করে, যদিও এর আর্কিটেকচার সম্প্রসারণের সুযোগ রাখে। সেটআপের জন্য init.bat/sh এর মাধ্যমে Python ডিপেন্ডেন্সি ইনস্টল করা, কনফিগ ফাইল এডিট করা এবং run.bat/sh অথবা uv run main.py এর মাধ্যমে লঞ্চ করতে হয়। সতর্কতা: ভুল কনফিগারেশনের ফলে মেমরি শেষ হয়ে যেতে পারে বা সিস্টেম ফ্রিজ হতে পারে। এমবেডেড Lua স্ক্রিপ্ট ব্যবহার করে লোড করার সময় কনফিগারেশন যাচাই করা হয়। এটি একটি পরীক্ষামূলক সফটওয়্যার যা গবেষণা/টেস্টিংয়ের জন্য তৈরি; প্রোডাকশন ব্যবহারের জন্য সুপারিশ করা হয় না।