mirror of
https://github.com/danny-avila/LibreChat.git
synced 2025-09-21 21:50:49 +02:00

* fix: missing console color methods for admin scripts * feat: Anthropic Claude 3.7 Sonnet Support * feat: update eventsource to version 3.0.2 and upgrade @modelcontextprotocol/sdk to 1.4.1 * fix: update DynamicInput to handle number type and improve initial value logic * feat: first pass Anthropic Reasoning (Claude 3.7) * feat: implement streaming support in AnthropicClient with reasoning UI handling * feat: add missing xAI (grok) models
184 lines
2.9 KiB
JavaScript
184 lines
2.9 KiB
JavaScript
const conversationPreset = {
|
|
// endpoint: [azureOpenAI, openAI, anthropic, chatGPTBrowser]
|
|
endpoint: {
|
|
type: String,
|
|
default: null,
|
|
required: true,
|
|
},
|
|
endpointType: {
|
|
type: String,
|
|
},
|
|
// for azureOpenAI, openAI, chatGPTBrowser only
|
|
model: {
|
|
type: String,
|
|
required: false,
|
|
},
|
|
// for bedrock only
|
|
region: {
|
|
type: String,
|
|
required: false,
|
|
},
|
|
// for azureOpenAI, openAI only
|
|
chatGptLabel: {
|
|
type: String,
|
|
required: false,
|
|
},
|
|
// for google only
|
|
modelLabel: {
|
|
type: String,
|
|
required: false,
|
|
},
|
|
promptPrefix: {
|
|
type: String,
|
|
required: false,
|
|
},
|
|
temperature: {
|
|
type: Number,
|
|
required: false,
|
|
},
|
|
top_p: {
|
|
type: Number,
|
|
required: false,
|
|
},
|
|
// for google only
|
|
topP: {
|
|
type: Number,
|
|
required: false,
|
|
},
|
|
topK: {
|
|
type: Number,
|
|
required: false,
|
|
},
|
|
maxOutputTokens: {
|
|
type: Number,
|
|
required: false,
|
|
},
|
|
presence_penalty: {
|
|
type: Number,
|
|
required: false,
|
|
},
|
|
frequency_penalty: {
|
|
type: Number,
|
|
required: false,
|
|
},
|
|
file_ids: { type: [{ type: String }], default: undefined },
|
|
// deprecated
|
|
resendImages: {
|
|
type: Boolean,
|
|
},
|
|
/* Anthropic only */
|
|
promptCache: {
|
|
type: Boolean,
|
|
},
|
|
thinking: {
|
|
type: Boolean,
|
|
},
|
|
thinkingBudget: {
|
|
type: Number,
|
|
},
|
|
system: {
|
|
type: String,
|
|
},
|
|
// files
|
|
resendFiles: {
|
|
type: Boolean,
|
|
},
|
|
imageDetail: {
|
|
type: String,
|
|
},
|
|
/* agents */
|
|
agent_id: {
|
|
type: String,
|
|
},
|
|
/* assistants */
|
|
assistant_id: {
|
|
type: String,
|
|
},
|
|
instructions: {
|
|
type: String,
|
|
},
|
|
stop: { type: [{ type: String }], default: undefined },
|
|
isArchived: {
|
|
type: Boolean,
|
|
default: false,
|
|
},
|
|
/* UI Components */
|
|
iconURL: {
|
|
type: String,
|
|
},
|
|
greeting: {
|
|
type: String,
|
|
},
|
|
spec: {
|
|
type: String,
|
|
},
|
|
tags: {
|
|
type: [String],
|
|
default: [],
|
|
},
|
|
tools: { type: [{ type: String }], default: undefined },
|
|
maxContextTokens: {
|
|
type: Number,
|
|
},
|
|
max_tokens: {
|
|
type: Number,
|
|
},
|
|
/** omni models only */
|
|
reasoning_effort: {
|
|
type: String,
|
|
},
|
|
};
|
|
|
|
const agentOptions = {
|
|
model: {
|
|
type: String,
|
|
required: false,
|
|
},
|
|
// for azureOpenAI, openAI only
|
|
chatGptLabel: {
|
|
type: String,
|
|
required: false,
|
|
},
|
|
modelLabel: {
|
|
type: String,
|
|
required: false,
|
|
},
|
|
promptPrefix: {
|
|
type: String,
|
|
required: false,
|
|
},
|
|
temperature: {
|
|
type: Number,
|
|
required: false,
|
|
},
|
|
top_p: {
|
|
type: Number,
|
|
required: false,
|
|
},
|
|
// for google only
|
|
topP: {
|
|
type: Number,
|
|
required: false,
|
|
},
|
|
topK: {
|
|
type: Number,
|
|
required: false,
|
|
},
|
|
maxOutputTokens: {
|
|
type: Number,
|
|
required: false,
|
|
},
|
|
presence_penalty: {
|
|
type: Number,
|
|
required: false,
|
|
},
|
|
frequency_penalty: {
|
|
type: Number,
|
|
required: false,
|
|
},
|
|
};
|
|
|
|
module.exports = {
|
|
conversationPreset,
|
|
agentOptions,
|
|
};
|