Function(函式)
又稱:函式 · 函數 · method · def · 函式定義
一段有名字、可以重複使用的程式:你餵它輸入,它還你輸出。
你會在什麼時候遇到它
AI 的「工具」在程式裡就是一個函式,而模型能用的工具清單,本質上就是一串函式說明。看得懂「這個函式叫什麼名字、吃哪些參數、回傳什麼」,你才看得懂 agent 究竟能做什麼,以及它這次要求做的事合不合理。
打個比方
像一台自動販賣機:投幣口(輸入)固定、按鈕(參數)固定、取物口(回傳值)固定。你不必知道裡面怎麼運轉,只要知道投什麼會掉什麼。
最小範例
def get_weather(city):
"""回傳某個城市的天氣(這裡假裝查過氣象 API)。"""
return f"{city}:晴,26 度"
print(get_weather("台北")) # 台北:晴,26 度
print(get_weather("香港")) # 香港:晴,26 度def 後面是名字,括號裡是它要的輸入,return 是它交回來的輸出。給模型的「工具定義」就是把這三樣用文字描述一遍 —— 名字、參數、回傳什麼。所以函式怎麼取名字、說明怎麼寫,會直接影響模型有沒有挑對工具。
最常搞錯的地方
- 以為函式只是「一段被摺起來的程式碼」。它真正的價值是介面固定:只要名字跟輸入輸出不變,裡面怎麼改,呼叫它的地方都不用動。
- 以為模型「呼叫」了工具就代表事情做完了。模型只是回傳「我想呼叫 get_weather,參數是台北」;真正去執行那個函式的,是外面那層程式。