simonw/llm

Access large language models from the command-line

解決的問題

LLM 提供了一個統一的命令列介面 (CLI) 與 Python 函式庫,用於與各種大語言模型 (LLM) 進行互動。它消除了為遠端模型(如 OpenAI、Claude 和 Gemini)與本地模型(如透過 Ollama 執行之模型)使用多種不同 API 或獨立工具的需求,讓使用者可以在同一個地方管理提示詞、金鑰與回應。

工作原理

該工具作為各種 LLM 提供商的封裝器。使用者可以安裝外掛來增加對不同模型的支援,透過內建的金鑰儲存管理 API 金鑰,並直接從終端機執行提示詞。它使用 SQLite 記錄提示詞與回應,提供持久的互動歷史。它還支援進階功能,例如使用模式進行結構化數據提取、工具執行,以及嵌入(embeddings)的生成與儲存。

適用對象

想要從終端機與多個 AI 模型進行互動的開發人員、資料科學家與進階使用者,想要透過 Shell 腳本自動化 LLM 任務,或是希望在不編寫樣板 API 程式碼的情況下將 LLM 能力整合到 Python 應用程式中的使用者。

亮點

  • 多模型支援:透過外掛支援 OpenAI、Anthropic、Google、Mistral 及本地模型。
  • llm chat:用於連續對話的互動式聊天模式。
  • SQLite 日誌記錄:自動儲存提示詞與回應以便後續檢索。
  • 結構化提取:使用模式從文本與圖像中提取結構化內容。
  • 嵌入支援:用於生成與儲存用於相似性搜尋之嵌入的工具。
  • 可擴充性:外掛系統允許新增模型、工具與範本載入器。

相關

  • 專案
  • 專案
  • 專案
  • 專案
  • 專案