🚀 refactor: Enhance Custom Endpoints, Message Logic, and Payload Handling (#2895)

* chore: use node-fetch for OpenAIClient fetch key for non-crashing usage of AbortController in Bun runtime

* chore: variable order

* fix(useSSE): prevent finalHandler call in abortConversation to update messages/conversation after user navigated away

* chore: params order

* refactor: organize intermediate message logic and ensure correct variables are passed

* fix: Add stt and tts routes before upload limiters, prevent bans

* fix(abortRun): temp fix to delete unfinished messages to avoid message thread parent relationship issues

* refactor: Update AnthropicClient to use node-fetch for fetch key and add proxy support

* fix(gptPlugins): ensure parentMessageId/messageId relationship is maintained

* feat(BaseClient): custom fetch function to analyze/edit payloads just before sending (also prevents abortController crash on Bun runtime)

* feat: `directEndpoint` and `titleMessageRole` custom endpoint options

* chore: Bump version to 0.6.6 in data-provider package.json
This commit is contained in:
Danny Avila 2024-05-28 14:52:12 -04:00 committed by GitHub
parent 0ee060d730
commit 40685f6eb4
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
17 changed files with 137 additions and 29 deletions

View file

@ -14,6 +14,10 @@ const initialize = async () => {
router.use(checkBan);
router.use(uaParser);
/* Important: stt/tts routes must be added before the upload limiters */
router.use('/stt', stt);
router.use('/tts', tts);
const upload = await createMulterInstance();
const { fileUploadIpLimiter, fileUploadUserLimiter } = createFileLimiters();
router.post('*', fileUploadIpLimiter, fileUploadUserLimiter);