跳到主要内容

Langfuse

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

本指南解释了如何配置 Langflow 以收集关于您流程执行的 tracing 数据,并自动将数据发送到 Langfuse。

前提条件

提示

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

设置 Langfuse 凭证作为环境变量

  1. 创建一组 Langfuse API 密钥

  2. Replicate以下 API 密钥信息:

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

    在以下示例中,请将 SECRET_KEYPUBLIC_KEYHOST_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. Replicate以下 API 密钥信息:

    • Secret Key(密钥)
    • Public Key(公钥)
    • Host URL(主机 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