createTranscription method
Creates a transcription using the provided request.
Returns a TranscriptionResponse or null if the request fails.
Implementation
Future<TranscriptionResponse?> createTranscription(
TranscriptionRequest request,
) async {
final audioFilePath = request.audioFilePath;
final formData = FormData.fromMap({
'file': kIsWeb
? await _createMultipartFileFromUrl(
url: audioFilePath,
fileName: '${audioFilePath.split('/').last}.webm')
: await MultipartFile.fromFile(audioFilePath),
'model': request.model.modelName,
'prompt': request.prompt,
'language': request.language,
});
final response = await multipartDataDio.post(
transcriptionsEndPoint,
data: formData,
);
final data = response.data;
if (data != null) {
return TranscriptionResponse.fromJson(data);
}
return null;
}