跳到主要内容

Langflow CLI

Langflow 命令行界面是用于管理和运行 Langflow 服务器的主要界面。

当您 安装 Langflow 包 时,Langflow CLI 会自动安装。 它不适用于 Langflow Desktop。

如何使用 CLI

调用 Langflow CLI 的方式有多种,具体取决于您的安装方法和环境。

推荐的方法是在安装了 Langflow 的虚拟环境中使用 uv run 运行 CLI。

例如,要在默认端口上启动 Langflow,请运行以下命令:


_10
uv run langflow run

如果 Langflow 已全局安装或已添加到您的 PATH 中,则可以直接使用 langflow 执行 CLI。


_10
langflow run

优先级

Langflow CLI 选项会覆盖终端或主 .env 文件中设置的 环境变量 的值。

例如,如果您将 LANGFLOW_PORT=7860 定义为环境变量,并使用 --port 7880 运行 CLI,那么 Langflow 将端口设置为 7880,因为 CLI 选项覆盖了环境变量。

这也适用于布尔型环境变量。 例如,如果您在 .env 文件中设置了 LANGFLOW_REMOVE_API_KEYS=True,则可以通过使用 --no-remove-api-keys 运行 CLI 在运行时将其更改为 False

Langflow CLI 选项

所有 Langflow CLI 命令都支持修改命令行为或设置环境变量的选项。

要设置选项的值,可以使用以下任一语法风格:

  • --option value
  • --option=value

包含空格的值必须用引号括起来:

  • --option 'Value with Spaces'
  • --option="Value with Spaces"

布尔选项

布尔选项用于启用和禁用设置。 它们具有 true(启用)和 false(禁用)形式:

  • 启用 (true): --option
  • 禁用 (false): --no-option

以下示例比较了 REMOVE_API_KEYS 的布尔选项形式。

--remove-api-keys 等同于在 .env 中设置 LANGFLOW_REMOVE_API_KEYS=True


_10
uv run langflow run --remove-api-keys

在以下命令参考中,布尔值的默认值包括 CLI 标志和等效的布尔评估,例如 "--option (true)" 和 "--no-option (false)"。

通用选项

以下选项适用于所有 Langflow CLI 命令:

  • --version, -v: 显示版本并退出。
  • --install-completion: 为当前 shell 安装自动补全。
  • --show-completion: 如果已安装,显示自动补全配置文件的位置。
  • --help: 打印有关命令用法、选项和参数的信息。

CLI 命令

以下部分描述了可用的 CLI 命令以及每个命令可用的任何其他选项(除了 通用选项)。

langflow

不带任何参数运行 CLI 会打印可用选项和命令的列表。


_10
uv run langflow

langflow api-key

创建一个 Langflow API 密钥。

您必须是超级用户才能使用 CLI 创建 API 密钥。 有关更多信息,请参阅 Langflow API 密钥


_10
uv run langflow api-key

选项

选项默认值类型描述
--log-levelerrorString日志级别。debuginfowarningerrorcritical 之一。

langflow copy-db

将 Langflow 数据库文件从缓存目录复制到当前 Langflow 安装目录,即包含 __main__.py 的目录。 您可以通过运行 which langflow 找到复制目标目录。

如果缓存目录中存在以下文件,则会进行复制:

  • langflow.db: 存储在用户缓存目录中的主 Langflow 数据库
  • langflow-pre.db: 预发布数据库(如果存在)

_10
uv run langflow copy-db

langflow migration

使用 Alembic 管理 Langflow 数据库模式更改,Alembic 是 SQLAlchemy 的数据库迁移工具。

migration 命令有两种模式:

  • 测试模式 (默认): 检查是否可以安全应用迁移,而不实际运行迁移。 使用此模式可在进行迁移之前预览将对数据库模式进行的更改。

  • 修复模式 (Fix mode): 应用迁移以更新数据库模式。

    注意

    langflow migration --fix 是一个破坏性操作,可能会删除数据。 务必先运行 langflow migration 以预览更改。

  1. 运行测试模式:

_10
uv run langflow migration

  1. 预览测试返回的更改,以确定是否可以安全地进行迁移。

  2. 运行修复模式以应用更改:


_10
uv run langflow migration --fix

langflow run

启动 Langflow 服务器。


_10
uv run langflow run [OPTIONS]

选项

此命令支持 Langflow 服务器的一些常见且非敏感的配置选项。 其他选项必须在 .env 或您的终端中设置。 有关 Langflow 配置选项的更多信息,请参阅 Langflow 环境变量

选项默认值类型描述
--auto-saving--auto-saving (true)Boolean是否在视觉编辑器中启用流自动保存。使用 --no-auto-saving 禁用流自动保存。
--auto-saving-interval1000Integer流自动保存的时间间隔(毫秒)。
--backend-only--no-backend-only (false)Boolean是否仅运行 Langflow 的后端服务(无前端)。省略或使用 --no-backend-only 以同时启动前端和后端。请参阅 以无头模式启动 Langflow
--cacheasyncString要使用的 缓存存储 类型。asyncredismemorydisk 之一。
--components-path未设置String包含自定义组件的目录路径。
--dev--no-dev (false)Boolean是否在开发模式下运行(可能包含错误)。
--env-file未设置String包含 Langflow 环境变量的 .env 文件路径。请参阅 使用特定的 .env 文件启动 Langflow
--frontend-path未设置String包含构建文件的前端目录路径。仅在 为 Langflow 代码库做贡献 或开发包含自定义前端代码的自定义 Langflow 镜像时使用。
--health-check-max-retries5IntegerLangflow 服务器健康检查的最大重试次数。
--hostlocalhostStringLangflow 服务器运行的主机名。
--log-filelogs/langflow.logStringLangflow 日志文件的路径。
--log-levelcriticalString日志级别,为 debuginfowarningerrorcritical 之一。
--log-rotation未设置String日志轮转间隔,可以是时间时长或文件大小。
--max-file-size-upload1024Integer文件上传的最大限制(MB)。
--open-browser--no-open-browser (false)Boolean启动时是否打开系统 Web 浏览器。使用 --open-browser 在 Langflow 启动时打开系统默认 Web 浏览器。
--port7860IntegerLangflow 服务器运行的端口。如果指定的端口已被占用,服务器会自动选择一个空闲端口。
--remove-api-keys--no-remove-api-keys (false)Boolean是否从保存在 Langflow 数据库中的流中删除 API 密钥和令牌。
--ssl-cert-file-path未设置String本地系统上用于 SSL 加密连接的 SSL 证书文件路径。
--ssl-key-file-path未设置String本地系统上用于 SSL 加密连接的 SSL 密钥文件路径。
--worker-timeout300IntegerLangflow 服务器工作进程超时时间(秒)。
--workers1IntegerLangflow 服务器工作进程的数量。

使用特定的 .env 文件启动 Langflow

--env-file 选项使用给定的 .env 文件中定义的配置启动 Langflow。 追加到此命令的其他选项会覆盖 .env 文件中的重复值。

如果省略 --env-file 或其未包含所有必需的变量,Langflow 将使用这些变量的默认值。


_10
uv run langflow run --env-file PATH/TO/LANGFLOW/.env

以无头模式启动 Langflow

--backend-only 选项仅启动 Langflow 的后端服务。 此无头模式没有前端(视觉编辑器),您只能通过 Langflow API 和 CLI 以编程方式访问服务器。


_10
uv run langflow run --backend-only

langflow superuser

使用给定的用户名和密码创建一个超级用户帐户。


_10
uv run langflow superuser --username [NAME] --password [PASSWORD] [OPTIONS]

选项

选项默认值类型描述
--log-levelerrorString日志级别。debuginfowarningerrorcritical 之一。

对于此命令,--username--password 不是可选的,并且没有默认值。 如果您不提供这些参数,命令将失败。 有关更多信息,请参阅 LANGFLOW_SUPERUSERLANGFLOW_SUPERUSER_PASSWORD

禁用 CLI 超级用户创建

langflow superuser 命令由 LANGFLOW_ENABLE_SUPERUSER_CLI 环境变量控制:

  • LANGFLOW_ENABLE_SUPERUSER_CLI=True (默认)langflow superuser 命令可用,且超级用户创建不受限制。
  • LANGFLOW_ENABLE_SUPERUSER_CLI=False (推荐):禁用 langflow superuser 命令。 出于安全原因,建议在生产环境中禁用此功能,以防止未经授权的超级用户创建。

要禁用 langflow superuser 命令,必须在 Langflow .env 文件中设置 LANGFLOW_ENABLE_SUPERUSER_CLI=False,然后 使用您的 .env 文件启动 Langflow

Search