Category: 编程、软件、技术

  • 手搓一个AI赋能的电子书阅读器

    手搓一个AI赋能的电子书阅读器

    我挺喜欢看书的,也挺喜欢看电子书——特别是有些时候,实体书搞不到,那就只能看电子书了。

    之前吧,我用一个非常old的KPW3看书,也不敢抱怨:屏幕小了一点,英文单词翻译弱了一点,中文输入(比如添加笔记)拉了一点,导出功能肋了一点,售后服务是没有一点……但没有别的特别动心的选择。

    这不,AI来了,我感觉我又行了,我编程能力一般,但可以让AI帮我写一个AI赋能的电子书阅读器啊!

    说干就干。今年年初的时候,我萌生了这个想法,从GitHub那里拉了一个现成的Python ePub解析库,然后在此基础上加入自己的功能。

    比起之前的随手0天完成项目,我是很认真地在创作——为此我专门升级了我的显卡呢!

    先说开发工具、AI模型配置。

    我选用了Visual Studio Code作为我的开发工具,同时用GitHub Copilot作为我的AI agent,其中的GPT 5.4作为模型。

    用KPW3看书有一个重要的不便:它的标注功能太弱了。我看书有一个习惯:喜欢划线,有一些单词——特别是拉丁文短语——我想记下来,有一些地方我觉得很有意思——可以进行后续的讨论和写作……

    有了一块很强的显卡后,这些我都想让AI来完成,于是我安装了Ollama,并安装了模型Hermes3作为本地快速查询的模型,然后安装了Gemma4:31b-cloud作为远程模型。

    这么一来,整体应用的框架就算基本成了:

    1. 打开WEB界面,上传书籍,阅读。
    2. 阅读界面可以调整阅读界面、字体名称、字体大小、Light/Dark模式等。
    3. 如果看到我不认识的单词或者专属名词,可以划词翻译或者要求AI给出解释
    4. 如果看到一段话我想加入我后续的讨论和写作,我可以要求AI就此给出讨论要点
    5. 一般地,我可以随手加个批注
    6. 以上所有这些AI产出的、我的内容都可以保存到数据库,以便整理、导出。

    这就是我这个AI电子书阅读器的基本功能了。

    在开发过程中,我基本没有写代码,就是在和我的IDE“聊天”。最终的阅读界面是这样的1

    (上图是模拟纸质背景读书的效果,并显示了我让AI查找Lynch syndrome返回的结果——用的是Cloud模型。)

    回到书籍列表界面并展示深色效果:

    以及本书所有划线部分的内容——导出部分还在开发:

    这个程序的代码我已经放在了GitHub:https://github.com/taylorren/ai-reader,有兴趣的朋友可以克隆一份,启动不一样的电子书阅读之旅

    相关文章


    1. 微信可能会不让我发图片,但我不准备换了。 
  • 让AI更懂你

    让AI更懂你

    如果说在不久前,碳基人类最值得学的“通用语言”是英语,那么到了硅基AI时代,我想再加一个:MD,也就是 Markdown。

    在我看来:只要你想认真使用AI,就最好学会用MD这种轻量级语言来组织表达。

    相信不少人和我一样,会刷到:“我只是拉了一个文件,AI就帮我做好了总结!”,“我写了三行提示,AI就帮我做好了PPT!”之类的标题党。

    我承认,这种情况确实存在——甚至我有时也会这么做,也会得到还算可以的结果。

    但这并不是让AI更懂你、更好为你做事的正确方式。

    原因很简单。自然语言适合聊天,却不擅长精确表达和协作。你随口问一句,AI当然也能答;可一旦你要它整理文章、比较方案、按固定格式输出、修改长文、分步骤执行任务,纯口语就很容易乱。

    而MD的价值就在这里:它能把你的意图结构化。

    比如,你当然可以直接这样说:

    帮我写一个方案,要包括背景目标风险预算时间安排,并且先给结论,再展开分析。

    但如果你用MD把要求写清楚:

    # 任务
    写一个项目方案
    
    ## 输出要求
    1. 先给结论
    2. 再展开分析
    
    ## 内容结构
    - 背景
    - 目标
    - 风险
    - 预算
    - 时间安排
    

    AI通常就会“聪明”得多。因为标题、列表、编号、代码块,这些在我们看来只是格式,在AI那里却是非常明确的路标(信标)。

    不是AI偏爱MD,而是它更容易处理层级清晰、约束明确的信息。

    常用的MD语法其实就那么多。如果要看一遍,也不用找太多资料,直接看 Markdown Guide 的基础语法 就够用了。

    # 标题
    ## 子标题
    
    - 并列要求
    - 并列要求
    
    1. 第一步
    2. 第二步
    
    **重点限制**
    
    > 背景材料
    

    MD最早出现,是为了用更少的标记完成基本排版,本来是个文档工具。但现在,它也越来越适合拿来和AI协作。它训练的并不只是格式习惯,更是一种表达能力:先分层级,再写要求;先给边界,再让AI发挥。写提示、写知识库、写任务单、写会议纪要,都会因此受益。

    支持MD的免费工具有不少。Windows和 Mac上都可以直接用ObsidianVS Code;前者更像笔记本,后者更像工具台。更轻量的编辑器也不少。

    不会MD,你当然也能用AI;但会MD,你往往更容易把需求讲清楚,也更容易让AI稳定地把事做好。

    所以如果今天有人问我:想把AI用好,最值得先学的东西是什么?

    我的答案会是:

    先学会把想法写清楚;而MD,往往是最好上手的起点。

    相关文章

    • [[251218.2026 AI辅助创作指南]]
    • [[251009.assert(编程!=抽烟烫头喝着酒)]]
    • [[250204.NotebookLM试用体验]]
  • 第二书房的第二电脑

    第二书房的第二电脑

    在肾后的指导下,最近我越来越喜欢在第二书房工作。之前我用的是一台2017年的老笔记本,倒也不是不能用,只是速度确实有点慢了:打开几个文档和网页还行,一旦开始多任务切换,就能明显感觉它已经进入老年期。

    前两天又被种草,看到水果新推出的MacBook Neo(MBN),一下子有点心动。

    我的使用场景其实很简单:

    1. 日常:Office全家桶、用Markdown进行写作。
    2. 轻度编程:偶尔写点小程序来帮助自己练脑子。
    3. 轻游戏:我不怎么玩大游戏,最多也就是一些卡牌游戏。
    4. 看视频:主要看看新闻和网站视频。
    5. AI辅助:这一项反而越来越重要,后面细说。

    上周我去苏州中心的水果店看了看,一眼就相中了那个被水果称为“柑橘黄”、而我觉得更像“鸭屎黄”的颜色。店员说,所有MBN都没有现货,于是我留了联系方式。前两天收到邮件,说我要的颜色和配置到了,我就赶紧跑去下单入手。

    这两天,我一边工作,一边慢慢把新机器上的环境重新搭起来。说起来,我以前也用过MBA,但那台机器更像是单纯的“工作工具”;而这次折腾MBN,感觉更像是在给第二书房搭一个新的工作台。于是我也顺手整理了一下:一台主要用于写作、办公和轻量AI的Mac,到底该装些什么。

    先说结论

    在我看来,MBN最大的价值并不是性能有多夸张,而是它足够轻、足够安静,也足够支撑我的日常工作流。它当然跑不了特别大的本地模型,也不适合拿来做重度创作或硬核游戏,但如果用途本来就是写作、办公、看视频,再加一点AI辅助,那它其实已经相当够用了。

    哦,对了,如果预算不是太紧,强烈建议买512G的。不仅是硬盘容量大了,而且还支持Touch-ID,可以用指纹解锁。

    最重要的软件:Resilio Sync

    我第一个装的还是Resilio Sync。简单说,它就是我的“私有云”,负责在不同电脑之间同步文件。

    我以前就是这么工作的:在公司的电脑上改完文件,回家以后继续修改;第二天再到公司,就能直接接着前一晚的版本往下写。它的设置很简单,而且内外网穿透能力相当强。哪怕一台机器在家里,一台机器在海外,只要网络状况别太离谱,文件同步基本都能维持住。

    对于我这种写作者来说,这个软件的重要性甚至比办公软件还高。因为写作最怕的不是没灵感,而是稿子散落在几台设备里,自己都不知道最新版在哪儿。

    基础环境:浏览器、启动器和常用软件

    浏览器方面,我还是装了Firefox。Mac自带的Safari不是不能用,但我始终觉得差点意思,尤其是迁移过来的使用习惯很难改。

    Raycast也是我必装的软件。Mac自带的Spotlight够基础,但还不够强;而Raycast相当于把“启动器”这件事做成了一个更顺手的工作入口。

    至于QQ、微信、直播软件、VLC、Microsoft Office这些,就属于按习惯补齐的基础配置了。它们不一定有多惊艳,但少了哪一个,工作和娱乐都会不太顺手。

    写作主力:Obsidian + VS Code

    我现在已经习惯用Markdown写东西:格式简单、迁移方便,而且对AI也很友好。所以在新机器上,Obsidian自然是第一批装上的。我会在里面开一个Vault,把相关写作串联在一起;另外,它导出PDF的能力也确实很强,这一点非常实用。

    不过,Obsidian更适合整理和串联,而不是处理那种稍微复杂一点的任务。比如解题、事实核查、发散讨论,或者和AI进行更密集的来回交互,我还是更愿意交给VS Code。因为我买的AI服务本来就是GitHub Copilot,放在VS Code里用起来也最顺手。

    所以现在我的写作环境大致是这样的:Obsidian负责沉淀、归档和组织;VS Code负责复杂处理和AI协作。前者像书桌,后者像工具台。

    AI配置:外出一套,在家一套

    MBN的配置决定了,它不可能承担“重型本地AI工作站”的角色。较大的本地模型,它是跑不起来的;但如果只是做一些发散讨论、简单问答和轻量事实核查,它还是能胜任。

    我最后给它配了两套方案:一套用于外出离线,一套用于在家联网。

    • Ollama:负责外出时的离线问答。我装了几个相对较小的模型:gemma4:e2bgemma4:e4bhermes3:3b。实测下来,虽然不能说飞快,但确实能用。
    • Cherry Studio:负责在家联网时调用桌面机的算力。我的桌面机上有更好的显卡,可以跑更大的模型,比如gemma4:26bgemma4:31b这一类。这样一来,MBN本身不需要太强,也能借助家里的大机器完成更复杂的任务。
    • Copilot CLI:我本来一直在用千问,每天免费一千问也挺够用;但4月15日以后,这项免费服务没了。既然我本来就订阅了Copilot,那干脆就转过来直接用。反正这个订阅本来也能覆盖VS Code、Obsidian等应用,整合起来反而更省事。

    最后

    折腾完这几天之后,我对这台MBN的判断也很明确了:它不是一台追求极限性能的机器,但它非常适合我现在的生活方式。

    我需要的不是一台能跑天花板级模型、也不是一台能硬扛3A大作的笔记本;我需要的是一台能安静地放在第二书房里,随手打开就能写、能查、能同步、能顺便和AI讨论几句的电脑。从这个角度看,MBN对我来说,算是买对了。

  • 让我来康康AI可以有多“靠谱”?

    让我来康康AI可以有多“靠谱”?

    Google沉寂了好一段时间,前两天放出了一个重要的模型升级:Gemma 4。我下载了、运行了。

    我用的测试工具比较多,包括:Visual Studio Code(VSC)中的Github Copilot(自动选择模型),Ollama(Gemma 4 31b),还有国产的豆包。

    其中,本地跑Ollama的桌面机配了一块5060 Ti 32G的显卡。

    我一直有收藏文档做站点的习惯,所以这次我就从我的维基站点中的两个专栏里随手拉了一些题目:

    第一题

    爱丽丝来到遗忘林的时候,她不是所有的事情都忘记了,她只是忘记了某些事情。她经常忘记自己的名字,最容易忘的是星期几。狮子和独角兽可是林中的常客。他们都是很奇怪的动物。狮子在周一、周二和周三撒谎,其它日子说实话。而独角兽呢,正好相反,它周四、周五、周六撒谎,而其它日子说实话。这天,爱丽丝遇见狮子和独角兽在树下休息。他们做了如下的陈述: 狮子:昨天是我说谎话的日子。 独角兽:昨天也是我说谎话的日子。 爱丽丝是个非常聪明的女孩,她从这两个陈述就可以知道今天是星期几了。那么今天是星期几?

    这是一道入门题。所有的AI都可以得到正确答案。但Gemma的推理过程比较突出:它检查了周一的情形后,总结出:无论是狮子还是独角兽,能说出这句话的日子和前一日必须是处于不同的说真话还是说假话的日子。所以,很快,它推理出狮子只有周一、周四,独角兽只有周四、周日,才能做出如题的陈述。所以,当天只能是周四。这个推理过程非常有意义。

    第二题

    莎士比亚的《威尼斯商人》中,鲍西娅有三个首饰盒:金的、银的和铅的。其中的一个盒子中放着鲍西娅的肖像。求婚者要在其中选一个盒子,如果他足够幸运(或者足够聪明)选到了有肖像的那个盒子,他就可以娶鲍西娅为妻。每个盒子的盖子上都有一段铭文来帮助求婚者做出聪明的选择。 现在,假定鲍西娅希望选择她的夫君时,不是基于他的品德,而只是基于他的聪颖。她在盒子上刻下了如下的铭文:
    肖像在这个盒子里。 肖像不在这个盒子里。 肖像不在金盒子里。
    鲍西娅对求婚者说明,这三句话中,最多只有一句是真的。 求婚者该选择哪个盒子?

    这道题也不难。所有AI都可以得到正确答案:求婚者应该选择银盒子。

    Gemma和Copilot的推理过程相似。它们都敏锐地判定出:由于金盒子和铅盒子上的陈述互相矛盾,那么这两个陈述肯定有一个为真。而题目中说“最多只有一句为真”,那么银盒子的陈述就是假的。既然如此,肖像必然在银盒子里。

    (以上两题来自我最喜欢的逻辑书《这本书叫什么?》。我选了其中最入门的两个章节中的两题。)

    第三题

    Life Isn’t a Bowl of Cherries 你和朋友Amit面前有4只樱桃碗,里面分别装着5,6,7,8颗樱桃。 你们轮流行动;每次可以任选一只碗,并从中取走至少1颗樱桃。 如果你先手,并且想确保最后一颗樱桃是Amit取走的,那么你的第一步应该从哪只碗里取走几颗樱桃?

    所有AI都知道这是一道有关NIM sum游戏的策略题,并给出了第一步操作:从8颗的碗里拿走4颗,并解释了其中的数学原理:各个碗的樱桃数量的异或值为零是本题的关键。

    但只有Gemma明确指出:这个所谓misere Nim(确保对手赢)游戏,策略和常规的Nim(确保自己赢)游戏,策略是一样的,直到最后一步。

    第四题

    Spaghetti Loops 把50根煮熟的意大利面看作50段线段,它们一共有100个端点。 现在把这100个端点随机两两配对并打结。 问:最终形成的闭合面条环(loop)个数的期望是多少?

    三个AI表现正常。但豆包只有第一步推理是对的:它知道在第一次挑面条的一头,并和任意另一头打结的时候,成环的概率是$\frac{1}{99}$。但它太早进行一般化,简单地将这个概率乘以了50。经过一次提示,它正确地得出,最终形成闭环的期望是$\frac{1}{99}+\frac{1}{97}+\frac{1}{95}+\cdots+\frac{1}{3}+1$。但在计算这个公式的时候出错。经过再次提示,得到了2.937…的正确结果。

    (以上两题来自我最近开始整理的《数学谜题》。)

    ====

    我觉得吧,AI能帮我总结东西、帮我做PPT都是极好的。但要是能帮我学习逻辑、学习数学,从而可以真正地与它开展严肃的讨论,那才是更好的。

  • 末日生存指南

    末日生存指南

    请你设想:突然有一天,电影里描写的Armageddon 降临:基础设施(包括电力)供应切断、交通瘫痪、网络瘫痪、(可能)伴随核污染、……

    你唯一还能获取的资源,也许只有家里的日常储备(瓶装水、粮油菜肉、日常用品……)。

    而你最重要的任务是:活下去,找到安全之所,并延续文明的火种!

    你只是一个普通人,只有最普通的知识,你该如何做到?

    你唯一还能感到欣慰的是:你有一台前天晚上充足了电的笔记本电脑——可以让你工作N个小时,而电脑上安装了一样最宝贵的东西。

    Project NOMAD:离线世界的知识方舟

    Project N.O.M.A.D.Node for Offline Media, Archives, and Data)就是你在此时此刻最宝贵的东西。

    NOMAD的词义是:游牧者。用它来命名这个项目再贴切不过了。

    这是一个免费、开源的离线服务器系统,它的宝贵之处就是:让人类最重要的知识在断网时代依然触手可及

    NOMAD 本质上是一座数字方舟,一个可运行于普通电脑上的离线知识中心。一旦部署完成,它就成为一个自给自足的“文明节点”——无需任何互联网连接,就能提供:

    • 维基百科全文:人类知识的总汇。让人类知识得以延续和传承。
    • 离线地图:完整的OpenStreetMap数据,断网也能导航1。水源在哪里?逃生道路在哪里?最近的安全屋在哪里?
    • 教育课程:可汗学院K-12完整课程。一旦末日降临,你可以为幸存下来的人类幼崽提供完整的基础教育。
    • 古腾堡计划:数万本公版电子书。目前我们还是需要有版权意识,但我相信如果真的末日降临,版权也就没有了。
    • 医疗与维修指南:关键时刻能救命的实用知识,让你能活下去!
    • AI 助手:基于Ollama的本地大语言模型,可以对话、写作、分析(支持GPU加速)。

    为什么它重要?

    商业世界其实早有类似产品,但价格不菲。NOMAD 的创始人说得很直白:这是给"有准备的人"的免费替代方案

    它的核心是数字独立:不依赖云服务,不交订阅费,数据和控制权完全在你手中。今天,它可以是房车或偏远小屋里的离线图书馆;明天,它可能是文明重启时的火种。

    即便末日遥遥无期,拥有一座属于个人的、永不下线的人类文明档案馆,本身就是一种极致的浪漫。

    安装

    • 硬件要求:最低2G的CPU,4G的内存,5GB的存储空间。
    • 软件要求:一套Ubuntu就可以。
    • 联网:这里需要注意的是,在国内可能需要科学一下。因为安装过程中涉及到的站点、安装后下载资料需要的站点,大部分都需要科学一下。

    准备就绪后,唤醒这座方舟仅需两行指令。

    这个项目完全开源,获取的资料也完全可自由获取。

    项目地址:https://www.projectnomad.us/

    我已经安装了最基本的系统,抓取了一些东西。让大家看下界面吧:

    Landing Page

    安装配套系统

    图书馆界面

    图书馆:续命指南:在冬日用什么取火

    愿末日永不降临。但若长夜将至,愿这星火长存。


    1. 目前我能看到的都是美国本土地图。 
  • 龙虾为谁而煮?

    龙虾为谁而煮?

    2026一开年,AI界现象级的一个应用就是“龙虾”(OpenClaw)。这个应用在GitHub已经获得了57.8K的Star,超过了之前的榜首应用(如React),而且登顶速度惊人。

    “龙虾”是什么?

    在回答这个问题之前,先回顾一下这几年我们和AI打交道的演化:

    1. 基于WEB界面/AI应用界面的交互。这个交互过程的典型特性,是用户提问+上传(受限类型的)文件,AI给出回复。用户根据回复,作出相应的修订等工作。目前,这个方式还是很主流的,而且AI已经可以生成各式文件(图片、音乐、视频、文档等)供下载。
    2. 应用嵌入/命令行。大量IDE的工作方式是基于应用内嵌,比如VSC中的Copilot;而等到SpecKit出现后,推动了命令行工作方式,比如Copilot、Gemini、Qwen等。
    3. 自托管式。AI有了更大的自主权。OpenCode(以及oh-my-opencode)是这一方面的先驱,让人类可以通过简短的描述性文本,完成十分复杂的任务。而其后继及登峰造极者,目前看来就是“龙虾”。

    所以,龙虾到底是什么?

    它是一个拥有极高自主权、极大能力的AI代理(agent)。它的上限决定于两个因素:你的想象力,以及你对它的授权

    授权的风险

    授权是个很tricky的动作,而涉及到AI的时候,就更加的tricky——因为没有了一个人类下级在得到上级授权后常有的一个动作:”汇报并确认“。这可以算是引入了风险。

    即使获得授权的人类不进行汇报并确认,但在一个组织中,还有check and balance。你也许获得授权动用100万的资金,但财务在收到此类请求时,很可能会动用财务规范,进行一个核验。

    但龙虾不会,而且它缺乏人类下级常有的“常识判断”机制。你的授权通常以最直接的方式给予:你的账户、密码、密钥、设定……一旦给予,龙虾就会自动运行。如果是一些对物理世界没有影响的操作(比如只是写个代码、抓取新闻),那还好;如果是对物理世界有影响的操作(比如买卖股票),这里的风险就太大了。

    (在我看到的有关龙虾的新闻中,已经有人用龙虾找对象谈恋爱了。)

    注意:我不是说不应该授权。现代商业、政体运作已经证明,授权是成功运营的基本要素。我的要点是:只有充分理解授权带来的权利和义务(或者说pros and cons)后,你才能学会授权和被授权。

    龙虾显然还不能如人类那样充分理解授权带来的权利和义务,或者说,它的设计初衷就是为了“享受”授权带来的执行便利,而非履行审核义务。

    你应该养龙虾么?

    龙虾的设置说简单也行,说复杂也行。

    说简单,是因为官网上关于安装龙虾只有一行命令,以Windows为例:iwr -useb https://openclaw.ai/install.ps1 | iex

    说复杂,是因为这个命令,需要你打开“终端”(确切说是Powershell),运行命令。

    更复杂的,是-useb这个选项是啥意思?整个命令到底干了什么?

    如果你的回答是:我不知道……我就安装就是了。那么你的计算机应用水平可能和我一样,在养龙虾前真的要三思。

    接下来的问题,是如果你给了龙虾足够的权限,你的Windows系统万一受到损害怎么办?专家建议你“开个沙盒”,或者用一台“闲置”的机器。但这听起来就像建议你“在家里建个生化实验室”一样轻松。问题来了:沙盒怎么弄?闲置机器哪里去弄、又如何配置?

    而安装只是第一步。配置社交账号、配置权限……这些真的不是初学者能熟练掌握的。

    手枪是个精密器械,不会有人说:全民学习枪械知识。龙虾是个精密的app,为什么有人说:大家都来养龙虾吧?

    (而我看到某公司竟然也匆匆进场,推出种种套餐、服务帮大家养龙虾的时候,我真的是吓了一跳……)

    我的建议

    要拥抱AI,积极使用AI,但不要FOMO(Fear Of Missing Out)。

    如果真的要养龙虾,不妨先提升自己的AI使用水平、计算机使用水平、计算机操作系统使用水平,对相应的知识点有了基本的掌握后,再来思考要不要养龙虾的问题。

    回到授权的问题,我在想:

    参加了庞氏骗局的人,亏本后会闹事。

    用了龙虾,亏了更多的人,会不会闹得更厉害?

    也许,企业的一个底线应该是:民众的认知局限固然不是它的错,但至少可以做些“开启民智”的事情,而不是利用这种认知差来赚黑心钱。

    或者说,它们其实没有任何真正的创意,只会用你的焦虑赚钱罢了。

    龙虾为谁而煮?显然,并不是为没有准备的你而煮。

    (这两张图,一张由Nano Banana生成,一张由本机生成。)

  • AI写一个更好的音乐播放插件……以及愚蠢的人类的干预

    AI写一个更好的音乐播放插件……以及愚蠢的人类的干预

    我一直用Jellyfin来管理我的媒体收藏:音乐、电影、照片等……其中的音乐收藏是我多年收集的成果,质量远超网络音乐……

    不过,我不是很喜欢它自带的播放界面:没有频谱动态显示,CD封面也太小。于是我决定采用快速原型开发方式制作一个。

    工具

    • Visual Studio Community 2026作为开发环境
    • C#语言
    • 智能体:Github Copilot尊贵入门会员
    • 编程模型:GPT-5.2-Codex

    我用了2个上午,0手工代码,最终完成一个我个人认为还比较可用的小程序。

    主要功能:

    1. 显示当前播放曲目的信息:曲名,艺术家,专辑。
    2. 显示CD封面(Artwork),并转动——感觉回到唱机时代。
    3. 简单的回放控制:上一首、下一首、播放/暂停。
    4. 环形播放进度提示,悬停时提示曲目总长和剩余时长。
    5. 动态频谱显示。
    6. 曲目切换后动态更新系统托盘图标(Tray Icon)提示,并更新图标为Artwork。
    7. 可配置Jellyfin Server(服务器和API Key),安全连接自家的服务器。

    最后的界面如下(只有那个橙色的环,那个机器人是我Steam Wallpaper Engine的壁纸)。

    谈谈过程

    这次开发,延续了我比较喜欢的快速原型开发过程。全程我提供了:

    1. Jellyfin的API文档
    2. 一个可以借鉴的现成插件配置(.ini)和界面(.png截屏)。

    我用的Agent学得很彻底,在一些核心的功能方面,基本没有任何波折,在第一个半天就基本完成了。而且,在第一个半天,我还微调了界面,使其更符合我的个人偏好。

    用编程术语说,这个时候我已经有了一个MVP(Minimum Viable Product,最简可行产品)。所以第二个上午我集中在微调。

    我想动态更新任务栏(Taskbar,不是Tray)应用图标,使其成为我现在播放的专辑的封面。这个工作耗费了我上午的大部分时间。AI试图用各种不同的方法来实现。但:

    1. 多数方法无效
    2. 部分方法只能部分有效

    这时,我只能人工干预了。我在网上进行了一些搜索,得到一个结论是:我的要求很难实现。

    我将这个反馈提给AI,它才如梦方醒,说:确实如此!但有折中的方案:不用Taskbar,而用Tray。

    事实证明,这个思路是对的:每当乐曲切换,Windows就能弹出一个提示,提示我现在播放的是什么曲目,并更新应用Tray Icon的图标。

    AI最终实现的是动态更新系统托盘中的应用程序图标,而非任务栏上的窗口按钮图标。

    通过这次开发实践,我总结出一套有效的人机协作开发模式:

    1. 明确需求边界:在AI开始编码前,清晰定义功能需求和技术约束
    2. 渐进式验证:采用MVP(最小可行产品)方式,先实现核心功能再逐步完善
    3. 智能识别瓶颈:当AI尝试多种方案仍无法解决问题时,应及时介入分析技术可行性
    4. 灵活调整策略:当原定方案受技术限制无法实现时,主动寻找替代方案
    5. 经验驱动决策:结合自身技术经验判断AI方案的合理性,必要时引导AI探索其他路径

    这种协作模式充分发挥了AI的快速编码能力和人类的架构判断能力,实现了高效的软件开发。

    这里的一个重要结论是:不能完全依赖AI。AI的讨好型人格——至少我使用的AI的缺省人格——使得它很难挑战人类提出的想法。它会顺着你的想法无畏地前进,头破血流也很难让它幡然醒悟:这个方案是行不通的。

    这个时候,人的介入很重要:为它打开新的思路。而这样的工作,是需要人的经验和判定的。

    我觉得,这是人和AI协同工作的方向。

    (我让Nano Banana和本机的Comfy用同样的关键词生成了两张图。)

  • 2026 AI辅助创作指南

    2026 AI辅助创作指南

    下午和一位多年的BT老友聊天,聊着聊着,从上课聊到AI、再聊到写作。

    我俩虽然都写东西,而且都用AI加以辅助,但环境、工具、习惯都不一样。于是突然想到,也许可以写一篇2026年AI辅助创作指南。

    如果你还是如我、如我那位BT老友那样,相信文字确实可以作为思想的载体,更相信文字的力量,那么这篇指南也许可以帮助你更好地进行创作。

    Pre-requisites

    除去“写作的热情、对主题的掌握、对文字的熟稔”等软性因素外,要进行“顺心”的创作,需要有一些先决条件(pre-requisites)。它们包括但不限于:

    • 熟练的电脑使用能力。这不是简历中“熟练使用Word,PowerPoint,Excel”的老套,而是知道:目录和文件管理,应用程序的安装、启动、使用,命令行运用等基本功夫。
    • 良好的联网条件。这不是坐拥千兆宽带、全屋WIFI覆盖那么简单,而是真正的、良好的联网条件。
    • 一台比较好的台式电脑。我向来认为,手机、Pad是内容的消费端(consumer),而台式电脑(至少笔记本电脑)才是生产端(producer)。所谓“工欲善其事,必先利其器”,要写出好东西,写东西的工具也该好一点。我现在的台式电脑比较老了,但也有32G内存,一台34寸的显示器。显示器大一点比较好,可以并排放几个窗口:一个写作,一个浏览网页(以获取参考资料),一个命令行执行各种命令。我相信,你的台式机不会比我差。

    基本技能

    用AI辅助创作大致涉及四个阶段:用什么格式写作?用什么工具写作?用什么AI助手?以及发布到哪里?

    文档格式

    用什么格式来写作呢?答案显然不是Word——太重、太大、AI解析难度大、不够“德味”。

    当前事实上(de-facto)的文档格式是所谓的Markdown格式(简称MD,文件名后缀一般是.md)。我所有的文章都是用Markdown格式写成。

    它提供了足够的格式化功能(标题、粗体、斜体、引用、列表、表格、脚注、链接、图片插入、复杂的数学公式1等),非常轻量化(本质上就是一个文本文件),AI解析友好。

    任何人学习MD语法都会很快上手。

    写作环境

    确定用什么格式(语言)写作后,就要确定用什么环境来书写。这里有很多选择,比如我用Obsidian,我朋友用Windsurf,类似的选择还有VSC以及任何支持MD格式的编辑器。同样的好消息是,这样的工具太多太多,而且大部分是免费的。这些工具都支持所谓的项目——也就是你可以将相关的内容放在一个项目里,并加以切换。

    我使用Obsidian是因为:

    1. 它更轻量,更专用。
    2. 它提供所谓的Vault功能,方便我在不同主题的写作中切换。
    3. 文件导航清晰明了,搜索功能强大。
    4. 相应的TAG标记功能、思维导图功能等——当然部分高级功能是需要付费的。

    Obsidian也有AI助手,但我一直没用。我一般是用另外一个配备了AI助手的编辑器(如VSC)打开同一个MD文件,并让它通读全文并给出建议。

    AI助手

    这段时间,AI助手真的是太多了!我接触并尝试的就有不少。好坏优劣暂且不评论,就我这一年的实际使用体验,我推荐以下三个AI助手——都是命令行程序。

    • Gemini CLI:来自谷歌。对文字的解析非常精准,抓错能力强,给出的建议非常到位。唯二的问题是:对上网环境要求高,免费用户每日的额度比较低。
    • Qwen CLI:来自阿里。能力也相当出色,中文相关能力也很突出。唯一的问题是:有时它会不愿意给出反馈,而且我不知道它为什么不愿意给出反馈,而是建议“我们换个话题”。
    • Copilot CLI:来自微软。相比前两者,整体能力略低一点点。但好处在于它是微软自家宝宝,和微软产品的集成是最好的。这也是我目前唯一充值了尊贵VIP的服务,一个月也要10刀呢。

    其他的AI助手,我觉得还可以有两个:

    • Nano Banana。如果可以,请升级到20刀一个月的Nano Banana Pro。我会将我定稿的文字贴给NB,让它望文生图,甚至望文生视频。
    • NotebookLM。这个我前两天才刚刚介绍,可以参考这篇文章。我主要用它来做阶段性的总结,比如回顾我一年的写作,帮我厘清我个人的思想旅途。

    发布平台

    我的文章目前有两个发布平台:我自己的博客站点和我的微信订阅号。

    微信订阅号的问题很大。抛开讨厌的发文验证、外链图片需要重新插入等问题,它对真正“富文本”(rich text)的支持就很差,不支持脚注、外链、公式。

    目前,AI在这个阶段能起到的作用很少,还是人工操作阶段。虽然有一些工具可以帮助排版,但也只是生产力提高工具而已。

    小结

    推荐工具的过程其实就是“挂一漏万”的过程。我写这篇文字,目的很简单:和大家分享一下我记录我的思想的手段。

    因为,我总觉得,文字才是思想最好的载体。


    1. 公式一般用LaTex书写,需要另外掌握。同时,要想正确地渲染公式也需要另外的一些软件支持。但好消息是,当今支持Markdown格式的编辑器一般都包含了数学公式的支持。 
  • 再次推荐NotebookLM

    再次推荐NotebookLM

    使用NotebookLM有了一段时间,但使用频率不是很频繁:一个是网络连接的问题,一个是总觉得单纯的一问一答(然后保存对话产出)没啥大用。

    前两天为了测试网络连接,又跑上去看了一下,发现有了很多改进,NLM提供了更多的“探索”资源的方式。我让它做了一些“探索”,并表示满意:它的总结基本不会漏东西,并且用AI独有的“联想”为我找到了我之前也没有意识到的connection——而经过我的reflection,这样的connection确实还是有道理的。

    怎么用

    要让NLM进行探索,你需要给它提供资源。这些资源几乎可以是任何东西,常见的如:PDF,文本,Word文档,以及诸多图片格式和音频格式。

    提问:如果是PPTX怎么办?NLM并不直接支持。我的建议是导出PDF,或者将PPTX中的文字和图片分离出来再上传。

    有了资源,NLM就能干活了。目前,NLM可以帮忙做这么多的“探索”(并产出结果):

    1. Audio Overview:根据资源,生成一个约莫15分钟的两人(一男一女)的英文对话,但不是和资源“作者”的对话。
    2. Video Overview:顾名思义,就是视频的呈现了。但时长会缩短,只有5分钟上下。而且,不要认为这个Video会有多complex,它只是一些slides的动态演示加配音罢了。
    3. Mind Map:思维导图。提取分层次的要点,并能就某个特定主题加以深入讨论。
    4. Reports:如名字。就算是一个报告。
    5. Flashcards:闪卡。我不知道大家知不知道这个玩意儿。它就是一个双面卡片。卡片正面是相关的提问点(比如:“任老师2025年去了哪些国家?”,反面是答案(“A国、B国、C国”)。闪卡在强化学习中很有用。
    6. Quiz:和闪卡类似。但类似知识竞赛这样的过程。一问一答还有提示。
    7. Infographic:用一张图总结资源,目前在Beta阶段。比如,我让它总结到目前为止我2025年的博客内容,它给了我这么一张总结:

    特别需要提出的是,这里有大量的中文生成。如果不是用文字贴上去的方式,而是完全由AI生成,那么说明NLM在后台生成图片的时候用的是比较强大的Nano Banana Pro。

    1. Slide Deck:这个是我最喜欢的功能,可惜目前还在Beta阶段,而且我的账号只让我每天用两回。它可以根据资源,整理出一份排版非常摩登、配画配字的PPT。在这个过程中,NLM表现出极强的关联、逻辑能力。

    用来干什么

    NLM提供了8种整理、探索资源的方式。我觉得各自有不同的应用场景。

    1. 如果你是学生党,可以将教授的课件传进去,让NLM提供Quiz、Flashcard的总结。那你可以快速回顾授课内容,并通过Q&A的方式加快、加深学习。
    2. 如果你需要对一篇文字加以总结,那么可以用Infographic、Report、Slide Deck等方式。其中,Infographic适合做宣传、引流,Report适合深度阅读,Slide Deck更适合进行二次呈现。
    3. 如果你要做自媒体,那么我觉得Audio适合播客,Video适合视频号——我等下就将Video传到微信Channel里去。
    4. 如果你是和我一样的写写党,我建议不妨定期做些类似的回顾。回顾的重点,我觉得可以放在“连贯性”和“自洽性”上。在我这个年纪,思想已经基本成型,就不应该有太多的思想180度大转弯,自洽是非常重要的一个标记:表明我一如既往地遵从我自己的思想体系在思考这个世界

    AI的出现,确实改变了我平时的思考和写作过程,更重要的,它为我带来了一些我几乎都没有注意到的洞见,而基于这些洞见,可以让我进一步思考和写作。这样的AI应用,我是乐于使用并向大家推荐的。

  • 家庭娱乐网络的搭建

    家庭娱乐网络的搭建

    趁着双11,肾后下单买了一个魔方迷你主机,用来换掉家里用了快10年的迷你电脑——惠普小叮当。

    (别说,这台电脑很老了,兢兢业业地在上海、雅集服务了好多年,用的还是赛扬CPU,看电影时有卡顿!)

    经过一些比较以及与BT群的讨论,这次购买的是一台魔方迷你电脑,12G/512G只要1000+就能到手:

    机器到手后,先把它和电视、有线网络、键鼠连起来再说。然后就是装必要的软件。

    装机软件清单

    软件是装不完的。按照优先级,我的装机列表如下。1

    1. 向日葵远程控制。下载地址:https://sunlogin.oray.com/download,支持Windows/macOS/iOS/Android/Linux所有主流操作系统。装这个软件,是为了不用在小电脑上进行所有后续的操作,而是在我的台式机上进行操作。同时,在肾后的平板上也可以直接操作迷你机看电影、看照片,而不用依赖迷你机的键盘和鼠标,方便了许多。
    2. Jellyfin媒体播放。下载地址:https://github.com/jellyfin/jellyfin-media-player/releases,支持Windows/Linux/macOS。装这个软件,是为了能在迷你机上播放我的媒体服务器上的所有媒体:照片、视频、电影、音乐。这个软件我之前有过[介绍](https://blog.rsywx.net/2023/12/12/a-home-software/),这里就不水字数了。
    3. VLC。下载地址:https://www.videolan.org/,支持Windows/Linux/macOS/Android。这是一个非常强大的视频播放软件。除了我放在媒体服务器上的电影外,我还会有不少电影放在硬盘上,所以需要一个简单直接的软件来播放它们。
    4. Resilio Sync。可选。下载地址:https://www.resilio.com/sync/。支持Windows/Linux/macOS/Android/iOS。这是一个强大的文件同步软件。如果不想手动拷贝文件,可以用这个来进行两台机器之间的文件传输。之所以“可选”,是因为向日葵这个软件就支持主机和客户机之间的文件拖曳拷贝。
    5. Avast。可选。下载地址:https://www.avast.com。既然是Windows系统,而且还联网,还是要做好防病毒的工作。

    简单画个拓扑图:

    典型应用场景:

    1. 在迷你主机上,通过Jellyfin或者VLC在客厅的电视上看电影、看照片、听音乐。
    2. 在电视关闭时,迷你主机仍然可以通过Jellyfin播放音乐并音频输出到Marshall音箱,播放音乐。

    (当然,有了Jellyfin后,在手机上也是能访问所有以上媒体的。这就避免了媒体文件只能在一台机器上访问的问题。)

    有了远程操控后,这些都可以在平板、桌面机上完成,而不用跑去操作迷你机的键鼠——事实上,我已经将它的键鼠给没收了。

    最后,夸奖一下向日葵。我本来一般不用国产软件,但向日葵确实给了我很好的体验。

    很好,家庭娱乐网络搭建的circle现在已经complete了!


    1. 注意,部分软件下载需要借助技术支持。所有软件都可以免费下载、免费使用,可付费升级功能。