Skip to content

v3.8.2 - LLM Tool Calling Support

Latest

Choose a tag to compare

@saddam213 saddam213 released this 06 Oct 21:25
b97d873

v3.8.2 - LLM Tool Calling Support

This build introduces the first iteration of LLM Tool Calling, allowing supported models to interact with external tools and resources to provide more capable and context-aware responses.

This release lays the foundation for a broader tool ecosystem in Amuse. The initial implementation includes a small set of core tools, with more planned as the tool-calling framework continues to evolve.

LLM Tool Calling

LLMs in Amuse use the Transformers Python backend, while tool definitions, execution, and integration are handled directly in .NET.

This architecture allows models to request tools while keeping the actual tool execution within Amuse.

Current Tools

  • DateTime - Retrieves the current date and time information.
  • Calculator - A simple demonstration tool for performing calculations.
  • WebSearch - Searches the web for information using multiple search providers.
  • WorldNews - Retrieves current world news from sources including Sky News, BBC, and The Guardian.
  • Application - Lists and launches Windows applications by name.
  • FileSearch - Searches the local filesystem for files.

Online Tool Calls

Tools can access resources from online services, significantly expanding what an LLM can do beyond its built-in knowledge.

For example, the WebSearch tool allows models to search the internet for current information and use those results when generating a response.

Web Search Providers

Amuse currently supports the following search providers:

  • DuckDuckGo — Free and used as a fallback provider.
  • Tavily — Free plan available. (recommended)
  • Mojeek — Paid search provider.
  • SearchApi — Paid search provider.

For the best results, the WebSearch tool recommends configuring one of the supported API providers. The Tavily free plan is a good option for getting started, while DuckDuckGo provides a convenient fallback without requiring an API key.

Chained Tool Calls

Some models are capable of chaining multiple tool calls together, allowing them to complete more complex tasks automatically.

For example, a model may:

  1. Search the web for information.
  2. Use the results to determine what additional information is needed.
  3. Perform another tool call.
  4. Combine the results into a final response.

This opens the door to more advanced workflows where the LLM can dynamically decide which tools it needs and in what order.

What's Next

This is the first iteration of tool calling in Amuse, and the current toolset is intentionally small.

The goal is to establish a solid foundation before expanding the available tools and capabilities. Future releases will continue building on this framework with additional tools and more advanced tool-calling workflows.

Full Changelog: v3.8.1...v3.8.2
GitHub Downloads (all assets, specific tag)