設(shè)計(jì)的智能體不聰明、不夠快?你需要一個(gè)語義路由器 原創(chuàng)
編輯 | 星璇
出品 | 51CTO技術(shù)棧(微信號(hào):blog51cto)
| 語義路由器是一種新模式,它使 AI Agent能夠?yàn)檎_的任務(wù)選擇正確的 LLM,同時(shí)減少其對(duì) LLM 的依賴。
新興的智能體Agent工作流程模式嚴(yán)重依賴 LLM 來執(zhí)行推理和決策。每個(gè)Agent在任務(wù)執(zhí)行期間多次調(diào)用 LLM。對(duì)于由多個(gè)Agent組成的工作流,調(diào)用次數(shù)呈指數(shù)級(jí)增長(zhǎng),從而導(dǎo)致成本和延遲。
有各種具有不同特性和功能的語言模型,例如小型語言模型、多模態(tài)模型和專門構(gòu)建的特定于任務(wù)的模型。Agent可以使用這些模型來完成工作流程。這降低了成本和延遲,并提高了整體準(zhǔn)確性。
語義路由器是一種模式,它使Agent能夠?yàn)檎_的任務(wù)選擇正確的語言模型,同時(shí)還可以通過本地決策減少對(duì)模型的依賴。在幕后,語義路由器使用存儲(chǔ)在向量數(shù)據(jù)庫中的嵌入向量將提示與一組現(xiàn)有短語(也稱為話語)匹配,以將它們映射到特定路由。路由可以是最適合任務(wù)的 LLM。因?yàn)檎Z義搜索決定了目標(biāo),所以我們稱之為語義路由器。
圖片
語義路由器使用與 RAG 管道中的檢索器相同的技術(shù)來執(zhí)行語義搜索以查找正確的匹配項(xiàng)。但它不是文本塊,而是基于輸入返回單個(gè)預(yù)定義的路由。
盡管將語義路由器實(shí)現(xiàn)為Agent和 LLM 之間的自定義層在技術(shù)上是可行的,但開源 Semantic Router 項(xiàng)目越來越受歡迎。
一、Semantic Router 是何神器?
Semantic Router,是一種創(chuàng)新的開源工具,由一家名為 Aurelio AI 的公司開發(fā),可改變基于 AI 的Agent的決策。該層通過利用語義向量空間更有效地路由請(qǐng)求,增強(qiáng)了 LLM 和Agent的功能。與依賴緩慢的 LLM 生成來做出工具使用決策的傳統(tǒng)方法不同,Semantic Router 利用語義含義的力量來做出快速準(zhǔn)確的選擇。
該項(xiàng)目提供與各種嵌入模型的無縫集成,包括 Cohere 和 OpenAI 等流行選項(xiàng),以及通過 HuggingFace 編碼器支持開源模型。該項(xiàng)目利用內(nèi)部?jī)?nèi)存向量數(shù)據(jù)庫,但如果想要使用 Pinecone 和 Qdrant 等主流向量數(shù)據(jù)庫引擎,也很容易輕松配置。語義路由器能夠根據(jù)用戶查詢做出決策,從而顯著縮短處理時(shí)間,通常從 5000 毫秒縮短到僅 100 毫秒。
憑借其 MIT 許可證,Semantic Router 是可擴(kuò)展的,允許開發(fā)人員自由地將其合并到他們的項(xiàng)目中。該工具解決了 AI 開發(fā)中的關(guān)鍵挑戰(zhàn),包括安全性、可擴(kuò)展性和速度,使其成為創(chuàng)建更高效、響應(yīng)更迅速的Agent工作流程的寶貴資產(chǎn)。
二、語義路由器的關(guān)鍵組件
1.路由和話語Utterances
路由構(gòu)成了 Semantic Router 決策過程的支柱。每個(gè)路由都代表一個(gè)潛在的決策或操作,并由一組 Utterances 定義,這些 Utterances 是映射到特定路由的示例輸入。系統(tǒng)會(huì)將這些 Utterances 饋送到每個(gè)路由的語義配置文件中。我們將新輸入與這些話語進(jìn)行比較,以找到最接近的匹配項(xiàng)。
在實(shí)踐中,這允許系統(tǒng)根據(jù)輸入的語義含義對(duì)輸入進(jìn)行分類和響應(yīng),而不是依賴 LLM 生成,因?yàn)?LLM 生成可能會(huì)很慢或容易出錯(cuò)。開發(fā)人員可以自定義路由以適應(yīng)特定應(yīng)用程序 — 無論是篩選敏感主題、管理 API 還是在復(fù)雜的工作流程中編排工具。
2.編碼器和向量空間
為了將輸入與預(yù)定義的話語進(jìn)行比較,語義路由器使用編碼器將文本轉(zhuǎn)換為高維向量。這些向量位于語義空間中,其中向量之間的距離反映了相應(yīng)文本的語義相似性。距離越短,輸入的語義相關(guān)性就越高。
Semantic Router 支持多種編碼方法,包括用于高性能 API 驅(qū)動(dòng)型工作流的 Cohere 和 OpenAI 編碼器,以及用于尋求開源、本地可執(zhí)行替代方案的用戶的 Hugging Face 模型。開發(fā)人員可以靈活地選擇不同的編碼器,從而根據(jù)其特定的基礎(chǔ)設(shè)施定制系統(tǒng),從而平衡性能、成本和隱私問題。
3.決策層
一旦輸入被編碼并與預(yù)定義的路由進(jìn)行比較,語義路由器就會(huì)使用 RouteLayer 做出決策。該層聚合路由和嵌入,并管理決策過程。它還支持混合路由,系統(tǒng)可以結(jié)合本地和基于云的模型來優(yōu)化性能。
4.本地 LLM 集成
對(duì)于希望保持對(duì)其 LLM 的完全控制或減少對(duì)外部 API 的依賴的開發(fā)人員,Semantic Router 通過 LlamaCPP 和 Hugging Face 模型提供對(duì)本地模型的支持。消費(fèi)類硬件(如運(yùn)行 Apple Metal 硬件加速的 MacBook 或 Microsoft Copilot+ PC)可以完全執(zhí)行路由決策和 LLM 驅(qū)動(dòng)的響應(yīng)。這種本地執(zhí)行模型不僅可以減少延遲和成本,還可以提高隱私和安全性。
5.可擴(kuò)展性
向工作流添加更多工具和智能體時(shí),可擴(kuò)展性成為一個(gè)問題。LLM 的上下文窗口有限,這意味著它們難以處理大量數(shù)據(jù)或上下文。語義路由器通過將決策與 LLM 解耦來解決這個(gè)問題,使其能夠同時(shí)處理數(shù)千個(gè)工具,而不會(huì)使系統(tǒng)過載。這種關(guān)注點(diǎn)分離使智能體能夠在不犧牲性能或準(zhǔn)確性的情況下進(jìn)行擴(kuò)展。
三、使用案例和場(chǎng)景
眾所周知,一個(gè)智能體需要同時(shí)管理多個(gè)工具、API 或數(shù)據(jù)集,這就特別適合 Semantic Router。在典型的工作流程中,路由器可以根據(jù)輸入快速確定要使用的工具或 API,而無需進(jìn)行完整的 LLM 查詢。這在虛擬助手系統(tǒng)、內(nèi)容生成工作流和大規(guī)模數(shù)據(jù)處理管道中特別有用。
例如,在虛擬助手中,Semantic Router 可以有效地將“安排會(huì)議”或“檢查天氣”等提示路由到適當(dāng)?shù)?API 或工具,而無需 LLM 參與每個(gè)決定。同樣,請(qǐng)求可以路由到經(jīng)過微調(diào)的 LLM,以響應(yīng)醫(yī)學(xué)或法律術(shù)語。這不僅可以減少延遲,還可以確保為用戶提供一致、可靠的體驗(yàn)。
語義路由器可用于評(píng)估是否應(yīng)將提示直接發(fā)送到在本地運(yùn)行的小型語言模型,或者是否必須通過調(diào)用在云中運(yùn)行的功能強(qiáng)大的 LLM 將其映射到函數(shù)及其參數(shù)。這在利用基于云的語言模型和本地語言模型的聯(lián)合語言模型的實(shí)現(xiàn)中尤其重要。
圖片
在智能體工作流時(shí)代,對(duì)高效、可擴(kuò)展和確定性決策系統(tǒng)的需求比以往任何時(shí)候都更加迫切。Semantic Router 通過利用語義向量空間的強(qiáng)大功能來做出快速、可靠的決策,同時(shí)仍允許在需要時(shí)與 LLM 集成,從而提供強(qiáng)大的解決方案。它的靈活性、速度和確定性使其成為希望構(gòu)建下一代 AI 系統(tǒng)的開發(fā)人員不可或缺的工具。
隨著 LLM 的發(fā)展和多樣化,Semantic Router 等工具對(duì)于確保Agent系統(tǒng)能夠執(zhí)行、擴(kuò)展和提供一致的結(jié)果至關(guān)重要。這將幫助開發(fā)人員找到在其工作流程中使用 AI 的新方法。
參考鏈接:??https://thenewstack.io/semantic-router-and-its-role-in-designing-agentic-workflows/??
本文轉(zhuǎn)載自??51CTO技術(shù)棧??,作者:星璇
