Documentation

Build LLM-powered agents
with production-ready TypeScript

DSPy for TypeScript. Working with LLMs is complex—they don't always do what you want. DSPy makes it easier to build amazing things with LLMs. Just define your inputs and outputs (signature) and an efficient prompt is auto-generated and used. Connect together various signatures to build complex systems and workflows using LLMs.

15+ LLM Providers
End-to-end Streaming
Auto Prompt Tuning

AxOptimizerArgs

type AxOptimizerArgs = object;

Defined in: https://github.com/ax-llm/ax/blob/9a5a7060a48f9eef46efc680b0cdf6b42bff5df2/src/ax/dsp/optimizer.ts#L103

Properties

acquisitionFunction?

optional acquisitionFunction: 
  | "expected_improvement"
  | "upper_confidence_bound"
  | "probability_improvement";

Defined in: https://github.com/ax-llm/ax/blob/9a5a7060a48f9eef46efc680b0cdf6b42bff5df2/src/ax/dsp/optimizer.ts#L130


bayesianOptimization?

optional bayesianOptimization: boolean;

Defined in: https://github.com/ax-llm/ax/blob/9a5a7060a48f9eef46efc680b0cdf6b42bff5df2/src/ax/dsp/optimizer.ts#L129


checkpointInterval?

optional checkpointInterval: number;

Defined in: https://github.com/ax-llm/ax/blob/9a5a7060a48f9eef46efc680b0cdf6b42bff5df2/src/ax/dsp/optimizer.ts#L152


checkpointLoad?

optional checkpointLoad: AxCheckpointLoadFn;

Defined in: https://github.com/ax-llm/ax/blob/9a5a7060a48f9eef46efc680b0cdf6b42bff5df2/src/ax/dsp/optimizer.ts#L151


checkpointSave?

optional checkpointSave: AxCheckpointSaveFn;

Defined in: https://github.com/ax-llm/ax/blob/9a5a7060a48f9eef46efc680b0cdf6b42bff5df2/src/ax/dsp/optimizer.ts#L150


costTracker?

optional costTracker: AxCostTracker;

Defined in: https://github.com/ax-llm/ax/blob/9a5a7060a48f9eef46efc680b0cdf6b42bff5df2/src/ax/dsp/optimizer.ts#L147


dataAwareProposer?

optional dataAwareProposer: boolean;

Defined in: https://github.com/ax-llm/ax/blob/9a5a7060a48f9eef46efc680b0cdf6b42bff5df2/src/ax/dsp/optimizer.ts#L123


debugOptimizer?

optional debugOptimizer: boolean;

Defined in: https://github.com/ax-llm/ax/blob/9a5a7060a48f9eef46efc680b0cdf6b42bff5df2/src/ax/dsp/optimizer.ts#L163


earlyStoppingTrials?

optional earlyStoppingTrials: number;

Defined in: https://github.com/ax-llm/ax/blob/9a5a7060a48f9eef46efc680b0cdf6b42bff5df2/src/ax/dsp/optimizer.ts#L127


examples

examples: readonly AxExample[];

Defined in: https://github.com/ax-llm/ax/blob/9a5a7060a48f9eef46efc680b0cdf6b42bff5df2/src/ax/dsp/optimizer.ts#L106


explorationWeight?

optional explorationWeight: number;

Defined in: https://github.com/ax-llm/ax/blob/9a5a7060a48f9eef46efc680b0cdf6b42bff5df2/src/ax/dsp/optimizer.ts#L134


fewshotAwareProposer?

optional fewshotAwareProposer: boolean;

Defined in: https://github.com/ax-llm/ax/blob/9a5a7060a48f9eef46efc680b0cdf6b42bff5df2/src/ax/dsp/optimizer.ts#L126


initTemperature?

optional initTemperature: number;

Defined in: https://github.com/ax-llm/ax/blob/9a5a7060a48f9eef46efc680b0cdf6b42bff5df2/src/ax/dsp/optimizer.ts#L115


logger?

optional logger: AxLoggerFunction;

Defined in: https://github.com/ax-llm/ax/blob/9a5a7060a48f9eef46efc680b0cdf6b42bff5df2/src/ax/dsp/optimizer.ts#L156


maxBootstrappedDemos?

optional maxBootstrappedDemos: number;

Defined in: https://github.com/ax-llm/ax/blob/9a5a7060a48f9eef46efc680b0cdf6b42bff5df2/src/ax/dsp/optimizer.ts#L116


maxLabeledDemos?

optional maxLabeledDemos: number;

Defined in: https://github.com/ax-llm/ax/blob/9a5a7060a48f9eef46efc680b0cdf6b42bff5df2/src/ax/dsp/optimizer.ts#L117


minibatch?

optional minibatch: boolean;

Defined in: https://github.com/ax-llm/ax/blob/9a5a7060a48f9eef46efc680b0cdf6b42bff5df2/src/ax/dsp/optimizer.ts#L119


minibatchFullEvalSteps?

optional minibatchFullEvalSteps: number;

Defined in: https://github.com/ax-llm/ax/blob/9a5a7060a48f9eef46efc680b0cdf6b42bff5df2/src/ax/dsp/optimizer.ts#L121


minibatchSize?

optional minibatchSize: number;

Defined in: https://github.com/ax-llm/ax/blob/9a5a7060a48f9eef46efc680b0cdf6b42bff5df2/src/ax/dsp/optimizer.ts#L120


minImprovementThreshold?

optional minImprovementThreshold: number;

Defined in: https://github.com/ax-llm/ax/blob/9a5a7060a48f9eef46efc680b0cdf6b42bff5df2/src/ax/dsp/optimizer.ts#L128


minSuccessRate?

optional minSuccessRate: number;

Defined in: https://github.com/ax-llm/ax/blob/9a5a7060a48f9eef46efc680b0cdf6b42bff5df2/src/ax/dsp/optimizer.ts#L141


numCandidates?

optional numCandidates: number;

Defined in: https://github.com/ax-llm/ax/blob/9a5a7060a48f9eef46efc680b0cdf6b42bff5df2/src/ax/dsp/optimizer.ts#L114


numTrials?

optional numTrials: number;

Defined in: https://github.com/ax-llm/ax/blob/9a5a7060a48f9eef46efc680b0cdf6b42bff5df2/src/ax/dsp/optimizer.ts#L118


onEarlyStop()?

optional onEarlyStop: (reason: string, stats: Readonly<AxOptimizationStats>) => void;

Defined in: https://github.com/ax-llm/ax/blob/9a5a7060a48f9eef46efc680b0cdf6b42bff5df2/src/ax/dsp/optimizer.ts#L146

Parameters

ParameterType
reasonstring
statsReadonly<AxOptimizationStats>

Returns

void


onProgress()?

optional onProgress: (progress: Readonly<AxOptimizationProgress>) => void;

Defined in: https://github.com/ax-llm/ax/blob/9a5a7060a48f9eef46efc680b0cdf6b42bff5df2/src/ax/dsp/optimizer.ts#L145

Parameters

ParameterType
progressReadonly<AxOptimizationProgress>

Returns

void


optimizerEndpoint?

optional optimizerEndpoint: string;

Defined in: https://github.com/ax-llm/ax/blob/9a5a7060a48f9eef46efc680b0cdf6b42bff5df2/src/ax/dsp/optimizer.ts#L109


optimizerLogger?

optional optimizerLogger: AxOptimizerLoggerFunction;

Defined in: https://github.com/ax-llm/ax/blob/9a5a7060a48f9eef46efc680b0cdf6b42bff5df2/src/ax/dsp/optimizer.ts#L164


optimizerRetries?

optional optimizerRetries: number;

Defined in: https://github.com/ax-llm/ax/blob/9a5a7060a48f9eef46efc680b0cdf6b42bff5df2/src/ax/dsp/optimizer.ts#L111


optimizerTimeout?

optional optimizerTimeout: number;

Defined in: https://github.com/ax-llm/ax/blob/9a5a7060a48f9eef46efc680b0cdf6b42bff5df2/src/ax/dsp/optimizer.ts#L110


programAwareProposer?

optional programAwareProposer: boolean;

Defined in: https://github.com/ax-llm/ax/blob/9a5a7060a48f9eef46efc680b0cdf6b42bff5df2/src/ax/dsp/optimizer.ts#L122


resumeFromCheckpoint?

optional resumeFromCheckpoint: string;

Defined in: https://github.com/ax-llm/ax/blob/9a5a7060a48f9eef46efc680b0cdf6b42bff5df2/src/ax/dsp/optimizer.ts#L153


sampleCount?

optional sampleCount: number;

Defined in: https://github.com/ax-llm/ax/blob/9a5a7060a48f9eef46efc680b0cdf6b42bff5df2/src/ax/dsp/optimizer.ts#L135


seed?

optional seed: number;

Defined in: https://github.com/ax-llm/ax/blob/9a5a7060a48f9eef46efc680b0cdf6b42bff5df2/src/ax/dsp/optimizer.ts#L160


studentAI

studentAI: AxAIService;

Defined in: https://github.com/ax-llm/ax/blob/9a5a7060a48f9eef46efc680b0cdf6b42bff5df2/src/ax/dsp/optimizer.ts#L104


targetScore?

optional targetScore: number;

Defined in: https://github.com/ax-llm/ax/blob/9a5a7060a48f9eef46efc680b0cdf6b42bff5df2/src/ax/dsp/optimizer.ts#L142


teacherAI?

optional teacherAI: AxAIService;

Defined in: https://github.com/ax-llm/ax/blob/9a5a7060a48f9eef46efc680b0cdf6b42bff5df2/src/ax/dsp/optimizer.ts#L105


tipAwareProposer?

optional tipAwareProposer: boolean;

Defined in: https://github.com/ax-llm/ax/blob/9a5a7060a48f9eef46efc680b0cdf6b42bff5df2/src/ax/dsp/optimizer.ts#L125


validationSet?

optional validationSet: readonly AxExample[];

Defined in: https://github.com/ax-llm/ax/blob/9a5a7060a48f9eef46efc680b0cdf6b42bff5df2/src/ax/dsp/optimizer.ts#L138


verbose?

optional verbose: boolean;

Defined in: https://github.com/ax-llm/ax/blob/9a5a7060a48f9eef46efc680b0cdf6b42bff5df2/src/ax/dsp/optimizer.ts#L157


viewDataBatchSize?

optional viewDataBatchSize: number;

Defined in: https://github.com/ax-llm/ax/blob/9a5a7060a48f9eef46efc680b0cdf6b42bff5df2/src/ax/dsp/optimizer.ts#L124