AI Agent چیست و چه تفاوتی با Chatbot دارد؟
تعریف عملی AI Agent در برابر Chatbot: هدفمحوری، ابزار و اقدام، حافظه و برنامهریزی مفهومی، جدول مقایسه و منابع رسمی OpenAI، Anthropic و Google.
Founder & product engineer

کلمهٔ «Agent» در بازاریابی محصولهای هوش مصنوعی زیاد شنیده میشود؛ گاهی همان چت ساده هم Agent نامیده میشود. برای تیم نرمافزاری این ابهام هزینه دارد: اگر فکر کنید با یک پاسخدهندهٔ متنی طرفید، ممکن است مجوز ابزار و دسترسی را کم بدهید؛ اگر فکر کنید با یک همکار خودمختار طرفید، ممکن است بدون کنترل کافی قدرت اجرا بدهید.
تعریف کاری که در این مقاله ملاک است از مستندات رسمی سازندگان میآید، نه از شعار فروش. OpenAI در Agents SDK میگوید Agentها مدلهای زبانی هستند که با دستورالعمل و ابزار تجهیز شدهاند و یک حلقهٔ داخلی فراخوانی ابزار را تا اتمام کار ادامه میدهد. Anthropic در Agent SDK مینویسد Agent برنامهای است که با برنامهریزی گامهای خودش و فراخوانی ابزارهایی مثل خواندن فایل، اجرای فرمان یا ویرایش کد، یک کار را کامل میکند. Google Cloud هم Agent را سامانهای میداند که برای رسیدن به هدف، استدلال، برنامهریزی و حافظه دارد و درجهای از خودمختاری برای تصمیم و اقدام.
Chatbot در مقابل، عمدتاً در چرخهٔ پرسش و پاسخ متنی میماند: ورودی میگیرد، متن تولید میکند، و معمولاً بدون اقدام روی سیستم شما متوقف میشود. تفاوت عملی همین است: پاسخ در برابر اقدام.

پاسخ کوتاه
AI Agent (عامل هوش مصنوعی) سیستمی هدفمحور است که برای رسیدن به یک نتیجه، برنامهای میچیند، از ابزارها استفاده میکند، نتیجهٔ اقدام را مشاهده میکند و تصمیم بعدی را میگیرد — با درجهای از حافظهٔ کاری و خودمختاری که شما تنظیم کردهاید. Chatbot عمدتاً مکالمه میکند و متن برمیگرداند. اگر محصول فقط جواب میدهد و چیزی را در محیط شما تغییر نمیدهد، بیشتر Chatbot است؛ اگر میتواند چند گام پشتسرهم با ابزار بردارد، وارد قلمرو Agent شدهاید.
Agent را با هدف، ابزار و شعاع انفجار تعریف کنید؛ نه با برند مدل.
تعریف مفهومی Agent بدون اغراق
هدفمحوری
Chatbot معمولاً به آخرین پیام شما واکنش نشان میدهد. Agent حول یک هدف کار میکند: «این تست را سبز کن»، «این باگ را بازتولید و رفع کن»، «پوشش تست این ماژول را بالا ببر». هدف میتواند کوچک باشد؛ مهم این است که معیار اتمام دارد. بدون هدف قابلاندازهگیری، حلقهٔ Agent به گشتزنی بیپایان یا تولید متن طولانی تبدیل میشود.
ابزار و اقدام (Tools / Actions)
ابزار همان چیزی است که Agent را از تولید متن خالص جدا میکند: خواندن فایل، جستوجوی مخزن، اجرای تست، فراخوانی API، ساخت Pull Request، یا اتصال به MCP. OpenAI صراحتاً Agent را LLM مجهز به instructions و tools توصیف میکند و حلقهٔ داخلی را طوری طراحی کرده که نتیجهٔ ابزار دوباره به مدل برگردد تا کار ادامه یابد. Anthropic هم قابلیتهای Read/Write/Edit/Bash و مجوزها را بخش جداییناپذیر Agent میداند.
حافظه و برنامهریزی در سطح مفهومی
منظور از حافظه اینجا لزوماً «یادگیری مادامالعمر» نیست. در عمل یعنی حفظ زمینهٔ کاری جلسه: فایلهای باز، خلاصهٔ گامهای قبلی، قوانین پروژه، و وضعیت جلسه. برنامهریزی هم یعنی شکستن هدف به گامها و انتخاب ابزار مناسب — گاهی صریح در یک Plan Mode، گاهی ضمنی داخل حلقهٔ مدل. Google Cloud در توضیح معماری agentic همین اجزا را جدا میکند: مدل بهعنوان موتور استدلال، ابزار برای اقدام، و حافظه برای حفظ زمینه.
این سه عنصر — هدف، ابزار، حافظه/برنامه — تعریف مفهومی کافی برای تصمیم محصول و سیاست تیم است. نیازی نیست وارد جزئیات پیادهسازی هر فروشنده شوید تا بفهمید با چه چیزی طرفید.
Chatbot دقیقاً چه میکند؟
Chatbot کلاسیک یک رابط گفتوگویی است: سؤال میپرسید، پاسخ میگیرید. ممکن است دانش retrival داشته باشد یا به FAQ وصل باشد، اما معمولاً روی فایلهای پروژه شما ویرایش نمیکند، تست اجرا نمیکند و بدون دستور صریح شما چند اقدام زنجیرهای انجام نمیدهد. حتی Chatbotهای پیشرفته که «ابزار» دارند، اگر حلقهٔ چندگامی و سیاست اقدام نداشته باشند، هنوز رفتارشان به پاسخدهی نزدیکتر است تا به عامل هدفمحور.
این تمایز ارزشی ندارد که یکی را «پست» و دیگری را «پیشرفته» بنامیم. برای توضیح معماری، پرسش امنیتی، یا brainstorm، Chatbot اغلب کافی و کمریسکتر است. Agent وقتی معنا دارد که کار چندمرحلهای و ابزاردار باشد.
جدول مقایسهٔ Agent و Chatbot
| بُعد | Chatbot | AI Agent |
|---|---|---|
| واحد کار | یک پاسخ متنی به پیام | یک هدف با چند گام تا اتمام یا توقف |
| خروجی اصلی | متن / توضیح / پیشنهاد | متن + اقدام روی محیط (فایل، فرمان، API) |
| حلقه | پرسش → پاسخ | هدف → برنامه → ابزار → مشاهده → تصمیم بعدی |
| حافظهٔ کاری | تاریخچهٔ مکالمه | تاریخچه + وضعیت ابزار/فایل/جلسه |
| کنترل ریسک | عمدتاً محتوای پاسخ | محتوا + مجوز ابزار + شعاع دسترسی |
| نمونهٔ مناسب | توضیح کد، ایدهٔ طراحی | رفع باگ با تست، PR چندفایلی کنترلشده |
| نمونهٔ نامناسب | اتوماسیون چندمرحلهای بدون انسان | چت توضیحی ساده با هزینه و پیچیدگی Agent |
حلقهٔ عامل (Agent Loop) به زبان ساده
مستندات OpenAI از یک agent loop داخلی حرف میزند که فراخوانی ابزار را مدیریت میکند، نتیجه را به مدل برمیگرداند و تا تکمیل کار ادامه میدهد. تصویر ذهنی مفید برای تیم این است:
- هدف و محدودیتها را میگیرد (از شما یا از سیاست پروژه).
- گام بعدی را پیشنهاد میکند.
- ابزار مجاز را صدا میزند (مثلاً خواندن فایل یا اجرای تست).
- خروجی ابزار را مشاهده میکند.
- تا رسیدن به معیار توقف، Approval انسانی، یا شکست قابلگزارش تکرار میکند.
Anthropic همین منطق را بهصورت «برنامهریزی گامها + فراخوانی ابزار تا اتمام کار» خلاصه میکند. تفاوت محصولات در UI و مجموعهٔ ابزار است؛ مفهوم حلقه یکی است.
طیف خودمختاری؛ نه دوگانهٔ مطلق
در عمل یک خط برش تمیز بین Chatbot و Agent نیست؛ یک طیف است:
- پاسخدهندهٔ محض: فقط متن.
- پاسخدهنده با یک ابزار خواندنی: مثلاً جستوجوی اسناد بدون نوشتن.
- همکار با تأیید: ویرایش یا فرمان فقط بعد از Accept شما.
- عامل محدود در سندباکس: چند گام خودکار داخل محیط ایزوله.
- عامل گسترده: چند مخزن، شبکه، یا دیپلوی — فقط با کنترل قوی قابلقبول است.
OWASP در ریسکهای LLM موضوع Excessive Agency را برجسته میکند: وقتی سیستم بیش از نیاز ابزار و خودمختاری دارد. ترجمهٔ تیمی: هرچه روی طیف به راست بروید، تعریف مجوز و ناظر انسانی واجبتر میشود — نه اینکه Agent «بد» باشد.
نمونههای ملموس برای تیم نرمافزار
کجا Chatbot کافی است
- توضیح یک تابع ناآشنا.
- مقایسهٔ دو الگوی طراحی در سطح مفهومی.
- پیشنویس پیام Release Notes از روی لیست تغییرات.
- کمک به نوشتن Acceptance Criteria قبل از کدنویسی.
کجا Agent ارزش دارد
- بازتولید باگ با اجرای تست و پیشنهاد Patch محدود.
- اعمال یک تغییر قراردادی در چند فایل همسبک با اجرای lint.
- ساخت پیشنویس PR روی شاخهٔ جدا با مرور Diff توسط انسان.
- گشتزنی در codebase برای پیدا کردن نقاط اتصال یک API.
اگر کارتان در دستهٔ اول است و ابزار Agent را روشن کردهاید فقط چون «مد است»، پیچیدگی و سطح حمله را بیدلیل بالا بردهاید. اگر کارتان در دستهٔ دوم است و فقط با چت متنی جلو میروید، احتمالاً زمان و زمینه را هدر میدهید.
اشتباههای رایج در نامگذاری
- هر چت داخل IDE را Agent نامیدن — باعث سیاست امنیتی اشتباه میشود.
- فرض اینکه Agent یعنی «بدون انسان» — بیشتر محصولات جدی human-in-the-loop دارند.
- معادل دانستن Agent با یک مدل خاص — Agent ترکیب مدل + ابزار + سیاست است.
- انتظار معجزه بدون تعریف Done — Agent بدون معیار اتمام فقط پرگویی میکند.
مقالهٔ ۰۹۷ دربارهٔ ابزارهای AI Coding و مقالهٔ ۱۰۲ دربارهٔ حلقهٔ عملی Agent کدنویسی این تمایز را عمیقتر میکنند. برای کیفیت و کنترل هم ۰۹۸ و ۱۰۴ را کنار این تعریف بخوانید.
چگونه در تیم تشخیص دهید با کدام طرفید؟
- آیا سیستم میتواند بیش از یک اقدام پشتسرهم بدون پرامپت جدید انجام دهد؟
- آیا به ابزاری فراتر از تولید متن دسترسی دارد؟
- آیا بعد از اقدام، وضعیت محیط را مشاهده و در تصمیم بعدی استفاده میکند؟
- آیا سیاست مجوز جدا از «باهوش بودن مدل» دارید؟
اگر بیشتر جوابها منفی است، Chatbot یا تکمیلکننده دارید — و اغلب همان درست است. اگر مثبت است، Agent دارید و باید مثل یک بازیگر عملیاتی با دسترسی کنترلشده با آن رفتار کنید؛ نه مثل یک جعبهٔ متن جادویی.
پیوند با بقیهٔ سری
تعریف این مقاله زمین برای ۱۰۲ است: چگونه Coding Agent در حلقهٔ context → plan → edit → run → observe کار میکند. ۰۹۹ و ۰۸۱ و ۱۰۰ یادآوری میکنند Secret و دسترسی سرور را به هر سیستمی — از جمله Agent — بیمحابا ندهید. ۰۲۷ ریسکهای vibe coding را از زاویهٔ امنیتی باز میکند. ۱۰۳ نشان میدهد پرامپت خوب برای توسعهدهنده یعنی قید، مثال، Diff و تست؛ نه شعار بازاریابی.
جمعبندی برای تصمیم
AI Agent یعنی هدف + ابزار/اقدام + حلقهٔ مشاهده و برنامهریزی مفهومی. Chatbot یعنی مکالمه و پاسخ. هر دو جای خود را دارند. تصمیم درست این نیست که «همه چیز را Agent کنیم»؛ این است که برای هر کار، کمترین سطح خودمختاری لازم را انتخاب کنید و مجوز را با همان سطح همتراز کنید.
اگر فقط یک کار این هفته میکنید: واژهنامهٔ تیم را یکسان کنید — چه چیزی را Agent مینامید، چه مجوزهایی دارد، و چه چیزی هنوز فقط چت است.
مرز خاکستری: Chatbot ابزاردار
بعضی محصولات چت هستند که یک یا دو ابزار خواندنی دارند. آیا اینها Agentاند؟ از نظر طیف، در میانه قرار میگیرند. معیار عملی همان چهار سؤال انتهای مقاله است: اقدام چندگامی، ابزار فراتر از متن، مشاهدهٔ محیط، و سیاست مجوز. اگر فقط یک جستوجوی سند برای غنیکردن پاسخ دارند و حلقهٔ اقدام نمیسازند، برای سیاست تیم آنها را Chatbot پیشرفته بنامید تا سطح دسترسی اشتباه نگیرد.
این نامگذاری محافظهکارانه بهتر از برچسب Agent روی هر چیز است؛ چون برچسب Agent معمولاً توجیهی برای دادن دسترسی بیشتر میشود.
تعریف کاری برای سند سیاست تیم
یک پاراگراف کوتاه در ویکی تیم کافی است: Agent یعنی سامانهٔ هدفمحور با ابزار و حلقهٔ مشاهده که میتواند وضعیت مخزن یا محیط را تغییر دهد. Chatbot یعنی پاسخ متنی بدون اقدام تغییردهنده. هر ارتقا از Chatbot به Agent نیاز به صاحب، هدف، محیط، و فهرست ابزار مجاز دارد.
این تعریف را کنار مقالات ۰۹۸ تا ۱۰۰ بگذارید تا کیفیت، Secret، و دسترسی سرور به همان واژهنامه وصل شوند. مقالهٔ ۱۰۲ حلقهٔ عملی Coding Agent را باز میکند و ۱۰۴ نشان میدهد چطور تفویض کنید بدون از دست دادن کنترل.
سؤالات متداول کوتاه
- آیا هر مدل قوی یک Agent است؟ خیر؛ Agent ترکیب مدل و ابزار و سیاست است.
- آیا Agent همیشه بهتر از Chatbot است؟ خیر؛ برای کار مکالمهای ساده، Chatbot کمهزینهتر و کمریسکتر است.
- آیا بدون حافظهٔ بلندمدت هنوز Agent است؟ بله؛ حافظهٔ کاری جلسه برای تعریف مفهومی کافی است.
- آیا باید از فردا همه چیز را Agent کنیم؟ خیر؛ از یک هدف کوچک با شعاع انفجار محدود شروع کنید.
اگر تیم روی همین پاسخها توافق کند، بحثهای بعدی دربارهٔ خرید ابزار و تنظیم مجوز کوتاهتر و دقیقتر میشود.
نقش انسان بهعنوان ناظر هدف
حتی وقتی حلقه خودکار است، انسان هدف، محدودیت ریسک، و معیار توقف را تعیین میکند. بدون ناظر، مسئولیت در هوا میماند و تیم بعد از خطا نمیداند چه کسی باید پاسخگو باشد. ناظر لازم نیست همهچیز را دستی تأیید کند؛ باید سیاست و استثناها را مالک باشد.
در عمل، Tech Lead یا صاحب سرویس این نقش را دارد: چه محیطهایی مجازند، چه ابزارهایی خاموشاند، و چه PRهایی نیاز به بازبینی دوم دارند. این همان روح نظارت انسانی است که در چارچوبهای مدیریت ریسک AI هم دیده میشود.
منابع و مراجع
- OpenAI Agents SDK (TypeScript) — Agents as LLMs with instructions and tools; agent loop — https://openai.github.io/openai-agents-js/
- Anthropic Agent SDK overview — definition of agent (plan steps, call tools) — https://platform.claude.com/docs/en/agent-sdk/overview
- Google Cloud — What are AI agents? — https://cloud.google.com/discover/what-are-ai-agents
- Google Cloud Architecture Center — Choose agentic AI architecture components — https://docs.cloud.google.com/architecture/choose-agentic-ai-architecture-components
- OWASP GenAI LLM Top 10 (Excessive Agency theme) — https://genai.owasp.org/llm-top-10/
با تعریف مشترک شروع کنید؛ بعد سراغ تنظیمات محصول بروید.
Author
Soheil Ebrahimpour is the founder of FutureForge. He works on product design, architecture, and getting custom software into production.
Related notes
If you are unsure about architecture or the build path, we can talk about the project.
Describe the problem and the constraints. If there is a fit, we will schedule a conversation.




