mirror of
https://github.com/danny-avila/LibreChat.git
synced 2026-01-23 02:36:12 +01:00
🗃️ feat: General File Support for OpenAI, Azure, Custom, Anthropic and Google (RAG) (#2143)
* refactor: re-purpose `resendImages` as `resendFiles` * refactor: re-purpose `resendImages` as `resendFiles` * feat: upload general files * feat: embed file during upload * feat: delete file embeddings on file deletion * chore(fileConfig): add epub+zip type * feat(encodeAndFormat): handle non-image files * feat(createContextHandlers): build context prompt from file attachments and successful RAG * fix: prevent non-temp files as well as embedded files to be deleted on new conversation * fix: remove temp_file_id on usage, prevent non-temp files as well as embedded files to be deleted on new conversation * fix: prevent non-temp files as well as embedded files to be deleted on new conversation * feat(OpenAI/Anthropic/Google): basic RAG support * fix: delete `resendFiles` only when true (Default) * refactor(RAG): update endpoints and pass JWT * fix(resendFiles): default values * fix(context/processFile): query unique ids only * feat: rag-api.yaml * feat: file upload improved ux for longer uploads * chore: await embed call and catch embedding errors * refactor: store augmentedPrompt in Client * refactor(processFileUpload): throw error if not assistant file upload * fix(useFileHandling): handle markdown empty mimetype issue * chore: necessary compose file changes
This commit is contained in:
parent
af347cccde
commit
f7761df52c
38 changed files with 683 additions and 261 deletions
|
|
@ -48,6 +48,7 @@ const useFileDeletion = ({
|
|||
temp_file_id = '',
|
||||
filepath = '',
|
||||
source = FileSources.local,
|
||||
embedded,
|
||||
attached,
|
||||
} = _file as TFile & { attached?: boolean };
|
||||
|
||||
|
|
@ -58,6 +59,7 @@ const useFileDeletion = ({
|
|||
}
|
||||
const file: BatchFile = {
|
||||
file_id,
|
||||
embedded,
|
||||
filepath,
|
||||
source,
|
||||
};
|
||||
|
|
@ -89,12 +91,13 @@ const useFileDeletion = ({
|
|||
const deleteFiles = useCallback(
|
||||
({ files, setFiles }: { files: ExtendedFile[] | TFile[]; setFiles?: FileMapSetter }) => {
|
||||
const batchFiles = files.map((_file) => {
|
||||
const { file_id, filepath = '', source = FileSources.local } = _file;
|
||||
const { file_id, embedded, filepath = '', source = FileSources.local } = _file;
|
||||
|
||||
return {
|
||||
source,
|
||||
file_id,
|
||||
filepath,
|
||||
source,
|
||||
embedded,
|
||||
};
|
||||
});
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue