什么是 AI agent?深入了解未来的 AI 界面

原文链接:What are GPT Agents? A deep dive into the AI interface of the future
作者:Logan Kilpatrick
OpenAI 开发者关系负责人
发表时间:2023年7月26日

上周,我在 Twitter 上发推并询问有哪些人正在围绕 GPT agents 的概念开发酷炫的产品,我对收到的回应感到非常震惊。我也很惊讶,许多人似乎并不理解 agents 是什么,也不知道它们为什么会如此受欢迎。

这篇文章旨在让您从「我不知道 AI Agent 是什么,别瞎造词了」到「知其然且知其所以然地自信讨论 AI Agent」。

我们将介绍agents是什么,这个领域的发展趋势,以及大量这种早期技术在实践中的精彩示例。如同往常,这篇文章反映了我对这个话题的个人观点和想法,这就是你在我个人博客上阅读它的原因。让我们深入研究吧!

什么是 GPT Agents(基础知识)?

首先,我们需要定义一些术语,然后我们会深入到更多的细节中。虽然没人喜欢背单词,但在AI领域中,为了理解一些奇特的术语,确立正确的概念是至关重要的。

GPT = generative pre-trained transformer,也就是生成式预训练转换器,这是驱动大型语言模型(LLM)如ChatGPT的核心机器学习模型架构。GPT是一个非常专业的术语,但通过ChatGPT被广大群众所熟知。

接下来,我们来看看什么是Agent:

Agent(智能体) = 一个设置了一些目标或任务,可以迭代运行的大型语言模型。这与大型语言模型(LLM)在像ChatGPT这样的工具中“通常”的使用方式不同。在ChatGPT中,你提出一个问题并获得一个答案作为回应。而Agent拥有复杂的工作流程,模型本质上可以自我对话,而无需人类驱动每一部分的交互。

上述定义有助于我们理解ChatGPT和Agent的关系,以及它们为用户提供的不同体验。ChatGPT接收单一查询的输入并返回输出,它一次不能完成超过一个任务。但是,随着ChatGPT中插件的推出,这种情况有所改变,模型可以利用外部工具一步执行多达10个请求。有人可能会争辩说,这是在ChatGPT内部“Agent”思想的第一次体现,因为模型正在决定该做什么以及是否发送额外的请求。

对于那些可能还没有尝试过插件的人来说,基本的概念是你可以告诉ChatGPT某个外部工具的API是如何工作的,然后它就可以编写并执行代码,根据用户查询向该API发送请求。比如,如果你有一个天气插件,当用户问“NYC(纽约缩写)的温度是多少?”,模型就会知道它无法回答这个问题,并查看用户安装的可用插件。假设它发送请求,API返回了一个错误信息,说“NYC不是一个有效的地点,请使用详细的城市名称,不要使用缩写”,模型实际上可以读取这个错误并发送新的请求来修复它。这是现今生产流程中Agent如何工作的最简单示例。

最后一个细节,我将agents称为GPT agents,仅仅是因为“agents”是一个非常常见的词,上下文经常不明确。GPT agents强化了这个概念与ChatGPT和AI有些相关,所以你应该从不同的角度来看待它。但是你可能会听到人们说智能体(agents)、自主智能体(autonomous agents)或GPT智能体(GPT agents),这些都是指同一种东西。

超越基础知识

一些使GPT agents如AutoGPT和BabyAGI大受欢迎的项目是有史以来最受欢迎的开源项目之一。agents的想法真正激发了开发者的想象力,人们正在争相围绕这个想法创建工具和公司。

在此,我要快速提示一下,如果你是一名开发者并且想要构建 Agents 体验,Langchain提供了一套非常好的库和工具集,这些工具可以帮助开发者做到这一点,而无需从头开始构建所有东西。

《Langchain是什么,作为一个开发者我为什么应该关心它?》
这是全球发展最快的语言模型应用框架,配备了LLM工具和agent支持。

如果你必须将agents的概念简化为一句话,一个选项可能是:“给大型语言模型设定目标的能力,以及让模型在循环中自我提示的能力”。这就是真正发生的所有事情。交互不再是线性的,而是可以并行(同时进行多个提示以解决同一个目标)和单人的(对话中不需要人类参与)。

以下是BabyAGI的工作方式,请花一些时间理解一下,我知道这个图解可能有些令人生畏,但当我们逐步讲解时,它会变得更加清晰:
在这里插入图片描述

来自 https://github.com/yoheinakajima/babyagi 的图片

这个过程在为智能体创建一个目标或主任务后,主要分为以下三个步骤:

  1. 获取第一个未完成的任务
  2. 丰富结果并存储在向量数据库中(如果你不清楚这意味着什么,没关系)
  3. 创建新的任务并重新设置任务列表的优先级

让我们一起来看一个具体的例子。我们可以从一个任务开始,例如"编写一篇关于ChatGPT以及功能的1500字博客文章"。作为控制agent的用户,你可以写出这个目标,尽可能详细地提供要求,然后你就完成了。

模型接收这些要求,并执行如下操作:

sub_tasks = openai.ChatCompletion.create(
  model="gpt-4",
  messages=[
    {"role": "system", "content": "You are an world class assistant designed to help people accomplishh tasks"},
    {"role": "user", "content": "Create a 1500 word blog post on ChatGPT and what it can do"},
    {"role": "user", "content": "Take the users request above and break it down into simple sub-tasks which can be easily done."}
  ]
)

在这个例子中,我们使用OpenAI API来驱动agent。系统消息允许你在一定程度上定义你的agent,但在这个例子中,我们并没有真正使用它。然后,我们添加用户查询和关键的下一步,即在其上添加一个任务,该任务是将查询分解成子任务。

然后,你可以将子任务放入一个循环中,并进行额外的调用以执行这些子任务,所有这些都带有不同的系统消息(想想不同的agents,可能是一个写作agent,一个研究agent等)。你可能会想要“将这个任务分解成更简单的子任务,直到你100%清楚需要做什么并且可以高精度地执行任务”,这样模型就不会陷入添加更多任务的无限循环中(如果你没有正确地进行提示工程,今天的agents就会常常出现这个问题)。

另外,你可能在想,实现这些功能需要大量的OpenAI API请求。你想得对,agent的工作流确实消耗了大量的使用量,因此在操作时要小心。以现在的限制,你可能无法在ChatGPT中使用agents,因为有消息次数的限制,即使最近增加到每3小时50条消息。(在下面的帖子中查看更多详细信息)

《ChatGPT刚刚变得更好了》
ChatGPT-4的新消息限制已经提高到50条。

回顾一下我们的进展,我们已经看到了构建一个agent的第一步,将初始任务分解成子任务,然后让模型执行列表中的任务。babyAGI流程中值得一提的一些部分如下:“丰富结果”过程,这可能仅仅意味着像要求模型使任务更具体和详细这样简单的事情,这是一种自动提示工程。他们还将结果存储在向量数据库中,这对于确保你在整个过程中跟踪模型为你完成的所有步骤是有用的。基本上看到模型根据你的初始目标达到某个最终状态所做的“工作”是有帮助的,这样你就有一些关于如何完成的直觉。

babyAGI工作流中最后一个有趣的点是优先级列表的概念,这是我们所有人在执行任务时,有意识或无意识地都会做的事情。模型默认情况下会按照询问的顺序执行任务,所以有这个步骤可以确保模型按照有利于真正完成任务的顺序完成相关任务。

Agents 的实战应用

到目前为止,我们已经从高层次和低层次讨论了很多关于agents的内容。但只要你看到这些 agents 在实际运作,这一切都会变得更加令人兴奋。在我们深入各种例子之前,先看看我制作的这个信息图,里面有一些在这个领域正在构建的公司和项目(抱歉,图片很长,因为正在构建的项目实在太多):
在这里插入图片描述

我认为基础 Agents 具有通用性,设计用来将任何任务分解成适合 Agents 工作流的形式。这类项目包括像babyAGI和AutoGPT这样的项目。从历史上看,AutoGPT是最常用的项目,但他们最近撤掉了他们的网络应用,现在你必须在本地进行操作。

要查看 Agents 的实战应用,我们可以使用这个很棒的Hugging Face空间,这是一个在线运行代码的环境:

《Baby AGI - 由NeuralInternet提供的Hugging Face Space》
发现社区制作的令人惊叹的机器学习应用

请注意,你在外部网站上粘贴API密钥时应非常小心。值得为实验创建一个新的密钥,然后在完成后立即删除,以防止泄露。

让我们从帮助我学习编程的目标开始:
在这里插入图片描述

你可以看到babyAGI的第一步是根据我的目标制定一个任务列表,它将“教我编程Python”分解成以下任务:

  1. 安装Python并熟悉Python解释器
  2. 学习基本的Python语法和数据类型
  3. 理解控制流和决策制定
  4. 学习有关函数和类的知识
  5. 学习有关模块和包的知识
    ……

下一步是,模型会编写一些文本来帮助我学习第一项。如果你自己试试这个,你可能会发现结果有点奇怪。例如,babyAGI忽略了第一步,而是做了一个"Hello World"程序。我也认为空间中的 UI 层可能正在抽象一些正在发生的事情。我建议在这里试验一下,看看还有什么其他可能。今天运行你的第一个 Agent 是一种接触这项技术前沿的好方法。

Agents 的未来

Agent的想法将会长久存在,它们是首批由通用AI驱动、能解决任务的实体。随着时间的推移,随着更强大的模型和工具的支持,它们将变得越来越复杂。例如,你可以想象一个简单的客户服务agent,它可以接手某人的问题,迭代地将其分解、解决,并验证答案。为了实现这个目标,需要几个关键条件:

  1. 更强大的模型:GPT-4工作得很好,但今天的使用场景仍然有限
  2. 更好的工具:我们查看的空间是一个超级简单且有用的例子,但对于真正的生产使用场景来说,还有所欠缺
  3. 不同的架构:随着模型的演化,将目标分解成子任务可能不再是正确的设计决策,有许多方法,比如从最终状态开始并向后工作,这可能同样有效

在工具方面,像 LangChain 这样的组织正在推出像 LangSmith 这样的产品,帮助开发者将这些工作流程投入生产。

《什么是LangSmith,作为开发者我为什么应该关心它?》
深入研究LangChain创作者的最新产品🦜

事实是,为了使这一代智能体得以实现,将会诞生全新的框架。想到这一切真的是从插件和 AutoGPT 开始的,令人惊讶。我对未来深感激动,特别是对于利用世界级的 Agents 来帮助我完成我关心的工作的能力,这让我充满期待!

相关推荐

Flutter 修复 no_screenshot 鸿蒙窗口隐私模式切换:让一次性恢复口令页离开后恢复正常截屏

本文记录了在鸿蒙系统上使用 no_screenshot 插件实现页面截屏保护时,遇到的二次切换失效、恢复接口返回值错误及异步状态不同步问题。通过分析原生实现,修复了状态切换逻辑错误、返回值混淆及监听取消时的竞态问题,确保窗口隐私状态正确同步。修复后,模拟器与真机(畅享 100 Pro Max)均能正常实现进入/退出受保护页面后的截屏恢复,完整代码已开源于 oh-flutter/no_screenshot。

白天写代码,晚上追AI大模型,偶尔搞点八卦 开源动态|技术干货|实习机会|生态活动 我负责分享,你负责变强 19

Flutter 修复 audio_waveforms 鸿蒙波形提取句柄与内存驻留:多段语音备忘录预览与切歌释放

修复 Flutter 鸿蒙版 audio_waveforms 库在语音备忘录连续预览与切歌时的资源泄漏问题,补全文件关闭、提取取消与播放器释放逻辑,通过两段式 Worker 停止机制与零字节 EOS 处理,实现 144 轮切换无句柄残留、内存稳定。修复版已提交至 CPF-Flutter/fluttertpc_audio_waveforms,支持鸿蒙系统高效波形提取与资源管理。

白天写代码,晚上追AI大模型,偶尔搞点八卦 开源动态|技术干货|实习机会|生态活动 我负责分享,你负责变强 14

Flutter 修复 read_pdf_text 鸿蒙文档选择器 URI 读取:平板双栏讲义导入与摘录

修复鸿蒙平板上读取PDF文件时因授权URI处理不当导致无法复制的问题,通过改用只读文件描述符转存,并接入系统PDFKit实现分页浏览与片段保存。优化缓存清理策略,避免路径失效,确保连续导入与摘录功能稳定。完整代码已开源,支持鸿蒙平台的PDF文本提取与双栏讲义阅读场景。

白天写代码,晚上追AI大模型,偶尔搞点八卦 开源动态|技术干货|实习机会|生态活动 我负责分享,你负责变强 9

Flutter 修复 pasteboard 鸿蒙平板图片剪贴板读写:让批注画布复制后即刻无损粘贴

修复鸿蒙平台 pasteboard 库在写入大图后立即读取返回 null 的问题,通过等待系统编码完成并补全标准位图与文件 URI 读取支持。修复版已开源至 oh-flutter/pasteboard,兼容鸿蒙平板双栏批注场景,提升剪贴板跨端可靠性。

白天写代码,晚上追AI大模型,偶尔搞点八卦 开源动态|技术干货|实习机会|生态活动 我负责分享,你负责变强 47

Flutter 鸿蒙分布式数字身份实战:基于 HUKS 封装 flutter_did_ohos,实现私钥安全托管、离线凭证验签

本文介绍了一个基于鸿蒙系统的 Flutter 插件 flutter_knock_share,实现去中心化身份(DID)与可验证凭证(VC)的本地闭环。通过整合 HUKS 密钥库、cryptoFramework 与分布式 KV 存储,该方案在离线环境下实现私钥安全存储、身份自证与凭证验签,具备 34ms 身份创建、3ms 签发、58ms 验证的高性能表现。核心创新在于将公钥指纹作为 DID 标识,确保身份与密钥绑定,并通过 ArkTS 插件层保障私钥不外泄,构建了无需依赖外部服务的自主身份系统。

白天写代码,晚上追AI大模型,偶尔搞点八卦 开源动态|技术干货|实习机会|生态活动 我负责分享,你负责变强 41

KMP/CMP 接入鸿蒙实况窗:用 Kotlin 状态机驾驭 Live View Kit,把跨端 App 的锁屏进度卡片接起来

本文通过一个运行在API 26模拟器上的KMP实况窗Demo,揭示了状态机、节流与超时回收为何应置于Kotlin共享层:统一状态流转逻辑、精准控制更新频率,并实现跨端一致性。push裁决必须穿过C桥,确保ArkTS仅负责系统翻译,而核心决策由Kotlin全权掌控。六张实测截图完整呈现从启动、运行、暂停到恢复的生命周期,验证了状态机校验、节流策略与统计反馈的可靠性,证明该模式是KMP封装鸿蒙实况窗的理想方案。

白天写代码,晚上追AI大模型,偶尔搞点八卦 开源动态|技术干货|实习机会|生态活动 我负责分享,你负责变强 36

Flutter 修复鸿蒙平板方向控制:阅读页与全屏内容切换

本文修复了鸿蒙平台下 auto_orientation_v2 库因上下文错误导致的固定方向设置失败问题,通过改用 AbilityAware 绑定窗口、增加异步代次校验,并新增横竖两轴受限自动旋转功能。修复后,平板阅读页与全屏内容切换场景中方向控制稳定可靠,策略可正确实现 1 → 10 → 1 的流转。完整代码已开源,支持 Flutter 鸿蒙适配交流。

白天写代码,晚上追AI大模型,偶尔搞点八卦 开源动态|技术干货|实习机会|生态活动 我负责分享,你负责变强 19

Flutter 修复 desktop_drop 鸿蒙电脑自由窗口文件拖拽:让非原点窗口准确命中并读取附件

修复鸿蒙版 desktop_drop 插件在窗口下半区拖放无响应及文件读取失败问题,通过修正坐标换算(扣除标题栏高度)与路径转换(剥离 file:// 协议头),确保文件准确交付。经双窗口复现验证,修复后可稳定接收并读取同沙箱文件,完整代码已提交至 CPF-Flutter 仓库,支持社区交流与后续维护。

白天写代码,晚上追AI大模型,偶尔搞点八卦 开源动态|技术干货|实习机会|生态活动 我负责分享,你负责变强 38

Flutter 鸿蒙电脑三栏窗口适配:修复 desktop_window 尺寸缩水与全屏切换

本文复现并修复了鸿蒙版 desktop_window 插件在三栏布局场景下的三大问题:尺寸缩水(未正确换算逻辑像素)、最小宽高字段写反、全屏切换无法恢复。通过修改原生层单位转换、修正约束参数映射及完善全屏状态回调,实现窗口尺寸精准控制与状态可逆。修复后,1120×720 逻辑尺寸准确生效,最小宽度有效约束,全屏可正常往返。完整代码已提交至 CPF-Flutter/fluttertpc_desktop_window,欢迎交流反馈。

白天写代码,晚上追AI大模型,偶尔搞点八卦 开源动态|技术干货|实习机会|生态活动 我负责分享,你负责变强 12

RN 鸿蒙安全三方库落地:react-native-digital-shield,密钥不出 TEE,AES-GCM/RSA-JWT 跨端身份打通

本文基于 RNOH 0.84 与 HarmonyOS API 26,自研数字盾库 react-native-digital-shield,把 ArkTS 专属的 HUKS、asset 能力经TurboModule 桥接给 JS:提供 AES-256-GCM 加解密与密钥托管、敏感资产存储、RSA-2048 签发校验 RS256 JWT,并以 JWK 公钥和 HS256 共享密钥实现跨端身份互认,密钥明文始终不出 TEE。文中还复盘 TurboModule 双侧注册、GCM 需拆分 16 字节

白天写代码,晚上追AI大模型,偶尔搞点八卦 开源动态|技术干货|实习机会|生态活动 我负责分享,你负责变强 17

Flutter 修复鸿蒙 WebView Cookie 同名键丢失:离线回读与开发助手复核实录

修复了 Flutter 三方库 webview_cookie_manager 鸿蒙端因同名键误判导致的 Cookie 名称丢失问题,确保业务键如 path、domain 等在回读时正确保留。修复后,模拟器与真机测试均实现四组数据完整恢复,值中多等号也保持不变。补丁已提交至 CPF-Flutter 官方仓库,提升插件在鸿蒙平台的可靠性。

白天写代码,晚上追AI大模型,偶尔搞点八卦 开源动态|技术干货|实习机会|生态活动 我负责分享,你负责变强 30

Flutter 鸿蒙启动图撤销后编译失败:用 DevEco Code 复核三方库修复

本文针对 Flutter 鸿蒙启动图撤销时导致编译失败的问题,修复了 flutter_native_splash_ohos 库在移除启动图时误删仍被引用资源的缺陷。通过保留1×1透明图片并透传自定义模块路径,确保资源引用完整性,使工程可正常构建。修复已提交至官方仓库,支持幂等操作与多场景验证,提升开发体验。

白天写代码,晚上追AI大模型,偶尔搞点八卦 开源动态|技术干货|实习机会|生态活动 我负责分享,你负责变强 43

Flutter 接入鸿蒙 ArkWeb 预初始化:帮助页首开时机与主线程成本实测

为解决Flutter鸿蒙版webview_flutter无法在无视图状态下提前初始化引擎的问题,我在其原生实现中新增可选静态入口initializeWebEngine()。实测表明,在2秒预热窗口下,页面首屏渲染(FCP)耗时从中位数1791ms降至1019ms,显著提升首次打开体验;而在零延迟场景下,总路径耗时略有上升,需权衡预热时机与用户等待成本。该补丁已提交至CPF-Flutter官方仓库,支持社区协作优化。

白天写代码,晚上追AI大模型,偶尔搞点八卦 开源动态|技术干货|实习机会|生态活动 我负责分享,你负责变强 39

Flutter 优化鸿蒙 printing_ohos 多页 PDF 光栅化:原生资源释放与缓冲复用

针对鸿蒙端 printing_ohos 插件存在的页码映射错误与高内存占用问题,本文提出并实现三项优化:修正页码索引映射、引入原生资源分层释放机制、复用像素缓冲区。修复后,第三页显示正确,内存增长显著降低——在模拟器上PSS增量中位数下降65.8%,真机测试下降64.4%。完整补丁已提交至官方仓库,支持社区协作与问题反馈。

白天写代码,晚上追AI大模型,偶尔搞点八卦 开源动态|技术干货|实习机会|生态活动 我负责分享,你负责变强 35

React Native 鸿蒙权限审计实战:让每一项权限都有人认领

本文介绍一款纯 JS 编写的 React Native 鸿蒙权限审计工具,解决权限声明与使用对账难、最小权限集计算矛盾、审核必填字段缺失三大痛点。通过 module.json5 声明、使用台账与源码扫描三路输入对账,自动识别未使用权限、补全 reason/usedScene、生成可粘贴的最小清单,并支持 CI 卡控与风险分评估。工具内核独立,离线运行,兼顾准确性与安全性,助力应用高效通过审核。

白天写代码,晚上追AI大模型,偶尔搞点八卦 开源动态|技术干货|实习机会|生态活动 我负责分享,你负责变强 14

Cordova 鸿蒙 WebView 安全实战:能改的运行时拦,改不了的构建期审

本文通过 cordova-plugin-harmony-webguard 插件,解决 Cordova/HarmonyOS 应用中导航安全、引擎不可修改配置、JS 门面静默降级三大难题。基于运行时策略闸门(onPageStart + JS 预检)与构建期审计 CLI(扫描 MainPage.ets、config.xml 等),实现协议拦截、白名单校验、高危配置阻断,支持 CI 失败退出,将安全基线可视化、可测化,真正落地“能改的运行时拦,改不了的构建期审”。

白天写代码,晚上追AI大模型,偶尔搞点八卦 开源动态|技术干货|实习机会|生态活动 我负责分享,你负责变强 33

Flutter 鸿蒙供应链审计实战:让高危依赖卡在 CI 门口

本文介绍了一个基于纯 Dart CLI 与 Flutter Dashboard 的依赖审计工具,解决鸿蒙工程中三套锁文件(pubspec.lock、oh-package-lock.json5、package-lock.json)统一读取、离线快照与 OSV 在线情报选择、以及高危依赖通过退出码卡在 CI 的问题。工具以锁文件为事实依据,支持离线快照(4 条真实 GHSA)与在线查询,输出 SBOM(CycloneDX 1.5)、Markdown/JSON 报告,并通过退出码实现 CI 阻断,性能秒级

白天写代码,晚上追AI大模型,偶尔搞点八卦 开源动态|技术干货|实习机会|生态活动 我负责分享,你负责变强 179

React Native 鸿蒙端侧 OCR 实战:TurboModule 与纯 TS 引擎的逐字契约

本文以鸿蒙真机上的 React Native 0.84 工程为例,详解三大难题:通过 TurboModule 接入 HarmonyOS Core Vision Kit 实现端侧离线 OCR;规避 Metro 预置头导致的 require 不存在问题;实现 npm 包与 HAR 双形态交付。项目采用 codegen 生成 ArkTS 接口,结合纯 TS 回退引擎,确保跨引擎逐字符一致,并通过 autolinking 支持无缝集成。

白天写代码,晚上追AI大模型,偶尔搞点八卦 开源动态|技术干货|实习机会|生态活动 我负责分享,你负责变强 100

Flutter 鸿蒙端侧 OCR 实战:让文字识别留在设备上

本文通过一个运行在鸿蒙真机上的 Flutter 插件工程,系统解决了三大核心问题:如何统一内存、文件、相册三类输入的识别链路;如何实现与 KMP 版本的 JSON 契约逐字节对齐;以及在系统不提供置信度时如何诚实处理。基于 HarmonyOS Core Vision Kit,插件实现端侧离线 OCR,全程无网络、无权限、无密钥,支持真实小票与截图识别,性能稳定(312~507ms),并通过 35 项单元测试与真机集成验证。

白天写代码,晚上追AI大模型,偶尔搞点八卦 开源动态|技术干货|实习机会|生态活动 我负责分享,你负责变强 160

跨端 RN 鸿蒙碰一碰分享库实战:基于 Share Kit 封装 react-native-ohos-knock-share,实现卡片、文件一碰传

本文介绍基于React Native的鸿蒙碰一碰分享库,解决RN开发者在鸿蒙生态中无法便捷使用Share Kit碰一碰功能的痛点。通过封装NFC/星闪触碰、3秒发送窗口、沙箱文件URI转换等核心逻辑,实现跨设备快速传递链接、文件、图片等内容。支持手机、平板、PC多端适配,提供回环演示与真机实测验证,显著降低接入门槛,提升跨端协作效率。

白天写代码,晚上追AI大模型,偶尔搞点八卦 开源动态|技术干货|实习机会|生态活动 我负责分享,你负责变强 190

React Native 鸿蒙实战:给应用接入小艺语音指令,跑通 Skill 声明到操作闭环

本文介绍如何在 React Native 鸿蒙(RNOH)工程中实现小艺技能闭环,通过开源库 react-native-ohos-ai-agent 封装技能声明、语音指令接收、端侧执行与结果回传全流程。针对三方应用权限限制,精准定位可操作边界,实现“被唤起→执行→反馈”链路贯通。结合五张真机截图验证:技能注册、指令匹配、意图上报、智能体调起及对话层弹出等关键节点均成功,完整打通语音交互闭环,助力应用无需入口即可被用户“叫”到。

白天写代码,晚上追AI大模型,偶尔搞点八卦 开源动态|技术干货|实习机会|生态活动 我负责分享,你负责变强 181

Flutter 鸿蒙实现精准碰一碰分享:tap_share_ohos 三方库打通真机传文件与传卡片

本文针对Flutter在鸿蒙系统上“碰一碰”分享功能缺失的痛点,基于DevEco Studio 26.0、HarmonyOS 7.0 API 26与Flutter 3.41.9实测环境,提出并实现开源库tap_share_ohos。该库封装NFC、Share Kit、权限管理及分布式能力,通过Dart门面层统一接口,利用MethodChannel与BasicMessageChannel对接原生ArkTS逻辑,实现文件与卡片的碰一碰分享。真机测试显示,可无缝调起系统分享面板,支持华为分享接力

白天写代码,晚上追AI大模型,偶尔搞点八卦 开源动态|技术干货|实习机会|生态活动 我负责分享,你负责变强 173

Flutter 鸿蒙实战:用三方库接入小艺语音指令与智能体,跑通 Skill 声明到操作闭环

本文基于 flutter_ohos_ai_agent 三方库,实现 Flutter 应用一键调起鸿蒙小艺智能体。针对跨端框架对接鸿蒙 AI 能力的碎片化、环境差异等痛点,通过插件封装系统 Kit 能力,提供统一 Dart API。实测显示,模拟器与真机均支持文本/语音指令闭环,真机可完整调起小艺面板并回传事件。核心原理为:利用 ArkUI 承载页桥接 FunctionComponent,通过 MethodChannel 与 EventChannel 实现 Flutter 与原生能力双向通信,完成从语音识别到

白天写代码,晚上追AI大模型,偶尔搞点八卦 开源动态|技术干货|实习机会|生态活动 我负责分享,你负责变强 154

RNOH 原生内存泄漏定位与治理:借助 LeakyGuard 实现图片解码降采样、LRU 字节缓存、资源生命周期管控,长列表图片页面峰值内存优化

本文面向 RNOH 0.84 长列表图片场景,剖析滑动数分钟后进程被系统杀掉的根因:原图解码尺寸失控、缓存按条数限流、PixelMap未显式 release。基于自研LeakyGuar,TurboModule 库,给出 desiredSize 真降采样、字节预算 LRU 缓存(逐出必 release)、资源登记与快照 diff、卸载即释放 Hook 的闭环方案,实测单图内存降 98.6%,24 图峰值由 1098.6MB 降至15.8MB。并总结双侧注册、ArkTS 语法差异、vp 转像

白天写代码,晚上追AI大模型,偶尔搞点八卦 开源动态|技术干货|实习机会|生态活动 我负责分享,你负责变强 321

Flutter 鸿蒙空间音频实战:让音乐播放器的声音“长出方位感“

本文通过一个真实运行的 Flutter 工程,系统解析了在鸿蒙系统上实现空间音频的三大核心问题:基于双耳时间差(ITD)、声级差(ILD)和频谱整形的方位感算法;耳机切换与音频焦点管理;以及播放器与音效的集成。项目使用自研插件 spatial_audio,结合原生 HarmonyOS 接口,实现了跨设备的空间音频体验,支持普通耳机,无需硬件依赖,并提供实时参数反馈与系统状态监听。附带完整代码仓库与实测效果展示,为 Flutter on HarmonyOS 的音频开发提供了可复用的技术方案。

白天写代码,晚上追AI大模型,偶尔搞点八卦 开源动态|技术干货|实习机会|生态活动 我负责分享,你负责变强 298

Flutter 鸿蒙 HiTrace 请求归因:图片压缩等待时,主线程在做什么

为定位鸿蒙平台图片压缩性能瓶颈,我在 flutter_native_image 插件中新增可选的 HiTrace 阶段追踪功能,支持按请求开启解码、缩放、编码与资源释放阶段的耗时分析。通过对比模拟器与真机(华为畅享 100 Pro Max)数据,精准识别出耗时主要集中在解码与编码阶段,显著提升诊断效率。相关代码已提交至官方仓库,助力开发者快速定位性能问题。

白天写代码,晚上追AI大模型,偶尔搞点八卦 开源动态|技术干货|实习机会|生态活动 我负责分享,你负责变强 2万+

Flutter 适配鸿蒙折叠屏铰链角度按需订阅:支架调节页用完即停与重入实测

本文介绍对 Flutter 三方库 dual_screen 的优化:针对支架调节页等短时观察场景,保留原有缓存入口的同时,新增按需订阅机制。通过按需启停监听,实现页面退出后停止原生回调,避免无效数据更新。实测显示,无消费者时原生回调从3条降至0条,重进页面则等待新事件,更符合临时工具页的使用逻辑。完整代码已开源,支持鸿蒙折叠屏角度动态感知,适用于需精准控制生命周期的折叠屏应用开发。

白天写代码,晚上追AI大模型,偶尔搞点八卦 开源动态|技术干货|实习机会|生态活动 我负责分享,你负责变强 2万+

Flutter 适配鸿蒙手表屏幕形状:让计时卡片按圆屏和方屏布局

本文基于 wear_plus 1.2.4 版本,为鸿蒙系统补全屏幕形状查询功能,使 WatchShape 能正确返回 round 等形状信息。通过在原 Dart 接口不变的前提下,新增鸿蒙平台处理器,实现与 Android 一致的异步查询逻辑。对照实验验证:适配后页面可从“查询未接入”变为“圆屏已确认”,日志成功接收系统回执,布局行为保持一致。完整代码开源至 oh-flutter/wear_plus,支持 Flutter 鸿蒙穿戴设备开发。

白天写代码,晚上追AI大模型,偶尔搞点八卦 开源动态|技术干货|实习机会|生态活动 我负责分享,你负责变强 2万+

Flutter 优化鸿蒙剪贴板大图复制卡顿:从主线程同步阻塞到异步文件描述符直解

针对鸿蒙系统下 flutter_image_clipboard 插件复制高清图片时阻塞主线程的问题,本文提出三项优化:异步文件描述符直解、异步剪贴板写入及原生资源逆序释放。实测显示,模拟器事件循环最大间隔从300.32ms降至54.36ms(降幅81.9%),真机上更从133.20ms降至11.20ms(降幅91.59%),显著提升页面响应性。完整代码已开源,支持直接使用与社区交流。

白天写代码,晚上追AI大模型,偶尔搞点八卦 开源动态|技术干货|实习机会|生态活动 我负责分享,你负责变强 2万+

Flutter 三方库 petalmaps_ohos 的 OpenHarmony 适配实战(0 → 1 全记录)

本文详细记录了从零构建 Flutter 三方库 petalmaps_ohos 并适配 OpenHarmony/HarmonyOS 平台的全过程,涵盖项目初始化、原生实现(基于 ArkTS 和 MethodCallHandler)、插件注册、功能验证及升级至 HarmonyOS SDK 26 的关键步骤。重点解析了为何需实现 AbilityAware 获取 UIAbilityContext 以确保地图调起成功,并通过分层架构、枚举封装与兼容性设计,实现功能完整、易用且低维护成本的“调起系”地图插件,

白天写代码,晚上追AI大模型,偶尔搞点八卦 开源动态|技术干货|实习机会|生态活动 我负责分享,你负责变强 63
上一篇: 如何写出高质量的Prompt
下一篇: Voyager:「我的世界」中的 Agent
AtomGit 代码君
AtomGit 代码君 企业官方账号 企业官方账号
博客等级 码龄6年 2万+粉丝 865原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值