MoreRSS

site iconafoo | 王福强修改

连续创业者,20多年互联网与金融技术经验,前阿里巴巴高级技术专家,现福强科技CEO,分享技术、管理、商业和AI知识。
请复制 RSS 到你的阅读器,或快速订阅到 :

Inoreader Feedly Follow Feedbin Local Reader

afoo | 王福强的 RSS 预览

跟着福强老师一分钟了解Claude Skills

2025-10-19 00:00:00

跟着福强老师一分钟了解Claude Skills -王福强的个人博客:一个架构士的思考与沉淀

跟着福强老师一分钟了解Claude Skills

王福强

2025-10-19


读官方文档是最直接的:https://www.anthropic.com/news/skills

Claude can now use Skills to improve how it performs specific tasks.

这句话说明,Skills是面向特定任务的设计。

Skills are folders that include instructions, scripts, and resources that Claude can load when needed.

这句话说明了Skills的交付和组织形式,就是个目录,目录里包含了指令(md编写的,AI友好嘛)、脚本和需要的资源。 Claude可以按需加载目录里这些东西。

Claude will only access a skill when it’s relevant to the task at hand. When used, skills make Claude better at specialized tasks like working with Excel or following your organization’s brand guidelines.

这个遵循组织的品牌指南挺好,一致性才是根本。

Now, you can build your own skills and use them across Claude apps, Claude Code, and our API.

可以在Anthropic家的产品上通用。 估计马上其他家就会有类似的概念和组件出现了🤣

While working on tasks, Claude scans available skills to find relevant matches. When one matches, it loads only the minimal information and files needed—keeping Claude fast while accessing specialized expertise.

Skills这个frontmatter + body的行为设计,跟Scala里的Partial Functions很像,也就是必要匹配之后才会执行主体逻辑。从AI Agent角度它是为了省tokens,但从程序逻辑角度,其实就是条件匹配(predicates)。

这种设计还有个好处就是级联,比如,在KVectors向量数据库启动的时候,根据不同向量集合类型初始化的时候,用Partial Function的设计就可以实现优雅的级联:

    val vectorCollection: KVectorCollection = Option(collectionDir).collect(IVFIndexedKVectorCollection orElse HyperplanesLshKVectorCollection) match {
      case Some(vc) =>
        logger.info(s"collected from specific collection partial function: ${vc.getClass}")
        vc

      case None => ...
    }

而Claude Skills,其实就是把条件检测+逻辑+级联的设计思想应用到了AI Agent的设计之中(也就是Claude的自家产品中)。

Skills are Composable: Skills stack together. Claude automatically identifies which skills are needed and coordinates their use

这里的composable就是级联, identify就是条件检测(predicates)。

(Skills are) Efficient: Only loads what’s needed, when it’s needed.

也就是匹配之后才执行, 跟PartialFunction的定义Perfect Match

(Skills are) Powerful: Skills can include executable code for tasks where traditional programming is more reliable than token generation.

把MCP提供的原子能力本地化,可以融合自然语言和程序语言形成一个独立的模块。毕竟,程序语言比token生成更可靠,能用为啥不用?🤪

那Skills跟MCP有啥区别呢?

MCP connects Claude to external services and data sources. Skills provide procedural knowledge—instructions for how to complete specific tasks or workflows. You can use both together: MCP connections give Claude access to tools, while Skills teach Claude how to use those tools effectively.

简单来说,IMO,MCP提供原子能力,怎么用这些原子能力,Skill是可以模块化的方式封装和使用。当然,如果只是本地需求,也可以在Skills里写脚本,这时候也不一定非得用MCP调用外部能力。

当然,有人把Skills类比为SOP(Standard Operating Procedure/标准作业流程),这个嘛,也可以这么理解:

只不过,就算是SOP, 它其实也是模块化内部的SOP,也就是完成一个任务(Task)所需的步骤。

福强老师觉得,这东西会是继MCP之后,另一个会在业界快速流行的AI生态一员。

Ref

  • https://support.claude.com/en/articles/12512176-what-are-skills
  • https://www.anthropic.com/engineering/equipping-agents-for-the-real-world-with-agent-skills
  • https://github.com/anthropics/skills



「福强私学」来一个?

「福强私学」, 一部沉淀了个人成长、技术与架构、组织与管理以及商业上的方法与心法的百科全书。

footer img for kb.afoo.me

开天窗,拉认知,订阅「福报」,即刻拥有自己的全模态人工智能。

订阅「福报」
Copyright © 王福强个人版权所有 - Since 2004 (Everything is homebrewed with Pandoc and Markdown, little Scala also included.)

向量数据库系列第二期企业培训圆满落幕!

2025-10-17 00:00:00

向量数据库系列第二期企业培训圆满落幕! -王福强的个人博客:一个架构士的思考与沉淀

向量数据库系列第二期企业培训圆满落幕!

王福强

2025-10-17


(杭州,2025年10月17日)—— 今日,由杭州福强科技有限公司历经4个大版本迭代+180个小时精心打造的“向量数据库系列之向量数据库索引:从理论到产品化落地”成功交付客户企业。

本次培训聚焦向量数据库这一AI时代的核心基础设施,通过理论与实践的深度结合,为来自轻奢电商的企业技术团队提供了一场高质量的技术盛宴,收获了学员们的高度赞誉。

AI驱动下,向量数据库成企业数字化转型新引擎

随着生成式AI、大模型应用的普及,企业对非结构化数据(如文本、图像、音频)的处理需求呈爆炸式增长。向量数据库凭借其高效存储和检索高维向量数据的能力,已成为支撑智能推荐、语义搜索、图像识别、AIGC应用等场景的关键技术。据行业报告显示,全球向量数据库市场规模正以每年超过50%的速度增长,如何熟练掌握其底层技术,尤其是核心的索引算法,已成为企业技术团队的核心竞争力之一。

课程直击痛点:从理论到实践,拆解核心索引技术

本次培训针对企业在向量数据库实践中遇到的“索引选择难、性能优化无头绪、大规模数据检索效率低”等痛点,设计了层层递进的课程体系。其中,对主流索引类型的深度剖析与实战演练,成为本次培训的最大亮点。

课程核心内容聚焦以下三大典型索引技术:

1. 倒排文件索引(IVF) - 作为工业界应用最广泛的索引之一,IVF通过“分桶”思想,先对向量进行聚类,检索时仅在目标聚类中搜索,大幅降低计算成本。课程中,讲师不仅系统讲解了IVF的聚类原理、参数调优方法(如聚类数量、nprobe参数的选择),还通过动手实验,让学员对比不同参数下的检索精度与速度,掌握在“性能”与“召回率”之间的平衡技巧。

2. 分层导航小世界图(HNSW) - 针对IVF在高召回率场景下的不足,HNSW通过构建多层导航图结构,实现近似线性的检索速度,是当前学术界和工业界公认的性能最优索引之一。培训中,讲师结合源码级案例,拆解了HNSW的图构建逻辑、搜索路径优化策略,并指导学员完成基于HNSW的索引构建与性能压测,让学员直观感受其在亿级数据量下的检索效率。

3. 乘积量化(PQ)与Scalar Quantization - 为解决大规模数据存储成本高的问题,课程详细介绍了量化索引技术。PQ通过将高维向量分解为低维子向量并分别量化,在保证一定精度的前提下,将存储成本降低数倍;而Scalar Quantization则通过对整个向量的数值范围进行压缩,实现更轻量级的存储优化。学员通过实战,掌握了不同量化策略的适用场景及精度补偿方法。

学员高度认可:理论扎实,实战性强

培训结束后,参训学员纷纷表示,课程内容“干货满满”,尤其是对索引技术的深度解析,让他们对向量数据库的底层逻辑有了更清晰的认知。

  • “以前在项目中只用过现成的向量数据库,但对索引的选择一直凭感觉。这次培训系统讲解了IVF、HNSW的原理和区别,还通过实验对比了不同索引的性能,以后做架构设计心里更有底了。”,客户企业参与培训的高级技术工程师说道。

  • 客户的CTO提到, “不仅讲了理论,还分享了很多一线的调优经验,比如如何根据数据量和业务场景选择索引、如何解决高并发下的检索延迟问题,这些实战技巧直接就能用到我们的商品推荐项目中,非常实用。”

持续赋能企业:杭州福强科技有限公司引领AI与向量数据库技术落地新趋势

本次培训的成功交付,不仅展现了杭州福强科技有限公司在向量数据库、AI基础设施等领域的技术沉淀,也体现了其助力企业技术团队成长、推动AI技术产业化落地的责任与担当。

未来,杭州福强科技有限公司将持续紧跟技术前沿,围绕向量数据库、大模型应用、大数据与数据安全等核心领域,推出更多针对性的技术培训与解决方案,帮助企业攻克技术难关,加速数字化转型进程。  




「福强私学」来一个?

「福强私学」, 一部沉淀了个人成长、技术与架构、组织与管理以及商业上的方法与心法的百科全书。

footer img for kb.afoo.me

开天窗,拉认知,订阅「福报」,即刻拥有自己的全模态人工智能。

订阅「福报」
Copyright © 王福强个人版权所有 - Since 2004 (Everything is homebrewed with Pandoc and Markdown, little Scala also included.)

Google Gemini CLI extensions是个什么东西?

2025-10-16 00:00:00

Google Gemini CLI extensions是个什么东西? -王福强的个人博客:一个架构士的思考与沉淀

Google Gemini CLI extensions是个什么东西?

王福强

2025-10-16


上周的福强的本周AI热点回顾与简评已经提到Gemini CLI发布的新版v0.8.0支持extensions这个特性了,那什么是Gemini CLI的extensions呢?

Bundle MCP servers, context files, and custom commands into one package. Allowing users and companies to package and share Gemini CLI customizations.

With extensions, you can expand the capabilities of Gemini CLI and share those capabilities with others.

关键词大概就是:

  1. 模块化
  2. 插件化
  3. 市场化

除了可以在Hosted Extension Marketplace with already over 100 extensions使用/extensions install命令安装别人发布的extensions,还可以:

Install extensions directly via GitHub URLs or local file paths.

基本上就是为“自己动手吃自己狗粮”设计的fallback,当然也包含开发和测试支持。

e.g. gemini extensions install https://github.com/gemini-cli-extensions/security

现在大多还是国外公司的一些产品和服务集成:

更多参考信息:

  • https://geminicli.com/docs/extensions/
    • https://geminicli.com/docs/extensions/getting-started-extensions/
  • extensions市场地址: https://geminicli.com/extensions/



「福强私学」来一个?

「福强私学」, 一部沉淀了个人成长、技术与架构、组织与管理以及商业上的方法与心法的百科全书。

footer img for kb.afoo.me

开天窗,拉认知,订阅「福报」,即刻拥有自己的全模态人工智能。

订阅「福报」
Copyright © 王福强个人版权所有 - Since 2004 (Everything is homebrewed with Pandoc and Markdown, little Scala also included.)

十年

2025-10-15 00:00:00

十年 -王福强的个人博客:一个架构士的思考与沉淀

十年

王福强

2025-10-15


看这标题是不是想起陈奕迅的那首《十年》?

其实

我就是借这个词儿感叹下

谁让很多事情在这个词儿下面撞车了呢

有兄弟这阵子一直念叨要买我那辆老奔子

昨天又念叨

才发现,这车也10年车龄了…

今天果总群里又跟始祖鸟过不去了(当然,还跟东bell家也一直过不去🤣)

其实,作为拥有两件始祖鸟的买家

我觉得始祖鸟挺好的

第一件红色软壳,想来也10年左右了

当年好像是看到51信用卡原CEO孙海淘穿了件始祖鸟T恤

回来查了下这个牌子后买的。

有时候背着11寸的macbook air出去讲课

经常被问这电脑有年头儿了吧?

嗯,应该也超过10年了…

很多东西,初看起来好像很贵

但回头再看

平均下来其实远比平均价钱买的“短命鬼”要划算很多

更不要说频繁的筛选成本和情绪消耗…

品牌这东西

看似很玄乎

但其实确有其价值

当你为各种低价款埋过单、被各种低价坑过之后,你就会理解品牌的价值了。

品牌其实帮我们屏蔽了选品的成本与风险,稍有溢价也是合理的。

品牌是什么? 品牌是你长期信用的积累。

伟大的公司,始于产品,终于品牌。

很多年前,我跟成哥聊天的时候说

我就算趴着,这家也得做10年

嗯,还有两年就快到了,加油,😂




「福强私学」来一个?

「福强私学」, 一部沉淀了个人成长、技术与架构、组织与管理以及商业上的方法与心法的百科全书。

footer img for kb.afoo.me

开天窗,拉认知,订阅「福报」,即刻拥有自己的全模态人工智能。

订阅「福报」
Copyright © 王福强个人版权所有 - Since 2004 (Everything is homebrewed with Pandoc and Markdown, little Scala also included.)

盘古开天辟地也只才一次…

2025-10-10 00:00:00

盘古开天辟地也只才一次… -王福强的个人博客:一个架构士的思考与沉淀

盘古开天辟地也只才一次…

王福强

2025-10-10


我叫向佑,是一个1024维的向量,你们可能不太了解我是个什么东西,简单来说就是长度为1024的数组。

我出生在一片混沌的向量空间

纠缠,漫弥,用你最多理解到三维空间甚至四维空间的小脑瓜,可能理解不了

不过,这些都无所谓了

因为我会告诉你怎么找到我

当天地一片混沌的时候, 是盘古一斧子将混沌一分为二,一半成了天,一半成了地

盘古的那把斧子,在我们向量空间,通常体现为一个随机向量。(对,跟我向佑一样,也是个向量,只不过是随机的,而且得是高斯随机)

当我们用这个随机向量去划过整个向量空间的时候,就像盘古用斧头劈向混沌一样,这个随机向量会在向量空间形成一个超平面,这个超平面会把混沌的向量空间一分为二,划到两边的向量就成了两组,比如我现在就被这个超平面划到了A组…

跟盘古不一样,我们不会只砍一斧子,我们会多砍几斧子,也就是多创建几个随机向量,然后用它们创建新的超平面去划开混沌的向量空间,这时候,我们就有了好多个一分为二的组,我一会儿在C组,一会儿又被另一个超平面划到了E组… 哎,颠破流离啊…

好在,它们终于停下来了,我有了固定的空间位置坐标: [1,0,1,1…]

Oh, No~ 它们又开始了…

也不知道又过去了多久,我被颠簸的都快吐了,等它们停下来的时候,我发现我被贴了好多个门牌号:

  1. [1,0,1,1…]
  2. [1,1,0,0…]
  3. [1,0,1,0…]

我也不知道这些门牌号是干啥用的,直到有一天,有个人终于找到了我,跟我说了他是怎么找到我的,我才明白是怎么回事。

原来,他将我的画像(近似)交给向量空间的管理员(类似天地衙门),让他帮忙找一下我,管理员就把我的近似画像扔给了旁边的智能体助手,智能助手回头给了他一组坐标,他就是拿这些坐标跟我被贴的那些门牌号做对比找到我的。

但为啥要那么多坐标? 管理员说是因为一开始天地混沌,搞不清楚谁是谁,所以管理局就做了个随机网格管理策略,把每个向量划分到不同网格,为了避免遗漏找不着某个向量主体,就多划了一些片区。仅此而已,以防万一嘛~ 这个策略有个正式名称叫啥来着? 哦,好像是叫 LSH - Locality-sensitive hashing

“你叫向佑吧? 门口有人找”

“谁啊?”

我开门一看,愣住了,这货为啥跟我那么像,我都怀疑我是在做梦…




「福强私学」来一个?

「福强私学」, 一部沉淀了个人成长、技术与架构、组织与管理以及商业上的方法与心法的百科全书。

footer img for kb.afoo.me

开天窗,拉认知,订阅「福报」,即刻拥有自己的全模态人工智能。

订阅「福报」
Copyright © 王福强个人版权所有 - Since 2004 (Everything is homebrewed with Pandoc and Markdown, little Scala also included.)

KVectors向量数据库IVF索引,这测试结果我自己都想不到…

2025-09-27 00:00:00

KVectors向量数据库IVF索引,这测试结果我自己都想不到… -王福强的个人博客:一个架构士的思考与沉淀

KVectors向量数据库IVF索引,这测试结果我自己都想不到…

王福强

2025-09-27


测试数据集是Sift的100万向量数据, 向量维度是128维。

第一版的数据先作为基准,大家先有个感性对标:

从Sift的这100万向量数据集中查询一万条向量,一共用时159042毫秒(ms), 平均15.9毫秒, 跟KVectors里提供的HNSW+DiskANN版本查询性能相比,差八九毫秒,不过,也还不错,因为我第一版并没有严格按照IVF索引的语义进行的设计和实现,即向量数据我没有全都搬到内存里存放。

所以,从这角度来说,IO层面应该还有很大的提升空间。

于是,我就在重构完KVectors第三个版本的整体设计与实现之后,为向量存储新增了 loadAllVectorsIntoMemory 这个选项,并把它的默认值设置成了true,毕竟,现在生产服务器的内存轻轻松松就能搞定百万级别的向量数据存储。

搞定之后, 下面是几次粗略测试的结果截图(粗略测试是因为,我只是在2019年的老Intel MacbookPro上跑的这个测试):

一开始我没细看,以为省了几毫秒,细看发现, 这tmd平均不到2毫秒啊!!!

1.1毫秒到1.3毫秒…

我都没想到有这么惊喜,那看来HNSW+DiskANN版本也有很大提升空间咯~

后来,为了再看看没有构建IVF索引之前查询同样数据会是怎么样一个结果,我又跑了下(当然,还是全量数据放内存):

性能急降,平均单次查询直接给干到了230毫秒, 😂

所以,IVF索引功不可没啊!

另外,感谢王总预约了下个月的新培训,感兴趣的企业也欢迎预约哟~




「福强私学」来一个?

「福强私学」, 一部沉淀了个人成长、技术与架构、组织与管理以及商业上的方法与心法的百科全书。

footer img for kb.afoo.me

开天窗,拉认知,订阅「福报」,即刻拥有自己的全模态人工智能。

订阅「福报」
Copyright © 王福强个人版权所有 - Since 2004 (Everything is homebrewed with Pandoc and Markdown, little Scala also included.)