Settings and Configurations
Rustici Generator uses configuration settings to adjust the application’s behavior to better suit your needs. Although we have done our best to set appropriate default values for each setting, you may find that alternative values work better for you and your organization.
The following endpoints should be used to manage the application’s configuration settings:
GET /api/v1/config
to view all configuration valuesGET /api/v1/config/{setting_name}
to view a single configuration valuePUT /api/v1/config/{setting_name}
to set the value for a single configuration settingDELETE /api/v1/config/{setting_name}
to unset the configuration setting’s tenant-level value (see below for more information)
Configuration Scope
Configuration settings can be configured with different scopes. Each configuration setting can be configured with:
- a system-level value, which is used as the default value for the setting applied across the application, and
- a tenant-level value, which specifies settings’ value to within the specified tenant.
By default, each tenant uses the system-level value for a configuration setting. Tenant-level setting values overwrite the setting’s system-level values for a particular tenant.
When interacting through the API, the tenant-id
header is used to determine which level is being requested by the API request. When the tenant-id
header is provided, the application will consider the setting’s tenant-level value. If no tenant-id
header is provided in the request, the setting’s system-level value is considered.
For example, if you wanted to change the default value for the GENERATION_MODEL
setting across the entire application, you would use the PUT /api/v1/config/GENERATION_MODEL
endpoint and not include a tenant-id
header.
Now, suppose your application has two tenants: tenantA
and tenantB
. If you wanted to change the value of the GENERATION_MODEL
setting for tenantA
, you would use the PUT /api/v1/config/GENERATION_MODEL
endpoint and include a tenant-id: tenantA
header. Changing the tenant-level value of a configuration setting for tenantA
does not impact its value in tenantB
.
The tenant-id
header is optional for the GET
and PUT
configuration endpoints. However, the tenant-id
header is required when using the DELETE /api/v1/config/{setting_name}
endpoint. The application uses the system-level configuration as the default value, so you are unable to delete this setting. When calling the DELETE
endpoint for a tenant-level configuration, the application is unsetting its value, which functionally reverts it to the system-level value.
Settings
The following configuration settings are supported:
Field | Type | Default | Description |
---|---|---|---|
GENERATION__LLM_MODEL | SupportedGenerationModel | SupportedGenerationModel.CLAUDE_3_HAIKU | Determines which AI model should be used when performing text-based generation tasks. |
GENERATION__TEMPERATURE | float | 0.2 | A parameter ranging from 0 to 1 that indicates how ‘random’ an LLM response should be. A higher temerpature results in more diverse and creative outputs. |
GENERATION__TOP_P | float | 1 | Limits the LLM to the ‘most-likely’ tokens available to use in a response. The model will choose from the smallest set of words whose cumulative probability exceeds the GENERATION__TOP_P value. |
GENERATION__TOP_K | int | 100 | A parameter greater than 0 that limits the LLM to the number of ‘most-likely’ tokens available to use in a response. A low GENERATION__TOP_K value would restrict the LLM response to only tokens with a high probability. |
GENERATION__COUNT | int | 5 | Specifies how many metadata fields should be generated with each field generation process. |
GENERATION__SKILL_TAXONOMY | str | The ID of the imported skills taxonomy that Generator should coordinate with when generating SKILLS metadata. | |
GENERATION__TRANSCRIBE_CUSTOM_VOCAB | CustomVocab | phrases=[] | A list of custom vocabulary phrases that should be used when transcribing audio/video files. NOTE: Changing this setting will add a significant one-time delay to the next import job that requires transcription. |
ENGINE__DEFAULT_GENERATION_FIELDS | list[GeneratedFieldApiType ] | [] | A list parameter involved with the Engine Webhook Import process to specify any metadata fields that should be generated as part of the content import process. |
ENGINE__MPX_DELAY_SEC | int | 30 | How long should Generator wait after receiving an MPX webhook import from Engine. If a VTT is configured for that Engine course and a webhook is sent to Generator within that window, then Generator will cancel the MPX import and just use the new VTT. |
ENGINE__WEB_IMPORT_MAX_DEPTH | int | 1 | The default depth to use when scraping a web page. |
ENGINE__WEB_IMPORT_DEFAULT_REGEX_FILTER | EngineWebImportRegexBehavior | EngineWebImportRegexBehavior.MATCH_DOMAIN | The default regex filter to use when scraping a web page. |
Values of GeneratedFieldApiType
:
Value |
---|
TITLE |
SUMMARY |
BLURB |
PLUG |
SKILLS |
KEYWORDS |
QUESTIONS |
Values of SupportedGenerationModel
:
Value |
---|
CLAUDE_3_5_HAIKU |
CLAUDE_3_HAIKU |
Values of EngineWebImportRegexBehavior
:
Value |
---|
NO_FILTER |
MATCH_DOMAIN |
MATCH_DIRECTORY |
EXACT_MATCH |