@microsoft/botbuilder-m365
Version:
M365 extensions for Microsoft BotBuilder, Alpha release.
62 lines • 2.63 kB
TypeScript
/**
* @module botbuilder-m365
*/
/**
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License.
*/
import { PredictedCommand, PredictionEngine } from './PredictionEngine';
import { TurnState } from './TurnState';
import { DefaultTurnState } from './DefaultTurnStateManager';
import { TurnContext } from 'botbuilder';
import { Configuration, ConfigurationParameters, OpenAIApi, CreateCompletionRequest } from 'openai';
import { AxiosInstance } from 'axios';
import { PromptTemplate } from './PromptParser';
export interface OpenAIPromptOptions {
prompt: PromptTemplate;
promptConfig: CreateCompletionRequest;
conversationHistory?: OpenAIConversationHistoryOptions;
logRequests?: boolean;
}
export interface OpenAIPredictionOptions extends OpenAIPromptOptions {
topicFilter?: PromptTemplate;
topicFilterConfig?: CreateCompletionRequest;
}
export interface OpenAIPredictionEngineOptions {
configuration: ConfigurationParameters;
basePath?: string;
axios?: AxiosInstance;
prompt?: PromptTemplate;
promptConfig?: CreateCompletionRequest;
topicFilter?: PromptTemplate;
topicFilterConfig?: CreateCompletionRequest;
conversationHistory?: OpenAIConversationHistoryOptions;
oneSayPerTurn?: boolean;
logRequests?: boolean;
}
export interface OpenAIConversationHistoryOptions {
addTurnToHistory?: boolean;
userPrefix?: string;
botPrefix?: string;
maxLines?: number;
maxCharacterLength?: number;
lineSeparator?: string;
includeDoCommands?: boolean;
}
export declare class OpenAIPredictionEngine<TState extends TurnState = DefaultTurnState> implements PredictionEngine<TState, OpenAIPredictionOptions> {
private readonly _options;
private readonly _configuration;
private readonly _openai;
constructor(options: OpenAIPredictionEngineOptions);
get configuration(): Configuration;
get openai(): OpenAIApi;
get options(): OpenAIPredictionEngineOptions;
expandPromptTemplate(context: TurnContext, state: TState, prompt: string): Promise<string>;
prompt(context: TurnContext, state: TState, options: OpenAIPromptOptions, message?: string): Promise<string | undefined>;
predictCommands(context: TurnContext, state: TState, data?: Record<string, any>, options?: OpenAIPredictionOptions): Promise<PredictedCommand[]>;
private createChatCompletionRequest;
private createCompletionRequest;
private createChatCompletion;
private createCompletion;
}
//# sourceMappingURL=OpenAIPredictionEngine.d.ts.map