برنامه نویسی

Power Automate Documentation توسط GPT

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

اخیراً در حال کاوش در آن بودم Create text with GPT کانکتور Power Automate، و این ایده به من داد، آیا می‌توانیم از یک مدل GPT برای ایجاد خودکار اسناد برای جریان‌های خود استفاده کنیم.

اگر می‌خواهید درباره کانکتور بیشتر بدانید، وبلاگ من را در اینجا بررسی کنید، به طور خلاصه برنامه من این است که تعریف جریان را دریافت کنم، آن را به کانکتور GPT ارسال کنید تا خلاصه‌ای از آنچه انجام می‌دهد دریافت کنید. علاوه بر این، من می خواهم یک نمایش گرافیکی ساده از آنچه انجام می دهد ببینم.

برای این توضیح می‌خواهم از یک الگوی استاندارد استفاده کنم، ایجاد یک کار در Planner از Microsoft Forms و ارسال پیام در Teams.
یک کار در Planner از Microsoft Forms ایجاد کنید و پیام را در Teams ارسال کنید


من می خواهم روند را به 4 بخش تقسیم کنم

  1. تعریف را دریافت کنید و داده ها را آماده کنید
  2. درخواست های GPT
  3. ایجاد گزارش
  4. ویژگی های اضافی

1. تعریف را دریافت کنید و داده ها را آماده کنید

ابتدا باید تعریف جریان را بدست آوریم، از آن استفاده می کنیم Get Flow اقدام از کانکتور Flow Managment، یکی از خروجی های آن تعریف است. این تعریف نقشه کلیدی برای همه جریان‌ها است و تمام اطلاعات کلیدی در مورد جریان و داده‌های اولیه مورد نیاز ما را دارد.

توضیحات تصویر

اما کانکتور همچنین اطلاعات مفید دیگری را ارائه می دهد،

  • Action Array – همه اقدامات (5 در نسخه ی نمایشی)
  • مراجع اتصال – همه اتصالات (فرم ها، تیم ها و برنامه ریز در مثال ما)

از آنجایی که جریان‌ها می‌توانند طولانی شوند و از آنجا که ما یک نشانه (محدودیت کاراکتر) در عملکرد GPT خود داریم، من فقط اقدامات API را می‌خواهم (بنابراین هیچ شرایط، متغیر یا محدوده‌ای وجود ندارد، فقط اقداماتی مانند دریافت موارد یا ارسال ایمیل).
ما این کار را با یک فیلتر ساده انجام می دهیم و فقط نوع هایی را انتخاب می کنیم که ‘OpenApiConnection’ هستند.

فیلتر کنید

سپس به سادگی از Create HTML Table اقداماتی برای ایجاد جدولی از اقدامات فیلتر شده و جدولی از مراجع اتصال.

جداول html

2. درخواست های GPT

ما باید از چند دستور GPT استفاده کنیم (بنابراین حواستان باشد که وقتی از پیش‌نمایش خارج می‌شود، گزارش چند اعتبار AI Builder هزینه خواهد داشت). اولین اعلان احتمالا قدرتمندترین است، ما از آن برای خلاصه کردن آنچه که جریان انجام می دهد استفاده می کنیم.

جریان را خلاصه کنید

در نسخه ی نمایشی ما دریافت می کنیم:

تعریف خودکار قدرت یک تعریف گردش کار است که هنگام ارسال یک پاسخ جدید، اقدامی را آغاز می کند. سپس جزئیات پاسخ را دریافت می کند، یک کار ایجاد می کند و پیامی را در یک چت یا کانال ارسال می کند. اگر ایجاد کار با شکست مواجه شود، گردش کار خاتمه می یابد.

خیلی باحاله 😎

ما می‌توانیم آنجا توقف کنیم، اما می‌خواهم چیز جالب دیگری اضافه کنم، یک نمودار توالی. برای این کار باید از 2 فرمان GPT استفاده کنیم (به دلیل محدودیت توکن). ابتدا باید تمام اکشن هایی که ‘OpenApiConnection’ هستند را استخراج کنیم.

دریافت اقدامات api
ممکن است متوجه شوید که این صدا شبیه کاری است که ما با آرایه کنش‌ها انجام دادیم، اما نام عمل را شامل نمی‌شود و ترتیب اشتباهی دارد.

[
  {
    "name": "Get_response_details",
    "type": "OpenApiConnection"
  },
  {
    "name": "Create_a_task",
    "type": "OpenApiConnection"
  },
  {
    "name": "Post_message_in_a_chat_or_channel",
    "type": "OpenApiConnection"
  }
]
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

در مرحله بعد از GPT می خواهیم که نمودار توالی پری دریایی ما را ایجاد کند

ایجاد نمودار توالی
می توانید نمودارهای مختلف پری دریایی یا حتی مدل های مختلف را انجام دهید. Mermaid یک کتابخانه رایگان جاوا اسکریپت قدرتمند است که نمودارهای فرآیند را ایجاد می کند

نمودار توالی
Get_response_details->>Create_a_task: درخواست
Create_a_task->>Post_message_in_a_chat_or_channel: درخواست
Post_message_in_a_chat_or_channel–>>Get_response_details: Response
Create_a_task–>>Get_response_details: Response
Post_message_in_a_chat_or_channel–>>Create_a_task: Response

3. ایجاد گزارش

برای ایجاد گزارش باید یک فرآیند استاندارد را دنبال کنم:

  • ایجاد قالب html
  • دریافت محتوای فایل
  • جای دارندگان مکان را با داده های جدید جایگزین کنید
  • ذخیره فایل جدید

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

قالب

من از متغیرهایی مانند {name} و {table} استفاده می‌کنم که سپس از عبارت جایگزین برای جایگزینی با خروجی‌های جدول GPT یا HTML استفاده می‌کنم.

قالب به روز رسانی

replace(
    replace(
        replace(
            replace(
                replace(
                    replace(
                        replace(body('Get_file_content_template'),
                            '{name}'
                        ,
                            outputs('Get_Flow')?['body/properties/displayName']
                        )
                    ,
                        '{author}'
                    ,
                        outputs('Get_Flow')?['body/properties/creator/userId']
                    )
                ,
                    '{description}'
                ,
                    outputs('Create_text_with_GPT_description')?['body/responsev2/predictionOutput/text']
                )
            ,
                '{table}'
            ,
                body('Create_HTML_table_actions')
            )
        ,
            '{diagram}'
        ,
            concat('sequenceDiagram',split(outputs('Create_text_with_GPT_diagram')?['body/responsev2/predictionOutput/text'],'sequenceDiagram')[1])
        )
    ,
        '{date}'
    ,
        formatDateTime(utcNow(),'dd/MM/yyyy')
    )
,
    '{tableCon}'
,
    body('Create_HTML_table_connections')
)
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

و فایل خروجی به شکل زیر خواهد بود:

گزارش
قالب ها را می توانید از اینجا دانلود کنید

جریان کامل
جریان کامل

4. ویژگی های اضافی

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

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

طبقه بندی کردن

موجودی پیش فرض محیط
جریان یک جریان دستی است، اما می‌توان آن را با جریان دیگری فراخوانی کرد که تمام جریان‌ها را در محیط پیش‌فرض فهرست می‌کند، توضیحات و سایر داده‌ها نیز می‌توانند در یک لیست برای بررسی آسان‌تر ذخیره شوند.

فشرده سازی تعریف
از آنجایی که ما یک محدودیت توکن داریم، ممکن است برخی جریان‌های طولانی به آن حد برسند، بنابراین من یک اسکریپت اداری نوشتم تا ابتدا اطلاعات غیر ضروری را از تعریف حذف کنم.

اسکریپت اداری


بیشتر خواندن

نوشته های مشابه

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

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا