Class ConfiguredLocalProvider

java.lang.Object
sk.iway.iwcm.components.ai.providers.local.ConfiguredLocalProvider
All Implemented Interfaces:
com.webjetcms.ai.AiProvider, AutoCloseable
Direct Known Subclasses:
LocalEmbeddingProvider, LocalTextProvider, LocalTranslateProvider

public abstract class ConfiguredLocalProvider extends Object implements com.webjetcms.ai.AiProvider
Shared lazy lifecycle for local model bundles configured through WebJET constants.
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    protected static interface 
    Opens a provider delegate from a configured local model bundle.
  • Constructor Summary

    Constructors
    Modifier
    Constructor
    Description
    protected
     
  • Method Summary

    Modifier and Type
    Method
    Description
    final void
    Closes the lazily opened delegate at most once.
    final com.webjetcms.ai.EmbeddingResponse
    embed(com.webjetcms.ai.EmbeddingRequest request, com.webjetcms.ai.AiProviderConfig config)
     
    final com.webjetcms.ai.AiResponse
    execute(com.webjetcms.ai.AiRequest request, com.webjetcms.ai.AiProviderConfig config)
     
    final String
    id()
     
    final boolean
     
    final List<com.webjetcms.ai.ModelInfo>
    listModels(com.webjetcms.ai.AiProviderConfig config)
     
    final com.webjetcms.ai.AiResponse
    stream(com.webjetcms.ai.AiRequest request, com.webjetcms.ai.AiProviderConfig config, com.webjetcms.ai.AiStreamListener listener)
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface com.webjetcms.ai.AiProvider

    imageOptions, inputHandling
  • Constructor Details

  • Method Details

    • id

      public final String id()
      Specified by:
      id in interface com.webjetcms.ai.AiProvider
    • listModels

      public final List<com.webjetcms.ai.ModelInfo> listModels(com.webjetcms.ai.AiProviderConfig config) throws com.webjetcms.ai.AiProviderException
      Specified by:
      listModels in interface com.webjetcms.ai.AiProvider
      Throws:
      com.webjetcms.ai.AiProviderException
    • execute

      public final com.webjetcms.ai.AiResponse execute(com.webjetcms.ai.AiRequest request, com.webjetcms.ai.AiProviderConfig config) throws com.webjetcms.ai.AiProviderException
      Specified by:
      execute in interface com.webjetcms.ai.AiProvider
      Throws:
      com.webjetcms.ai.AiProviderException
    • embed

      public final com.webjetcms.ai.EmbeddingResponse embed(com.webjetcms.ai.EmbeddingRequest request, com.webjetcms.ai.AiProviderConfig config) throws com.webjetcms.ai.AiProviderException
      Specified by:
      embed in interface com.webjetcms.ai.AiProvider
      Throws:
      com.webjetcms.ai.AiProviderException
    • stream

      public final com.webjetcms.ai.AiResponse stream(com.webjetcms.ai.AiRequest request, com.webjetcms.ai.AiProviderConfig config, com.webjetcms.ai.AiStreamListener listener) throws com.webjetcms.ai.AiProviderException
      Specified by:
      stream in interface com.webjetcms.ai.AiProvider
      Throws:
      com.webjetcms.ai.AiProviderException
    • isConfigured

      public final boolean isConfigured()
    • close

      public final void close() throws Exception
      Closes the lazily opened delegate at most once.
      Specified by:
      close in interface com.webjetcms.ai.AiProvider
      Specified by:
      close in interface AutoCloseable
      Throws:
      Exception - if the delegate cannot be closed