「如何给博客添加相似文章推荐功能」的摘要信息
看来向量数据库的作用有很多啊…… 起因 前几天我用Cloudflare Vectorize给博客的聊天机器人加了知识库的功能,本来想着用向量数据库做文章推荐是不是每次都要走翻译+向量化的操作,不过后来我又仔细看了一下Cloudflare的官方文档,发现它是可以根据ID查询存储的向量的,既然这样的话用现有的数据库做一个相似文章推荐应该非常简单,于是我就做了一个试试看。 制作过程 后端部分 其实流程很简单,就是把对应ID的向量查出来之后拿着这个向量再去查询就好了,唯一需要注意的就是它查出来的第一条肯定是自己,所以只要把第一条删掉就行,代码也非常简单: if (url.pathname.startsWith("/suggest")) { let resp = []; let result = await env.mayx_index.getByIds([ query ]); if (result.length) { resp = await env.mayx_index.query(result[0].values, { topK: 6 }); resp = resp.matches; resp.splice(0, 1); } resp = resp.map(respObj => { respObj.id = encodeURI(respObj.id); return respObj; }); return Response.json(resp, { headers: commonHeader }); } 前端部分 后端当然很简单,但是我之前有些欠考虑了,我当时做AI摘要和知识库的时候,都只存了文章的链接,没有存标题😅……但是推荐文章的超链接总不能不放标题吧……那怎么办呢?一种就是我把...