# This file is auto-generated by alef — DO NOT EDIT. # alef:hash:4e15143f4af1ae8bafbdb1506ef057da924484c66a19483966333558ad437e75 # To regenerate: alef generate # To verify freshness: alef verify --exit-code # Issues & docs: https://github.com/kreuzberg-dev/alef defmodule Kreuzberg.TesseractConfig do @moduledoc """ Tesseract OCR configuration. Provides fine-grained control over Tesseract OCR engine parameters. Most users can use the defaults, but these settings allow optimization for specific document types (invoices, handwriting, etc.). """ @typedoc "Tesseract OCR configuration." @type t :: %__MODULE__{ language: String.t() | nil, psm: integer(), output_format: String.t() | nil, oem: integer(), min_confidence: float(), preprocessing: map() | nil, enable_table_detection: boolean(), table_min_confidence: float(), table_column_threshold: integer(), table_row_threshold_ratio: float(), use_cache: boolean(), classify_use_pre_adapted_templates: boolean(), language_model_ngram_on: boolean(), tessedit_dont_blkrej_good_wds: boolean(), tessedit_dont_rowrej_good_wds: boolean(), tessedit_enable_dict_correction: boolean(), tessedit_char_whitelist: String.t() | nil, tessedit_char_blacklist: String.t() | nil, tessedit_use_primary_params_model: boolean(), textord_space_size_is_variable: boolean(), thresholding_method: boolean() } defstruct language: "eng", psm: 3, output_format: "markdown", oem: 3, min_confidence: 0, preprocessing: nil, enable_table_detection: true, table_min_confidence: 0, table_column_threshold: 50, table_row_threshold_ratio: 0.5, use_cache: true, classify_use_pre_adapted_templates: true, language_model_ngram_on: false, tessedit_dont_blkrej_good_wds: true, tessedit_dont_rowrej_good_wds: true, tessedit_enable_dict_correction: true, tessedit_char_whitelist: "", tessedit_char_blacklist: "", tessedit_use_primary_params_model: true, textord_space_size_is_variable: true, thresholding_method: false defimpl Jason.Encoder do @doc false def encode(value, opts) do value |> Map.from_struct() |> Enum.reject(fn {_k, v} -> v == nil end) |> Enum.into(%{}) |> Jason.Encoder.encode(opts) end end end