Spaces:
Sleeping
Sleeping
| import z from 'zod'; | |
| import { | |
| GenerateObjectInput, | |
| GenerateOptions, | |
| GenerateTextInput, | |
| GenerateTextOutput, | |
| StreamTextOutput, | |
| } from '../types'; | |
| abstract class BaseLLM<CONFIG> { | |
| constructor(protected config: CONFIG) {} | |
| abstract generateText(input: GenerateTextInput): Promise<GenerateTextOutput>; | |
| abstract streamText( | |
| input: GenerateTextInput, | |
| ): AsyncGenerator<StreamTextOutput>; | |
| abstract generateObject<T>(input: GenerateObjectInput): Promise<z.infer<T>>; | |
| abstract streamObject<T>( | |
| input: GenerateObjectInput, | |
| ): AsyncGenerator<Partial<z.infer<T>>>; | |
| } | |
| export default BaseLLM; | |