对于一个新手,如何学习和了解向量数据库。主要是方法角度的探索。比如,我是一个文科生,毫无相关基础,目前的学习目标暂不明确,是先尽可能了解。

这是啥?

现在我们只知道一个概念“向量数据库”,查了一下翻译是”vector data“。

数据库,倒是知道一点,但是不知道这个向量数据库有啥不同。

除了搜索引擎,幸好我们有ChatGPT来回答我的问题——向量数据库到底是啥、有什么价值、和传统数据库差异是什么、为什么会出来……这些问题,都是为了让我泛泛对于这个东西形成概念。

虽然向量数据库可能是一个新的东西,但是大模型还是给出了它的回答,我大致用了几分钟理解了向量数据库与传统数据库之间的联系和区别,比如表结构的关系型数据库,向量化映射的向量数据库,模糊理解了这个东西。

如果对于向量数据库还有不能理解的,还可以继续问问ChatGPT,大致理解。

应用导向

如同阳老师的分享,传统模式是“学习→工作→作品”,现在是要反过来“作品→工作→学习”,上来就是追求作品。

啥东西都没有,肯定是追求不了大作品,但是可以追求小作品,形成一个项目制的学习(PBL)。

但是,可能因为向量数据库比较新,直接通过GPT来寻找有点麻烦,它只是给出了一些方向,比如文章推荐等,有启发但是对于我来讲没有能力落地。直接借助了中文互联网信息更新较快质量较高的搜索入口——比如微信和知识星球。

因为我已经对向量数据库有了一点理解,比如在微信中搜索“向量数据库+实践”、“向量数据库+应用”,很快看到了一些案例。

第一篇文章就是一个实践案例,特别是有与大模型相关的LongChain让我更感兴趣。这个实践的介绍为:

通过本文可以了解:本文探索云原生向量数据库Milvus的安装和Python API操作使用,使用Langchain和港大的Instruction-XL模型做本地数据的切分和转向量,为那些无法使用OpenAIEmbeddings、不想将数据外泄到境外的项目提供了一个示例。

很典型的场景,而且配有完整的案例讲解和代码,我可以在“作品”(应用)中,深入理解一下其中的内容。甚至,我将链接(公号链接不行,搜索标题可以找到网页链接)交给了ChatGPT,让它回答我一些操作的细节。

类似的项目在微信搜索中还有很多。而且,我想到了自己是一个更容易在人际中被带动的人,所以,我想到了自己加入的众多知识星球。我搜索“向量数据库”,居然找到了一些开智社群的小伙伴有实践,比如这一个基于LongChain和向量数据库调用,来做文章的搜索。有机会看朋友是否认识TA,我可以和他聊聊。 在另外一个社群中看见,一种基于ChatGPT结合向量数据库做自有数据问答的玩法,很接地气,感觉有意思,我可以尝试一下,以此来应用中学习。

这才是开始

这是基于PBL(项目式学习),也是阳老师说的以应用、作品为导向的学习。不过,这仅仅是开始,初步接触。

在接触中,我开始接触到更大的世界,比如之前开智同学案例中使用的的数据库pinecone.io,上官网一看——口号是长期记忆(这不恰恰是大模型的问题)、7月峰会居然是解决大模型幻觉的主题,都让我有点兴趣了解它。

恰好其在github上有开源项目,有一个似乎是示例数据,可以看看。参与进去,不断尝试的过程中,肯定有新的发现。

边尝试,边扩展,边答疑、边翻译,也就参与到共同活动中。尝试着来……一些有趣的向量数据库的实践、一些有趣的向量数据库项目,玩着玩着了解更多了些。

直接的社群

我也尝试直接在微信等地方寻找向量数据库的社群,比如直接搜索“向量数据库+课”、“向量数据库+群”,可能因为这个东西,可能太新。

但是,也发现了几个个人在科普这个东西,我准备关注一下,看看他们的思路,学习一下、做点尝试,有收获的地方,我也给他们回复一下,或者帮他们优化以下代码。

一点小心得

这是一个简单的思路尝试,一个多小时小摸索,还来不及真正实践和近一步发现新的线索,主要是从思路上总结一下自己怎么了解新事物——

  1. 确定正确的关键词,我们需要通过关键词链接主流知识
  2. 快速理解关键词的内涵外延,差不多能够理解
  3. 应用导向,找到自己有感觉的小应用,特别是模仿别人,这是我们学习的天赋
  4. 然后借助应用,进一步往源头探索,进入更大的信息和社群

changelog

  1. [[20230626]]