搜尋即程式碼:Perplexity 如何為 AI 代理時代重新發明搜尋

搜尋框,從來就不是為 AI 而生的
想想你平常怎麼使用搜尋引擎。你輸入一個問題,瀏覽幾條結果,點進一個連結,然後繼續。整個體驗是圍繞著「你」設計的——一個有眼睛、有注意力、有判斷力的人類。
現在想想一個 AI 代理。它不瀏覽,不掃描,它執行。在一項任務中,一個現代 AI 代理可能需要在幾分鐘內執行數百甚至數千次檢索操作——交叉比對來源、過濾雜訊、排列訊號、以機器速度綜合結論。 (1)
傳統的搜尋框根本從未為此而設計。而這個落差——搜尋「是什麼」與 AI 代理「需要什麼」之間的鴻溝——正是 Perplexity 全新的**搜尋即程式碼(Search as Code,SaC)**架構所要填補的。
什麼是搜尋即程式碼?
搜尋即程式碼是 Perplexity 於 2026 年推出的全新參考搜尋架構。核心概念十分優雅:不再將搜尋視為一個吐出排名結果的單體黑盒服務,SaC 將搜尋的各個構建模組作為可程式化的原語(primitives),透過開發者 SDK 直接暴露出來。
使用 SaC 的 AI 代理不只是「呼叫」搜尋引擎,而是撰寫程式碼來組裝一條客製化的搜尋管道——根據當前任務的需求,即時量身打造。 (1)
這就像是在餐廳點固定套餐,與擁有一個設備齊全的廚房之間的差別。傳統搜尋是固定菜單;搜尋即程式碼是那個廚房。
模型對檢索流程的每個步驟都獲得了直接、細粒度的控制:
- 檢索(Retrieval) — 要抓取什麼、從哪裡抓
- 排名(Ranking) — 如何評分與優先排序結果
- 過濾(Filtering) — 要捨棄什麼
- 扇出(Fan-outs) — 如何並行分支搜尋
- 渲染(Rendering) — 如何將資訊格式化以供模型使用
- 驗證(Verification) — 如何交叉核查與確認發現 (2)
這一切都在一個安全沙盒中執行,代理在其中生成 Python 程式碼,動態地協調整個搜尋流程。
為什麼傳統搜尋在代理需求下正在崩潰?
Perplexity 的研究團隊直言不諱:在代理時代,傳統搜尋管道正變得日益過時。原因如下。
固定管道無法應對多變任務
傳統搜尋是為一個可預測的模式而設計的:一個查詢進去,n 條排名結果出來。這對一個查食譜的人類來說效果極佳。但當 AI 代理面對這樣的任務時,它就徹底崩潰了:
「識別過去 90 天內主要廠商披露的所有高危 CVE,與我們的基礎設施堆疊交叉比對,並產出一份優先級修復報告。」
這個任務無法塞進一個搜尋呼叫。它需要數十個針對性查詢、來源驗證、去重和聚合——全部動態協調。 (3)
單體架構扼殺可組合性
現代 AI 系統建立在可組合性之上——將模組化工具像積木一樣拼接在一起的能力。單體搜尋服務與此背道而馳。它是一個龐大、不透明的單元,一步完成所有事情,中間什麼都不暴露。 (1)
無法取得中間狀態
SaC 最強大的功能之一,是讓代理在搜尋進行時能夠取得中間狀態——候選列表、排名訊號、部分結果。傳統搜尋將這一切隱藏起來,你只能得到最終輸出,別無其他。對於一個需要在任務執行中途進行推理和調整的代理來說,這是一個致命的限制。 (1)
架構解析:SaC 實際上如何運作?
Perplexity 的代理搜尋 SDK(Agentic Search SDK)是 SaC 背後的引擎。它以盡可能原子化的層級暴露搜尋組件,在不犧牲效能的前提下給予代理最大的靈活性。
以下是整個流程:
- 任務到達 — 代理接收一個複雜的開放性任務
- 程式碼生成 — 前沿模型生成定義客製化搜尋管道的 Python 程式碼
- 沙盒執行 — 程式碼在安全、隔離的環境中運行
- 原語組裝 — 代理按需組合檢索、排名、過濾和渲染步驟
- 即時優化 — 代理監控中間結果並動態調整管道
- 上下文交付 — 只有最相關、高訊號的資訊才會被傳回模型 (1)
這與把傳統搜尋 API 包裝在一個 shell 腳本裡有著根本性的不同。Perplexity 明確指出,SaC 並非只是把搜尋 API 塞進語言運行時——而是為代理使用而從頭重新設計搜尋堆疊。 (1)
真實成果:數字說話
SaC 不只是一個理論架構。Perplexity 對其進行了嚴格的基準測試,結果令人矚目。
在一個涉及從官方廠商公告中識別 200 多個高危 CVE 的測試案例中:
- SaC 達到了 100% 的準確率
- 與非 SaC 基準相比,Token 使用量減少了 85.1% (3)
在更廣泛的基準測試套件中,SaC 在 5 個基準測試中的 4 個上超越了其他代理搜尋系統,在專為評估大範圍研究任務而設計的全新基準 WANDR 上領先幅度最大。 (2)
效率提升尤為顯著。在代理工作流程中,Token 使用量直接轉化為成本和延遲。85% 的降幅不是邊際改善——那是一場變革。
搜尋即程式碼與更廣泛的「即程式碼」運動
SaC 並非孤立存在。它是一場長期運動的最新篇章——這場運動致力於讓複雜系統變得透明、可重現、可程式化:
| 範式 | 程式碼化的對象 |
|---|---|
| 基礎設施即程式碼(IaC) | 雲端伺服器與網路 |
| 配置即程式碼(CaC) | 應用程式環境與設定 |
| 策略即程式碼 | 合規與治理規則 |
| 搜尋即程式碼(SaC) | 資訊檢索管道 |
所有這些範式的共同主線:用版本控制、機器可執行的邏輯取代手動、不透明、人工驅動的流程。 (4)
由於 SaC 管道是程式碼,它們可以存儲在 Git 中、在 Pull Request 中審查、在 CI/CD 管道中測試,並在失敗時回滾。搜尋行為成為一個軟體製品——可審計、可改進、可在團隊間共享。
這對開發者和企業意味著什麼?
如果你正在構建 AI 驅動的產品,搜尋即程式碼對你的工作有直接影響:
對 AI 工程師
你現在可以將搜尋策略設計為一等公民的軟體組件。調試它。測試它。版本化它。在代理和團隊之間共享它。軟體工程的紀律終於適用於搜尋了。 (1)
對產品團隊
基於 SaC 構建的代理產品可以以更高的準確率和更低的成本處理複雜得多的任務。上述 CVE 範例只是搜尋真正可程式化後所能實現的預覽。 (3)
對內容創作者和 SEO 從業者
代理搜尋的興起重塑了可發現性。隨著 AI 代理成為網頁內容的主要消費者,結構化、語義化、機器可讀的內容將勝過關鍵字堆砌的頁面。針對代理優化,是新時代的 SEO。 (2)
值得正視的挑戰
任何範式轉移都不會一帆風順。SaC 帶來了真實的挑戰:
- 工程門檻 — 將搜尋管道寫成程式碼需要許多團隊尚不具備的 AI 工程專業知識
- 調試複雜性 — 非確定性的、代理生成的程式碼比傳統軟體更難調試
- 安全攻擊面 — 在沙盒中執行程式碼引入了必須謹慎管理的新攻擊向量
- 標準化 — 隨著 SaC 的成熟,業界將需要通用標準以確保不同搜尋 SDK 之間的互通性 (1)
這些都是可解決的問題,但它們是真實存在的。採用 SaC 的團隊應提前規劃。
更宏觀的圖景:為機器而建的網路
放眼更廣,搜尋即程式碼是一個更宏大趨勢的訊號:網路正在為機器消費而重新架構。
三十年來,網路是為人類而建的。頁面是為眼睛設計的,搜尋引擎是為服務人類注意力而設計的。即使是早期的 AI 搜尋系統,本質上也只是在人類搜尋上加了一層 AI。
SaC 標誌著與這一範式的真正決裂。當 AI 代理能夠撰寫自己的搜尋管道時,它們使用網路的方式已不再像人類——它們在編排網路。它們將整個網際網路視為一個可程式化的資料層。 (1)
這不是一個小小的轉變,這是智能與資訊之間關係的全新形態。
結語:搜尋的未來,寫在程式碼裡
搜尋即程式碼是當前 AI 領域最具影響力的架構理念之一。透過將搜尋從一個固定服務轉變為可組合、可程式化、可版本化的系統,Perplexity 給了 AI 代理一直需要卻從未擁有的東西:對如何尋找和處理資訊的真正掌控。
搜尋框不會消失。但搜尋的未來——那種驅動自主代理、複雜研究工作流程和真實世界 AI 應用的搜尋——將被寫在程式碼裡。
而那段程式碼,已經在運行了。
參考資料
- Perplexity AI Research — Rethinking Search as Code Generation — research.perplexity.ai
- Reddit / r/AIGuild — Search Is Becoming Programmable for AI Agents — reddit.com/r/AIGuild
- Zeniteq — Perplexity Search as Code Lets AI Agents Write Their Own Search Pipelines — zeniteq.com
- DevTalk Forum — Rethinking Search as Code Generation – In The News — forum.devtalk.com
標籤:搜尋即程式碼、SaC、Perplexity AI、AI 代理、代理搜尋、大型語言模型、AI 架構、開發者工具、未來搜尋
準備好構建代理式搜尋系統了嗎?
需要協助設計可程式化搜尋管道、代理式檢索架構或生產級 AI 代理工作流程?聯繫我們,獲取搜尋即程式碼與代理式 AI 實施的專家建議。