Files
coder/coderd/chatd/models.go
T

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)
}