عاملهای هوش مصنوعی
یک عامل هوش مصنوعی دستیاری چندمرحلهای است. گفتگو را میخواند، برنامهریزی میکند، ابزارها را (ابزارهای AI شما، ابزارهای MCP و جستوجو در پایگاه دانش) فراخوانی میکند، نتایج را بررسی میکند و دوباره مدل را صدا میزند تا به پاسخ برسد. گره ایجاد تکمیل چت هوش مصنوعی فقط یک بار مدل را فراخوانی میکند و پاسخ میدهد؛ اما گره عامل هوش مصنوعی میتواند در چارچوب محدودیتهایی که شما تعیین میکنید، پیش از ارائه پاسخ چندین فراخوانی مدل و ابزار انجام دهد.
وقتی درخواستی به چند مرحله نیاز دارد از عامل استفاده کنید، مثلاً «سفارش مشتری را پیدا کن، وضعیت تحویل را بررسی کن و تاریخ جدید پیشنهاد بده». برای پاسخ مستقیم بر پایه دستورالعملها و یک پایگاه دانش، گره AI سادهتر و ارزانتر است.
اجزای اصلی
| بخش | چیست | کجا تنظیم میشود |
|---|---|---|
| AI Harness | موتوری که حلقه عامل را اجرا میکند: موتور خود MonoChat، یک SDK عامل یا یک سرویس عامل میزبانیشده. | تنظیمات › اتوماسیون › هارنسهای AI |
| مدلها | مدلهای AI که عامل با آنها فکر میکند: یک مدل اصلی، یک مدل جایگزین اختیاری و یک مدل سریع اختیاری. harnessهای میزبانیشده بهجای آنها از مدلهای ارائهدهنده خودشان استفاده میکنند. | گره عامل هوش مصنوعی |
| ابزارها | محدودههای AI، توابع ابزار AI و ابزارهای MCP. | گره عامل هوش مصنوعی |
| بودجه اجرا | محدودیت فراخوانی مدل، فراخوانی ابزار، توکن، مدت زمان و تلاش مجدد برای هر اجرا. | گره عامل هوش مصنوعی |
| اجرا | یک بار اجرای عامل. هر اجرا در اجراهای عامل هوش مصنوعی ثبت میشود. | توسط گره یا API ایجاد میشود |
هارنسهای AI
تنظیمات › اتوماسیون › هارنسهای AI harnessهایی را فهرست میکند که عاملهای شما میتوانند روی آنها اجرا شوند: harnessهایی که MonoChat برای همه فضاهای کاری ارائه میدهد و آنهایی که شما با اعتبارنامههای خودتان اضافه میکنید.
| Harness | محل اجرا | مدلهایی که استفاده میکند | چه کسی اضافه میکند |
|---|---|---|---|
| MonoChat Native | داخل MonoChat | مدلهای AI شما | MonoChat |
| OpenAI Agents SDK | داخل MonoChat | مدلهای AI شما | MonoChat |
| Claude Agent SDK | روی اجراکننده عامل MonoChat | مدلهای AI شما | MonoChat |
| pi | روی اجراکننده عامل MonoChat | مدلهای AI شما | MonoChat |
| OpenAI Agents API | در ابر OpenAI | مدلهای مجاز harness | شما، با کلید API اوپنایآی خودتان (ممکن است MonoChat هم یکی ارائه دهد) |
| Claude Managed Agents | در ابر Anthropic | مدلهای مجاز harness | شما، با کلید API شرکت Anthropic (ممکن است MonoChat هم یکی ارائه دهد) |
| نقطه پایانی سفارشی | روی سرور خودتان | مدلهای AI شما (اختیاری) | شما، با endpoint و secret خودتان |
harnessهایی که روی MonoChat اجرا میشوند را خود MonoChat ارائه میدهد؛ فضای کاری شما فقط میتواند harnessهایی را اضافه کند که اعتبارنامه خودش را میگیرند. Claude Agent SDK و pi به اجراکننده عامل MonoChat نیاز دارند: در جایی که راهاندازی نشده باشد، اجرا روی آنها با پیام «This harness is not available on this server.» ناموفق میشود.
هر harnessی که باشد، کنترل در دست MonoChat میماند: هر فراخوانی مدل در harnessی که از مدلهای AI شما استفاده میکند از MonoChat عبور میکند (پس صورتحساب و بودجه اعمال میشود)، هر فراخوانی ابزار، توابع، ابزارهای MCP و محدودههای AI را در فضای کاری شما اجرا میکند و بودجه روی همه harnessها اعمال میشود.
افزودن harness
- به تنظیمات › اتوماسیون › هارنسهای AI بروید و روی + (ایجاد) کلیک کنید.
- یک نام و در صورت تمایل توضیحات وارد کنید.
- Harness را انتخاب کنید. هر گزینه میگوید کجا اجرا میشود.
- زیر اعتبارنامهها، آنچه harness نیاز دارد را وارد کنید:
- OpenAI Agents API، Claude Managed Agents: کلید API.
- نقطه پایانی سفارشی: Endpoint و کلید API.
- برای harness میزبانیشده، مدلهای مجاز را پر کنید: نام مدلهای ارائهدهنده را وارد کنید (مثلاً شناسه مدل OpenAI یا Anthropic). با افزودن مدل تا ۱۰ مدل اضافه کنید. عاملهای این harness فقط میتوانند از این فهرست انتخاب کنند.
- روی ذخیره کلیک کنید.
هنگام ویرایش harness، نوع Harness قابل تغییر نیست و فیلد کلید این عبارت را نشان میدهد: کلید API (برای حفظ کلید ذخیرهشده خالی بگذارید).
اولین باری که harness از این نوع استفاده میشود، MonoChat یک عامل و یک environment در آن حساب Anthropic ایجاد میکند و پس از آن دوباره از آنها استفاده میکند.
نقطه پایانی سفارشی
harness نقطه پایانی سفارشی اجراها را به سرویس خودتان میفرستد، مثلاً یک عامل خودمیزبان. برای هر اجرا، MonoChat یک POST به <Endpoint>/runs با Authorization: Bearer <API Key> ارسال میکند. بدنه درخواست شامل شناسه اجرا، دستورالعملها، ورودی، پیامهای گفتگو، بودجه، نامهای مستعار مدل (agent-main، agent-fallback، agent-fast) و سه URL همراه با یک توکن مخصوص این اجراست:
- یک درگاه مدل (آدرسهای پایه سازگار با OpenAI به شکل
…/v1و سازگار با Anthropic) که مدلهای AI گره را فراخوانی میکند و بودجه را اعمال میکند، - یک سرور MCP که ابزارهای اجرا را در اختیار میگذارد،
- یک URL رویدادها که سرویس شما نتیجه را در آن گزارش میکند (
completedهمراه باresult، یاfailedهمراه باerror).
توکن اجرا با پایان اجرا از کار میافتد.
گره عامل هوش مصنوعی
با گره عامل هوش مصنوعی که در بخش گرههای ترکیبی طراح جریان قرار دارد، یک عامل به جریان اضافه کنید. برای نحوه افزودن و اتصال گرهها به جریانها نگاه کنید.
فیلدها
| بخش | فیلد | توضیحات |
|---|---|---|
| نام | نام گره که روی بوم نمایش داده میشود. | |
| AI Harness | الزامی. harnessی که عامل را اجرا میکند. | |
| دستورالعملها | دستورالعملهای سیستمی عامل: نقش، لحن، قوانین و کارهایی که مجاز است انجام دهد یا نه. | |
| وظیفه (به دستورالعملهای عامل اضافه میشود؛ میتوان از برچسبها استفاده کرد) | کاری که این گره از عامل میخواهد. بعد از دستورالعملها اضافه میشود و میتواند از همان برچسبهای پرامپت گره AI استفاده کند، مثلاً برای درج اطلاعات مشتری. | |
| مدلها | مدل اصلی | مدلی که عامل از آن استفاده میکند. برای همه harnessها بهجز نقطه پایانی سفارشی الزامی است. |
| مدل جایگزین (پس از رسیدن به حد نرم) | مدلی که عامل پس از رسیدن به حد نرم فراخوانیهای مدل به آن تغییر میکند، معمولاً مدلی ارزانتر یا سریعتر. | |
| مدل سریع (وظایف سبک پسزمینه) | مدلی که harness میتواند برای فراخوانیهای سبک پسزمینهاش استفاده کند. | |
| مدل (یکی از مدلهای مجاز Harness) | برای harness میزبانیشده بهجای سه فیلد بالا نمایش داده میشود. | |
| گفتگوی عامل | گفتگو | ادامه نشست عامل موجود (پیشفرض) یا شروع نشست عامل جدید. به نشستهای عامل نگاه کنید. |
| کلید وظیفه (گفتگوهای جداگانه عامل برای هر وظیفه) | اختیاری. در یک گفتگو برای هر کلید یک نشست عامل جداگانه نگه میدارد، مثلاً booking و support. | |
| محدودیت تاریخچه پیام | تعداد پیامهای گفتگو که به عامل داده میشود. | |
| مدلهای AI تبدیل گفتار به متن | مدلی با قابلیت رونوشت. پیامهای صوتی گفتگو بهصورت متن به عامل میرسند. | |
| تنظیمات ابزار | محدودههای AI | پایگاههای دانشی که عامل میتواند در آنها جستوجو کند. بهعنوان ابزار جستوجوی پایگاه دانش در اختیار عامل قرار میگیرند. |
| ابزار AI | توابعی از نوع ابزار AI که عامل میتواند فراخوانی کند. | |
| تعیین ابزارهای محتوای کلاینت MCP هوش مصنوعی | پنلی را باز میکند که در آن ابزارهای MCP را اضافه میکنید. به کلاینتهای MCP نگاه کنید. | |
| پیامها | ارسال پیامهای میانی به مشتری | بهطور پیشفرض خاموش است. وقتی روشن باشد، آنچه عامل هنگام کار مینویسد (مثلاً «بگذارید سفارش شما را بررسی کنم») برای مشتری ارسال میشود؛ وقتی خاموش باشد، بهصورت پیام whisper که فقط تیم شما میبیند به نشست اضافه میشود. |
| ارسال پاسخ | بهطور پیشفرض روشن است. پاسخ نهایی عامل را برای مشتری ارسال میکند. برای استفاده از پاسخ فقط داخل جریان، آن را خاموش کنید. | |
| بودجه اجرا | حداکثر فراخوانی مدل | پیشفرض ۴. |
| حد نرم: فراخوانی مدل | اختیاری. پس از این تعداد فراخوانی مدل، عامل به مدل جایگزین تغییر میکند. باید کمتر از حداکثر فراخوانی مدل باشد و به مدل جایگزین نیاز دارد. | |
| حداکثر فراخوانی ابزار | پیشفرض ۶. با مقدار 0، اجرا بهمحض اینکه عامل بخواهد ابزاری را فراخوانی کند با وضعیت بودجه تمام شد پایان مییابد. | |
| حداکثر کل توکنها | پیشفرض ۲۰۰۰۰. توکنهای ورودی و خروجی همه فراخوانیهای مدل در اجرا. | |
| حداکثر مدت (ثانیه) | پیشفرض ۳۰. | |
| حداکثر تلاش مجدد | پیشفرض ۲. تعداد دفعاتی که یک فراخوانی ناموفق مدل دوباره تلاش میشود. |
قوانین ثابت را در دستورالعملها و کار مشخص این مرحله را در وظیفه بنویسید. به این ترتیب چند گره عامل هوش مصنوعی در یک جریان میتوانند دستورالعملهای یکسان داشته باشند و فقط در وظیفهشان تفاوت داشته باشند.
harnessهای میزبانیشده از حد نرم پشتیبانی نمیکنند، چون نمیتوانند به مدل جایگزین تغییر کنند. برای آنها حد نرم: فراخوانی مدل را خالی بگذارید.
وقتی جریان به گره میرسد چه اتفاقی میافتد
- MonoChat موجودی شما و تنظیمات گره را بررسی میکند و یک اجرا را شروع میکند. اجرا ابتدا در صف و سپس در حال اجرا است. نمونه جریان روی گره منتظر میماند.
- عامل دستورالعملها و وظیفه را دریافت میکند و، اگر جریان به یک گفتگو تعلق داشته باشد، پیامهای گفتگو را تا محدودیت تاریخچه پیام همراه با رونویسی پیامهای صوتی.
- عامل مدلها و ابزارها را فراخوانی میکند تا به پاسخ برسد یا یک محدودیت فرا برسد. متنی که میان فراخوانیهای ابزار مینویسد بهعنوان پیام میانی در نظر گرفته میشود.
- وقتی اجرا پایان مییابد:
- اگر تکمیلشده باشد و ارسال پاسخ روشن باشد، پاسخ برای مشتری ارسال میشود. پاسخهای بلند اگر از حد کانال بیشتر شوند (۴۰۹۶ نویسه در WhatsApp) به چند پیام تقسیم میشوند؛
- اگر به شکل دیگری پایان یافته باشد، یک پیام whisper با متن «AI agent run ended: status. error» برای تیم شما به نشست اضافه میشود.
- جریان روی خروجیای ادامه مییابد که با نحوه پایان اجرا مطابقت دارد.
اجراهای یک نشست عامل یکییکی و به ترتیب پردازش میشوند.
خروجیها
| خروجی | چه زمانی |
|---|---|
| تکمیلشده | عامل با یک پاسخ کار را تمام کرد. |
| بودجه تمام شد | اجرا حداکثر فراخوانی مدل، حداکثر فراخوانی ابزار یا حداکثر کل توکنها را مصرف کرد. |
| مهلت زمانی تمام شد | اجرا به حداکثر مدت (ثانیه) رسید. |
| نفرتپراکنی، Jailbreak، آسیب به خود، محتوای جنسی، خشونت | فیلتر محتوای ارائهدهنده مدل اجرا را برای این دسته متوقف کرد. اینها همان خروجیهایی هستند که گره AI دارد. |
| در صورت شکست | اجرا به هر دلیل دیگری ناموفق بود یا لغو شد. توقف توسط فیلتر محتوا نیز در گرههایی که پیش از وجود این خروجیها ذخیره شدهاند به اینجا میرسد؛ برای دریافت آنها چنین گرهی را باز کنید و ذخیره کنید. |
دستکم تکمیلشده و در صورت شکست را وصل کنید. الگوی رایج این است که بودجه تمام شد، مهلت زمانی تمام شد و در صورت شکست را به گره تخصیص گفتگو بفرستید تا یکی از همتیمیها کار را به دست بگیرد.
نشستهای عامل
نشست عامل، حافظه عامل در میان اجراهاست. MonoChat برای هر گفتگو، harness و کلید وظیفه یک نشست عامل فعال نگه میدارد.
- ادامه نشست عامل موجود از همان نشست دوباره استفاده میکند، پس عامل از جایی که مانده ادامه میدهد. در harnessهای میزبانیشده، نشست خود ارائهدهنده هم ادامه مییابد.
- شروع نشست عامل جدید نشست فعال را میبندد و از نو شروع میکند، مثلاً در آغاز یک موضوع جدید.
- کلید وظیفه نشستهای مستقل را کنار هم در یک گفتگو نگه میدارد.
صورتحساب
- فراخوانیهای مدل روی مدلهای AI ارائهشده توسط MonoChat طبق معمول از موجودی شما کسر میشوند. فراخوانیهای مدلهای خودتان را ارائهدهنده شما صورتحساب میکند.
- harnessی که MonoChat ارائه میدهد میتواند برای هر اجرا، هر دقیقه و هر فراخوانی ابزار هزینه خودش را داشته باشد و، برای harness میزبانیشده، توکنهایی که ارائهدهندهاش گزارش میکند. این هزینهها در تراکنشها با عنوان اجرای عامل هوش مصنوعی، مدت عامل هوش مصنوعی، فراخوانی ابزار عامل هوش مصنوعی و دستههای توکن AI نمایش داده میشوند.
- harnessی که با اعتبارنامههای خودتان اضافه میکنید کارمزد MonoChat ندارد؛ ارائهدهنده آن شما را صورتحساب میکند.
- وقتی موجودی شما کافی نباشد، اجرا شروع نمیشود.
رویداد پایان اجرای عامل هوش مصنوعی
اجرای عامل هوش مصنوعی به پایان رسید یک گره رویداد است. وقتی اجرایی که به یک مشتری مرتبط است پایان مییابد فعال میشود، چه اجرا از یک جریان شروع شده باشد و چه از طریق API همراه با یک نشست. مانند سایر گرههای رویداد، تنظیمات اختیاری شرط و پایان مهلت را دارد. از آن برای شروع یک جریان جداگانه پس از اجراهای عامل استفاده کنید، مثلاً برای ثبت نتایج یا اطلاعرسانی به یک تیم.
شروع عامل از کد
توابع سفارشی و کلاینتهای API میتوانند با این متدها عاملها را اجرا کنند (مجوز شروع اجراهای عامل AI در اتوماسیون / مشاهده اجراهای عامل AI در اتوماسیون / لغو اجراهای عامل AI در اتوماسیون):
| متد | کاری که انجام میدهد |
|---|---|
business.tenants.automation.ai.aiAgentRuns.create | یک اجرا را شروع میکند. aiAgentRunId و aiAgentSessionId را برمیگرداند. |
business.tenants.automation.ai.aiAgentRuns.show | یک اجرا (_id) را با وضعیت، مصرف، مراحل و نتیجهاش برمیگرداند. |
business.tenants.automation.ai.aiAgentRuns.cancel | یک اجرای در صف یا در حال اجرا (_id) را لغو میکند. |
create پارامترهای aiHarnessClientId، input (وظیفه) و در صورت نیاز sessionId (برای کار در یک گفتگو)، aiAgentSessionId، taskKey و isNewSession را میگیرد، و options با همان تنظیمات گره: instructions، aiModelClientId، fallbackAiModelClientId، fastAiModelClientId، harnessModel، toolCustomFunctionIds، aiScopeIds، aiMcpClientDatas، messageHistoryLimit، speechToTextAiModelClientId، forwardIntermediateMessages، willSendAnswer و یک budget الزامی. در API، مقدار پیشفرض forwardIntermediateMessages و willSendAnswer برابر false است.
const { aiAgentRunId } = await sdk.method({ name: 'business.tenants.automation.ai.aiAgentRuns.create' }).callAsync({
payload: {
aiHarnessClientId: 'HARNESS_ID',
input: 'Summarise the open orders of this customer.',
sessionId: 'SESSION_ID',
options: {
instructions: 'You are the order assistant of our store.',
aiModelClientId: 'MODEL_ID',
toolCustomFunctionIds: ['FUNCTION_ID'],
budget: { maxLlmCalls: 4, maxToolCalls: 6, maxTotalTokens: 20000, maxDurationSeconds: 30, maxRetries: 2 },
},
},
})
اجرا ناهمزمان است: بعداً با show آن را بخوانید یا با رویداد اجرای عامل هوش مصنوعی به پایان رسید به آن واکنش نشان دهید. بدون sessionId، هر فراخوانی یک نشست عامل جدید شروع میکند، مگر اینکه aiAgentSessionId برگرداندهشده توسط فراخوانی قبلی را بدهید؛ در آن صورت عامل اجراهای تکمیلشده قبلی آن نشست عامل را بهعنوان تاریخچه میبیند. برای فراخوانی متدها از داخل یک تابع، Method را ببینید.
مجوزها
| مجوز | اجازه میدهد |
|---|---|
| مشاهده / ایجاد / بهروزرسانی / حذف هارنسهای AI در اتوماسیون | مدیریت هارنسهای AI |
| مشاهده اجراهای عامل AI در اتوماسیون | دیدن اجراهای عامل هوش مصنوعی |
| شروع اجراهای عامل AI در اتوماسیون | فراخوانی aiAgentRuns.create |
| لغو اجراهای عامل AI در اتوماسیون | فراخوانی aiAgentRuns.cancel |
نقشها را ببینید.
مرتبط
- اجراهای عامل هوش مصنوعی: ببینید هر اجرا چه کاری انجام داد
- مدلهای AI
- کلاینتهای MCP
- محدودههای AI
- جریانها