| package cliproxy |
|
|
| import "github.com/router-for-me/CLIProxyAPI/v6/internal/registry" |
|
|
| |
| type ModelInfo = registry.ModelInfo |
|
|
| |
| type ModelRegistryHook = registry.ModelRegistryHook |
|
|
| |
| type ModelRegistry interface { |
| RegisterClient(clientID, clientProvider string, models []*ModelInfo) |
| UnregisterClient(clientID string) |
| SetModelQuotaExceeded(clientID, modelID string) |
| ClearModelQuotaExceeded(clientID, modelID string) |
| ClientSupportsModel(clientID, modelID string) bool |
| GetAvailableModels(handlerType string) []map[string]any |
| GetAvailableModelsByProvider(provider string) []*ModelInfo |
| } |
|
|
| |
| func GlobalModelRegistry() ModelRegistry { |
| return registry.GetGlobalRegistry() |
| } |
|
|
| |
| func SetGlobalModelRegistryHook(hook ModelRegistryHook) { |
| registry.GetGlobalRegistry().SetHook(hook) |
| } |
|
|