跳到主要内容

Langfuse

Langfuse 是一个开源的 LLM 可观测性平台。它为 AI 应用程序提供追踪和监控功能,帮助开发人员调试、分析和优化其 AI 系统。Langfuse 与各种工具和框架集成,包括工作流构建器和像 Langflow 这样的运行时。

本指南介绍了如何配置 Langflow 以收集有关流执行的 追踪 (tracing) 数据,并自动将数据发送到 Langfuse。

先决条件​

提示

如果您需要一个流来测试 Langfuse 集成,请参阅 Langflow 快速入门。

将 Langfuse 凭据设置为环境变量​

  1. 创建一组 Langfuse API 密钥。

  2. 复制以下 API 密钥信息:

    • Secret Key
    • Public Key
    • Host URL
  3. 在运行 Langflow 的相同环境中,将您的 Langfuse 项目凭据设置为环境变量。

    在以下示例中,将 SECRET_KEY、PUBLIC_KEY 和 HOST_URL 替换为来自 Langfuse 的 API 密钥详细信息。

    这些命令在 Linux 或 macOS 终端会话中设置环境变量:


    _10
    export LANGFUSE_SECRET_KEY=SECRET_KEY
    _10
    export LANGFUSE_PUBLIC_KEY=PUBLIC_KEY
    _10
    export LANGFUSE_HOST=HOST_URL

启动 Langflow 并查看 Langfuse 中的追踪​

  1. 在设置了 Langfuse 环境变量的相同环境中启动 Langflow:


    _10
    uv run langflow run

  2. 运行一个流。

    Langflow 会自动收集有关流执行的追踪数据并将其发送到 Langfuse。

  3. 在您的 Langfuse 控制面板 中查看收集的数据。

    Langfuse 还提供了一个 公开的实时追踪示例控制面板。

禁用 Langfuse 追踪​

要禁用 Langfuse 集成,请删除 Langfuse 环境变量,然后重启 Langflow。

使用 Docker Compose 运行 Langfuse 和 Langflow​

作为前面设置的替代方案,特别是对于自托管的 Langfuse,您可以使用 Docker Compose 运行这两个服务。

  1. 创建一组 Langfuse API 密钥。

  2. 复制以下 API 密钥信息:

    • Secret Key
    • Public Key
    • Host URL
  3. 将您的 Langflow 凭据添加到 Langflow docker-compose.yml 文件的 environment 部分。

    以下示例基于 示例 docker-compose.yml。


    _32
    services:
    _32
    langflow:
    _32
    image: langflowai/langflow:latest # 或 https://hub.docker.com/r/langflowai/langflow 上的另一个版本标签
    _32
    pull_policy: always # 使用 'latest' 镜像时设置为 'always'
    _32
    ports:
    _32
    - "7860:7860"
    _32
    depends_on:
    _32
    - postgres
    _32
    environment:
    _32
    - LANGFLOW_DATABASE_URL=postgresql://langflow:langflow@postgres:5432/langflow
    _32
    # 此变量定义了日志、文件存储、监控数据和密钥的存储位置。
    _32
    - LANGFLOW_CONFIG_DIR=app/langflow
    _32
    - LANGFUSE_SECRET_KEY=sk-...
    _32
    - LANGFUSE_PUBLIC_KEY=pk-...
    _32
    - LANGFUSE_HOST=https://us.cloud.langfuse.com
    _32
    volumes:
    _32
    - langflow-data:/app/langflow
    _32
    _32
    postgres:
    _32
    image: postgres:16
    _32
    environment:
    _32
    POSTGRES_USER: langflow
    _32
    POSTGRES_PASSWORD: langflow
    _32
    POSTGRES_DB: langflow
    _32
    ports:
    _32
    - "5432:5432"
    _32
    volumes:
    _32
    - langflow-postgres:/var/lib/postgresql/data
    _32
    _32
    volumes:
    _32
    langflow-postgres:
    _32
    langflow-data:

  4. 启动 Docker 容器:


    _10
    docker-compose up

  5. 要确认 Langfuse 已连接到您的 Langflow 容器,请运行以下命令:


    _10
    docker compose exec langflow python -c "import requests, os; addr = os.environ.get('LANGFUSE_HOST'); print(addr); res = requests.get(addr, timeout=5); print(res.status_code)"

    如果出现错误,请确保您已在终端会话中设置了 LANGFUSE_HOST 环境变量。

    类似以下的输出表示成功:


    _10
    https://us.cloud.langfuse.com
    _10
    200

另请参阅​

Search