25 lines
789 B
Dart
25 lines
789 B
Dart
import 'package:auto_gpt_flutter_client/models/benchmark/api_type.dart';
|
|
import 'package:auto_gpt_flutter_client/models/benchmark/benchmark_run.dart';
|
|
import 'package:auto_gpt_flutter_client/utils/rest_api_utility.dart';
|
|
|
|
class LeaderboardService {
|
|
final RestApiUtility api;
|
|
|
|
LeaderboardService(this.api);
|
|
|
|
/// Submits a benchmark report to the leaderboard.
|
|
///
|
|
/// [benchmarkRun] is a BenchmarkRun object representing the data of a completed benchmark.
|
|
Future<Map<String, dynamic>> submitReport(BenchmarkRun benchmarkRun) async {
|
|
try {
|
|
return await api.put(
|
|
'api/reports',
|
|
benchmarkRun.toJson(),
|
|
apiType: ApiType.leaderboard,
|
|
);
|
|
} catch (e) {
|
|
throw Exception('Failed to submit the report to the leaderboard: $e');
|
|
}
|
|
}
|
|
}
|