More than code

More Than Code
The efficiency of your iteration of reading, practicing and thinking decides your understanding of the world.
  1. 首页
  2. 未分类
  3. 正文

neon for ai

2025年5月18日 30点热度 0人点赞 0条评论

这周公司邀请了大佬来分享一下neon的一些场景,针对AI这块,neon的优势主要有几点:
* serveless,秒级别拉起服务
* PITR,事务级别的状态闪回
* branching,可写快照

分享的时候演示的neon功能毫无疑问是非常强的,这里主要想来看看这几个功能对应的具体的需求到底是什么

  • serveless这个
    • 可能是用户希望快速拉起一个数据库做测试,这个其实理由并不是很强,因为SQL lite等一些本地数据库在使用上应该相对来说更加方便。
    • 希望是针对PG做快速拉起,比如希望利用pg vector以及数据库的能力,这里可能现有的其他的方案不能很好的解决。一个fallback的手段就是放到两个local的数据库里,来做测试了。这个也涉及到一些技术选型相关的。
      • 如果是非关系性的建模的话,NEO4j可能拉起来也比较容易
    • 可用性?这个个人感觉并不是现在AI开发者非常关注的一点。主要是这里的收益比较边际
  • PITR:
    • agent场景,数据修改坏了可以回退,这个个人感觉理由不是很强,因为git显然更容易管理这块。接一下mcp肯定就更加自动化了
    • git不擅长处理的,就是大规模的数据了,这种情况下应该和agent关系不大,可能是导入一批数据,然后失败了,可以切回老的一致的数据版本。
  • branching,其实和上面的PITR是类似的
    • 可能能想到的和AI关联不大的一个点是,branch一个分支出来作为测试版本可以用来做在线流量的灰度。应该挺好用的。

可能和branching相关的一点就是,线上应该有大量的创建新的知识库/codebase的需求,对应到数据库上可能是大量的表,可能每一个表就有一个对应的向量索引来支撑AI。所以需求可能变成了,在系统中维护大量的向量索引(这里可以泛化,AI依赖的那些数据结构)。
* 目前我还不清楚各个向量数据库支持的collection的数量,不过盲猜应该不会非常多。
* 从我比较熟悉的Graph场景来说,向量索引的隔离一般来说简单实现是在向量索引上加一个filter,这种可能就会牺牲向量索引的效果。
* 当然了,用不用向量索引也是一个时间/空间的tradeoff
* 从现在做RAG的经验上看,如果底层的存储是一个:
* 有类似branching的能力
* 原子读写,即每一次写入我可能会写入若干的数据,但是对一致性要求比较高。所以希望写一堆数据,都成功后,再通知上层新的数据生成完了,可以读了。
* 测试效果用,比如我可以基于现在的数据fork一个新的表出来,用新的算法做写入,然后让业务测试效果。(这个其实类似上面说的,利用branch做测试)
* 管理大量元数据的能力。因为上游可能有很多类型的库。单说知识图谱,我们就可以根据不同的层级构建多种知识图谱,比如文档级别的,目录级别的,空间级别的。这依赖数据库可以管理大量的相互隔离的数据,以及对应的向量/全文索引
* 易用性?毕竟现在大家都愿意为灵活和易用性付费

标签: 暂无
最后更新:2025年5月18日

sheep

think again

点赞
< 上一篇
下一篇 >

文章评论

取消回复

COPYRIGHT © 2021 heavensheep.xyz. ALL RIGHTS RESERVED.

THEME KRATOS MADE BY VTROIS