跳到主要内容

Langfuse

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

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

前提条件

提示

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

将 Langfuse 凭据设置为环境变量

  1. 创建一组 Langfuse API 密钥

  2. 复制以下 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. 复制以下 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 # or another version tag on https://hub.docker.com/r/langflowai/langflow
    _32
    pull_policy: always # set to 'always' when using 'latest' image
    _32
    ports:
    _32
    - "7860:7860"
    _32
    depends_on:
    _32
    - postgres
    _32
    environment:
    _32
    - LANGFLOW_DATABASE_URL=postgresql://langflow:langflow@postgres:5432/langflow
    _32
    # This variable defines where the logs, file storage, monitor data and secret keys are stored.
    _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