Interface GMITurnInput

Represents a single turn of input to the GMI. GMITurnInput

interface GMITurnInput {
    interactionId: string;
    userId: string;
    sessionId?: string;
    type: GMIInteractionType;
    content: string | Record<string, any> | ToolCallResult | ToolCallResult[] | Record<string, any>[];
    timestamp?: Date;
    userContextOverride?: Partial<UserContext>;
    taskContextOverride?: Partial<TaskContext>;
    metadata?: Record<string, any> & {
        options?: Partial<ModelCompletionOptions & {
            preferredModelId?: string;
            preferredProviderId?: string;
            toolChoice?: any;
            responseFormat?: any;
        }>;
        userApiKeys?: Record<string, string>;
        userFeedback?: any;
        explicitPersonaSwitchId?: string;
    };
}

Properties

interactionId: string
userId: string
sessionId?: string
content: string | Record<string, any> | ToolCallResult | ToolCallResult[] | Record<string, any>[]
timestamp?: Date
userContextOverride?: Partial<UserContext>
taskContextOverride?: Partial<TaskContext>
metadata?: Record<string, any> & {
    options?: Partial<ModelCompletionOptions & {
        preferredModelId?: string;
        preferredProviderId?: string;
        toolChoice?: any;
        responseFormat?: any;
    }>;
    userApiKeys?: Record<string, string>;
    userFeedback?: any;
    explicitPersonaSwitchId?: string;
}

Type declaration

  • Optional options?: Partial<ModelCompletionOptions & {
        preferredModelId?: string;
        preferredProviderId?: string;
        toolChoice?: any;
        responseFormat?: any;
    }>
  • Optional userApiKeys?: Record<string, string>
  • Optional userFeedback?: any
  • Optional explicitPersonaSwitchId?: string