Docs
Configuration
librechat.yaml
Settings
Interface (UI)

Interface Object Structure

Overview

The interface object allows for customization of various user interface elements within the application, including visibility and behavior settings for components such as menus, panels, and links. This section provides a detailed breakdown of the interface object structure.

These are fields under interface:

  • privacyPolicy
  • termsOfService
  • endpointsMenu
  • modelSelect
  • parameters
  • sidePanel
  • presets
  • prompts
  • bookmarks
  • multiConvo

Notes:

  • The interface configurations are applied globally within the application.
  • Default values are provided for most settings but can be overridden based on specific requirements or conditions.
  • Conditional logic in the application can further modify these settings based on other configurations like model specifications.

Example

interface
interface:
  privacyPolicy:
    externalUrl: "https://example.com/privacy"
    openNewTab: true
  termsOfService:
    externalUrl: "https://example.com/terms"
    openNewTab: true
    modalAcceptance: true
    modalTitle: "Terms of Service"
    modalContent: |
      # Terms of Service
      ## Introduction
      Welcome to LibreChat!
  endpointsMenu: true
  modelSelect: false
  parameters: true
  sidePanel: true
  presets: false
  prompts: true
  bookmarks: true
  multiConvo: true

privacyPolicy

Key:

KeyTypeDescriptionExample
privacyPolicyObjectContains settings related to the privacy policy link provided in the user interface.Allows for the specification of a custom URL and the option to open it in a new tab.

Sub-keys:

KeyTypeDescriptionExample
externalUrlString (URL)The URL pointing to the privacy policy document.
openNewTabBooleanSpecifies whether the link should open in a new tab.

termsOfService

Key:

KeyTypeDescriptionExample
termsOfServiceObjectContains settings related to the terms of service link provided in the user interface.Allows for the specification of a custom URL and the option to open it in a new tab, as well as a modal acceptance dialog for the terms of service.

Sub-keys:

KeyTypeDescriptionExample
externalUrlString (URL)The URL pointing to the terms of service document.https://librechat.ai/tos
openNewTabBooleanSpecifies whether the link should open in a new tab.true
modalAcceptanceBooleanSpecifies whether to show a modal terms and conditions dialog for users to accept in order to be able to use LibreChat.true
modalTitleStringSpecifies a custom title for the modal terms and conditions dialog (optional).Terms of Service
modalContentStringSpecifies the content of the modal terms and conditions dialog in MarkDown format.See librechat.yaml.example for how to correctly format the multi-line parameter.

endpointsMenu

Key:

KeyTypeDescriptionExample
endpointsMenuBooleanControls the visibility of the endpoints menu in the interface.Toggling this setting allows administrators to customize the availability of endpoint selections within the application.

Default: true

Example:

interface / endpointsMenu
interface:
  endpointsMenu: false

modelSelect

Key:

KeyTypeDescriptionExample
modelSelectBooleanDetermines whether the model selection feature is available in the UI.Enabling this feature allows users to select different models directly from the interface.

Default: true

Example:

interface / modelSelect
interface:
  modelSelect: true

parameters

Key:

KeyTypeDescriptionExample
parametersBooleanToggles the visibility of parameter configuration options within the interface.This setting is crucial for users who need to adjust parameters for specific functionalities within the application.

Default: true

Example:

interface / parameters
interface:
  parameters: false

sidePanel

Key:

KeyTypeDescriptionExample
sidePanelBooleanControls the visibility of the side panel in the application's interface.The side panel typically contains additional navigation or information relevant to the application's context.

Default: true

Example:

interface / sidePanel
interface:
  sidePanel: true

presets

Key:

KeyTypeDescriptionExample
presetsBooleanEnables or disables the use of presets in the application's UI.Presets can simplify user interactions by providing pre-configured settings or operations, enhancing user experience and efficiency.

Default: true

Example:

interface / presets
interface:
  presets: true

prompts

Key:

KeyTypeDescriptionExample
promptsBooleanEnables or disables all prompt-related features for all users.When disabled, users will not have access to create, edit, or use custom prompts within the application.

Default: true

Example:

interface / prompts
interface:
  prompts: false

bookmarks

Key:

KeyTypeDescriptionExample
bookmarksBooleanEnables or disables all bookmarks-related features for all users.When disabled, users will not be able to create, manage, or access bookmarks within the application.

Default: true

Example:

interface / bookmarks
interface:
  bookmarks: true

multiConvo

Key:

KeyTypeDescriptionExample
multiConvoBooleanEnables or disables all "multiConvo", AKA multiple response streaming, related features for all users.When disabled, users will not be able to stream responses from 2 AI models at the same time.

Default: true

Example:

interface / multiConvo
interface:
  multiConvo: true