mirror of
https://github.com/coder/coder.git
synced 2026-10-16 14:48:56 +08:00
50 lines
1.7 KiB
Go
50 lines
1.7 KiB
Go
package chatd
|
|
|
|
import "github.com/coder/coder/v2/coderd/chatd/chatprovider"
|
|
|
|
// ProviderAPIKeys contains API keys for provider calls.
|
|
type ProviderAPIKeys = chatprovider.ProviderAPIKeys
|
|
|
|
// ConfiguredProvider is an enabled provider loaded from database config.
|
|
type ConfiguredProvider = chatprovider.ConfiguredProvider
|
|
|
|
type configuredModel = chatprovider.ConfiguredModel
|
|
type modelCatalog = chatprovider.ModelCatalog
|
|
|
|
// SupportedProviders returns all chat providers supported by Fantasy.
|
|
func SupportedProviders() []string {
|
|
return chatprovider.SupportedProviders()
|
|
}
|
|
|
|
// IsEnvPresetProvider reports whether provider supports env presets.
|
|
func IsEnvPresetProvider(provider string) bool {
|
|
return chatprovider.IsEnvPresetProvider(provider)
|
|
}
|
|
|
|
// ProviderDisplayName returns a default display name for a provider.
|
|
func ProviderDisplayName(provider string) string {
|
|
return chatprovider.ProviderDisplayName(provider)
|
|
}
|
|
|
|
// NormalizeProvider canonicalizes a provider name.
|
|
func NormalizeProvider(provider string) string {
|
|
return chatprovider.NormalizeProvider(provider)
|
|
}
|
|
|
|
// MergeProviderAPIKeys overlays configured provider keys over fallback keys.
|
|
func MergeProviderAPIKeys(fallback ProviderAPIKeys, providers []ConfiguredProvider) ProviderAPIKeys {
|
|
return chatprovider.MergeProviderAPIKeys(fallback, providers)
|
|
}
|
|
|
|
func newModelCatalog(keys ProviderAPIKeys) *modelCatalog {
|
|
return chatprovider.NewModelCatalog(keys)
|
|
}
|
|
|
|
func normalizeProvider(provider string) string {
|
|
return chatprovider.NormalizeProvider(provider)
|
|
}
|
|
|
|
func resolveModelWithProviderHint(modelName, providerHint string) (string, string, error) {
|
|
return chatprovider.ResolveModelWithProviderHint(modelName, providerHint)
|
|
}
|