Refactor model filtering logic into reusable basicFilters function.

This commit is contained in:
geoffsee
2025-07-31 10:10:35 -04:00
parent 67483d08db
commit ae6a6e4064

View File

@@ -161,7 +161,15 @@ const ChatService = types
const openai = new OpenAI({ apiKey: provider.key, baseURL: provider.endpoint }); const openai = new OpenAI({ apiKey: provider.key, baseURL: provider.endpoint });
// 2a. List models const basicFilters = (model: any) => {
return (
!model.id.includes('whisper') &&
!model.id.includes('flux') &&
!model.id.includes('ocr') &&
!model.id.includes('tts') &&
!model.id.includes('guard')
);
}; // 2a. List models
try { try {
const listResp: any = yield openai.models.list(); // < async const listResp: any = yield openai.models.list(); // < async
const models = 'data' in listResp ? listResp.data : listResp; const models = 'data' in listResp ? listResp.data : listResp;
@@ -170,16 +178,11 @@ const ChatService = types
provider.name, provider.name,
models.filter((mdl: any) => { models.filter((mdl: any) => {
if ('supports_chat' in mdl && mdl.supports_chat) { if ('supports_chat' in mdl && mdl.supports_chat) {
return true; return basicFilters(mdl);
} else if ('supports_chat' in mdl && !mdl.supports_chat) { } else if ('supports_chat' in mdl && !mdl.supports_chat) {
return false; return false;
} }
return basicFilters(mdl);
return (
!mdl.id.includes('whisper') &&
!mdl.id.includes('tts') &&
!mdl.id.includes('guard')
);
}), }),
); );