Spaces:
Running
Running
import { ChatAnthropic } from '@langchain/anthropic'; | |
import { getAnthropicApiKey } from '../../config'; | |
import logger from '../../utils/logger'; | |
export const loadAnthropicChatModels = async () => { | |
const anthropicApiKey = getAnthropicApiKey(); | |
if (!anthropicApiKey) return {}; | |
try { | |
const chatModels = { | |
'claude-3-5-sonnet-20241022': { | |
displayName: 'Claude 3.5 Sonnet', | |
model: new ChatAnthropic({ | |
temperature: 0.7, | |
anthropicApiKey: anthropicApiKey, | |
model: 'claude-3-5-sonnet-20241022', | |
}), | |
}, | |
'claude-3-5-haiku-20241022': { | |
displayName: 'Claude 3.5 Haiku', | |
model: new ChatAnthropic({ | |
temperature: 0.7, | |
anthropicApiKey: anthropicApiKey, | |
model: 'claude-3-5-haiku-20241022', | |
}), | |
}, | |
'claude-3-opus-20240229': { | |
displayName: 'Claude 3 Opus', | |
model: new ChatAnthropic({ | |
temperature: 0.7, | |
anthropicApiKey: anthropicApiKey, | |
model: 'claude-3-opus-20240229', | |
}), | |
}, | |
'claude-3-sonnet-20240229': { | |
displayName: 'Claude 3 Sonnet', | |
model: new ChatAnthropic({ | |
temperature: 0.7, | |
anthropicApiKey: anthropicApiKey, | |
model: 'claude-3-sonnet-20240229', | |
}), | |
}, | |
'claude-3-haiku-20240307': { | |
displayName: 'Claude 3 Haiku', | |
model: new ChatAnthropic({ | |
temperature: 0.7, | |
anthropicApiKey: anthropicApiKey, | |
model: 'claude-3-haiku-20240307', | |
}), | |
}, | |
}; | |
return chatModels; | |
} catch (err) { | |
logger.error(`Error loading Anthropic models: ${err}`); | |
return {}; | |
} | |
}; | |