RU402 · 自定进度的

Redis 作为向量数据库

学习如何将 Redis 用作向量数据库并执行向量搜索。

 course image

您将学到的内容

借助 Redis,您可以利用向量数据类型支持构建高级用例。本课程介绍语义搜索并解释其相对于传统全文搜索的优势。您将了解向量嵌入和嵌入模型的概念,学习将 Redis 用作向量数据库并执行向量搜索。为了完善整体情况,您将理解 Redis 如何代表与大型语言模型集成的应用程序的核心组件。此外,您将了解 Redis 如何与 LangChain、LlamaIndex 或 FeatureForm 等最流行的框架以及 Amazon Bedrock 或 AzureOpenAI 等服务提供商良好集成,以开箱即用地利用向量功能。

您将构建的内容

通过本课程,您将把理论中的主要概念付诸实践,并使用最流行的编程语言:Python、Java、C# 和 JavaScript 测试语义搜索背后的主要思想。您还将使用 Jupyter 笔记本运行示例。您将从一个简单的应用程序开始,以对文本执行语义搜索,并了解如何为使用真实数据的复杂应用程序建模数据。尤其是,您将实现

  • 使用真实书籍数据集的智能推荐系统
  • 利用向量搜索的面部识别系统,使用测试对象的的面部识别其身份
  • 与 OpenAI ChatGPT 集成的 AI 辅助智能聊天机器人

您将使用 Redis 哈希和 JSON 数据类型定义数据模型,并了解如何使用几行代码和最流行的客户端库(包括 RedisVL(针对向量优化的原生 Python 客户端库))来构建此类项目的框架。


课程大纲

第 1 周 - 什么是语义搜索?

  • 课程概述
  • 语义搜索概述
  • 从全文搜索到语义搜索
  • 非结构化数据建模
  • 使用向量嵌入

第 2 周 - 介绍向量搜索

  • 介绍向量搜索
  • 向量空间
  • 实践中的向量搜索
  • 使用正确的距离

第 3 周 - Redis 作为向量数据库

  • Redis 作为向量数据库
  • 加速语义搜索
  • 向量:Redis 另一种数据类型
  • 存储向量
  • 配置向量搜索

第 4 周 - 使用客户端库

  • 在您的编程语言中运行向量搜索
  • Jedis,Java 客户端库
  • node-redis,JavaScript 客户端库
  • NRedisStack,C# 客户端库
  • RedisVL,Python 客户端库

第 5 周 - 使用案例

  • 从理论到实践
  • 基于文本的推荐系统
  • 视觉推荐系统
  • GenAI 辅助聊天机器人
  • 更多使用案例

第 6 周 - 赚取您的认证!

  • 期末考试
课程编号
RU402
开始时间
2024 年 2 月 20 日
预计工作量
~ 每周 4 小时

先决条件

以下课程推荐但不是必需的

  • RU204:以高速存储、查询和索引 JSON
  • RU101:Redis 数据结构介绍

软件要求

  • Web 浏览器:Firefox 39.0+ 或 Chrome 43+
  • 操作系统:Mac OS X 10.7+ 64 位,Ubuntu 14.04+ 64 位,或 Windows 10
  • 软件:免费的 Redis 云帐户,或 Docker,或 Redis Stack 的本地安装。推荐 Redis Insight,但不是必需的。Python 3.7 或更高版本
  • 推荐用于在本地运行代码示例:Node.js(版本 14.8 或更高版本)、Java JDK(Java 11 或更高版本)和 .NET SDK(版本 6 或更高版本)。
  • 访问 vimeo.com、university.redis.com 和 github.com
A photograph of Mirko Ortensi
讲师 Mirko Ortensi

Mirko Ortensi 在 10 岁时在 Commodore 64 上用 Basic 编写了他的第一行代码。这是一见钟情。最终,他在 2002 年获得了意大利马尔凯理工大学的电子工程学位和软件工程硕士学位,并在西班牙巴塞罗那的 UPC 完成了关于模式识别的论文。Mirko 的职业生涯跨越了软件和服务行业的多个职位,包括开发和测试、系统管理和支持,特别是围绕数据库和分布式系统。作为 Redis 的高级技术支持架构师,Mirko 负责分享关于 Redis 产品、服务和功能的技术知识。


A photograph of Justin Castilla
讲师 Justin Castilla

Justin 是 Redis 的高级开发者倡导者。他帮助制作了 Redis 大学的几门课程,并为 Redis YouTube 频道制作了众多视频。在加入 Redis 之前,Justin 是一名 Web 开发训练营讲师、一家自动化测试公司的软件工程师,以及一名遛狗员!