| const { removeNullishValues, anthropicSettings } = require('librechat-data-provider'); | |
| const generateArtifactsPrompt = require('~/app/clients/prompts/artifacts'); | |
| const buildOptions = (endpoint, parsedBody) => { | |
| const { | |
| modelLabel, | |
| promptPrefix, | |
| maxContextTokens, | |
| fileTokenLimit, | |
| resendFiles = anthropicSettings.resendFiles.default, | |
| promptCache = anthropicSettings.promptCache.default, | |
| thinking = anthropicSettings.thinking.default, | |
| thinkingBudget = anthropicSettings.thinkingBudget.default, | |
| iconURL, | |
| greeting, | |
| spec, | |
| artifacts, | |
| ...modelOptions | |
| } = parsedBody; | |
| const endpointOption = removeNullishValues({ | |
| endpoint, | |
| modelLabel, | |
| promptPrefix, | |
| resendFiles, | |
| promptCache, | |
| thinking, | |
| thinkingBudget, | |
| iconURL, | |
| greeting, | |
| spec, | |
| maxContextTokens, | |
| fileTokenLimit, | |
| modelOptions, | |
| }); | |
| if (typeof artifacts === 'string') { | |
| endpointOption.artifactsPrompt = generateArtifactsPrompt({ endpoint, artifacts }); | |
| } | |
| return endpointOption; | |
| }; | |
| module.exports = buildOptions; | |