Ollama 工具支援發佈

Ollama 現在支援工具呼叫 (tool calling),讓相容的模型能夠透過執行函數、存取 API 以及使用程式碼解釋器來與外部世界互動。這次更新讓本地模型能夠超越靜態文字生成,進而執行複雜的真實世界任務。

工具呼叫實作

Ollama 透過允許使用者經由 Ollama API 中的 tools 欄位提供可用工具列表來實作工具呼叫。當模型判斷需要使用工具來回答提示時,它會回傳 tool_calls 回應,而非標準的文字回覆。

為了完成整個流程,工具的輸出會透過分配為 tool 角色的訊息傳回給模型。這種機制讓模型能夠處理外部數據,並向使用者提供最終且有根據的答案。

支援的模型

透過 Ollama 可用的特定模型子集支援工具呼叫。建議使用者執行 ollama pull <model> 以確保擁有最新版本。支援的模型包括:

  • Llama 3.1
  • Mistral Nemo
  • Firefunction v2
  • Command-R +

OpenAI API 相容性

Ollama 的 OpenAI 相容端點現在支援工具。這讓開發者只需將 base_url 更新為本地 Ollama 實例(例如 http://localhost:11434/v1),即可將現有的基於 OpenAI 的工具呼叫實作轉換為使用 Llama 3.1 等本地模型。

未來發展藍圖

Ollama 已確定了工具支援未來改進的兩個主要領域:

  1. 串流工具呼叫 (Streaming Tool Calls):這將使系統能夠將工具呼叫串流回傳給應用程式,從而當請求多個工具時,能更快開始執行動作。
  2. 工具選擇 (Tool Choice):此功能將允許開發者強制模型使用特定的工具,而不論其內部的決策過程為何。

Sources

相關

  • 專案
  • Dispatch
  • Dispatch
  • Dispatch
  • Dispatch