Langfuse 代码评估器执行模型的设计与安全隔离机制

基于Langfuse构建LLM智能体观测与评估体系的实战指南 在大语言模型应用开发中,可观测性与评估是确保应用性能与可靠性的核心环节。其原理在于通过系统化的追踪、度量和分析,理解模型在复杂工作流中的行为与性能瓶颈。这项技术的核心价值在于为开发者提供数据驱动的洞察,实现从“黑盒”到“白盒”的转变,从而科学地进行调试、优化与成本控制。典型的应用场景包括监控智能体执行链路、评估提示词效果、对比不同模型版本以及分析用户交互质量。本文聚焦于利用开源平台Langfuse,手把手教你搭建一套覆盖追踪、评估与数据分析的完整智能体观测体系,其中深度集成了对智能体链路和RAG应用场景的专 阅读详情

 

本文字数:10316;估计阅读时间:26分钟

作者:Tobias Wochinger

 

 

编者按: 本文译自 Langfuse 原博客。 原文围绕「探讨在多租户云原生环境下,如何平衡代码评估器的灵活性与底层系统的安全性。」展开。文章深入剖析了在核心数据存储环境中执行第三方代码的风险控制逻辑。对于构建可扩展且安全的 LLM 监控工具具有较高的参考价值。 

 

代码评估器允许你使用自己的 Python 或 TypeScript 代码为 trace 评分。以下介绍其背后的执行模型:我们的具体需求、放弃的备选方案,以及所采取的安全策略。

5 月底,我们发布了代码评估器:只需编写少量的 Python 或 TypeScript 函数,Langfuse 就会运行它来为 trace 评分。从设计上看,这实际上意味着任何人都可以在我们的多租户 SaaS 环境中运行不可信代码,而该环境存储着数千个团队 PB 级别的核心数据。

文章梳理了我们为其设计运行时环境的过程、期间排除的方案,以及第一批用户试图攻破该环境时发生的情况。

 

 

 

 

为什么需要代码评估器

 

评估是检验 LLM 应用质量的手段。人工阅读 trace 是你建立对应用认知的过程,这无可替代。但没有人会手动阅读数百万条 trace。错误分析会将这种阅读结果转化为错误模式列表,而常规做法是将每种模式编写为 LLM-as-a-judge 评估器,通过它对每条 trace 的 Agent 实用性、简洁度或语气等指标进行评分。

然而团队往往需要检查许多毫无主观色彩的内容。输出是否为有效的 JSON?回答是否与预期值匹配?对于这类几行代码每次都能完美解决的问题,使用模型反而是一种昂贵且缺乏确定性的方式。

代码评估器的作用就是解决此类问题:你提供用于评估观测数据的 Python 或 TypeScript 代码,配置触发时机,随后 Langfuse 会为你进行大规模的运算。

让我们看一个实际的评估器示例:

function evaluate({
  observation: { output },
}: EvaluationContext): EvaluationResult {
  const required = ["summary", "items", "sections"];
  let missing = required;

  try {
    const parsed = typeof output === "string" ? JSON.parse(output) : output;
    missing = required.filter((key) => parsed?.[key] == null);
  } catch {
    // output is not valid JSON, so all fields count as missing
  }

  return {
    scores: [
      {
        name: "has-required-fields",
        value: missing.length === 0,
        dataType: "BOOLEAN",
        comment: missing.length
          ? `Missing: ${missing.join(", ")}`
          : "All fields present",
      },
    ],
  };
}

 

 

 

带有严格限制的小型工作负载

 

如上例所示,代码评估器属于限制较强的工作负载:它们执行时间短(通常为数百毫秒)、具备确定性(输入相同则评分相同),且无状态(没有文件系统,多次运行之间不保存状态)。

这与目前随处可见的 Agent 沙箱(如 E2B、Modal)形成了鲜明对比:后者的存在是为了提供长生命周期的环境、文件系统访问权限、快照功能以及在运行时执行 ~~pip install~~ uv add。而许多评估器根本不需要这些。

我们真正需要的是:

• 安全性: 无论是我们的 Langfuse Cloud 环境,还是平台团队为多个内部团队托管的 Langfuse,租户之间都绝不能访问彼此的数据。

• 规模: 我们每天接收数亿条观测数据,每一条都可能触发一个或多个代码评估器。无论底层用什么机制运行它们,都必须在这种数据体量下保持成本可控。

• 自托管体验对等: Langfuse 一向易于自托管,我们也希望保持这一优势。运行该功能并保障其安全性,不应额外依赖专门的基础设施团队。

• Python 与 TypeScript 支持: 用户希望用自己日常工作的语言进行开发。Python 深受数据科学家的青睐,而 TypeScript 正逐渐成为 AI 应用工程师的行业标准。

在 Langfuse,我们坚信要 快速且频繁地发布:尽早把功能交到用户手中,从他们的反馈中学习,并在为其提供运维服务的过程中积累经验。

对于代码评估器来说,精简发布意味着刻意不包含两项内容:网络访问和第三方依赖。虽说这两者在评估器中都有合理用途,但我们要确保未来有明确的规划,将其作为经过严密设计的受控功能添加进来。

 

 

我们考虑过的方案

 

为不受信任的代码提供沙箱运行环境并非新问题,因此我们有多种方案可供选择:

 

分发到用户的基础设施

像 Claude Code 这样的工具直接在用户本地机器上运行,从而完全避开了这类问题:既不需要构建租户隔离,又能完全访问用户环境。对我们而言,类似的做法是提供 Webhook:由 Langfuse 调用用户托管的接口,并从响应中提取评分。但这样一来,成本就转嫁给了用户:每个人都需要搭建、扩容并监控一个每秒处理数百次请求、每次附带 MB 级数据载荷的服务,而我们开发这项功能,本意就是为了帮用户省去这些麻烦。

 

 

提供自定义 DSL

如果各种检查项都高度相似且具确定性,何必还要提供一门完整编程语言的全部功能?用一种小型的领域特定语言(DSL)或查询构建器,不就能保证只生成安全代码了吗?应用场景或许相似,但数据却千差万别。尽管 DSL 能满足大部分工作负载,但在遇到不符合其规则的长尾检查需求时,用户就会陷入死胡同,找不到任何变通方案。而且,对于人类或智能体(agents)而言,自定义 DSL 并不在他们已有的知识或训练分布中。

 

 

进程内隔离

快速启动且无需额外基础设施组件:进程内隔离(如 V8 isolates、wasmtime、seccomp、Deno 或 Pyodide)本是次优解,特别是在兼顾自托管需求的情况下。但这套方案很难做到万无一失,因为安全控制机制与不可信代码运行在同一个进程中。无论权限检查、系统调用过滤还是运行时自身,只要出现一个漏洞,攻击者就能打入内部环境,窃取我们的服务凭据、网络权限及其他客户数据。这里没有第二道防线。大规模运用此模式时,Cloudflare 在 isolates 之上叠加了进程沙箱,并保持着 24 小时内更新 V8 补丁的频率;而 n8n 的 Pyodide 沙箱依然因黑名单机制被绕过而遭到逃逸(CVSS 9.9)。我们不愿承担这样的风险,更不愿把风险转嫁给自托管用户。

 

 

Firecracker, gVisor, Kata

这些是业界顶级的解决方案,支撑着 AWS Lambda(Firecracker)以及网页版 Claude Code 和 OpenAI 的代码执行功能(均使用 gVisor)。遗憾的是,它们的部署成本很高:Firecracker 和 Kata 需要 KVM,这意味着必须使用裸金属服务器或嵌套虚拟化,而 gVisor 则自带容器运行时。对我们自己来说,一次性配置尚可接受,但这并不是我们想让客户承担的工作。

 

 

Kubernetes Jobs

将代码执行任务调度为 Kubernetes Jobs 非常契合自托管场景。对于不愿依赖大型云服务商作为后端的自托管用户而言,这仍是极佳的选择。然而,为了几百毫秒的工作负载去调度整个 pod 过于沉重且开销极大:调度和容器启动会给每次运行增加数秒延迟;在每秒数百次执行的并发下,单是 Job 的频繁创建与销毁,就足以对控制平面构成压力测试。此外,普通容器共享宿主机内核,在真实的高风险多租户环境中,底层仍需搭配 gVisor 或 Kata。

 

 

我们的运行时选择:AWS Lambda

 

AWS Lambda 与我们的问题需求几乎完美契合。它正是作为服务运行的 Firecracker——也就是我们刚刚排除由自己运维的顶级方案:每次调用都在一个微型虚拟机(microVM)中进行,启动时间约 100 毫秒,专为高并发工作负载打造。

评估这些方案后,我们也改变了对自托管的立场。在与不同规模客户沟通后,我们清楚地认识到,并不存在放之四海而皆准的后端方案,即便是 Kubernetes 也不例外。因此,我们没有选择向最低标准妥协,而是将后端设计为可插拔式,并选择 AWS Lambda 作为首个实现:

export interface CodeEvalDispatcher {
  name: string;
  dispatch(input: DispatchInput): Promise<DispatchResult>;
}

自托管用户可以使用自己的 AWS 凭证来运行,在开发和受信任环境中,也可以回退使用内置的本地调度器(dispatcher)。

 

 

租户隔离与热环境

Lambda 的一大吸引力在于其安全模型相对可控:一切权限默认封闭,任何放宽权限的决定都需要刻意配置。不过它仍有一处不足:租户隔离。

连续的 Lambda 调用之间并没有做到真正的隔离。一次“冷”调用会获取一个全新的微虚拟机(microVM);而后续的“热”调用则可能复用同一个虚拟机,甚至包含上一次运行残留在内存或 /tmp 目录中的数据,这就带来了跨租户数据泄露的潜在风险。

直到去年底,唯一的解决办法仍是为每个租户分配独立的 Lambda 函数(在我们的场景中,甚至是每个租户分配两个 Lambda,对应两种编程语言)。AWS 允许这种做法,但生命周期管理的复杂性必须由我们自己承担:比如在创建租户时动态创建函数,在函数闲置或 Langfuse 项目被删除时进行销毁。最糟糕的是,我们还要确保每个函数内部的微型执行框架保持同步更新。

幸运的是,AWS 推出了租户隔离功能:在每次调用时传入一个租户标识,Lambda 就能保证执行环境绝不会在不同租户间复用。我们以项目作为隔离标识,这本身也是 Langfuse 中的数据隔离边界。这里存在一个可接受的折中:同一项目下的两个评估器(evaluator)可能会共享同一个热环境,但这并不会泄露任何超出该项目可见范围的数据。

 

 

调度路径:同步与内联

使用两个 Lambda 也意味着每次请求都要附带用户的代码——考虑到评估器本身只是很短的代码片段,这一点是可以接受的。在处理了数亿次 LLM-as-a-judge 调用后,我们对请求负载(payload)大小和吞吐量有了准确把握,因此最初采用了最精简的方案:同步调用,并将评估负载与源代码直接内联。随着使用量的增长,通过 SQS 进行异步调用并结合预签名的 S3 URL,能为我们提供一条清晰且(最重要的是)向后兼容的平滑升级路径。

Lambda 内部有一个由 Langfuse 提供的微型脚手架(harness),负责解析请求负载并调用用户的代码:

 

 

 

 

最小权限原则

既然已经具备了安全的执行环境,接下来只需确保在接入环节不出纰漏。对我们而言,这意味着严格遵循最小权限原则:未传递的凭证、未执行的操作、未添加的能力,就绝不会引发安全问题。

具体而言:

• 将代码视为数据。 我们仅在客户端或 Lambda 内部与代码交互。一旦代码进入后端,便会被视为不可解析的普通字符串。这也意味着可以省去 TypeScript 求值器的所有转译步骤:我们仅允许使用 可擦除的 TypeScript 语法 ,并由运行框架在 Lambda 内部将其剥离。

• 最小化 Lambda 权限。 环境中仅保留执行角色自身的凭证,且该角色除了写入日志外没有其他任何权限(从技术层面讲,该角色还附带了 Lambda 管理 VPC 网络接口所需的 EC2 权限,但 我们拦截了从执行环境内部发起的相关调用 )。

• 禁止出站。 Lambda 挂载在独立的 VPC 中,配有专用的安全组,且无法访问内外网。这么做主要是为了防止算力被滥用于攻击第三方,而非担心数据泄露。至于带有限流功能和白名单的出站访问,后续可作为独立特性另行添加。

• 严格的配额限制。 为防止滥用,执行时间(2 秒)、源码大小(256 KB)、输入载荷(5.5 MB)以及返回结果(256 KB)均设有上限。

 

 

计划步入生产

 

得益于详尽的前期规划、与 ClickHouse 安全团队共同开展的威胁建模,以及基于优秀的 floci AWS 模拟器构建的全面测试套件,我们对系统实现的健壮性充满信心。但常言道,计划本身一文不值,做计划的过程才最重要:我们深知代码求值器一旦上线,必然会立刻迎来各种试探。事实也的确如此。

发布几天后,一位安全研究员联系了我们,声称可以通过读取环境变量并将其作为评分注释返回,从而从求值器运行时中提取出数据库凭证。关于数据库的说法其实并不成立:如前文所述,我们不会向执行环境传入任何凭证。但这套信息外传通道本身确实行得通,而这也正是我们事先评估过并已做好防范的攻击向量(vector)。

必须承认,我们的设计中存在一个盲点:这些环境变量中还包含 AWS 为 Lambda 执行角色自行注入的凭证。在收到最初报告的几小时后,有人开始使用窃取到的凭证探测 AWS API:

 

对于凭证提取本身,其实没有太多防范手段:这些凭证由 AWS 预留,即使去擦除 os.environ 或 process.env,也只会增加提取难度,无法完全杜绝。你可以在进程内增加沙盒机制来进行纵深防御,但这仍无法完全阻止凭证被提取,反而会带来极大的复杂度和性能开销。

最终,最小权限原则发挥了作用:几分钟内,GuardDuty 就监测到有人试图从外部 IP 使用该 runner 凭证,并确认所有相关请求均被拒绝:

 

我们的防线守住了。

 

 

后续计划

 

在 v1 版本中,我们刻意舍弃了部分功能,以换取可验证的特性:无外网出口、无依赖项、无自定义凭证。作为交换,我们获得了开箱即用的租户隔离机制,即便 runner 的凭证被盗也毫无用处。最重要的是,我们迅速将这项功能交到了真实用户手中,并开始不断接收反馈。

如果你想尝试 code evaluator,可以从阅读文档开始(https://langfuse.com/docs/evaluation/evaluation-methods/code-evaluators)。如果本文档提到的某些设计限制了你的使用,请在 GitHub Discussions 中告诉我们:我们后续增加的新功能,取决于你们的实际需求。

另外,如果为成千上万的租户运行不受信的代码对你来说是个有趣的挑战,我们正在招聘(https://langfuse.com/careers)。

 

ClickHouse是面向 AI 时代打造的高性能实时分析数据库,能够以极致性能处理海量数据分析任务。凭借高并发、低延迟和云原生架构,ClickHouse 广泛应用于可观测性、数据仓库、实时分析及 AI 数据基础设施等场景。我们致力于帮助企业在公有云平台上构建安全、弹性且高性价比的实时分析与 AI 数据平台,加速释放数据价值,推动智能化创新与数字化转型。目前,Trip.com、DiDi、Meta、Sony、Netflix、Deutsche Bank、Sierra、Cloudflare 等全球领先企业均在使用 ClickHouse 支撑其关键业务和数据分析平台。

 

 

别再只盯着准确率了!用Langfuse的Context评估器,从源头诊断你的RAG系统 本文深入探讨了如何使用Langfuse的Context评估器(Context Relevance和Context Correctness)来诊断和优化RAG系统。通过量化检索上下文的质量,帮助开发者精准定位问题根源,避免传统评估方法只关注答案准确率的局限。文章提供了详细的评估标准、实战案例和高级优化策略,助力提升AI系统的整体性能。 阅读详情

相关推荐

避坑指南:Langfuse里Context Correctness和Correctness到底啥区别?手把手教你选对评估器

本文深入解析了Langfuse中Context Correctness和Correctness评估器的核心区别与应用场景,帮助开发者在RAG系统中精准选择评估工具。通过实战案例展示两者在检索阶段和生成阶段的不同作用,提供组合评估与系统诊断的高级技巧,助力优化AI问答系统的性能与准确性。

weixin_30505225的博客 470

Astron Agent Langfuse 可观测性接入指南:OTLP/HTTP 桥接、隐私脱敏与评估器实战

Astron Agent 是一款企业级、面向商业场景的 Agent 工作流平台,本文讲解如何将其中 Workflow(工作流)与 Agent(智能体)两个核心服务已有的 OpenTelemetry 链路数据,通过一套原生的 OTLP/HTTP 桥接通道导出到 Langfuse v4,实现模型调用观测、Token 用量与成本核算、链路拓扑分析以及 LLM-as-a-judge 评估闭环。读完本文,你

gitblog_00168的博客 208

Langfuse实战:从零构建大模型应用观测与评估平台

在构建大模型应用时,应用性能监控(APM)是确保系统稳定性和可观测性的关键技术。其核心原理在于通过追踪、记录和分析每一次API调用、工具使用和用户反馈,将复杂的LLM交互过程从“黑盒”变为“白盒”。这项技术的价值在于为开发者提供了系统化的调试、评估和优化能力,能够显著提升AI应用的可靠性和迭代效率。在实际应用场景中,无论是开发基于LangChain的智能体、RAG系统,还是监控生产环境的成本与延迟,一个功能全面的观测平台都至关重要。本文将以开源平台Langfuse为例,详细介绍如何通过Docker部署、SD

weixin_33721344的博客 397

告别盲目迭代:用Langfuse构建LLM应用的用户反馈闭环

你是否还在为LLM应用优化发愁?花费数周调整提示词,却不知用户真实感受?部署新模型后,性能波动无从追踪?本文将带你用Langfuse构建从用户反馈收集到模型迭代的完整闭环,3步实现数据驱动的AI产品优化。 ## 为什么反馈闭环是LLM应用的生命线 在传统软件开发中,用户反馈与产品迭代之间往往存在明显的滞后。而对于LLM应用,这种滞后可能导致模型迅速过时。Langfuse作为开源的LLM应用可观...

gitblog_00934的博客 1099

Langfuse实战:构建智能体可观测性与评估平台

在LLM应用开发中,可观测性与评估是保障智能体稳定性的关键。Trace、Span、Generation等核心概念构成了链路追踪的基础,而Score机制则实现了质量评估。结合Harness架构,开发者可以构建结构化的智能体工程骨架,实现从任务拆解到工具调用的全链路监控。本文以财务分析智能体为例,展示如何利用Langfuse搭建企业级评估平台,涵盖数据集管理、LLM-as-a-judge自动评分及Prompt版本控制,帮助团队定位问题、持续优化模型应用。

weixin_34060741的博客 761

基于Harness与Langfuse构建企业级AI智能体:财务分析实战

AI工程化是解决机器学习模型从实验到生产落地的系统性实践,其核心在于将开发、部署与运维过程标准化。在LLM应用领域,工程化面临提示词管理、多步骤推理编排、性能评估等独特挑战。其技术价值在于通过可视化工作流引擎和全链路观测平台,显著提升AI应用的可靠性、可维护性与迭代效率。典型应用场景包括需要复杂逻辑判断与外部工具调用的智能体开发,例如自动化财务报告生成、客户服务分析与代码审查助手。本文聚焦于企业级财务分析场景,详细演示如何利用Harness架构进行智能体工作流编排,并集成Langfuse平台实现LLM调用的

weixin_34413103的博客 447

3步实现Langfuse开源AI工程平台:LLM应用监控与评估实战指南

你是否在构建基于GPT-4o、Claude或Llama等大语言模型的AI应用时,为调试复杂调用链、评估模型性能而头疼?Langfuse作为开源AI工程平台,提供了完整的LLM应用可观测性解决方案。本文将带你快速上手Langfuse,实现从零到一的LLM应用监控与评估体系建设。 Langfuse是一个开源的LLM工程平台,帮助团队协作开发、监控、评估和调试AI应用。它支持多种部署方式,可以快速自托

gitblog_00614的博客 833

Langfuse+Harness:企业级LLM应用的可观测性与智能体工程化实践

在LLM应用从Demo走向生产的过程中,开发者不仅要关注模型能力,更需重视工程化底座的建设。可观测性平台与智能体架构约束层是保障系统稳定性的关键。Langfuse作为开源的LLM可观测性与评估基础设施,提供了全链路追踪、自定义评估和Prompt管理能力,让每一次模型调用和工具操作都透明可查。而Harness架构则为智能体划定清晰的决策边界,规范工具调用并强化安全控制。两者结合,构成了企业级AI应用规模化落地的核心支撑。本文以财务分析智能体为例,演示如何自部署Langfuse、接入SDK、设计评估器,并构建可

weixin_34245082的博客 379

从零了解 Langfuse 1:概念

Langfuse是开源AI工程平台,核心实现LLM/Agent应用的可观测与评估闭环。评估思想并非单一打分,而是通过生产Trace发现问题、沉淀Dataset,再经Experiment离线回归验证Prompt/Model/Agent改动。核心对象包括Dataset(测试集)、DatasetIte

qq_42439945的博客 281

Dify工作流与Langfuse观测平台集成实战:构建私有化AI应用可观测性

在构建基于大语言模型(LLM)的AI应用时,可观测性(Observability)是确保应用性能、成本与效果可控的关键技术。其核心原理在于通过结构化的追踪(Tracing)技术,采集应用执行全链路中的关键数据,如提示词、模型调用、耗时与Token消耗。这一技术价值在于,它使开发者能从黑盒调试转向数据驱动的优化,精准定位性能瓶颈与成本来源,并为效果评估(Evaluation)提供量化依据。在应用场景上,可观测性尤其适用于包含复杂逻辑链与工具调用的AI工作流,例如使用Dify等低代码平台构建的智能客服、内容生成

dezhen7015的博客 469

LLM应用可观测性平台对比:Langfuse、LangSmith、Braintrust与Arize选型指南

在大语言模型(LLM)应用开发中,可观测性(Observability)是确保应用从原型走向生产的关键技术。其核心原理是通过全链路追踪(Tracing)、自动化评估(Evaluation)和成本监控等手段,将LLM内部复杂的调用过程从“黑盒”变为透明、可分析的数据流。这项技术的价值在于,它使开发者能够系统性地定位问题、量化输出质量、控制成本,并建立数据驱动的迭代流程,从而提升AI应用的稳定性和可靠性。典型的应用场景包括智能客服、文档分析等需要持续优化和保障服务质量的AI产品。本文聚焦于对比Langfuse、

weixin_34326179的博客 337

AIOps概述:Langfuse、Opik、KeepHQ

概述:Langfuse、Opik、KeepHQ、Phoenix、OpenLLMetry、Agenta、Pezzo、LangSmith

lonelymanontheway的博客 1783

智能车小白也能懂:手把手教你用LM358和工字电感搭建电磁循迹模块(附PCB设计避坑)

本文详细介绍了如何利用LM358运放和工字电感搭建智能车电磁循迹模块,从电感选型、电路设计到PCB布局和焊接调试,提供全流程实战指南。特别针对新手常见问题,如信号干扰、电路饱和等,给出具体解决方案和参数配置,帮助智能车比赛爱好者快速掌握电磁循迹技术。

weixin_30307921的博客 401

3个步骤构建企业级AI监控平台:Langfuse开源LLM可观测性实战指南

你是否正在为AI应用的黑盒问题而困扰?作为AI开发者,你是否曾因无法追踪GPT模型调用、token消耗失控、性能瓶颈难寻而夜不能寐?Langfuse作为开源的LLM工程平台,将为你提供一套完整的AI应用监控解决方案,帮助你在5分钟内构建企业级的AI可观测性系统。 ## 为什么AI应用需要可观测性? 在当前的AI应用开发中,开发者面临三大核心挑战: 1. **黑盒问题**:GPT模型调用过程不

gitblog_00536的博客 1090

技术美术个人笔记(十三)——Houdini金属弯曲模拟

最近接收到使用Houdini自动解算破损/砸坏/扭曲汽车的需求,以此文记录制作金属弯曲自动解算工具时使用的部分节点解析;

小谁的博客 2148

EEGLAB+ERPLAB实战:从.cnt文件到情绪ERP差异波,一份避坑指南

本文详细介绍了使用EEGLAB和ERPLAB处理Neuroscan的.cnt格式脑电数据的全流程,从数据导入、预处理到情绪ERP差异波生成。重点解决了采样率验证、事件标记检查、重参考选择、滤波策略与ICA组合等实操难题,并提供了情绪图片ERP研究中P1、EPN和LPP成分的分析技巧,帮助研究者避免常见错误,提升数据处理效率。

weixin_26795617的博客 264

Nexent Generic Benchmark Runner 实战指南:基于 Langfuse 的智能体端到端评测与上下文处理对照实验

本篇技术指南完整讲解 Nexent SDK 自带的通用基准评测框架(Generic Benchmark Runner)——一个基于 Langfuse 的独立评测工具链,它可以直接执行真实 SDK Agent,无需启动 Nexent 后端与前端。读完本文,你将掌握:如何用 Docker 快速拉起本地 Langfuse 评测栈、如何导入 GSM8K/GAIA 数据集并完成单条 smoke 验证、如何运

gitblog_00509的博客 374

C语言实现贪吃蛇小游戏!(超简单详细)详细思路+源码分享

我们的今天的目标就是:用C语言来实现一个贪吃蛇项目,也不用太复杂,初学者能看懂就行!

致力于C语言C++知识分享! 1万+

【AI】AI评测实战(三):如何为你的RAG系统选择评估器(Evaluator)组合

本文深入探讨了如何为RAG系统选择合适的评估器组合,以解决AI在检索和生成环节中的痛点。通过分析Context Relevance、Context Correctness、Hallucination等核心评估器的功能,提供了全链路诊断和垂直场景定制的实战策略,帮助开发者精准定位系统瓶颈并优化性能。文章特别强调了评估器组合在提升AI系统准确性和用户体验中的关键作用。

weixin_29046035的博客 225

基于Open Cluster Management构建企业级多Kubernetes集群管理平台OpenClaw

在云原生架构中,Kubernetes已成为容器编排的事实标准。随着业务规模扩大,企业往往需要管理分布在多个云环境或数据中心的Kubernetes集群,这带来了集群管理、应用分发、策略统一和监控运维等复杂挑战。多集群管理技术通过提供统一控制平面,实现了对分布式资源的集中管控,其核心价值在于提升运维效率、保障安全合规并降低管理成本。Open Cluster Management(OCM)作为CNCF沙箱项目,采用Kubernetes原生架构,通过自定义资源定义(CRD)和控制器模式,为构建多集群管理平台提供了标

weixin_33747129的博客 368

StarRC常见问题整理

我正在「拾陆楼」和朋友们讨论有趣的话题,你⼀起来吧?使用starrc_cmd “错误代码”就能看对应Error或Warnning的解释。

m0_61544122的博客 3122

企业级AI应用实战:基于Harness与Langfuse构建可观测、可评估的财务分析智能体

在AI工程化实践中,构建稳定、可靠的企业级应用是核心挑战。这涉及到将复杂的AI模型能力,如大语言模型,通过工程化框架转化为可管理、可观测的生产流程。其原理在于通过工作流编排、全链路追踪和自动化评估,将AI应用开发从脚本级提升到平台级,从而确保流程的合规性、结果的可解释性与性能的可度量。这一技术价值在于显著降低了AI集成的风险与运维成本,使得AI能力能够真正融入对准确性要求极高的核心业务场景,例如财务分析、合同审查与客户服务。本文以财务分析智能体为具体案例,深入探讨了如何利用DeepSeek Harness进

weixin_30915275的博客 405

(ICLR 2025)【源码讲解+复现】TIMER-XL: Long-Context Transformers for Unified Time Series Forecasting

本文提出了一种统一的多变量时序预测模型Timer-XL,其核心创新包括:1)采用自回归解码器架构,将多变量时序预测统一为next-token预测问题;2)设计TimeAttention机制,通过相对位置编码和因果掩码捕获时序位置和变量间交互;3)支持长上下文预训练以提升零样本迁移能力。模型架构包含嵌入层、时间感知注意力块和预测头,采用MSE损失进行端到端训练。实验表明该方法在多种时序任务上表现优异,特别是在长跨度预测和少样本场景下。代码实现提供了完整的模型定义、数据加载和训练流程,支持自定义配置参数。

1146

Langfuse开源AI工程平台:构建可观测性LLM应用的终极指南

Langfuse是一个开源LLM工程平台,专为团队协作开发、监控、评估和调试AI应用而设计。作为YC W23的优秀项目,Langfuse提供了完整的AI应用可观测性解决方案,支持OpenTelemetry、LangChain、OpenAI SDK、LiteLLM等主流框架的无缝集成。在当今AI应用开发全球化的浪潮中,Langfuse凭借其强大的多语言支持和国际化架构,成为构建全球化AI应用监控解决

gitblog_00579的博客 508

零基础教你学RDMA驱动开发--第8篇:队列对(QP)、完成队列(CQ)与工作请求(WR)机制剖析

本文深入剖析了RDMA(远程直接内存访问)中的核心机制:队列对(QP)、完成队列(CQ)和工作请求(WR)。QP作为通信端点包含发送队列(SQ)和接收队列(RQ);WR是用户提交的操作指令,转换为工作队列元素(WQE)后由网卡异步执行;CQ则提供完成通知机制。文章详细介绍了三者的协作原理,包括QP状态机、WR提交方式、CQ轮询机制,以及关键的信号控制技术(Signaled Mode)来优化性能。同时对比了SEND/RECV和RDMA WRITE两种模式的差异,提供了调试技巧和最佳实践。这些机制共同构成了RD

amy_mhd的博客 156

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

Ubuntu26.04环境中如何记录并查看终端命令行的输入输出

在Ubuntu 26.4系统环境中,有时候我们需要记录终端命令行的输入输出信息,防止系统关机或者重启后这些信息找不到了,以便我们后期查看这些终端命令行的相关输入以及打印输出。~/terminal-logs/$(date +%Y%m%d-%H%M%S).log:在~/terminal-logs目录下创建带时间的日志文件。(2)如果只想输出“关键字”的信息使用grep命令。(1)如果想查看全部信息,使用cat命令。-a:追加内容,不覆盖前面又有信息。-n:的意思是显示行号信息。-f:flush刷盘。

duanjianbo3330的专栏 83

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

上一篇: pg_clickhouse v0.10.0 发布:TPC-H 下推覆盖率提升并重构二进制驱动
下一篇: ClickHouse 托管 Postgres 的 WAL 背压机制与实现原理
ClickHouseDB
博客等级 码龄3年 1707粉丝 320原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值