اگر برنامه نویس هستی و می خواهی وارد توسعه محصولات هوش مصنوعی شوی، لازم نیست از همان روز اول درباره معماری داخلی مدل های بزرگ یا ریاضیات پیچیده یادگیری ماشین تخصص داشته باشی. شناخت مجموعه ای از مفاهیم پایه به تو کمک می کند معماری پروژه را بهتر طراحی کنی، ابزار مناسب را انتخاب کنی و محدودیت مدل ها را بشناسی. AI Concepts for Developers دقیقا به همین دانش کاربردی اشاره دارد؛ یعنی مفاهیمی که هنگام ساخت چت بات، سیستم RAG، ایجنت هوش مصنوعی یا قابلیت های مبتنی بر مدل های زبانی بارها با آن ها روبرو می شوی. در ادامه ۱۰ مفهوم مهم را بررسی می کنیم که دانستن آن ها برای توسعه دهندگان امروزی بسیار کاربردی است.

۱. مدل زبانی بزرگ یا LLM چیست؟

LLM مخفف Large Language Model است. این مدل ها با حجم بزرگی از داده های متنی آموزش می بینند و یاد می گیرند بر اساس ورودی کاربر، ادامه مناسب متن را پیش بینی کنند. مدل هایی مثل GPT، Claude، Gemini و Grok در این گروه قرار می گیرند.
اما LLM را نباید مثل یک پایگاه داده تصور کرد. مدل معمولا پاسخ را با جستجوی مستقیم در یک جدول اطلاعات تولید نمی کند. بلکه بر اساس الگوهایی که در زمان آموزش یاد گرفته است، خروجی جدید می سازد.
همین موضوع توضیح می دهد چرا یک مدل می تواند کد بنویسد، متن خلاصه کند یا سوال را پاسخ دهد، اما گاهی اطلاعات نادرست تولید کند. مدل در حال تولید محتمل ترین پاسخ است و تضمینی وجود ندارد که هر جمله آن واقعیت داشته باشد.
برای برنامه نویس، شناخت این رفتار اهمیت زیادی دارد. اگر پروژه به اطلاعات دقیق و به روز نیاز دارد، نباید فقط به دانش داخلی مدل تکیه کرد و باید داده خارجی را هم وارد فرآیند کرد.

۲. Token و Context Window چه هستند؟

مدل های زبانی متن را دقیقا مانند انسان به شکل کلمه کامل نمی بینند. متن ابتدا به واحدهای کوچک تری به نام Token تقسیم می شود. یک کلمه ممکن است یک Token یا چند Token باشد و حتی فاصله ها و علامت ها نیز روی تعداد آن ها اثر می گذارند.
هر مدل محدودیتی برای تعداد Token هایی دارد که می تواند در یک درخواست پردازش کند. این محدودیت Context Window نام دارد.
Context شامل Prompt کاربر، دستورهای سیستم، تاریخچه گفتگو، فایل ها، خروجی ابزارها و اطلاعاتی است که برنامه برای مدل ارسال می کند.
اگر Context بیش از حد بزرگ باشد، هزینه و زمان پردازش افزایش پیدا می کند. همچنین قرار دادن اطلاعات غیر مرتبط در Context می تواند کیفیت پاسخ را پایین بیاورد.
برنامه نویس باید یاد بگیرد به جای ارسال همه اطلاعات موجود، فقط بخش هایی را وارد کند که برای انجام وظیفه واقعا لازم هستند.

۳. Embedding چیست؟

Embedding روشی برای تبدیل متن، تصویر یا داده دیگر به مجموعه ای از اعداد است. این اعداد معنای داده را در یک فضای چند بعدی نمایش می دهند.
فرض کن دو جمله درباره یک موضوع نوشته شده اند، اما کلمات آن ها دقیقا یکسان نیستند. جستجوی معمولی شاید نتواند ارتباط میان آن ها را پیدا کند. اما Embedding می تواند شباهت معنایی آن ها را تشخیص دهد.
برای مثال، عبارت «چطور رمز عبورم را تغییر دهم؟» از نظر معنایی به جمله «روش عوض کردن پسورد حساب» نزدیک است، حتی اگر کلمات مشترک کمی داشته باشند.
Embedding پایه بسیاری از سیستم های جستجوی هوشمند است. در پروژه های هوش مصنوعی از آن برای پیدا کردن اسناد مرتبط، پیشنهاد محتوا، دسته بندی داده و ساخت سیستم RAG استفاده می شود.

۴. Vector Database چیست؟

بعد از تبدیل داده به Embedding باید جایی برای ذخیره و جستجوی این بردارها وجود داشته باشد. Vector Database برای همین کار طراحی شده است.
پایگاه داده برداری اجازه می دهد نزدیک ترین بردارها به یک Query را پیدا کنی. یعنی به جای جستجوی یک عبارت دقیقا مشابه، می توانی محتوایی را پیدا کنی که از نظر معنی به سوال کاربر نزدیک است.
ابزارهایی مثل Pinecone، Weaviate، Milvus و قابلیت pgvector در PostgreSQL برای این هدف استفاده می شوند.
فرض کن شرکت هزاران صفحه مستندات داخلی دارد. ابتدا هر بخش به Embedding تبدیل می شود و داخل Vector Database قرار می گیرد. زمانی که کاربر سوال می پرسد، سوال نیز به بردار تبدیل می شود و نزدیک ترین اسناد پیدا می شوند.
Vector Database خودش مدل هوش مصنوعی نیست. وظیفه آن ذخیره و بازیابی سریع داده بر اساس شباهت معنایی است.

۵. RAG چیست و چرا اهمیت دارد؟

RAG مخفف Retrieval-Augmented Generation است. این معماری یکی از مهم ترین مفاهیم هوش مصنوعی برای برنامه نویسان محسوب می شود، چون اجازه می دهد مدل قبل از پاسخ دادن اطلاعات مرتبط را از یک منبع خارجی پیدا کند.
فرآیند ساده است. کاربر سوال می پرسد، سیستم اطلاعات مرتبط را از دیتابیس یا مجموعه اسناد پیدا می کند، سپس آن اطلاعات همراه سوال برای مدل ارسال می شوند.
مثلا یک شرکت می تواند اسناد محصولات خود را به سیستم متصل کند. وقتی مشتری درباره محصول سوال می کند، مدل ابتدا بخش مرتبط مستندات را دریافت می کند و سپس پاسخ می دهد.
RAG چند مزیت مهم دارد. اطلاعات می توانند بدون آموزش دوباره مدل به روز شوند، پاسخ ها به داده واقعی سازمان نزدیک تر می شوند و احتمال تولید اطلاعات اشتباه کاهش پیدا می کند.
با این حال، اگر مرحله Retrieval سند اشتباه پیدا کند، مدل نیز ممکن است پاسخ نامناسبی بسازد. بنابراین کیفیت جستجو بخش مهمی از معماری RAG است.

۶. Prompt Engineering و Context Engineering چه تفاوتی دارند؟

Prompt Engineering یعنی نوشتن دستور مناسب برای مدل. یک Prompt خوب باید هدف، محدودیت، زمینه و شکل خروجی را روشن کند.
مثلا عبارت «یک گزارش بنویس» بسیار مبهم است. اما اگر نوع مخاطب، موضوع، طول گزارش و ساختار خروجی را مشخص کنی، نتیجه قابل پیش بینی تر می شود.
Context Engineering مفهوم گسترده تری است. در این روش فقط متن Prompt مهم نیست. توسعه دهنده تصمیم می گیرد چه تاریخچه ای، چه سندی، چه ابزارهایی و چه اطلاعاتی در اختیار مدل قرار بگیرند.
در یک برنامه واقعی، کیفیت Context معمولا تاثیر زیادی روی نتیجه دارد. ارسال داده زیاد همیشه بهتر نیست. گاهی حذف اطلاعات اضافی باعث می شود مدل پاسخ دقیق تری تولید کند.
برای همین توسعه دهنده باید یاد بگیرد Context را مانند یک منبع محدود مدیریت کند.

۷. Fine-Tuning چیست؟

Fine-Tuning یعنی یک مدل موجود را با داده های اختصاصی آموزش بیشتری بدهیم تا در یک رفتار یا وظیفه خاص بهتر عمل کند.
برای مثال، ممکن است بخواهی مدل همیشه پاسخ ها را در قالب مشخصی تولید کند یا سبک خاصی از دسته بندی را یاد بگیرد. در چنین شرایطی Fine-Tuning می تواند مناسب باشد.
اما Fine-Tuning راه حل همه مشکلات نیست. اگر هدف اضافه کردن اطلاعات جدید باشد، معمولا RAG انتخاب بهتری است. چون می توان اطلاعات را بدون آموزش دوباره مدل تغییر داد.
Fine-Tuning بیشتر زمانی ارزش دارد که بخواهی رفتار، قالب پاسخ یا الگوی انجام یک وظیفه را تغییر دهی.
یکی از اشتباه های رایج این است که برای هر پروژه به سراغ Fine-Tuning برویم. در بسیاری از موارد یک Prompt مناسب، Context خوب و ابزارهای درست نتیجه کافی ایجاد می کنند.

۸. Function Calling و Tool Use چیست؟

مدل زبانی به تنهایی نمی تواند موجودی حساب را بررسی کند، ایمیل بفرستد یا اطلاعات زنده هوا را دریافت کند. برای انجام این کارها باید به Tool متصل شود.
Function Calling روشی است که مدل از طریق آن مشخص می کند چه تابعی باید اجرا شود و چه ورودی هایی نیاز دارد.
فرض کن کاربر می پرسد «وضعیت سفارش من چیست؟». مدل می تواند تشخیص دهد باید تابع get_order_status اجرا شود. برنامه تابع را اجرا می کند و نتیجه را دوباره به مدل می دهد.
مدل سپس آن داده را به پاسخ قابل فهم تبدیل می کند.
Tool Use پایه بسیاری از برنامه های مدرن هوش مصنوعی است. API، مرورگر، پایگاه داده، ماشین حساب، تقویم و محیط اجرای کد همگی می توانند به عنوان ابزار در اختیار مدل قرار بگیرند.

۹. AI Agent چیست؟

Agent یک مرحله فراتر از Tool Calling است. در Tool Calling معمولا مدل برای انجام یک مرحله از ابزار استفاده می کند. اما Agent می تواند برای رسیدن به یک هدف چند مرحله را برنامه ریزی و اجرا کند.
مثلا به یک Agent می گویی درباره پنج رقیب تحقیق کند و گزارش بسازد. سیستم ممکن است ابتدا رقبا را شناسایی کند، سایت هر کدام را بررسی کند، اطلاعات را جمع کند، مقایسه انجام دهد و سپس گزارش نهایی تولید کند.
Agent معمولا از مدل زبانی، ابزارها، حافظه و یک Loop اجرایی تشکیل می شود. بعد از هر مرحله، نتیجه بررسی می شود و سیستم تصمیم می گیرد قدم بعدی چیست.
ایجنت هوش مصنوعی برای کارهای طولانی جذاب است، اما طراحی آن نیاز به کنترل دارد. باید مشخص باشد Agent چه دسترسی هایی دارد و چه اقدام هایی نیاز به تایید کاربر دارند.

۱۰. Evals و Guardrails چرا مهم هستند؟

ساخت قابلیت هوش مصنوعی بدون ارزیابی منظم می تواند خطرناک باشد. خروجی مدل قطعی نیست و با تغییر Prompt، مدل یا Context ممکن است رفتار آن تغییر کند.
Evals مجموعه ای از تست ها هستند که کیفیت سیستم را اندازه گیری می کنند. مثلا می توانی صد سوال واقعی کاربران را ذخیره کنی و بعد از هر تغییر بررسی کنی چند پاسخ صحیح باقی مانده است.
Guardrails نیز محدودیت هایی هستند که جلوی بعضی رفتارهای نامناسب را می گیرند. برای مثال، می توان بررسی کرد آیا خروجی شامل اطلاعات حساس است یا آیا مدل اجازه انجام یک عملیات خاص را دارد.
در پروژه های Agentic اهمیت Guardrail بیشتر می شود. اگر مدل فقط متن تولید کند، یک خطا ممکن است به یک جواب بد ختم شود. اما اگر مدل بتواند فایل حذف کند یا درخواست مالی ارسال کند، خطا می تواند اثر واقعی داشته باشد.
برای همین سیستم حرفه ای فقط به کیفیت مدل وابسته نیست. تست، لاگ، تایید انسانی و کنترل دسترسی نیز بخشی از معماری هستند.

این ۱۰ مفهوم چگونه به هم متصل می‌شوند؟

این مفاهیم جدا از یکدیگر نیستند. معمولا چند مورد از آن ها همزمان در یک پروژه استفاده می شوند.
مثلا برای ساخت دستیار داخلی شرکت، می توانی از یک LLM به عنوان موتور اصلی استفاده کنی. اسناد را با Embedding به بردار تبدیل کنی و داخل Vector Database قرار دهی. با RAG سند مناسب را پیدا کنی و از Context Engineering برای ارسال اطلاعات ضروری به مدل کمک بگیری.
اگر دستیار نیاز داشته باشد عملی انجام دهد، Tool Calling اضافه می شود. اگر قرار باشد چند مرحله را مستقل جلو ببرد، معماری Agent وارد پروژه می شود. در نهایت Evals و Guardrails کمک می کنند رفتار سیستم قابل اندازه گیری و کنترل باشد.
درک همین ارتباط ها بخش مهمی از AI Concepts for Developers است. توسعه دهنده موفق لزوما کسی نیست که بزرگ ترین مدل را انتخاب کند، بلکه کسی است که اجزای مناسب را برای مسئله درست کنار هم قرار دهد.

جمع بندی

ورود به توسعه هوش مصنوعی فقط به یادگیری یک API محدود نمی شود. برنامه نویس باید بداند مدل چگونه Context را پردازش می کند، Embedding چه کاربردی دارد، RAG چه مشکلی را حل می کند و Agent چگونه از ابزارها برای انجام کار واقعی استفاده می کند.
در کنار قابلیت ها، ارزیابی و کنترل نیز اهمیت زیادی دارند. یک محصول هوش مصنوعی حرفه ای باید بتواند پاسخ مناسب تولید کند، از داده درست استفاده کند و در برابر خطاهای قابل پیش بینی کنترل داشته باشد.
اگر این ۱۰ مفهوم را به خوبی یاد بگیری، درک معماری بیشتر پروژه های مدرن هوش مصنوعی بسیار ساده تر می شود و می توانی هنگام انتخاب مدل، دیتابیس، ابزار یا روش اتصال اجزای سیستم تصمیم های دقیق تری بگیری.