Canva 如何使用 Langfuse 打造智能体式支持体验
本文字数:4350;估计阅读时间:11分钟
作者:Felix Krauth
来源:https://langfuse.com/users/canva
了解 Canva 四人机器学习团队如何利用 Langfuse 跨 Java 和 Python 栈的可观测性,构建了一个超越所有基线评估目标的 AI 支持体验。
Canva 是一个被全球超过 2.5 亿月活跃用户使用的视觉沟通平台。从演示文稿、社交媒体图形到完整的品牌工具包,Canva 已将设计普及至个人和企业用户。
Canva 正基于 Langfuse 开发并运行其客户支持智能体体验。他们的系统已从简单的聊天模式,演变为一个多层、多智能体系统,能够访问大量工具、子智能体以及用于上下文检索的内部记录系统。
核心系统围绕着应用内聊天(Help Assistant)和异步工单解决智能体(Omni Agent)展开。
Help Assistant: Help Assistant 是面向用户的聊天面板,负责处理绝大部分支持请求。当用户打开帮助界面时,其查询会被路由至专业的子智能体:
• 设计协助 — 例如“如何删除背景?”
• 账户操作 — 例如退款、订阅变更
• 功能请求 — 会被路由到错误列表和产品路线图
OmniAgent: OmniAgent 是一个更复杂的系统,能够异步处理提交的工单。它通过 Help Assistant 或电子邮件与用户交互。如果 OmniAgent 无法解决工单,则会将其转交给人工支持。
Andreas 表示:“我们称之为 OmniAgent,因为它能够访问大量工具和功能。它能够深入挖掘问题,执行复杂的多步骤解决方案,并处理快速路径无法应对的边缘情况。”
Canva 的多语言架构,使其 LLM 运营平台必须具备处理不同技术栈的核心能力。
Help Assistant 基于 Java 运行,Java 是 Canva 诸多基础设施的支柱。该团队通过 OpenTelemetry 进行了集成,这避免了他们被锁定在单一的可观测性解决方案中。
Omni Agent 作为基于 Python 的机器学习(ML)工作负载运行,充分利用了 Langfuse 的原生 Python SDK 以及由此带来的更快迭代周期。
Canva 充分利用了 Langfuse 在可观测性、提示管理和评估方面的全套功能。最初只由核心工程团队使用,目前已覆盖到以下多种角色:
• 机器学习工程师 (ML Engineers) :深度调试、追踪分析、在线与离线评估配置
• 产品经理 (Product Managers) :提示词迭代、重放测试、质量监控
• 质量保证团队 (QA Team) :标注队列、系统性质量评分
• 内容设计师 (Content Designers) :维护并改进响应及 RAG (Retrieval Augmented Generation) 内容
• 领域专家 (Domain Experts) :特定主题、市场或语言的质量检查 (QA)
举例来说:Canva 的日本市场要求精准的商务正式语调。日本的一位市场经理无需工程团队介入,便设置了一个专用的 LLM (Large Language Model)-as-a-judge 评估器来监控文本语调。这极大地赋能了业务团队:让最了解业务领域的人能够独立构建并运行评估器。
Andreas Schuster,Canva AI 帮助体验产品负责人:
“我们意识到,要构建出色的 AI 系统,必须融入领域专业知识,而这往往超出了工程师的职责范畴。Langfuse 让这一切成为可能。它在工程要求与赋能非技术用户贡献其领域专业知识之间取得了完美平衡。”
追踪调试
追踪 (Tracing) 功能会捕获每个环节的错误信息、警告以及元数据 (Metadata)。工程师们通过使用 Metadata 和标签 (Tags) 来高效搜索和筛选,而 Playground 的回放功能则允许任何用户利用当时的精确系统提示词重新运行生成过程,这对于复现问题至关重要。
提示管理
Langfuse 的 提示词管理 (Prompt Management) 已成为一项关键的赋能。提示词支持版本控制,变更可在部署前进行测试,更重要的是,非技术团队成员也能独立完成更新。
“提示词管理系统设计得很出色,”Sergey 说道,“版本控制功能,以及在生产环境中推广或回滚变更的能力,是一项巨大的赋能。当产品经理无需工程师介入就能进行变更时,能节省大量时间,并显著提高工作效率。”
评估 (Evals) 与实验 (Experiments)
尽管 Help Assistant 和 Omni Agent 这两个系统在请求量和集成复杂性上存在差异,但团队经过一段时间,已逐渐统一了它们的评估方法,仅保留了少数不同之处。“如果某个方案在一个系统中运行良好,我们也会迅速将其应用到另一个系统中,”Sergey 表示。
以下是 Canva 在离线和在线评估方面的实践:
Experiments(https://langfuse.com/docs/evaluation/core-concepts#experiments) & Datasets(https://langfuse.com/docs/evaluation/experiments/datasets):在开发阶段,这两个系统可以通过运行基于存储在 Datasets 中的数据进行的离线 Experiments 来进行测试。Canva 已经存储了默认路径和边缘情况的输入数据及其对应的预期输出。为了确保能够访问工具的 Agent 可被有效测试,团队在 Experiments 期间会模拟工具调用的响应。
LLM-as-a-Judge(https://langfuse.com/docs/evaluation/evaluation-methods/llm-as-a-judge):这两个系统都在运行略有不同的评估器(evaluators),通过 15-20 个指标对其进行评分,涵盖离线(开发阶段)和在线(生产阶段)两方面。
Custom Scores(https://langfuse.com/docs/evaluation/evaluation-methods/scores-via-sdk):除了 LLM-as-a-Judge 之外,Canva 还通过 API/SDK 实现了定制的确定性评分逻辑,该逻辑在离线 Experiments 期间执行。
Human Annotation(https://langfuse.com/docs/evaluation/evaluation-methods/annotation-queues):为了补充自动化的在线/离线评估,QA 团队运行系统化的人工标注工作流,每周人工检查 20-100 个生产案例。
Shadow Mode:为了使用真实系统数据测试 Omni Agent,Canva 经常通过“影子模式”(Shadow Mode)标志部署变更。这使他们能够在生产环境中测试 Omni Agent 的行为,而不会影响整体用户体验 (UX)。他们使用 prompt labels 来管理此工作流。
Canva 在早期产品开发阶段采用了 self-hosting 模式,但随后为了减少内部工作量并专注于构建最佳的 AI 支持系统,他们迁移到了 Langfuse Cloud。
Sergey 表示:“我可以直接在本地运行 Langfuse。开源是一个巨大的差异化优势,它让团队能够在启动所有必要的法律和采购审批之前验证工具的有效性。
”一旦其价值得到验证,Canva 便迁移到了 Langfuse Cloud。Sergey 解释道:“在大规模运行这样一个庞大的系统时,我们需要自己的团队进行大量的维护工作。我们没有精力去承担所有的维护任务,这是一项平台级别的投入。”
团队评估了多个 LLM 可观察性平台。Langfuse 之所以脱颖而出,原因有以下几点:
• 开源 (Open source) :Sergey 在开展商业洽谈前,通过开源对 Langfuse 的能力建立起充分信心。
• 框架无关 (Framework agnostic) :Canva 直接使用原始的 LLM 客户端,不依赖任何框架。
• OpenTelemetry 支持 (OpenTelemetry support) :对 Java 技术栈至关重要,有效避免了供应商锁定。
• 端到端 LLM 运营平台 (End-to-end LLM operations platform) :在可观测性、提示管理和评估方面提供全套功能。
• 交付速度 (Shipping velocity) :“其他供应商仍在提交 Figma 原型时,Langfuse 已经推出了两项新功能。那一刻,我们便确信了。”
Sergey Iakovlev,Canva 用户之声团队首席机器学习工程师:
“Langfuse 极大地简化了我们工程师的工作。如果没有 Langfuse,我们的 AI 系统将是一个黑箱,只有工程师才能在深入调查日志后,了解其内部运行情况。”
01 提升用户体验:
Canva 的一个四人团队基于 Langfuse 构建,实现了对可重复支持请求的自动化处理,从而以更低的成本为用户提供更优质的解决方案。
02 规模化多智能体系统:
AI 支持系统凭借其复杂的多智能体架构,处理了每月 2.5 亿活跃用户中 80% 的用户交互。
03 更快的迭代速度:
工程师能够更快地发布产品,并且领域专家无需工程师介入,即可直接改进系统。
04 提升 AI 输出质量:
通过引入非技术团队成员和领域专家,系统整体质量得到了显著提升。
05 跨技术栈的单一平台:
Langfuse 同时兼容 Canva 的 Java 和 Python 技术栈,为其整个多智能体支持系统提供了一个统一的可观测性平台。
/END/
征稿启示
面向社区长期正文,文章内容包括但不限于关于 ClickHouse 的技术研究、项目实践和创新做法等。建议行文风格干货输出&图文并茂。质量合格的文章将会发布在本公众号,优秀者也有机会推荐到 ClickHouse 官网。请将文章稿件的 WORD 版本发邮件至:[email protected]
关于我们
ClickHouse(clickhouse.com) 是面向 AI 时代打造的高性能实时分析数据库,能够以极致性能处理海量数据分析任务。凭借高并发、低延迟和云原生架构,ClickHouse 广泛应用于可观测性、数据仓库、实时分析及 AI 数据基础设施等场景。我们致力于帮助企业在公有云平台上构建安全、弹性且高性价比的实时分析与 AI 数据平台,加速释放数据价值,推动智能化创新与数字化转型。目前,Trip.com、DiDi、Meta、Sony、Netflix、Deutsche Bank、Sierra、Cloudflare 等全球领先企业均在使用 ClickHouse 支撑其关键业务和数据分析平台。