کتاب Building LLM Applications with Dspy

کتاب Building LLM Applications with Dspy

اثر Serj Smorodinsky

شناسنامه کتاب

مشخصات تکمیلی ثبت‌شده برای این عنوان

نویسنده

Serj Smorodinsky، Brett Kennedy

انتشارات

Manning Publications

سال انتشار

2026

فرمت کتاب

EPUB، mobi

تعداد صفحات

296

حجم فایل / وزن

2.43 مگابایت، 4.23 مگابایت، 346.11 کیلوبایت

شابک (ISBN)

9781633435018

ویرایش / نوبت چاپ

First

۱۴۰,۰۰۰ تومان

نظرات کاربران

تجربیات خود را از خواندن این کتاب با دیگران به اشتراک بگذارید.

امتیاز کل
star star star star star
از 0 نظر

ثبت نظر جدید

دیدگاهتان را بنویسید

هنوز دیدگاهی ثبت نشده است.

کتاب Building LLM Applications with Dspy: Replacing Manual Prompts with Systematic Optimization (ساختن برنامه‌های کاربردی مدل زبانی بزرگ با Dspy: جایگزینی پرامپت‌های دستی با بهینه‌سازی نظام‌مند) نوشته سرج اسمورودینسکی و برت کندی، یک راهنمای عملی است که چارچوب DSPy را معرفی می‌کند؛ چارچوبی که پرامپت‌های متنی شکننده و دستی را با کد پایتون پویا و مبتنی بر قرارداد جایگزین می‌کند تا پرامپت‌ها بتوانند آزادانه با تغییر مدل‌ها و داده‌ها سازگار شوند و مقیاس‌پذیر باشند.

در ادامه مقدمه‌ای از کتاب Building LLM Applications with Dspy را از زبان نویسنده شرح خواهیم داد.

مقدمه‌ای بر کتاب Building LLM Applications with Dspy:

مسیر هر کس به سمت علم داده و هوش مصنوعی متفاوت است. مسیر من همیشه از مهندسی نرم‌افزار گذشته است.
بیش از یک دهه پیش، در دوران تحصیل در مقاطع کارشناسی و کارشناسی ارشد، بیوانفورماتیک (تقاطع علوم کامپیوتر و زیست‌شناسی) را مطالعه کردم. ما از نرم‌افزار برای حل مشکلات مرتبط با موجودات زنده استفاده می‌کردیم و با الگوریتم‌هایی برای مقایسه توالی‌ها، خوشه‌بندی، ماشین‌های بردار پشتیبان، درخت‌های تصمیم و سایر روش‌هایی کار می‌کردیم که به آنچه امروزه علم داده می‌نامیم، نزدیک بودند. در آن زمان، نکته مهمی را هم متوجه شدم: من عاشق برنامه‌نویسی بودم. نرم‌افزار قرار بود هنر و پیشه من باشد.
چند سال بعد، در زمان کار در شرکت SafeDK (که بعدها توسط AppLovin خریداری شد)، دوباره به آن ریشه‌ها بازگشتم. ما باید یک طبقه‌بندی‌کننده تصویر می‌ساختیم و من مشتاق بودم این کار را بر عهده بگیرم. مدیرعامل ما تصمیم گرفت یک مشاور باتجربه بیاورد که احتمالاً تصمیم درست هم همین بود. من مشاور را از نزدیک دنبال کردم، در جلسات شرکت نمودم و یادداشت برداشتم.
یک چیز در ذهن من ماند: هر زمان که او از دقت (precision) و بازخوانی (recall) صحبت می‌کرد، همه افراد حاضر در اتاق در سکوت سر تکان می‌دادند. این مفاهیم قطعی بودند اما در عین حال مرموز به نظر می‌رسد. آن لحظه انگیزه‌ای در من ایجاد کرد تا یادگیری ماشین را عمیق‌تر درک کنم و این ایده‌ها را برای دیگران روشن‌تر سازم.
از آن زمان به بعد، روی مسائل طبقه‌بندی شامل داده‌های جدول‌بندی شده، تصاویر، سیگنال‌های صوتی و پردازش زبان طبیعی در هوش مصنوعی مکالمه‌ای کار کرده‌ام. پیشینه مهندسی نرم‌افزار من همیشه شکل‌دهنده رویکرد من به این مسائل بوده است. من به واسطه‌های (interfaces) واضح، سیستم‌های قابل اعتماد و کدی اهمیت می‌دهم که دیگران بتوانند آن را درک کنند و توسعه دهند. همچنین برایم مهم است که با مدیران محصول همکاری نزدیکی داشته باشم، زیرا سیستم‌های هوش مصنوعی به‌درستی فقط آثار فنی نیستند؛ آن‌ها برای خدمت به اهداف واقعی محصول ساخته می‌شوند.
وقتی ChatGPT و API شرکت OpenAI از راه رسیدند، هم مجذوب شده بودم و هم مشکوک. ناگهان بسیاری از وظایفی که زمانی نیازمند آموزش مدل‌ها بودند، با یک فراخوانی ساده API قابل حل شدند. مهندسی پرامپت به یک هنجار تبدیل شد، اما برای من اغلب شبیه به مهندسی ویژگی (feature engineering) در لباسی جدید بود: قدرتمند و مفید، اما در عین حال شکننده و غیرقابل اعتماد.
سپس DSPy را پیدا کردم و بار دیگر احساس کردم که در خانه خودم هستم.
DSPy ایده‌های قابل اعتمادی را که از مهندسی نرم‌افزار و یادگیری ماشین سراغ داشتم، بازگرداند: ورودی‌ها و خروجی‌های واضح، واسط‌های صریح، رفتار قابل سنجش، و بهینه‌سازی بر اساس یک معیار (metric). DSPy به‌جای برخورد با پرامپت‌ها به عنوان رشته‌های متنی شکننده، به ما اجازه می‌دهد رفتار مدل زبانی را به شکل برنامه‌ای تعریف کنیم که قابل ارزیابی و بهبود است.
امیدواریم این کتاب به درک شما از نحوه ساخت برنامه‌های قابل اعتماد مبتنی بر مدل‌های زبان بزرگ (LLM) کمک کند. چه در حال نوشتن کدهای خود باشید و چه از ایجنت‌های برنامه‌نویسی استفاده کنید، DSPy به شما کمک می‌کند تا درباره خطوط مبنا (baselines)، ارزیابی و بهینه‌سازی برای وظایف مبتنی بر پرامپت فکر کنید.
— سِرج اسمورودینسکی (Serj Smorodinsky)
درباره کتاب Building LLM Applications with Dspy
کتاب «ساخت برنامه‌های مدل‌های زبان بزرگ با DSPy» (Building LLM Applications with DSPy) نوشته شده است تا به شما کمک کند وظایف مبتنی بر پرامپت را به روشی کارآمد و با استفاده از فریمورک DSPy توسعه دهید. ما با توضیح مکانیسم‌های پایه DSPy، مانند امضاها (signatures) با استفاده از مثال‌های ساده پرامپت شروع می‌کنیم. سپس روش‌شناسی توسعه سه مرحله‌ای را به نمایش می‌گذاریم: ساخت یک طبقه‌بندی‌کننده مبنا (baseline)، و ارزیابی و بهینه‌سازی روی چهار پروژه مختلف که اولین آن‌ها دسته‌بندی قصد و نیت (intent classification) در خدمات مشتریان خطوط هوایی است.
کتاب Building LLM Applications with Dspy برای چه کسانی نوشته شده است؟
کتاب «ساخت برنامه‌های مدل‌های زبان بزرگ با DSPy» برای مهندسین هوش مصنوعی و دانشمندان داده‌ای است که می‌خواهند قابلیت‌های مبتنی بر مدل‌های زبان بزرگ (LLM) را سریع‌تر و با روشی قابل‌اعتمادتر عرضه کنند. حتی اگر یک ایجنت برنامه‌نویسی در حال تولید کد باشد، کار کردن به روشی ساختاریافته بسیار حیاتی است؛ در غیر این صورت، به‌راحتی ممکن است به‌جای تولید چیزی باارزش، صرفاً محتوای بی‌کیفیت و خودکار (slop) تولید کنیم. DSPy با اجازه دادن به شما برای ارزیابی قابلیت‌هایتان، به شما کمک می‌کند تا فراتر از حد انتظار پیش بروید.
ساختار کتاب Building LLM Applications with Dspy: نقشه راه
این کتاب به ۹ فصل تقسیم شده است:
  • فصل ۱ برنامه‌نویسی پرامپت و DSPy را معرفی می‌کند و پیش از بحث درباره مزایای DSPy نسبت به مهندسی پرامپت سنتی، اشاره‌ای به مفهوم «درس تلخ» (the bitter lesson) دارد.
  • فصل ۲ مفاهیم پایه‌ای DSPy مانند امضاها و مدل‌های زبان بزرگ را با استفاده از مثال‌های ساده پرامپت نظیر دسته‌بندی، پاسخ به سوال، انتقال سبک (style transfer) و خلاصه‌سازی پوشش می‌دهد.
  • فصل ۳ سه مرحله اصلی توسعه برنامه‌نویسی پرامپت را معرفی می‌کند. ما از طریق تحلیل اکتشافی داده‌ها (EDA) با مجموعه داده ATIS آشنا می‌شویم و طبقه‌بندی‌کننده مبنای خود را از طریق یک امضای DSPy می‌سازیم.
  • فصل ۴ با ارزیابی طبقه‌بندی‌کننده مبنای ATIS از فصل قبل، نگاهی عمیق به مق مقوله ارزیابی دارد. ما با مفاهیم اضافی DSPy مانند نمونه‌هایی که سطرهای مجموعه داده را نشان می‌دهند و توابع معیار (metric functions) آشنا می‌شویم. ما اشیایی را که از آن‌ها برای محاسبه امتیاز معیار استفاده می‌کنند، ارزیابی می‌کنیم. فصل با یک جدول خلاصه از امتیازهای مدل‌های مختلف زبانی به پایان می‌رسد.
  • فصل ۵ با استفاده از نمونه‌های پرامپت روی مجموعه داده ATIS، بر بهینه‌سازی پرامپت تمرکز دارد. ما بهینه‌سازهای مختلف را معرفی می‌کنیم و نحوه عملکرد آن‌ها در پشت صحنه را توضیح می‌دهیم. فصل با دو جدول خلاصه شامل تمام امتیازهای بهینه‌ساز در وظیفه ATIS به پایان می‌رسد.
  • فصل ۶ روی بهینه‌سازی دستورالعمل‌های پرامپت تمرکز دارد. این بهینه‌سازها می‌توانند وظایف پیچیده‌تر را مدیریت کنند و از پیچیدگی درونی بالاتری نیز برخوردارند. این فصل با دو جدول خلاصه از نتایج معیارهای بهینه‌سازهای دستورالعمل روی مجموعه داده ATIS به پایان می‌رسد.
  • فصل ۷ بهینه‌سازهای اضافی DSPy مانند Refine و ماژول‌های سفارشی را به نمایش می‌گذارد که جریان‌های پرامپت ترکیبی و پیچیده را امکان‌پذیر می‌کنند.
  • فصل ۸ مفهوم «مدل زبانی به عنوان داور» (LLM-as-a-judge) و معیارهای اضافی را از طریق مجموعه داده DialogSum معرفی می‌کند. ما مراحل مختلف کالیبراسیون مدل زبانی به عنوان داور و استفاده از ماژول‌های سفارشی را نشان می‌دهیم.
  • فصل ۹ با توضیح تولید افزوده با بازیابی (RAG)، RAG مبتنی بر ایجنت (agentic RAG) و روش HyDE آغاز می‌شود و با یک مثال کامل از یک چت‌بات دارای حافظه پایدار به پایان می‌رسد. این فصل برای تمام مثال‌ها از مجموعه داده WixQA استفاده می‌کند.

سرفصل‌های کتاب Building LLM Applications with Dspy:

  • Building LLM Applications with DSPy
  • copyright
  • contents
  • dedication
  • preface
  • acknowledgments
  • about this book
  • about the authors
  • about the cover illustration
  • 1 Introduction to prompt programming and DSPy
  • 2 Basic prompting and DSPy
  • 3 Classifying user intent
  • 4 Evaluating DSPy programs
  • 5 Optimizing prompt examples
  • 6 Optimizing prompt instructions
  • 7 Custom modules
  • 8 Summarization and more effective metric functions
  • 9 Creating an agentic RAG-based chatbot

جهت دانلود کتاب Building LLM Applications with Dspy می‌توانید پس از پرداخت، دریافت کنید.