Skip to main content

環境變數

一般來說,環境變數(如 LANGFLOW_PORTLANGFLOW_LOG_LEVEL)配置 AgentBuilder 的運作方式。 這些是適用於整個 AgentBuilder 部署的廣泛設定。

相較之下,全域變數是儲存在 AgentBuilder 資料庫中的使用者定義值,用於 Flow中,例如 OPENAI_API_KEY。 AgentBuilder 也可以從環境變數取得全域變數。 有關更多資訊,請參閱 AgentBuilder 全域變數

配置 AgentBuilder OSS 的環境變數

AgentBuilder 從以下來源識別支援的環境變數

  • 在終端機中設定的環境變數。
  • 啟動 AgentBuilder 時從 .env 檔案匯入的環境變數。
  • 使用 AgentBuilder CLI 設定的環境變數,包括 --env-file 選項和直接選項,例如 --port

您可以選擇使用一個或多個這些來源。

優先順序

如果在多個地方設定了相同的環境變數,以下階層適用:

  1. AgentBuilder CLI 選項覆寫所有其他來源。
  2. .env 檔案覆寫系統環境變數。
  3. 系統環境變數僅在其他地方未設定時使用。 執行 AgentBuilder Docker 映像時,可以使用 -e 旗標設定其他系統環境變數。

例如:

  • 如果您在系統環境中設定 LANGFLOW_PORT=8080,並在 .env 中設定 LANGFLOW_PORT=7860,AgentBuilder 使用來自 .env7860
  • 如果您使用 AgentBuilder CLI 執行 langflow run --env-file .env --port 9000,並在 .env 中設定 LANGFLOW_PORT=7860,則 AgentBuilder 使用來自 CLI 選項的 9000

在終端機中設定環境變數

執行以下命令來為目前終端機工作階段設定環境變數:


_10
export VARIABLE_NAME='VALUE'

當您啟動 AgentBuilder 時,它會尋找您在終端機中設定的環境變數。 如果它偵測到支援的環境變數,則會自動採用指定的值,受 優先順序規則 約束。

從 .env 檔案匯入環境變數

  1. 如果 AgentBuilder 正在執行,請退出 AgentBuilder。

  2. 建立 .env 檔案,然後在您偏好的編輯器中開啟它。

  3. .env 檔案中定義 AgentBuilder 環境變數

    範例:.env

    _29
    DO_NOT_TRACK=True
    _29
    LANGFLOW_AUTO_LOGIN=False
    _29
    LANGFLOW_AUTO_SAVING=True
    _29
    LANGFLOW_AUTO_SAVING_INTERVAL=1000
    _29
    LANGFLOW_BACKEND_ONLY=False
    _29
    LANGFLOW_BUNDLE_URLS=["https://github.com/user/repo/commit/hash"]
    _29
    LANGFLOW_CACHE_TYPE=async
    _29
    LANGFLOW_COMPONENTS_PATH=/path/to/components/
    _29
    LANGFLOW_CONFIG_DIR=/path/to/config/
    _29
    LANGFLOW_DATABASE_URL=postgresql://user:password@localhost:5432/langflow
    _29
    LANGFLOW_DEV=False
    _29
    LANGFLOW_FALLBACK_TO_ENV_VAR=False
    _29
    LANGFLOW_HEALTH_CHECK_MAX_RETRIES=5
    _29
    LANGFLOW_HOST=localhost
    _29
    LANGFLOW_LANGCHAIN_CACHE=InMemoryCache
    _29
    LANGFLOW_MAX_FILE_SIZE_UPLOAD=10000
    _29
    LANGFLOW_MAX_ITEMS_LENGTH=100
    _29
    LANGFLOW_MAX_TEXT_LENGTH=1000
    _29
    LANGFLOW_LOG_LEVEL=error
    _29
    LANGFLOW_OPEN_BROWSER=False
    _29
    LANGFLOW_PORT=7860
    _29
    LANGFLOW_REMOVE_API_KEYS=False
    _29
    LANGFLOW_SAVE_DB_IN_CONFIG_DIR=True
    _29
    LANGFLOW_SECRET_KEY=somesecretkey
    _29
    LANGFLOW_STORE_ENVIRONMENT_VARIABLES=True
    _29
    LANGFLOW_SUPERUSER=adminuser
    _29
    LANGFLOW_SUPERUSER_PASSWORD=adminpass
    _29
    LANGFLOW_WORKER_TIMEOUT=60000
    _29
    LANGFLOW_WORKERS=3

    如需其他範例,請參閱 AgentBuilder 儲存庫中的 .env.example

  4. 儲存並關閉 .env

  5. 使用您的 .env 檔案啟動 AgentBuilder:


    _10
    uv run langflow run --env-file .env

    如果您的 .env 檔案不在相同目錄中,請提供 .env 檔案的路徑。

啟動時,AgentBuilder 從您的 .env 檔案匯入環境變數,以及您在終端機中設定的任何其他變數,然後採用它們指定的值。

配置開發環境變數

以下範例顯示如何在不同的開發情境中使用環境變數配置 AgentBuilder。

.env 檔案是一個包含環境變數鍵值對的文字檔案。

在應用程式或 AgentBuilder 環境的根目錄中建立或編輯 .env 檔案,然後將您的配置變數新增至檔案:

範例:.env

_29
DO_NOT_TRACK=True
_29
LANGFLOW_AUTO_LOGIN=False
_29
LANGFLOW_AUTO_SAVING=True
_29
LANGFLOW_AUTO_SAVING_INTERVAL=1000
_29
LANGFLOW_BACKEND_ONLY=False
_29
LANGFLOW_BUNDLE_URLS=["https://github.com/user/repo/commit/hash"]
_29
LANGFLOW_CACHE_TYPE=async
_29
LANGFLOW_COMPONENTS_PATH=/path/to/components/
_29
LANGFLOW_CONFIG_DIR=/path/to/config/
_29
LANGFLOW_DATABASE_URL=postgresql://user:password@localhost:5432/langflow
_29
LANGFLOW_DEV=False
_29
LANGFLOW_FALLBACK_TO_ENV_VAR=False
_29
LANGFLOW_HEALTH_CHECK_MAX_RETRIES=5
_29
LANGFLOW_HOST=localhost
_29
LANGFLOW_LANGCHAIN_CACHE=InMemoryCache
_29
LANGFLOW_MAX_FILE_SIZE_UPLOAD=10000
_29
LANGFLOW_MAX_ITEMS_LENGTH=100
_29
LANGFLOW_MAX_TEXT_LENGTH=1000
_29
LANGFLOW_LOG_LEVEL=error
_29
LANGFLOW_OPEN_BROWSER=False
_29
LANGFLOW_PORT=7860
_29
LANGFLOW_REMOVE_API_KEYS=False
_29
LANGFLOW_SAVE_DB_IN_CONFIG_DIR=True
_29
LANGFLOW_SECRET_KEY=somesecretkey
_29
LANGFLOW_STORE_ENVIRONMENT_VARIABLES=True
_29
LANGFLOW_SUPERUSER=adminuser
_29
LANGFLOW_SUPERUSER_PASSWORD=adminpass
_29
LANGFLOW_WORKER_TIMEOUT=60000
_29
LANGFLOW_WORKERS=3

設定 AgentBuilder Desktop 的環境變數

在終端機中設定的環境變數不會自動提供給從 Windows 或 macOS GUI 啟動的 GUI 應用程式,如 AgentBuilder Desktop。

對於 Windows,這意味著從「開始」選單、桌面捷徑或 Windows 檔案總管啟動的任何 GUI 應用程式。

對於 macOS,這意味著從 Finder、Spotlight、Launchpad 或 Dock 啟動的任何 GUI 應用程式。

要設定 AgentBuilder Desktop 的環境變數,您需要根據您的 OS 使用特定命令或檔案。

macOS 的 AgentBuilder Desktop 無法在從 macOS GUI 啟動時自動使用在終端機中設定的變數,例如 .zshrc.bash_profile 中的變數。

要在 macOS 上使環境變數可用於 GUI 應用程式,您需要使用 launchctl 搭配 plist 檔案:

  1. 如果不存在,請建立 LaunchAgents 目錄:


    _10
    mkdir -p ~/Library/LaunchAgents

  2. LaunchAgents 目錄中,建立名為 dev.langflow.env.plist 檔案。

  3. 將以下內容新增至 dev.langflow.env.plist,然後根據您的配置新增、變更或移除 AgentBuilder 環境變數。

    此範例為從 macOS GUI 啟動的所有 GUI 應用程式設定多個環境變數。


    _21
    <?xml version="1.0" encoding="UTF-8"?>
    _21
    <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    _21
    <plist version="1.0">
    _21
    <dict>
    _21
    <key>Label</key>
    _21
    <string>dev.langflow.env</string>
    _21
    <key>ProgramArguments</key>
    _21
    <array>
    _21
    <string>/bin/sh</string>
    _21
    <string>-c</string>
    _21
    <string>
    _21
    launchctl setenv LANGFLOW_CONFIG_DIR /Users/your_user/custom/config &&
    _21
    launchctl setenv LANGFLOW_PORT 7860 &&
    _21
    launchctl setenv LANGFLOW_HOST localhost &&
    _21
    launchctl setenv ARIZE_API_KEY ak-...
    _21
    </string>
    _21
    </array>
    _21
    <key>RunAtLoad</key>
    _21
    <true/>
    _21
    </dict>
    _21
    </plist>

  4. 使用 launchctl 載入檔案:


    _10
    launchctl load ~/Library/LaunchAgents/dev.langflow.env.plist

支援的環境變數

以下各節提供有關特定 AgentBuilder 環境變數的資訊。

驗證和安全性

請參閱 API 金鑰和驗證

全域變數

有關 AgentBuilder 全域變數與環境變數之間的關係,以及控制全域變數處理的環境變數的資訊,請參閱 全域變數

日誌

請參閱 配置日誌選項

MCP 伺服器

請參閱 使用 AgentBuilder 作為 MCP 伺服器

監控和指標

有關特定監控服務提供者的環境變數,請參閱 AgentBuilder 監控整合指南,例如 LangfuseKubernetes 上 AgentBuilder 的最佳實務

伺服器

以下環境變數設定基礎 AgentBuilder 伺服器配置,例如伺服器託管位置、SSL 加密所需檔案,以及部署類型(前端和後端、僅後端、開發模式)。

變數格式預設值描述
LANGFLOW_HOSTStringlocalhostAgentBuilder 伺服器將運行的主機。
LANGFLOW_PORTInteger7860AgentBuilder 伺服器運行的連接埠。如果指定的連接埠正在使用中,伺服器會自動選取一個可用連接埠。
LANGFLOW_BACKEND_ONLYBooleanFalse僅執行 AgentBuilder 後端服務(無前端)。
LANGFLOW_DEVBooleanFalse是否在開發模式下執行 AgentBuilder(可能包含錯誤)。
LANGFLOW_OPEN_BROWSERBooleanFalse啟動時開啟系統網路瀏覽器。
LANGFLOW_HEALTH_CHECK_MAX_RETRIESInteger5設定 AgentBuilder 伺服器狀態健康檢查的最大重試次數。
LANGFLOW_WORKERSInteger1工作程序數量。
LANGFLOW_WORKER_TIMEOUTInteger300工作逾時秒數。
LANGFLOW_SSL_CERT_FILEString未設定啟用 AgentBuilder 網頁伺服器 HTTPS 的 SSL 憑證檔案路徑。這與資料庫 SSL 連接分開。
LANGFLOW_SSL_KEY_FILEString未設定啟用 AgentBuilder 網頁伺服器 HTTPS 的 SSL 金鑰檔案路徑。這與資料庫 SSL 連接分開。
LANGFLOW_DEACTIVATE_TRACINGBooleanFalse停用追蹤功能。
LANGFLOW_CELERY_ENABLEDBooleanFalse啟用 Celery 以進行分散式任務處理。

有關部署 AgentBuilder 伺服器的更多資訊,請參閱 AgentBuilder 部署概觀

儲存

請參閱 記憶體管理選項管理檔案

遙測

請參閱 遙測

視覺編輯器和 Playground 行為

變數格式預設值描述
LANGFLOW_AUTO_SAVINGBooleanTrue是否自動儲存 Flow。
LANGFLOW_AUTO_SAVING_INTERVALInteger1000如果 LANGFLOW_AUTO_SAVING=True,設定自動儲存間隔(毫秒)。
LANGFLOW_BUNDLE_URLSList[String][]載入自訂套件的 URL 清單。支援 GitHub URL。如果 LANGFLOW_AUTO_LOGIN=True,來自這些套件的 Flow會載入到資料庫中。
LANGFLOW_COMPONENTS_PATHString未設定包含自訂組件的目錄路徑。通常在您有本機自訂組件或建置包含自訂組件的 Docker 映像時使用。
LANGFLOW_LOAD_FLOWS_PATHString未設定包含 Flow JSON 檔案的目錄路徑,通常在建立包含預先封裝 Flow的 Docker 映像時使用。需要 LANGFLOW_AUTO_LOGIN=True
LANGFLOW_CREATE_STARTER_PROJECTSBooleanTrue是否在初始化期間建立範本。如果 false,AgentBuilder 不會建立範本,並將 LANGFLOW_UPDATE_STARTER_PROJECTS 視為 false
LANGFLOW_UPDATE_STARTER_PROJECTSBooleanTrue是否在升級後初始化時以最新組件版本更新範本。
LANGFLOW_LAZY_LOAD_COMPONENTSBooleanFalse如果 true,AgentBuilder 只在啟動時部分載入組件,並按需完全載入。這會顯著減少啟動時間,但可能會在使用組件時造成輕微延遲。
LANGFLOW_EVENT_DELIVERYStringstreaming如何將建置事件傳遞到前端:pollingstreamingdirect
LANGFLOW_FRONTEND_PATHString./frontend包含建置檔案的前端目錄路徑。僅供開發目的使用,當您需要服務特定前端程式碼時。
LANGFLOW_MAX_ITEMS_LENGTHInteger100在視覺編輯器中儲存和顯示的最大項目數。超過此長度的清單在視覺編輯器中顯示時會被截斷。不會影響輸出或在組件之間傳遞的數據。
LANGFLOW_MAX_TEXT_LENGTHInteger1000在視覺編輯器中儲存和顯示的最大字元數。超過此長度的回應在視覺編輯器中顯示時會被截斷。不會截斷在組件之間傳遞的輸出或回應。
LANGFLOW_MAX_TRANSACTIONS_TO_KEEPInteger3000在資料庫中保留的最大 Flow交易事件數。
LANGFLOW_MAX_VERTEX_BUILDS_TO_KEEPInteger3000在資料庫中保留的最大頂點建置數。與 Playground 功能相關。
LANGFLOW_MAX_VERTEX_BUILDS_PER_VERTEXInteger2每個頂點保留的最大建置數。舊建置會被刪除。與 Playground 功能相關。
LANGFLOW_PUBLIC_FLOW_CLEANUP_INTERVALInteger3600清理共享 Playground Flow數據的間隔秒數。預設值:3600 秒(1 小時)。最小值:600 秒(10 分鐘)。
LANGFLOW_PUBLIC_FLOW_EXPIRATIONInteger86400共享 Playground Flow被視為過期並符合清理資格的秒數。預設值:86400 秒(24 小時)。最小值:600 秒(10 分鐘)。
Search