Langflow CLI
Langflow 命令行界面是管理和运行 Langflow 服务器的主要接口。
当你安装 Langflow 包时,Langflow CLI 会自动安装。 它不适用于 Langflow Desktop。
如何使用 CLI
根据你的安装方法和环境,Langflow CLI 可以通过多种方式调用。
推荐的方法是在安装了 Langflow 的虚拟环境中使用 uv run
运行 CLI。
例如,要在默认端口上启动 Langflow,请运行以下命令:
_10uv run langflow run
如果 Langflow 是全局安装或已添加到你的 PATH 中,你可以直接使用 langflow
执行 CLI。
_10langflow 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 值
--option=值
包含空格的值必须用引号括起来:
--option '包含空格的值'
--option="包含空格的值"
布尔选项
布尔选项用于启用和禁用设置。 它们有真(启用)和假(禁用)两种形式:
- 启用(真):
--option
- 禁用(假):
--no-option
以下示例比较 REMOVE_API_KEYS
的布尔选项形式。
- True
- False
--remove-api-keys
等价于在 .env
中设置 LANGFLOW_REMOVE_API_KEYS=True
:
_10uv run langflow run --remove-api-keys
--no-remove-api-keys
等价于在 .env
中设置 LANGFLOW_REMOVE_API_KEYS=False
:
_10uv run langflow run --no-remove-api-keys
在以下命令参考中,布尔值的默认值包括 CLI 标志和等效的布尔评估,例如 "--option
(true)" 和 "--no-option
(false)"。
通用选项
以下选项适用于所有 Langflow CLI 命令:
--version
,-v
:显示版本并退出。--install-completion
:为当前 shell 安装自动补全。--show-completion
:显示自动补全配置文件的位置(如果已安装)。--help
:打印关于命令用法、选项和参数的信息。
CLI 命令
以下部分描述了可用的 CLI 命令以及每 个命令可用的任何额外选项(除了通用选项)。
langflow
不带任何参数运行 CLI 会打印可用选项和命令的列表。
- uv (recommended)
- Direct
_10uv run langflow
_10langflow
langflow api-key
创建 Langflow API 密钥。
你必须使用超级用户权限才能通过 CLI 创建 API 密钥。 有关更多信息,请参阅 Langflow API 密钥。
- uv (recommended)
- Direct
_10uv run langflow api-key
_10langflow api-key
选项
选项 | 默认值 | 类型 | 描述 |
---|---|---|---|
--log-level | error | 字符串 | 日志级别。可选值为 debug 、info 、warning 、error 或 critical 。 |
langflow copy-db
将Langflow数据库文件从缓存目录Replicate到当前的Langflow安装目录,即包含__main__.py
的目录。
您可以通过运行which langflow
来查找Replicate目标目录。
如果缓存目录中存在以下文件,它们将被Replicate:
langflow.db
: 主Langflow数据库,存储在用户缓存目录中langflow-pre.db
: 预发布数据库(如果存在)
- uv (recommended)
- Direct
_10uv run langflow copy-db
_10langflow copy-db
langflow migration
使用Alembic(SQLAlchemy的数据库迁移工具)管理Langflow数据库模式变更。
migration
命令有两种模式:
-
测试模式(默认): 检查迁移是否可以安全应用,而不实际运行迁移。在继续进行迁移之前,使用此模式预览将对数据库模式所做的更改。
-
修复模式: 应用迁移以更新数据库模式。
注意langflow migration --fix
是一个可能删除数据的破坏性操作。 始终先运行langflow migration
来预览更改。
- uv (recommended)
- Global
- 运行测试模式:
_10uv run langflow migration
-
查看测试返回的更改,确定是否可以安全地进行迁移。
-
运行修复模式以应用更改:
_10uv run langflow migration --fix
- 运行测试模式:
_10langflow migration
-
查看测试返回的更改,确定是否可以安全地进行迁移。
-
运行修复模式以应用更改:
_10langflow migration --fix
langflow run
启动Langflow服务器。
- uv (recommended)
- Direct
_10uv run langflow run [OPTIONS]
_10langflow run [OPTIONS]
选项
此命令支持您的 Langflow 服务器的常见且非敏感的配置选项。
其他选项必须在 .env
文件或您的终端中设置。
有关 Langflow 配置选项的更多信息,请参阅 Langflow 环境变量。
Option | Default | Type | Description |
---|---|---|---|
--auto-saving | --auto-saving (true) | Boolean | 是否启用流程自动保存。使用 --no-auto-saving 禁用流程自动保存。 |
--auto-saving-interval | 1000 | Integer | 流程自动保存的间隔时间(毫秒)。 |
--backend-only | --no-backend-only (false) | Boolean | 是否仅运行 Langflow 的后端服务(无前端)。省略或使用 --no-backend-only 同时启动前端和后端。请参阅 在无头模式下启动 Langflow。 |
--cache | async | String | 要使用的缓存类型。可选值为 async 、redis 、memory 或 disk 。 |
--components-path | Not set | String | 包含自定义组件的目录路径。 |
--dev | --no-dev (false) | Boolean | 是否在开发模式下运行(可能包含错误)。 |
--env-file | Not set | String | 包含 Langflow 环境变量的 .env 文件路径。请参阅 使用特定的 .env 文件启动 Langflow。 |
--frontend-path | Not set | String | 包含构建文件的前端目录路径。这仅在 为 Langflow 代码库做贡献 或开发包含自定义前端代码的自定义 Langflow 镜像时使用。 |
--health-check-max-retries | 5 | Integer | 健康检查的最大重试次数。 |
--host | localhost | String | Langflow 服务器将运行的主机。 |
--log-file | logs/langflow.log | String | Langflow 的日志文件路径。 |
--log-level | critical | String | 日志级别,可选值为 debug 、info 、warning 、error 或 critical 。 |
--log-rotation | Not set | String | 日志轮转(时间/大小)。 |
--max-file-size-upload | 100 | Integer | 文件上传的最大大小(兆字节)。 |
--open-browser | --no-open-browser (false) | Boolean | 是否在启动时打开系统网页浏览器。使用 --open-browser 在 Langflow 启动时打开系统的默认网页浏览器。 |
--port | 7860 | Integer | Langflow 服务器将运行的端口。如果指定端口已被占用,服务器会自动选择一个空闲端口。 |
--remove-api-keys | --no-remove-api-keys (false) | Boolean | 是否从保存在 Langflow 数据库中的项目中移除 API 密钥。 |
--ssl-cert-file-path | Not set | String | 本地系统上 SSL 证书文件的路径。 |
--ssl-key-file-path | Not set | String | 本地系统上 SSL 密钥文件的路径。 |
--store | --store (true) | Boolean | 是否启用 Langflow Store 功能。使用 --no-store 禁用 Langflow Store 功能。 |
--worker-timeout | 300 | Integer | 工作进程超时时间(秒)。 |
--workers | 1 | Integer | 工作进程的数量。 |
使用特定的 .env 文件启动 Langflow
--env-file
选项使用给定 .env
文件中定义的配置启动 Langflow。
如果附加到此命令的选项与 .env
文件中的值有重复,则会覆盖 .env
文件中的值。
如果省略 --env-file
或文件不包含所有必需的变量,Langflow 将使用这些变量的默认值。
- uv (recommended)
- Direct
_10uv run langflow run --env-file PATH/TO/LANGFLOW/.env
_10langflow run --env-file PATH/TO/LANGFLOW/.env
在无头模式下启动 Langflow
--backend-only
选项仅启动 Langflow 的后端服务。
此无头模式没有前端(可视化编辑器),您只能通过 Langflow API 和 CLI 以编程方式访问服务器。
- uv (recommended)
- Direct
_10uv run langflow run --backend-only
_10langflow run --backend-only
langflow 超级用户
使用给定的用户名和密码创建超级用户账户。
- uv (recommended)
- Direct
_10uv run langflow superuser --username [NAME] --password [PASSWORD] [OPTIONS]
_10langflow superuser --username [NAME] --password [PASSWORD] [OPTIONS]
选项
选项 | 默认值 | 类型 | 描述 |
---|---|---|---|
--log-level | error | 字符串 | 日志级别。可选值为 debug 、info 、warning 、error 或 critical 之一。 |
对于此命令,--username
和 --password
不是可选的,它们没有默认值。
如果您不提供这些参数,命令将会失败。
有关更多信息,请参阅 LANGFLOW_SUPERUSER
和 LANGFLOW_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。