大批量文件上传:前端分组并发与断点重试

在前端开发中,经常会有大批量文件上传的需求。在面对“数千张高清图片批量上传”的需求时,传统的前端上传方案往往会出现各种各样的问题:

  • 一次性全部上传:极易触发服务器 413 Payload Too Large 报错,且巨大的 HTTP 包体容易导致连接超时。
  • 暴力循环:瞬间发起数千个 HTTP 请求,不仅会挤爆浏览器的并发限制,导致大量请求排队挂起,还可能瞬间压垮后端服务。

针对这些问题,就需要前端分批上传,下面介绍一下一种支持分组、控制并发、且具备自动重试机制的大批量文件上传策略

1. 核心设计思路

  • 分批: 将 大批量文件切分成若干个小批次(比如每批 50-100 个),
阅读更多

LangGraph vs LangChain

1.LangChain 是什么

LangChain 是 LLM 应用开发领域最早期、最广泛使用的框架之一,定位为通用 LLM 应用框架。它提供了丰富的组件来简化与大语言模型的交互:

  • Prompt 管理:模板化提示词构建与复用
  • Chain(链):将多个步骤(LLM 调用、工具调用、记忆等)串联成管道
  • Agent 抽象:让 LLM 决定是否调用工具
  • Tool(工具):标准化的外部能力扩展接口
  • Memory(记忆):对话历史的存储与检索
  • RAG 支持:检索增强生成的完整实现
阅读更多

浅谈大模型应用开发

1 理论体系背景

1.1 问题域

问题:有了LLMs,为什么需要开发大模型应用?

在大语言模型(LLM)如 ChatGPT、Claude、DeepSeek 等快速发展的今天,开发者不仅希望能“使用”这些模型,还希望能将它们灵活集成到自己的应用中,实现更强大的对话能力、检索增强生成 (RAG)、工具调用(Tool Calling)、多轮推理等功能。

阅读更多

JPEG 压缩预处理引发的混合精度训练 Loss Nan 问题排查

最近在训练一个图像篡改检测网络时,为了提升模型的鲁棒性,我对数据集进行了随机 JPEG 压缩作为预处理手段。本以为这只是一个常规的数据增强操作,没想到却引发了一场艰难的 Debug 之旅——模型训练过程中 Loss 突然变成了 NaN

经过一系列常规排查无果后,最终锁定了混合精度训练与数据分布之间的问题。在此记录下排查思路和解决方法。

训练设置:我使用MMSeg框架的自动混合精度AmpOptimWrapper

阅读更多

代理模式、外观模式和中介者模式区别

1.代理模式:

代理模式通过引入一个代理对象来控制对原对象的访问。代理对象在客户端和目标对象之间充当中介,负责将客户端的请求转发给目标对象,同时可以在转发请求前后进行额外的处理。

使用场景:
  • 当需要在访问一个对象时进行一些控制或额外处理时。
阅读更多