fix: Handle :cloud suffix in getLowerBaseModelName for Ollama models (#12633)

* refactor: Add support for removing :cloud suffix in model names

* test: Add test for removing trailing :cloud from model name
This commit is contained in:
Phantom 2026-01-29 00:16:42 +08:00 committed by GitHub
parent ec5bac9d43
commit 6bf3e5506f
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 11 additions and 3 deletions

View File

@ -225,6 +225,9 @@ describe('naming', () => {
it('should remove trailing (free)', () => {
expect(getLowerBaseModelName('agent/gpt-4(free)')).toBe('gpt-4')
})
it('should remove trailing :cloud', () => {
expect(getLowerBaseModelName('local/kimi-k2.5:cloud')).toBe('kimi-k2.5')
})
})
describe('getFirstCharacter', () => {

View File

@ -74,14 +74,19 @@ export const getBaseModelName = (id: string, delimiter: string = '/'): string =>
* @returns {string}
*/
export const getLowerBaseModelName = (id: string, delimiter: string = '/'): string => {
const baseModelName = getBaseModelName(id, delimiter).toLowerCase()
let baseModelName = getBaseModelName(id, delimiter).toLowerCase()
// Remove suffix
// for openrouter
if (baseModelName.endsWith(':free')) {
return baseModelName.replace(':free', '')
baseModelName = baseModelName.replace(':free', '')
}
// for cherryin
if (baseModelName.endsWith('(free)')) {
return baseModelName.replace('(free)', '')
baseModelName = baseModelName.replace('(free)', '')
}
// for ollama
if (baseModelName.endsWith(':cloud')) {
baseModelName = baseModelName.replace(':cloud', '')
}
return baseModelName
}