• 请不要在回答技术问题时复制粘贴 AI 生成的内容
overwall2016w
V2EX  ›  程序员

[技术求助帖] 我希望完成这个功能:有一个数据库,可以存储很多文章。然后在检索的时候,可以按照语义特征搜索,比如情感类文章、恐怖小说文章、谈论爱情的文章、和用户输入相识的文章等。

  •  
  •   overwall2016w · Jan 8, 2024 · 5500 views
    This topic created in 1031 days ago, the information mentioned may be changed or developed.

    我大概知道可以使用向量数据库处理。但是我之前没学过向量数据库。

    有没有朋友说一下该采取什么技术栈、选择哪种数据库、如何循序渐进的学习?

    23 replies  •  2024-01-09 12:42:23 +08:00
    kuituosi
    kuituosi
    Jan 8, 2024
    1
    这就是大数据和 ai ,根据特征分类识别
    marktown
    marktown
    Jan 8, 2024
    2
    这个用普通的数据库也可以,文章存入数据库的时候,搞个打标签的动作把文章进行分类,然后把标签存入数据库,就可以检索了,文章进行分类的动作找 nlp 的开源算法就能实现了
    Trinityuan
    Trinityuan
    Jan 8, 2024
    3
    向量数据库比 SQL 数据库还简单,直接上 milvus ,就读和取。但是你这个数据,除了“和用户输入相识的文章”这个需求,其他的按照 2 楼说的,存储的时候写标签就够了。
    asmmt
    asmmt
    Jan 8, 2024
    4
    我做过代码的相似性分析,就是用自然语言描述找函数,或者用函数找功能相似的函数。可以先用关键词生成给每篇文章生成语义特征向量,然后把用户输入也转为语义特征向量做相似性分析,匹配相似度最高的文章。
    willbetter
    willbetter
    Jan 8, 2024
    5
    文章是文本数据可以考虑使用 ES 来存储,入库的时候进行打标分类就行,也可以提取内容的关键词等特征向量,搜索的时候利用相似度进行匹配
    Fish1024
    Fish1024
    Jan 8, 2024
    6
    文章入库的时候打标签。
    nlfiasel
    nlfiasel
    Jan 8, 2024
    7
    allenQI
    allenQI
    Jan 8, 2024
    8
    打标签+ES 完全满足
    encro
    encro
    Jan 8, 2024
    9
    看到这些,
    想起中文环境,
    我就恍惚看到一个人在如山的垃圾堆里翻来翻去的画面。
    victimsss
    victimsss
    Jan 8, 2024
    10
    为啥我觉得 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"]
    }
    southwolf
    southwolf
    Jan 8, 2024 via Android❤️1
    11
    提取完关键字之后 搞个 word2vec 之类的关键字相似性 丢进 ES 完事
    raycool
    raycool
    Jan 8, 2024
    12
    langchain 完美解决你的问题
    duwenink248
    duwenink248
    Jan 8, 2024
    13
    你要找的是不是 meilisearch?
    overwall2016w
    overwall2016w
    OP
    Jan 8, 2024
    14
    @willbetter 我想让这个查询灵活点。打标签的话,感觉不够灵活,毕竟一篇文章可以有非常多个标签
    overwall2016w
    overwall2016w
    OP
    Jan 8, 2024
    15
    @nlfiasel 是个方案。之前了解过一点,就是感觉学起来太慢了(我之前没有太多 AI 基础),所以想从向量数据库那里找捷径。
    nlfiasel
    nlfiasel
    Jan 8, 2024
    16
    @overwall2016w 向量数据库不过是把别的类型的数据(比如文本)和向量关联起来,向量也是用外部的 embedding 模型计算的。另外所谓向量数据库,其实你维护一个(向量,你的数据)的 tuple list,然后每次都拿查询向量遍历计算,其实效果也差不多。然后这项目也就是推荐个起手的切入点,实际上你可能得根据自己的数据结构另起一套具体的实现。具体实现的话,AI 目前的形式就当成文本补全的 API 就行,langchain 用上的必要性其实也不是很高,因为这玩意针对 gpt 的优化比较多,对于国产的本地 llm 实际上自带的 prompts 效果也不太行。
    zcl0621
    zcl0621
    Jan 8, 2024
    17
    pg 向量存储?
    DigitalG
    DigitalG
    Jan 8, 2024
    18
    信息检索-倒排索引-词袋模型-聚类/分类
    blankmiss
    blankmiss
    Jan 8, 2024
    19
    打很多 tag ?
    joooooker21
    joooooker21
    Jan 8, 2024
    20
    付费的话,Mogodb 的 Atlas 能很快实现你的需求,只需要几个云函数即可进行调用大数据模型进行分析
    6diyipi
    6diyipi
    Jan 8, 2024
    21
    Betsy
    Betsy
    Jan 9, 2024 via iPhone
    23
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1779 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 73ms · UTC 17:22 · PVG 01:22 · LAX 09:22 · JFK 12:22
    ♥ Do have faith in what you're doing.