iT邦幫忙

2025 iThome 鐵人賽

DAY 15
2
自我挑戰組

攔截記憶碼:每日一小時記錄技術學習系列 第 15

Day 14 - semtools :LLM 的語義工具箱

  • 分享至 

  • xImage
  •  

攔截源頭

  • 發現管道:社群分享
  • 攔截 Github:semtools
  • 攔截原因:最近在玩 AI agent,最常遇到的問題就是「如何讓 LLM 安全又靈活地呼叫外部工具」。剛好看到 semtools,主打「Semantic Tools for LLMs」,而且還支援 LangChain 跟 LlamaIndex,看起來很對味。

技術初探

  • 官方定義:semtools is a collection of semantic tools designed to integrate seamlessly with LLMs, providing reusable, composable function calls for AI workflows.
  • 核心賣點:
    • 提供一組可直接使用的 semantic tools(像是 web search, code exec)
    • 無關框架,支援 LangChain、LlamaIndex
    • 可以快速擴展自訂工具
    • 與 LLM 的 function calling 完美契合
  • 適用場景:
    • 快速幫 LLM 加上「能力插件」
    • 建立 AI Agent,讓它能查詢網路、操作程式、甚至連 API
    • 不想被單一框架鎖死的情境

實戰使用

快速安裝

npm i -g @llamaindex/semtools

Hello World

# Parse some files
parse my_dir/*.pdf

# Search some (text-based) files
search "some keywords" *.txt --max-distance 0.3 --n-lines 5

# Combine parsing and search
parse my_docs/*.pdf | xargs search "API endpoints"

Using Semtools with Coding Agents

很多 Coding Agents(像 Claude-Code、Cursor、Gemini CLI 等)不只是能自動生成程式碼,其實還能處理檔案相關的任務。這時候如果加上 semtools,就能大幅強化它們的能力:

  • 解析 Agent 不支援的檔案格式(PDF、Word 等)
  • 在本地檔案中做語義搜尋
  • 把解析、搜尋與 CLI 指令串接成 pipeline

Agent 知識引導

CLAUDE.mdAGENTS.md 裡加上 semtools 的使用方式,確保 Agent 知道怎麼調用。

實際範例

假設有一個資料夾放了 900+ PDF 論文,可以先用 parse 解析:

parse ./papers

接著進入 Claude Code,直接問:

幫我整理 ACL 2023 論文中關於 LLM 評估的研究發現

Claude 就會自動呼叫 parse 和 search,從所有 PDF 裡抓出相關片段,再進行總結。整個過程約 4 分鐘,花費不到一美元,就能從 900 多篇論文裡得到結論。

Tips
  • 提前 parse 可以避免 Agent 等待時間過久
  • CLAUDE.md / AGENTS.md 文件越清楚,Agent 使用效果越好
  • 給 Agent 文件上下文(例如資料夾結構)會讓它更快找到重點

記憶碼摘要

技術:semtools
分類:AI Agent 工具庫
難度:⭐⭐⭐☆☆(1-5顆星)
實用度:⭐⭐⭐⭐☆(1-5顆星)
一句話:把 LLM 變成可調用外部工具的 Agent,不被框架綁死。
關鍵指令:pip install semtools / cargo install semtools
適用情境:需要讓 LLM 具備查詢、運算、API 調用與文件解析等能力時。

結語

semtools 不只是「AI function calling 的工具庫」,它更像是 LLM 的外掛商店。單用在 LangChain 或 LlamaIndex 已經很實用,但真正的威力是在結合 Coding Agents 的時候 —— 你就能把 Claude-Code 或 Cursor 當成「全能開發助理 + 文件研究員」。

接下來我想試試,把 semtools 和 公司內部文件 + 自訂 API 結合,讓 Agent 幫我查找專案知識,甚至直接幫我下指令。


上一篇
Day 13 - jq:JSON 處理瑞士刀
下一篇
Day 15 - Claude Agent SDK:打造你的專屬 AI Agent
系列文
攔截記憶碼:每日一小時記錄技術學習18
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言