Langchain 構建一個智能體程序的六步曲

**摘要:**學習如何構建一個智能體程序 - 從選擇真實的任務示例,到構建 MVP,再到測試質量和安全性,最終部署到生產環境中。

Langchain 2025 年 7 月 9 日。

1 前言

儘管似乎每家公司都在談論今年要構建智能體,但實際上這樣做的公司卻很少。讓想象力奔放地展開,想象智能體如何可以改變你的業務是很容易的,但許多團隊不確定從哪裏開始、如何取得進展以及如何設定期望。

在這個指南中,我們將介紹一個從想法到影響的框架,並以構建電子郵件智能體的實際案例加以說明。

建立智能體的過程的逐步圖解

2  步驟 1:定義智能體

選擇一些現實的並需要智能體的事物。

挑選一些你可以教給一個聰明實習生的東西。如果你的頂尖實習生即使有足夠的時間和資源也無法完成任務,那麼這個任務可能是不切實際的或者過於雄心勃勃。在激活專家模式之前,證明你能夠掌握基礎知識。

開始時,請提出 5-10 個任務的具體例子。這樣做有兩個目的:

首先,它驗證了您的想法範圍是否明確 - 不會太瑣碎或模糊。

第二,爲以後衡量績效提供了一個基準。

構建一個電子郵件智能體程序

在這一步,我們將定義我們的智能體需要處理的任務,這些任務可能包括:

l 重點處理來自關鍵利益相關者的緊急郵件

l 根據日曆可用性安排會議。

l 忽略垃圾郵件或不需要回復的電子郵件

l 根據公司文件回答產品問題。

避免的標記:

l 如果你不能提出具體的例子,那麼你的範圍可能太寬了。

l 當邏輯簡單、固定且已在其他地方實現時,使用智能體會比傳統軟件更好 (例如,智能體速度慢、費用高,並且有時會很挑剔)。如果傳統軟件能夠完成任務 - 就使用那個!

l 期待不存在的魔法(例如,連接不存在或尚未構建的 API 或數據集)。

3 步驟 2:設計 SOP 操作流程

撰寫一份詳細的標準操作流程(SOP),包括逐步說明,說明人類如何執行該任務或流程。

這一步驟有助於確認您選擇了一個範圍明確、合理的問題。它也揭示了您的智能體人可能需要處理的關鍵步驟、決策和工具,爲構建提供了基礎。

l 構建一個電子郵件智能體程序

l 對於我們的電子郵件智能體,一個逐步的流程可能如下所示:

l 分析電子郵件內容和發件人背景,以分類響應的優先級。

l 檢查日曆可用性;安排視頻會議。

l 根據電子郵件、發件人和時間安排情況起草一份回覆。

l 通過快速的人工審查和批准後發送電子郵件.

l 將這寫出來有助於確保任務的範圍適當,並呈現出我們的智能體需要處理的工具和邏輯。

4 步驟 3:使用提示構建 MVP

**選擇一個起點是很重要的。如果你的智能體是複雜的,試圖一次性完成所有工作是過於雄心勃勃的。**首先要按照 SOP 概述的智能體架構進行設計:它將如何流動,需要做出什麼決策,以及 LLM 推理在哪裏是必不可少的。

接着,通過專注於最關鍵的 LLM 推理任務(例如分類、決策),並創建一個能夠很好處理這些任務的提示,搭建一個 MVP。大多數智能體失敗是因爲 LLM 對任務的推理能力不夠強。在使用手動輸入數據讓一個單一提示起作用之後,可以幫助您在繼續構建完整智能體之前建立信心。像 LangSmith 這樣的提示工程工具可以幫助簡化這個流程,從管理提示版本,到在各種情況或數據集中測試,再到隨着迭代跟蹤性能隨時間變化。

保持簡單:

l 從手動輸入任何數據或上下文啓動(暫時擱置自動化)

l 依據你在第一步中列出的示例進行測試,以驗證在常見用例中的性能。

l 專注於正確進行 LLM 推理。

l 構建一個電子郵件智能體程序

在這個階段,我們首先確定並解決一個具有高槓杆效應的推理任務。

對於我們的電子郵件智能體,這可能意味着只專注於按緊急程度和意圖分類電子郵件(例如,會議請求、支持問題),因爲這是智能體的其餘部分所依賴的基礎步驟。

開始編寫一個核心提示,只需使用手動輸入,例如:

l" 我們能否在下週就 LangChain 的產品路線圖進行會面?"

l 發送者: " 傑夫 · 貝索斯 ", 標題: " 亞馬遜公司首席執行官 "

lOutput: 意圖 = " 會議請求 ",緊急程度 = " 高 "

一旦模型在你的測試案例中始終做到這一點,你就會相信核心邏輯是正確的,並且有一個堅實的基礎可以建立在上面。

5 步驟 4: 鏈接和編排

現在我們已經有一個可用的提示符,是時候將提示符與真實數據和用戶輸入連接起來了。

開始通過確定提示所需的上下文或數據,比如電子郵件內容、日曆可用性和產品文檔,並計劃如何以編程方式訪問它(例如,通過 API、數據庫或文件系統)。

**接下來,編寫編排邏輯來將正確的數據連接到您的提示中。**在簡單的情況下,這可能只意味着直接傳遞輸入。對於更復雜的工作流程,您可能需要控制邏輯來決定要查詢哪些數據源,何時調用它們以及如何在提示 LLM 之前組合它們的輸出。

構建一個電子郵件智能體程序

對於我們的電子郵件智能體,此步驟可能涉及與 Gmail API(用於讀取收件箱郵件)、Google 日曆 API(用於檢查空閒時間)以及 CRM 或聯繫數據庫(用於豐富發送者上下文)的集成。

我們將構建以下的編排邏輯:

l 一封新的電子郵件觸發了智能體。

l 智能體人從 CRM 或通過網絡搜索獲取發件人信息。

l 將完整的上下文傳遞到提示中,以確定緊迫性和是否需要回復。

l 如果需要安排會議,它會檢查日曆的空閒時間並提議時間。

l 智能體草擬了一份回覆。

l 人工審覈後,發送電子郵件。

6  第五步:測試與迭代

開始通過手動測試你在第一步中定義的示例來測試你的 MVP。目標是驗證你的智能體是否針對核心用例生成合理、準確的輸出。如果你的系統涉及多個 LLM 調用或步驟,使用像 LangSmith 這樣的工具建立跟蹤是有幫助的,可以可視化流程並調試每個階段的決策是如何制定的。

一旦手動測試穩定,擴展到自動化測試以確保一致性並捕捉邊緣情況。團隊通常會將示例加強到幾十個,以更好地瞭解智能體的優勢和劣勢。這也有助於在增加更多複雜性之前量化性能:

運行您的智能體程序通過編程方式運行所有示例(原始的 + 新的)。

定義自動化成功指標— 這強制明確您的智能體人期望的行爲。

有選擇地使用人工審覈,以發現指標可能忽略的問題。

構建一個電子郵件智能體程序

對於電子郵件智能體,我們希望在幾個關鍵領域定義和測試成功:

lTone and Safety: 迴應應該專業、尊重,不含幻覺或不當內容。

l 意圖與優先級檢測:根據寄件人和內容正確分類和確定郵件的優先級。

l 工具使用效率:智能體應僅觸發必要的工具(例如,如果不需要安排日程,則避免檢查日曆)。

l 草稿質量:建議的回覆應該清晰、相關且準確,基於輸入上下文。

7  步驟 6:部署,擴展和優化

一旦您的最小可行產品 (MVP) 可靠運行,開始擴大其範圍,添加新功能,更廣泛的使用場景,甚至多智能體工作流程。對於每個新功能或集成,從第 5 步開始重複測試過程,以確保不會破壞現有功能。

當準備就緒時,在用戶手中部署到生產環境。LangGraph 平臺允許您通過一鍵部署快速交付、擴展和管理您的智能體程序。

監控人們實際如何使用您的智能體。像 LangSmith 這樣的工具讓您可以實時跟蹤智能體的行爲,從而更容易發現成本的激增、準確性問題或延遲。實際使用往往與您最初的假設不同,這些見解可以揭示差距,呈現出意想不到的需求,並在下一次迭代過程中指導優先考慮的方向。

8 關鍵在於將發佈視爲迭代的開始,而不是開發的結束

構建一個電子郵件智能體程序

部署了我們的電子郵件智能體後,我們可能通過監控流量和常見用例發現未解決的用例。

這些新興的模式預示着擴大範圍的機會。從那裏,我們可以迭代地添加新的集成並更新我們的提示和編排邏輯 - 在進一步擴展之前始終通過測試和用戶反饋驗證每個新添加的內容。

9  結論

這個過程旨在幫助您構建基於明確用例、針對真實示例進行測試,並通過真實世界反饋塑造的智能體程序。這不僅僅是讓智能體程序運行,而是構建出實用、可靠並符合人們實際工作方式的東西。

**無論您是自動化電子郵件分類還是編排複雜的工作流程,這六個步驟都提供了從想法到影響的實用路徑。**但工作並不止於部署,最好的智能體是通過迭代構建的。

所以要從小處着手,保持以用戶爲中心的態度,不斷完善。

本文由 Readfog 進行 AMP 轉碼,版權歸原作者所有。
來源https://mp.weixin.qq.com/s/9NxZg1z_6TG7Y2rFHjchYw