Interface: RouteConfig<TInput, TOutput>
Defined in: packages/core/src/pipeline/types.ts:271
Configuration for routing step.
Example
const config: RouteConfig<BlogPost, ProcessedPost> = {
classifier: contentClassifier,
routes: {
article: processArticle,
tutorial: processTutorial,
review: processReview
},
routeField: 'type',
defaultRoute: 'article'
};
Type Parameters
TInput
TInput
Input type for classifier and routes
TOutput
TOutput
Output type from route processors
Properties
classifier
classifier:
Processable<TInput,any> | ((input) =>any)
Defined in: packages/core/src/pipeline/types.ts:282
Classifies the input and returns an object carrying routeField.
Processable, not Baleybot, for the reason spelled out on
MapBotConfig.bot: Baleybot has private fields, so it is nominally
typed, and naming it here rejected every other primitive that classifies
perfectly well at runtime — a pipeline, a graph, a conditional(), a
ChatBot, or a plain function. route() never called a Baleybot-only
method; it has always put this through asProcessable.
defaultRoute?
optionaldefaultRoute?:string
Defined in: packages/core/src/pipeline/types.ts:293
Fallback route if classification doesn't match any route key
passClassifierOutput?
optionalpassClassifierOutput?:boolean
Defined in: packages/core/src/pipeline/types.ts:296
Pass classifier output to route processor instead of original input
routeField?
optionalrouteField?:string
Defined in: packages/core/src/pipeline/types.ts:290
Field in classifier output to use for routing (default: 'type')
routes
routes:
Record<string,Processable<TInput,TOutput>>
Defined in: packages/core/src/pipeline/types.ts:287
Map of route keys to processors