uz
Feedback

Firibgarlarga uchmang! Telemetrio bunday kanallarni topadi va belgilaydi 👉 Belgini ko‘rmoqchi bo‘lsangiz, obuna bo‘ling

آخرین کد نویس

آخرین کد نویس

Kanalga Telegram’da o‘tish

دوران برنامه‌نویسی سنتی به پایان رسیده؛ یا با هوش مصنوعی هم‌مسیر می‌شی یا جا می‌مونی. اینجا یاد می‌گیریم چطور با اهرمِ AI، ده برابر سریع‌تر کد بزنیم و مهندسِ آینده باشیم. به جمع آخرین کدنویس‌ها خوش اومدی. گروه: https://t.me/lastcoderworldg

Ko'proq ko'rsatish
845
Obunachilar
+724 soatlar
+697 kun
+18030 kun

Ma'lumotlar yuklanmoqda

Obunachilarni jalb qilish
Noy '26
Noyabr '26
+84
4 kanalda
Oktabr '26
+151
5 kanalda
Get PRO
Sentabr '26
+159
7 kanalda
Get PRO
Avgust '26
+87
4 kanalda
Get PRO
Iyul '26
+16
1 kanalda
Get PRO
Iyun '26
+40
2 kanalda
Get PRO
May '26
+34
1 kanalda
Get PRO
Aprel '26
+1
0 kanalda
Get PRO
Mart '26
+2
0 kanalda
Get PRO
Fevral '26
+56
0 kanalda
Get PRO
Yanvar '26
+20
2 kanalda
Get PRO
Dekabr '25
+111
2 kanalda
Get PRO
Noyabr '250
2 kanalda
Get PRO
Oktabr '25
+72
3 kanalda
Get PRO
Sentabr '25
+118
2 kanalda
Sana
Obunachilarni jalb qilish
Esdaliklar
Kanallar
10 Noyabr+4
09 Noyabr+8
08 Noyabr+25
07 Noyabr+29
06 Noyabr+2
05 Noyabr+2
04 Noyabr+2
03 Noyabr+3
02 Noyabr+5
01 Noyabr+4
Kanal postlari
Repost from Programming
چرا نشان گاهی از یه راه طولانی‌تر می‌بَرتت… ولی تو زودتر می‌رسی؟ برای مسیریاب، شهر یه گرافه: تقاطع‌ها نقطه، خیابون‌ها خط — و روی هر خط «دقیقه» نوشته، نه کیلومتر. الگوریتم Dijkstra مثل موج آب از جایی که هستی پخش می‌شه تا به مقصد برسه. دایکسترا این رو سال ۱۹۵۶ توی یه کافه، حدود بیست دقیقه‌ای طراحی کرد ☕ و A* زرنگ‌تره: اول سمتی رو می‌گرده که به مقصد نزدیک‌تره. #الگوریتم #مهندسی_نرم_افزار #system_design @programmings_world

2
ترجمه فارسی کتاب Task Programming in C# and .NET این کتاب یکی از بهترین منابع برای یادگیری برنامه‌نویسی ناهمگام Asynchronous، مدیریت Threadها و کار با Task Parallel Library در سی‌شارپ و دات‌نت است. ترجمه فارسی این کتاب رو روی گیت‌هاب گذاشتم: https://github.com/hheydarian/task-programming-in-csharp-dotnet-persian
74
3
مدیریت مسیر شغلی ۱. مهارت‌های ارتباطی؛ کد رو برای آدم‌ها می‌نویسیم خیلی از ما فکر می‌کنیم کار برنامه‌نویس فقط سر و کله زدن با کامپیوتر، اما واقعیت اینه که بخش اصلی کار ما تعامل با آدم‌ هاست. برای اینکه توی تیم نفوذ و اعتبار داشته باشی، این ۴ اصل رو رعایت کن: - غرور دیگران رو نشکن: هر آدمی عمیقاً دوست داره حس کنه مهمه. اگه ایده همکارت رو مستقیم بکوبی تا ایده خودت رو بگی، دیگه به حرفت گوش نمی‌ده. - انتقاد مستقیم نکن: تشویق کردن خیلی بیشتر از ایراد گرفتن روی عملکرد بقیه تاثیر می‌ذاره. - از زاویه دید طرف مقابل حرف بزن: به جای اینکه به مدیرت بگی چرا خودت دوست داری یه فیچر رو به روش X بزنی، توضیح بده که این روش چطور به نفع خودشه (مثلاً پایداری بیشتر یا تحویل سریع‌تر). - از بحث و جدل دوری کن: با بحث کردن هیچ‌ وقت کسی قانع نمی‌شه؛ فقط گارد می‌گیره. جاهایی که موضوع حیاتی نیست، کوتاه بیا تا اعتبارت رو برای تصمیم‌های مهم‌تر نگه داری. ۲. هک کردن مصاحبه شغلی نتیجه خیلی از مصاحبه‌ها قبل از اینکه اصلاً وارد اتاق مصاحبه بشی مشخص می‌شه. شرکت‌ها بین چند نفر که از نظر فنی خوبن، کسی رو انتخاب می‌کنن که بشناسنش، بهش حس خوبی داشته باشن و بدونن کار رو بدون نیاز به کنترل دائمی جمع می‌کنه. به جای فرستادن صدتا رزومه به روش سنتی، شرکت‌های هدفت رو لیست کن، برنامه‌نویس‌ها یا مدیرهای اونجا رو پیدا کن و از قبل باهاشون ارتباط بساز تا با معرفی داخلی Referral وارد مصاحبه بشی. ۳. رزومه نتیجه‌محور رزومه تو در واقع بروشور تبلیغاتی یه محصول چند ده هزار دلاریه، پس نباید یه فایل متنی کسل‌کننده باشه. توی رزومه فقط لیست تکنولوژی‌ها و وظایف رو ننویس؛ از ساختار اقدام–نتیجه Action–Result استفاده کن مثلاً: انجام کار X که باعث بهبود Y درصدی سرعت سیستم شد. حتماً نسخه آنلاین رزومه و پروفایل لینکدین رو به‌روز نگه دار. فصل اول، بخش دوم کتاب Soft Skills
131
4
مدیریت مسیر شغلی ۱. به خودت به چشم یه بیزینس نگاه کن، نه یه کارمند بزرگ‌ترین اشتباه برنامه‌نویس‌ها اینه که فکر می‌کنن کارمند یه شرکت هستن و امنیت شغلی دارن. شغل مال شرکته، اما مسیر شغلی Career مال خودته. به خودت به چشم یه کسب‌وکار یک‌نفره نگاه کن که خدمات تولید نرم‌افزار می‌فروشه و کارفرمای فعلی تو، فقط مشتری اصلی این بیزینسه. وقتی اینطوری فکر کنی، به جای اینکه منتظر بمونی شرکت برات تصمیم بگیره، خودت مدام کیفیت سرویست رو بالا می‌بری، روی یه نیاز خاص تمرکز می‌کنی و یاد می‌گیری چطور خودت رو به بازار پرزنت کنی تا مشتری‌های بهتری جذب کنی. ۲. هدف‌گذاری معکوس از مقصد به امروز بیشتر برنامه‌نویس‌ها مثل یه کشتی بدون مقصد، فقط اولین پیشنهاد شغلی رو قبول می‌کنن و سال‌ها توی همون مسیر می‌مونن. - تعیین هدف بزرگ ۵ تا ۱۰ ساله: دقیقاً مشخص کن کجا می‌خوای برسی مثلاً معمار نرم‌افزار شدن، فریلنسری یا ساخت محصول شخصی. لازم نیست جزئیاتش از الان صددرصد دقیق باشه، فقط باید جهت حرکت رو مشخص کنه. - شکستن به عقب: از اون هدف بزرگ به زمان حال برگرد و اون رو به اهداف سالانه، ماهانه، هفتگی و در نهایت کارهای کوچک روزانه مثل خوندن روزی چند صفحه کتاب تخصصی بشکن. - بازبینی منظم: آخر هر هفته و هر ماه مسیرت رو چک کن تا مطمئن بشی از هدف اصلی منحرف نشدی. فصل اول، بخش اول کتاب Soft Skills
455
5
دوره CS329A Self-Improving AI Agent استنفورد چرا بعضی ایجنت‌ها هر بار خطای قبلی رو تکرار می‌کنن؟ یک نگاهی به این دوره بندازید. https://youtu.be/6YnLB0XbTnI?is=TaLzWqKlKUALmOxP
332
6
و Anthropic با Claude Duet وارد رقابت AI Agent ها شد! شرکت سازنده Claude از ایجنت جدیدی به نام Claude Duet رونمایی کرده که قراره فراتر از یک چت‌بات معمولی عمل کنه. کارها رو در بکگراند انجام بده و حتی قبل از اینکه درخواست کنی، پیشنهادهایی برای بهتر انجام‌دادن کارهات ارائه بده! قابلیت‌ها؟ 🔹 ساخت داشبورد و گزارش‌های روزانه 🔹 اجرای وظایف در بکگراند، بدون نیاز به نظارت مداوم 🔹 اتصال به بیش از ۶۰۰۰ ابزار و افزونه 🔹 انجام خرید اینترنتی با تأیید کاربر برای پرداخت‌های حساس 💡 چرا مهمه؟ رقابت هوش مصنوعی دیگه فقط بر سر این نیست که کدوم مدل بهتر جواب میده؛ شرکت‌ها دارن ایجنت‌هایی می‌سازن که بتونن ابزارهای مختلف رو به هم وصل کنن، وظایف پیچیده رو انجام بدن و نتیجهٔ نهایی رو تحویل بدن. برای برنامه‌نویس‌ها، این یعنی فرصت‌های بیشتر برای ساخت سیستم‌های هوشمند و اتومات کردن کارهای تکراری! #claude #هوش_مصنوعی #AIAgents @GrowVixo🔥 @GrowVixo_Ask منبع: https://techcrunch.com/2026/10/22/claude-duet-app-is-anthropics-bet-on-agents/
180
7
ترجمه فارسی کتاب Apprenticeship Patterns کتاب Apprenticeship Patterns یکی از بهترین منابع برای یادگیری الگوهای رشد شغلی، تقویت ذهنیت مهندسی و تبدیل شدن به یک برنامه‌نویس حرفه‌ای است. ترجمه فارسی این کتاب رو روی گیت‌هاب گذاشتم: https://github.com/hheydarian/apprenticeship-patterns-persian
377
8
کتاب Soft Skills: The Software Developer's Life Manual این کتاب برخلاف منابع معمول برنامه‌نویسی، روی کد زدن تمرکز نداره؛ بلکه راهنمای مهارت‌های فردی و شغلی برای توسعه‌دهنده‌هاست. توی پست‌های بعدی خلاصه مهم‌ترین بخش‌های این کتاب (مدیریت مسیر شغلی، برندسازی شخصی، یادگیری سریع تکنولوژی‌ها و افزایش بهره‌وری) رو مرور می‌کنیم. @lastcoderworld
288
9
Matn yo'q...
283
10
ترجمه فارسی کتاب # Clean Code in C کتاب # Clean Code in C یکی از بهترین منابع برای یادگیری اصول کدنویسی تمیز، ریفکتورینگ و نوشتن کدهای قابل نگهداری در دات‌نت است. ترجمه فارسی این کتاب رو روی گیت‌هاب گذاشتم: https://github.com/hheydarian/clean-code-in-csharp-persian
286
11
دوستان راهکارها و مطالب مفید برای زمانی قطعی اینترنت رو سعی میکنم تو چندتا پارت آماده کنم و هر قسمت معرفی کنم. آپلودرهای رایگان بدون نیاز به ثبت‌نام: https://up.20script.ir/ https://uplod.ir/ https://toolschi.com/tools/upload-center #پارت_اول @shayangeedook
151
12
کتاب Prompt Engineering for LLMs کتاب Prompt Engineering for LLMs نوشته جان بریمن و آلبرت زیگلر از معماران اصلی گیت‌هاب کوپای
کتاب Prompt Engineering for LLMs کتاب Prompt Engineering for LLMs نوشته جان بریمن و آلبرت زیگلر از معماران اصلی گیت‌هاب کوپایلوت، یکی از کاربردی‌ترین منابع برای ساخت اپلیکیشن‌های واقعی با مدل‌های زبانی است. این کتاب به‌جای ترفندهای سطحی، سراغ معماری مهندسی، مدیریت کانتکست، مهار توهم مدل و طراحی ایجنت‌ها در محیط عملیاتی می‌رود. خلاصه تمام ۱۱ فصل این کتاب: - فصل ۱ بخش اول | بخش دوم | بخش سوم | بخش چهارم - فصل ۲ بخش اول | بخش دوم | بخش سوم | بخش چهارم | بخش پنجم - فصل ۳ بخش اول | بخش دوم | بخش سوم | بخش چهارم - فصل ۴ بخش اول | بخش دوم | بخش سوم | بخش چهارم - فصل ۵ بخش اول | بخش دوم | بخش سوم | بخش چهارم - فصل ۶ بخش اول | بخش دوم | بخش سوم | بخش چهارم - فصل ۷ بخش اول | بخش دوم | بخش سوم | بخش چهارم - فصل ۸ بخش اول | بخش دوم | بخش سوم | بخش چهارم - فصل ۹ بخش اول | بخش دوم | بخش سوم | بخش چهارم - فصل ۱۰ بخش اول | بخش دوم | بخش سوم | بخش چهارم - فصل ۱۱ بخش اول | بخش دوم جمع‌بندی  @lastcoderworld
1 036
13
عصاره کل کتاب در ۲ قانون بنیادین و ۵ فرمان عملیاتی جان بریمن و آلبرت زیگلر، معماران گیت‌هاب کوپایلوت، در صفحات پایانی کتاب می‌گویند اگر قرار باشد از تمام این ۱۱ فصل فقط دو حقیقت را به خاطر بسپارید، آن دو مورد این‌ها هستند: قانون اول: همه چیز در نهایت تکمیل سند یا Document Completion است چه از APIهای چت استفاده کنید، چه Tool Calling و چه Artifacts، در نهایت مدل زبانی یک ماشین پیش‌بینی توکن است که سعی می‌کند متنی بنویسد که شبیه داده‌های آموزشی‌اش باشد. - نتیجه عملی (اصل شنل‌قرمزی): هیچ ساختار من‌درآوردی اختراع نکنید! پرامپت‌ها و داده‌های خود را دقیقاً با فرمت‌هایی مثل Markdown و ساختارهایی بنویسید که میلیون‌ها بار در اینترنت تکرار شده‌اند تا مدل در مسیر طبیعی خودش حرکت کند. قانون دوم: با مدل همدلی کنید مدل را مثل یک دوست قدرتمند اما ساده‌لوح ببینید! مدل زبانی مثل دوستی است که کل اینترنت را حفظ است، اما درک مستقیمی از موقعیت شما ندارد. برای اینکه بهترین خروجی را از او بگیرید، این ۵ فرمان عملیاتی را همیشه رعایت کنید: ۱. حواس مدل به شدت پرت می‌شود: پرامپت را با اطلاعاتی که شاید به درد بخورد پر نکنید. هر کلمه اضافه در پرامپت، تمرکز مکانیزم Attention را از روی اصل مطلب کم می‌کند. ۲. اگر انسان پرامپت را نفهمد، مدل هم نمی‌فهمد: قبل از ارسال، خروجی نهایی پرامپت رندر شده را خودتان بخوانید؛ اگر ابهامی برای یک انسان وجود داشته باشد، مدل هم قطعاً گیج خواهد شد. ۳. مدل نیاز به هدایت صریح دارد: انتظار نداشته باشید مدل خودش هدف را حدس بزند؛ دستورالعمل‌ها را شفاف بنویسید و هر جا فرمت خاصی می‌خواهید، حتماً با مثال‌های Few-shot مسیر را نشان دهید. ۴. مدل علم غیب ندارد: هر اطلاعاتی که برای حل مسئله لازم است را یا مستقیم در کانتکست بگذارید، یا ابزار مناسب برای پیدا کردنش را در اختیارش قرار دهید. ۵. مدل دیالوگ درونی ندارد: مدل نمی‌تواند قبل از حرف زدن در ذهنش فکر کند؛ همیشه به او فضای فکر کردن با صدای بلند یا همان زنجیره فکر بدهید تا قبل از اعلام جواب نهایی، استدلال کند. - چشم‌انداز آینده: با ارزان و سریع شدن مدل‌ها، به سمت دنیایی می‌رویم که ساخت نرم‌افزار بسیار سریع‌تر می‌شود و حتی شاهد ظهور اپلیکیشن‌های یک‌بارمصرف و کاملاً شخصی‌سازی‌شده خواهیم بود. در این دنیای جدید که همه چیز با سرعت تغییر می‌کند، برنده کسی است که مدام آزمایش کند، ارزیابی را جدی بگیرد و انعطاف‌پذیر بماند. کتاب Prompt Engineering for LLMs
447
14
چرا بنچمارک‌های هوش مصنوعی از کار افتاده‌اند؟ تکنیک‌های Distillation و Quantization مدل‌ها روزبه‌روز باهوش‌تر، سریع‌تر و ارزان‌تر می‌شوند، اما در پشت پرده توسعه مدل‌های جدید سه اتفاق فنی مهم در حال رخ دادن است که هر مهندس هوش مصنوعی باید بداند: ۱. بحران اشباع بنچمارک‌ها و تقلب ناخواسته مدل‌ها بنچمارک‌های معروفی که برای سنجش هوش مدل‌ها استفاده می‌شدند، یکی پس از دیگری به سقف ۱۰۰ درصد می‌رسند و کارایی خود را از دست می‌دهند. این اتفاق دو دلیل دارد: مدل‌ها واقعاً قوی‌تر شده‌اند. - آلودگی داده‌ها یا تقلب ناخواسته: وقتی یک بنچمارک یکی دو سال در اینترنت باشد، سوالات و جواب‌هایش در مقالات، فروم‌ها و ریپازیتوری‌های گیت‌هاب کپی می‌شود. در نتیجه، مدل‌های جدید هنگام بلعیدن اینترنت، سوالات کنکور را از قبل در داده‌های آموزشی خود دیده‌اند و حفظ کرده‌اند! - راه‌حل جدید ARC-AGI: جامعه هوش مصنوعی به سمت بنچمارک‌های غیرقابل‌حفظ کردن مثل ARC-AGI رفته است؛ تست‌های هوش تصویری و الگومحور که به صورت الگوریتمی و در لحظه تولید می‌شوند و مدل چاره‌ای جز استدلال واقعی برای حل آن‌ها ندارد. ۲. تکنیک Knowledge Distillation: انتقال مغز مدل غول‌پیکر به مدل کوچک مدل‌های بسیار بزرگ از تمام ظرفیت شبکه خود استفاده نمی‌کنند. در تکنیک تقطیر دانش یا Knowledge Distillation، یک مدل بزرگ و گران‌قیمت نقش معلم را برای یک مدل کوچک و سبک بازی می‌کند. - مکانیزم فنی: در آموزش عادی، به مدل کوچک فقط یاد می‌دهند که کلمه بعدی چیست. اما در Distillation، مدل کوچک آموزش می‌بیند که توزیع کامل احتمالات (Logprobs) مدلِ معلم را برای توکن بعدی تقلید کند! این کار باعث می‌شود ظرافت‌های ذهنی مدل بزرگ با افت دقت بسیار ناچیزی وارد مدل کوچک شود، در حالی که سرعت اجرای مدل جدید چندین برابر بیشتر و هزینه‌اش بسیار کمتر است. ۳. تکنیک Quantization: کوچک‌سازی در سطح بیت‌ها وزن‌های شبکه عصبی به صورت پیش‌فرض با اعداد اعشاری ۳۲ بیتی ذخیره می‌شوند. با تکنیک کوانتیزاسیون، این اعداد به مقادیر ۸ بیتی تقریب زده می‌شوند. این کار حجم مدل و مصرف رم گرافیک را به شدت پایین می‌آورد و سرعت تولید توکن را بدون افت محسوس هوش مدل، به شکل چشمگیری افزایش می‌دهد. فصل یازدهم، بخش دوم کتاب Prompt Engineering for LLMs
329
15
کالبدشکافی مدل‌های Multimodal و انقلاب Artifacts در طراحی رابط کاربری در فصل پایانی کتاب، نویسندگان دو تغییر بزرگ در ورودی و خروجی مدل‌های زبانی را بررسی می‌کنند که نحوه ساخت اپلیکیشن‌های هوش مصنوعی را عوض خواهد کرد: ۱. مدل‌های چندوجهی یا Multimodal چطور عکس و ویدیو را می‌فهمند؟ شاید سوال باشد که یک مدل متنی چطور تصویر را پردازش می‌کند؟ در پشت صحنه، یک شبکه عصبی کانولوشنی ویژگی‌های تصویر را استخراج کرده و آن‌ها را به بردارهای عددی یا Embeddings تبدیل می‌کند که دقیقاً هم‌اندازه بردارهای توکن‌های متنی هستند. سپس اطلاعات مکانی به آن‌ها اضافه می‌شود تا ارتباط اجزای تصویر حفظ گردد و در نهایت، این بردارهای تصویری کنار بردارهای متنی چیده شده و یک‌جا وارد معماری ترنسفورمر می‌شوند. برای ویدیو هم کافی است فریم‌های تصویر نمونه برداری شده و به همین روش تزریق شوند. چرا این موضوع حیاتی است؟ متن‌های کل اینترنت عمومی در حال تمام شدن است و آموزش بیش از حد روی متن‌های تکراری باعث Overfitting و حفظ کردن طوطی‌وار مطالب می‌شود. ورود عکس و ویدیو، درک مدل را از فیزیک دنیای واقعی، روابط فضایی و نشانه‌های اجتماعی به شدت ارتقا می‌دهد. نکته مهندسی پرامپت برای تصاویر: دقیقاً مثل متن، از گذاشتن تصاویر اضافی که تمرکز مدل را به هم می‌زند خودداری کنید. همیشه با توضیحات متنی نقش هر تصویر را در پرامپت مشخص کنید و برای ارسال نمودارها، از فرمت‌های رایج اینترنتی استفاده کنید، نه دیاگرام‌های من‌درآوردی که مدل در داده‌های آموزشی ندیده است. ۲. عبور از چت‌های سنتی با پارادایم Artifacts در چت‌بات‌های معمولی مثل ChatGPT اولیه، اگر از مدل بخواهید یک تابع کد بنویسد و در پیام بعدی بگویید یک خط آن را عوض کند، مدل کل تابع را از اول تا آخر دوباره در چت تایپ می‌کند! یعنی به جای اینکه یک شیء واحد وجود داشته باشد که وضعیت آن آپدیت شود، ۱۰ نسخه مختلف در تاریخچه چت تولید می‌شود که ارجاع دادن به آن‌ها بسیار سخت است. آنتروپیک با معرفی Artifacts در مدل Claude اولین قدم را برای حل این مشکل برداشت: مکالمه در سمت چپ صفحه پیش می‌رود، اما خروجی کار مثل کد، دیاگرام یا فایل HTML به عنوان یک موجودیت دارای وضعیت یا Stateful Object در پنل سمت راست ثابت می‌ماند و درجا آپدیت می‌شود. ۳. کمبودهای فعلی Artifacts که شما باید در برنامه‌هایتان حل کنید نویسندگان کتاب اشاره می‌کنند که پیاده‌سازی فعلی Artifacts هنوز بیشتر یک ترفند ظاهری در UI است تا مهندسی پرامپت، و سه ضعف بزرگ دارد که فرصت خوبی برای توسعه‌دهندگان است: بازنویسی کامل از صفر: وقتی تغییر کوچکی می‌خواهید، مدل در پشت صحنه همچنان کل فایل را از اول تولید می‌کند که برای فایل‌های طولانی کند و پرهزینه است. مدیریت هم‌زمان چند فایل: ارجاع دادن هم‌زمان به چند Artifact مختلف در پرامپت و UI هنوز دشوار است و نیاز به سیستم نام‌گذاری کوتاه دارد. نبود قابلیت ویرایش دوطرفه: اگر کاربر خودش دستی یک خط از کد داخل Artifact را ویرایش کند، این تغییر باید در پرامپت بعدی به مدل اطلاع داده شود تا مدل از آخرین وضعیت فایل باخبر بماند.  فصل یازدهم، بخش اول کتاب Prompt Engineering for LLMs
322
16
ترجمه فارسی کتاب The Pragmatic Programmer کتاب The Pragmatic Programmer یکی از بهترین منابع برای درک اصول مهندسی نرم‌افزار و کار تیمی است. ترجمه فارسی این کتاب رو روی گیت‌هاب گذاشتم: https://github.com/hheydarian/the-pragmatic-programmer-persion
752
17
ارزیابی آنلاین در دنیای واقعی؛ تست A/B و ۵ متریک طلایی تست‌های آزمایشگاهی عالی هستند چون رایگان و امن‌اند، اما عیار واقعی محصول زمانی مشخص می‌شود که کاربران واقعی با آن کار کنند. استانداردترین روش در این مرحله تست A/B است: کاربران را به دو گروه تصادفی تقسیم می‌کنید، به گروه اول پرامپت قبلی و به گروه دوم پرامپت جدید را می‌دهید تا ببینید کدام بهتر عمل می‌کند. یک تله آماری مهم در آپدیت برنامه‌ها: اگر برنامه‌تان سمت کلاینت اجرا می‌شود، هرگز کاربرانی که سریع آپدیت کرده‌اند را گروه B و کسانی که هنوز آپدیت نکرده‌اند را گروه A نگذارید! کاربرانی که سریع آپدیت می‌کنند رفتار کاملاً متفاوتی دارند. تست A/B را فقط بین کسانی اجرا کنید که نسخه جدید را نصب کرده‌اند. ۵ متریک کلیدی برای اینکه بفهمیم کدام نسخه برنده شده است: ۱. بازخورد مستقیم کاربر: گذاشتن دکمه لایک و دیس‌لایک کنار پیام‌ها. تجربه نشان داده کاربران به ندرت برای یک جواب خوب لایک می‌زنند، اما وقتی جواب خراب باشد فوراً دیس‌لایک می‌زنند؛ بنابراین دیس‌لایک سیگنال بسیار دقیق‌تری برای کشف مشکلات است. ۲. درستی عملکردی در عمل: آیا خروجی مدل در سیستم کاربر کار کرد؟ مثلاً اگر کد تولید کرد، آیا در ادیتور کاربر بدون خطا کامپایل شد؟ ۳. نرخ پذیرش یا Acceptance Rate مهم‌ترین متریک کوپایلوت: آیا کاربر پیشنهاد هوش مصنوعی را قبول کرد؟ مثلاً روی لینک پیشنهادی کلیک کرد یا کلید Tab را زد تا کد وارد پروژه‌اش شود؟ تیم کوپایلوت کشف کرد که همین نرخ پذیرش اولیه بالاترین همبستگی را با رضایت و بهره‌وری واقعی برنامه‌نویسان دارد. ۴. تاثیر نهایی یا Achieved Impact: چقدر از کار نهایی باقی ماند؟ مثلاً کاربر پیشنهاد کد را قبول کرد، اما ده دقیقه بعد هنگام ذخیره فایل، چند درصد از کد هوش مصنوعی را پاک نکرد و دست‌نخورده نگه داشت؟ یا در سیستم پیشنهاد سفر، آیا در نهایت بلیت آن شهر را خرید؟ ۵. متریک‌های جانبی و گاردریل‌ها: معیارهایی مثل زمان پاسخ‌دهی، نرخ خطا و طول مکالمه. طول مکالمه به تنهایی خوب یا بد نیست؛ مکالمه کوتاه می‌تواند نشانه حل سریع مشکل باشد یا نشانه کلافه شدن و خروج کاربر! این اعداد را باید به عنوان گاردریل زیر نظر بگیرید تا مطمئن شوید پرامپت جدید، سرعت یا پایداری سیستم را خراب نکرده است. فصل دهم، بخش چهارم کتاب Prompt Engineering for LLMs
333
18
تکنیک LLM-as-a-Judge؛ چطور از خود مدل برای نمره‌دهی بی‌طرفانه استفاده کنیم؟ وقتی خروجی برنامه شما یک متن باز مثل خلاصه مقاله یا ایمیل است، نه می‌شود با کدهای معمولی آن را تست کرد و نه تطابق کلمه به کلمه جواب می‌دهد. اینجا باید از یک مدل زبانی دیگر به عنوان داور استفاده کنید تا به خروجی برنامه شما نمره بدهد. اما اگر فقط از مدل بپرسید: آیا این جواب خوب است؟، نتیجه‌ای به شدت پرنوسان و بی‌ارزش می‌گیرید. برای ساخت یک داور دقیق، باید ۴ قانون به نام چارچوب SOMA را رعایت کنید: ۱. ترفند روانشناختی: سوم‌شخص کردن ارزیابی هرگز نگذارید مدل بفهمد دارد به خروجیِ خودش نمره می‌دهد! مدل‌ها به خاطر داده‌های فروم‌های اینترنتی و آموزش‌های RLHF، وقتی بفهمند خروجی مال خودشان است دچار تعصب یا تواضع کاذب می‌شوند. همیشه در پرامپت داور بنویسید: من خروجی یک دستیار دیگر را به تو می‌دهم تا به عنوان ناظر بیرونی ارزیابی کنی. ۲. پرسیدن سوالات کاملاً مشخص Specific به جای سوال کلی آیا این پاسخ درست است؟، دقیقاً مشخص کنید چه چیزی باید سنجیده شود. مثلاً بپرسید: آیا اقدام دستیار، مشکل سرد بودن اتاق کاربر را حل می‌کند؟ ۳. امتیازدهی درجه‌بندی‌شده به جای بله و خیر (Ordinal Scale) مدل‌ها در جواب‌های صفر و یکی معیار ثابتی ندارند. از مقیاس ۱ تا ۵ استفاده کنید و در پرامپت، معنی دقیق هر عدد را توضیح دهید؛ مثلاً بنویسید: امتیاز ۱ یعنی مشکل را اصلاً حل نمی‌کند یا بدتر می‌کند، امتیاز ۳ یعنی بخش اصلی مشکل را حل می‌کند، و امتیاز ۵ یعنی مشکل را به طور کامل و بی‌نقص برطرف می‌سازد. ۴. تفکیک معیارها به چند بُعد مستقل (Multi-Aspect) یک پاسخ خوب ابعاد مختلفی دارد. همه را در یک سوال مخلوط نکنید؛ برای هر کدام نمره جدا بخواهید: قصد و نیت: آیا مدل درست فهمیده کاربر چه می‌خواهد؟ اجرا: آیا ابزار درست را با سینتکس درست صدا زده است؟ معیار طلایی RTC: در چت‌بات‌ها سه چیز را جداگانه نمره دهید: مرتبط بودن، صحیح بودن علمی، و کامل بودن پاسخ. دو نکته طلایی در نوشتن پرامپتِ داور: معیارهای امتیازدهی را قبل از نشان دادن متنِ نمونه در پرامپت بنویسید؛ چون مدل متن را از بالا به پایین می‌خواند و باید قبل از دیدن جواب، بداند دنبال چه ایرادهایی بگردد. ازModel بخواهید اول تحلیلش را بنویسد و در آخرین خط نمره را بدهد تا از مزایای زنجیره فکر بهره ببرید. فصل دهم، بخش دوم کتاب Prompt Engineering for LLMs
371
19
http://autoclaw.z.ai
http://autoclaw.z.ai
545
20
چطور هزاران نمونه برای تست خودکار هوش مصنوعی بسازیم؟ بررسی چشمی با Git Diff برای ۲۰ نمونه عالی است، اما برای اینکه مطمئن شوید محصولتان واقعاً کار می‌کند، به صدها یا هزاران نمونه نیاز دارید. سوال بزرگ اینجاست: وقتی هنوز محصول را نساخته‌ایم، این همه نمونه ورودی و خروجی استاندارد را از کجا بیاوریم؟ روش اول: مهندسی معکوس داده‌های موجود (تکنیک کوپایلوت) هدف کوپایلوت این بود که حدس بزند برنامه‌نویس در لحظه بعد چه کدی می‌خواهد تایپ کند. هیچ دیتاستی در دنیا برای کدهای نیمه‌کاره برنامه‌نویسان وجود نداشت! اما گیت‌هاب پر از کدهای کامل بود. تیم کوپایلوت این ترفند را زد: ۱. یک فایل کد سالم از یک پروژه متن‌باز برداشتند. ۲. بدنه یکی از توابع داخل فایل را پاک کردند و فرض کردند نشانگر موس برنامه‌نویس دقیقاً اول آن تابع است. ۳. از کوپایلوت خواستند ادامه کد را بنویسد و سپس کد تولیدشده را با کد اصلی مقایسه کردند! شما هم در پروژه خودتان بگردید ببینید کجا کارهای کامل‌شده وجود دارد؛ بخشی از آن را حذف کنید تا تبدیل به یک مسئله تست شود. روش دوم: تولید داده‌های مصنوعی با انفجار ترکیبی اگر هیچ داده آماده‌ای ندارید، از خود LLM بخواهید برایتان نمونه بسازد. اما اگر به مدل بگویید: ۱۰ نمونه سوال مشتری بده، نمونه‌هایی بسیار کلیشه‌ای و تکراری تولید می‌کند. راه‌حل مهندسی: متغیرهای مسئله را به چند بُعد تقسیم کنید. مثلاً اگر سیستم پشتیبانی می‌سازید: ۵ نوع لحن کاربر (عصبانی، عجول، مودب و غیره) ضربدر ۱۰ نوع مشکل فنی ضربدر ۴ نوع محصول؛ شما فوراً ۲۰۰ سناریوی کاملاً متفاوت دارید که می‌توانید به مدل بدهید تا بر اساس هر ترکیب، یک پیام نمونه بسازد. تله خطرناک در تولید تست با هوش مصنوعی هرگز با مدلی که نمونه تست‌ها را ساخته، مدل دیگری را مقایسه نکنید! اگر تست‌ها را با GPT-4 بسازید و بخواهید بین GPT-4 و Claude یکی را انتخاب کنید، مدل اول همیشه برنده می‌شود؛ چون ساختار ذهنی خودش را در طراحی سوالات لحاظ کرده است. چطور درستی جواب‌ها را در مقیاس بالا چک کنیم؟ تطابق جزئی به جای تطابق کامل: در متن‌های طولانی، انتظار نداشته باشید خروجی مدل کلمه به کلمه شبیه جواب استاندارد شما باشد. فقط بخش حیاتی را چک کنید؛ مثلاً اگر ایجنت خانه هوشمند دارید و کاربر می‌گوید: سردم است، چک نکنید که دما حتماً روی ۲۵ درجه تنظیم شود؛ فقط چک کنید که مدل تابعِ set_room_temp را با یک عدد منطقی صدا زده باشد. تست عملکردی: به جای مقایسه متن کد، کد تولیدشده توسط مدل را واقعاً کامپایل کنید و Unit Testهای پروژه را روی آن اجرا کنید؛ اگر تست‌ها پاس شدند یعنی خروجی درست است. فصل دهم، بخش دوم کتاب Prompt Engineering for LLMs
563