如何使用AI给S50上点“感情”!

Seestar S50推出后,迅速在各个领域展现出多样的应用,比如作为带娃神器、科普用具,甚至是家庭情趣用品(查看: 从S50入门电子辅助天文(EAA))。在科研领域,也有一些利用S50对再生新星进行大规模观测的项目。

然而,尽管S50在短时间内积累了大量用户和应用场景,我在日常使用中仍感受到许多痛点,比如其功能不够丰富或不够人性化。举个例子,在观测到一个天体后,只能等待图像逐渐叠加显示,而没有更详细的介绍(尽管GoTo界面有一些简单介绍)。其操作页面也较为复杂,没有语音控制,需要通过一个APP进行相对专业的操作。

如何使用AI给S50上点“感情”!

细想之下,这对用户体验的影响还是蛮大的。因为当我想要观星时,通常是在一个较为感性的场景,比如露营或全家在户外。在这种情况下,当我操作S50时,面对它的App,我的思路必须迅速转为理性状态。比如,当我们想观测M31时,我需要先想到M31是一个深空对象,因此不能选择太阳系模式,必须使用观星模式。接着,我要在键盘上键入M31,再按指向等一系列操作。完成这些步骤后,我需要花很长时间将心理状态调整回与周围其他人一致的感性状态。

这种感性、理性、感性的状态切换对用户体验有很大影响。毕竟使用S50看星星只是一个手段,最终的目的是让一家人聚在一起,共同体验一些温馨独特的时刻。

然而,在做了这么多思考和操作以后,我需要相当的时间再进入温馨感性的氛围。如果S50能变得更加智能,整个用户体验会有一个质的飞跃。比如在一个晴朗的夜晚,全家人围坐在草坪上,你只要说“S50,带我们去看仙女座星系”,S50便自动转向目标,为你呈现星空的壮丽景色,那这就太惬意了。

乍一看这个任务仿佛非常困难,因为显然需要大量编程工作。对于许多S50用户来说,缺乏相关背景知识,实则它也的确一点也不简单,即便对于像我这样的专业程序员来说,这也是一项复杂的任务,比如需要对它的API进行逆向工程,这相当复杂。

这里需要介绍一些背景知识:一个程序如果想要控制另外一个东西的话,一般需要一些接口来进行输入输出。以人来类比,比如我想要操作S50指向M31,我需要看一眼APP的界面,这个看的操作就是输入界面。然后我决定需要点深空模式,于是把手指挪到那个位置,点了一下“深空模式”的按钮,这个触摸屏幕的操作就是输出。

一个电脑控制程序如果想要控制S50的App,也需要类似的输入输出的功能。当然因为电脑本身没有眼睛和手,所以它进行输入输出的接口,不像人类一样是图形界面或者叫GUI,而是编程界面或者叫API。

S50虽然对人类暴露了一个GUI,但它并没有对电脑暴露一个公开的API。虽然它内部肯定有一个私有的API,但是我们并不知道这个API的具体形式是什么,也没有办法加以利用。像一些科研院所为了进行再生新星的观测,他们自己进行了逆向工程,或者和ZWO合作搞清楚了这个API的格式,它就可以自己跟S50通话,自己写程序来控制S50来观测。但是我们普通消费者做这样的事情就非常困难。

到了这里似乎就变成一个死胡同了。但我们其实可以另辟蹊径,利用上一个文章中(查看:怎么让“人工智能”帮我们看摊?)提到的多模态AI为我们的控制程序“装上”眼睛和手,通过GUI来操作。换言之,我们可以使用AI直接操控S50的App,为其添加各种附属功能,比如语音控制,或者在GoTo和观测过程中用语音播报相关天体知识。注意这个过程中,我们几乎不需要自己写代码,而是充分利用AI来生成代码。

具体而言,一个关键观察是,iOS的App可以在Mac上运行。因此,我们可以在Mac上运行S50的App,然后使用电脑上的工具,比如Python进行截图。接着,将截图提供给Claude 3.5或者GPT-4.0这样的多模态AI,并说明我们的目标。AI会告诉我们,若要实现这个目标,鼠标应该点击哪个坐标。随后,我们可以在Mac上使用程序控制鼠标点击这个特定坐标,与App进行交互,从而实现对S50的控制。

如何使用AI给S50上点“感情”!

左图是使用的提示词和AI的回答。右图是如果我们真的把AI给出的位置画在图上的话,会发现它差了一点点,点不中“去观测”这个按钮。其中绿色的点和箭头只是演示用。这个图不是AI生成的,而是我们把AI给出的坐标(0.5,0.95)在输入上可视化出来的结果。

如果我们真的尝试通过AI进行操作,可能会发现一些问题。如上图所示,当我们在图上标出AI返回的坐标时,可能会发现它与我们想要的坐标差了一点点,点不上观测按钮。要讲清楚这个精度不足的问题,可能需要深入解释一下AI的具体原理比如Vision Transformer的局限。但如果简单类比的话,就像我们作为人类,看着界面需要输出一个坐标时,往往无法给出特别精确的坐标。原因是图上没有参考线,我们难以判断某个点的坐标应该是0.95、0.93还是0.90。

要解决这个问题也很简单。一种方法是在将图像提供给AI之前,先在图像上绘制一个密集的网格,并标上数字,提供给AI作为参考。这样,AI就能够生成更为精确的目标坐标。这种技术称为Visual Prompting,是使用多模态AI时非常有用的技术。有了这种网格状的Visual Prompting,AI就仿佛带上了眼镜,可以更加准确地输出坐标。比如下面的图中,AI可以输出0.9875的纵坐标,可以点中红色的观测按钮了。

如何使用AI给S50上点“感情”!

左图展示了我们的提示词和AI的回答。右图展示了Visual Prompting以后的结果和AI的回答(绿色圆点)。类似的,这个图不是AI生成的,而是我们把AI回答的坐标(0.50,0.9875)可视化出来的结果。

下面是一个完整的模拟示例分享:

https://poe.com/s/qkmhjFzvyjkqxGAWJH1P

展示如何利用截图、Visual Prompting、多模态AI和自动化点击的思路,实现全自动的GoTo到太阳的过程。

为了方便大家浏览,我也把我们给AI的图像和它的回答用绿色箭头标示在下图。

如何使用AI给S50上点“感情”!

如何使用AI给S50上点“感情”!

如何使用AI给S50上点“感情”!

这只是一个验证性实验,因此略去了安装太阳滤镜等步骤。在这个演示中,它还不是一个全自动的系统,但如果想将其发展为夜晚进行全自动观测的小工具,其实非常简单。只需要向AI描述我们要编写的程序,AI就会为我们生成截图、Visual Prompting等程序,我们就可以直接使用了。如果你对这个方向感兴趣的话,不妨试试看!遇到问题的时候也可以留言讨论。

但总的来说,AI让太多的不可能变成了可能。在一年前我想都不会去想这样的改造,毕竟逆向工程实在太难了。但现在,我们只要截个图,让AI写个程序调用它的API,一切就搞定了,整个过程不超过半小时。AI不仅帮助我们节约时间,更大的作用是让我们有能力去做远远更复杂的项目,思考远远更深入的问题。就算你不会编程,也不妨试试跟AI聊聊天,把日常生活中遇到的问题交给它去做,也许就有了新的启发。返回搜狐,查看更多

责任编辑: