اقدامات سرور هوش مصنوعی

اقدامات سرور AI با اجازه دادن به هوش مصنوعی برای تصمیم‌گیری در طول یک گردش‌کار، چارچوب اتوماسیون Odoo را گسترش می‌دهند.

آن‌ها برای مواردی طراحی شده‌اند که در آن منطق نمی‌تواند به‌طور کامل از طریق شرایط ثابت بیان شود، اما همچنان نیاز به اجرای کنترل‌شده از طریق اقدامات سرور استاندارد دارد.

چگونه اقدامات سرور هوش مصنوعی کار می‌کنند

گردش‌کارهای مبتنی بر هوش مصنوعی در Odoo حول یک تفکیک واضح مسئولیت‌ها بین اقدام سرور AI یا مدیر و ابزار یا کارگر ساخته شده‌اند.

اقدام سرور هوش مصنوعی: مدیر

یک اقدام سرور AI به‌عنوان یک تصمیم‌گیرنده یا یک مدیر عمل می‌کند. این اقدام رکورد و زمینهٔ آن را می‌خواند. پرامپت AI را تفسیر می‌کند. و تصمیم می‌گیرد که کدام ابزار را فراخوانی کند و از چه آرگومان‌هایی استفاده کند.

اقدام سرور قواعد کسب‌وکار را اعمال نمی‌کند، رکوردها را مستقیماً تغییر نمی‌دهد یا صحت عملیات را تضمین نمی‌کند. نقش آن محدود به تصمیم‌گیری است.

ابزار هوش مصنوعی: کارگر

یک ابزار یک اقدام سرور استاندارد است که گزینهٔ Use in AI در تب Usage آن فعال شده است. ابزارها شامل تمام منطق اجرا هستند و به‌روزرسانی‌ها، انتقال‌ها یا نوشتن رکوردها را انجام می‌دهند. ابزارها باید قواعد کسب‌وکار را به‌صراحت در کد Python اعمال کنند.

اگر یک ابزار توسط اقدام سرور AI فراخوانی شود، بدون قید و شرط اجرا خواهد شد، مگر آنکه خود کد از آن جلوگیری کند.

گردش‌کار اقدام سرور هوش مصنوعی

گردش‌کار اقدام سرور AI از این توالی پیروی می‌کند:

  1. یک رکورد یک اقدام سرور AI را فعال می‌کند.

  2. پرامپت AI با استفاده از رکورد به‌عنوان زمینه ارزیابی می‌شود.

  3. AI یکی از ابزارهای در دسترس را انتخاب می‌کند.

  4. AI آرگومان‌های موردانتظار ابزار را فراهم می‌کند.

  5. ابزار انتخاب‌شده کد Python خود را اجرا می‌کند.

مهم

اقدامات سرور AI فقط زمانی بدون منطق سفارشی کار می‌کنند که رفتار زیربنایی از پیش در Odoo وجود داشته باشد، مانند انتقال یک سند به یک پوشه. در این موارد، AI پارامترها را انتخاب می‌کند و Odoo اقدام را اجرا می‌کند.

بررسی مرحله‌به‌مرحلهٔ مورد استفاده

نمونهٔ Auto-sort documents in Inbox الگوی کامل اقدام سرور AI را نشان می‌دهد. با رفتن به تنظیمات ↤ فنی ↤ عملیات سرور به منوی Server Actions بروید.

توجه

این اقدام سرور برای بازبینی محتوای اسناد و افزودن برچسب طراحی شده است. خود این اقدام، اسناد را منتقل نمی‌کند یا برچسب اضافه نمی‌کند، فقط بر اساس محتوای اسناد تصمیم می‌گیرد که از کدام ابزار استفاده شود.

مدل این اقدام به‌عنوان Document فهرست شده است و نوع آن AI است.

رکورد اقدام سرور مرتب‌سازی خودکار اسناد در Inbox.

پرامپت این اقدام، زمینه‌ای دربارهٔ سند و نیت اقدام را فراهم می‌کند.

فیلد Tool شامل چندین اقدام است که ممکن است بر اساس این پرامپت انجام شوند، از جمله انتقال یک سند، افزودن برچسب، یا ایجاد فاکتورها یا صورتحساب‌ها.

توجه

AI: Add Tags، AI: Move to Folder و AI: Rename Document همگی اقدامات سرور Execute Code هستند، به این معنا که کد Python را فعال می‌کنند.

برای مثال، اگر اقدام بر اساس محتوای سند تشخیص دهد که مناسب‌ترین ابزار AI: Move to Folder است، کد Python عملیات زیر را انجام می‌دهد:

ai['result'] = record._ai_action_move_in_folder(folder_id)

این کد هنگام فراخوانی بدون قید و شرط اجرا می‌شود و عملیات انتقال را با استفاده از یک متد موجود انجام می‌دهد.

توجه

AI آرگومان‌ها را از کد Python یا از امضای متد استنباط نمی‌کند. در عوض، آرگومان‌های منتقل‌شده به یک ابزار به‌طور کامل توسط پیکربندی ابزار تعیین می‌شوند.

برای ابزار AI: Move to Folder، کد Python انتظار متغیری به نام folder_id را دارد. AI می‌داند که folder_id را ارائه دهد زیرا به‌صراحت به‌عنوان یک آرگومان در پیکربندی اعلام شده است. این مورد را می‌توان در تب Usage اقدام سرور، در فیلد AI Schema یافت. ستون نام زیر AI Schema باید دقیقاً با نام متغیر استفاده‌شده در کد Python مطابقت داشته باشد.

AI از توضیح آرگومان برای درک اینکه پارامتر چه چیزی را نشان می‌دهد، چه نوع مقداری موردانتظار است، و چه زمانی ارائهٔ آن مناسب است، استفاده می‌کند.

اگر یک آرگومان در تب Usage تعریف نشده باشد، هوش مصنوعی نمی‌تواند آن را ارائه کند، حتی اگر کد Python به آن ارجاع دهد.

تب usage اقدام سرور AI move to folder.

ایجاد ابزارهای سفارشی هوش مصنوعی

همان الگو در مثال Auto-sort documents in Inbox بالا را می‌توان با استفاده از منطق استاندارد Odoo پیاده‌سازی کرد. برای مثال، برای ایجاد اقدامی که می‌تواند توضیح یک وظیفه را به‌روزرسانی کند، یک اقدام Execute Code را می‌توان با کد زیر ایجاد کرد:

record.write({'description': content})

برای عملکرد صحیح، content باید به‌عنوان یک آرگومان در تب Usage ابزار تعریف شود.

همچنین ببینید

Server Actions

مشکلات متداول

چرا فیلد Tools خالی است؟

  • تأیید کنید که حداقل یک اقدام سرور Use in AI فعال دارد.

  • تأیید کنید که حداقل یک ابزار به همان مدل اقدام سرور اختصاص داده شده است.

چرا ابزار اجرا شد اما هیچ اتفاقی نیفتاد؟

  • کد Python بدون تغییر خارج شد.

  • آرگومان‌های الزامی گم‌شده یا خالی بودند.

  • شرایط کسب‌وکار در منطق ابزار پیاده‌سازی نشده بودند.

چرا هوش مصنوعی یک ابزار غیرمنتظره را انتخاب کرد؟

  • پرامپت زمینهٔ کافی نداشت.

  • چندین ابزار با نیت یکسانی مطابقت داشتند.

  • هیچ محدودیتی در سطح ابزار اعمال نشده بود.