19 lines
504 B
JavaScript
19 lines
504 B
JavaScript
|
|
// Base LLM Provider — all providers implement this interface
|
||
|
|
|
||
|
|
export class LLMProvider {
|
||
|
|
constructor(config) {
|
||
|
|
this.config = config;
|
||
|
|
this.name = 'base';
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Complete a prompt with system + user messages
|
||
|
|
* @returns {{ text: string, usage: { inputTokens: number, outputTokens: number }, model: string }}
|
||
|
|
*/
|
||
|
|
async complete(systemPrompt, userMessage, opts = {}) {
|
||
|
|
throw new Error(`${this.name}: complete() not implemented`);
|
||
|
|
}
|
||
|
|
|
||
|
|
get isConfigured() { return false; }
|
||
|
|
}
|