Built In Functions and Tools
Last updated
Last updated
There are a few built in tools that ship with Aiimi Insight Engine. There are two types, server side tools and pure client side tools. Server side tools involve a call back to Aiimi Insight Engine to fetch data and render results. Pure client side tools render a response using a client side component. They do not send any data back to the LLM model.
This performs a search for data within Aiimi Insight Engine and posts the data back to the LLM.
searchStepId (string)
This defines the search step configuration to use.
size (number)
The number of results to return.
sort (object)
The field to sort on, specified with the field parameter.
Use the Boolean descending parameter to determine if we sort descending.
This performs an aggregation (sum, average, min, max) on data that is stored in the Aiimi Insight Engine repository.
It uses a dynamic chart component and not natural language to respond to the user.
fieldToAggregate (string)
The numeric field to perform calculations on.
aggregationType (string)
The mathematical operation to perform on the field.
Options:
average
- Calculate mean value
sum
- Add all values together
count
- Count number of records
min
- Find minimum value
max
- Find maximum value
chartType (string)
The visual format for displaying results.
Options:
bar
- Bar chart
pie
- Pie chart
radar
- Radar/spider chart
table
- Tabular data display
metric
- Single metric display
title (string)
A descriptive title for the aggregation.
Used to identify and label the aggregation in the user interface.
ignoreZero (Boolean)
Whether to ignore zero values on the fieldToAggregate.
groupBy (string)
Primary field to group results by.
groupBySecondary (string)
Secondary field for additional grouping level.
Creates nested groupings when used with groupBy.
This is the same as GetSimpleAggregation but it expects the 'add tool data' and 'call generative' options to be selected. This means the model will render a natural language response.
The chartType parameter will be ignored by the tool.
sourceIds (array)
Specifies which data sources to search within Aiimi Insight Engine.
Select one or more source relevant to your search query.
sourceId (string, required)
The source identifier for the data set.
This specifies which dataset to query.
queryString (string)
Free-text search terms to find relevant information.
Use simple keywords without field names or Boolean operators.
"steel fabrication costs" or "delivery schedule".
filters (object)
Apply specific term filters to narrow search results.
The key of the object will be the field to filter on.
You can then specify optional enum to constrain values.
numericRangeFilter (array)
Filter results based on numeric value ranges.
Each filter contains:
field
- The numeric field to filter on.
greaterThanOrEqualTo
- Minimum value (inclusive).
lessThanOrEqualTo
- Maximum value (inclusive).
dateRangeFilter (array)
Filter results based on date ranges.
Each filter contains:
field
- The date field to filter on.
from
- Start date in ISO format (inclusive).
to
- End date in ISO format (inclusive).
This can update file metadata and entities.
sourceId (string)
Identifies the data source of the file to be classified.
id (string)
Unique identifier of the specific document or object to classify.
fields (object)
Contains the metadata or entity fields to update for the document.
This is a dictionary where the keys are the fields, and the type is an array of strings.
This is a proxy tool that will attempt to execute the tool via the AIModelService. You never use 'RemoteTool' as the function name, use the name of the function as advertised by the AIModelService.
These tools do not make a call back to Aiimi Insight Engine and use client side components to render the result to a user.
This clears the results from the result context which means they do not get sent to the LLM model.
It helps you save on context space as an interaction with an LLM grows (i.e. the context grows).
This renders a client side relationship map (knowledge network). The parameters are defined in the example tool call and are not configurable.
This renders a client side table that contains the details for a result. It takes a single parameter, the result index (id).