🔧 fix: File Deletion for Azure Assistants API (#7466)

This commit is contained in:
Danny Avila 2025-05-20 08:37:39 -04:00 committed by GitHub
parent 8c0be0e2f0
commit c8f5f5131e
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 16 additions and 6 deletions

View file

@ -121,6 +121,14 @@ router.delete('/', async (req, res) => {
await processDeleteRequest({ req, files: assistantFiles }); await processDeleteRequest({ req, files: assistantFiles });
res.status(200).json({ message: 'File associations removed successfully from assistant' }); res.status(200).json({ message: 'File associations removed successfully from assistant' });
return; return;
} else if (
req.body.assistant_id &&
req.body.files?.[0]?.filepath === EModelEndpoint.azureAssistants
) {
await processDeleteRequest({ req, files: req.body.files });
return res
.status(200)
.json({ message: 'File associations removed successfully from Azure Assistant' });
} }
await processDeleteRequest({ req, files: dbFiles }); await processDeleteRequest({ req, files: dbFiles });

View file

@ -54,7 +54,7 @@ async function deleteOpenAIFile(req, file, openai) {
throw new Error('OpenAI returned `false` for deleted status'); throw new Error('OpenAI returned `false` for deleted status');
} }
logger.debug( logger.debug(
`[deleteOpenAIFile] User ${req.user.id} successfully deleted ${file.file_id} from OpenAI`, `[deleteOpenAIFile] User ${req.user.id} successfully deleted file "${file.file_id}" from OpenAI`,
); );
} catch (error) { } catch (error) {
logger.error('[deleteOpenAIFile] Error deleting file from OpenAI: ' + error.message); logger.error('[deleteOpenAIFile] Error deleting file from OpenAI: ' + error.message);

View file

@ -137,11 +137,13 @@ const processDeleteRequest = async ({ req, files }) => {
/** @type {Record<string, OpenAI | undefined>} */ /** @type {Record<string, OpenAI | undefined>} */
const client = { [FileSources.openai]: undefined, [FileSources.azure]: undefined }; const client = { [FileSources.openai]: undefined, [FileSources.azure]: undefined };
const initializeClients = async () => { const initializeClients = async () => {
const openAIClient = await getOpenAIClient({ if (req.app.locals[EModelEndpoint.assistants]) {
req, const openAIClient = await getOpenAIClient({
overrideEndpoint: EModelEndpoint.assistants, req,
}); overrideEndpoint: EModelEndpoint.assistants,
client[FileSources.openai] = openAIClient.openai; });
client[FileSources.openai] = openAIClient.openai;
}
if (!req.app.locals[EModelEndpoint.azureOpenAI]?.assistants) { if (!req.app.locals[EModelEndpoint.azureOpenAI]?.assistants) {
return; return;