跳到主要内容

为 Langflow 做贡献

本指南旨在帮助您开始为 Langflow 做贡献。 作为一个在快速发展的领域中的开源项目,Langflow 欢迎贡献,无论是新功能、改进的基础设施还是更好的文档。

要为此项目贡献代码或文档,请遵循分叉和拉取请求工作流。

从源代码安装 Langflow​

通过分叉仓库从源代码安装 Langflow,然后使用 Make 设置您的开发环境。

先决条件​

Windows

对于 Windows 安装,您不需要 Make,您可以在 Langflow 仓库中找到 Windows 脚本。

克隆 Langflow 仓库​

  1. 分叉 Langflow GitHub 仓库。

  2. 在您的本地计算机上将新的远程分支添加到本地仓库:


_10
git remote add FORK_NAME https://github.com/GIT_USERNAME/langflow.git

替换以下内容:

  • FORK_NAME:您的仓库分叉的名称
  • GIT_USERNAME:您的 Git 用户名

从源代码运行 Langflow​

您可以在克隆仓库后从源代码运行 Langflow,即使您不打算为代码库做贡献。

在 macOS/Linux 上从源代码运行

在您的终端中,导航到 Langflow 目录的根目录,然后运行 make run_cli。

此命令执行以下操作:

  • 安装前端和后端依赖项
  • 构建前端静态文件
  • 使用默认设置启动应用程序

Langflow 前端在 http://localhost:7860 上提供服务。

使用 Windows CMD 从源代码运行

要在 Windows 上从源代码运行 Langflow,您可以使用 Langflow 项目包含的脚本,或在终端中运行命令。

执行以下操作之一:

  • 要使用包含的 Windows 批处理文件安装和运行 Langflow,请导航到 scripts/windows 目录,然后运行 build_and_run.bat 文件。

  • 要从 Windows 命令行运行 Langflow:

    1. 构建 Langflow 前端:


      _10
      cd src/frontend && npm install && npm run build && npm run start

    2. 将构建的 src/frontend/build 目录的内容复制到 src/backend/base/langflow/frontend。

    3. 启动 Langflow:


      _10
      uv run langflow run

Langflow 前端在 http://localhost:7860 上提供服务。

使用 Powershell 从源代码运行

要在 Windows 上从源代码运行 Langflow,您可以使用 Langflow 项目包含的脚本,或在终端中运行命令。

执行以下操作之一:

  • 要使用包含的脚本安装和运行 Langflow,请导航到 scripts/windows 目录,然后运行 build_and_run.ps1 文件。

  • 要从 Powershell 终端运行 Langflow:

    1. 分别运行以下命令来构建 Langflow 前端:


      _10
      cd src/frontend
      _10
      npm install
      _10
      npm run build
      _10
      npm run start

    2. 将构建的 src/frontend/build 目录的内容复制到 src/backend/base/langflow/frontend。

    3. 启动 Langflow:


      _10
      uv run langflow run

Langflow 前端在 http://localhost:7860 上提供服务。

设置您的 Langflow 开发环境​

  1. 设置 Langflow 开发环境:


    _10
    make init

    此命令通过执行以下操作来设置开发环境:

    • 检查 uv 和 npm。
    • 安装后端和前端依赖项。
    • 安装预提交钩子。
  2. 在单独的终端中运行后端和前端进行开发:


    _10
    # 在开发模式下运行后端(包括热重载)
    _10
    make backend


    _10
    # 在另一个终端中,在开发模式下运行前端(包括热重载)
    _10
    make frontend

    make backend 和 make frontend 命令会自动安装依赖项,因此您无需单独运行安装命令。

    前端在 http://localhost:7860 上提供服务。

  3. 可选:安装预提交钩子以帮助保持更改整洁且格式良好。

    安装预提交钩子后,您必须使用 uv run git commit 而不是直接使用 git commit。

    make init 会自动安装预提交钩子,或者您可以运行以下命令手动安装:


    _10
    uv sync
    _10
    uv run pre-commit install

  4. 要在推送提交之前测试更改,请运行 make lint、make format 和 make unit_tests。 要运行所有测试,包括覆盖率、单元和集成测试,请运行 make tests。

调试​

仓库包含一个用于在 VSCode 中调试后端的 .vscode/launch.json 文件,这比使用 Docker Compose 调试更快。要在 VSCode 中使用 launch.json 文件调试 Langflow:

有关更多信息,请参阅 VSCode 文档。

其他贡献指南​

贡献文档​

文档使用 Docusaurus 构建,并用 Markdown 编写。 有关样式指导,请参阅 Google 开发者文档样式指南。

  1. 安装 Node.js 和 Yarn

  2. 分叉 Langflow GitHub 仓库。

  3. 在您的本地计算机上将新的远程分支添加到本地仓库:


    _10
    git remote add FORK_NAME https://github.com/GIT_USERNAME/langflow.git

    替换以下内容:

    • FORK_NAME:您的仓库分叉的名称
    • GIT_USERNAME:您的 Git 用户名
  4. 从本地 Langflow 分叉的根目录,切换到 /docs 目录:


    _10
    cd docs

  5. 安装依赖项并启动带有热重载的本地 Docusaurus 静态站点:


    _10
    yarn install
    _10
    yarn start

    文档在 localhost:3000 上提供服务。

  6. 要编辑和创建内容,请使用 langflow/docs/docs 目录中的 .mdx 文件。

    创建 .mdx 格式的新文件。

    导航在 langflow/docs/sidebars.js 中定义。

    大多数页面使用 slug 进行简写交叉引用,而不是提供完整或相对目录路径。 例如,如果页面的 slug 为 /cool-page,您可以从任何其他 /docs 页面使用 [Cool page](/cool-page) 链接到它。

  7. 建议:进行一些更改后,运行 yarn build 在本地构建站点,提供更强大的日志记录。 这可以帮助您在创建 PR 之前找到断开的链接。

开启拉取请求​

要提交拉取请求,请执行以下操作:

  1. 针对 main 分支使用您的补丁打开新的 GitHub 拉取请求。
  2. 确保 PR 标题遵循语义提交约定。例如,功能是 feat: add new feature,修复是 fix: correct issue with X。

关于拉取请求标题的一些额外指导:

  • 确保拉取请求描述清楚地描述问题和解决方案。如果 PR 修复了一个问题,请在 PR 描述中包含修复问题的链接,格式为 Fixes #1234。
  • 拉取请求标题会出现在 Langflow 的发布说明中,因此它们应该尽可能明确地解释 PR 的作用。
  • 拉取请求应该努力只修复一件事,并且应该包含对正在修复的内容的良好描述。
  1. Langflow 维护者将审查您的拉取请求并可能请求更改,因此请确保您关注您的 PR。感谢您的贡献!

有关更多信息,请参阅 Python 开发者指南。

Search