2025-01-24 08:06:14
这里记录每周值得分享的科技内容,周五发布。([通知] 下周春节假期,周刊休息。)
本杂志开源,欢迎投稿。另有《谁在招人》服务,发布程序员招聘信息。合作请邮件联系([email protected])。
香港历史建筑"和昌大押",布置了一条盘旋两层楼的金蛇,迎接蛇年。(via)
大概两周前,我就在想,龙年的最后一期周刊,要写什么?
正好这一个月,有很多新发明、新技术发布。我想到,可以把它们放在一起,作为下一年的展望。
编辑过程中,它们勾起了我的一点回忆。
十年前,我接了一个活,为北京的一家杂志写文章,向普通读者介绍技术的新进展,以此赚一点稿费。写久了,我就有一个感觉,技术进展太快了,快于所有人的预期。我明明写的是真实事件,但是很多时候像在写科幻小说。
就是在那个时候,我开始意识到,那句有名的话是千真万确:"未来已来,只是尚未流行"。那些我们觉得很遥远、很科幻的事情,其实已经是活生生的现实,很快就会强烈地、不可避免地影响每个人的生活,可能是好的影响,也可能是不好的影响(技能过时了,行业消失了)。
2017年,我把那些文章结集,起了一个书名《未来世界的幸存者》,表达我的这种想法,希望读者对即将到来的时代变革有所准备。
十年后的今天,世界仿佛全然不同,我发现自己还在做同样的事情,还在介绍那些像科幻小说一样的真实技术。不同的是,我已经很明白了,为未来做准备,就是在为现在做准备,做一个未来世界的幸存者,就是做一个今日世界的幸存者。
1、AI 陪护
新加坡最近世界首个将 AI 引入了养老院,用来陪护老人。
这个 AI 是一个女护士的样子,每天早上带领老人做早操、玩游戏、唱歌。
她承担不了具体的医疗照护工作(比如喂饭打针),但是可以一天24小时,跟老人互动聊天,减少孤独感。
她还会按时提醒老人吃药,一旦侦测到老人有异常,立刻发出警报。
这是一个信号,养老行业很可能是 AI 和机器人最先落地的传统行业,因为老龄化社会实在太缺少照护人力了。
2、澳网动画直播
澳网公开赛正在澳大利亚举行,组委会为国际观众准备了 3D 动画直播。
它将真实的运动员和比赛场面转成了实时的 3D 动画,配上球场原声和评论,逼真地还原了比赛。
在欧美,澳网是付费观看直播,很多人看不到。免费的 3D 动画直播,有助于让更多的人关注澳网。
该技术使用12台摄像机追踪29个骨骼点,通过实时计算,在两分钟的延迟内生成动画。
这种动画直播,值得各种体育大赛采用。除了免费观看,它还有一个优点,就是相比实况直播,占用带宽小很多,如果做成矢量动画带宽就更小了。
3、边框码
二维码已经得到广泛采用,但是很多场合,它并不是理想的选择。
一位国外程序员打印了一张新年卡片,原想在上面加一个二维码,手机扫描后,可以访问网站。
但是,加了二维码就破坏了卡片的整体设计,于是他想了一个别出心裁的方法。
他为照片设计了一圈特殊的边框(上图),这个边框经过二进制编码,是可以扫码的。
具体规则是,从左上角开始,按照顺时针,黑色方块为0,白色方块为1,按照 ASCII 码,可以还原出一个网址。
这真是一个好主意,将二维码变成边框码,可能适合很多场合。
4、咸味勺
日本麒麟啤酒公司,推出了一种咸味勺,用它吃清淡的食物,也能感到咸味。
它的原理是发出弱电流(勺子自带电池),浓缩食物中的钠离子,从而增加鲜味和咸味。
麒麟公司希望,这种勺子可以减少食盐的添加,同时又让食物不会清淡无味。因为过多摄入食盐,可能导致高血压。
5、自适应遮阳伞
遮阳伞有一个很麻烦的地方,就是有太阳的时候需要打开,没太阳的时候需要收起来。
德国斯图加特大学的一个研究团队,发明了不需要任何能源、自动打开和收起的遮阳伞。
它的奥妙在于,遮阳伞的伞面全部是特殊设计的纤维素鳞片。这种鳞片会随着湿度的变化而展开和卷起。
没有太阳时,湿度高,纤维素材料吸收水分并收缩,导致鳞片蜷曲,相当于遮阳伞收起(上图右)。相反地,太阳直射时,湿度低,纤维素材料释放水分并展开,导致鳞片变平,相当于遮阳伞打开(上图左)。
这种材料还能用来制作窗帘(上图),随着日照自动打开和收起,不需要消耗能量。这对于那些日照充分的热带地区,可能是非常重要的发明。
6、Pi Box
树莓派是最流行的单板计算机,使用时,需要自己准备一大堆外设,很不方便也不好携带。
一位印度开发者,为树莓派设计了一个外壳,起名为 Pi Box,令人耳目一新。
这个外壳将树莓派、电池、液晶显示屏封装在一起,并配上了提手。
它看上去美观,又很实用,让人很想要一个。
作者已经将外壳和供电电路的设计,都公开了,你可以自己动手做。
7、纸板支架
一家韩国设计公司,发明了再生纸制作的笔记本电脑支架。
这家公司称,只需要45克再生纸,就能支撑世界上最重的笔记本电脑。
它的折纸结构,还能保持通风,有助于笔记本散热。
不用的时候,可以把支架收起来,厚度只有3厘米,非常轻巧。
支架的凹口还能放手机。
8、卷屏笔记本
联想展出了世界第一台卷屏笔记本。
这台笔记本打开后,14寸的屏幕可以向上展开为16.7寸。
它的重量为1.7公斤,预计将在今年6月份发售,价格未知。它的屏幕来自三星公司。
如果下一步能够推出左右扩展的带鱼屏笔记本,市场估计就更大了。
1、如何减少 Docker 的日志体积(英文)
Docker 容器会产生日志,长年累月变得越来越大,本文教你怎么减少日志文件的大小。
2、如何包装 try...catch(英文)
JavaScript 语言的 try...catch 用起来非常不直观,作者提供了一种方法,将其包装成函数用法。
3、iTerm2 的一些鲜为人知的功能(英文)
iTerm2 是 Mac 平台的终端模拟器,有许多内置的功能,但是很多人都不知道这些功能。
4、架设家庭 DNS 服务器的6个原因(英文)
本文介绍为什么你应该在家里架设自己的 DNS 服务器。
5、寻找易记忆的质数(英文)
本文介绍数学家如何寻找容易记忆的质数,其中提到两个大质数:1234567891 和1、2、3、4、5、6、7、8、9、10、9、8、7、6、5、4、3、2、1(把顿号去掉)。
6、Python 的链式表达式(英文)
作者作为面试官,发现面试者用了上图的奇怪语法。他认为这是错的,但实际却是 Python 的合法语法。
7、推特的纯 CSS 点赞效果(英文)
推特的点赞按钮是一颗心(上图),点击后出现一段动画效果。它是用 CSS Sprite 实现的,本文介绍如何做这个效果。
1、DeskPad
一个开源的 Mac 应用,在应用窗口里面,新建一个虚拟桌面,便于当众演示或分享给他人。
一个 JS 库,对两个对象或数组进行 diff 操作,返回差异的部分。
一个 VS Code 插件,会在编辑器界面插入一个小宠物(小猫、小狗、小鸭等),显示不同动画,提升工作效率。
一个 Web 应用,可以根据击键声,判断输入内容,另有 App。(@ZhuoZhuoCrayon 投稿)
5、筷字输入法
开源的安卓汉语拼音输入法。(@flytreeleft 投稿)
输入网易云音乐链接,自动提取歌曲信息,生成音乐海报。(@aidaox 投稿)
基于 Web Audio API 实现纯前端的音频处理工具。(@RylanBot 投稿)
一个基于 React 的移动端 web 应用模板。(@sankeyangshu 投稿)
9、Audiblez
这个工具可以将 Epub 电子书转成有声书,支持中文。
10、PhotoStack
为图片添加水印的在线工具,代码开源。
12、story-flicks
一个开源的 AI 工具,一句话生成故事短视频。(@alecm20 投稿)
Yjs 是多个客户端实时同步状态的 JS 库,这里是它的官方互动教程。
2、1000行代码的操作系统(Operating System in 1,000 Lines)(英文)
免费电子书,讲解如何用 C 语言一步步从头构建一个小型操作系统。(@sir2024 投稿)
这张地图列出欧洲各国程序员的平均工资,可以看到第一名是瑞士,第二名英国,第三名爱尔兰,总体比美国低不少。
4、玛雅金字塔
玛雅金字塔的 3D 游览,包括内部隧道。
1、嘉兴火车站
嘉兴火车站,初建于1907年,2019年改建,2021年6月完工启用。
改建后,整个火车站搬到地下,是中国首个全下沉式火车站。地面腾出大量公共空间,改为公园。
设计师马岩松希望将其打造成"森林中的火车站",集火车站与公园于一体。
"中国的火车站一个比一个大,像城市中一个个高大的宫殿,人在其中却感到非常渺小,周边通常是大马路、高架桥、和没有人去的大广场。我想,城市中的火车站有没有可能不追求宏大的纪念性,而具有优美的环境,舒适宜人的尺度,和便捷、人性的交通与城市功能?成为让人们不只是奔波,而是愿意停留、放松的城市公共空间?"
2、仙女座星系全景图
仙女座星系就在银河系的旁边,是人类肉眼可见的最远星系。
天文学家利用哈勃太空望远镜,创建了一幅仙女座星系全景图,包括4.17亿像素,由600多张照片拼接而成。
这张全景图包含了2亿颗恒星,但仙女座星系估计总计有一万亿颗恒星,所以照片拍到的只是很小一部分。
下面是这张全景图的局部。
如果建筑师的工作条件像程序员一样,那么他可能收到下面这样的工作指示。
亲爱的建筑师先生!
请为我设计并建造一座房子。我不太确定我需要什么样的房子,所以你应该自行判断。
我的房子应该有两到四十五间卧室。当你把蓝图带给我时,我会做出我想要的最终决定,到时你只需确保能够轻松添加或删除卧室即可。
另外,请给我提供每种配置的成本明细,以便我可以任意选择一种。
请记住,我最终选择的房子的成本必须低于我目前居住的房子。但是,请确保改正我当前房子存在的所有缺陷(比如,厨房地板会振动,以及墙壁几乎没有足够的隔热层)。
在设计时,还要记住,我希望每年的维护成本尽可能低。
请注意在房屋的建造中使用现代设计实践和最新的材料,因为我希望它成为最新想法和方法的展示场所。但请注意,厨房的设计应能容纳我的1952年冰箱等物品。
请务必仔细权衡所有这些选项并做出正确的决定。然而,我保留否决您做出的任何决定的权利。
当你专门为我设计这座房子时,请记住,迟早我必须把它卖给别人。因此,它应该能够吸引各种各样的潜在买家。在最终确定计划之前,请确保我所在地区的人们一致认为他们喜欢这座房子的功能。
现在请不要用小细节来打扰我。你的工作是制定房子的总体规划。例如,现阶段不需要选定地毯颜色,但是请记住,我的妻子喜欢蓝色。
另外,现阶段不要考虑获取建造房屋本身的资源,您的首要任务是制定详细的计划和规范。然而,一旦我批准了这些计划,我预计房子将在48小时内准备好施工。
请准备一套完整的蓝图。目前没有必要进行真正的设计,因为它们将仅用于施工投标。但请注意,您将承担因后期设计变更而导致的任何建筑成本增加。
您一定很高兴能够从事这样一个有趣的项目!能够使用最新的技术和材料并在设计中获得如此的自由度是很少见的。请尽快与我联系并告知您完整的想法和计划。
附:我的妻子刚刚告诉我,她不同意我在这封信中给你的许多指示。作为建筑师,您有责任解决这些差异。我过去曾尝试过,但未能实现这一目标。如果你不能承担这个责任,我就不得不另找建筑师了。
1、
OpenAI 相比 DeepSeek 有无限的资金,但是无限的资金能做的只是6个月~12个月的领先优势。
-- Hacker News 网友,评论本周发布的 DeepSeek R1 模型性能相当于 OpenAI o1 模型
2、
人的智力高低,未来不会像现在这样重要,AI 可以弥补人的智力。提出正确问题的能力,在未来比找到答案的能力更重要。
-- Sam Altman,OpenAI 公司的 CEO。这令人想到,中国的应试教育考察的是,谁能记住最多的正确答案,真的需要改了。
3、
爱因斯坦一定承受了沉重的心理负担。到处都是白痴。
-- 大卫·林奇,美国著名电影导演,上周去世
4、
在中国有一种很奇怪的现象,互联网公司喜欢把 API 称为"开放平台"。
例如,微信有一个"开放平台" open.weixin.qq.com,支付宝也有一个 open.alipay.com,还有阿里云 open.aliyun.com。
5、
SpaceX 公司的每一项战略,都是根据是否有利于登陆火星来评估的,这解释了那些在外界看来疯狂的举动。在 SpaceX 看来,无法登陆火星才是唯一重要的风险。如果马斯克觉得,摧毁 SpaceX 公司会增加登陆火星的机率,他会毫不犹豫地这么做。
-- SpaceX 公司传记《Reentry》(重返大气层)的读后感
技术写作的首要诀窍(#288)
停止寻找的最佳时间(#238)
音乐是反社交(#188)
失业难以避免,重构人生规划(#138)
(完)
2025-01-17 08:17:52
这里记录每周值得分享的科技内容,周五发布。
本杂志开源,欢迎投稿。另有《谁在招人》服务,发布程序员招聘信息。合作请邮件联系([email protected])。
武汉光谷是今年春节晚会的分会场,将表演灯光秀,非常有科幻感。(via)
下面是过去的笔记,我读到有意思的文章时,记录下来的感想,每一则都不长。
前几天翻阅,觉得可以放在一起,重新发布,今天先发四则。
银行存款有利息,存得越久,利息越多。
工作也是一样,也有利息。如果今年的工作可以节省明年或未来的工作时间,就是一份有利息的工作。
工作有利息,意味着你未来的工作时间会变少,多出来的时间,就可以去做别的事情,创造更多的价值。
这提示我们:
(1)不要轻易更换工作领域,否则以前积累的利息就作废了。只有在同一个工作领域,才可能产生长期积累,以前的工作为以后打基础,最终产生巨大的利息。
(2)在职业生涯的早期,积累效果最好,最容易产生复利。开始积累越晚,产生复利就越少。
(3)有些劳动没有积累效果,不会产生利息,比如重复性的机械劳动(快递、咖啡店员、门卫......),你明年还是要重复做这些事情。
(4)最好的人生策略就是,找到你深感兴趣、可以长期做下去的领域,在上面投入大量的工作时间(包括质量和数量),然后随着年龄增长,享受以前工作的复利。
巴菲特说,他考察候选人,就看三个"i"。
- integrity(正直)
- intelligence(智慧)
- initiative(主动)
这三个"i"当中,"主动"最重要。"正直"和"智慧"的人到处都是,但如果不主动,不是自己想去做些什么,就什么也不会发生。
1974年,一个美国哲学家提出一个假设,如果世界上有"快乐机",只要插上电源,就能带来源源不断的快乐,并且无法分辨,这种机器快乐与现实世界的快乐有何不同。
哲学家说,我们就可以观察人们的选择。
如果大多数人选择快乐机,而不是现实生活,这就证明人生的目标是体验尽可能多的快乐(享乐主义)。
当时因为不可能造出快乐机,所以无法验证他的假设是否正确。现在不一样了,有了游戏机、VR 头盔、短视频平台......
未来,你需要三种能力。
(1)专业能力。你需要有一个专长。
(2)写作能力。未来是远程工作,团队成员分散在各地,以写作----而不是当面交流----作为主要的沟通手段。
(3)视频制作能力。以前,文字能影响大众,现在视频是最强的大众传播渠道。如果你能制作好看的视频,将想法和产品可视化,就更容易让更多用户看见。
本周介绍一个很特别的浏览器自动化工具:Midscene.js。
它的最大特点,就是自然语言驱动(需要自行接入 AI 模型),操作浏览器,以及理解网页内容,将结果以 JSON 数据返回。
大家可以安装它的浏览器插件,直接输入自然语言指令,进行体验。
比如,交互指令(点击搜索按钮)、查询指令(返回所有商品的链接)、断言指令(页面是否有三个按钮)。
有了它,你可以编写 YAML 脚本,完成浏览器自动化;也可以将它接入 Puppeteer 和 Playwright,让后两者接受自然语言指令。
使用自然语言驱动之后,自动化脚本变得容易维护、效果更稳定。
总之,如果你需要浏览器 UI 测试,或者抓取网页数据,就不要错过 Midscene.js。它在 GitHub 已经获得2700颗星。
1、VR 审判
美国最近的一起民事案件的审判中,被告律师让法官戴上了 VR 头盔。
律师说,他们制作了一段 VR 动画,可以让法官从被告的视角,沉浸式了解整个案件的过程。
这是历史上第一次,法庭审判使用 VR 头盔。
所有人在法庭上都戴着 VR 头盔,场景很魔幻。完全可能的是,整个审判以后可能都会搬到虚拟世界,不必所有人到场。
2、亚马逊最大的树
亚马逊原始森林有无数棵树,没人知道哪一棵最大。
一个美国科学家通过卫星照片,找到了一棵可能是亚马逊最大的树。
卫星照片只能拍到树冠,只要识别出最大的树冠,就应该是最大的树。
科学家发现,有一棵树的树冠,直径超过60米,相当于树下可以停五辆头尾相连的大巴,可谓树王。
3、其他
(1)中文互联网语料资源平台发布,一共 2.7TB 中文资料,向社会开放,专门用来训练大模型。
(2)一位国外用户购买了亚马逊的视频会员,震惊地发现,电视机明明开了静音,但是广告时间居然会自动取消静音。
1、一个副业应用的开发心得(中文)
本文总结2018年作者为自己的安卓应用,加了一个收费功能的开发心得。(@javayhu 投稿)
2、俄罗斯和乌克兰各自有哪些知名软件?(中文)
本文介绍了两国的知名软件,都有不少很厉害的项目。(@mzhren 投稿)
3、为什么要学习写编译器(英文)
作者谈为什么你应该试试自己写一个编译器,并且提供了三个入门的学习资源。
4、国际数学奥林匹克金牌得主的去向(英文)
国际数学奥林匹克是高中生的数学比赛,作者做了一个调查,历届金牌得主后来怎么样?
5、AWS S3 与 Cloudflare R2 比较(英文)
AWS S3 是一个老牌的存储服务,Cloudflare R2 是它的新兴对手。本文比较这两种服务。
6、无限滚动轮播的 CSS 实现(英文)
本文教你只用 CSS 实现类似弹幕的无限滚动轮播效果,还能用鼠标悬停。
7、如何将笔记本用作第二个显示器(英文)
一篇电脑使用的教程,如何将笔记本当作显示器使用。
1、barba.js
一个 JS 库,让网站页面的切换产生平滑的动画效果。
2、httpdbg
一个 Python 程序的桌面调试器,在类似浏览器控制台的环境里调试 HTTP 请求。
一个 macOS 桌面程序,让用户播放 B 站收藏的音乐。(@609529897 投稿)
免费的 App 预览图制作工具,支持华为、小米、OPPO、VIVO、鸿蒙、AppStore的应用商店预览图制作。(@ovelv 投稿)
5、猫步简历
免费开源的简历制作工具,提供各种模版和主题,可以定制化模块。(@Hacker233 投稿)
开源的 macOS 应用,打字时模拟机械键盘和打字机的声音,有200多种声效。(@jaywcjlove 投稿)
一个 Chrome 插件,点击时,不在新的标签页、而在页面浮层里打开链接。(@zerosoul 投稿)
该工具用于下载 Docker 镜像,无需 Docker 环境,支持自定义仓库地址,配置国内镜像源。(@topcss 投稿)
9、壁纸样机生成器
生成电子设备壁纸效果图的免费工具。(@leven-z 投稿)
在线博客文章解析下载工具,支持微信公众号/博客园/CSDN/掘金/简书/思否等平台,可以保存成多种格式。(@GailZhangJY 投稿)
基于 Flux.1-DEV 模型的 AI 图像生成网站,免费、无使用量限制、不需要注册。(@markliuyuxiang 投稿)
Chrome 浏览器扩展,一键查询不同 AI 。(@taoAIGC 投稿)
将播客或音频转录成文本,并给出摘要,基于 Next.js 和 OpenAI Whisper,代码开源。(@winterfx 投稿)
4、Get Your Perfect Chinese Name
AI 给外国人起中文名字。(@syhdeclan 投稿)
精选中文科技文章的阅读平台。(@ginobefun 投稿)
2、自洽的程序员
一本中文电子书,作者分享如何调整心态,解决职场常见问题,提供在线阅读。(@zhangchenchen 投稿)
3、我的 3D 主页
作者用 React Three Fiber 构建的 3D 个人主页,非常华丽。
4、Staying
代码可视化网站,可以将 Python 和 JS 代码的运行步骤,以动画形式展示,内置了许多常见算法的演示。(@lezhu1234 投稿)
1、错误的数学
一位美国网友注意到,一家设计公司在社交媒体上,发布了下面的图片。
图片声称,33000英尺(1万米)高空的飞机,比5000英尺(1500米)的飞机,在飞向同样目的地时,花费的时间是后者的4倍(假定飞行速度相同)。
这位网友第一反应是,这是在开笑话吗?它为什么忽略地球半径。
地球半径(设为 R)大约是1800万英尺,这意味着外圈长度只比内圈,多了不到1%。
而且,由于33000英尺高空的空气阻力减小,该高度的飞行时间实际上可能更少。
2、报时球
报时球(time ball)是19世纪港口使用的一种报时装置,供海上的水手校准时间。
平时,球都在杆子顶部。每天中午1点,球就会落到杆子的底部,看到的人就知道1点到了。
在1点前5分钟,球会落到杆子的一半,让大家做好准备。完全落下后,过了两三分钟,球就会重新升起。
1、照明的历史
工业革命之前,世界是漆黑的,灯光极其昂贵,火是唯一的人造光源。
历史上,人造光一直是富人和有权势的人的特权,生产和维护既费力又肮脏,可用性和质量都很差。穷人很难获得人造光,总是生活在黑暗中。
古代房屋在夜晚有蜡烛照明,是巨大财富的标志。当时,蜂蜡制成的优质蜡烛是最好的光源,但天然蜂蜡的供应有限,加上手工制作的繁琐,除了最富有的人之外,其他人都买不到优质蜡烛。
一位作家写道:"打开你的冰箱门,你召唤出的光线比18世纪大多数家庭所享受的光线总量还要多。"
后来人们发现,鲸油(鲸鱼的皮下脂肪)是更好的蜡烛材料,燃烧时发出干净、稳定的光,是工业革命早期了最好的照明,但它也非常昂贵。
捕鲸业为世界带来了照明,但也将一些鲸鱼物种推向了灭绝的边缘。仅在1700年至1800年间,为了得到鲸油,就至少有300,000头鲸鱼被屠杀。
1800年代初,欧洲和美国出现了燃气照明,燃烧煤气来发光。然而,燃气照明的安装和维护费用昂贵,而且有危险。所以,煤气灯一般不用在家里,而用在工商业和大城市的路灯。
煤气灯很亮,比之前的任何灯至少亮20倍。使用燃气照明是人类第一次体验明亮的照明。
1846年,天然气生产的副产品煤焦油(简称煤油)做成灯,用来照明。煤油开始取代鲸油,导致照明成本直线下降,并且燃烧时明亮、无味。
正是因为煤油,夜间第一次变得明亮了,天黑后也能生产和娱乐。
19世纪后半期,托马斯·爱迪生(Thomas Edison)发明了电灯,电照明的时代从此来临。
1、
人类一种可能的未来是,人工智能精英坐拥惊人的财富,与世隔绝,然后拿出最少量的施舍,来保证广大的失业人员不闹事。
-- 李开复《AI·未来》
2、
互联网早就不是缺少管制、充满颠覆性创新的领域了,如今人们正在寻找一种新的监管和治理框架,以应对极少数大型数字企业对互联网的垄断。
3、
如果你仔细想想,最好的书实际上是一个极其漫长的咒语,它让你在余生中变成另一个人。
-- @thisone0verhere.bsky.social
4、
父亲要求我,只要有时间,就总是参加葬礼,哪怕这对我有一些不方便和情绪压抑。因为这样做,你就参与分担了他人生活中那些不可避免的、偶尔发生的灾难。
-- 《总是参加葬礼》
5、
我不明白,99%进入 AI 底层模型开发的公司,能得到什么好处?
如果 AI 模型真的像宣传的那样,能做到任何事情,那么大多数公司只需要等待,就能获得跟自行开发模型同样的好处。很多公司似乎都非常害怕错失良机,其实根本不存在这一点。
(完)
2025-01-16 08:23:18
AI 生成代码,早不是新鲜事了,但是 AI 生成微信小程序,似乎还不多见。
究其原因,大概是小程序的开源项目较少,模型训练不好搞。
上周,我遇到腾讯的同学,得知"腾讯云开发"最近有一个大的版本更新,大幅加强了小程序的 AI 能力。我还挺期待的,腾讯自己搞小程序 AI,要比其他人更合适。
后来,我试用了本次更新的 AI 功能,有一个强烈的感觉,微信小程序可能很快就会成为国内 AI 应用(又称"智能体")的主要载体。
因为本次更新以后,小程序调用 AI 模型,以及生成智能体,变得非常方便。并且,小程序从 API 到开发工具,都把 AI 整合进去了,整个开发过程都有 AI 辅助,不仅开发效率提高了,而且大量代码可以通过 AI 生成。
下面就是我的试用过程的介绍和记录。这些功能都是公开的,大部分已经上线,剩下的也即将发布,大家现在就可以跟着做,体验 AI 生成小程序。
我的第一步是体验小程序的"云开发助手"(又称云开发 Copilot)。它的作用是通过 AI 加快小程序的开发。
它的全功能版,目前要通过"腾讯云开发平台"网站使用。
此外,还有一个游客版的小程序,可以体验部分功能。如果你手边只有手机,可以先试试游客版。
手机上,点击"从 AI 开始探索云开发",就能进入。
手机版看一下就可以了,正式的开发还是要使用网站。本文下面的内容,都是基于网站的全功能版。
首先,登录"云开发平台"后,页面右下角就会出现小助手图标。
点击它,就能打开"云开发助手"。
它的右上角有一个"全屏"图标(下图)。
点击进入完整界面。
"云开发助手"的主要功能如下图。
这些功能可以分成两大类,一类是文档相关的功能,另一类是代码生成。
先看看文档功能。
(1)Copilot
这个功能是 AI 问答引擎,任何关于小程序的问题,都可以向它提出。
这大大减少了文档查阅,有些简单的函数,可以让它生成,还能让它教你如何开发小程序。
(2)AI 识图
这个功能是通过上传页面截图(或者设计稿),生成需求文档。
我上传了一张抽奖的转盘。
它生成了如下的需求文档,用文字详细复述了这个页面的界面布局、设计细节、功能需求等。
大公司的程序员,一般都是根据产品需求文档(PRD)进行开发,所以这个功能可以简化产品经理的工作,需求文档也可以作为 AI 代码生成的文字记录保存下来。
生成的需求文档,下一步可以传入"云开发助手",来生成页面代码,所以它也是 AI 生成小程序的中间步骤。
(3)写需求高手
这个功能跟"AI 识图"作用相同,都是生成需求文档,区别是它输入文字描述。
由于不需要截图,它适合只有功能需求、没有设计稿的场景,即让 AI 来设计页面。
接着,我们就来试试,让"云开发助手"生成小程序的前端代码。
选择左侧菜单的 "AI 生成可视化应用",这个功能就是根据截图或者文字描述,直接生成应用(Web 或者小程序)。
上传一张微信页面的截图。
它会自动生成该截图的页面代码,可以预览效果(下图)。
可以看到,生成的页面还原了原始布局,但是有许多细节差异。
目前阶段,好像还做不到100%还原,比较适合当作代码基础,在它生成的页面基础上,进行手动细节调整。
除了上传截图,还可以输入文字描述(或者上一节的需求文档),也能生成应用。
让它生成程序员的个人小程序,效果还是可以的。
预览初步效果后,你可以在云开发平台上,直接线上编辑代码。
编辑完这个页面以后,还可以反复这个过程,向小程序添加更多页面(下图)。
有了多个页面,就能设置页面之间的跳转,这样就基本是一个可用的小程序了。
调整小程序的样式时,云开发助手还提供了一个贴心的功能"AI 编辑组件样式",也就是根据指令,自动修改样式。
上图就是让 AI 为页面添加渐变背景,这样修改样式,就方便了很多。
大家可能看到了,左侧菜单栏还有一个"AI 生成组件"的功能。该功能用来生成页面的组件,适合为现有的页面添加功能。但是,它暂时只支持 Web 应用,不支持小程序,所以这里就忽略不介绍了。
完成前端开发以后,云开发平台可以直接发布小程序。当然,你也可以复制或者下载代码,通过微信开发工具发布。
小程序除了前端 UI 代码,还需要后端的业务逻辑和数据库读写。"云开发助手"也能生成后端代码,主要用到下面两个功能。
(1)AI 生成云函数
云函数是微信平台在云端执行的函数,可以用来获取各种后端能力。
"云开发助手"可以帮我们生成云函数。下图就是让 AI 生成获取小程序 OPENID 的云函数。
AI 在给出示例代码的同时,还会展示各个文件的写法(下图)。
如果你觉得可以接受,就点击"创建云函数"按钮 ,代码就会进入新打开的云 IDE 环境,用来编辑和调试。
编辑完成后,点击"部署"按钮,就可以将云函数部署到线上了。
(2)AI 生成数据模型
这个模型用来生成数据库的数据模型(也就是"表结构")。
比如,生成一个博客的数据模型,包括文章、作者和评论。
点击"查看",显示一个 JSON 数组,表示数据结构。
点击"确认生成",数据结构就会以表格形式呈现,确认没有问题,就可以保存。
上面都是介绍"云开发助手",即 AI 辅助小程序开发。下面介绍 AI 开发的另一个重头戏:如何做出 AI 智能体的小程序,也就是让小程序本身具有 AI 功能。
还是在"云开发平台",左侧菜单选择 AI+。
这时,页面会让你选择,接入大模型还是开发智能体(下图)。
(1)开发智能体(AI Agent)
这里可以简单把"智能体"想象成一个 AI 对话应用,用户输入要求,AI 给出响应。
腾讯云开发平台将"智能体"的后端大模型,默认指定为腾讯的混元模型。
你自己需要定制开场白、提示词、知识库(你自己的训练材料)。
然后,定制前端界面(对话组件)。
基本流程就完成了:用户在前端界面,根据开场白的提示,输入他的要求,系统收到后,传给后端模型,再将回复展示给用户。
是不是很简单?一个智能体就这样做好了。
(2)AI 大模型接入
如果选择自己接入大模型,页面会根据开发类型(Web/小程序/云函数),给出接入指引。
小程序 API 已经对大模型做了适配,按照指引,只要几行代码就能接入。
具体来说,从小程序基础库3.7.1开始,新增了wx.cloud.extend.AI
对象,专用于 AI。
- wx.cloud.extend.AI.createModel():用来接入大模型
- wx.cloud.extend.AI.bot:用来调用智能体
用了这个 API,就不需要任何 SDK,也不需要后端服务器,系统直接负责 AI 接入,同时处理好鉴权、加密、流式传输,不需要用户介入。
下面是示例代码,详见官方文档。
以上就是我试用的全部内容,我的总体感觉是,这些已经做好的部分,对小程序的开发有巨大的助力。如果你正在开发小程序,一定要试试这些功能。
小程序的 AI 能力,后面还会持续扩展。腾讯希望把云的基础设施、微信小程序、AI 大模型都打通,从而让小程序开发的门槛更低,效率更高。
我听腾讯的同学说,下一阶段有几个开发重点。
(1)用 AI 生成前后端完整的小程序,进一步与微信开发环境打通。
(2)加强 AI 的代码生成能力,搭配小程序模版和低码编辑器,快速生成小程序。
(3)在 AI 的帮助,无痛接入数据库和调用云函数。
(4)客户端、服务端、大模型三者之间数据交互的标准化和统一接口。
上面的每一点,都能解决目前小程序开发的痛点,期待早日看到突破。
(完)