嗨,HN,
我是尼古拉伊,DroidRun 的软件工程师和联合创始人。我们开发了 DroidRun,这是一个基于大型语言模型(LLM)的代理,利用 Android 可访问性树来精确控制和理解用户界面元素。它可以在真实手机和模拟器上运行,并且是开源的。
**起源:**
我们的联合创始人尼尔斯·施密特(你将在演示中看到他)编写了一个原型并分享了一段快速视频。视频迅速走红,在 X 平台上不到两个小时就获得了大约 5 万次观看。那一刻促使我们全力以赴投入到 DroidRun 的开发中,并不久后将其开源。
**工作原理:**
大多数代理仅依赖截图作为上下文。我们不仅这样做,还将可访问性树输入到 LLM 中。这提供了关于用户界面元素的结构性、层次性和空间元数据。
**示例:**
真实用户界面的截图:
[https://imgur.com/a/ePRLpyv](https://imgur.com/a/ePRLpyv)
与之匹配的可访问性 JSON 片段:
```json
{
"index": 3,
"resourceId": "com.android.settings:id/search_action_bar",
"className": "LinearLayout",
"text": "search_action_bar",
"bounds": "42, 149, 1038, 338",
"children": [
{
"index": 4,
"resourceId": "com.android.settings:id/search_bar_title",
"className": "TextView",
"text": "In Einstellungen suchen",
"bounds": "189, 205, 768, 282",
"children": []
}
]
}
```
我们还在截图中用数字标注用户界面区域,然后在树中进行匹配。这种结构使代理能够深入理解屏幕上显示的内容,即使在不同设备类型(如平板电脑)之间也是如此。
这使得在不同设备和屏幕尺寸之间的泛化能力更强。代理可以更自信地执行操作,减少错误。
**当前状态:**
- 最近在 AndroidWorld 排名第一(现在竞争非常激烈)
- 支持真实设备和模拟器
- 在简单和复杂的用户界面任务上表现良好
- 目前 Gemini 2.5 Pro 的表现最佳,但我们正在快速迭代
**接下来的计划:**
我们正在开发一个云平台,您可以在 Android 设备上运行提示,而无需任何设置。想象一下,LLM 在云中控制手机,随时准备测试您的自动化。
**我们在寻找:**
- 来自 HN 的反馈
- 热爱 Android、LLM 和代理的合作者
- 开源贡献者
返回首页
最新
大多数社交媒体上的人不知道如何发短信。他们认为以问候开头并等待回复是礼貌的,因为这是电话礼仪,但却不明白在短信中这样做就像是有人给你打电话,先说“你好”,然后把你放在等待状态。实际上是让对方额外付出精力去猜测你想要什么。
所以我做了这个网站。与其花时间向他们解释这个概念(可能还会显得很无礼),我宁愿把这个链接放在我的个人简介里,或者在他们发信息时直接发给他们。
选择你的名字,选择问候触发语,获取一个链接。(可选选择16种语言中的一种)他们会得到一个友好的解释,说明为什么提供背景信息很重要。你节省了10分钟,大家都受益。
通过清晰表达你的需求,训练你的社交圈尊重你的时间。生活太短暂,不值得和陌生人进行信息乒乓。
附注:这个网站基于 nohello.net 的理念,但增加了其他问候语的选项,并允许在消息中添加自定义名称。同时,它也是开源的! [https://github.com/Kuberwastaken/nogreeting](https://github.com/Kuberwastaken/nogreeting)
大多数分析工具提供10到15种图表类型,然后就结束了。但当这些图表都无法很好地呈现你的数据时,该怎么办呢?
我们在构建CRM仪表板时遇到了这个问题。我们想展示销售代表与未成交交易之间的联系:不仅仅是总数,而是实际的关系。柱状图太平面,表格又太密集。我们需要一个网络图。
问题是,大多数图表库和商业智能工具并不直接支持这种图表。你要么对功能请求说“不”,要么拼凑一个独立的可视化,这样会打破产品的流畅性(没有过滤器、没有交互性、没有主题)。
因此,我们自己构建了这个功能,但以一种仍然与仪表板的其余部分良好配合的方式。Luzmo现在允许你定义自己的图表类型,编写自己的可视化代码,然后像其他图表一样将其放入仪表板编辑器中。Luzmo仍然处理那些繁琐的事情:查询、过滤、主题和图表之间的链接。
最终结果是:
- 销售代表成为网络图中的节点,未成交交易围绕他们旋转。
- 交易规模控制节点大小;胜率控制颜色。
- 一切都能响应过滤器,并且与其他图表自动交互。
教程和GitHub仓库详细介绍了整个过程:设置构建器、定义数据插槽、编写渲染方法,并将所有内容打包以供部署。
我很想听听其他解决类似问题的人的看法:
- 你是否曾经需要一个你的商业智能工具不支持的图表类型?
- 你是自己构建的,还是找到了解决方法?
- 原生交互性与嵌入独立可视化相比,哪个更重要?
阅读完整文章并查看完整代码: [https://www.luzmo.com/blog/build-custom-charts](https://www.luzmo.com/blog/build-custom-charts)