🗣️ fix: Azure OpenAI STT (#3731)

* Fix for Azure OpenAI STT

* chore(STTService): imports order

---------

Co-authored-by: Danny Avila <danacordially@gmail.com>
This commit is contained in:
Max Sanna 2024-08-30 21:11:15 +02:00 committed by GitHub
parent 7536e649d4
commit 63b80c3067
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -1,5 +1,6 @@
const { Readable } = require('stream');
const axios = require('axios');
const FormData = require('form-data');
const { Readable } = require('stream');
const { extractEnvVariable, STTProviders } = require('librechat-data-provider');
const getCustomConfig = require('~/server/services/Config/getCustomConfig');
const { genAzureEndpoint } = require('~/utils');
@ -136,8 +137,10 @@ class STTService {
}
const formData = new FormData();
const audioBlob = new Blob([audioBuffer], { type: audioFile.mimetype });
formData.append('file', audioBlob, audioFile.originalname);
formData.append('file', audioBuffer, {
filename: audioFile.originalname,
contentType: audioFile.mimetype,
});
const headers = {
'Content-Type': 'multipart/form-data',
@ -146,7 +149,7 @@ class STTService {
[headers].forEach(this.removeUndefined);
return [url, formData, headers];
return [url, formData, { ...headers, ...formData.getHeaders() }];
}
/**
@ -171,11 +174,6 @@ class STTService {
const [url, data, headers] = strategy.call(this, sttSchema, audioReadStream, audioFile);
if (!Readable.from && data instanceof FormData) {
const audioBlob = new Blob([audioBuffer], { type: audioFile.mimetype });
data.set('file', audioBlob, audioFile.originalname);
}
try {
const response = await axios.post(url, data, { headers });