REFACTOR: Improved Package Structure

This commit is contained in:
Manas Hejmadi
2025-06-22 23:39:22 +05:30
parent 26d27eba80
commit 7a9afc614b
13 changed files with 298 additions and 96 deletions

View File

@@ -0,0 +1,40 @@
import 'llm_input_payload.dart';
import 'llm_provider.dart';
import 'llm_request.dart';
class LLMModel {
const LLMModel(this.identifier, this.modelName, this.provider);
final String identifier;
final String modelName;
final LLMProvider provider;
static Map toJson(LLMModel m) {
return {'identifier': m.identifier, 'provider': m.provider.name};
}
static LLMModel fromJson(Map json) {
return LLMProvider.fromName(
json['provider'],
).getLLMByIdentifier(json['identifier']);
}
}
abstract class ModelController {
LLMInputPayload get inputPayload => throw UnimplementedError();
LLMRequestDetails createRequest(
LLMModel model,
LLMInputPayload inputPayload, {
bool stream = false,
}) {
throw UnimplementedError();
}
String? outputFormatter(Map x) {
throw UnimplementedError();
}
String? streamOutputFormatter(Map x) {
throw UnimplementedError();
}
}