User settings¶
ktem
allows developers to extend the index and the reasoning pipeline. In
many cases, these components can have settings that should be modified by
users at run-time, (e.g. topk
, chunksize
...). These are the user settings.
ktem
allows developers to declare such user settings in their code. Once
declared, ktem
will render them in a Settings page.
There are 2 places that ktem
looks for declared user settings. You can
refer to the respective pages.
- In the index.
- In the reasoning pipeline.
Syntax of a settings¶
A collection of settings is a dictionary of type dict[str, dict]
, where the
key is a setting id, and the value is the description of the setting.
Each setting description must have:
- name: the human-understandable name of the settings.
- value: the default value of the settings.
-
component: the UI component to render such setting on the UI. Available:
- "text": single-value
- "number": single-value
- "checkbox": single-value
- "dropdown": choices
- "radio": choices
- "checkboxgroup": choices
- choices: the list of choices, if the component type allows.