Package net.thevpc.naru.api.model
Interface NaruModelProvider
- All Known Implementing Classes:
AbstractNaruModelProvider
public interface NaruModelProvider
Abstraction over any LLM backend (Ollama, OpenAI, Anthropic, …).
Implement this interface to add a new provider.
-
Method Summary
Modifier and TypeMethodDescriptionfindModelIds(NaruSession session) Fetch the list of available models from this provider.net.thevpc.nuts.util.NOptional<String>net.thevpc.nuts.util.NOptional<NaruModelProtocol>getProtocol(NaruModelConfig model, NaruSession session) default voidinstallModel(NaruModelKey key, NaruSession session) booleandefault booleandefault booleandefault booleandefault booleanname()Provider name for display purposes.default List<NaruModelPsResult>psModel(NaruSession session) voidsetEnabled(boolean enabled) voiddefault voiduninstallModel(NaruModelKey key, NaruSession session) default voidunloadModel(NaruModelKey key, NaruSession session)
-
Method Details
-
getProtocol
net.thevpc.nuts.util.NOptional<NaruModelProtocol> getProtocol(NaruModelConfig model, NaruSession session) -
name
String name()Provider name for display purposes. -
findModelIds
Fetch the list of available models from this provider.- Returns:
- a list of model names
-
setParam
-
getParam
-
getParamNames
-
isEnabled
boolean isEnabled() -
setEnabled
void setEnabled(boolean enabled) -
isSupportedInstallModel
default boolean isSupportedInstallModel() -
installModel
-
isSupportedUninstallModel
default boolean isSupportedUninstallModel() -
uninstallModel
-
isSupportedUnloadModel
default boolean isSupportedUnloadModel() -
unloadModel
-
isSupportedPsModel
default boolean isSupportedPsModel() -
psModel
-