Files
APIPark/ai-provider/model-runtime/entity/provider.go
T

51 lines
2.4 KiB
Go

package entity
var (
ModelTypeLLM = "llm"
ModelTypeTextEmbedding = "text-embedding"
ModelTypeSpeech2Text = "speech2text"
ModelTypeTTS = "tts"
ModelTypeModeration = "moderation"
LanguageEnglish = "en_US"
LanguageChinese = "zh_Hans"
)
type Provider struct {
Provider string `json:"provider" yaml:"provider"`
Label map[string]string `json:"label" yaml:"label"`
Description map[string]string `json:"description" yaml:"description"`
IconSmall map[string]string `json:"icon_small" yaml:"icon_small"`
IconLarge map[string]string `json:"icon_large" yaml:"icon_large"`
Background string `json:"background" yaml:"background"`
Help Help `json:"help" yaml:"help"`
SupportedModelTypes []string `json:"supported_model_types" yaml:"supported_model_types"`
ProviderCredentialSchema ProviderCredentialSchema `json:"provider_credential_schema" yaml:"provider_credential_schema"`
Default map[string]string `json:"default" yaml:"default"`
Address string `json:"address" yaml:"address"`
Recommend bool `json:"recommend" yaml:"recommend"`
Sort int `json:"sort" yaml:"sort"`
ModelConfig ModelConfig `json:"model_config" yaml:"model_config"`
}
type ModelConfig struct {
AccessConfigurationStatus bool `json:"access_configuration_status" yaml:"access_configuration_status"`
AccessConfigurationDemo string `json:"access_configuration_demo" yaml:"access_configuration_demo"`
}
type ProviderCredentialSchema struct {
CredentialFormSchemas []CredentialFormSchema `json:"credential_form_schemas" yaml:"credential_form_schemas"`
}
type CredentialFormSchema struct {
Variable string `json:"variable" yaml:"variable"`
Label map[string]string `json:"label" yaml:"label"`
Type string `json:"type" yaml:"type"`
Required bool `json:"required" yaml:"required"`
Placeholder map[string]string `json:"placeholder" yaml:"placeholder"`
}
type Help struct {
Title map[string]string `json:"title" yaml:"title"`
URL map[string]string `json:"url" yaml:"url"`
}