ai-rag-pipeline
作者 inferen-sh使用 inference.sh CLI 建立結合網頁搜尋工具(Tavily、Exa)與大型語言模型(透過 OpenRouter 使用 Claude、GPT-4、Gemini)的 Retrieval Augmented Generation(RAG)流程。非常適合需要有依據、附上來源引用答案的研究型代理、查核工具與 AI 助理。
概覽
什麼是 ai-rag-pipeline?
ai-rag-pipeline 技能協助你透過 inference.sh(infsh)CLI,建立將即時網路搜尋與大型語言模型結合的 Retrieval Augmented Generation(RAG)工作流程。它提供一個簡潔的範本,用來:
- 使用 Tavily Search、Exa 等工具進行網路研究
- 將搜尋結果傳入 Claude、GPT-4 或 Gemini(透過 OpenRouter)等 LLM
- 得到有依據、具來源意識的答案,而不是毫無根據的猜測
在底層,ai-rag-pipeline 是一個對 shell 友善的模式,用來串接多個 infsh app run 呼叫,讓你能快速試作以 RAG 為核心的研究、問答與事實查核流程。
適合哪些人使用?
ai-rag-pipeline 特別適合以下情境使用:
- 你已經在用 inference.sh 從命令列協調各種 LLM 工具
- 你希望取得附引用來源的研究型答案或明確標示的網路背景脈絡
- 你正在打造必須維持最新資訊的 AI 研究代理 或 助理工作流程
- 你需要來自多個來源的事實查核或以網路為依據的摘要
特別適合熟悉 Bash、CLI,以及 JSON 輸入的開發者、資料/AI 研究者與進階使用者。
ai-rag-pipeline 解決什麼問題?
這個技能聚焦在常見的 RAG 使用情境:以可重複、可腳本化的方式,把搜尋與 LLM 結合起來。它可以幫助你:
- 從單一對話提示,進化到類管線(pipeline)的研究流程
- 使用 Tavily 或 Exa 拉取最新且相關的資訊
- 透過
infsh將內容送進 Claude、GPT-4、Gemini(經由 OpenRouter) - 產生可被檢視、稽核,且能在其他工具或代理中重複使用的答案
如果你想要一個使用自己工具和模型,類似 Perplexity 的工作流程,ai-rag-pipeline 提供了所需的基礎組件。
什麼情況下不適合用 ai-rag-pipeline?
如果符合下列狀況,建議考慮其他技能或作法:
- 你沒有使用 inference.sh CLI,或無法安裝它
- 你需要一個完整封裝的網頁應用或圖形介面(本技能是 偏向 CLI/bash 的設計)
- 你需要針對私有文件進行深入、領域特化的索引(本技能聚焦在即時網路搜尋模式,而非完整的向量資料庫架設)
若是要處理文件、知識庫或多代理的較高層自動化,可以把 ai-rag-pipeline 視為低階的 RAG 基礎組件,再與其他技能組合使用。
使用方式
先決條件
在安裝 ai-rag-pipeline 之前,請先確認:
- 你已安裝 inference.sh CLI(
infsh)。- 上游 repo 提供安裝說明,連結如下:
https://raw.githubusercontent.com/inference-sh/skills/refs/heads/main/cli-install.md
- 上游 repo 提供安裝說明,連結如下:
- 你能執行
infsh login並順利完成驗證。 - 你透過 inference.sh 已能存取你要用的工具(例如 Tavily、Exa、OpenRouter 支援的模型)。
安裝 ai-rag-pipeline 技能
在已啟用 Agent Skills 的環境中,使用以下指令安裝技能:
npx skills add https://github.com/inferen-sh/skills --skill ai-rag-pipeline
此指令會從 inferen-sh/skills repository 中的 tools/llm/ai-rag-pipeline 拉取 ai-rag-pipeline 定義,並讓你的代理或 workspace 可以使用。
安裝完成後,打開檔案檢視並查看:
SKILL.md– 核心說明與快速開始指南
快速開始:簡易搜尋 + 回答的 RAG 管線
SKILL 檔案中示範了一個使用 infsh CLI 的最小 RAG 流程。
- 登入 inference.sh:
infsh login
- 執行 Tavily 搜尋,並將結果存在 Bash 變數中:
SEARCH=$(infsh app run tavily/search-assistant --input '{"query": "latest AI developments 2024"}')
- 將該研究結果傳入 LLM(例如:透過 OpenRouter 的 Claude 模型)進行摘要:
infsh app run openrouter/claude-sonnet-45 --input "{
\"prompt\": \"Based on this research, summarize the key trends: $SEARCH\"
}"
這個模式展示了 ai-rag-pipeline 的核心概念:
- Retrieval(擷取) –
tavily/search-assistant進行網路研究 - Augmentation(增補) – 將搜尋輸出以
$SEARCH的形式嵌入提示中 - Generation(生成) – Claude 模型依據這些研究內容產生有根據的摘要
你可以視你的 inference.sh 設定支援情況,替換成其他搜尋工具(例如 Exa Search / Exa Answer)或其他模型(例如 GPT-4、透過 OpenRouter 的 Gemini)。
自訂 RAG 工作流程
當基本流程運作正常後,就可以依需求進一步調整:
1. 更改研究查詢內容
將 query 欄位調整為你的領域主題:
SEARCH=$(infsh app run tavily/search-assistant --input '{"query": "impact of LLMs on healthcare regulation"}')
2. 使用不同模型
把 openrouter/claude-sonnet-45 替換成你在 inference.sh 中設定的其他 LLM app,例如 GPT-4 或以 Gemini 為後端的路由(若在你的環境中可用)。
3. 調整輸出風格
修改 prompt 內容,以請求:
- 條列式重點摘要
- 優缺點清單
- 事實查核報告
- 附引用來源的學習筆記
例如:
infsh app run openrouter/claude-sonnet-45 --input "{
\"prompt\": \"Using the sources in $SEARCH, write a concise fact-check report. Highlight any conflicting claims and clearly list cited URLs.\"
}"
4. 包裝成可重用腳本
由於 ai-rag-pipeline 對 Bash 友善,你可以把這個模式寫成 shell script 重複使用:
research-topic.sh– 接收主題,回傳以網路為依據的摘要fact-check.sh– 接收一個主張,執行搜尋並產出事實查核報告briefing.sh– 針對特定領域,整理最新來源並形成簡報
接著你可以從代理或 CI 工作流程中呼叫這些腳本,自動化研究流程。
與 AI 代理與工作流程整合
ai-rag-pipeline 的設計是要搭配以下類型的代理框架使用:
- 可以呼叫 Bash(SKILL 允許
Bash(infsh *)) - 在產生答案前,需要一個 RAG 步驟 來抓取並奠基上下文
常見整合方式包括:
- AI 研究助理:在回答前自動呼叫
infsh app run tavily/... - 事實查核代理:在確認或否定主張之前,先跑完整搜尋管線
- 知識庫更新工具:定期抓取並摘要特定主題的最新新聞
透過標準化這個模式,你的代理可以共用同一套 RAG 邏輯,只需依需求更換查詢、工具或模型。
常見問題
用白話來說,ai-rag-pipeline 是什麼?
ai-rag-pipeline 是一個小巧、以 CLI 為核心的 RAG 範本,讓你的代理學會如何:
- 透過 inference.sh CLI 呼叫網路搜尋工具
- 取得並保存搜尋輸出
- 將結果送進 LLM,產生有依據且附來源的回應
它不是要當成完整框架,而是提供一個實用、容易客製化的模式給你延伸。
使用 ai-rag-pipeline 一定要搭配 inference.sh 嗎?
是的。這個技能是圍繞 inference.sh(infsh)CLI 設計的。快速開始與所有範例指令都依賴 infsh app run ...。如果你沒有使用 inference.sh,這個技能就無法直接套用。
ai-rag-pipeline 可以搭配哪些工具與模型?
只要你的 inference.sh 環境中已暴露這些工具與模型,SKILL 說明中提到的家族包括:
- 搜尋/擷取:Tavily Search、Exa Search、Exa Answer
- 透過 OpenRouter 的 LLM:各種 Claude 變體、GPT-4、Gemini(以及你帳號支援的其他 OpenRouter 路由)
請使用 infsh app list 查看你環境中實際可用的 app。
可以用 ai-rag-pipeline 做事實查核嗎?
可以。事實查核是本技能主要設計用途之一。典型流程如下:
- 先定義要查核的主張或問題
- 使用 Tavily 或 Exa 收集多個來源
- 請 LLM 比對各來源、標出衝突之處,並給出有理由支持的結論
由於答案是建立在實際擷取的內容之上,你可以檢視並驗證背後的來源。
這是不是一個含向量資料庫的完整 RAG 框架?
不是。ai-rag-pipeline 專注於透過 inference.sh 執行的即時網路搜尋式 RAG。它不會幫你設定資料庫、embeddings 或私有語料的索引管理。不過,如果你的環境已透過 infsh 暴露相關工具,你可以把這套模式與自己的索引層結合起來。
要如何除錯這條管線?
如果執行過程出現問題,可以:
- 個別執行每個
infsh app run ...指令,確認其輸出為有效 JSON - 使用 echo 或 log 顯示
$SEARCH變數內容,查看原始搜尋結果 - 簡化
prompt,並加入例如「show your reasoning and list the URLs you used」這類明確指示 - 參考上游的
SKILL.md,查看是否有更新的快速開始範例
我可以在哪裡更深入了解 RAG 概念?
SKILL 檔案中提供了 RAG 的三步驟簡介:Retrieval → Augmentation → Generation。若想看更深入的概念說明,也可以直接用 ai-rag-pipeline 來查:
SEARCH=$(infsh app run tavily/search-assistant --input '{"query": "introduction to retrieval augmented generation"}')
infsh app run openrouter/claude-sonnet-45 --input "{
\"prompt\": \"Using the following sources, explain RAG to a developer audience: $SEARCH\"
}"
這樣你就能直接用準備要部署的那套管線,來啟動自己對 RAG 的學習。
