Package com.embabel.common.ai.model
Class LlmOptions
-
- All Implemented Interfaces:
-
com.embabel.common.ai.model.LlmHyperparameters,com.embabel.common.core.types.HasInfoString
public final class LlmOptions implements LlmHyperparameters, HasInfoString
Portable LLM options.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description public classLlmOptions.Companion
-
Field Summary
Fields Modifier and Type Field Description private final ModelSelectionCriteriacriteriaprivate ModelSelectionCriteriamodelSelectionCriteriaprivate Stringmodelprivate Stringroleprivate Doubletemperatureprivate DoublefrequencyPenaltyprivate IntegermaxTokensprivate DoublepresencePenaltyprivate IntegertopKprivate DoubletopPprivate Thinkingthinkingprivate Durationtimeoutpublic final static LlmOptions.CompanionCompanion
-
Constructor Summary
Constructors Constructor Description LlmOptions(ModelSelectionCriteria modelSelectionCriteria, String model, String role, Double temperature, Double frequencyPenalty, Integer maxTokens, Double presencePenalty, Integer topK, Double topP, Thinking thinking, Duration timeout)LlmOptions(ModelSelectionCriteria modelSelectionCriteria, String model, String role, Double temperature, Double frequencyPenalty, Integer maxTokens, Double presencePenalty, Integer topK, Double topP, Thinking thinking)LlmOptions(ModelSelectionCriteria modelSelectionCriteria, String model, String role, Double temperature, Double frequencyPenalty, Integer maxTokens, Double presencePenalty, Integer topK, Double topP)LlmOptions(ModelSelectionCriteria modelSelectionCriteria, String model, String role, Double temperature, Double frequencyPenalty, Integer maxTokens, Double presencePenalty, Integer topK)LlmOptions(ModelSelectionCriteria modelSelectionCriteria, String model, String role, Double temperature, Double frequencyPenalty, Integer maxTokens, Double presencePenalty)LlmOptions(ModelSelectionCriteria modelSelectionCriteria, String model, String role, Double temperature, Double frequencyPenalty, Integer maxTokens)LlmOptions(ModelSelectionCriteria modelSelectionCriteria, String model, String role, Double temperature, Double frequencyPenalty)LlmOptions(ModelSelectionCriteria modelSelectionCriteria, String model, String role, Double temperature)LlmOptions(ModelSelectionCriteria modelSelectionCriteria, String model, String role)LlmOptions(ModelSelectionCriteria modelSelectionCriteria, String model)LlmOptions(ModelSelectionCriteria modelSelectionCriteria)LlmOptions()
-
Method Summary
-
-
Constructor Detail
-
LlmOptions
LlmOptions(ModelSelectionCriteria modelSelectionCriteria, String model, String role, Double temperature, Double frequencyPenalty, Integer maxTokens, Double presencePenalty, Integer topK, Double topP, Thinking thinking, Duration timeout)
- Parameters:
modelSelectionCriteria- explicit model selection criteria.model- Optional model name to use.role- Optional role to use for model selection.timeout- Optional timeout for this LLM call.
-
LlmOptions
LlmOptions(ModelSelectionCriteria modelSelectionCriteria, String model, String role, Double temperature, Double frequencyPenalty, Integer maxTokens, Double presencePenalty, Integer topK, Double topP, Thinking thinking)
- Parameters:
modelSelectionCriteria- explicit model selection criteria.model- Optional model name to use.role- Optional role to use for model selection.
-
LlmOptions
LlmOptions(ModelSelectionCriteria modelSelectionCriteria, String model, String role, Double temperature, Double frequencyPenalty, Integer maxTokens, Double presencePenalty, Integer topK, Double topP)
- Parameters:
modelSelectionCriteria- explicit model selection criteria.model- Optional model name to use.role- Optional role to use for model selection.
-
LlmOptions
LlmOptions(ModelSelectionCriteria modelSelectionCriteria, String model, String role, Double temperature, Double frequencyPenalty, Integer maxTokens, Double presencePenalty, Integer topK)
- Parameters:
modelSelectionCriteria- explicit model selection criteria.model- Optional model name to use.role- Optional role to use for model selection.
-
LlmOptions
LlmOptions(ModelSelectionCriteria modelSelectionCriteria, String model, String role, Double temperature, Double frequencyPenalty, Integer maxTokens, Double presencePenalty)
- Parameters:
modelSelectionCriteria- explicit model selection criteria.model- Optional model name to use.role- Optional role to use for model selection.
-
LlmOptions
LlmOptions(ModelSelectionCriteria modelSelectionCriteria, String model, String role, Double temperature, Double frequencyPenalty, Integer maxTokens)
- Parameters:
modelSelectionCriteria- explicit model selection criteria.model- Optional model name to use.role- Optional role to use for model selection.
-
LlmOptions
LlmOptions(ModelSelectionCriteria modelSelectionCriteria, String model, String role, Double temperature, Double frequencyPenalty)
- Parameters:
modelSelectionCriteria- explicit model selection criteria.model- Optional model name to use.role- Optional role to use for model selection.
-
LlmOptions
LlmOptions(ModelSelectionCriteria modelSelectionCriteria, String model, String role, Double temperature)
- Parameters:
modelSelectionCriteria- explicit model selection criteria.model- Optional model name to use.role- Optional role to use for model selection.
-
LlmOptions
LlmOptions(ModelSelectionCriteria modelSelectionCriteria, String model, String role)
- Parameters:
modelSelectionCriteria- explicit model selection criteria.model- Optional model name to use.role- Optional role to use for model selection.
-
LlmOptions
LlmOptions(ModelSelectionCriteria modelSelectionCriteria, String model)
- Parameters:
modelSelectionCriteria- explicit model selection criteria.model- Optional model name to use.
-
LlmOptions
LlmOptions(ModelSelectionCriteria modelSelectionCriteria)
- Parameters:
modelSelectionCriteria- explicit model selection criteria.
-
LlmOptions
LlmOptions()
-
-
Method Detail
-
getCriteria
final ModelSelectionCriteria getCriteria()
-
getModelSelectionCriteria
final ModelSelectionCriteria getModelSelectionCriteria()
-
setModelSelectionCriteria
final Unit setModelSelectionCriteria(ModelSelectionCriteria modelSelectionCriteria)
- Parameters:
modelSelectionCriteria- explicit model selection criteria.
-
setRole
final Unit setRole(String role)
- Parameters:
role- Optional role to use for model selection.
-
getTemperature
Double getTemperature()
-
setTemperature
Unit setTemperature(Double temperature)
-
getFrequencyPenalty
Double getFrequencyPenalty()
-
setFrequencyPenalty
Unit setFrequencyPenalty(Double frequencyPenalty)
-
getMaxTokens
Integer getMaxTokens()
-
setMaxTokens
Unit setMaxTokens(Integer maxTokens)
-
getPresencePenalty
Double getPresencePenalty()
-
setPresencePenalty
Unit setPresencePenalty(Double presencePenalty)
-
getThinking
final Thinking getThinking()
-
setThinking
final Unit setThinking(Thinking thinking)
-
getTimeout
final Duration getTimeout()
-
setTimeout
final Unit setTimeout(Duration timeout)
- Parameters:
timeout- Optional timeout for this LLM call.
-
withTemperature
final LlmOptions withTemperature(Double temperature)
Create a copy with a default temperature for the LLM. If null, uses the default temperature for the model.
-
withMaxTokens
final LlmOptions withMaxTokens(Integer maxTokens)
-
withTopK
final LlmOptions withTopK(Integer topK)
-
withTopP
final LlmOptions withTopP(Double topP)
-
withFrequencyPenalty
final LlmOptions withFrequencyPenalty(Double frequencyPenalty)
-
withPresencePenalty
final LlmOptions withPresencePenalty(Double presencePenalty)
-
withThinking
final LlmOptions withThinking(Thinking thinking)
-
withoutThinking
final LlmOptions withoutThinking()
-
withTimeout
final LlmOptions withTimeout(Duration timeout)
-
infoString
String infoString(Boolean verbose, Integer indent)
-
withDefaults
final static LlmOptions withDefaults()
-
fromModel
@Deprecated(message = "Use 'withModel' instead", replaceWith = @ReplaceWith(imports = {}, expression = "withModel(model)")) final static LlmOptions fromModel(String model)
-
withModel
final static LlmOptions withModel(String model)
Create an LlmOptions instance with a specific model.
- Parameters:
model- The name of the model to use.
-
withDefaultLlm
final static LlmOptions withDefaultLlm()
-
withAutoLlm
final static LlmOptions withAutoLlm()
-
withLlmForRole
final static LlmOptions withLlmForRole(String role)
Create an LlmOptions instance using the model given a specific role. You will need to define the model for the role in configuration.
- Parameters:
role- The role for which to select the model.
-
withFirstAvailableLlmOf
final static LlmOptions withFirstAvailableLlmOf(String names)
Create an LlmOptions instance that will select the first available LLM of the given names.
-
fromCriteria
final static LlmOptions fromCriteria(ModelSelectionCriteria criteria)
-
-
-
-