Reference#
AI#
Agent
#
Agents are actors responsible for taking a user query and
SourceAgent renders a form that allows a user to upload or
ChatAgent provides general information about available data
TableListAgent Agent
The DocumentListAgent lists all available documents provided by the user.
LumenBaseAgent Agent
AnalystAgent Agent
SQLAgent Agent
BaseViewAgent Agent
AnalysisAgent Agent
hvPlotAgent Agent
VegaLiteAgent Agent
Coordinator
#
A Coordinator is responsible for coordinating the actions
DependencyResolver is a type of Coordinator that chooses the agent
The Planner develops a plan to solve the user query step-by-step
Tool
#
A Tool can be invoked by another Actor to provide additional
A Tool can be invoked by another Actor to provide additional
FunctionTool wraps arbitrary functions and makes them available as a tool
The DocumentLookup tool creates a vector store of all available documents
The TableLookup tool creates a vector store of all available tables
UI
#
UI provides a baseclass and high-level entrypoint to start chatting with your data.
ChatUI provides a high-level entrypoint to start chatting with your data
ExplorerUI provides a high-level entrypoint to start chatting with your data
Spec#
Config
#
Config
provides high-level configuration options for the
Variable
#
Variable
components declare values that can be referenced from other components.
Constant
declares a constant value that can be referenced.
EnvVariable
fetches an environment variable that can be referenced.
Widget
variables dynamically reflect the current widget value.
Parameter
variables reflect the current value of a parameter.
URLQuery
variables reflect the value of a URL query parameter.
Cookie
variables reflect the value of a cookie in the request.
UserInfo
variables reflect a value in the user info returned by an OAuth provider.
Header
variables reflect the value of a request header.
Pipeline
#
Pipeline
encapsulates filters and transformations applied to a
Source
#
Source
components provide allow querying all kinds of data.
RESTSource
allows querying REST endpoints conforming to the Lumen REST specification.
InMemorySource
can be used to work with in-memory data.
FileSource
loads CSV, Excel and Parquet files using pandas and dask read_*
functions.
The BaseSQLSource implements the additional API required by
WebsiteSource
queries whether a website responds with a 400 status code.
PanelSessionSource
queries the session_info endpoint of a Panel application.
JoinedSource
performs a join on tables from one or more sources.
DerivedSource
applies filtering and transforms to tables from other sources.
The JSONSource is very similar to the FileSource but loads json files.
DuckDBSource provides a simple wrapper around the DuckDB SQL
An IntakeSource
loads data from an Intake catalog.
IntakeSQLSource
extends the IntakeSource
with support for SQL data.
Filter
#
Filter
components supply the filter values used by Source
components to query data. .
The ConstantFilter allows requesting a constant value from the
The FacetFilter allows faceting the data along some dimension to
ParamFilter
reflects the value of a parameter declared on a View
.
WidgetFilter
generates a Widget from the table schema provided by a Source.
BinFilter
is a special WidgetFilter
that allows selecting from a set of bins.
DateFilter
is a WidgetFilter
specialized to select calendar dates.
DatetimeFilter
is a WidgetFilter
specialized to filter by datetimes.
Transform
#
Transform
components implement transforms of DataFrame
objects.
Filter
transform implement the filtering behavior of Filter
components.
HistoryTransform
accumulates a history of the queried data.
Aggregate
one or more columns or indexes, see pandas.DataFrame.groupby
.
Sort
on one or more columns, see pandas.DataFrame.sort_values
.
Query
applies the pandas.DataFrame.query
method.
Columns
selects a subset of columns.
Astype
transforms the type of one or more columns.
Stack
applies pandas.DataFrame.stack
to the declared level
.
Unstack
applies pandas.DataFrame.unstack
to the declared level
.
Iloc
allows selecting the data with integer indexing, see pandas.DataFrame.iloc
.
Sample
returns a random sample of items.
Compute
turns a dask.dataframe.DataFrame
into a pandas.DataFrame
.
Pivot
applies pandas.DataFrame.pivot
given an index, columns, and values.
PivotTable
applies pandas.pivot_table` to the data.
Melt
applies the pandas.melt
operation given the id_vars
and value_vars
.
SetIndex
promotes DataFrame columns to indexes, see pandas.DataFrame.set_index
.
ResetIndex
resets DataFrame indexes to columns or drops them, see pandas.DataFrame.reset_index
Rename
renames columns or indexes, see pandas.DataFrame.rename
.
Set the name of the axis for the index or columns,
Counts non-nan values in each column of the DataFrame and returns
Sums numeric values in each column of the DataFrame and returns a
Applies an eval assignment expression to a DataFrame. The
DropNA
drops rows with any missing values.
Corr
computes pairwise correlation of columns, excluding NA/null values.
project_lnglat
projects the given longitude/latitude columns to Web Mercator.
Performs a Group-By and aggregation
Performs a LIMIT SQL operation on the query
SQLDistinct Transform
SQLCount Transform
SQLMinMax Transform
SQLColumns Transform
Translates Lumen Filter query into a SQL WHERE statement.
SQLOverride Transform
View
#
View
components provide a visual representation for the data returned
Panel
views provide a way to declaratively wrap a Panel component.
StringView
renders the latest value of the field as a HTML string.
IndicatorView
renders the latest field value as a Panel Indicator
.
hvOverlayView
allows overlaying a list of layers consisting of
Table
renders data using the powerful Panel Tabulator
component.
DownloadView
renders a button that allows downloading data as CSV, Excel, and parquet files.
PerspectiveView
renders data into a Perspective widget.
VegaLite
provides a declarative way to render vega-lite charts.
AltairView
provides a declarative way to render Altair charts.
A View that renders a ydata_profiling ProfileReport.
Renders the data using the GraphicWalker panel extension.
hvPlotUIView
displays provides a component for exploring datasets interactively.
hvPlotView
renders the queried data as a bokeh plot generated with hvPlot.
Layout
#
Layout
renders one or more :class:lumen.views.base.View
components
Auth
#
An AuthPlugin is given the auth specfication and can apply arbitrary
An AuthPlugin is given the auth specfication and can apply arbitrary
The YamlAuthMapperPlugin uses a Yaml file to map auth keys
Defaults
#
Defaults
to apply to the component classes.