无锡市网站建设_网站建设公司_Spring_seo优化
2025/12/18 3:15:03 网站建设 项目流程

先给你一个整体结构,方便你选择重点看哪部分:

  1. Langfuse 是什么、适用场景
  2. 核心功能与典型架构
  3. 部署方式概览(Cloud vs 自托管)
  4. Docker Compose 自托管部署:详细步骤
  5. Kubernetes / 生产环境要点简述
  6. 官方文档入口(含中文页面)

1. Langfuse 是什么?

Langfuse 是一个开源的 LLM 工程平台(LLMOps 平台),主打 可观测性(observability)+ 分析 + 调试,专门服务于由大模型驱动的应用。(GitHub)

官方一句话:

帮助团队协作开发、监控、评估和调试 AI / LLM 应用。

简要理解:

  • 类似 “应用监控 + 调试台 + 评估平台” 的组合,为 LLM 应用准备:
    • 记录每一次 prompt / completion、embedding、RAG 检索、工具调用、函数调用等;
    • 串联成 trace(调用链)session(会话)
    • 对延迟、错误率、token 消耗、成本等做统计;
    • 做 A/B 测试、评估(LLM-as-a-judge、人类标注)、用户反馈管理。(Langfuse)

对比其它方案(如 LangSmith)来说,Langfuse 的特点:

  • 完全 开源,可以自托管(适合合规要求严格的企业)。(GitHub)
  • 集成生态丰富:官方支持 OpenAI、LangChain、LlamaIndex、LiteLLM、OpenTelemetry 等。(Langfuse)

2. 核心功能 & 典型架构

2.1 核心功能(简版)

  • Tracing(调用链追踪)
    • 记录所有 LLM 调用和非 LLM 调用(RAG 检索、向量检索、外部 API 等);
    • 支持嵌套 span、session、多轮对话。(Langfuse)
  • Metrics & Monitoring(指标监控)
    • 延迟、错误率、吞吐、token 使用量、成本等;
    • 可以按环境、项目、用户、版本等维度过滤。(Langfuse)
  • Feedback & Evaluation(反馈与评估)
    • 采集用户反馈(thumbs up/down、自定义评分等);
    • 支持设置 LLM-as-a-judge 评估任务,或者人工标注工作流。(Langfuse)
  • 测试与实验
    • Prompt 版本管理,A/B 测试不同模型/Prompt/参数;
    • 对比不同实验的质量和成本。(Langfuse)
  • 集成方式
    • 官方 SDK: Python / JS;
    • 与 LangChain、LlamaIndex、LiteLLM、Dify、LobeChat 等集成;
    • 支持 OpenTelemetry / HTTP API 接入。(Langfuse)

2.2 典型架构(自托管)

以官方 Docker Compose 自托管架构为例,Langfuse 通常包含:(Langfuse)

  • langfuse-web:前端 + API
  • langfuse-worker:后台任务、异步处理
  • PostgreSQL:主事务数据库
  • ClickHouse:大规模事件 / trace 分析存储(时序 + 列存)
  • Redis:缓存、队列
  • 对象存储(MinIO / S3):存储大体积事件、附件等

你只需要在内网部署这一套,然后在你的 LLM 应用中集成 SDK,把 trace 打到 Langfuse 即可。


3. 部署方式概览

官方支持多种部署方式:(Langfuse)

  1. Langfuse Cloud(官方托管)
    • 无需部署,注册即用,适合快速试用、对数据合规要求不敏感的场景。
  2. 自托管(Self-hosted)
    • Docker Compose(最简单,官方强烈推荐先用这个):本地 / 云服务器都可。
    • Kubernetes(Helm chart、自定义 K8s YAML):适合生产、高可用、多副本。
    • 你也可以自己改造,把 Postgres / ClickHouse / Redis / 对象存储接入现有基础设施。

下面重点说 Docker Compose 部署步骤,因为这是最直观、最常用的一种。


4. Docker Compose 自托管部署:详细步骤(推荐)

4.1 环境准备

最低准备(单机或云主机都行):

  • 操作系统:Linux(Ubuntu / Debian / CentOS 等)、或者 Mac / Windows(开发环境)
  • Docker & Docker Compose 已安装、可用
  • 机器资源建议:
    • CPU:4 核 +
    • 内存:8GB +
    • 磁盘:100GB+(看日志与 trace 量级)

官方文档明确给出了 Docker Compose 部署指引,是当前推荐方式。(Langfuse)

4.2 获取官方 docker-compose.yml

1)从 Langfuse 官方仓库下载 docker-compose.yml,示意:

git clone https://github.com/langfuse/langfuse.git
cd langfuse
# 注意切换到需要的版本分支,例如 v3.x
ls docker-compose.yml

或者直接浏览器打开 GitHub 对应版本,下载 docker-compose.yml。(GitHub)

2)建议:不要直接复制粘贴别人博客里的 compose 配置,最好以官方为基准再做修改,避免挂载目录、版本不一致等坑。(博客园)

4.3 持久化目录准备(示例)

在服务器上创建几个目录用于数据持久化,例如:

mkdir -p /opt/langfuse/postgres
mkdir -p /opt/langfuse/clickhouse_data
mkdir -p /opt/langfuse/clickhouse_logs
mkdir -p /opt/langfuse/minio_data
mkdir -p /opt/langfuse/redis

这些路径在后面 docker-compose.yml 的 volumes 里要对应上。(博客园)

4.4 配置 docker-compose.yml 的关键点

官方 compose 文件里,大致包含以下服务:langfuse-web, langfuse-worker, postgres, clickhouse, redis, minio 等。(Langfuse)

你需要重点关注:

1)数据库 & 存储配置

  • PostgreSQL:

    • POSTGRES_USER, POSTGRES_PASSWORD, POSTGRES_DB
    • 挂载路径:如 /opt/langfuse/postgres:/var/lib/postgresql/data
  • ClickHouse:

    • 版本建议 >= 24.x(官方说明需要较新版本以支持特性)。(博客园)
    • 数据、日志挂载,例如:
      • /opt/langfuse/clickhouse_data:/var/lib/clickhouse
      • /opt/langfuse/clickhouse_logs:/var/log/clickhouse-server
  • MinIO:

    • 自建 S3 兼容存储,示例入口命令:

      command: >sh -c 'mkdir -p /data/langfuse && minio server --address ":9000" --console-address ":9001" /data'
      
    • 环境变量如:

      MINIO_ROOT_USER: minio
      MINIO_ROOT_PASSWORD: miniosecret
      
    • 注意挂载路径与命令中路径一致(有些博客示例是 /data,有的是 /minio_data,需要统一)。(博客园)

2)Langfuse 服务环境变量

核心环境变量示例(简化版,具体请看官方自托管文档):(Langfuse)

environment:DATABASE_URL: postgresql://postgres:postgres@postgres:5432/postgresSALT: "mysalt"  # 任意随机字符串ENCRYPTION_KEY: "32字节hex,使用 openssl rand -hex 32 生成"TELEMETRY_ENABLED: "true"CLICKHOUSE_URL: http://clickhouse:8123CLICKHOUSE_USER: clickhouseCLICKHOUSE_PASSWORD: clickhouse# S3 / MinIO 相关LANGFUSE_S3_EVENT_UPLOAD_BUCKET: langfuseLANGFUSE_S3_EVENT_UPLOAD_ACCESS_KEY_ID: minioLANGFUSE_S3_EVENT_UPLOAD_SECRET_ACCESS_KEY: miniosecretLANGFUSE_S3_EVENT_UPLOAD_ENDPOINT: http://minio:9000LANGFUSE_S3_EVENT_UPLOAD_FORCE_PATH_STYLE: "true"

前端(langfuse-web)上还会有:

  NEXTAUTH_URL: http://your-domain-or-ip:3000NEXTAUTH_SECRET: "随便一个随机字符串"

以及初始化组织 / 用户的变量(可选,方便一键初始化):(博客园)

  LANGFUSE_INIT_ORG_NAME: "WanBridge"LANGFUSE_INIT_USER_EMAIL: "admin@example.com"LANGFUSE_INIT_USER_PASSWORD: "StrongPassword!"

3)端口映射

典型:

langfuse-web:ports:- "3000:3000"langfuse-worker:ports:- "3030:3030"  # 可选postgres:ports:- "5432:5432"clickhouse:ports:- "8123:8123"- "9000:9000"minio:ports:- "9090:9000"- "9091:9001"redis:ports:- "6379:6379"

4.5 启动服务

docker-compose.yml 所在目录:

docker compose pull    # 可选,先拉镜像
docker compose up -d

查看运行状态:

docker compose ps
docker compose logs -f langfuse-web

确认所有服务 STATUSUp (healthy) 或至少是 Up。(博客园)


4.6 初次访问与初始化

1)浏览器访问:

  • 若本地安装:http://localhost:3000
  • 若服务器:http://<服务器IP>:3000

2)如在 docker-compose 中配置了 LANGFUSE_INIT_* 系列变量,首次启动时会自动创建组织 / 项目 / 用户。你可以用配置中的 LANGFUSE_INIT_USER_EMAIL + LANGFUSE_INIT_USER_PASSWORD 登录。(博客园)

3)登录后,在 Langfuse UI 中:

  • 创建项目或使用默认项目;
  • 在项目设置中获取 Public Key / Secret Key(SDK 接入需要)。

4.7 在你的应用中接入 Langfuse(快速示例)

以 Python 为例(伪代码简化)(Langfuse) :

from langfuse import Langfuself = Langfuse(public_key="your_public_key",secret_key="your_secret_key",host="http://your-domain-or-ip:3000"  # 如自托管
)# 记录一次 LLM 调用
trace = lf.trace(name="chat_completion",user_id="user-123",
)span = trace.span(name="openai_call",input="用户输入的问题",output="模型回复",model="gpt-4.1",metadata={"latency_ms": 1200}
)trace.update(metadata={"session_id": "some-session"},
)

然后你就能在 Langfuse UI 中看到完整的 trace。


5. Kubernetes / 生产环境要点(简述)

如果你后续要在生产环境部署在 K8s 中,大致注意:

  • 使用官方提供的 K8s / Helm 示例(通常在 GitHub 或 docs 中给出)。(GitHub)
  • 数据库、对象存储尽量使用你们公司的托管服务:
    • 例如:RDS(Postgres)、Managed ClickHouse、企业级 Redis、云 S3、OSS 等;
  • langfuse-weblangfuse-worker 部署多个副本(Deployment + HPA),加上 Ingress / LB;
  • 配置:
    • 健康检查(Readiness / Liveness);
    • 日志采集;
    • 资源限制(requests/limits);
    • 安全(Secret 管理、TLS、内网访问控制)。

如果你们 Wan Bridge 有统一的云原生基础设施,可以让平台同事帮忙把 Postgres、ClickHouse、Redis、对象存储接入,然后你只需要维护 Langfuse 的 web + worker 服务。


6. 官方文档与入口

6.1 官网 & 文档首页

  • 官网:https://langfuse.com (Langfuse)
  • 文档首页:https://langfuse.com/docs (Langfuse)
  • 文档 GitHub 仓库(文档 markdown 版):https://github.com/langfuse/langfuse-docs (GitHub)

文档里包含:

  • Observability / Tracing 概览
  • 各语言 SDK 的使用方法
  • 与 OpenAI / LangChain / LlamaIndex 等的集成教程
  • 自托管部署(Docker Compose / K8s)
  • 配置项(环境变量)、安全、备份等

6.2 自托管部署官方文档

  • 自托管 Docker Compose 指南:
    https://langfuse.com/self-hosting/deployment/docker-compose (Langfuse)

这里有最新的 docker-compose.yml 示例、环境变量说明以及本地 / 云服务器部署步骤。

6.3 中文概述页面

  • 中文简介(机器翻译,但对整体理解很有帮助):
    https://langfuse.com/cn (Langfuse)

里面有:

  • Langfuse 是什么、主要功能;
  • 为什么选择 Langfuse;
  • 如何开始(Cloud / 自托管);
  • 支持与社区等。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询