docs: Updated the example global configuration file with some better examples for RAG

This commit is contained in:
2025-11-06 10:49:51 -07:00
parent e23820adf2
commit dddf72e1da
+20 -13
View File
@@ -1,9 +1,9 @@
# ---- llm ---- # ---- LLM ----
model: openai:gpt-4o # Specify the LLM to use model: openai:gpt-4o # Specify the LLM to use
temperature: null # Set default temperature parameter (0, 1) temperature: null # Set default temperature parameter (0, 1)
top_p: null # Set default top-p parameter, with a range of (0, 1) or (0, 2) depending on the model top_p: null # Set default top-p parameter, with a range of (0, 1) or (0, 2) depending on the model
# ---- behavior ---- # ---- Behavior ----
stream: true # Controls whether to use the stream-style API. stream: true # Controls whether to use the stream-style API.
save: true # Indicates whether to persist the message save: true # Indicates whether to persist the message
keybindings: emacs # Choose keybinding style (emacs, vi) keybindings: emacs # Choose keybinding style (emacs, vi)
@@ -12,7 +12,8 @@ wrap: no # Controls text wrapping (no, auto, <max-width>
wrap_code: false # Enables or disables wrapping of code blocks wrap_code: false # Enables or disables wrapping of code blocks
vault_password_file: null # Path to a file containing the password for the Loki vault (cannot be a secret template) vault_password_file: null # Path to a file containing the password for the Loki vault (cannot be a secret template)
# ---- function-calling ---- # ---- Function Calling ----
# See the [Tools documentation](./docs/TOOLS.md) for more details
function_calling: true # Enables or disables function calling (Globally). function_calling: true # Enables or disables function calling (Globally).
mapping_tools: # Alias for a tool or toolset mapping_tools: # Alias for a tool or toolset
fs: 'fs_cat,fs_ls,fs_mkdir,fs_rm,fs_write' fs: 'fs_cat,fs_ls,fs_mkdir,fs_rm,fs_write'
@@ -44,17 +45,18 @@ visible_tools: # Which tools are visible to be compiled (and a
# - web_search_tavily.sh # - web_search_tavily.sh
# ---- MCP Servers ---- # ---- MCP Servers ----
# See the [MCP Servers documentation](./docs/MCP-SERVERS.md) for more details
mcp_server_support: true # Enables or disables MCP servers (globally). mcp_server_support: true # Enables or disables MCP servers (globally).
mapping_mcp_servers: # Alias for an MCP server or set of servers mapping_mcp_servers: # Alias for an MCP server or set of servers
git: github,gitmcp git: github,gitmcp
enabled_mcp_servers: null # Which MCP servers to enable by default (e.g. 'github,slack') enabled_mcp_servers: null # Which MCP servers to enable by default (e.g. 'github,slack')
# ---- prelude ---- # ---- Prelude ----
repl_prelude: null # Set a default role or session for REPL mode (e.g. role:<name>, session:<name>, <session>:<role>) repl_prelude: null # Set a default role or session for REPL mode (e.g. role:<name>, session:<name>, <session>:<role>)
cmd_prelude: null # Set a default role or session for CMD mode (e.g. role:<name>, session:<name>, <session>:<role>) cmd_prelude: null # Set a default role or session for CMD mode (e.g. role:<name>, session:<name>, <session>:<role>)
agent_session: null # Set a session to use when starting an agent (e.g. temp, default) agent_session: null # Set a session to use when starting an agent (e.g. temp, default)
# ---- session ---- # ---- Session ----
# Controls the persistence of the session. if true, auto save; if false, not save; if null, asking the user # Controls the persistence of the session. if true, auto save; if false, not save; if null, asking the user
save_session: null save_session: null
# Compress session when token count reaches or exceeds this threshold # Compress session when token count reaches or exceeds this threshold
@@ -65,9 +67,9 @@ summarize_prompt: 'Summarize the discussion briefly in 200 words or less to use
summary_prompt: 'This is a summary of the chat history as a recap: ' summary_prompt: 'This is a summary of the chat history as a recap: '
# ---- RAG ---- # ---- RAG ----
# See [RAG-Guide](TODO /RAG-Guide link) for more details. # See the [RAG Docs](./docs/RAG.md) for more details.
rag_embedding_model: null # Specifies the embedding model used for context retrieval rag_embedding_model: null # Specifies the embedding model used for context retrieval
rag_reranker_model: null # Specifies the reranker model used for sorting retrieved documents rag_reranker_model: null # Specifies the reranker model used for sorting retrieved documents; Loki uses Reciprocal Rank Fusion by default
rag_top_k: 5 # Specifies the number of documents to retrieve for answering queries rag_top_k: 5 # Specifies the number of documents to retrieve for answering queries
rag_chunk_size: null # Defines the size of chunks for document processing in characters rag_chunk_size: null # Defines the size of chunks for document processing in characters
rag_chunk_overlap: null # Defines the overlap between chunks rag_chunk_overlap: null # Defines the overlap between chunks
@@ -91,16 +93,21 @@ rag_template: |
<user_query> <user_query>
__INPUT__ __INPUT__
</user_query> </user_query>
# Define document loaders to control how RAG and `.file`/`--file` load files of specific formats. # Define document loaders to control how RAG and `.file`/`--file` load files of specific formats.
document_loaders: document_loaders:
# You can add custom loaders using the following syntax: # You can add custom loaders using the following syntax:
# <file-extension>: <command-to-load-the-file> # <file-extension>: <command-to-load-the-file>
# Note: Use `$1` for input file and `$2` for output file. If `$2` is omitted, use stdout as output. # Note: Use `$1` for input file and `$2` for output file. If `$2` is omitted, use stdout as output.
pdf: 'pdftotext $1 -' # Load .pdf file, see https://poppler.freedesktop.org to set up pdftotext pdf: 'pdftotext $1 -' # Use pdftotext to convert a PDF file to text
docx: 'pandoc --to plain $1' # Load .docx file, see https://pandoc.org to set up pandoc # (see https://poppler.freedesktop.org for details on how to install pdftotext)
docx: 'pandoc --to plain $1' # Use pandoc to convert a .docx file to text
# (see https://pandoc.org for details on how to install pandoc)
jina: 'curl -fsSL https://r.jina.ai/$1 -H "Authorization: Bearer {{JINA_API_KEY}}' # Use Jina to translate a website into text;
# Requires a Jina API key to be added to the Loki vault
git: > # Use yek to load a git repository into the knowledgebase (https://github.com/bodo-run/yek)
sh -c "yek $1 --json | jq 'map({ path: .filename, contents: .content })'"
# ---- appearance ---- # ---- Appearance ----
highlight: true # Controls syntax highlighting highlight: true # Controls syntax highlighting
light_theme: false # Activates a light color theme when true. env: LOKI_LIGHT_THEME light_theme: false # Activates a light color theme when true. env: LOKI_LIGHT_THEME
# Custom REPL left/right prompts, TODO reference docs for prompt variables # Custom REPL left/right prompts, TODO reference docs for prompt variables
@@ -109,13 +116,13 @@ left_prompt:
right_prompt: right_prompt:
'{color.purple}{?session {?consume_tokens {consume_tokens}({consume_percent}%)}{!consume_tokens {consume_tokens}}}{color.reset}' '{color.purple}{?session {?consume_tokens {consume_tokens}({consume_percent}%)}{!consume_tokens {consume_tokens}}}{color.reset}'
# ---- misc ---- # ---- Miscellaneous ----
user_agent: null # Set User-Agent HTTP header, use `auto` for loki/<current-version> user_agent: null # Set User-Agent HTTP header, use `auto` for loki/<current-version>
save_shell_history: true # Whether to save shell execution command to the history file save_shell_history: true # Whether to save shell execution command to the history file
# URL to sync model changes from # URL to sync model changes from
sync_models_url: https://raw.githubusercontent.com/Dark-Alex-17/loki/refs/heads/main/models.yaml sync_models_url: https://raw.githubusercontent.com/Dark-Alex-17/loki/refs/heads/main/models.yaml
# ---- clients ---- # ---- Clients ----
clients: clients:
# All clients have the following configuration: # All clients have the following configuration:
# - type: xxxx # - type: xxxx