clwoz-models
Version:
Models for ConversationLearner
71 lines (59 loc) • 2.07 kB
text/typescript
/**
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License.
*/
import { Memory } from './Memory'
import { ScoreInput, ScoreResponse } from './Score'
import { TrainExtractorStep, TrainScorerStep, LogicAPIError } from './TrainDialog'
import { EntityBase } from './Entity'
import { ExtractResponse } from './Extract'
import { TeachResponse } from './Teach'
import { AppList } from './App'
import { CLChannelData } from './CLChannelData'
export const CL_USER_NAME_ID = 'CLTrainer'
export const MEMORY_KEY_HEADER_NAME = 'x-conversationlearner-memory-key'
export const BOT_CHECKSUM_HEADER_NAME = 'x-conversationlearner-bot-checksum'
/** Indicates whether END_SESSION was called on the running Session */
export enum SessionEndState {
/** Session ended because END_SESSION activity has been called */
COMPLETED = 'completed',
/** Session ended because of timeout or new session started w/o END_SESSION activity */
OPEN = 'open'
}
export enum ScoreReason {
// Action has been masked
NotAvailable = 'notAvailable',
// Action can't be scored because it hasn't been trained yet
NotScorable = 'notScorable',
// Score has not yet been calculated
NotCalculated = 'notCalculated'
}
export interface UIScoreInput {
trainExtractorStep: TrainExtractorStep | null
extractResponse: ExtractResponse
}
export interface UIExtractResponse {
extractResponse: ExtractResponse
memories: Memory[]
}
export interface UIPostScoreResponse {
teachResponse: TeachResponse
isEndTask: Boolean
memories: Memory[]
}
export interface UIScoreResponse {
scoreResponse?: ScoreResponse
scoreInput?: ScoreInput
memories?: Memory[]
extractConflict?: ExtractResponse | null
botAPIError?: LogicAPIError | null
}
export interface UITrainScorerStep {
trainScorerStep: TrainScorerStep
clData: CLChannelData
entities: EntityBase[]
}
export interface UIAppList {
appList: AppList
activeApps: { [appId: string]: string } // appId: packageId
}