logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

ops-transformer 里的 FlashAttention:让大模型在昇腾NPU上“吃得少、跑得快“

刚接触 CANN 那会,我被算子系统砸懵了——一堆仓库名、一层层架构,完全不知道从哪下手。直到朋友让我帮他看一段大模型推理的代码,发现瓶颈全在 attention 计算上,这才第一次认真看了 ops-transformer 这个仓库。

#transformer#深度学习#人工智能
用 ops-transformer 跑通第一个大模型算子:手把手从零开始

昇腾CANN 是昇腾异构计算架构,你可以把它理解成一套让昇腾NPU 能干活的完整软件栈。ops-transformer 是这套架构里专门管 Transformer 相关高级算子的仓库——FlashAttention、MoE(混合专家)、MC2 这些大模型训练推理时绕不开的算子,都在这里。打个比方:CANN 是整个厨房,ops-transformer 是厨房里那台专门做面点的机器。你不需要自己揉面、

#transformer#深度学习#人工智能
理解 ops-transformer 在昇腾NPU架构中的位置:把大模型算子放进厨房里讲

有个做后端的朋友问我:“我装了 CANN,跑了 PyTorch 模型,NPU 也认到了,但我不理解 ops-transformer 到底在哪一层——它是我的模型代码的一部分,还是 CANN 的一部分,还是昇腾硬件的一部分?这个问题太常见了。我当时是这么跟他解释的。

#transformer#架构#深度学习
鸿蒙智能开发实战:端侧 OCR 文字识别与 AR 交互

手机摄像头早已不只是记录画面的工具。十多年前,我们用它拍风景、拍家人;今天,我们更频繁地用它去"对准"——对准一张名片、一本图书的封底、一张身份证、一张发票。对准之后呢?如果设备能瞬间读懂上面的文字,并把这些文字变成可编辑、可检索、可联动的数字信息,那摄像头的角色就从"记录者"跃迁成了"理解者"。这种跃迁,正在成为移动智能体验真正的分水岭。在 HarmonyOS NEXT 上,这条技术链路的起点是

#harmonyos#ar#华为
鸿蒙智能开发实战:端侧 OCR 文字识别与 AR 交互

手机摄像头早已不只是记录画面的工具。十多年前,我们用它拍风景、拍家人;今天,我们更频繁地用它去"对准"——对准一张名片、一本图书的封底、一张身份证、一张发票。对准之后呢?如果设备能瞬间读懂上面的文字,并把这些文字变成可编辑、可检索、可联动的数字信息,那摄像头的角色就从"记录者"跃迁成了"理解者"。这种跃迁,正在成为移动智能体验真正的分水岭。在 HarmonyOS NEXT 上,这条技术链路的起点是

#harmonyos#ar#华为
仓颉语言入门与 ArkTS 对比:HarmonyOS NEXT 的开发新范式

仓颉(Cangjie,简称 CJ)是一款面向全场景智能设备的通用编程语言,由华为自主设计并开源。它的设计目标是提供一种安全、高效、表达力强的开发体验,覆盖从轻量级设备到复杂应用的全场景需求。与 ArkTS 类似,仓颉也是一种静态类型语言,但两者并非简单的替代关系。在当前的 HarmonyOS NEXT 生态中,ArkTS 仍然是声明式 UI 开发的主力语言;仓颉则被定位为更底层的应用开发语言,未来

#harmonyos#华为
鸿蒙原生开发实战:Native 图片处理与二维码全链路解析

HarmonyOS NEXT 从 API 12 开始,彻底剥离了 Android AOSP 代码,所有 Native 能力全部通过系统 SDK 开放。这对图片处理和二维码场景意味着什么?答案是——你不能再依赖第三方 Java/Kotlin 库,而必须直接使用系统提供的等原生模块。这听起来是挑战,但实际上是机会:原生链路更短、性能更可控、内存更透明。本文聚焦五个实战场景,带你走通从相机流解码到二维码

#harmonyos#华为
鸿蒙原生开发实战:Native 图片处理与二维码全链路解析

HarmonyOS NEXT 从 API 12 开始,彻底剥离了 Android AOSP 代码,所有 Native 能力全部通过系统 SDK 开放。这对图片处理和二维码场景意味着什么?答案是——你不能再依赖第三方 Java/Kotlin 库,而必须直接使用系统提供的等原生模块。这听起来是挑战,但实际上是机会:原生链路更短、性能更可控、内存更透明。本文聚焦五个实战场景,带你走通从相机流解码到二维码

#harmonyos#华为
ArkUI 自定义组件与复用:构建高效 HarmonyOS 页面的核心技法

Builder是 ArkUI 中用于封装 UI 构造逻辑的装饰器。它与普通自定义组件的核心区别在于:后者是一个完整的 UI 节点,具备独立的生命周期和渲染作用域;而@Builder本质上是一个受控的渲染方法——它允许我们将一段 UI 模板提取为可复用的构建函数,并在需要的地方反复调用。举一个最常见的场景:列表中的每一个卡片都具有相同的结构,但数据内容各不相同。如果为每个卡片都写一遍布局代码,不仅冗

#harmonyos#华为
鸿蒙PC打印框架深度实战:从 PrintManager 到报表输出

在提交打印之前,让用户预览效果是 PC 应用的基本体验要求。如果你直接startPrint,系统会弹出一个简单的打印确认对话框,但不会展示逐页内容。对于报表应用,用户需要翻页查看排版是否合理。previewDialog.setTitle('打印预览 — 月度销售报表');try {预览对话框内部会自动调用onLayout获取总页数,然后依次调用onWrite获取每一页的PixelMap并显示。左右

#harmonyos#华为
    共 296 条
  • 1
  • 2
  • 3
  • 30
  • 请选择