🤖 feat: Add Vision Models; fix: Agents user_provided Keys (#4903)

* 🤖 feat: add new vision models

* fix: agent key expiry setting and typing in useChatFunctions
This commit is contained in:
Danny Avila 2024-12-07 21:21:03 -05:00 committed by GitHub
parent 2875380bf1
commit dc728480f4
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 17 additions and 7 deletions

View file

@ -138,9 +138,9 @@ export default function useChatFunctions({
(msg) => msg.messageId === latestMessage?.parentMessageId, (msg) => msg.messageId === latestMessage?.parentMessageId,
); );
let thread_id = parentMessage?.thread_id ?? latestMessage?.thread_id; let thread_id = parentMessage?.thread_id ?? latestMessage?.thread_id ?? '';
if (!thread_id) { if (!thread_id) {
thread_id = currentMessages.find((message) => message.thread_id)?.thread_id; thread_id = currentMessages.find((message) => message.thread_id)?.thread_id ?? '';
} }
const endpointsConfig = queryClient.getQueryData<TEndpointsConfig>([QueryKeys.endpoints]); const endpointsConfig = queryClient.getQueryData<TEndpointsConfig>([QueryKeys.endpoints]);
@ -168,6 +168,8 @@ export default function useChatFunctions({
endpointOption.key = getExpiry(); endpointOption.key = getExpiry();
endpointOption.thread_id = thread_id; endpointOption.thread_id = thread_id;
endpointOption.modelDisplayLabel = modelDisplayLabel; endpointOption.modelDisplayLabel = modelDisplayLabel;
} else {
endpointOption.key = new Date(Date.now() + 60 * 60 * 1000).toISOString();
} }
const responseSender = getSender({ model: conversation?.model, ...endpointOption }); const responseSender = getSender({ model: conversation?.model, ...endpointOption });
@ -177,13 +179,14 @@ export default function useChatFunctions({
isCreatedByUser: true, isCreatedByUser: true,
parentMessageId, parentMessageId,
conversationId, conversationId,
messageId: isContinued && messageId ? messageId : intermediateId, messageId: isContinued && messageId != null && messageId ? messageId : intermediateId,
thread_id, thread_id,
error: false, error: false,
}; };
const reuseFiles = (isRegenerate || resubmitFiles) && parentMessage?.files; const reuseFiles =
if (setFiles && reuseFiles && parentMessage.files?.length) { (isRegenerate || resubmitFiles) && parentMessage?.files && parentMessage.files.length > 0;
if (setFiles && reuseFiles === true) {
currentMsg.files = parentMessage.files; currentMsg.files = parentMessage.files;
setFiles(new Map()); setFiles(new Map());
setFilesToDelete({}); setFilesToDelete({});

2
package-lock.json generated
View file

@ -36173,7 +36173,7 @@
}, },
"packages/data-provider": { "packages/data-provider": {
"name": "librechat-data-provider", "name": "librechat-data-provider",
"version": "0.7.57", "version": "0.7.58",
"license": "ISC", "license": "ISC",
"dependencies": { "dependencies": {
"@types/js-yaml": "^4.0.9", "@types/js-yaml": "^4.0.9",

View file

@ -1,6 +1,6 @@
{ {
"name": "librechat-data-provider", "name": "librechat-data-provider",
"version": "0.7.57", "version": "0.7.58",
"description": "data services for librechat apps", "description": "data services for librechat apps",
"main": "dist/index.js", "main": "dist/index.js",
"module": "dist/index.es.js", "module": "dist/index.es.js",

View file

@ -761,6 +761,13 @@ export const visionModels = [
'gemini-pro-vision', 'gemini-pro-vision',
'claude-3', 'claude-3',
'gemini-1.5', 'gemini-1.5',
'gemini-exp',
'moondream',
'llama3.2-vision',
'llama-3.2-90b-vision',
'llama-3.2-11b-vision',
'llama-3-2-90b-vision',
'llama-3-2-11b-vision',
]; ];
export enum VisionModes { export enum VisionModes {
generative = 'generative', generative = 'generative',