实测 Doubao-Seed-Evolving:把 Windows 桌面图标做成一个会自己运转的小世界 - 努力的小雨

实测 Doubao-Seed-Evolving:把 Windows 桌面图标做成一个会自己运转的小世界 - 努力的小雨

💡 原文中文,约5800字,阅读约需14分钟。
📝

内容提要

本文介绍豆包推出的Doubao-Seed-Evolving模型,专为Coding和Agent场景设计,支持每周更新、1M上下文和长程任务能力。作者用其开发Windows小工具《桌面下班后》,让桌面图标自动活动(如散步、聊天、打架、踢球),通过透明窗口技术不干扰真实桌面。开发中多次反馈问题,模型持续改进,最终实现稳定运行,强调模型适合边做边改的项目。

🔎

延伸解读

模型迭代与项目开发的关系

文章展示了Doubao-Seed-Evolving在真实项目中的迭代过程:模型先给出方案,作者运行后发现隐藏面板后图标消失、默认全量上场等问题,再反馈给模型修改。这种“边做边改”的模式,让模型能根据具体运行反馈持续改进,而非一次性生成完整代码。这体现了Evolving版本按周更新的价值,也说明实际开发中,模型需要与开发者紧密配合,才能解决真实场景中的细节问题。

透明窗口技术的实现要点

实现桌面图标自动活动,关键在于透明窗口不干扰真实桌面。作者通过设置Win32扩展样式(WS_EX_TRANSPARENT、WS_EX_TOOLWINDOW、WS_EX_NOACTIVATE),使窗口不接收鼠标点击、不抢焦点、不显示在Alt+Tab中。同时,仅在桌面为前台时显示角色,避免覆盖其他应用。这些技术细节是保证工具“像桌面一部分”而非悬浮广告的核心,也体现了桌面应用开发中对系统交互的精细控制。

事件调度与性能平衡

为了让图标活动自然,作者设计了事件调度器,通过随机数分配聊天、打架、足球等事件,并设置冷却时间避免重复。同时,将渲染帧率从60FPS降至24FPS,并复用视觉对象,以平衡性能与效果。这表明,在桌面小工具中,合理的事件规则和性能优化比单纯追求高帧率更重要,也体现了对用户体验的细致考量。

Q&A

Doubao-Seed-Evolving 模型相比固定版本有什么核心优势?

Doubao-Seed-Evolving 是豆包推出的专门面向 Coding 和 Agent 场景的 latest 分支,核心是按周持续更新,开发者使用同一个模型入口,背后的能力会随着每周迭代增强,相当于一张永远保持“最新”的模型卡。

Doubao-Seed-Evolving 在上下文和任务能力上有哪些升级?

这次升级最直观的两个点是 1M 上下文和更强的长程任务能力。1M 上下文让模型一次能接住更大的代码仓库、更长的需求和更多历史信息;长程能力则让它在多轮规划、工具调用、代码修改和测试验证中不容易中途丢掉目标。

《桌面下班后》这个工具是如何实现桌面图标自动活动的?

该工具通过扫描当前用户桌面和公共桌面的顶层 .lnk 文件,获取名称和图标后,在透明窗口中绘制角色分身,真实快捷方式不动。透明窗口使用 Win32 样式(WsExTransparent、WsExToolWindow、WsExNoActivate)实现不接收点击、不抢焦点、不出现在 Alt+Tab 中,并且只在桌面在前台时显示角色。

在开发《桌面下班后》时,作者遇到了哪些问题?

遇到的问题包括:隐藏控制面板后桌面角色消失(因为前台窗口判断太死,SpeedBall 成为前台导致舞台暂停);默认显示全部 38 个快捷方式导致画面拥挤;旧版本升级后阵容处理逻辑;面板标题文案未更新等。这些问题都是通过实际运行和反馈给模型后逐步修复的。

《桌面下班后》中的自动事件是如何调度的?

调度器先检查功能是否开启,再检查打架、足球和集体活动各自的冷却时间。一次随机结果会依次落到聊天、打架、足球、集体舞或巡游,例如随机数小于 42 且聊天开启则触发聊天,小于 58 且打架冷却结束则触发打架等。这样既保留随机感,又避免事件冲突。

《桌面下班后》的足球比赛规则是怎样的?

足球比赛规则是当前阵容全员参加,偶数平均分,奇数两队人数最多差 1。足球开始后所有角色被锁进比赛状态,不能同时聊天、打架或换人。代码中先确认所有角色都能参加,再按总人数计算两队人数,奇数时左队比右队多 1 个。

《桌面下班后》的数据存储和隐私保护情况如何?

所有设置、阵容、关系和最近的桌面纪事都只保存在 %LocalAppData%\DesktopAfterHours。程序不读取聊天记录、浏览记录和文档内容,也不会把快捷方式信息发出去。

作者对 Doubao-Seed-Evolving 模型的整体评价如何?

作者认为该模型很适合“先有一句想法,再边做边改”的项目,能先把脑洞拆成需求和风险,再继续写计划、搭项目、跨文件改代码、补测试和打包。虽然第一版不会全对,但模型能根据具体反馈继续查原因、改代码、跑验证,比一次生成完整 Demo 更有用。

🏷️

标签

➡️

继续阅读