Package-level declarations

Types

Link copied to clipboard

Indicates that a class or method is part of a DSL for building AI agents.

Link copied to clipboard

A builder class for constructing an AIAgentEdge instance, which represents a directed edge connecting two nodes in a graph of an AI agent's processing pipeline. This edge defines the flow of data from a source node to a target node, enabling transformation or filtering of the source node's output before passing it to the target node.

Link copied to clipboard

Represents an intermediate stage in the construction of a directed edge between two nodes in an AI agent strategy graph. This class provides mechanisms to define conditions and transformations that dictate how data flows and is processed between the nodes.

Link copied to clipboard
open class AIAgentNodeBuilder<Input, Output>(inputType: KType, outputType: KType, execute: suspend AIAgentContextBase.(Input) -> Output) : BaseBuilder<AIAgentNodeBase<Input, Output>>

A builder class for constructing instances of AIAgentNodeBase with specific behavior and attributes.

Link copied to clipboard

A delegate for creating and managing an instance of AIAgentNodeBase.

Link copied to clipboard

Builder for a node that executes multiple nodes in parallel.

Link copied to clipboard

Context for merging parallel node execution results.

Link copied to clipboard

A builder class responsible for constructing an instance of AIAgentStrategy. The AIAgentStrategyBuilder serves as a specific configuration for creating AI agent strategies with a defined start and finish node, along with a designated tool selection strategy.

Link copied to clipboard
class AIAgentSubgraphBuilder<Input, Output>(val name: String? = null, inputType: KType, outputType: KType, toolSelectionStrategy: ToolSelectionStrategy, llmModel: LLModel?, llmParams: LLMParams?) : AIAgentSubgraphBuilderBase<Input, Output> , BaseBuilder<AIAgentSubgraphDelegate<Input, Output>>

Builder class for creating AI agent subgraphs with a defined tool selection strategy.

Link copied to clipboard

Abstract base class for building AI agent subgraphs.

Link copied to clipboard

A delegate that provides dynamic access to an instance of AIAgentSubgraph. This class facilitates constructing and associating a subgraph with specific start and finish nodes and a defined tool selection strategy upon access.

Link copied to clipboard
interface BaseBuilder<T>

A generic base interface for builders that enables the construction of an object of type T. This interface is typically used in DSL patterns, providing a fluent and structured way to build complex objects.

Link copied to clipboard

Marks a function as a transformation specific to edges within the AI agent's DSL to ensure its proper highlighting.

Link copied to clipboard
data class ParallelNodeExecutionResult<Output>(val output: Output, val context: AIAgentContextBase)

Represents the result of a parallel node execution, containing both the output value and the execution context.

Link copied to clipboard
data class ParallelResult<Input, Output>(val nodeName: String, val nodeInput: Input, val nodeResult: ParallelNodeExecutionResult<Output>)

Represents the completed result of a parallel node execution.

Functions

Link copied to clipboard

Creates a directed edge from this AIAgentNodeBase to another AIAgentNodeBase, allowing data to flow from the output of the current node to the input of the specified node.

Link copied to clipboard
inline fun <Input, Output> strategy(name: String, toolSelectionStrategy: ToolSelectionStrategy = ToolSelectionStrategy.ALL, init: AIAgentStrategyBuilder<Input, Output>.() -> Unit): AIAgentStrategy<Input, Output>

Builds a local AI agent that processes user input through a sequence of stages.