Packages

class AutoGGUFModel extends AnnotatorModel[AutoGGUFModel] with HasBatchedAnnotate[AutoGGUFModel] with HasEngine with HasLlamaCppModelProperties with HasLlamaCppInferenceProperties with HasProtectedParams with CompletionPostProcessing

Annotator that uses the llama.cpp library to generate text completions with large language models.

For settable parameters, and their explanations, see HasLlamaCppInferenceProperties, HasLlamaCppModelProperties and refer to the llama.cpp documentation of server.cpp for more information.

If the parameters are not set, the annotator will default to use the parameters provided by the model.

Pretrained models can be loaded with pretrained of the companion object:

val autoGGUFModel = AutoGGUFModel.pretrained()
  .setInputCols("document")
  .setOutputCol("completions")

The default model is "Phi_4_mini_instruct_Q4_K_M_gguf", if no name is provided.

AutoGGUFModel is also able to load pretrained models from AutoGGUFVisionModel. Just specify the same name for the pretrained method, and it will load the text-part of the multimodal model automatically.

For available pretrained models please see the Models Hub.

For extended examples of usage, see the AutoGGUFModelTest and the example notebook.

Note

To use GPU inference with this annotator, make sure to use the Spark NLP GPU package and set the number of GPU layers with the setNGpuLayers method.

When using larger models, we recommend adjusting GPU usage with setNCtx and setNGpuLayers according to your hardware to avoid out-of-memory errors.

Example

import com.johnsnowlabs.nlp.base._
import com.johnsnowlabs.nlp.annotator._
import org.apache.spark.ml.Pipeline
import spark.implicits._

val document = new DocumentAssembler()
  .setInputCol("text")
  .setOutputCol("document")

val autoGGUFModel = AutoGGUFModel
  .pretrained()
  .setInputCols("document")
  .setOutputCol("completions")
  .setBatchSize(4)
  .setNPredict(20)
  .setNGpuLayers(99)
  .setTemperature(0.4f)
  .setTopK(40)
  .setTopP(0.9f)
  .setPenalizeNl(true)

val pipeline = new Pipeline().setStages(Array(document, autoGGUFModel))

val data = Seq("Hello, I am a").toDF("text")
val result = pipeline.fit(data).transform(data)
result.select("completions").show(truncate = false)
+-----------------------------------------------------------------------------------------------------------------------------------+
|completions                                                                                                                        |
+-----------------------------------------------------------------------------------------------------------------------------------+
|[{document, 0, 78,  new user.  I am currently working on a project and I need to create a list of , {prompt -> Hello, I am a}, []}]|
+-----------------------------------------------------------------------------------------------------------------------------------+
Linear Supertypes
Ordering
  1. Grouped
  2. Alphabetic
  3. By Inheritance
Inherited
  1. AutoGGUFModel
  2. CompletionPostProcessing
  3. HasProtectedParams
  4. HasLlamaCppInferenceProperties
  5. HasLlamaCppModelProperties
  6. HasEngine
  7. HasBatchedAnnotate
  8. AnnotatorModel
  9. CanBeLazy
  10. RawAnnotator
  11. HasOutputAnnotationCol
  12. HasInputAnnotationCols
  13. HasOutputAnnotatorType
  14. ParamsAndFeaturesWritable
  15. HasFeatures
  16. DefaultParamsWritable
  17. MLWritable
  18. Model
  19. Transformer
  20. PipelineStage
  21. Logging
  22. Params
  23. Serializable
  24. Serializable
  25. Identifiable
  26. AnyRef
  27. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new AutoGGUFModel()

    Annotator reference id.

    Annotator reference id. Used to identify elements in metadata or to refer to this annotator type

  2. new AutoGGUFModel(uid: String)

    uid

    required uid for storing annotator to disk

Type Members

  1. implicit class ProtectedParam[T] extends Param[T]
    Definition Classes
    HasProtectedParams
  2. type AnnotationContent = Seq[Row]

    internal types to show Rows as a relevant StructType Should be deleted once Spark releases UserDefinedTypes to @developerAPI

    internal types to show Rows as a relevant StructType Should be deleted once Spark releases UserDefinedTypes to @developerAPI

    Attributes
    protected
    Definition Classes
    AnnotatorModel
  3. type AnnotatorType = String
    Definition Classes
    HasOutputAnnotatorType

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def $[T](param: Param[T]): T
    Attributes
    protected
    Definition Classes
    Params
  4. def $$[T](feature: StructFeature[T]): T
    Attributes
    protected
    Definition Classes
    HasFeatures
  5. def $$[K, V](feature: MapFeature[K, V]): Map[K, V]
    Attributes
    protected
    Definition Classes
    HasFeatures
  6. def $$[T](feature: SetFeature[T]): Set[T]
    Attributes
    protected
    Definition Classes
    HasFeatures
  7. def $$[T](feature: ArrayFeature[T]): Array[T]
    Attributes
    protected
    Definition Classes
    HasFeatures
  8. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  9. def _transform(dataset: Dataset[_], recursivePipeline: Option[PipelineModel]): DataFrame
    Attributes
    protected
    Definition Classes
    AnnotatorModel
  10. def afterAnnotate(dataset: DataFrame): DataFrame
    Attributes
    protected
    Definition Classes
    AnnotatorModel
  11. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  12. def batchAnnotate(batchedAnnotations: Seq[Array[Annotation]]): Seq[Seq[Annotation]]

    Completes the batch of annotations.

    Completes the batch of annotations.

    batchedAnnotations

    Annotations (single element arrays) in batches

    returns

    Completed text sequences

    Definition Classes
    AutoGGUFModelHasBatchedAnnotate
  13. def batchProcess(rows: Iterator[_]): Iterator[Row]
    Definition Classes
    HasBatchedAnnotate
  14. val batchSize: IntParam

    Size of every batch (Default depends on model).

    Size of every batch (Default depends on model).

    Definition Classes
    HasBatchedAnnotate
  15. def beforeAnnotate(dataset: Dataset[_]): Dataset[_]
    Attributes
    protected
    Definition Classes
    AnnotatorModel
  16. val cachePrompt: BooleanParam

  17. val chatTemplate: Param[String]

    Definition Classes
    HasLlamaCppModelProperties
  18. final def checkSchema(schema: StructType, inputAnnotatorType: String): Boolean
    Attributes
    protected
    Definition Classes
    HasInputAnnotationCols
  19. final def clear(param: Param[_]): AutoGGUFModel.this.type
    Definition Classes
    Params
  20. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  21. def close(): Unit

    Closes the llama.cpp model backend freeing resources.

    Closes the llama.cpp model backend freeing resources. The model is reloaded when used again.

  22. def copy(extra: ParamMap): AutoGGUFModel

    requirement for annotators copies

    requirement for annotators copies

    Definition Classes
    RawAnnotator → Model → Transformer → PipelineStage → Params
  23. def copyValues[T <: Params](to: T, extra: ParamMap): T
    Attributes
    protected
    Definition Classes
    Params
  24. final def defaultCopy[T <: Params](extra: ParamMap): T
    Attributes
    protected
    Definition Classes
    Params
  25. val defragmentationThreshold: FloatParam

    Definition Classes
    HasLlamaCppModelProperties
  26. val disableLog: BooleanParam

    Definition Classes
    HasLlamaCppModelProperties
  27. val disableTokenIds: IntArrayParam

  28. val dynamicTemperatureExponent: FloatParam

  29. val dynamicTemperatureRange: FloatParam

  30. val engine: Param[String]

    This param is set internally once via loadSavedModel.

    This param is set internally once via loadSavedModel. That's why there is no setter

    Definition Classes
    HasEngine
  31. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  32. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  33. def explainParam(param: Param[_]): String
    Definition Classes
    Params
  34. def explainParams(): String
    Definition Classes
    Params
  35. def extraValidate(structType: StructType): Boolean
    Attributes
    protected
    Definition Classes
    RawAnnotator
  36. def extraValidateMsg: String

    Override for additional custom schema checks

    Override for additional custom schema checks

    Attributes
    protected
    Definition Classes
    RawAnnotator
  37. final def extractParamMap(): ParamMap
    Definition Classes
    Params
  38. final def extractParamMap(extra: ParamMap): ParamMap
    Definition Classes
    Params
  39. val features: ArrayBuffer[Feature[_, _, _]]
    Definition Classes
    HasFeatures
  40. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  41. val flashAttention: BooleanParam

    Definition Classes
    HasLlamaCppModelProperties
  42. val frequencyPenalty: FloatParam

  43. def get[T](feature: StructFeature[T]): Option[T]
    Attributes
    protected
    Definition Classes
    HasFeatures
  44. def get[K, V](feature: MapFeature[K, V]): Option[Map[K, V]]
    Attributes
    protected
    Definition Classes
    HasFeatures
  45. def get[T](feature: SetFeature[T]): Option[Set[T]]
    Attributes
    protected
    Definition Classes
    HasFeatures
  46. def get[T](feature: ArrayFeature[T]): Option[Array[T]]
    Attributes
    protected
    Definition Classes
    HasFeatures
  47. final def get[T](param: Param[T]): Option[T]
    Definition Classes
    Params
  48. def getBatchSize: Int

    Size of every batch.

    Size of every batch.

    Definition Classes
    HasBatchedAnnotate
  49. def getCachePrompt: Boolean

  50. def getChatTemplate: String

    Definition Classes
    HasLlamaCppModelProperties
  51. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  52. final def getDefault[T](param: Param[T]): Option[T]
    Definition Classes
    Params
  53. def getDefragmentationThreshold: Float

    Definition Classes
    HasLlamaCppModelProperties
  54. def getDisableLog: Boolean

    Definition Classes
    HasLlamaCppModelProperties
  55. def getDisableTokenIds: Array[Int]

  56. def getDynamicTemperatureExponent: Float

  57. def getDynamicTemperatureRange: Float

  58. def getEngine: String

    Definition Classes
    HasEngine
  59. def getFlashAttention: Boolean

    Definition Classes
    HasLlamaCppModelProperties
  60. def getFrequencyPenalty: Float

  61. def getGrammar: String

  62. def getIgnoreEos: Boolean

  63. def getInferenceParameters: InferenceParameters
    Attributes
    protected
    Definition Classes
    HasLlamaCppInferenceProperties
  64. def getInputCols: Array[String]

    returns

    input annotations columns currently used

    Definition Classes
    HasInputAnnotationCols
  65. def getInputPrefix: String

  66. def getInputSuffix: String

  67. def getLazyAnnotator: Boolean
    Definition Classes
    CanBeLazy
  68. def getLogVerbosity: Int
    Definition Classes
    HasLlamaCppModelProperties
  69. def getMainGpu: Int

    Definition Classes
    HasLlamaCppModelProperties
  70. def getMetadata: String

    Get the metadata for the model

    Get the metadata for the model

    Definition Classes
    HasLlamaCppModelProperties
  71. def getMetadataMap: Map[String, Map[String, String]]
    Definition Classes
    HasLlamaCppModelProperties
  72. def getMinKeep: Int

  73. def getMinP: Float

  74. def getMiroStat: String

  75. def getMiroStatEta: Float

  76. def getMiroStatTau: Float

  77. def getModelDraft: String

    Definition Classes
    HasLlamaCppModelProperties
  78. def getModelIfNotSet: GGUFWrapper

  79. def getModelParameters: ModelParameters
    Attributes
    protected
    Definition Classes
    HasLlamaCppModelProperties
  80. def getNBatch: Int

    Definition Classes
    HasLlamaCppModelProperties
  81. def getNCtx: Int

    Definition Classes
    HasLlamaCppModelProperties
  82. def getNDraft: Int

    Definition Classes
    HasLlamaCppModelProperties
  83. def getNGpuLayers: Int

    Definition Classes
    HasLlamaCppModelProperties
  84. def getNGpuLayersDraft: Int

    Definition Classes
    HasLlamaCppModelProperties
  85. def getNKeep: Int

  86. def getNPredict: Int
  87. def getNProbs: Int

  88. def getNThreads: Int

    Definition Classes
    HasLlamaCppModelProperties
  89. def getNThreadsBatch: Int

    Definition Classes
    HasLlamaCppModelProperties
  90. def getNUbatch: Int

    Definition Classes
    HasLlamaCppModelProperties
  91. def getNoKvOffload: Boolean

    Definition Classes
    HasLlamaCppModelProperties
  92. def getNuma: String

    Definition Classes
    HasLlamaCppModelProperties
  93. final def getOrDefault[T](param: Param[T]): T
    Definition Classes
    Params
  94. final def getOutputCol: String

    Gets annotation column name going to generate

    Gets annotation column name going to generate

    Definition Classes
    HasOutputAnnotationCol
  95. def getParam(paramName: String): Param[Any]
    Definition Classes
    Params
  96. def getPenalizeNl: Boolean

  97. def getPenaltyPrompt: String

  98. def getPresencePenalty: Float

  99. def getRemoveThinkingTag: Option[String]

    Definition Classes
    CompletionPostProcessing
  100. def getRepeatLastN: Int

  101. def getRepeatPenalty: Float

  102. def getRopeFreqBase: Float

    Definition Classes
    HasLlamaCppModelProperties
  103. def getRopeFreqScale: Float

    Definition Classes
    HasLlamaCppModelProperties
  104. def getRopeScalingType: String

    Definition Classes
    HasLlamaCppModelProperties
  105. def getSamplers: Array[String]

  106. def getSeed: Int

  107. def getSplitMode: String

    Definition Classes
    HasLlamaCppModelProperties
  108. def getStopStrings: Array[String]

  109. def getSystemPrompt: String

    Definition Classes
    HasLlamaCppModelProperties
  110. def getTemperature: Float

  111. def getTfsZ: Float

  112. def getTokenBias: Map[String, Float]

  113. def getTokenIdBias: Map[Int, Float]

  114. def getTopK: Int

  115. def getTopP: Float

  116. def getTypicalP: Float

  117. def getUseChatTemplate: Boolean

  118. def getUseMlock: Boolean

    Definition Classes
    HasLlamaCppModelProperties
  119. def getUseMmap: Boolean

    Definition Classes
    HasLlamaCppModelProperties
  120. def getYarnAttnFactor: Float

    Definition Classes
    HasLlamaCppModelProperties
  121. def getYarnBetaFast: Float

    Definition Classes
    HasLlamaCppModelProperties
  122. def getYarnBetaSlow: Float

    Definition Classes
    HasLlamaCppModelProperties
  123. def getYarnExtFactor: Float

    Definition Classes
    HasLlamaCppModelProperties
  124. def getYarnOrigCtx: Int

    Definition Classes
    HasLlamaCppModelProperties
  125. val gpuSplitMode: Param[String]

    Set how to split the model across GPUs

    Set how to split the model across GPUs

    • NONE: No GPU split
    • LAYER: Split the model across GPUs by layer
    • ROW: Split the model across GPUs by rows
    Definition Classes
    HasLlamaCppModelProperties
  126. val grammar: Param[String]

  127. final def hasDefault[T](param: Param[T]): Boolean
    Definition Classes
    Params
  128. def hasParam(paramName: String): Boolean
    Definition Classes
    Params
  129. def hasParent: Boolean
    Definition Classes
    Model
  130. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  131. val ignoreEos: BooleanParam

  132. def initializeLogIfNecessary(isInterpreter: Boolean, silent: Boolean): Boolean
    Attributes
    protected
    Definition Classes
    Logging
  133. def initializeLogIfNecessary(isInterpreter: Boolean): Unit
    Attributes
    protected
    Definition Classes
    Logging
  134. val inputAnnotatorTypes: Array[AnnotatorType]

    Annotator reference id.

    Annotator reference id. Used to identify elements in metadata or to refer to this annotator type

    Definition Classes
    AutoGGUFModelHasInputAnnotationCols
  135. final val inputCols: StringArrayParam

    columns that contain annotations necessary to run this annotator AnnotatorType is used both as input and output columns if not specified

    columns that contain annotations necessary to run this annotator AnnotatorType is used both as input and output columns if not specified

    Attributes
    protected
    Definition Classes
    HasInputAnnotationCols
  136. val inputPrefix: Param[String]

  137. val inputSuffix: Param[String]

  138. final def isDefined(param: Param[_]): Boolean
    Definition Classes
    Params
  139. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  140. final def isSet(param: Param[_]): Boolean
    Definition Classes
    Params
  141. def isTraceEnabled(): Boolean
    Attributes
    protected
    Definition Classes
    Logging
  142. val lazyAnnotator: BooleanParam
    Definition Classes
    CanBeLazy
  143. def log: Logger
    Attributes
    protected
    Definition Classes
    Logging
  144. def logDebug(msg: ⇒ String, throwable: Throwable): Unit
    Attributes
    protected
    Definition Classes
    Logging
  145. def logDebug(msg: ⇒ String): Unit
    Attributes
    protected
    Definition Classes
    Logging
  146. def logError(msg: ⇒ String, throwable: Throwable): Unit
    Attributes
    protected
    Definition Classes
    Logging
  147. def logError(msg: ⇒ String): Unit
    Attributes
    protected
    Definition Classes
    Logging
  148. def logInfo(msg: ⇒ String, throwable: Throwable): Unit
    Attributes
    protected
    Definition Classes
    Logging
  149. def logInfo(msg: ⇒ String): Unit
    Attributes
    protected
    Definition Classes
    Logging
  150. def logName: String
    Attributes
    protected
    Definition Classes
    Logging
  151. def logTrace(msg: ⇒ String, throwable: Throwable): Unit
    Attributes
    protected
    Definition Classes
    Logging
  152. def logTrace(msg: ⇒ String): Unit
    Attributes
    protected
    Definition Classes
    Logging
  153. val logVerbosity: IntParam

    Definition Classes
    HasLlamaCppModelProperties
  154. def logWarning(msg: ⇒ String, throwable: Throwable): Unit
    Attributes
    protected
    Definition Classes
    Logging
  155. def logWarning(msg: ⇒ String): Unit
    Attributes
    protected
    Definition Classes
    Logging
  156. val logger: Logger
    Attributes
    protected
    Definition Classes
    HasLlamaCppModelProperties
  157. val mainGpu: IntParam

    Definition Classes
    HasLlamaCppModelProperties
  158. val metadata: ProtectedParam[String]
    Definition Classes
    HasLlamaCppModelProperties
  159. val minKeep: IntParam

  160. val minP: FloatParam

  161. val miroStat: Param[String]

  162. val miroStatEta: FloatParam

  163. val miroStatTau: FloatParam

  164. val modelDraft: Param[String]

    Definition Classes
    HasLlamaCppModelProperties
  165. def msgHelper(schema: StructType): String
    Attributes
    protected
    Definition Classes
    HasInputAnnotationCols
  166. val nBatch: IntParam

    Definition Classes
    HasLlamaCppModelProperties
  167. val nCtx: IntParam

    Definition Classes
    HasLlamaCppModelProperties
  168. val nDraft: IntParam

    Definition Classes
    HasLlamaCppModelProperties
  169. val nGpuLayers: IntParam

    Definition Classes
    HasLlamaCppModelProperties
  170. val nGpuLayersDraft: IntParam

    Definition Classes
    HasLlamaCppModelProperties
  171. val nKeep: IntParam

  172. val nPredict: IntParam

  173. val nProbs: IntParam

  174. val nThreads: IntParam

    Definition Classes
    HasLlamaCppModelProperties
  175. val nThreadsBatch: IntParam

    Definition Classes
    HasLlamaCppModelProperties
  176. val nUbatch: IntParam

    Definition Classes
    HasLlamaCppModelProperties
  177. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  178. val noKvOffload: BooleanParam

    Definition Classes
    HasLlamaCppModelProperties
  179. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  180. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  181. val numaStrategy: Param[String]

    Set optimization strategies that help on some NUMA systems (if available)

    Set optimization strategies that help on some NUMA systems (if available)

    Available Strategies:

    • DISABLED: No NUMA optimizations
    • DISTRIBUTE: Spread execution evenly over all
    • ISOLATE: Only spawn threads on CPUs on the node that execution started on
    • NUMA_CTL: Use the CPU map provided by numactl
    • MIRROR: Mirrors the model across NUMA nodes
    Definition Classes
    HasLlamaCppModelProperties
  182. def onWrite(path: String, spark: SparkSession): Unit
  183. val optionalInputAnnotatorTypes: Array[String]
    Definition Classes
    HasInputAnnotationCols
  184. val outputAnnotatorType: AnnotatorType
    Definition Classes
    AutoGGUFModelHasOutputAnnotatorType
  185. final val outputCol: Param[String]
    Attributes
    protected
    Definition Classes
    HasOutputAnnotationCol
  186. lazy val params: Array[Param[_]]
    Definition Classes
    Params
  187. var parent: Estimator[AutoGGUFModel]
    Definition Classes
    Model
  188. val penalizeNl: BooleanParam

  189. val penaltyPrompt: Param[String]

  190. val presencePenalty: FloatParam

  191. def processCompletions(results: Array[String]): Array[String]
    Attributes
    protected
    Definition Classes
    CompletionPostProcessing
  192. val removeThinkingTag: Param[String]

    Definition Classes
    CompletionPostProcessing
  193. val repeatLastN: IntParam

  194. val repeatPenalty: FloatParam

  195. val ropeFreqBase: FloatParam

    Definition Classes
    HasLlamaCppModelProperties
  196. val ropeFreqScale: FloatParam

    Definition Classes
    HasLlamaCppModelProperties
  197. val ropeScalingType: Param[String]

    Set the RoPE frequency scaling method, defaults to linear unless specified by the model.

    Set the RoPE frequency scaling method, defaults to linear unless specified by the model.

    • UNSPECIFIED: Don't use any scaling
    • LINEAR: Linear scaling
    • YARN: YaRN RoPE scaling
    Definition Classes
    HasLlamaCppModelProperties
  198. val samplers: StringArrayParam

  199. def save(path: String): Unit
    Definition Classes
    MLWritable
    Annotations
    @Since( "1.6.0" ) @throws( ... )
  200. val seed: IntParam

  201. def set[T](param: ProtectedParam[T], value: T): AutoGGUFModel.this.type

    Sets the value for a protected Param.

    Sets the value for a protected Param.

    If the parameter was already set, it will not be set again. Default values do not count as a set value and can be overridden.

    T

    Type of the parameter

    param

    Protected parameter to set

    value

    Value for the parameter

    returns

    This object

    Definition Classes
    HasProtectedParams
  202. def set[T](feature: StructFeature[T], value: T): AutoGGUFModel.this.type
    Attributes
    protected
    Definition Classes
    HasFeatures
  203. def set[K, V](feature: MapFeature[K, V], value: Map[K, V]): AutoGGUFModel.this.type
    Attributes
    protected
    Definition Classes
    HasFeatures
  204. def set[T](feature: SetFeature[T], value: Set[T]): AutoGGUFModel.this.type
    Attributes
    protected
    Definition Classes
    HasFeatures
  205. def set[T](feature: ArrayFeature[T], value: Array[T]): AutoGGUFModel.this.type
    Attributes
    protected
    Definition Classes
    HasFeatures
  206. final def set(paramPair: ParamPair[_]): AutoGGUFModel.this.type
    Attributes
    protected
    Definition Classes
    Params
  207. final def set(param: String, value: Any): AutoGGUFModel.this.type
    Attributes
    protected
    Definition Classes
    Params
  208. final def set[T](param: Param[T], value: T): AutoGGUFModel.this.type
    Definition Classes
    Params
  209. def setBatchSize(size: Int): AutoGGUFModel.this.type

    Size of every batch.

    Size of every batch.

    Definition Classes
    HasBatchedAnnotate
  210. def setCachePrompt(cachePrompt: Boolean): AutoGGUFModel.this.type

    Whether to remember the prompt to avoid reprocessing it

    Whether to remember the prompt to avoid reprocessing it

    Definition Classes
    HasLlamaCppInferenceProperties
  211. def setChatTemplate(chatTemplate: String): AutoGGUFModel.this.type

    The chat template to use

    The chat template to use

    Definition Classes
    HasLlamaCppModelProperties
  212. def setDefault[T](feature: StructFeature[T], value: () ⇒ T): AutoGGUFModel.this.type
    Attributes
    protected
    Definition Classes
    HasFeatures
  213. def setDefault[K, V](feature: MapFeature[K, V], value: () ⇒ Map[K, V]): AutoGGUFModel.this.type
    Attributes
    protected
    Definition Classes
    HasFeatures
  214. def setDefault[T](feature: SetFeature[T], value: () ⇒ Set[T]): AutoGGUFModel.this.type
    Attributes
    protected
    Definition Classes
    HasFeatures
  215. def setDefault[T](feature: ArrayFeature[T], value: () ⇒ Array[T]): AutoGGUFModel.this.type
    Attributes
    protected
    Definition Classes
    HasFeatures
  216. final def setDefault(paramPairs: ParamPair[_]*): AutoGGUFModel.this.type
    Attributes
    protected
    Definition Classes
    Params
  217. final def setDefault[T](param: Param[T], value: T): AutoGGUFModel.this.type
    Attributes
    protected[org.apache.spark.ml]
    Definition Classes
    Params
  218. def setDefragmentationThreshold(defragThold: Float): AutoGGUFModel.this.type

    Set the KV cache defragmentation threshold

    Set the KV cache defragmentation threshold

    Definition Classes
    HasLlamaCppModelProperties
  219. def setDisableLog(disableLog: Boolean): AutoGGUFModel.this.type

    Definition Classes
    HasLlamaCppModelProperties
  220. def setDisableTokenIds(disableTokenIds: Array[Int]): AutoGGUFModel.this.type

    Set the token ids to disable in the completion.

    Set the token ids to disable in the completion. This corresponds to setTokenBias with a value of Float.NEGATIVE_INFINITY.

    Definition Classes
    HasLlamaCppInferenceProperties
  221. def setDynamicTemperatureExponent(dynatempExponent: Float): AutoGGUFModel.this.type

    Set the dynamic temperature exponent

    Set the dynamic temperature exponent

    Definition Classes
    HasLlamaCppInferenceProperties
  222. def setDynamicTemperatureRange(dynatempRange: Float): AutoGGUFModel.this.type

    Set the dynamic temperature range

    Set the dynamic temperature range

    Definition Classes
    HasLlamaCppInferenceProperties
  223. def setFlashAttention(flashAttention: Boolean): AutoGGUFModel.this.type

    Whether to enable Flash Attention

    Whether to enable Flash Attention

    Definition Classes
    HasLlamaCppModelProperties
  224. def setFrequencyPenalty(frequencyPenalty: Float): AutoGGUFModel.this.type

    Set the repetition alpha frequency penalty

    Set the repetition alpha frequency penalty

    Definition Classes
    HasLlamaCppInferenceProperties
  225. def setGpuSplitMode(splitMode: String): AutoGGUFModel.this.type

    Set how to split the model across GPUs

    Set how to split the model across GPUs

    • NONE: No GPU split -LAYER: Split the model across GPUs by layer 2. ROW: Split the model across GPUs by rows
    Definition Classes
    HasLlamaCppModelProperties
  226. def setGrammar(grammar: String): AutoGGUFModel.this.type

    Set BNF-like grammar to constrain generations

    Set BNF-like grammar to constrain generations

    Definition Classes
    HasLlamaCppInferenceProperties
  227. def setIgnoreEos(ignoreEos: Boolean): AutoGGUFModel.this.type

    Set whether to ignore end of stream token and continue generating (implies --logit-bias 2-inf)

    Set whether to ignore end of stream token and continue generating (implies --logit-bias 2-inf)

    Definition Classes
    HasLlamaCppInferenceProperties
  228. final def setInputCols(value: String*): AutoGGUFModel.this.type
    Definition Classes
    HasInputAnnotationCols
  229. def setInputCols(value: Array[String]): AutoGGUFModel.this.type

    Overrides required annotators column if different than default

    Overrides required annotators column if different than default

    Definition Classes
    HasInputAnnotationCols
  230. def setInputPrefix(inputPrefix: String): AutoGGUFModel.this.type

    Set the prompt to start generation with

    Set the prompt to start generation with

    Definition Classes
    HasLlamaCppInferenceProperties
  231. def setInputSuffix(inputSuffix: String): AutoGGUFModel.this.type

    Set a suffix for infilling

    Set a suffix for infilling

    Definition Classes
    HasLlamaCppInferenceProperties
  232. def setLazyAnnotator(value: Boolean): AutoGGUFModel.this.type
    Definition Classes
    CanBeLazy
  233. def setLogVerbosity(logVerbosity: Int): AutoGGUFModel.this.type

    Set the verbosity threshold.

    Set the verbosity threshold. Messages with a higher verbosity will be ignored.

    Values map to the following:

    • GGML_LOG_LEVEL_NONE = 0
    • GGML_LOG_LEVEL_DEBUG = 1
    • GGML_LOG_LEVEL_INFO = 2
    • GGML_LOG_LEVEL_WARN = 3
    • GGML_LOG_LEVEL_ERROR = 4
    • GGML_LOG_LEVEL_CONT = 5 (continue previous log)
    Definition Classes
    HasLlamaCppModelProperties
  234. def setMainGpu(mainGpu: Int): AutoGGUFModel.this.type

    Set the GPU that is used for scratch and small tensors

    Set the GPU that is used for scratch and small tensors

    Definition Classes
    HasLlamaCppModelProperties
  235. def setMetadata(metadata: String): AutoGGUFModel.this.type

    Set the metadata for the model

    Set the metadata for the model

    Definition Classes
    HasLlamaCppModelProperties
  236. def setMinKeep(minKeep: Int): AutoGGUFModel.this.type

    Set the amount of tokens the samplers should return at least (0 = disabled)

    Set the amount of tokens the samplers should return at least (0 = disabled)

    Definition Classes
    HasLlamaCppInferenceProperties
  237. def setMinP(minP: Float): AutoGGUFModel.this.type

    Set min-p sampling

    Set min-p sampling

    Definition Classes
    HasLlamaCppInferenceProperties
  238. def setMiroStat(mirostat: String): AutoGGUFModel.this.type

    Set MiroStat sampling strategies.

    Set MiroStat sampling strategies.

    • DISABLED: No MiroStat
    • V1: MiroStat V1
    • V2: MiroStat V2
    Definition Classes
    HasLlamaCppInferenceProperties
  239. def setMiroStatEta(mirostatEta: Float): AutoGGUFModel.this.type

    Set the MiroStat learning rate, parameter eta

    Set the MiroStat learning rate, parameter eta

    Definition Classes
    HasLlamaCppInferenceProperties
  240. def setMiroStatTau(mirostatTau: Float): AutoGGUFModel.this.type

    Set the MiroStat target entropy, parameter tau

    Set the MiroStat target entropy, parameter tau

    Definition Classes
    HasLlamaCppInferenceProperties
  241. def setModelDraft(modelDraft: String): AutoGGUFModel.this.type

    Set the draft model for speculative decoding

    Set the draft model for speculative decoding

    Definition Classes
    HasLlamaCppModelProperties
  242. def setModelIfNotSet(spark: SparkSession, wrapper: GGUFWrapper): AutoGGUFModel.this.type

  243. def setNBatch(nBatch: Int): AutoGGUFModel.this.type

    Set the logical batch size for prompt processing (must be >=32 to use BLAS)

    Set the logical batch size for prompt processing (must be >=32 to use BLAS)

    Definition Classes
    HasLlamaCppModelProperties
  244. def setNCtx(nCtx: Int): AutoGGUFModel.this.type

    Set the size of the prompt context

    Set the size of the prompt context

    Definition Classes
    HasLlamaCppModelProperties
  245. def setNDraft(nDraft: Int): AutoGGUFModel.this.type

    Set the number of tokens to draft for speculative decoding

    Set the number of tokens to draft for speculative decoding

    Definition Classes
    HasLlamaCppModelProperties
  246. def setNGpuLayers(nGpuLayers: Int): AutoGGUFModel.this.type

    Set the number of layers to store in VRAM (-1 - use default)

    Set the number of layers to store in VRAM (-1 - use default)

    Definition Classes
    HasLlamaCppModelProperties
  247. def setNGpuLayersDraft(nGpuLayersDraft: Int): AutoGGUFModel.this.type

    Set the number of layers to store in VRAM for the draft model (-1 - use default)

    Set the number of layers to store in VRAM for the draft model (-1 - use default)

    Definition Classes
    HasLlamaCppModelProperties
  248. def setNKeep(nKeep: Int): AutoGGUFModel.this.type

    Set the number of tokens to keep from the initial prompt

    Set the number of tokens to keep from the initial prompt

    Definition Classes
    HasLlamaCppInferenceProperties
  249. def setNParallel(nParallel: Int): AutoGGUFModel.this.type

    Sets the number of parallel processes for decoding.

    Sets the number of parallel processes for decoding. This is an alias for setBatchSize.

    nParallel

    The number of parallel processes for decoding

  250. def setNPredict(nPredict: Int): AutoGGUFModel.this.type

    Set the number of tokens to predict

    Set the number of tokens to predict

    Definition Classes
    HasLlamaCppInferenceProperties
  251. def setNProbs(nProbs: Int): AutoGGUFModel.this.type

    Set the amount top tokens probabilities to output if greater than 0.

    Set the amount top tokens probabilities to output if greater than 0.

    Definition Classes
    HasLlamaCppInferenceProperties
  252. def setNThreads(nThreads: Int): AutoGGUFModel.this.type

    Set the number of threads to use during generation

    Set the number of threads to use during generation

    Definition Classes
    HasLlamaCppModelProperties
  253. def setNThreadsBatch(nThreadsBatch: Int): AutoGGUFModel.this.type

    Set the number of threads to use during batch and prompt processing

    Set the number of threads to use during batch and prompt processing

    Definition Classes
    HasLlamaCppModelProperties
  254. def setNUbatch(nUbatch: Int): AutoGGUFModel.this.type

    Set the physical batch size for prompt processing (must be >=32 to use BLAS)

    Set the physical batch size for prompt processing (must be >=32 to use BLAS)

    Definition Classes
    HasLlamaCppModelProperties
  255. def setNoKvOffload(noKvOffload: Boolean): AutoGGUFModel.this.type

    Whether to disable KV offload

    Whether to disable KV offload

    Definition Classes
    HasLlamaCppModelProperties
  256. def setNumaStrategy(numa: String): AutoGGUFModel.this.type

    Set optimization strategies that help on some NUMA systems (if available)

    Set optimization strategies that help on some NUMA systems (if available)

    Available Strategies:

    • DISABLED: No NUMA optimizations
    • DISTRIBUTE: spread execution evenly over all
    • ISOLATE: only spawn threads on CPUs on the node that execution started on
    • NUMA_CTL: use the CPU map provided by numactl
    • MIRROR: Mirrors the model across NUMA nodes
    Definition Classes
    HasLlamaCppModelProperties
  257. final def setOutputCol(value: String): AutoGGUFModel.this.type

    Overrides annotation column name when transforming

    Overrides annotation column name when transforming

    Definition Classes
    HasOutputAnnotationCol
  258. def setParent(parent: Estimator[AutoGGUFModel]): AutoGGUFModel
    Definition Classes
    Model
  259. def setPenalizeNl(penalizeNl: Boolean): AutoGGUFModel.this.type

    Set whether to penalize newline tokens

    Set whether to penalize newline tokens

    Definition Classes
    HasLlamaCppInferenceProperties
  260. def setPenaltyPrompt(penaltyPrompt: String): AutoGGUFModel.this.type

    Override which part of the prompt is penalized for repetition.

    Override which part of the prompt is penalized for repetition.

    Definition Classes
    HasLlamaCppInferenceProperties
  261. def setPresencePenalty(presencePenalty: Float): AutoGGUFModel.this.type

    Set the repetition alpha presence penalty

    Set the repetition alpha presence penalty

    Definition Classes
    HasLlamaCppInferenceProperties
  262. def setRemoveThinkingTag(value: String): AutoGGUFModel.this.type

    Set a thinking tag (e.g.

    Set a thinking tag (e.g. think) to be removed from output. Will produce the regex (?s)<$TAG>.+?</$TAG>

    Definition Classes
    CompletionPostProcessing
  263. def setRepeatLastN(repeatLastN: Int): AutoGGUFModel.this.type

    Set the last n tokens to consider for penalties

    Set the last n tokens to consider for penalties

    Definition Classes
    HasLlamaCppInferenceProperties
  264. def setRepeatPenalty(repeatPenalty: Float): AutoGGUFModel.this.type

    Set the penalty of repeated sequences of tokens

    Set the penalty of repeated sequences of tokens

    Definition Classes
    HasLlamaCppInferenceProperties
  265. def setRopeFreqBase(ropeFreqBase: Float): AutoGGUFModel.this.type

    Set the RoPE base frequency, used by NTK-aware scaling

    Set the RoPE base frequency, used by NTK-aware scaling

    Definition Classes
    HasLlamaCppModelProperties
  266. def setRopeFreqScale(ropeFreqScale: Float): AutoGGUFModel.this.type

    Set the RoPE frequency scaling factor, expands context by a factor of 1/N

    Set the RoPE frequency scaling factor, expands context by a factor of 1/N

    Definition Classes
    HasLlamaCppModelProperties
  267. def setRopeScalingType(ropeScalingType: String): AutoGGUFModel.this.type

    Set the RoPE frequency scaling method, defaults to linear unless specified by the model.

    Set the RoPE frequency scaling method, defaults to linear unless specified by the model.

    • NONE: Don't use any scaling
    • LINEAR: Linear scaling
    • YARN: YaRN RoPE scaling
    Definition Classes
    HasLlamaCppModelProperties
  268. def setSamplers(samplers: Array[String]): AutoGGUFModel.this.type

    Set which samplers to use for token generation in the given order .

    Set which samplers to use for token generation in the given order .

    Available Samplers are:

    • TOP_K: Top-k sampling
    • TFS_Z: Tail free sampling
    • TYPICAL_P: Locally typical sampling p
    • TOP_P: Top-p sampling
    • MIN_P: Min-p sampling
    • TEMPERATURE: Temperature sampling
    Definition Classes
    HasLlamaCppInferenceProperties
  269. def setSeed(seed: Int): AutoGGUFModel.this.type

    Set the RNG seed

    Set the RNG seed

    Definition Classes
    HasLlamaCppInferenceProperties
  270. def setStopStrings(stopStrings: Array[String]): AutoGGUFModel.this.type

    Set strings upon seeing which token generation is stopped

    Set strings upon seeing which token generation is stopped

    Definition Classes
    HasLlamaCppInferenceProperties
  271. def setSystemPrompt(systemPrompt: String): AutoGGUFModel.this.type

    Set a system prompt to use

    Set a system prompt to use

    Definition Classes
    HasLlamaCppModelProperties
  272. def setTemperature(temperature: Float): AutoGGUFModel.this.type

    Set the temperature

    Set the temperature

    Definition Classes
    HasLlamaCppInferenceProperties
  273. def setTfsZ(tfsZ: Float): AutoGGUFModel.this.type

    Set tail free sampling, parameter z

    Set tail free sampling, parameter z

    Definition Classes
    HasLlamaCppInferenceProperties
  274. def setTokenBias(tokenBias: HashMap[String, Double]): AutoGGUFModel.this.type

    Set the tokens to disable during completion.

    Set the tokens to disable during completion. (Override for PySpark)

    Definition Classes
    HasLlamaCppInferenceProperties
  275. def setTokenBias(tokenBias: Map[String, Float]): AutoGGUFModel.this.type

    Set the tokens to disable during completion.

    Set the tokens to disable during completion.

    Definition Classes
    HasLlamaCppInferenceProperties
  276. def setTokenIdBias(tokenIdBias: HashMap[Integer, Double]): AutoGGUFModel.this.type

    Set the token ids to disable in the completion.

    Set the token ids to disable in the completion. (Override for PySpark)

    Definition Classes
    HasLlamaCppInferenceProperties
  277. def setTokenIdBias(tokenIdBias: Map[Int, Float]): AutoGGUFModel.this.type

    Set the token ids to disable in the completion.

    Set the token ids to disable in the completion.

    Definition Classes
    HasLlamaCppInferenceProperties
  278. def setTopK(topK: Int): AutoGGUFModel.this.type

    Set top-k sampling

    Set top-k sampling

    Definition Classes
    HasLlamaCppInferenceProperties
  279. def setTopP(topP: Float): AutoGGUFModel.this.type

    Set top-p sampling

    Set top-p sampling

    Definition Classes
    HasLlamaCppInferenceProperties
  280. def setTypicalP(typicalP: Float): AutoGGUFModel.this.type

    Set locally typical sampling, parameter p

    Set locally typical sampling, parameter p

    Definition Classes
    HasLlamaCppInferenceProperties
  281. def setUseChatTemplate(useChatTemplate: Boolean): AutoGGUFModel.this.type

    Set whether or not generate should apply a chat template

    Set whether or not generate should apply a chat template

    Definition Classes
    HasLlamaCppInferenceProperties
  282. def setUseMlock(useMlock: Boolean): AutoGGUFModel.this.type

    Whether to force the system to keep model in RAM rather than swapping or compressing

    Whether to force the system to keep model in RAM rather than swapping or compressing

    Definition Classes
    HasLlamaCppModelProperties
  283. def setUseMmap(useMmap: Boolean): AutoGGUFModel.this.type

    Whether to use memory-map model (faster load but may increase pageouts if not using mlock)

    Whether to use memory-map model (faster load but may increase pageouts if not using mlock)

    Definition Classes
    HasLlamaCppModelProperties
  284. def setYarnAttnFactor(yarnAttnFactor: Float): AutoGGUFModel.this.type

    Set the YaRN scale sqrt(t) or attention magnitude

    Set the YaRN scale sqrt(t) or attention magnitude

    Definition Classes
    HasLlamaCppModelProperties
  285. def setYarnBetaFast(yarnBetaFast: Float): AutoGGUFModel.this.type

    Set the YaRN low correction dim or beta

    Set the YaRN low correction dim or beta

    Definition Classes
    HasLlamaCppModelProperties
  286. def setYarnBetaSlow(yarnBetaSlow: Float): AutoGGUFModel.this.type

    Set the YaRN high correction dim or alpha

    Set the YaRN high correction dim or alpha

    Definition Classes
    HasLlamaCppModelProperties
  287. def setYarnExtFactor(yarnExtFactor: Float): AutoGGUFModel.this.type

    Set the YaRN extrapolation mix factor

    Set the YaRN extrapolation mix factor

    Definition Classes
    HasLlamaCppModelProperties
  288. def setYarnOrigCtx(yarnOrigCtx: Int): AutoGGUFModel.this.type

    Set the YaRN original context size of model

    Set the YaRN original context size of model

    Definition Classes
    HasLlamaCppModelProperties
  289. val stopStrings: StringArrayParam

  290. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  291. val systemPrompt: Param[String]

    Definition Classes
    HasLlamaCppModelProperties
  292. val temperature: FloatParam

  293. val tfsZ: FloatParam

  294. def toString(): String
    Definition Classes
    Identifiable → AnyRef → Any
  295. val tokenBias: StructFeature[Map[String, Float]]

  296. val tokenIdBias: StructFeature[Map[Int, Float]]
  297. val topK: IntParam

  298. val topP: FloatParam

  299. final def transform(dataset: Dataset[_]): DataFrame

    Given requirements are met, this applies ML transformation within a Pipeline or stand-alone Output annotation will be generated as a new column, previous annotations are still available separately metadata is built at schema level to record annotations structural information outside its content

    Given requirements are met, this applies ML transformation within a Pipeline or stand-alone Output annotation will be generated as a new column, previous annotations are still available separately metadata is built at schema level to record annotations structural information outside its content

    dataset

    Dataset[Row]

    Definition Classes
    AnnotatorModel → Transformer
  300. def transform(dataset: Dataset[_], paramMap: ParamMap): DataFrame
    Definition Classes
    Transformer
    Annotations
    @Since( "2.0.0" )
  301. def transform(dataset: Dataset[_], firstParamPair: ParamPair[_], otherParamPairs: ParamPair[_]*): DataFrame
    Definition Classes
    Transformer
    Annotations
    @Since( "2.0.0" ) @varargs()
  302. final def transformSchema(schema: StructType): StructType

    requirement for pipeline transformation validation.

    requirement for pipeline transformation validation. It is called on fit()

    Definition Classes
    RawAnnotator → PipelineStage
  303. def transformSchema(schema: StructType, logging: Boolean): StructType
    Attributes
    protected
    Definition Classes
    PipelineStage
    Annotations
    @DeveloperApi()
  304. val typicalP: FloatParam

  305. val uid: String
    Definition Classes
    AutoGGUFModel → Identifiable
  306. val useChatTemplate: BooleanParam

  307. val useMlock: BooleanParam

    Definition Classes
    HasLlamaCppModelProperties
  308. val useMmap: BooleanParam

    Definition Classes
    HasLlamaCppModelProperties
  309. def validate(schema: StructType): Boolean

    takes a Dataset and checks to see if all the required annotation types are present.

    takes a Dataset and checks to see if all the required annotation types are present.

    schema

    to be validated

    returns

    True if all the required types are present, else false

    Attributes
    protected
    Definition Classes
    RawAnnotator
  310. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  311. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  312. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  313. def wrapColumnMetadata(col: Column): Column
    Attributes
    protected
    Definition Classes
    RawAnnotator
  314. def write: MLWriter
    Definition Classes
    ParamsAndFeaturesWritable → DefaultParamsWritable → MLWritable
  315. val yarnAttnFactor: FloatParam

    Definition Classes
    HasLlamaCppModelProperties
  316. val yarnBetaFast: FloatParam

    Definition Classes
    HasLlamaCppModelProperties
  317. val yarnBetaSlow: FloatParam

    Definition Classes
    HasLlamaCppModelProperties
  318. val yarnExtFactor: FloatParam

    Definition Classes
    HasLlamaCppModelProperties
  319. val yarnOrigCtx: IntParam

    Definition Classes
    HasLlamaCppModelProperties

Inherited from CompletionPostProcessing

Inherited from HasProtectedParams

Inherited from HasEngine

Inherited from AnnotatorModel[AutoGGUFModel]

Inherited from CanBeLazy

Inherited from RawAnnotator[AutoGGUFModel]

Inherited from HasOutputAnnotationCol

Inherited from HasInputAnnotationCols

Inherited from HasOutputAnnotatorType

Inherited from ParamsAndFeaturesWritable

Inherited from HasFeatures

Inherited from DefaultParamsWritable

Inherited from MLWritable

Inherited from Model[AutoGGUFModel]

Inherited from Transformer

Inherited from PipelineStage

Inherited from Logging

Inherited from Params

Inherited from Serializable

Inherited from Serializable

Inherited from Identifiable

Inherited from AnyRef

Inherited from Any

Parameters

A list of (hyper-)parameter keys this annotator can take. Users can set and get the parameter values through setters and getters, respectively.

Members

Parameter setters

Parameter getters