跳到主要内容

安装自定义依赖 (Install custom dependencies)

Langflow 提供可选的依赖组并支持自定义依赖,以扩展 Langflow 的功能。本指南介绍了如何为不同的 Langflow 安装(包括 Langflow Desktop 和 Langflow OSS)添加依赖。

Langflow 代码库使用两个 pyproject.toml 文件来管理依赖,一个用于 base,一个用于 main

  • main 包由根目录下的 pyproject.toml 管理,它包含最终用户功能和主要应用程序代码,例如 Langchain 和 OpenAI。
  • base 包由 src/backend/base/pyproject.toml 管理,它包含核心基础设施,例如 FastAPI Web 框架。

在 Langflow Desktop 中安装自定义依赖

要在 Langflow Desktop 中添加依赖,请在应用程序的 requirements.txt 文件中添加包条目:

  • 在 macOS 上,该文件位于 /Users/USER/.langflow/data/requirements.txt
  • 在 Windows 上,该文件位于 C:\Users\USER\AppData\Roaming\com.Langflow\data\requirements.txt

requirements.txt 中每行添加一个依赖,格式为 DEPENDENCY==VERSION,例如 matplotlib==3.10.0

重启 Langflow Desktop 以安装依赖。

如果您需要更改或卸载自定义依赖,请编辑 requirements.txt 文件,然后重启 Langflow Desktop。

在 Langflow OSS 中安装自定义依赖

要在您的 Langflow 环境中安装您自己的自定义依赖,请使用您的包管理器添加它们。

如果您在克隆的 Langflow 存储库中工作,请使用 uv add 添加依赖,因为 uv 已经有一个可以引用的 pyproject.toml 文件:


_10
uv add DEPENDENCY

安装可选依赖组

Langflow OSS 提供了扩展其功能的可选依赖组。

这些依赖列在 pyproject.toml 文件的 [project.optional-dependencies] 下。

使用 pip 的 [extras] 语法安装依赖组。例如,要安装带有 postgresql 依赖组的 Langflow,请输入以下命令:


_10
uv pip install "langflow[postgresql]"

要安装多个额外功能,请使用逗号分隔每个依赖组:


_10
uv pip install "langflow[local,postgresql]"

使用虚拟环境测试自定义依赖

在本地测试时,请使用虚拟环境来隔离您的依赖,并防止与其他 Python 项目发生冲突。

例如,如果您想在 Langflow 中尝试使用 matplotlib


_10
# 创建并激活虚拟环境
_10
uv venv YOUR_LANGFLOW_VENV
_10
source YOUR_LANGFLOW_VENV/bin/activate
_10
_10
# 安装 langflow 和您的额外依赖
_10
uv pip install langflow matplotlib

如果您在克隆的 Langflow 存储库中工作,请使用 uv add 添加依赖以引用现有的 pyproject.toml 文件:


_10
uv add matplotlib

uv add 命令会自动在适当的位置更新 uv.lock 文件。

向 Langflow 代码库添加依赖

在为 Langflow 代码库做贡献时,您可能需要向 Langflow 添加依赖。

Langflow 使用包含两个包的工作区,每个包都有不同类型的依赖。

要向 main 包添加依赖,请在项目根目录下运行 uv add DEPENDENCY。 例如:


_10
uv add matplotlib

依赖可以作为常规依赖添加到 main 包的 [project.dependencies] 中,或作为可选依赖添加到 [project.optional-dependencies] 中。

要向 base 包添加依赖,请导航到 src/backend/base 并运行:


_10
cd src/backend/base && uv add DEPENDENCY

要为测试、代码检查或调试添加开发依赖,请导航到 src/backend/base 并运行:


_10
cd src/backend/base && uv add --group dev DEPENDENCY

依赖可以作为常规依赖添加到 base 包的 [project.dependencies] 中,作为开发依赖添加到 [dependency-groups.dev] 中,或作为可选依赖添加到 [project.optional-dependencies] 中。

您可以选择使用 make add 代替 uv add


_10
# 等同于: uv add matplotlib
_10
make add main="matplotlib"
_10
_10
# 等同于: cd src/backend/base && uv add --group dev matplotlib
_10
make add devel="matplotlib"
_10
_10
# 等同于: cd src/backend/base && uv add matplotlib
_10
make add base="matplotlib"

或者,您可以手动将这些依赖添加到适当的 pyproject.toml 文件中:


_10
[project]
_10
dependencies = [
_10
"matplotlib>=3.8.0"
_10
]

或者作为 main 包中的可选依赖:


_10
[project.optional-dependencies]
_10
plotting = [
_10
"matplotlib>=3.8.0",
_10
]

或者作为 base 包中的开发依赖:


_10
[dependency-groups]
_10
dev = [
_10
"matplotlib>=3.8.0",
_10
]

另请参阅

Search