Package ai.djl.translate
Class DeferredTranslatorFactory
- java.lang.Object
-
- ai.djl.translate.DeferredTranslatorFactory
-
- All Implemented Interfaces:
TranslatorFactory
public class DeferredTranslatorFactory extends java.lang.Object implements TranslatorFactory
ATranslatorFactory
that creates theTranslator
based on serving.properties file.The
Criteria
API cannot access serving.properties files before it's downloaded. ADeferredTranslatorFactory
assumes serving.properties will provide properTranslator
. If no translatorFactory is provided in serving.properties, aTranslateException
will be thrown.
-
-
Constructor Summary
Constructors Constructor Description DeferredTranslatorFactory()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.util.Set<ai.djl.util.Pair<java.lang.reflect.Type,java.lang.reflect.Type>>
getSupportedTypes()
Returns supported input/output classes.boolean
isSupported(java.lang.Class<?> input, java.lang.Class<?> output)
Returns if the input/output is supported by theTranslatorFactory
.<I,O>
Translator<I,O>newInstance(java.lang.Class<I> input, java.lang.Class<O> output, Model model, java.util.Map<java.lang.String,?> arguments)
Returns a new instance of theTranslator
class.
-
-
-
Method Detail
-
getSupportedTypes
public java.util.Set<ai.djl.util.Pair<java.lang.reflect.Type,java.lang.reflect.Type>> getSupportedTypes()
Returns supported input/output classes.- Specified by:
getSupportedTypes
in interfaceTranslatorFactory
- Returns:
- a set of supported input/output classes
-
isSupported
public boolean isSupported(java.lang.Class<?> input, java.lang.Class<?> output)
Returns if the input/output is supported by theTranslatorFactory
.- Specified by:
isSupported
in interfaceTranslatorFactory
- Parameters:
input
- the input classoutput
- the output class- Returns:
true
if the input/output type is supported
-
newInstance
public <I,O> Translator<I,O> newInstance(java.lang.Class<I> input, java.lang.Class<O> output, Model model, java.util.Map<java.lang.String,?> arguments) throws TranslateException
Returns a new instance of theTranslator
class.- Specified by:
newInstance
in interfaceTranslatorFactory
- Type Parameters:
I
- the input data typeO
- the output data type- Parameters:
input
- the input classoutput
- the output classmodel
- theModel
that uses theTranslator
arguments
- the configurations for a newTranslator
instance- Returns:
- a new instance of the
Translator
class - Throws:
TranslateException
- if failed to create Translator instance
-
-