【转】搜索功能的成本有多高?

转自推特:

整理下来搜索方案有几种(成本从低到高排序):

  • postgresql/mysql 全文搜索(0$)
  • SaaS 版:类似 algolia 的搜索服务(0-15$/month)
  • 自部署 elasticsearch + DB sync(50$/month)
  • OpenAI embedding API + vector database/self hosted faiss(100-200$/month)
  • 托管版 es(aws opensearch/aliyun search)(200$/month)
  • 无服务器:aws opensearch serverless(700$/month)
  • 自主设计搜索系统:多模态、多路召回、用户反馈系统等(10000$/month)

早期尝试

Hackertalk 最早的搜索版本是用阿里云的 elasticsearch + 数据同步实现的,机器成本大概每月 200$,每次改动 table 都要重建索引,重新同步,维护成本很高,由于我没有深度优化 es,搜索质量也不行,后来项目越来越多,每个都要这样做,运维成本太高了,于是打算切换方案,自部署 es 的方案因为维护成本更高,从始至终都没考虑过。

之后尝试 mysql nlp 全文搜索,效果实在太差,分词方式不友好,定制能力差,在 2.0 切换到 pg 之后尝试类似的方式,效果预计有所提升,需要不少开发工作,还在观望中。

SaaS + AI

algolia 的服务也不错,成本低,只需要对接 API 即可,开发方便,但语义搜索能力还不是很满意,猜测背后是用 es 集群做的多租户模式 + 少量改进。

在 chatGPT 火起来之后,因为 gpt 模型的语义理解能力很强,我也考虑用 OpenAI embedding API + 向量数据库实现搜索功能,embedding API 的成本非常低(一次性),成本都在向量数据库上,方案简洁,实现简单,最终效果非常惊艳,语义搜索效果很好,错别字、近义词匹配的很不错,这是我最能接受的方案,缺点是向量数据库还不够好用,SaaS 版成本还是太高,今年向量数据库也是一个很火的创业方向,预计之后会有明显的成本下降。

Serverless

AWS 的 Opensearch Serverless 版本也是一个很大的亮点,SDK 好用质量高,实现简洁,但启动成本较高,最少 4 个 OCU(可以多项目共享),700$/month,至少上线 5 个搜索项目才能体验到明显的成本下降。

最后一种需要一支搜索团队才能实现,不是我能够搞定的,不考虑。以上就是一些搜索方案的尝试,Hackertalk 之后应该会在 4、6 中选一种实现。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值