Class AbstractOpenAICompatProvider
java.lang.Object
net.thevpc.naru.api.model.AbstractNaruModelProvider
net.thevpc.naru.ext.models.openapi.AbstractOpenAICompatProvider
- All Implemented Interfaces:
NaruModelProvider,net.thevpc.nuts.spi.NComponent
- Direct Known Subclasses:
NaruCerebrasProvider,NaruGeminiProvider,NaruGitHubModelsProvider,NaruGroqProvider,NaruMistralProvider,NaruXaiProvider
Base class for OpenAI-compatible cloud providers (Groq, Cerebras, OpenRouter, GitHub Models, ...).
Subclasses provide a name, a default base url, a model list and static capabilities;
the wire protocol and auth handling are inherited.
-
Field Summary
Fields -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedAbstractOpenAICompatProvider(String name, String[] defaultEnvKeys) -
Method Summary
Modifier and TypeMethodDescriptionprotected StringchatPath()protected NaruModelProtocolcreateProtocol(NaruModelConfig model, NaruModelCapabilities capabilities) protected abstract StringFallback base url when<name>.urlconfig is not set.findModelIds(NaruSession session) net.thevpc.nuts.util.NOptional<NaruModelProtocol>getProtocol(NaruModelConfig model, NaruSession session) protected abstract NaruModelCapabilitiesresolveCapabilities(String modelName) Statically maps capabilities since cloud-hosted capabilities cannot be polled natively.Methods inherited from class net.thevpc.naru.api.model.AbstractNaruModelProvider
apiKey, defaultEnvKey, getParam, getParamNames, getSecureParam, isEnabled, name, onParamChanged, setEnabled, setParamMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface net.thevpc.naru.api.model.NaruModelProvider
installModel, isSupportedInstallModel, isSupportedPsModel, isSupportedUninstallModel, isSupportedUnloadModel, psModel, uninstallModel, unloadModel
-
Field Details
-
protocols
-
supportedModels
-
-
Constructor Details
-
AbstractOpenAICompatProvider
-
-
Method Details
-
chatPath
-
defaultBaseUrl
Fallback base url when<name>.urlconfig is not set. -
resolveCapabilities
Statically maps capabilities since cloud-hosted capabilities cannot be polled natively. -
createProtocol
protected NaruModelProtocol createProtocol(NaruModelConfig model, NaruModelCapabilities capabilities) -
getProtocol
public net.thevpc.nuts.util.NOptional<NaruModelProtocol> getProtocol(NaruModelConfig model, NaruSession session) -
findModelIds
-