conductor-tasks
Version:
Task Manager for AI Development
50 lines (49 loc) • 1.2 kB
TypeScript
export interface LLMUsage {
promptTokens: number;
completionTokens: number;
totalTokens: number;
}
export interface LLMCompletionResult {
text: string;
usage: LLMUsage | null;
model?: string;
finishReason?: string;
}
export interface LLMClient {
complete(options: LLMCompletionOptions): Promise<LLMCompletionResult>;
getProviderName(): string;
getModelName(): string;
}
export interface LLMCompletionOptions {
prompt: string;
systemPrompt?: string;
maxTokens?: number;
temperature?: number;
topP?: number;
presencePenalty?: number;
frequencyPenalty?: number;
stopSequences?: string[];
onStreamUpdate?: (chunk: string) => void;
stream?: boolean;
}
export interface LLMRequest {
prompt: string;
systemPrompt?: string;
options?: LLMProviderConfig;
provider?: string;
}
export interface LLMResponse {
text: string;
usage: {
promptTokens: number;
completionTokens: number;
totalTokens: number;
};
}
export interface LLMProviderConfig {
temperature?: number;
maxTokens?: number;
topP?: number;
frequencyPenalty?: number;
presencePenalty?: number;
}