try ollama first, always

This commit is contained in:
perf3ct 2025-03-17 19:41:31 +00:00
parent 5aef80f4cf
commit 6d146c2f49
No known key found for this signature in database
GPG Key ID: 569C4EEC436F5232

View File

@ -50,19 +50,20 @@ Example: ["exact topic mentioned", "related concept 1", "related concept 2"]`;
this.initPromise = (async () => {
try {
const providerId = await options.getOption('embeddingsDefaultProvider') || 'openai';
// Get user's configured provider or fallback to ollama
const providerId = await options.getOption('embeddingsDefaultProvider') || 'ollama';
this.provider = providerManager.getEmbeddingProvider(providerId);
// If specified provider not found, try openai as a fallback
if (!this.provider && providerId !== 'openai') {
log.info(`Embedding provider ${providerId} not found, trying openai as fallback`);
this.provider = providerManager.getEmbeddingProvider('openai');
// If specified provider not found, try ollama as first fallback for self-hosted usage
if (!this.provider && providerId !== 'ollama') {
log.info(`Embedding provider ${providerId} not found, trying ollama as fallback`);
this.provider = providerManager.getEmbeddingProvider('ollama');
}
// If openai not found, try ollama as a second fallback
if (!this.provider && providerId !== 'ollama') {
log.info(`Embedding provider openai not found, trying ollama as fallback`);
this.provider = providerManager.getEmbeddingProvider('ollama');
// If ollama not found, try openai as a second fallback
if (!this.provider && providerId !== 'openai') {
log.info(`Embedding provider ollama not found, trying openai as fallback`);
this.provider = providerManager.getEmbeddingProvider('openai');
}
// Final fallback to local provider which should always exist