Files
fil/packages/elixir/lib/kreuzberg/table_model.ex

44 lines
1.7 KiB
Elixir
Raw Normal View History

2026-06-01 23:40:55 +02:00
# 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.TableModel do
@moduledoc """
Which table structure recognition model to use.
Controls the model used for table cell detection within layout-detected
table regions. Wire format is snake_case in all serializers (JSON, TOML,
YAML).
"""
@typedoc "Which table structure recognition model to use."
@type t :: :tatr | :slanet_wired | :slanet_wireless | :slanet_plus | :slanet_auto | :disabled
@tatr :tatr
@slanet_wired :slanet_wired
@slanet_wireless :slanet_wireless
@slanet_plus :slanet_plus
@slanet_auto :slanet_auto
@disabled :disabled
@doc "TATR (Table Transformer) -- default, 30MB, DETR-based row/column detection."
@spec tatr() :: t()
def tatr, do: @tatr
@doc "SLANeXT wired variant -- 365MB, optimized for bordered tables."
@spec slanet_wired() :: t()
def slanet_wired, do: @slanet_wired
@doc "SLANeXT wireless variant -- 365MB, optimized for borderless tables."
@spec slanet_wireless() :: t()
def slanet_wireless, do: @slanet_wireless
@doc "SLANet-plus -- 7.78MB, lightweight general-purpose."
@spec slanet_plus() :: t()
def slanet_plus, do: @slanet_plus
@doc "Classifier-routed SLANeXT: auto-select wired/wireless per table. Uses PP-LCNet classifier (6.78MB) + both SLANeXT variants (730MB total)."
@spec slanet_auto() :: t()
def slanet_auto, do: @slanet_auto
@doc "Disable table structure model inference entirely; use heuristic path only."
@spec disabled() :: t()
def disabled, do: @disabled
end