Class Autonomy

  • All Implemented Interfaces:

    @Service() 
    public final class Autonomy
    
                        

    Adds autonomy to an AgentPlatform, with the ability to choose goals and agents dynamically, given user input. Then calls the AgentPlatform to execute.

    • Method Detail

      • chooseAndAccomplishGoal

        @JvmOverloads() final AgentProcessExecution chooseAndAccomplishGoal(ProcessOptions processOptions, GoalChoiceApprover goalChoiceApprover, AgentScope agentScope, Map<String, Object> bindings, GoalSelectionOptions goalSelectionOptions, BindingsFormatter bindingsFormatter)

        Choose a goal based on the user input and try to achieve it. Open execution model. May bring in actions and conditions from multiple agents to help achieve the goal. Doesn't need reified types because we don't know the type yet.

        Parameters:
        processOptions - process options
        goalChoiceApprover - goal choice approver allowing goal choice to be rejected
        agentScope - scope to look for the agent
        bindings - any bindings to pass to the agent process.
        goalSelectionOptions - options for goal selection, such as confidence cut-off and multi-goal selection, if we want customization.
        bindingsFormatter - formatter to extract intent string from bindings for goal ranking.
      • chooseAndAccomplishGoal

        @JvmOverloads() final AgentProcessExecution chooseAndAccomplishGoal(ProcessOptions processOptions, GoalChoiceApprover goalChoiceApprover, AgentScope agentScope, Map<String, Object> bindings, GoalSelectionOptions goalSelectionOptions)

        Choose a goal based on the user input and try to achieve it. Open execution model. May bring in actions and conditions from multiple agents to help achieve the goal. Doesn't need reified types because we don't know the type yet.

        Parameters:
        processOptions - process options
        goalChoiceApprover - goal choice approver allowing goal choice to be rejected
        agentScope - scope to look for the agent
        bindings - any bindings to pass to the agent process.
        goalSelectionOptions - options for goal selection, such as confidence cut-off and multi-goal selection, if we want customization.
      • chooseAndAccomplishGoal

        @JvmOverloads() final AgentProcessExecution chooseAndAccomplishGoal(ProcessOptions processOptions, GoalChoiceApprover goalChoiceApprover, AgentScope agentScope, Map<String, Object> bindings)

        Choose a goal based on the user input and try to achieve it. Open execution model. May bring in actions and conditions from multiple agents to help achieve the goal. Doesn't need reified types because we don't know the type yet.

        Parameters:
        processOptions - process options
        goalChoiceApprover - goal choice approver allowing goal choice to be rejected
        agentScope - scope to look for the agent
        bindings - any bindings to pass to the agent process.
      • chooseAndAccomplishGoal

        @JvmOverloads() final AgentProcessExecution chooseAndAccomplishGoal(GoalChoiceApprover goalChoiceApprover, AgentScope agentScope, Map<String, Object> bindings)

        Choose a goal based on the user input and try to achieve it. Open execution model. May bring in actions and conditions from multiple agents to help achieve the goal. Doesn't need reified types because we don't know the type yet.

        Parameters:
        goalChoiceApprover - goal choice approver allowing goal choice to be rejected
        agentScope - scope to look for the agent
        bindings - any bindings to pass to the agent process.
      • chooseAndRunAgent

         final AgentProcessExecution chooseAndRunAgent(String intent, ProcessOptions processOptions)

        Choose an agent based on the user input and run it. Closed execution model: Will never mix actions and goals from different agents. Doesn't need reified types because we don't know the type yet.

      • createGoalAgent

         final Agent createGoalAgent(Object inputObject, AgentScope agentScope, Goal goal, Boolean prune)

        Open mode. Create an agent to accomplish this goal from the given user input

        Parameters:
        inputObject - any input object
        agentScope - scope to look for the agent
        goal - the goal to accomplish
        prune - whether to prune the agent to only relevant actions