منصوبے کے بارے میں

AIForge ایک نیٹو C++23 ٹرمینل AI کلائنٹ ہے جو فراہم کنندہ سے مبرا رن ٹائم کرنل کے گرد ڈیزائن کیا گیا ہے۔ یہ Venice (venice-cpp کے ذریعے) کے ذریعے سٹریمنگ انٹریکشنز، ون شاٹ اور پائپ-بیسڈ AI ورک فلو، اور پائیدار، دوبارہ شروع کی جانے والی چیٹ سیشنز کی حمایت کرتا ہے۔ انٹریکٹو چیٹ انٹرفیس TermForge پر تعمیر کیا گیا ہے جو مضبوط ٹرمینل رینڈرنگ فراہم کرتا ہے۔ اہم خصوصیات میں شامل ہیں: - Provider-Neutral Kernel: مرکزی منطق AI فراہم کنندگان سے علیحدہ ہے، جس سے پائیدار، دوبارہ چلائے جانے والے رنز اور پروجیکشنز ممکن ہوتے ہیں۔ - پائیدار سیشنز: سیشن کی حالت، واقعات اور ٹرانسکرپٹ SQLite کا استعمال کرتے ہوئے پائیدار طریقے سے محفوظ ہوتے ہیں؛ سیشنز کو دوبارہ شروع یا جاری رکھا جا سکتا ہے۔ - دوبارہ چلائی جانے والی کام کی منصوبہ بندی: ساختہ شدہ `ask_user` ٹول استعمال، منصوبہ جاتی تبدیلیاں، کام کے گراف، اور تنازعہ تجزیہ کے ساتھ بالکل درست فیصلے اور ریپوزیٹری بیکڈ بیک لاج ٹریکنگ کی حمایت کرتا ہے۔ - فائل-بیکڈ پرسوناز: سسٹم ہدایات XDG کانفیگ میں `.md` یا `.txt` فائلوں سے لوڈ ہوتی ہیں؛ مواد کی ہیش اور ایٹامک اپ ڈیٹس کے ساتھ محفوظ طریقے سے منتظم۔ - ماڈل دریافت اور انتخاب: دستیاب ماڈلز کی فہرست جس میں صلاحیتیں، قیمت اور کونٹیکسٹ سائز شامل ہیں؛ CLI یا انٹریکٹو `/model` کمانڈ کے ذریعے فلٹر اور انتخاب کی اجازت۔ - عارضی کردار کا انتخاب: بنیادی کانفیگریشن تبدیل کیے بغیر فراہم کنندہ مخصوص کرداروں کا رن ٹائم انتخاب۔ - مقامی آڈیو سپورٹ (Linux): ALSA (RtAudio) کے ذریعے ریکارڈنگ اور پلے بیک؛ AI ماڈلز کو کسی بھی قسم کے خطرے کے بغیر محفوظ طریقے سے ہینڈلنگ۔ - تصویر ہینڈلنگ: RasterForge کے ذریعے تصاویر تیار کرنا، دیکھنا اور برآمد کرنا؛ مواد کے پتے پر مبنی اسٹوریج اور تصدیق (PNG, JPEG, WebP)۔ - محدود شدہ انجام دہی: پالیسی گیٹڈ پروسیس انجام دہی، ان پٹ/آؤٹ پٹ سائز کی حدود، اور حفاظت کو بہتر بنانے کے لیے صلاحیت کی پابندیاں۔ - استعمال اور خرچ کنٹرول: ہر سیشن کے لیے ٹوکن استعمال اور مالی لاگت کا پتہ لگانا؛ قابل کنفیگریشن خرچ کی حدود پر عمل درآمد۔ - اسلاش کمانڈ سسٹم: یکساں، توسیع پذیر کمانڈ رجسٹری جس میں مدد، مکمل ہونے اور دستیابی کی جانچ شامل ہے۔ - اسٹیٹک تجزیہ اور سٹائل: کوڈ فارمیٹنگ (clang-format 20) اور اسٹیٹک تجزیہ (clang-tidy 20) کو پالیسیوں کے ساتھ دستاویزات کے ساتھ نافذ کیا گیا ہے۔ CMake (3.28+) کے ذریعے تعمیر کیا گیا ہے جس میں GCC 13+ یا Clang 17+ کی ضرورت ہوتی ہے، اور اس کی بنیادی افعال کے لیے TermForge، venice-cpp، اور RasterForge پر انحصار کرتا ہے۔ SQLite پائیدار سیشن اسٹوریج فراہم کرتا ہے۔ ٹیسٹس اور لینٹنگ بلڈ سسٹم میں انضمام شدہ ہیں۔ آرکیٹیکچر حفاظت، تعین پذیری، اور آڈٹ ایبلٹی پر زور دیتا ہے، جس کے آرکیٹیکچرل فیصلوں کو ADRs (آرکیٹیکچر ڈیسیژن ریکارڈز) اور ڈیزائن دستاویزات کے ذریعے حکمرانی کی جاتی ہے۔ قابل ذکر پابندیاں میں UTF-8 تصدیق، مواد کے پتے پر مبنی آرٹیفیکٹس، اور غیر محفوظ ان پٹس یا سم لنکس کو سختی سے مسترد کرنا شامل ہے۔ یہ ہیڈلس (CLI) اور انٹریکٹو TUI دونوں موڈز میں چلتا ہے۔ جب ٹرمینل میں بغیر دلیل کے لانچ کیا جاتا ہے، تو یہ انٹریکٹو چیٹ ورک اسپیس کھولتا ہے۔ ڈف ریویوز، کوڈ تجزیہ، اور خودکار کاری کے لیے stdin پائپ لائینگ کی حمایت کرتا ہے۔ BSD 3-clause کے تحت لائسنس یافتہ ہے۔