前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >如何提高AIGC 应用的性能?

如何提高AIGC 应用的性能?

原创
作者头像
JavaEdge
发布2025-03-22 02:01:27
发布2025-03-22 02:01:27
810
举报
文章被收录于专栏:AIGC大模型应用AIGC大模型应用

0 前言

这个问题经常被问到。开发者通常先专注于让智能体正常运行,再关注速度成本。优化过程,开发者常采取如下方法:

  • 找出延迟的来源
  • 优化用户体验,减少“感知”延迟
  • 减少 LLM 调用次数
  • 加快 LLM 调用速度
  • 并行执行 LLM 调用

1 找出延迟的来源

听起来简单,但优化方式完全取决于具体瓶颈。你的延迟主要来自:

  • 一次超长的 LLM 调用
  • 还是多个小调用累积的延迟

在优化前,先弄清楚这问题很重要。

LangSmith 能全面追踪智能体的交互过程,帮你分析每个步骤的延迟来源。最近还推出“瀑布视图(waterfall view)”,可直观地看到哪些步骤对总延迟影响最大。

2 优化用户体验,减少“感知”延迟

有时,最快方法不是减少延迟,而是让用户感觉不到延迟

延迟通常影响用户体验,因为用户不喜欢等待。但很多情况可通过优化用户体验(UX)来减少他们的等待感。常见优化方法:

2.1 流式返回结果

流式输出(streaming)在 LLM 应用中已经很普遍,但若你的智能体还没用,赶紧试试

  • 流式输出会让用户觉得智能体正在工作,他们就不太容易离开页面。
  • 不仅可以流式返回最终结果,还可以流式显示中间步骤,比如智能体的思考过程、检索的内容、任务计划等。
  • Perplexity 的搜索界面就是一个很好的例子,他们通过显示中间步骤,提高了用户满意度——即使总响应时间没有减少。

👉 案例Perplexity 的 UX 设计

2.2 让智能体在后台运行

若可能,尽量把智能体的运行放到后台,用户只在需要时才看到结果。

如我的邮件助手会在收到新邮件时自动运行,但我并不会看到它的执行过程。我只会在它遇到问题时才收到通知,这样用户根本不会感知到延迟。

3 减少 LLM 调用次数

不是所有的任务都需要 LLM 调用!若可用代码替代 LLM 调用,果断替换!

许多智能体的架构是 LLM 调用+代码的混合模式,而合理用代码可显著减少 LLM 依赖,提高运行速度。这也是 LangGraph 设计的核心理念之一,Replit、Uber、LinkedIn、Klarna 等公司都在使用它来优化智能体的效率。

3.1 常见优化路径

  1. 单次 LLM 调用 → (遇到限制后)→ ReAct 智能体
  2. ReAct 智能体 → (发现工具管理复杂)→ 多智能体架构
  3. 多智能体架构 → (发现 LLM 调用太多,效率低)→ LangGraph

多智能体架构通常调用 LLM 的次数非常多,因为智能体之间的沟通需要额外的 LLM 交互。而 LangGraph 允许你精确控制智能体的交互方式,从而减少 LLM 调用,提升速度,降低成本

👉 案例LangGraph 在生产环境中的应用

4 加快 LLM 调用速度

目前有两种主要的方法可以加快 LLM 调用:

4.1 使用更快的模型

不同的 LLM 模型速度不同,如:

  • Google 的 Gemini Flash 速度很快
  • OpenAI 和 Anthropic 提供更小、更快的模型
  • Groq、Fireworks 等开源平台 也在不断优化开源模型的速度

但需要注意,更快的模型通常意味着更小的模型,准确率可能会降低

4.2 减少输入的上下文长度

LLM 的响应时间和输入文本的长度直接相关。如果想要更快的结果,减少输入长度是个有效的方法!

所以,你需要完全掌控 LLM 的输入内容,避免传递过多无用的信息。有些框架可能会隐藏 LLM 调用的细节,这对优化速度非常不利。LangGraph 没有隐藏提示词(prompts),你可以完全控制 LLM 的输入内容。

如果想更清楚地查看 LLM 的输入内容,可用 LangSmith 分析。

5 并行执行 LLM 调用

这个方法并不适用于所有场景,但如果你的任务可以拆分成多个 LLM 调用并行执行,那么你一定要这么做!

LangGraph 原生支持并行执行(parallelism),你可以用它来加速任务处理,比如:

  • 同时进行安全检查(guardrail check)和内容生成
  • 从多个文档中同时提取信息
  • 同时调用多个模型,然后合并它们的输出

👉 案例LangGraph 并行处理示例

6 总结

想要加快智能体的运行速度,关键在于合理权衡性能、成本和能力。最好的优化方法因具体情况而异,但整体步骤可以归纳如下:

  1. 先找出主要的性能瓶颈
  2. 针对瓶颈优化,包括减少 LLM 调用、使用更快的模型、并行执行等
  3. 不要忽视用户体验,流式输出和后台运行能有效减少用户的等待感

有时候,优化智能体的最好方法并不是技术手段,而是重新思考用户如何与智能体交互

如果你有更好的优化经验,欢迎分享——你用过哪些方法来加速你的智能体?😃

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 0 前言
  • 1 找出延迟的来源
  • 2 优化用户体验,减少“感知”延迟
    • 2.1 流式返回结果
    • 2.2 让智能体在后台运行
  • 3 减少 LLM 调用次数
    • 3.1 常见优化路径
  • 4 加快 LLM 调用速度
    • 4.1 使用更快的模型
    • 4.2 减少输入的上下文长度
  • 5 并行执行 LLM 调用
  • 6 总结
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档