我大概知道可以使用向量数据库处理。但是我之前没学过向量数据库。
有没有朋友说一下该采取什么技术栈、选择哪种数据库、如何循序渐进的学习?

这就是大数据和 ai ,根据特征分类识别

这个用普通的数据库也可以,文章存入数据库的时候,搞个打标签的动作把文章进行分类,然后把标签存入数据库,就可以检索了,文章进行分类的动作找 nlp 的开源算法就能实现了

向量数据库比 SQL 数据库还简单,直接上 milvus ,就读和取。但是你这个数据,除了“和用户输入相识的文章”这个需求,其他的按照 2 楼说的,存储的时候写标签就够了。

我做过代码的相似性分析,就是用自然语言描述找函数,或者用函数找功能相似的函数。可以先用关键词生成给每篇文章生成语义特征向量,然后把用户输入也转为语义特征向量做相似性分析,匹配相似度最高的文章。

文章是文本数据可以考虑使用 ES 来存储,入库的时候进行打标分类就行,也可以提取内容的关键词等特征向量,搜索的时候利用相似度进行匹配

文章入库的时候打标签。

你要找的是不是: github.com/chatchat-space/Langchain-Chatchat

打标签+ES 完全满足

看到这些,想起中文环境,我就恍惚看到一个人在如山的垃圾堆里翻来翻去的画面。

为啥我觉得 NoSQL + tag 比较简单。`{"_id": ObjectId("5f6aefad181f144bfb5eb6b1"),"title": "MongoDB Case Example","content": "This is an example of using MongoDB for a case study.","emotion": "study","topic": ["database", "MongoDB"]}

提取完关键字之后 搞个 word2vec 之类的关键字相似性 丢进 ES 完事

langchain 完美解决你的问题

你要找的是不是 meilisearch?

我想让这个查询灵活点。打标签的话,感觉不够灵活,毕竟一篇文章可以有非常多个标签

是个方案。之前了解过一点,就是感觉学起来太慢了(我之前没有太多 AI 基础),所以想从向量数据库那里找捷径。

向量数据库不过是把别的类型的数据(比如文本)和向量关联起来,向量也是用外部的 embedding 模型计算的。另外所谓向量数据库,其实你维护一个(向量,你的数据)的 tuple list,然后每次都拿查询向量遍历计算,其实效果也差不多。然后这项目也就是推荐个起手的切入点,实际上你可能得根据自己的数据结构另起一套具体的实现。具体实现的话,AI 目前的形式就当成文本补全的 API 就行,langchain 用上的必要性其实也不是很高,因为这玩意针对 gpt 的优化比较多,对于国产的本地 llm 实际上自带的 prompts 效果也不太行。

pg 向量存储?

信息检索-倒排索引-词袋模型-聚类/分类

打很多 tag ?

付费的话,Mogodb 的 Atlas 能很快实现你的需求,只需要几个云函数即可进行调用大数据模型进行分析

Langchain 你值得拥有, github.com/langchain-ai/chat-langchain

huggingface.co/BAAI/bge-large-zh