0

生产规模RAG实现实时新闻提炼 - Robert Caulk | Vector Space Talks

Demetrios Brinkmann

·

2024 年 3 月 25 日

Production-scale RAG for Real-Time News Distillation - Robert Caulk | Vector Space Talks

“我认为,我们在行业中面临着许多有趣的挑战,行业正在建立最佳实践。正如你所说,每个人都在努力弄清楚发生了什么。而像Qdrant这样的基础层工具确实赋能了产品、赋能了公司,也赋能了我们。”
– Robert Caulk

Robert是Emergent Methods的创始人,一位科学家,他致力于各种开源项目,范围从大规模人工智能到离散元建模。他目前正与Emergent Methods的团队合作,自适应地建模每天超过100万篇新闻文章,目标是减少媒体偏见并提高新闻意识。

Spotify、Apple Podcast、Podcast addicts、Castbox上收听本期节目。您也可以在YouTube上观看本期节目。

主要收获

Robert Caulk和Emergent Methods如何为开源社区做出贡献,特别是在AI系统和新闻文章建模方面?

在本期节目中,我们将了解正在重塑我们与AI系统和新闻文章建模互动方式的开源项目。Robert将带我们探索新闻分发不断演变的格局,以及使其更高效、更平衡的技术。

以下是本期节目的一些要点

  1. 语境至关重要:了解新闻中语境工程的重要性,以及它如何确保多样化和可消费的信息流。
  2. 引入Newscatcher API:了解此工具如何利用50,000个新闻来源进行更全面、最新的报道。
  3. 嵌入的魔力:了解文章摘要和语义搜索,以及它们对于发现真正引起共鸣的内容至关重要。
  4. Qdrant和云:探索Qdrant的云产品及其单一职责原则如何支持强大、模块化的新闻数据管理方法。
  5. 初创公司的超能力:了解为什么初创公司在实施新技术解决方案方面具有优势,以及老牌公司如何被传统产品束缚。

趣闻:你知道初创公司缺乏既定实践实际上是面对新技术范式的一种超能力吗?传统产品跟不上!

节目笔记

00:00 Robert和Emergent Methods介绍。
05:22 对语境工程扩展的关键投入。
07:07 优化嵌入以实现搜索中的语义相似性。
13:07 新的搜索技术提高效率和速度。
14:17 具有隐私和可扩展性的可靠云提供商。
17:46 高效的数据移动和资源管理。
22:39 GoLang用于服务,Rust用于安全。
27:34 物流已组织;Newscatcher提供最新新闻。
30:27 测试了Weaviate和另一个用Rust编写的。
32:01 通过加星和用户偏好筛选更新。

更多Robert的名言

“网络搜索功能强大,但速度慢且最终不准确。我们正在构建的是实时索引,没有Qdrant我们就无法做到这一点
– Robert Caulk

“你需要开始考虑持久性和搜索,并确保这些服务是健壮的。这就是Qdrant发挥作用的地方。我们发现,一体化解决方案为了方便而牺牲了性能,或者为了方便而牺牲了准确性,但这真的不适合我们。我们宁愿自己编排,让Qdrant做Qdrant该做的事,而不是希望一体化解决方案为我们处理它,这允许了模块化性能。”
– Robert Caulk

“任何搭乘Qdrant顺风车的人都在受益。似乎每个月,比如两个月前,就增加了稀疏向量支持。总是有不断的大量新功能赋能产品。”
– Robert Caulk

文字记录

Demetrios:Robert,很高兴你来到矢量空间讲座。我不知道你是否熟悉我们在这里做的一些有趣的事情,但我们有机会与像你这样的专家谈论他们在矢量空间方面的工作,以及你如何克服挑战,如何处理问题,因为这是一个非常新的领域,它不是最直观的,正如你将在即将到来的演讲中告诉我们更多。我真的很兴奋,因为你是一名科学家。现在,你是Emergent Methods的创始人,你将职业生涯奉献给了各种开源项目,范围从大规模AI系统到离散元建模。现在,在Emergent Methods,你每天自适应地建模超过100万篇新闻文章。这听起来像很多新闻文章。你一直在谈论和研究生产级RAG,这基本上是目前每个人最喜欢的话题。所以我知道你有很多话要对我们说,伙计。

Demetrios:我现在就把屏幕交给你。如果有人想回答或提问,请随时在聊天中提出,如果需要,我会打断Robert。

Robert Caulk:当然。

Demetrios:很高兴有你在这里,伙计。我对此很兴奋。

Robert Caulk:谢谢你邀请我,Demetrios。是的,这是一个很好的机会。我喜欢谈论向量空间、参数空间。所以在这个节目上谈论它很棒。我认为,我们在行业中面临着许多有趣的挑战,行业正在建立最佳实践。正如你所说,每个人都在努力弄清楚发生了什么。而像Qdrant这样的基础层工具确实赋能了产品、赋能了公司,也赋能了我们。那么让我开始吧。

Robert Caulk:是的,正如你所说,我是Robert,我是Emergent Methods的创始人。我们的背景,正如你所说,我们真正致力于自由和开源软件。我们从许多狭隘的AI开始。Freak AI是我们最初的项目之一,它是用于算法交易的AI ML,非常狭隘的AI,但我们齐心协力构建了Flowdapt。它是一个非常好的集群编排软件,我将在本次演示中稍微谈论一下。但我们的一些背景涉及到,正如你所说,用于超级计算机的大规模深度学习。非常酷,有趣的东西。我们有一些云经验。

Robert Caulk:我们非常喜欢配置,所以让我们深入探讨。为什么我们实际上需要在新闻中进行语境工程?新闻之所以重要,以及为什么需要以平衡、多样化且可消费的方式进行分发,原因有很多。对吧,让我们看看左边的Chat GPT。这是Chat GPT Plus,它正在Bing上搜索加沙新闻,试图找到实时排名前三的文章。网络搜索功能强大,但速度慢且最终不准确。我们正在构建的是实时索引,没有Qdrant我们就无法做到这一点,原因有很多,我很乐意深入探讨,但最终Chat GPT会在这里整合一些东西。就是这样。它报告的第一件事是25天前的文章,包含25天前的裸照。

Robert Caulk:旧新闻。所以它就是不准确。所以这里发生的事情几乎是危险的。对吧,所以这是一个非常微妙的话题。正确地对新闻进行语境工程,这需要大量的精力、时间和奉献精神,并不是每家公司都拥有这种资源。所以我们谈论的是执行新闻标准,对吧?OpenAI和Chat GPT,他们只是没有时间和精力为这类事情建立专门的提示。没关系,他们做得很好,他们在帮助你编码。但有人需要介入并真正执行一些新闻标准。

Robert Caulk:这包括强制执行多样性,语言,地区和来源。如果我要阅读有关加沙发生的事情,你可以肯定我想知道埃及在说什么,法国在说什么,阿尔及利亚在说什么。所以让我们做得对。这有点像我们建议的,而做到这一点的唯一方法是解析大量的文章。这就是你避免过时、陈旧报道的方式。这是一个真正的危险,这有点像我们在第一张幻灯片上看到的。这里的每个人都知道幻觉是一个问题,当你谈论新闻时,你必须尽量减少它。如果错了,代价真的很高。

Robert Caulk:所以你需要专门的人来做这件事。如果你要投入大量的资源和大量的人力,那你就应该好好地扩展它。所以这就是它的用武之地。我们称之为语境工程,确切地说,是新闻语境工程,在Llama 2之前,Llama 2也在左右赋能产品。众所周知,传统的流水线是分块,取512个token,通过翻译器,通过DistillArt,进行一些句子提取,如果幸运的话,进行文本分类,从中获取一些情感,它起作用了。它能给你一些东西。但是当我们谈论阅读整篇文章,获得真正丰富的语境,灵活的输出,翻译,总结,真正决定随着产品的演变而进行动态的自定义提取时,这是传统流水线根本不支持的东西。对吧。

Robert Caulk:我们谈论的是能够即时说,你知道吗,实际上我们想对所有文章提出这个非常具体的问题,并从中提取这个非常具体的字段。这真的只是一个提示修改。这都基于拥有一些高质量、基础级别、多样化的新闻。所以我们将多谈一点。Newscatchers是我们正在使用的一个来源,它开放了50,000个不同的来源。所以请查看它们。那是newscatcherapi.com。如果你正在进行这方面的研究,他们甚至为研究人员提供免费访问。

Robert Caulk:所以我不想过多地深入探讨直接的RAG内容。我们可以深入探讨,但我很乐意谈论一些如何优化它的例子,以及我们如何优化它的例子。在右边,你可以看到图表,我们正在尝试遵循总结和嵌入的过程。我稍后会更多地谈论这一点。它在这里支持我们总结完这些文章并准备好嵌入之后。嵌入对于正确理解非常重要,因为正如节目的名称所暗示的,如果你要进行任何类型的真正丰富的语义相似性搜索,你必须拥有一个干净的集群向量空间。如果你要深入挖掘每天100万篇文章中的重要事实,你需要正确地做到这一点。因此,用户查询与嵌入页面不相等,这里的数据是我们真正想要进行搜索的丰富数据嵌入。

Robert Caulk:那么我们如何将这些点连接起来呢?当然,有很多方法可以做到。一种有趣且值得讨论的方法是IDE。这基本上是一个假设的文档嵌入。你所做的是直接使用LLM生成一篇虚假文章。这就是我们在这里右边展示的。所以假设用户问,纽约市政府发生了什么?你可以说,嘿,给我写一个基于假设的摘要,它可以完全是虚假的,并用它来创建一个虚假的嵌入页面,然后用它进行搜索。对。这样你就离你想要达到的目标近了很多。

Robert Caulk:这有一些限制,它有计算成本,而且它没有更新。它基于它所了解的纽约市政府,并为你创建关键词。所以这里肯定也有优化。当你谈论歧义时,如果用户追问,他们为什么要改变规则?当然,你可以在这里开始进行更多的提示工程,说,好吧,给定这次历史对话和当前问题,给我一个没有歧义的明确问题,然后做高,如果那是你想要做的事情。这里真正的目标是保持在一个单一的参数空间,一个单一的向量空间。在进行搜索时,尽可能靠近你进行嵌入时的状态。所以我们这里谈论的是生产规模的东西。

Robert Caulk:所以,我很高兴能深入探讨我们所依赖的开源技术栈,其中包括Qdrant。但让我们从VLLM开始。我不知道你们是否听说过它。这是一个非常棒的新项目,他们专注于连续批处理和页面滞留。如果我完全坦诚地说,它的技术细节以及他们如何在GPU内存中实现这一切超出了我的薪资级别。但我们所做的是将其外包给该项目,我们非常喜欢他们正在做的事情,并且我们看到了非常好的结果。它正在提高吞吐量。所以当你谈论尝试解析一百万篇文章时,你需要大量的吞吐量。

Robert Caulk:另一个是文本嵌入推理。这是一个很棒的服务器。许多向量数据库会说,好吧,我们会为你做所有的嵌入,我们会做所有的一切。但是当你转向生产规模时,我稍后会谈到这一点。你需要使用微服务架构,所以让你的数据库因为处理嵌入和其他事情而变得迟钝并不是非常明智。所以老实说,我非常推崇单一职责原则,这就是Tei为你做的。它还做动态批处理,这在这个一切都是异构长度的世界中非常棒,无论是输入还是输出。所以这很棒。

Robert Caulk:它确实简化了流程,并允许你隔离资源。但现在,作为节目的明星Qdrant,它真正发挥了作用。任何搭乘Qdrant顺风车的人都在受益。似乎每个月,比如两个月前,就增加了稀疏向量支持。总是有不断的大量新功能赋能产品。对。所以对我们来说,我们做了很多认证,我们真的需要最大限度地减少客户端连接和网络开销。所以你得到了批量认证。

Robert Caulk:过滤器是巨大的。我们谈论的是实时过滤。如果用户正在询问与过去24小时相关的问题,我们不能搜索一个月前、两个月前的新闻文章。因此,拥有时间戳过滤并使其高效,这在Qdrant中就是如此,是巨大的。关键词过滤为我们开启了巨大的产品机会领域。然后是稀疏向量,我们立即加入了这个行列,并且正在看到好处。我不想说替代Elasticsearch,但Elasticsearch也在使用稀疏向量。所以你可以将Splade添加到Elasticsearch中,Splade很棒。

Robert Caulk:它是一个非常好的BM 25替代品。它基于该架构,这为过滤掉那些对搜索无用的关键词提供了很多机会,当用户使用“and”和“a”时,以及那些不那么重要的词会分散注意力。Splade有点像是语义的混合体,但它也是稀疏检索。所以它真的很有趣。然后,将语义和稀疏向量结合的混合搜索也开启了排名能力,你最终会得到更高质量的产品,这才是真正的目标,对吧,尤其是在生产环境中。这里的第四点,我想说,对我们来说可能是最重要的,因为我们所处的世界是延迟为王的世界,能够将Qdrant部署在与所有其他服务相同的集群中。所以我们只是通过交换机进行通信。这太棒了。我们永远不会被网络拖垮。

Robert Caulk:我们永远不必担心云提供商可能过载或邻居噪音问题,诸如此类的问题完全消除了。然后你拥有高度的隐私,对吧。所有数据都与外部世界完全隔离。所以这第四点,我想说,对我们来说是最大的价值之一。但是,分布式部署是巨大的,因为高可用性很重要,而且深度存储,当你从事新闻档案业务时,这是我们 هنا 的主要任务之一,就是永久存档新闻。这是一个不断增长的数据库,所以你需要一个能够随着你的数据增长而增长的数据库。那么,这个语境工程的TLDR是什么?嗯,服务编排实际上只是基于一个非常异构和并行事件驱动环境中的服务编排。在右侧,我们有用户请求进来。

Robert Caulk:它们都命中相同的服务,每五分钟或每两分钟,无论你安排了抓取工作流的时间,也都会命中相同的服务,这需要一些编排。所以这就是我想要讨论的系统实际生产规模、编排的方式以及我们如何做到这一点。提供一些图表来准确说明我们为什么要使用这里使用的工具。这是我们Kubernetes集群的概述以及我们正在使用的服务。所以它有点像前面图表的重绘,但更好地概述了这些东西是如何连接的以及为什么连接。我将逐一介绍这些服务,以便更深入地了解每个服务。但我们的目标是,在我们看来,微服务编排是关键。坚持单一职责原则。

Robert Caulk:像Qdrant、Tei、VLLM和Kubernetes这样的开源项目非常重要。Kubernetes正在为安全性和延迟性打开大门。当然,如果你要参与这个游戏,你必须找到强大的DevOps。这是无法逃避的。所以让我们一步一步地探讨Flowdapt。那是我们的项目。那是我们的开源项目。我们花了大约两年时间根据我们的需求构建它,我们非常兴奋,因为我们可能在上周或前一周进行了公开开源。

Robert Caulk:所以,终于,经过我们所有的测试、重写和重构,我们开放了。我们开放营业了。它现在正在运行AskNews应用程序,我们非常兴奋它将走向何方以及它将如何帮助其他人编排他们的集群。我们的目标和优先事项是高度并行计算,我们使用各种不同的执行器运行测试,进行比较。所以当你使用Flowdapt时,你可以选择Ray或Dask。这是关键。特别是对于纯Python,零代码更改,你不需要知道Ray或Dask在后端是如何工作的,Flowdapt是纯Python。

Robert Caulk:这是我们确保优化数据在集群中移动方式的关键目标。自动资源管理这又回到了Ray和Dask。它们帮助管理集群的资源,为任务分配GPU,或者为单个GPU分配多个任务。当你处理像我们在前面幻灯片中讨论的那些非常异构的工作负载时,这些功能会非常非常方便。对我们来说,最大的优先级是确保快速原型设计和本地调试。当你处理1015台服务器的集群,40或5100台带有Ray的集群时,老实说,Ray可以扩展到你想要的任何程度。所以当你处理如此大的集群时,你笔记本电脑上看到的东西也必须是你部署后看到的东西,这一点至关重要。能够调试你在集群中看到的任何东西对我们来说很重要,我们真的发现需要易于在任务之间进行集群范围数据共享的方法。

Robert Caulk:所以,我们基本上做到了非常容易地获取和放置值。这使得在任务之间移动和共享数据变得极其容易,并使其高度可用,并保持在集群内存中或持久化到磁盘,以便在您进行不可避免的版本更新或调试时,您可以在实时从持久化状态重新加载。在新闻业务中,调度是巨大的。调度,确保各种工作流在不同时间点和不同周期或频率(更确切地说)被正确调度,并且它们的触发器准确地触发您需要的内容,这对实时至关重要。然后,如果我们愿意,这个项目最大的卖点之一就是Kubernetes风格的一切。我们的目标是所有东西都是Kubernetes风格的,这样如果您来自Kubernetes,所有东西都会很熟悉,所有东西都是面向资源的。

Robert Caulk:我们甚至有自己的flowectl,它将是Kubectl风格的命令模式。我们所做的很多工作都是为了确保部署周期效率。因此,目标是Flowdapt可以为您调度所有内容并管理所有这些服务,创建工作流。但是为什么是这些服务呢?对于这种特殊用例,我会快速跳过。我知道我时间不多了,但当然你需要一些专有的远程模型。这就是它的工作方式。你当然会与本地LLM分担负载,以降低成本并在本地拥有一些推理引擎。但这些显然有优缺点。

Robert Caulk:我不会详细介绍它们。我很乐意提供这些幻灯片,欢迎您仔细阅读细节。是的,当然。您需要开始考虑持久性和搜索,并确保这些服务是健壮的。这就是Qdrant发挥作用的地方。我们发现,一体化解决方案为了方便而牺牲了性能,或者为了方便而牺牲了准确性,但这真的不适合我们。我们宁愿自己编排,让Qdrant做Qdrant该做的事,而不是希望一体化解决方案为我们处理它,这允许了模块化性能。如果需要,我们将放弃Qdrant。

Robert Caulk:可能不会。或者如果需要,我们会放弃,或者我们会替换掉VLLM。我们试图保持模块化,以便未来的工程师能够适应目前正在爆发和爆炸的技术。对。在生产规模环境中要讨论的最后一件事是真正最小化延迟。我用Kubernetes提到了这一点,确保这些服务位于同一网络上,这非常重要。但这谈论的是通信延迟。但是当你开始处理大量流量时,生产规模,成千上万的人同时提问,你需要命中各种服务,那么这就是你真正需要将其隔离到异步环境中的地方。

Robert Caulk:当然,如果你能用Golang编写所有这些,那可能是你最好的选择。我们有一些服务是用Golang编写的,但主要地,特别是ML工程师需要使用的端点。我们使用基于Pydantic的FastAPI,老实说,它功能强大。Pydantic V 2.0现在运行在Rust上,正如Qdrant社区的每个人都知道的,当你处理需要高安全性和对不变性以及原子性保护的高度并行环境时,Rust非常有价值。请原谅我的发音,这差不多总结了生产规模的讨论,我很乐意回答问题。我喜欢深入探讨这类事情。我确实有一些关于为什么初创公司现在比一些老牌公司更有利的普遍想法,我将快速介绍一下,不到一分钟,只是为了说出来。我们可以讨论它,看看我们是否同意或不同意。

Robert Caulk:但Demetrios,你在介绍中提到了这一点,那就是最佳实践尚未建立。就是这样。这就是为什么初创公司拥有如此大的优势。而它们尚未建立的原因是,新的技术范式尚未被充分探索。我们真的不知道其局限性以及如何正确处理这些事情。这非常重要。与此同时,一些老牌公司正在应对各种限制和抵制变革等等,然后市场对老牌公司维护这些传统产品并试图让它们在旧技术上蹒跚前行的期望。在我看来,初创公司,你正在围绕推理引擎构建一切,将该推理引擎用于系统的各个方面,以真正开放你产品的适应性。

Robert Caulk:好吧,我不会把Elasticsearch放在传统公司世界里。我会把Elasticsearch放在中间。我明白它仍然有很多价值,但我不喜欢一些厂商锁定。不过,就是这样。这就是我所有要说的。但我很乐意回答问题或聊聊。

Demetrios:伙计,我有很多问题要问你,感谢你分解了那个技术栈。这正是我喜欢看到的谈话类型,因为你完全敞开了心扉。我刚才还在玩AskNews应用程序。所以我想,我可能值得分享我的屏幕,向大家展示那到底是什么以及它现在是什么样子。所以你现在应该能看到了吧?你所建造的一切都非常棒。因为我凭直觉就能说,哦,太棒了,我可以改变,我可以看到积极的新闻,我可以根据我所关注的地区来查看。我想确保我正在查看欧洲或美洲的所有内容。类别。

Demetrios:我可以看体育,等等等等,就像你翻阅旧报纸,你可以去看体育版或财经版一样,然后你引用来源,你会看到,哦,这里的报道趋势是什么?我们正在获得什么样的报道?我们处于报道周期的哪个阶段?大概是这样。然后,等等,尽管我在看好消息,但我以为是“她写了谋杀案”。所以,无论如何,我们所做的就是我们。

Robert Caulk:实际上,我们是这样排序的:我们取调查结果,然后从最积极到最不积极进行排序。但是你说的对,我们前几天还在讨论,我们说,我们只展示积极的。但是是的,这是一个好点子。

Demetrios:好了。

Robert Caulk:她写了谋杀案。

Demetrios:但我昨天真正在和别人讨论的一件事是,你如何更新向量数据库中的内容。所以我可以想象,正如你所说,新闻周期变化非常快,两个小时前的新闻与现在对同一重大新闻事件的理解大不相同。那么你如何确保你总是拉取最新和最准确的信息呢?

Robert Caulk:这是我们认为需要妥善处理的另一个后勤问题,它有几个层面。所以对我们来说,当我们解析Newscatcher传来的数据时,Newscatcher做得很好,总是向我们提供最新的批次。有时会有一些迟到,但一般来说,总是最新的新闻。所以我们每五分钟或每两分钟(取决于我们安排的抓取工作流时间)获取批次,然后对这些批次进行所有丰富处理,并将其添加到Qdrant中。而这正是我们使用时间戳过滤的地方,这是一个非常重要的点。所以在Qdrant的元数据中,我们使用范围过滤器,我们称之为时间戳过滤器,但它实际上是范围过滤器,这很有帮助。所以当我们回去更新时,我们会进行排序并确保我们只过滤掉我们尚未看到的内容。

Demetrios:好的,这完全说得通。基本上,你可以把这概括为我昨天和人们讨论的事情,那就是,嘿,我有一个HR政策,每隔一个月或每个季度都会更新,我想确保我的HR聊天机器人如果告诉人们他们的休假政策是什么,它会从最新的HR政策中提取。那么我如何确保做到这一点呢?我如何确保我的向量数据库不是一个雷区,它会提取任何信息,但我们不一定有能力提取正确的信息?这又回到了检索评估,这也是一个热门话题。

Robert Caulk:没错。不,我认为那是解决这个难题的关键部分。现在,在那个特定的例子中,也许你真的想进入并开始清理你的数据库,只是为了确保如果它真的是你永远不需要的东西。你必须把它清除掉。这是我没有添加到演示文稿中的一部分,但它是附带的。你必须保留多个数据库,你必须确保隔离资源并实时清理数据库。所以要确保你的数据库代表了你想要搜索的内容。如果你愿意,你也可以通过集合来做到这一点。

Robert Caulk:但我们发现有时这是隔离资源的好机会,百分百。

Demetrios:所以,我还有另一个问题要问你,我注意到技术栈中有Mongo。你为什么不直接使用Mongo的向量选项呢?是不是因为你提到的,那些一体化解决方案为了方便而牺牲了性能?

Robert Caulk:老实说,我们没有测试过。我不能说。我只知道我们测试了Weaviate,测试了另一个,我只是非常喜欢。虽然我本来想说我喜欢它用Rust编写,但如果我没记错的话,Mongo也用Rust编写。但对我们来说,文档数据库更多地代表了状态和正在发生的事情,特别是对于我们的配置和工作流。同时,我们真的喜欢依赖Qdrant和所有功能。Qdrant正在更新,所以,是的,我会说单一职责原则是关键。但我看到Qdrant Discord中有一些关于这个的聊天,我认为使用向量的唯一方法实际上是使用他们的云产品,如果我没记错的话。你知道这件事吗?

Demetrios:是的,我也这么认为。

Robert Caulk:这也会是我们无法做到的。

Demetrios:是的。它就像是开源的,但又不是开源的,所以这说得通。是的。这太棒了,伙计。所以我鼓励所有在座的听众,再次查看这个AskNews应用程序,并及时了解您所在地区和您喜欢的最相关新闻。我登录了,所以我想当我登录时,它会调整我的设置。我能做到吗?

Robert Caulk:好问题。

Demetrios:下次再见。

Robert Caulk:嗯,目前,如果你给一个你觉得有趣的故事或叙述加星,那么你可以根据这个星号进行过滤,无论是最新的更新,你都会收到那个特定故事的更新。好的。这又引出了关于Qdrant的另一点,目前我们还没有这样做,但我们计划使用推荐系统,让用户通过简单地表达他们喜欢什么、不喜欢什么来创建自己的个人资料,然后使用推荐系统开始推荐他们可能喜欢或不喜欢的故事情节。这几乎完全是我们将Qdrant外包。对吧。我们只是围绕它进行构建。所以这很好。

Demetrios:是的。那会让生活轻松很多,尤其是在了解推荐系统的情况下。是的,那太棒了。

Robert Caulk:谢谢。我很感激。当然。我会尝试提供幻灯片。我不知道是否可以把它们发给Qdrant或什么。他们也许可以在Discord上发布,当然。

Demetrios:我们会把链接放在本次演讲的描述里。Rob,这太棒了。我非常感谢你来到这里和我聊天,感谢你详细讲解了你所做的一切。我也很喜欢VllM项目。它正在迅速发展。看到如此多的使用以及你用它所做的一切好事,真是太酷了。是的,伙计,对于任何想关注你旅程的人,我们都会放下你的LinkedIn链接,这样他们就可以和你联系了。

Robert Caulk:太酷了。

Demetrios:谢谢。

Robert Caulk:Demetrios,谢谢你邀请我。回头见。

Demetrios:回头见,伙计。保重。

免费开始使用 Qdrant

开始使用