mirror of
https://github.com/router-for-me/CLIProxyAPI.git
synced 2026-02-03 13:00:52 +08:00
- Introduced `ClientSupportsModel` function to `ModelRegistry` for verifying client support for specific models. - Integrated model support validation into executor candidate filtering logic. - Updated CLIProxy registry interface to include the new support check method.
22 lines
750 B
Go
22 lines
750 B
Go
package cliproxy
|
|
|
|
import "github.com/router-for-me/CLIProxyAPI/v6/internal/registry"
|
|
|
|
// ModelInfo re-exports the registry model info structure.
|
|
type ModelInfo = registry.ModelInfo
|
|
|
|
// ModelRegistry describes registry operations consumed by external callers.
|
|
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
|
|
}
|
|
|
|
// GlobalModelRegistry returns the shared registry instance.
|
|
func GlobalModelRegistry() ModelRegistry {
|
|
return registry.GetGlobalRegistry()
|
|
}
|