Interface NaruModelCapabilities

All Superinterfaces:
NToElement

public interface NaruModelCapabilities extends NToElement
  • Method Details

    • contextLength

      long contextLength()
    • isVision

      boolean isVision()
    • isTools

      boolean isTools()
    • isThinking

      boolean isThinking()
    • isEmbedding

      boolean isEmbedding()
    • isTextOnly

      boolean isTextOnly()
    • isStreaming

      default boolean isStreaming()
      Whether this model can be called with incremental delivery.

      Defaults to true because streaming is a property of the wire protocol rather than of the model, and every protocol NARU speaks supports it. A provider only needs to say false for a specific endpoint or model that does not, which is why this is a default rather than a required field.

      Callers must treat a false here as a reason to use the batch path, not as an error: the batch and streaming paths are required to produce the same result, so falling back is always correct and never lossy.

    • cachingMode

      default NaruCachingMode cachingMode()
      How this model exposes prompt caching.

      Callers should branch on this rather than on the provider name: the provider name does not determine the mechanism (several providers sit behind the same vendor but cache differently), and the mechanism is what determines what a caching client must actually do.

    • keys

      Set<String> keys()