在 Power Automate 設計工具中充分利用 Copilot

Power Automate Designer 中的 Copilot 幫助你用自然語言建立和修改流程。 本指南涵蓋目前有效的方法、無效的,以及如何獲得最佳效果。

Copilot 今天能做什麼

Copilot 在你給它明確且有範圍的調整流程指示時效果最佳。 它可以:

  • 在流程中加入動作:詢問 Copilot在特定點插入特定動作。 它能理解動作目錄並設定共用參數。
  • 修改現有動作:更改觸發器排程、更新條件、更換連接器或調整動作設定。
  • 解釋流程的作用:選擇一個流程,請Copilot一步步帶你走過邏輯。 這對於你從別人那裡繼承的工作流程特別有用。
  • 建議下一步:在添加觸發條件後,Copilot可以根據常見模式建議合乎邏輯的下一步行動。
  • Help with simple expressions:Copilot 可以寫出基本表達式,例如 formatDateTime()concat()、字串操作和簡單條件句。 它能有效處理單行語句。
  • 新增平行分支與錯誤處理:要求 Copilot 新增平行分支,其中包含失敗通知模式的設定後續執行設定。
  • 產生範圍區塊:Copilot 可以使用帶有 run-after 設定的 Scope 動作,將行動包裝在 try/catch 模式中。

Copilot 目前還做不到的事

坦白說明限制可以幫你省下時間。 Copilot 目前無法:

  • Debug runtime errors:Copilot 無法存取你流程的執行歷史、錯誤日誌或執行上下文。 它不知道為什麼某次執行會失敗。
  • Read Your Data:Copilot不會查詢你的SharePoint清單、Dataverse 表格、SQL 資料庫或任何即時資料來源。 它無法驗證欄位名稱是否存在或值是否正確。
  • Fix connection issues:過期的令牌、權限錯誤和閘道問題不在Copilot的範圍內。 這些需要手動重新驗證或執行管理員操作。
  • 可靠地修改複雜的巢狀邏輯:深度巢狀條件、多層級的 Apply to Each 或多分支的 Switch 語句,都可能產生意想不到的結果。 把這些請求拆成較小的請求。
  • 理解交叉流依賴性:如果你的流程呼叫子流程或依賴另一個流程的輸出,Copilot 會將每個流程單獨處理。
  • 產生複雜表達式:多功能巢狀表達式、XPath 查詢,或引用數步後動態內容的表達式,常常不正確或不完整。

備註

這些限制都是暫時的。 產品團隊正積極協助 Copilot 存取執行紀錄和錯誤上下文。

有效的提示模式

具體且單一用途的提示能獲得最佳效果。 以下是一貫有效的模式。

新增動作

  • 「在取得物品動作後新增一個條件,檢查狀態欄位是否等於『已批准』。」

  • 「在核准步驟後新增發送電子郵件(V2)動作。 將 To 欄位設為 RequestorEmail 變數,主旨為『您的請求已核准』。」

修改現有步驟

  • 「將觸發器改為在每週一上午9點(太平洋標準時間)執行。」

  • 「更新條件,也用 OR 操作符檢查優先權欄位是否為『高』。」

解釋流程

  • 「一步步解釋這個流動的效果。」

  • 「當 Apply to Each 上的條件是假的會發生什麼?」

處理錯誤

  • 「在 HTTP 動作中加入錯誤處理。 如果失敗,請寄電子郵件告訴我錯誤細節,然後以失敗終止流程。」

  • 「將 SharePoint 動作與失敗時執行並發佈至 Teams 管道的平行範圍裝合在一個範圍中。」

運算式

  • 「寫一個表達式,將今天的日期格式化為 YYYY-MM-DD。」

  • 「建立一個表達式,從檔案名稱欄位取得檔案副檔名。」

效果不佳的提示模式

這些提示風格通常效果不佳。 避開他們。

太模糊了

「修正我的流程。」

Copilot 不知道發生了什麼事。 它無法看到錯誤,而「修復」可以表示任何事情。 相反地,請直接告訴 Copilot 你想改變什麼。

請求偵錯運行時錯誤

  • 「為什麼我的流程在昨天下午 3 時失敗?」

  • 「除錯此錯誤:『請求的操作無效。』」

Copilot 無法存取設計器提供的執行歷史或錯誤日誌,但它可以從流程執行頁面協助排查流程執行的故障。 在本文中了解更多關於除錯的資訊,詳見 《何時使用外部 AI》

在一則訊息中輸入多步驟指令

「新增一個觸發器,以便在建立 SharePoint 項目時觸發,然後取得項目詳細資訊,檢查狀態是否已核准,寄信給經理,等待核准後,更新項目,並發佈至 Teams。」

將其分解為個別請求。 先給一個指令,確認結果,再給下一個。 Copilot 能穩定處理單步,但跨長鏈條會失去準確度。

詢問您的具體數據

  • 「我的 SharePoint list 有哪些欄位?」

  • 「我Dataverse聯絡表裡的電子郵件地址有效嗎?」

Copilot 無法查詢你的資料來源。 直接檢查你的資料,然後告訴 Copilot 要用哪些欄位名稱。

何時使用外部 AI

對於某些任務,通用的 AI 工具如今更有效。 隨著 Copilot 獲得更多背景資訊,情況可能會改變,但目前是:

使用外部 AI 除錯錯誤訊息:將失敗執行中的完整錯誤訊息複製並貼到 Copilot、GitHub Copilot 或其他工具中。 包括:

  • 錯誤訊息與狀態碼
  • 失敗的動作類型(HTTP、SharePoint、SQL 等)
  • 你預期會發生的事

外部 AI 工具對 API 錯誤代碼有廣泛了解,且常能立即找出根本原因。

使用外部 AI 處理複雜表達式:若需要結合多種功能的巢狀表達式,外部 AI 工具通常能產生更精確的結果。 貼上你正在處理的欄位,並描述想要的輸出。 然後把產生的表達式貼回 Power Automate。

提示

如需了解如何使用現成運算式程式庫,請參閱雲端流程運算式指南。 那篇文章涵蓋了許多常見模式,且不需要 AI 工具。

利用外部 AI 提供流程設計建議:描述你的業務流程並尋求架構建議。 外部工具可以建議一些模式,例如父子關係的流程、錯誤處理策略和重試邏輯。

針對連接器相關問題使用外部 AI:如果你需要知道 HTTP 請求主體的精確 JSON 格式,或 OData 濾波器語法用於SharePoint,外部 AI 工具具備深入的參考知識。

備註

這並不代表 Copilot 的品質。 這是範圍的反映。 Copilot 已針對上下文編輯流程進行優化。 外部工具優化以進行廣泛的知識檢索。 同時使用兩者。

改善效果的建議

  1. 具體說明:說出動作、欄位和數值。 「新增檢查 Status 是否等於 Approved 的條件」比「新增核准檢查」更好。

  2. 每則訊息一個要求:Copilot 在目的單一的明確指示下表現最佳。 加上動作,確認看起來對,然後繼續。

  3. 使用動作動詞:在提示詞中以「新增」、「變更」、「移除」、「解釋」或「移動」開始。這些操作直接對應Copilot能執行的操作。

  4. 請包含欄位名稱和數值:不要讓Copilot猜測。 如果你知道列叫 EmployeeEmail,就說出來。

  5. 存檔前檢視:存檔前務必確認Copilot產生了什麼。 打開它所建立的動作並驗證參數,尤其是動態內容的引用。

  6. 逐步迭代:逐步建立流程。 加上觸發器,驗證一下。 加入第一個動作,驗證它。 這樣能及早發現問題,也讓 Copilot 的語境保持完整。

  7. 使用 Copilot 的解釋功能驗證:Copilot 修改你的流程後,請它說明流程的功能。 將其描述與你的意圖做比較。 這可及時發現誤解,避免其演變成執行階段錯誤。

  8. 在使用 Copilot Edits 進行重大編輯前,先儲存您的流程:如果 Copilot 產生不合適的變更,您可以還原為上次儲存的版本。 把存檔當作檢查點。

提示

如果 Copilot 產生了意外的結果,請撤銷它,並嘗試用更具體的細節重新表述你的請求。 較短且聚焦的提示幾乎總是比冗長、多部分的指示更有效。

註:本文作者在 AI 協助下撰寫。 深入了解