Aiimi Insight Engine
User GuidesAiimi
  • Introducing Aiimi Insight Engine
  • Architecture
    • Overview and Key Concepts
    • Search Flows
      • Search Flow Types
      • Smart Filtering
      • Query and Prompt Classification
      • Search Algorithms
      • Extractive and Generative Models
    • Hosting Options
    • Architecture and How It Works
      • Agent Servers
        • Security Agent
        • Source Agent
        • Content Agent
        • Enrichment Agent
        • Job Agent
        • OCR Agent
        • Migration Agent
        • Tika Agent
      • Repository
        • Data Node
        • Proxy Node
        • Kibana Node
      • Gateway and User Interface
      • Document and Data Sources
    • Deployment Options
    • Security
      • User Security
      • Data and Document Security
      • Source System Security
      • Firewalling
      • Agent Servers
      • Repository
      • Gateway (Web Server)
      • Tools & Utilities
  • Installation
    • Elastic and Kibana Install (Windows)
    • Aiimi Insight Engine Installation (Windows)
      • Installation Security
      • Certificates in a Key Vault
      • SAR Configuration
      • CSOM Bridge Set Up
      • AI Studio
    • AI Services
      • Prerequisites
      • AI Enrichment Service
        • Installation and Setup
        • Enabling Enrichment Steps
        • Using AI Enrichment Steps
        • Performance and Concurrency
      • AI Model Service
        • Installation and Setup
        • Enabling Providers
        • Private Generative AI
        • Azure Open AI
        • Enabling AI History
        • HTML Cleaner Service
      • Configuration of Logging
      • Offline Set-up of Models
      • Using SSL
      • Running as a Service (Windows)
      • Using GPUs
      • AI and Semantic Search Set Up
        • Open & Closed Book AI
        • Semantic Search
          • Vectors for Semantic Search
          • Source Configuration
          • Sentence Transformer Models
          • Enrichment
          • Kibana
          • Final Search Flow
    • Email Threading Upgrade
  • Run Books
    • SharePoint Online Connector
  • Control Hub
    • Configurations
      • Config Management
      • Security Configurations
        • Security - General
        • Security - Source
          • Active Directory
          • Atlassian
          • Azure Active Directory
          • Builtin Security
          • Miro Security
          • Google Directory
          • Slack Security
        • Security - Sync
        • Security - Agents
        • Security - Scheduling
      • Source Configurations
        • Source - General
        • Source - Source
          • Alfresco Kafka
          • Azure Blob Storage
          • BBC Monitoring
          • Big Query Cataloguer
          • BIM360
          • CSV Data Loader
          • Confluence
          • Content Server
          • Data File Cataloguer
          • Document Store
          • DocuSign
          • Dropbox
          • Exchange 365
          • Filesystem
          • Google Bucket
          • Google Drive
          • Google Vault
          • Jira
          • JSON Data Loader
          • Livelink
          • Microsoft Teams
          • Mimecast
          • Miro
          • ODBC Data Loader
          • PowerBi Cataloguer
          • Reuters Connect
          • ShareFile
          • SharePoint
            • Azure Portal and Azure AD Authentication
            • Sensitivity Labels
          • SharePoint Legacy
          • SQL Server Cataloguer
          • Slack
          • Versioned Document Store
          • Websites
          • XML Data Loader
        • Source - Crawl
        • Source - Agents
        • Source - Schedule
        • Source - Advanced
      • Enrichment Configurations
        • Creating a Pipeline
          • General
          • Steps
            • AccessMiner
            • AI Classification
            • Anonymiser
            • CAD Extractor
            • Checksum
            • Content Retrieval
            • Copy
            • Data Rule Processor
            • Delete
            • Email Extractor
            • Entity Rule Processor
            • External Links
            • Geotag
            • Google NLP Extractor
            • Google Vision Extractor
            • Metrics Calculation
            • Microsoft Vision Extractor
            • OcrRest
            • Office Metadata
            • PCI Extractor
            • REST
            • Set Document Risk
            • Text Cleaner
            • Tika Text Extraction
            • Trie Entity Extractor
            • Update Metadata
          • Filters
          • Agents
          • Schedule
          • Advanced
      • OCR Engine
      • Job Configurations
        • General
        • Job
          • AutomatedSearchJob
          • Command Job
          • ElasticJob
          • Extended Metrics Job
          • File Extractor
          • GoogleVaultSAR
          • Google Drive Last Access Date
          • Nightly Events Processor Job
          • Notifications Processor Job
          • Portal Sync Job
          • Purge Job
          • Text Content Merge Job
        • Output
        • Agents
        • Scheduling
      • Migration Configuration
        • General
        • Filter
        • Metadata Mappings
        • Agents
        • Scheduling
        • Advanced
    • Credentials
    • Mappings
      • Entities
        • Manage Entity Groups
        • Create an Entity
        • Manage an Entity
      • Models
        • Create a New Model
        • Find a Model
        • Enable or Disable a Model
      • Vectors
      • Rank Features
    • Featured Links
    • AI Settings
      • Classifications
      • Class
      • Class Rules
      • AI Classification
    • User Settings
    • Stats
      • Data Views
    • Global Settings
      • General
      • Authentication
      • App Settings
      • Application Access
      • Thumbnails
      • Presets
      • Code of Conduct
      • Metrics
      • Viewer
      • SAR
        • Importing Data For A SAR
        • SAR Disclosure Document Storage
        • Getting SAR data from Google Vault
        • SAR Access
        • SAR File Status
      • Disclosure Portal
        • Disclosure Portal Set Up
        • SARs From The Portal
        • Email Delivery Settings
          • Delivery Settings
          • Brand Settings
          • Customise Emails
        • SMS Delivery Settings
        • Requestor Message Limit
        • Attachment Configuration
        • Password Configuration
        • File Scanner Configurator
      • Collections
      • Visualisations
        • Related Result Connections Diagram
        • Event Timeline
        • Timeline Lens Activity Chart
        • Relationship Map
      • Notifications
      • Map Lens
      • Theming
      • User Avatar
      • OData API
      • Uploads
      • Security
    • Search Settings
      • Search Relevancy
        • Core Settings
        • Makers Algorithm
        • Filename Boost Layer
        • Minimum Matching Terms Filter
        • Field Boost
        • Modified Date Boosting
        • Hit Highlighting
        • Why My Search Matched
        • Data Search Strategy
      • Bulk Search
        • Managing a Bulk Search
      • Search Flows
        • Create a Search Flow
          • General
          • Query Classification Step
          • Search Steps
          • Model Steps
      • Tools
        • Concepts
        • Import OOTB Tools
        • Built In Functions and Tools
        • Create and Edit Tools
      • Filtering
      • Search Performance
      • Related Results
  • AI Studio
    • Classifications
      • Classifications
      • Classification Rules
    • Jobs
  • Labels
  • API Guides
    • Insight API Guide
      • Swagger Documentation
      • Trying Some Endpoints
      • Search Filter
      • Hits / Items
      • Inspecting REST Calls
    • Data Science API Guide
      • REST Interface
        • Login
        • Datasets
        • Fields
        • Field Statistics
        • Search
        • Scroll
        • Update
      • Python Wrapper
        • Login
        • Datasets
        • Fields
        • Field Statistics
        • Search
        • Query Builders
        • Scroll
        • Scroll Search
        • Update Single Document
        • Bulk Update
    • Creating a Native Enrichment Step
      • Creating an Enrichment Step
        • Creating the Core Classes
        • Extending our Enrichment Step
        • Adding a Configuration Template
        • Adding the Enrichment Step
        • Creating an Enrichment Pipeline
      • Other Tasks
        • Entities, Metadata and Data
        • Accessing the Repository
      • Example Code
      • Troubleshooting
    • Creating a Python Enrichment Step
      • Creating an Enrichment Step
        • Running the Example from Command Line
        • Running the Example
      • Creating Your Own Step
      • Adding or Changing Entities, Metadata
  • Whitepapers and Explainers
    • From a Billion To One – Mastering Relevancy
    • Methods for Text Summarization
      • Application
      • Technology Methods
      • Commercial Tools
      • Key Research Centres
      • Productionisation
      • Related Areas of Text Analytics
      • Conclusion
      • References
Powered by GitBook
On this page
  • Interface Components
  • Basic Configuration
  • Function Definition
  • Tool Configuration Options
  • Configuration Best Practices
  • Validation and Testing
  • Troubleshooting
  • Maintenance
  • Regular Tasks
  • Version Control
  • Support and Documentation
  1. Control Hub
  2. Search Settings
  3. Tools

Create and Edit Tools

The Create and Edit Tool interface allows you to create, modify, and manage custom tools used by Aiimigo.

You can create multiple configurations of the same name for different scenarios. This allows you to control parameter values and improve tool calling accuracy.

Interface Components

Basic Configuration

ID Field

  • Purpose: Unique identifier for the tool.

  • Format: Use descriptive names with underscores (e.g., search_ai_demo).

  • Requirements: Must be unique across all tools.

  • Best Practice: Use clear, descriptive names that indicate the tool's function.

Function Name

  • Purpose: The underlying function that will be called (see list of valid tool types).

  • Format: Human-readable name (e.g., "Search").

  • Usage: This name appears in tool lists and user interfaces.

Description

  • Purpose: Brief explanation of what the tool does.

  • Best Practice: Keep concise but informative.

  • Example: "The AI Demo search call".

Enabled Toggle

  • Purpose: Controls whether the tool is available to use.

  • States:

    • ✅ Enabled (green) - Tool is active

    • ❌ Disabled (red) - Tool is inactive

Function Definition

The Function Definition contains the JSON schema that defines how the tool operates.

{
  "type": "function",
  "function": {
    "name": "Search_ai_demo",
    "description": "Performs a search to find relevant information to answer a users question. Use the makers_clear_water_inc sourceId for water related queries.",
    "parameters": {
      "type": "object",
      "properties": {
        "queryString": {
          "type": "string",
          "description": "The search query string. Just provide keywords that you want to search for. Do not provide the field name or anything else."
        },
        "sourceIds": {
          "description": "The source ids to search.",
          "items": {
            "enum": [
              "ai_demo",
              "makers_clear_water_inc"
            ],
            "type": "string"
          },
          "type": "array"
        },
        "size": {
          "type": "number",
          "description": "The number of results to return. If you do not pass this then the default number will be returned. This parameter should only be set if the user asks for a specific number of results to be returned."
        }
      },
      "required": [
        "queryString",
        "sourceIds"
      ]
    }
  }
}

Key Elements:

Function Object Structure:

  • type: Always set to "function".

  • function: Contains the main function definition.

Function Properties:

  • name: Internal function name this should match the Function Name field.

  • description: Detailed explanation of the function's purpose and usage.

  • parameters: Defines the input parameters the function accepts.

Parameters Structure:

  • type: Usually "object" for complex parameters.

  • properties: Defines each parameter the function accepts.

    • Each property should have:

      • type: Data type (string, number, boolean, etc.).

      • description: Clear explanation of what the parameter does.

Access Control Groups

  • Purpose: Restricts which user groups can access this tool.

  • Configuration: Start typing to search and select groups.

  • Best Practice: Only grant access to groups that need the functionality.

Tool Configuration Options

Add Tool Data

  • Purpose: Checkbox to pass the tool response to the LLM.

  • When to use: If the LLM model needs to know results from a tool call. In most cases you will want this enabled. There are some 'client side' tools that do not need to pass anything back.

Call Generative

  • Purpose: Checkbox to tell Aiimigo to post the results of tool calls back to the model.

  • When to use: If the model needs the tool call results to proceed. For example, you have performed a search or called called the aggregations tool.

Available Out of the Box Tools

  • Purpose: Dropdown to select a 'function name'. Listed here are the out of the box functions.

  • Usage: Use as starting points for common tools.


Configuration Best Practices

Naming Conventions

  1. IDs: Use lowercase with underscores (search_customer_data).

  2. Function Names: These need to match the underlying function name.

  3. Descriptions: Start with action verbs ("Performs", "Retrieves", "Creates").

Parameter Design

  1. Required vs Optional: Clearly define which parameters are required.

  2. Data Types: Use appropriate types (string, number, boolean, array, object).

  3. Descriptions: Provide clear guidance on parameter usage and format.

  4. Validation: Include format requirements and constraints.

Security Considerations

  1. Access Control: Always configure appropriate access control groups for tools that perform updates (i.e. UpdateFile).

  2. Parameter Validation: Ensure parameters are properly validated.

  3. Sensitive Data: Avoid exposing sensitive information in descriptions.

  4. Testing: Thoroughly test tools before enabling in production.


Validation and Testing

JSON Validation

  1. Use the "Validate JSON" button to check syntax.

  2. Use "Pretty Print JSON" to format the JSON properly.

  3. Ensure all brackets and quotes are properly closed.


Troubleshooting

Tool Not Appearing

  1. Check if the tool is enabled.

  2. Verify access control groups are properly configured.

  3. Ensure the user has appropriate permissions.

JSON Validation Errors

  1. Check for missing commas, brackets, or quotes.

  2. Verify parameter types match expected formats.

  3. Use the built-in validation tools.

Parameter Issues

  1. Ensure required parameters are clearly marked.

  2. Check parameter descriptions are clear and actionable.

  3. Verify data types are appropriate for the use case.

Performance Issues

  1. Review tool complexity and optimise if needed.

  2. Consider parameter validation to reduce processing.

  3. Monitor tool usage and response times.


Maintenance

Regular Tasks

  1. Review Access: Periodically audit the access control groups.

  2. Update Descriptions: Keep tool descriptions current and accurate.

  3. Monitor Usage: Track which tools are being used and how often.

  4. Performance Review: Check tool performance and optimise as needed.

Version Control

  1. Document changes when updating tools.

  2. Test updates in staging environments first.

  3. Maintain backups of working configurations.

  4. Consider versioning for major tool updates.


Support and Documentation

Internal Documentation

  • Maintain detailed documentation for any custom tools.

    • Include use cases and examples.

    • Document any limitations or known issues.

User Training

  • Provide training materials for end users.

    • Include examples of proper tool usage.

  • Create troubleshooting guides for common issues.

Change Management

  • Establish approval processes for tool changes.

  • Communicate updates to affected users.

  • Maintain change logs for audit purposes.

PreviousBuilt In Functions and ToolsNextFiltering

Last updated 1 day ago