hopefully last edit

This commit is contained in:
reanon
2025-05-23 05:30:38 +02:00
parent 74bb88daa3
commit 566d42da07
+8 -4
View File
@@ -206,8 +206,10 @@ function setAnthropicBetaHeader(req: Request) {
*/
function addWebSearchTool(req: Request) {
// Check if this is a Claude model that supports web search and if web search is enabled
const supportsWebSearch = /^claude-3-(5|7)/.test(req.body.model);
const useWebSearch = supportsWebSearch && Boolean(req.body.enable_web_search);
const isClaude35 = req.body.model?.includes("claude-3-5") || req.body.model?.includes("claude-3.5");
const isClaude37 = req.body.model?.includes("claude-3-7") || req.body.model?.includes("claude-3.7");
const isClaude4 = req.body.model?.includes("claude-4");
const useWebSearch = (isClaude35 || isClaude37 || isClaude4) && Boolean(req.body.enable_web_search);
if (useWebSearch) {
// Create the base web search tool
@@ -305,7 +307,7 @@ const textToChatPreprocessor = createPreprocessorMiddleware(
* (claude-3 based models do not support the old text completion endpoint).
*/
const preprocessAnthropicTextRequest: RequestHandler = (req, res, next) => {
if (req.body.model?.startsWith("claude-3")) {
if (req.body.model?.startsWith("claude-3") || req.body.model?.startsWith("claude-4")) {
textToChatPreprocessor(req, res, next);
} else {
nativeTextPreprocessor(req, res, next);
@@ -336,7 +338,9 @@ const oaiToChatPreprocessor = createPreprocessorMiddleware(
*/
const preprocessOpenAICompatRequest: RequestHandler = (req, res, next) => {
maybeReassignModel(req);
if (req.body.model?.includes("claude-3")) {
const model = req.body.model;
const isClaude4 = model?.includes("claude-4");
if (model?.includes("claude-3") || isClaude4) {
oaiToChatPreprocessor(req, res, next);
} else {
oaiToTextPreprocessor(req, res, next);