Skip to main content

Tools

A tool is a function or operation that can be called directly or by a language model (LLMs). The Spice runtime has several tools available by default, allowing LLMs access to various parts of the runtime. Tools can also be added or configured by the user by declaring them in the tools section of spicepod.yaml.

For details about how to provide LLMs access to tools, see Language Model Tools.

Example

tools:
- name: arpanet
from: websearch
description: "Search the web for information."
params:
engine: perplexity
perplexity_auth_token: ${ secrets:SPICE_PERPLEXITY_AUTH_TOKEN }

For detailed specification on defining tools, see the Tools Spicepod Reference.

Available Tools​

NameDescriptionWithin auto
list_datasetsList all available datasets in the runtime.Yes
sqlExecute SQL queries on the runtime.Yes
table_schemaGet the schema of a specific SQL table.Yes
document_similarityRetrieve documents based on an input query.Yes
sample_distinct_columnsGenerate a synthetic sample of data with distinct values.Yes
random_sampleSample random rows from a table.Yes
top_n_sampleSample the top N rows from a table based on a specified ordering.Yes
memory:loadRetrieve all stored memories from the last time period.No
memory:storeStore information from LLM interaction(s) for future reference.No
websearchSearch the web for information.No

Tool Group​

TBD here or in LLM using tool.