Sign up to save tools and stay up to date with the latest in AI
bg
bg
1

Large Language Models can run tools in your terminal with LLM 0.26

May 27, 2025 - simonwillison.net
LLM 0.26 introduces significant new features, notably support for tools, allowing users to integrate LLMs from OpenAI, Anthropic, Gemini, and local models with any tool represented as a Python function. This update includes tool plugins, enabling the installation of plugins that add new capabilities to models. Users can install tools via plugins, pass Python function code on the command line, and utilize tools in both async and sync contexts. The Python API now supports tools, and the `model.chain()` method can execute multiple tool calls, enhancing the model's functionality. The update also includes several tool plugins like simpleeval for mathematical calculations, QuickJS for JavaScript execution, and SQLite and Datasette for SQL queries.

The article discusses the challenges and motivations behind implementing tool support, highlighting the growing consensus among vendors on tool usage patterns. It mentions the potential for building "agents" using LLM 0.26 and outlines future plans, including improvements to tool execution logs, expanding tool support to more model plugins, and integrating Model Context Protocol (MCP) support. The author expresses excitement about the potential for plugins and plans to develop a tutorial for writing tool plugins. The update positions LLM as a versatile tool for extending the capabilities of language models through tool integration.

Key takeaways:

  • LLM 0.26 introduces support for tools, allowing LLMs to access any tool represented as a Python function, enhancing their capabilities significantly.
  • The update includes tool plugins, enabling users to install plugins that add new functionalities to the models they are using.
  • LLM can now execute tools in both async and sync contexts, and supports ad-hoc command-line tools with the --functions option.
  • The Python API for LLM also supports tools, allowing for more complex interactions and tool executions within Python scripts.
View Full Article

Comments (0)

Be the first to comment!