openrag/assets/js/c8078f0a.4aee576d.js
2025-10-27 14:28:45 +00:00

1 line
No EOL
20 KiB
JavaScript

"use strict";(self.webpackChunkopenrag_docs=self.webpackChunkopenrag_docs||[]).push([[9026],{9196:(e,n,r)=>{r.r(n),r.d(n,{assets:()=>c,contentTitle:()=>t,default:()=>a,frontMatter:()=>l,metadata:()=>s,toc:()=>o});const s=JSON.parse('{"id":"reference/configuration","title":"Environment variables","description":"OpenRAG recognizes environment variables from the following sources:","source":"@site/docs/reference/configuration.mdx","sourceDirName":"reference","slug":"/reference/configuration","permalink":"/reference/configuration","draft":false,"unlisted":false,"editUrl":"https://github.com/openrag/openrag/tree/main/docs/docs/reference/configuration.mdx","tags":[],"version":"current","frontMatter":{"title":"Environment variables","slug":"/reference/configuration"},"sidebar":"tutorialSidebar","previous":{"title":"Docling in OpenRAG","permalink":"/ingestion"},"next":{"title":"Troubleshooting","permalink":"/support/troubleshoot"}}');var i=r(4848),d=r(8453);r(1610),r(1470),r(9365);const l={title:"Environment variables",slug:"/reference/configuration"},t=void 0,c={},o=[{value:"Configure environment variables",id:"configure-environment-variables",level:2},{value:"Set environment variables",id:"set-environment-variables",level:3},{value:"Supported environment variables",id:"supported-environment-variables",level:2},{value:"AI provider settings",id:"ai-provider-settings",level:3},{value:"Document processing",id:"document-processing",level:3},{value:"Langflow settings",id:"langflow-settings",level:3},{value:"OAuth provider settings",id:"oauth-provider-settings",level:3},{value:"OpenSearch settings",id:"opensearch-settings",level:3},{value:"System settings",id:"system-settings",level:3},{value:"Langflow runtime overrides",id:"langflow-runtime-overrides",level:2},{value:"Default values and fallbacks",id:"default-values-and-fallbacks",level:2},{value:"OpenRAG configuration defaults",id:"openrag-configuration-defaults",level:3},{value:"System configuration defaults",id:"system-configuration-defaults",level:3}];function h(e){const n={a:"a",code:"code",h2:"h2",h3:"h3",li:"li",ol:"ol",p:"p",pre:"pre",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,d.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.p,{children:"OpenRAG recognizes environment variables from the following sources:"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.a,{href:"#configure-environment-variables",children:"Environment variables"})," - Values set in the ",(0,i.jsx)(n.code,{children:".env"})," file."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.a,{href:"#langflow-runtime-overrides",children:"Langflow runtime overrides"})," - Langflow components may tweak environment variables at runtime."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.a,{href:"#default-values-and-fallbacks",children:"Default or fallback values"})," - These values are default or fallback values if OpenRAG doesn't find a value."]}),"\n"]}),"\n",(0,i.jsx)(n.h2,{id:"configure-environment-variables",children:"Configure environment variables"}),"\n",(0,i.jsxs)(n.p,{children:["Environment variables are set in a ",(0,i.jsx)(n.code,{children:".env"})," file in the root of your OpenRAG project directory."]}),"\n",(0,i.jsxs)(n.p,{children:["For an example ",(0,i.jsx)(n.code,{children:".env"})," file, see ",(0,i.jsxs)(n.a,{href:"https://github.com/langflow-ai/openrag/blob/main/.env.example",children:[(0,i.jsx)(n.code,{children:".env.example"})," in the OpenRAG repository"]}),"."]}),"\n",(0,i.jsxs)(n.p,{children:["The Docker Compose files are populated with values from your ",(0,i.jsx)(n.code,{children:".env"}),", so you don't need to edit the Docker Compose files manually."]}),"\n",(0,i.jsx)(n.p,{children:"Environment variables always take precedence over other variables."}),"\n",(0,i.jsx)(n.h3,{id:"set-environment-variables",children:"Set environment variables"}),"\n",(0,i.jsx)(n.p,{children:"To set environment variables, do the following."}),"\n",(0,i.jsxs)(n.ol,{children:["\n",(0,i.jsx)(n.li,{children:"Stop OpenRAG."}),"\n",(0,i.jsxs)(n.li,{children:["Set the values in the ",(0,i.jsx)(n.code,{children:".env"})," file:","\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"LOG_LEVEL=DEBUG\nLOG_FORMAT=json\nSERVICE_NAME=openrag-dev\n"})}),"\n"]}),"\n",(0,i.jsx)(n.li,{children:"Start OpenRAG."}),"\n"]}),"\n",(0,i.jsxs)(n.p,{children:["Updating provider API keys or provider endpoints in the ",(0,i.jsx)(n.code,{children:".env"})," file will not take effect after ",(0,i.jsx)(n.a,{href:"/install#application-onboarding",children:"Application onboarding"}),". To change these values, you must:"]}),"\n",(0,i.jsxs)(n.ol,{children:["\n",(0,i.jsx)(n.li,{children:"Stop OpenRAG."}),"\n",(0,i.jsxs)(n.li,{children:["Remove the containers:","\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{children:"docker-compose down\n"})}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["Update the values in your ",(0,i.jsx)(n.code,{children:".env"})," file."]}),"\n",(0,i.jsxs)(n.li,{children:["Start OpenRAG containers.","\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{children:"docker-compose up -d\n"})}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["Complete ",(0,i.jsx)(n.a,{href:"/install#application-onboarding",children:"Application onboarding"})," again."]}),"\n"]}),"\n",(0,i.jsx)(n.h2,{id:"supported-environment-variables",children:"Supported environment variables"}),"\n",(0,i.jsx)(n.p,{children:"All OpenRAG configuration can be controlled through environment variables."}),"\n",(0,i.jsx)(n.h3,{id:"ai-provider-settings",children:"AI provider settings"}),"\n",(0,i.jsxs)(n.p,{children:["Configure which AI models and providers OpenRAG uses for language processing and embeddings.\nFor more information, see ",(0,i.jsx)(n.a,{href:"/install#application-onboarding",children:"Application onboarding"}),"."]}),"\n",(0,i.jsxs)(n.table,{children:[(0,i.jsx)(n.thead,{children:(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.th,{children:"Variable"}),(0,i.jsx)(n.th,{children:"Default"}),(0,i.jsx)(n.th,{children:"Description"})]})}),(0,i.jsxs)(n.tbody,{children:[(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"EMBEDDING_MODEL"})}),(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"text-embedding-3-small"})}),(0,i.jsx)(n.td,{children:"Embedding model for vector search."})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"LLM_MODEL"})}),(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"gpt-4o-mini"})}),(0,i.jsx)(n.td,{children:"Language model for the chat agent."})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"MODEL_PROVIDER"})}),(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"openai"})}),(0,i.jsx)(n.td,{children:"Model provider, such as OpenAI or IBM watsonx.ai."})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"OPENAI_API_KEY"})}),(0,i.jsx)(n.td,{children:"-"}),(0,i.jsx)(n.td,{children:"Your OpenAI API key. Required."})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"PROVIDER_API_KEY"})}),(0,i.jsx)(n.td,{children:"-"}),(0,i.jsx)(n.td,{children:"API key for the model provider."})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"PROVIDER_ENDPOINT"})}),(0,i.jsx)(n.td,{children:"-"}),(0,i.jsx)(n.td,{children:"Custom provider endpoint. Only used for IBM or Ollama providers."})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"PROVIDER_PROJECT_ID"})}),(0,i.jsx)(n.td,{children:"-"}),(0,i.jsx)(n.td,{children:"Project ID for providers. Only required for the IBM watsonx.ai provider."})]})]})]}),"\n",(0,i.jsx)(n.h3,{id:"document-processing",children:"Document processing"}),"\n",(0,i.jsxs)(n.p,{children:["Control how OpenRAG processes and ingests documents into your knowledge base.\nFor more information, see ",(0,i.jsx)(n.a,{href:"/ingestion",children:"Ingestion"}),"."]}),"\n",(0,i.jsxs)(n.table,{children:[(0,i.jsx)(n.thead,{children:(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.th,{children:"Variable"}),(0,i.jsx)(n.th,{children:"Default"}),(0,i.jsx)(n.th,{children:"Description"})]})}),(0,i.jsxs)(n.tbody,{children:[(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"CHUNK_OVERLAP"})}),(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"200"})}),(0,i.jsx)(n.td,{children:"Overlap between chunks."})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"CHUNK_SIZE"})}),(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"1000"})}),(0,i.jsx)(n.td,{children:"Text chunk size for document processing."})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"DISABLE_INGEST_WITH_LANGFLOW"})}),(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"false"})}),(0,i.jsx)(n.td,{children:"Disable Langflow ingestion pipeline."})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"DOCLING_OCR_ENGINE"})}),(0,i.jsx)(n.td,{children:"-"}),(0,i.jsx)(n.td,{children:"OCR engine for document processing."})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"OCR_ENABLED"})}),(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"false"})}),(0,i.jsx)(n.td,{children:"Enable OCR for image processing."})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"OPENRAG_DOCUMENTS_PATHS"})}),(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"./documents"})}),(0,i.jsx)(n.td,{children:"Document paths for ingestion."})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"PICTURE_DESCRIPTIONS_ENABLED"})}),(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"false"})}),(0,i.jsx)(n.td,{children:"Enable picture descriptions."})]})]})]}),"\n",(0,i.jsx)(n.h3,{id:"langflow-settings",children:"Langflow settings"}),"\n",(0,i.jsx)(n.p,{children:"Configure Langflow authentication."}),"\n",(0,i.jsxs)(n.table,{children:[(0,i.jsx)(n.thead,{children:(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.th,{children:"Variable"}),(0,i.jsx)(n.th,{children:"Default"}),(0,i.jsx)(n.th,{children:"Description"})]})}),(0,i.jsxs)(n.tbody,{children:[(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"LANGFLOW_AUTO_LOGIN"})}),(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"False"})}),(0,i.jsx)(n.td,{children:"Enable auto-login for Langflow."})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"LANGFLOW_CHAT_FLOW_ID"})}),(0,i.jsx)(n.td,{children:"pre-filled"}),(0,i.jsxs)(n.td,{children:["This value is pre-filled. The default value is found in ",(0,i.jsx)(n.a,{href:"https://github.com/langflow-ai/openrag/blob/main/.env.example",children:".env.example"}),"."]})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"LANGFLOW_ENABLE_SUPERUSER_CLI"})}),(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"False"})}),(0,i.jsx)(n.td,{children:"Enable superuser CLI."})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"LANGFLOW_INGEST_FLOW_ID"})}),(0,i.jsx)(n.td,{children:"pre-filled"}),(0,i.jsxs)(n.td,{children:["This value is pre-filled. The default value is found in ",(0,i.jsx)(n.a,{href:"https://github.com/langflow-ai/openrag/blob/main/.env.example",children:".env.example"}),"."]})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"LANGFLOW_KEY"})}),(0,i.jsx)(n.td,{children:"auto-generated"}),(0,i.jsx)(n.td,{children:"Explicit Langflow API key."})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"LANGFLOW_NEW_USER_IS_ACTIVE"})}),(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"False"})}),(0,i.jsx)(n.td,{children:"New users are active by default."})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"LANGFLOW_PUBLIC_URL"})}),(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"http://localhost:7860"})}),(0,i.jsx)(n.td,{children:"Public URL for Langflow."})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"LANGFLOW_SECRET_KEY"})}),(0,i.jsx)(n.td,{children:"-"}),(0,i.jsx)(n.td,{children:"Secret key for Langflow internal operations."})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"LANGFLOW_SUPERUSER"})}),(0,i.jsx)(n.td,{children:"-"}),(0,i.jsx)(n.td,{children:"Langflow admin username. Required."})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"LANGFLOW_SUPERUSER_PASSWORD"})}),(0,i.jsx)(n.td,{children:"-"}),(0,i.jsx)(n.td,{children:"Langflow admin password. Required."})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"LANGFLOW_URL"})}),(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"http://localhost:7860"})}),(0,i.jsx)(n.td,{children:"Langflow URL."})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"NUDGES_FLOW_ID"})}),(0,i.jsx)(n.td,{children:"pre-filled"}),(0,i.jsxs)(n.td,{children:["This value is pre-filled. The default value is found in ",(0,i.jsx)(n.a,{href:"https://github.com/langflow-ai/openrag/blob/main/.env.example",children:".env.example"}),"."]})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"SYSTEM_PROMPT"})}),(0,i.jsx)(n.td,{children:'"You are a helpful AI assistant with access to a knowledge base. Answer questions based on the provided context."'}),(0,i.jsx)(n.td,{children:"System prompt for the Langflow agent."})]})]})]}),"\n",(0,i.jsx)(n.h3,{id:"oauth-provider-settings",children:"OAuth provider settings"}),"\n",(0,i.jsx)(n.p,{children:"Configure OAuth providers and external service integrations."}),"\n",(0,i.jsxs)(n.table,{children:[(0,i.jsx)(n.thead,{children:(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.th,{children:"Variable"}),(0,i.jsx)(n.th,{children:"Default"}),(0,i.jsx)(n.th,{children:"Description"})]})}),(0,i.jsxs)(n.tbody,{children:[(0,i.jsxs)(n.tr,{children:[(0,i.jsxs)(n.td,{children:[(0,i.jsx)(n.code,{children:"AWS_ACCESS_KEY_ID"})," / ",(0,i.jsx)(n.code,{children:"AWS_SECRET_ACCESS_KEY"})]}),(0,i.jsx)(n.td,{children:"-"}),(0,i.jsx)(n.td,{children:"AWS integrations."})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsxs)(n.td,{children:[(0,i.jsx)(n.code,{children:"GOOGLE_OAUTH_CLIENT_ID"})," / ",(0,i.jsx)(n.code,{children:"GOOGLE_OAUTH_CLIENT_SECRET"})]}),(0,i.jsx)(n.td,{children:"-"}),(0,i.jsx)(n.td,{children:"Google OAuth authentication."})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsxs)(n.td,{children:[(0,i.jsx)(n.code,{children:"MICROSOFT_GRAPH_OAUTH_CLIENT_ID"})," / ",(0,i.jsx)(n.code,{children:"MICROSOFT_GRAPH_OAUTH_CLIENT_SECRET"})]}),(0,i.jsx)(n.td,{children:"-"}),(0,i.jsx)(n.td,{children:"Microsoft OAuth."})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"WEBHOOK_BASE_URL"})}),(0,i.jsx)(n.td,{children:"-"}),(0,i.jsx)(n.td,{children:"Base URL for webhook endpoints."})]})]})]}),"\n",(0,i.jsx)(n.h3,{id:"opensearch-settings",children:"OpenSearch settings"}),"\n",(0,i.jsx)(n.p,{children:"Configure OpenSearch database authentication."}),"\n",(0,i.jsxs)(n.table,{children:[(0,i.jsx)(n.thead,{children:(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.th,{children:"Variable"}),(0,i.jsx)(n.th,{children:"Default"}),(0,i.jsx)(n.th,{children:"Description"})]})}),(0,i.jsxs)(n.tbody,{children:[(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"OPENSEARCH_HOST"})}),(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"localhost"})}),(0,i.jsx)(n.td,{children:"OpenSearch host."})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"OPENSEARCH_PASSWORD"})}),(0,i.jsx)(n.td,{children:"-"}),(0,i.jsx)(n.td,{children:"Password for OpenSearch admin user. Required."})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"OPENSEARCH_PORT"})}),(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"9200"})}),(0,i.jsx)(n.td,{children:"OpenSearch port."})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"OPENSEARCH_USERNAME"})}),(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"admin"})}),(0,i.jsx)(n.td,{children:"OpenSearch username."})]})]})]}),"\n",(0,i.jsx)(n.h3,{id:"system-settings",children:"System settings"}),"\n",(0,i.jsx)(n.p,{children:"Configure general system components, session management, and logging."}),"\n",(0,i.jsxs)(n.table,{children:[(0,i.jsx)(n.thead,{children:(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.th,{children:"Variable"}),(0,i.jsx)(n.th,{children:"Default"}),(0,i.jsx)(n.th,{children:"Description"})]})}),(0,i.jsxs)(n.tbody,{children:[(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"LANGFLOW_KEY_RETRIES"})}),(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"15"})}),(0,i.jsx)(n.td,{children:"Number of retries for Langflow key generation."})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"LANGFLOW_KEY_RETRY_DELAY"})}),(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"2.0"})}),(0,i.jsx)(n.td,{children:"Delay between retries in seconds."})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"LANGFLOW_VERSION"})}),(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"latest"})}),(0,i.jsx)(n.td,{children:"Langflow Docker image version."})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"LOG_FORMAT"})}),(0,i.jsx)(n.td,{children:"-"}),(0,i.jsx)(n.td,{children:'Log format (set to "json" for JSON output).'})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"LOG_LEVEL"})}),(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"INFO"})}),(0,i.jsx)(n.td,{children:"Logging level (DEBUG, INFO, WARNING, ERROR)."})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"MAX_WORKERS"})}),(0,i.jsx)(n.td,{children:"-"}),(0,i.jsx)(n.td,{children:"Maximum number of workers for document processing."})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"OPENRAG_VERSION"})}),(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"latest"})}),(0,i.jsx)(n.td,{children:"OpenRAG Docker image version."})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"SERVICE_NAME"})}),(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"openrag"})}),(0,i.jsx)(n.td,{children:"Service name for logging."})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"SESSION_SECRET"})}),(0,i.jsx)(n.td,{children:"auto-generated"}),(0,i.jsx)(n.td,{children:"Session management."})]})]})]}),"\n",(0,i.jsx)(n.h2,{id:"langflow-runtime-overrides",children:"Langflow runtime overrides"}),"\n",(0,i.jsx)(n.p,{children:"Langflow runtime overrides allow you to modify component settings at runtime without changing the base configuration."}),"\n",(0,i.jsxs)(n.p,{children:["Runtime overrides are implemented through ",(0,i.jsx)(n.strong,{children:"tweaks"})," - parameter modifications that are passed to specific Langflow components during flow execution."]}),"\n",(0,i.jsxs)(n.p,{children:["For more information on tweaks, see ",(0,i.jsx)(n.a,{href:"https://docs.langflow.org/concepts-publish#input-schema",children:"Input schema (tweaks)"}),"."]}),"\n",(0,i.jsx)(n.h2,{id:"default-values-and-fallbacks",children:"Default values and fallbacks"}),"\n",(0,i.jsx)(n.p,{children:"When no environment variables or configuration file values are provided, OpenRAG uses default values.\nThese values can be found in the code base at the following locations."}),"\n",(0,i.jsx)(n.h3,{id:"openrag-configuration-defaults",children:"OpenRAG configuration defaults"}),"\n",(0,i.jsxs)(n.p,{children:["These values are defined in ",(0,i.jsxs)(n.a,{href:"https://github.com/langflow-ai/openrag/blob/main/src/config/config_manager.py",children:[(0,i.jsx)(n.code,{children:"config_manager.py"})," in the OpenRAG repository"]}),"."]}),"\n",(0,i.jsx)(n.h3,{id:"system-configuration-defaults",children:"System configuration defaults"}),"\n",(0,i.jsxs)(n.p,{children:["These fallback values are defined in ",(0,i.jsxs)(n.a,{href:"https://github.com/langflow-ai/openrag/blob/main/src/config/settings.py",children:[(0,i.jsx)(n.code,{children:"settings.py"})," in the OpenRAG repository"]}),"."]})]})}function a(e={}){const{wrapper:n}={...(0,d.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(h,{...e})}):h(e)}}}]);