feat: fallback to openai compatible provider if url host doesn't match

This commit is contained in:
Frost Ming
2025-03-05 16:12:46 +08:00
committed by GitHub
parent 6ff06576d0
commit 21c8b98f9c

View File

@@ -17,7 +17,7 @@ function getProviderName(apiUrl: string) {
if (apiUrl.includes("localhost:11434") || apiUrl.includes("ollama"))
return "ollama";
if (apiUrl.includes("api.deepinfra.com")) return "deepinfra";
throw new Error(`Unsupported AI provider for URL: ${apiUrl}`);
return "custom";
}
export function selectAIProvider(config: { apiUrl: string; apiKey: string }) {
@@ -68,6 +68,12 @@ export function selectAIProvider(config: { apiUrl: string; apiKey: string }) {
apiKey: config.apiKey,
});
default:
throw new Error(`Unsupported AI provider: ${providerName}`);
return createOpenAICompatible({
name: "custom",
baseURL: config.apiUrl,
headers: {
Authorization: `Bearer ${config.apiKey}`,
},
)};
}
}