Strategy Introspection
describe()
Every strategy class exposes a describe() class method that returns a
FigureStrategyDescription without requiring an instance:
from orama.strategies.bar import BarChartStrategy
from orama.strategies.base import FigureStrategyDescription
desc: FigureStrategyDescription = BarChartStrategy.describe(fields_metadata)
desc.name # "Bar Chart"
desc.description # human-readable strategy description
desc.variables # dict[str, dict[str, Any]] — variable descriptors
desc.options # dict[str, dict[str, Any]] — option descriptors
desc.colors # ColorStrategyDescription — supported selectors and assigners
Each variable descriptor includes type, name, description, map_to,
candidate_fields, and (for categorical variables) multicategorical, ordered,
optional. Each option descriptor includes type, name, description, map_to,
default_value, and value_type.
get_query_params()
get_query_params() returns a dict[str, QueryParams]. Inspecting each
QueryParams reveals the group_fields, aggregations, and dataframe_schema that
your data layer must satisfy: