AI News HubLIVE
站内改写

通過評估驅動開發迭代實現LLM可靠性

Dosu公司採用評估驅動開發(EDD)和LangSmith來構建可靠的LLM產品,監控生產性能,並自信地進行迭代。本文詳細介紹了Dosu的起源、早期挑戰、如何實施EDD以及利用LangSmith大規模監控和改進產品。

文章情報

工程師中級

要點

  • Dosu使用評估驅動開發(EDD)來確保LLM產品的可靠性,類似於測試驅動開發。
  • LangSmith的SDK易於集成,提供了細粒度的控制和可定製性,幫助Dosu監控所有活動。
  • 通過LangSmith的搜索功能,Dosu能夠識別故障模式並持續改進。

為甚麼重要

這條新聞值得關注,因為Dosu使用評估驅動開發(EDD)來確保LLM產品的可靠性,類似於測試驅動開發。

技術影響

可能影響模型選型、推理成本、產品能力和評測基準。

在構建生產級LLM產品時,可靠性是一個關鍵挑戰。由於LLM基於概率函數,確保其可靠性並不簡單。Dosu公司通過評估驅動開發(EDD)和LangSmith工具,成功實現了這一目標。

Dosu是一個AI工程助手,幫助開發、維護和支持軟件項目。它起源於作者作為開源軟件維護者的經歷,其中大量時間用於支持工作而非開發新功能。Dosu旨在承擔這些非編碼任務,讓開發者專注於編碼和功能交付。

在早期,Dosu團隊手動檢查每個響應,使用grep和print語句來識別改進點。隨着使用量增長,這種方法變得不可持續。因此,他們採用了EDD方法,通過定義評估(evals)作為基準,確保每次變更不會導致性能退化。

為了應對規模增長,Dosu升級了監控棧,選擇了LangSmith。LangSmith的SDK允許他們通過簡單的裝飾器(@traceable)快速集成,實現全量跟蹤。LangSmith提供了高級搜索功能,幫助他們識別故障模式,如用户反饋、情感分析、內部錯誤和響應時間異常。

通過LangSmith,Dosu能夠自動構建評估數據集,將生產流量中的失敗案例添加到評估中,然後針對這些評估進行迭代改進。這種工作流程形成了良性循環:LangSmith幫助Dosu改進,Dosu的改進又減輕了LangChain團隊的維護負擔。

未來,Dosu計劃進一步定製LangSmith,實現評估數據集的自動收集,使工程師能夠輕鬆基於對話主題、用户段等篩選數據。此外,Dosu已經識別出一些意想不到的故障模式,例如當用户分享數千行日誌或OpenAI嵌入的原始浮點值時,響應極其緩慢;還有一次Dosu被要求標記拉取請求,卻回應了關於音樂會的消息。這些案例都被納入評估集,驅動持續改進。Dosu與LangChain的合作形成了有趣的飛輪效應:LangSmith加速Dosu迭代,Dosu的改進降低LangChain的維護成本,使LangChain能投入更多資源到LangSmith開發,進而反哺Dosu。

EDD流程包括:創建新行為並附加初始評估,向用户發佈,監控生產結果並識別失敗模式,將失敗示例加入離線評估集,針對更新後的評估迭代,然後重新發布並重復。這一方法論確保了Dosu在大規模部署下仍能保持高質量。目前Dosu已安裝在數千個倉庫中,每天全天候生成響應,具備數十個子模塊智能處理不同場景。

LangSmith的集成極為簡便,僅需在函數上添加@traceable裝飾器即可實現代碼級跟蹤,將函數輸入、渲染的提示模板和LLM輸出整合在單個跟蹤中。其高級搜索支持按用户反饋、錯誤事件、響應延遲、負面情緒等條件篩選,幫助Dosu團隊快速定位異常行為。Dosu正致力於進一步自定義LangSmith,以自動從生產流量中構建評估數據集,使工程師能基於對話主題、用户細分、請求類別等輕鬆整理數據。