Class AiToolDefinition

java.lang.Object
com.kingsrook.qqq.backend.core.actions.ai.AiToolDefinition

public class AiToolDefinition extends Object
Definition of one AI tool, as advertised to a model: its wire name, a description, its kind, and a strict JSON Schema for its input (an object schema with additionalProperties=false and a required list). Definitions are the same for every user (permissions are applied when a tool runs, not by changing the advertised list), so they can sit in a cached prompt prefix.
  • Constructor Details

    • AiToolDefinition

      public AiToolDefinition()
  • Method Details

    • getName

      public String getName()
      Getter for name
    • setName

      public void setName(String name)
      Setter for name
    • withName

      public AiToolDefinition withName(String name)
      Fluent setter for name
    • getDescription

      public String getDescription()
      Getter for description
    • setDescription

      public void setDescription(String description)
      Setter for description
    • withDescription

      public AiToolDefinition withDescription(String description)
      Fluent setter for description
    • getKind

      public AiToolKind getKind()
      Getter for kind
    • setKind

      public void setKind(AiToolKind kind)
      Setter for kind
    • withKind

      public AiToolDefinition withKind(AiToolKind kind)
      Fluent setter for kind
    • getStrict

      public Boolean getStrict()
      Getter for strict
    • setStrict

      public void setStrict(Boolean strict)
      Setter for strict
    • withStrict

      public AiToolDefinition withStrict(Boolean strict)
      Fluent setter for strict
    • getInputSchema

      public Map<String,Object> getInputSchema()
      Getter for inputSchema
    • setInputSchema

      public void setInputSchema(Map<String,Object> inputSchema)
      Setter for inputSchema
    • withInputSchema

      public AiToolDefinition withInputSchema(Map<String,Object> inputSchema)
      Fluent setter for inputSchema