PerchAI
運作方式

Flock

Perch 的實驗性多代理模式。它為困難任務規劃專屬工作者團隊,分階段執行,並讓檢查工作者在你看到結果前驗證結果。

Flock 是 Perch 的多代理模式。一般的一輪由一個模型完成任務,而一次 flock 是一個團隊:Perch 會為眼前的特定任務規劃一組專注的工作者,讓它們一起執行,並在結果交給你之前,讓檢查工作者審查。

它為困難、多部分的工作而設計,也就是單次處理還不夠的工作:審查分支是否有迴歸問題、稽核付款資料夾、梳理大型儲存庫並指出風險。對於小型、單一步驟的任務,一般的一輪較快,Flock 會在開始任何工作前拒絕這類任務。

實驗性功能

Flock 是實驗性功能。它在 Perch Terminal(桌面版與 CLI)中執行,不在網頁聊天中執行;一次執行比一般的一輪更久,因為整個團隊都在工作,而且驗證者會在你看到結果前審查。

開始執行

在 Perch Terminal 中,以 /flock 開始任何任務,後面接上你要完成的工作:

/flock review this branch for regressions and verify the tests

Perch 會規劃團隊,再串流顯示每個工作者的執行過程。你可以觀看 flock 組成、工作與完成,並看到清楚的工具呼叫次數。在桌面應用程式中按 Esc,或在 CLI 中按 Ctrl-C,隨時都能取消。

如何規劃 flock

Perch 會根據你的任務設計團隊,而不是套用固定範本。

  • 規劃者讀取任務,傳回由二到十個工作者組成的團隊,每個都有特定角色(「迴歸問題獵人」、「修補工作者」、「引用檢查者」)、範圍明確的目標、一組允許使用的工具,以及在執行流程中的位置。計畫是為你的任務建立,而不是從選單選出。
  • 確定性的備援機制會在規劃者無法執行時接手,例如你已登出或離線,或規劃者傳回無效內容時。它會從固定的十三種成熟角色中組成團隊。結果是一個安全、但較不客製化的 flock,而不是失敗的 flock。

兩種情況下,都不會直接信任原始計畫。在任何工作執行前,Perch 都會驗證工作者數量、寫入權限、工具存取權與所有其他數值,並將它們限制在允許範圍內。

團隊如何執行

工作者分階段執行;同一階段中,只要工作允許,就會平行執行:

探查。 工作者先閱讀並梳理資料,讓團隊其餘成員能根據實際存在的內容行動。

工作。 工作者執行核心任務,包括修補程式碼、撰寫區段或執行分析,每個都有自己專注的上下文與範圍有限的目標。

驗證。 檢查工作者審查團隊產出的內容。

彙整。 將結果整理成一份回答。

每個工作者都分配到範圍明確的一部分,並擁有自己的上下文,因此一個步驟不會干擾另一個步驟,大型任務也會分段進行,而不是塞進一個超載的要求。工作者會等待它所依賴的輸出;如果依賴項無法取得,就會略過該工作者,而不是交給它空白上下文。

工作如何自我檢查

驗證是 Flock 值得花額外時間的原因。檢查工作者會審查團隊的輸出,其發現絕不會被悄悄放過:

  • 如果檢查者發現沒有依據的陳述、缺少引用、矛盾或缺漏,草稿會經過一次範圍明確的修訂,再由同一個檢查者重新檢查一次。
  • 發現、重新檢查的判定與清楚的下一步會隨最終回答一併交付,讓你看到哪些內容受到質疑,以及是否已解決。
  • 部分結果會標示為部分結果。Flock 不會把未完成的執行包裝成已完成。

引用來源的草稿工作必須遵守來源依據規範:陳述會附上行內 [n] 標記,指回探查工作者實際找到的內容;任何沒有依據的內容都會標記為需要驗證,而不是任由它保留。

角色與呼號

每個工作者都有兩個名稱。它的角色(「迴歸問題獵人」)是模型工作時扮演的身分。它的呼號(「Eagle」、「Shawarma」、「Bell」)只用於呈現,方便你在串流顯示執行過程時,一眼分辨工作者。呼號絕不會出現在工作者的指示內,因此無法影響工作。在 CLI 中,一列會顯示為:

Regression Hunter · Eagle · running

上限與防護措施

Flock 在硬性上限內執行,這些上限由 Perch 強制執行,而不是要求模型遵守:

防護措施上限
每個 flock 的工作者數量2 到 10
可以寫入檔案的工作者數量2(當你明確接手時,最多 4)
實際經過時間預設 8 分鐘,硬性最高 10 分鐘
整次執行的工具呼叫總數160
每個工作者的迭代次數10

無論計畫如何,都遵守兩項規則:

  • 不允許遞迴。 flock 工作者不能啟動自己的 flock,也不能委派給更多代理。每個工作者都會移除協調工具。
  • 如實回報結果。 無法使用的模型會回報,不會假裝使用;未讀取的檔案會回報為未讀取;預算用完的執行會根據已蒐集的證據完成,並說明此情況。

Flock 不是什麼

  • 它無法在網頁聊天中使用。它需要只有 Perch Terminal 才有的本機檔案存取權。
  • 它不是即時的。如果你需要快速回答,請使用一般的一輪。
  • 它不是黑箱。每個工作者的角色、狀態與成本,在執行時都看得見。

Flock 所依據的單一代理基礎,請見操作代理與代理。引用如何驗證,請見引用。