向量嵌入和向量数据库
学习目标
学习完本部分,使学习者能够:
- 解释向量嵌入和向量数据库的概念;
- 编写代码,实现创建向量库、在向量数据库中增删改查向量数据、向量数据相似性比较、数据存储及载入等功能;
学习活动
观看视频:吴恩达《向量数据库:从嵌入到应用》Vector Databases: from Embeddings to Applications中英字幕
- 视频时长:1小时;
- 视频内容简介:向量数据库在各个领域发挥着关键作用,如自然语言处理、图像识别、推荐系统和语义搜索,并随着越来越多的LLM采用而变得更加重要。这些数据库异常有价值,因为它们为LLM提供了实时专有数据的访问权限,从而实现了检索增强生成(RAG)应用程序的开发。在其核心,向量数据库依赖于使用嵌入来捕捉数据的含义,并衡量不同向量对之间的相似度,并筛选广泛的数据集,识别最相似的向量。 学习本视频可以获得有关何时将向量数据库应用于自己所开发的应用程序的知识。将学习以下内容:
- 如何使用向量数据库和LLM深入了解数据。
- 构建实验室,展示如何形成嵌入并使用多种搜索技术查找相似的嵌入。
- 探索快速搜索大型数据集的算法,并构建从RAG到多语言搜索的应用程序。
文档阅读:langchain中的嵌入模型, langchain中Ollama支持的嵌入, langchain中Ollama嵌入api
文档阅读:chromadb, langchain中对chroma的集成
实践
- 完整实践:使用langchain,创建chroma实例,并创建collection,实现对向量数据的增删改查,并比较向量相似性,存储及载入向量数据。
补充资料
文档阅读:SentenceTransformer可以计算句子、文本、图像的嵌入,详见SentenceTransformers。
在huggingface上查看头部的嵌入模型, 点此处