我們構建了自己的雲代理基礎設施
Harvey在過去一年從聊天產品轉向雲代理,以實現端到端的法律任務。由於現有託管運行時無法滿足多模型、零數據保留和成本控制的要求,Harvey自建了代理基礎設施。文章詳細闡述了這三個關鍵需求及其對法律行業的重要性。
在過去的一年裏,Harvey從一款聊天產品轉型為雲代理——從回答律師的問題到端到端地完成律師的任務,例如審查數據室並生成涵蓋數十萬份文檔的初步問題清單。當我們開始這項工作時,運行此類代理所需的基礎設施還不存在,因此我們自行構建了它。
前沿實驗室(如Anthropic的Claude託管代理和OpenAI的代理)以及雲提供商(如AWS、Microsoft Foundry和Google)現在開始推出託管代理運行時。它們令人印象深刻,我們與所有這些公司密切合作以塑造其發展方向。因此,有必要精確説明為什麼我們仍運行自己的代理:服務律師事務所和受監管企業帶來了一系列要求,而這些要求目前沒有一個託管運行時能滿足,並且在短期內也無法滿足。
主要考慮因素有三個:支持多模型、零數據保留以及成本控制。這些要求都不罕見,我們預計隨着時間的推移,尤其是雲提供商,將能解決這些問題。但每一個目前都是硬性障礙——第一個值得深入探討,因為大多數人低估了它即將變得多麼普遍。
律所不能鎖定單一模型
最明顯的原因是利益衝突。如果一家律所代理了某個模型提供商的客户,那麼該律所面臨着使用該提供商模型的商業壓力;當大客户自己的技術不是外部律所使用的技術時,關係就會受損。這本身就使得單一模型平台變得尷尬。但更尖鋭的問題在於保密性:如果客户自己構建了模型,他們不會允許外部律所通過競爭對手的模型處理敏感法律事務。隨着更多公司訓練自己的模型,以及實驗室擴展到更多行業,受此影響的律所數量會迅速增長。
如今,很容易將其視為少數律所和少數有衝突客户的問題。但情況不會一直這樣。幾年內,想要服務廣泛客户羣的律所將需要能夠運行任何模型,因為重要客户不可避免地會反對任何特定模型。多模型不僅僅是一個邊緣特性的功能;它正在成為代表科技公司的基本門檻。
衝突是硬性要求,但並非支持多模型的唯一原因。質量和成本優化日益關鍵。不同模型在不同任務上表現更優——我們的法律代理基準(LAB)顯示按執業領域和任務類型存在明顯差異——而且隨着開源模型的改進,這種差異正在擴大而非縮小。行業正在從“哪個模型最好?”轉向“對於這個特定任務,哪個模型效率最高?”要回答這個問題,必須訪問所有模型。
此外還有平台風險,代理使得這種風險比聊天更加嚴重。如果你承諾使用單一提供商的託管運行時,而該提供商的模型落後了,或者容量不足、降低了你的優先級、改變了定價或棄用了你依賴的功能,你將陷入困境。而且鎖定不再是模型本身,而是你的整個代理員工隊伍。你的團隊構建、調整並依賴的代理都運行在該提供商的運行時內,使用其格式和編排。你無法將它們遷移出去。對於將運營押注在代理上的律所來説,這是公司層面的風險,也是將運行時保持在自己控制之下的最佳理由。
這也是兩種託管運行時之間的分歧點。前沿實驗室的運行時將你鎖定在該實驗室的模型上——最大程度的鎖定。雲提供商的運行時支持模型靈活選擇,這是正確的方向,但它們往往在最新模型上落後於實驗室,並且仍然面臨冗餘和正常運行時間限制。兩者單獨都不足夠,因此我們與所有提供商合作並在它們之間進行路由。
構建這種路由是困難的部分。每個提供商暴露不同的代理框架——不同的工具調用格式、停止條件、流行為和失敗模式——以及不同的執行沙箱,針對一個模型調優的同一任務在另一個模型上表現不佳。我們構建了一個抽象層,在單一接口下標準化了框架、沙箱和行為差異,這樣對於其上的一切,模型選擇只是一個路由決策。
零數據保留是硬性要求
我們簽署的每一份律所合同,以及每一份企業合同,都要求零數據保留(ZDR)。這不是買方可能放棄的錦上添花;它是一個門檻,因為涉及的數據是特權且保密的,不能存放在第三方服務器上。前沿實驗室的託管運行時不提供ZDR,這意味着通過它們運行律所的事務將使該律所的客户數據保留在實驗室的基礎設施上。對於我們的客户來説,這完全不可接受。
理解ZDR的關鍵在於它不能事後添加。有一個誘人的捷徑——在運行期間存儲數據,然後調用刪除端點——但這不是零保留;而是保留後刪除,對於律所的目的而言,兩者不同。ZDR意味着設計運行時,使得客户數據默認不被寫入持久化應用存儲。代理沙箱在任務運行時仍然需要臨時工作磁盤,但該磁盤的生命週期與沙箱綁定,並在拆除過程中自動清理。這是運行時的一個架構屬性,而不是最終切換的設置。
代理使得這一點比聊天更難,原因貫穿整篇文章:代理是有狀態的。長時間運行的代理會累積工作記憶、中間文件、工具結果以及用於從中斷中恢復的檢查點——而託管運行時正是通過在雲端持久化所有這些來體現其價值。這種持久化狀態是客户數據處於他人環境中的靜態數據。自動狀態持久化和零保留是互斥的;你不能兩者兼得。
因為我們擁有運行時,代理的整個生命週期都在我們的安全邊界內運行。狀態侷限於會話並被清除,因此零保留保證覆蓋整個工作流程,而不僅僅是最終的模型調用。
成本正成為主要約束
在這三個考慮因素中,成本可能是最重要的,並且增長最快。我們的使用量正在急劇攀升,以規模化的方式作為代理運行最強大的模型極其昂貴。單個代理運行可以涉及大量模型和工具調用,因此樸素方法(將所有任務路由到最佳前沿模型)的每任務成本是不可持續的。越來越多與我們合作的律所不僅要求我們讓代理工作,還要求它們經濟實惠。
關鍵洞察是,對於大多數任務,你不再需要最大的模型。隨着模型的改進,越來越多的法律工作已經變得智能飽和:任務完全在小模型或開源模型的能力範圍內,而使用頂級前沿模型只是超支了任務不需要的能力。我們的LAB基準證實了這一點——在許多任務類型中,開源模型以一小部分成本達到前沿質量。目標已從尋找最佳模型轉變為找到足夠好、最便宜且最快的模型。
大規模做到這一點需要對模型路由和執行沙箱進行精細控制,而託管平台目前在這方面存在不足——它們沒有提供足夠的控制來積極優化。擁有運行時使我們能夠將每個任務路由到滿足質量閾值的最有效模型,包括我們自己託管的開源模型,並優化沙箱(文件加載方式、工作並行化方式、計算規模調整方式)以專門適應法律工作負載。
綜合效果可能很大:根據我們的經驗,相對於僅使用前沿模型的方法,成本降低了3-5倍,具體取決於模型和工作負載。這種優化水平對於在他人運行時之上構建的任何人都無法實現。正是這種差異使得為律所的完整文檔集(數十萬或數百萬文件)服務代理變得經濟可行,而不是一個失控的預算項目。
為未來構建
我們不期望永遠以目前的形式運行自己的代理基礎設施。許多差距將隨着時間的推移而縮小,我們認為尤其是雲提供商會達到目標。他們有強大的動力支持多模型路由、零保留和開源模型,我們正在與他們合作實現這一目標。我們構建自己的運行時是為了在它們到來時吸收這些改進,而不是為了永久繞開生態系統。當某個提供商能比我們更好地完成其中一部分時,我們希望使用它。
擁有運行時也是使法律特定層成為可能的原因,也是長期重要的原因。律所將需要多雲彈性和真正的數據駐地,包括將事務保留在特定司法管轄區內的能力。我們最大且最受監管的客户越來越希望主權部署:通過我們在其邊界內自行託管自己的雲代理基礎設施。他們需要衝突感知治理,以編碼特定事務甚至允許接觸哪些模型,以及每個代理所做工作的完整、可檢查記錄,用於工作產品和特權。這些都不是通用運行時能解決的法律行業問題,而所有這些都是使擁有這一層變得持久而非臨時的原因。還有更多——安全性和隔離,以及更長的受監管行業要求列表——但這些是最重要的。
我們構建自己的雲代理基礎設施的原因很簡單:我們的客户現在就需要生產中的代理,而滿足他們對多模型靈活性、零數據保留和成本的要求意味着擁有它們運行所處的運行時。依賴我們的律所不能等待生態系統跟上,而特定於法律工作的部分始終是我們必須正確處理的。