تصور کنید تنها با نوشتن جملهای ساده مثل «یک برنامه ارزیابی استرس محیط کار بساز»، تمام زیرساختهای فنی — از موتور امتیازدهی و رابط کاربری استایلیافته گرفته تا گزارشهای PDF کامل و قابل انتشار — در چند ثانیه آماده شود. این معماری که جزئیات آن در ۶ جولای ۲۰۲۶ توسط یک توسعهدهنده در پلتفرم dev.to منتشر شد، جایگزینی برای جادوگران قالبهای سنتی (Template Wizards) است و از یک خط لوله مهارت ماژولار استفاده میکند تا زبان طبیعی را به یک مدل دامنه کاربردی تبدیل کند.
بسیاری از ابزارهای تولید اپلیکیشن با هوش مصنوعی زاینده (Generative AI) — که شبیه به نویسندهای است که با پیشبینی کلمه بعدی، متنی روان میسازد — سعی میکنند مستقیماً کد خام بنویسند. طبق گزارش نویسنده، این روش معمولاً به خطاهای سینتکسی یا توهم (Hallucination) — یعنی وقتی مدل با اطمینان چیزی را میگوید که وجود ندارد، مثل دوستی که خاطرهای را اشتباه تعریف میکند — یا توهمات ساختاری منجر میشود. در مقابل، این سیستم جدید از هوش مصنوعی نه به عنوان یک کدنویس، بلکه به عنوان یک فرمانده استفاده میکند. در این رویکرد، AI مانند اپراتوری است که دستورات مشخصی را در محیط CLI صادر میکند تا یک مدل دامنه پیشفرض در زبان جاوا را تغییر دهد (Mutate)؛ این امر تضمین میکند که اپلیکیشن نهایی همواره از یک طرح فنی سختگیرانه پیروی کند.
معماری ششماژولی
این سیستم بر پایه یک عامل برنامهریز (Plan Agent) استوار است که درخواست کاربر را به یک فهرست وظایف YAML تجزیه میکند. این برنامه سپس شش ماژول مستقل را فعال میکند. استفاده از چندین عامل تخصصی برای مدیریت بخشهای مختلف، یادآور تجربههای موفق در افزایش دقت خروجی است؛ چنانکه پیشتر دیدیم چگونه هماهنگی ۶ عامل هوش مصنوعی توانست صحت محتوا را از ۷۴٪ به ۹۲٪ برساند. هر ماژول توسط یک فایل SKILL.md هدایت میشود که به عنوان پرامپت سیستم برای AI عمل کرده و حاوی دستورات، قوانین و مثالهای خاص است. این ماژولها همچنین از «مراجع» (References) استفاده میکنند؛ یعنی دادههای زمان اجرا که AI پیش از تولید دستورات میخواند، مانند فیلدهای فعلی فرم یا صفحات گزارش.
- form: مدیریت طراحی فیلدهای فرم، شامل انواع سوالات، سیستم امتیازدهی و گروهبندیها.
- scale: مدیریت امتیازدهی ابعاد (Dimension Scoring)، شامل فاکتورها، بازه امتیازات و مدیریت جهتگیری (Direction Handling).
- connect: پیکربندی صفحات رابط کاربری، مانند صفحه جلد (Cover Page)، فرم اصلی، صفحه نهایی و استایل بصری.
- report: طراحی گزارشهای PDF با استفاده از قالبهای صفحه، ویجتها و منطق امتیازدهی.
- expert: تنظیم دستیار هوشمند AI، تعریف نقش، پیام خوشآمدگویی و مرزهای رفتاری.
- share: مدیریت انتشار برنامه، شامل کنترل دسترسی، مجوزها و اعتبار سنجی.
موتور اجرا و بهینهسازی سرعت
برای بهینهسازی عملکرد، این موتور از رویدادهای ارسالی سرور (SSE) برای استریم پاسخهای AI استفاده میکند. بهجای انتظار برای پاسخ کامل مدل زبانی بزرگ (LLM) — که شبیه کتابخانهداری است که میلیاردها صفحه را خوانده و حالا با همان لحن جواب میدهد — موتور هر دستور CLI را بهمحض ظاهر شدن در استریم، فوراً اجرا میکند. برای مثال، زمانی که AI دستور assess form add --id name --type input --title "Your Name" را تولید میکند، موتور بلافاصله آن را برای ایجاد فیلد اجرا میکند. به نقل از نویسنده، این رویکرد استریمینگ زمان تولید اپلیکیشنهای معمولی را حدود ۴۰٪ کاهش داد.
پایداری سیستم از طریق «خودکفایی دانش» (Knowledge Self-containment) تامین میشود. عامل برنامهریز تضمین میکند که هر وظیفه، تمام دادههای مورد نیاز خود را در یک فیلد حیاتی به نام knowledge داشته باشد. برای مثال، اگر یک فرم به سه بُعد (فشار کاری، استرس نقش و حمایت اجتماعی) نیاز داشته باشد، این تعداد مشخص و قوانین امتیازدهی مربوط به آنها در وظیفه مربوط به «مقیاس» (Scale) تکرار میشود. این کار مانع از توهمات «مشابه مورد بالا» (Same as above) میشود؛ جایی که AI به وظایفی ارجاع میدهد که موتور اجرا قادر به تحلیل یا بازیابی آنها نیست. در نسخههای اولیه، ارجاعاتی مثل «به وظیفه فرم مراجعه کنید» باعث میشد موتور هیچ مقداری پیدا نکند و در نتیجه نیمی از اپلیکیشنهای تولیدی با شکست مواجه شوند.
مدل دامنه و مدیریت وضعیت
در لایههای زیرین AI، یک مدل دامنه در زبان جاوا قرار دارد که از الگوی Builder استفاده میکند. ریشه این ساختار «Flower» نام دارد که به چندین جزء کلیدی شاخه میزند:
- Model: شامل فاکتورها (Factors) است که به مقیاسها (Scales/Dimensions) و دادهها (بازه امتیازات) ختم میشوند.
- Form: شامل آرایهای از فیلدها (Fields) است.
- Connect: مدیریت صفحات جلد، صفحه اصلی و صفحات نهایی را بر عهده دارد.
- Report: از صفحات گزارش (ReportPages) و ویجتها تشکیل شده است.
- Expert: پیکربندی دستیار AI را ذخیره میکند.
برای جلوگیری از افت عملکرد ناشی از N بار نوشتن مجزا در پایگاه داده (مثلاً در یک وظیفه فرم با ۵۰ دستور)، سیستم از یک SessionContext استفاده میکند. این ابزار وضعیت (State) را در حافظه (In-memory) نگه میدارد و در پایان، کل درخت داده را در یک عملیات دستهای (Batch) واحد ذخیره میکند.
دو عامل متمایز
سیستم از دو عامل (Agent) مجزا استفاده میکند که هر دو از فایلهای SKILL.md مشترک بهره میبرند اما بستر (Context) متفاوتی دارند:
- AssessAgent: یک تولیدکننده تکمرحلهای (One-shot) برای ساخت اپلیکیشنهای جدید از صفر است. این عامل در دو فاز
plan()(برنامهریزی) وexecute()(اجرا) عمل میکند. - BuilderAgent: یک ویرایشگر گفتگومحور برای اصلاح اپلیکیشنهای موجود است. این عامل یک چرخه چهار مرحلهای پیچیدهتر را طی میکند: تفکر (تحلیل وضعیت) $\rightleftharpoons$ برنامهریزی (تولید وظایف
PATCH) $\rightleftharpoons$ اجرا (استریم دستورات) $\rightleftharpoons$ تامل (تأیید نتایج و پاسخ به کاربر).
این تفکیک دقیق میان تحلیل مسیر و اجرای عملیات، شباهت زیادی به استراتژیهای مدرن ارزیابی مدلها دارد؛ رویکردی که در تفکیک «محرک» از «اجرا» برای شناسایی نقاط کور عاملهای هوش مصنوعی نیز به کار گرفته شده است. این چرخش به سمت تولید مبتنی بر دستور، نشاندهنده تغییری گسترده در مهندسی هوش مصنوعی است؛ عبور از تولید کد سرتاسری (End-to-End) به سمت تغییرات کنترلشده در وضعیت سیستم (Constrained State Mutation). با جداسازی «قصد» (پرامپت AI) از «پیادهسازی» (الگوی Builder در جاوا)، توسعهدهندگان میتوانند نوسانات خروجی مدلهای زبانی را حذف کرده و در عین حال انعطافپذیری رابطهای زبان طبیعی را حفظ کنند.
چه در حال ساخت یک ابزار ارزیابی سفارشی باشید و چه یک داشبورد داخلی پیچیده، نکته کلیدی روشن است: برای دستیابی به قابلیت اطمینان در سطح تولید (Production-grade)، هوش مصنوعی خود را به یک CLI و یک مدل دامنه محدود کنید. این تصمیمات مهندسی به نویسنده کمک کرد تا با چالشهای خاص محیط تولید، مانند جنگهای رندرینگ PDF (شامل SVGها، ایموجیها و خطاهای NullPointerExceptions در کتابخانه iText) مقابله کند.
در ادامه این مجموعه، بررسیهای دقیقتری درباره جزئیات مسیریابی وظایف YAML، انواع فیلدهای آگاه از صحنه (Scene-aware) و سه دور اصلاحات لازم برای حل مشکل گم شدن رویدادهای SSE انجام خواهد شد.
گام بعدی شما
- اگر در حال توسعه ابزارهای داخلی هستید، بهجای درخواست کد کامل، از هوش مصنوعی بخواهید دستورات CLI برای تغییر وضعیت دیتابیس شما تولید کند.
- معماریهای مبتنی بر YAML را برای تجزیه درخواستهای پیچیده به وظایف کوچکتر بررسی کنید.
- برای کاهش تأخیر در کاربر، از استریم پاسخها (SSE) بهجای انتظار برای خروجی کامل مدل استفاده کنید.
اما داستان سختافزاری این تحول حتی شگفتانگیزتر است — به تحلیل ما دربارهی تراشههای Blackwell مراجعه کنید.




گفتگو