AI 开发流程实践小结前言这是我最近在项目开发中逐渐形成的工作方式,也许后续还有别的调整,但目前确实这样。 我在把 iOS 项目迁移到 Android 的过程中。它涉及账号迁移、跨端登录、会话恢复、视频播放、资料读取、系统生命周期和后续发布流程。真正困难的地方,不是让 A...2026-11-06AI
iOS 性能优化实战:从定位瓶颈到控制资源竞争前言一张只有几 MB 的照片,可能在解码后占用几十 MB 内存;一个已经使用 async/await 的页面,仍可能阻塞主线程;一套积极的预加载策略,也可能让正在播放的视频更容易卡顿。 这些现象背后,有一个共同问题:应用做了多少工作、这些工作何时发生...2026-10-30问题
ios 开发中如何系统地排查报错前言高效排错的关键,是把一个模糊的异常,逐步转化成可以验证的因果判断。 错误信息提供线索,日志记录局部事实,调用栈指出程序经过的位置。要找到可靠的修复,还需要回答三个问题: 问题在什么条件下发生? 哪一种解释符合目前的证据? 做什么实验,能够区分几...2026-10-23前端
视频信息流如何做到快速起播:从首个分片到第一帧画面用户滑到一条视频时,期待的是画面自然地动起来。哪怕只等一秒,滚动的节奏也可能被打断;连续几条视频都要等待,信息流就会变得迟钝。 快速起播涉及一整条链路:推荐内容什么时候到达,起播需要下载多少数据,媒体管线什么时候准备好,播放器能否复用,以及画面什么时...2026-10-16问题
在浏览器中实现 VR180 视频播放把一段 VR180 视频直接放进 <video> 标签,通常会看到两幅并排、明显变形的画面。它能正常播放,却不像我们期待的那样,可以转动视角、自然地观察场景。 原因在于,这类视频保存的不是一个固定视角下的平面画面,而是一个覆盖半球的视野。...2026-09-30前端
RAG 查询扩展 — 从一句提问到精准答案前言用户在 RAG(检索增强生成)应用里提出的问题,往往并不是知识库中最容易被检索到的表达。 比如,用户问:“这个产品支持离线使用吗?”而文档里写的是:“客户端提供本地缓存与断网可用能力。” 两者语义接近,但关键词几乎没有重合。若系统只拿用户原句做向...2026-08-15AI
LangGraph 的状态驱动编排机制前言在简单的问答场景中,调用一次大模型就能得到结果;但当任务需要多轮推理、工具调用、条件分支、失败重试、人工审核甚至长期运行时,单纯依赖一条线性调用链很快就会变得难以维护。 LangGraph 的价值并不是“再封装一个大模型调用接口”,而是提供了一种...2026-08-08AI
Pi 介绍与基本使用Pi 是什么?Pi 是一个面向开发者的命令行 AI 编程代理(coding agent)。它能在项目目录中读取、创建和修改文件,也可以运行终端命令,帮助开发者理解代码、实现功能、排查问题和执行常规开发流程。 但 Pi 不只是一个“在终端里聊天写代码”...2026-08-01
Redis 与关系型数据库事务区别前言当我们谈事务时,很容易把 Redis 和 MySQL、PostgreSQL 放在同一个框架里理解:开始事务、执行一批命令、提交或回滚。但这种类比只对了一半。 Redis 的事务更像“把一批指令先排队,再按顺序一次执行”;关系型数据库的事务则是一套...2026-08-01后端开发
让长对话不断线:上下文压缩的方法前言大型语言模型的对话并不是“无限记忆”。每一轮输入、输出、工具调用结果和系统提示词,都会占用上下文窗口。当历史内容逐渐逼近窗口上限,系统必须做出选择:丢弃、压缩,或把信息转移到外部存储。 真正困难的部分不在于“把内容变短”,而在于:如何在减少 To...2026-07-25AI