Dopple Labs 选择 Zilliz Cloud 作为安全高效的向量数据库

一直以来,我都十分赞同采用通用的标准来评估机器学习领域的技术。向量数据库领域也是如此。Zilliz 发布的性能测试对我有着很大的帮助。

——Sam Butler

Dopple.AI 机器学习总监

01.Dopple AI简介

Dopple Labs Inc. 是 Dopple.AI 的原厂,通过提供创新平台,彻底改变人类与 AI 的交互方式。Dopple.AI 可通过 iOS 和 Android 下载。使用 Dopple.AI 后,用户能够创建逼真的 AI 克隆体(亦称为 “Dopples”),无缝集成视频、音频和消息传递,获得沉浸式体验。

本质上,Dopple.AI 利用了 Llama2 —— 先进的 LLM 技术。用户可以与 Dopples 聊天互动。无论是 Dopple Labs 还是用户自己创建的 Dopples,都可以根据用户的输入和提示模拟现实中的对话。

最近,Dopple Labs 推出了突破性的图像回应功能,通过图像中附带的丰富情感,增强了用户与 Dopples 之间的互动。此外,声音字幕和实时音频流媒体功能进一步提升了音视觉体验,促进了用户与 Dopples 之间更深层次的连接,提升了用户对话参与感。

随着 Dopple.AI 不断发展创新,它重新定义了人与个性化 AI 克隆体之间互动的方式。

02.用户痛点:将历史聊天记录增加到Chatbot中

Dopple AI 的用户对平台 AI 角色有着深入了解,采用高级技术塑造 Dopples 以及与 Dopples 之间的互动。他们利用消息编辑和 reroll 功能来引导对话,打造个性化的交流体验。本质上,用户充当“Prompt工程师”,巧妙地与 AI 角色进行对话。用户通过策略性的 Prompt 和编辑引导对话,根据自己的偏好和目标矫正 Dopples,并与其实时互动。

在机器学习总监 Sam Butler 的带领下,Dopple.AI 团队通过使用检索增强生成(RAG)技术来实现内存存储系统,存储对话摘要,从而构建这类功能。在此过程中,需要获取几条消息作为上下文,主消息作为他们想要存储记忆的内容。然后他们使用另一个 LLM 创建这些消息的摘要。生成的摘要被转化为 Embedding 向量并存储在向量数据库中。

当用户提交查询时,查询被转换成一个新的 Embedding 向量,然后在向量数据库中搜索与之相似的 Embedding 向量。这样一来,用户就能够在对话中带入上下文,帮助 LLM 获得长期记忆的能力。例如,如果用户向 Dopples 提问:“我的宠物鱼叫什么名字?”而此前已经发生过关于宠物鱼的对话,那么他们的查询会被转换为 Embedding 向量,根据上下文从向量数据库检索出宠物鱼的名字。

03.控制Chatbot对话内容

用户可以编辑他们的最后一条消息,从而精炼与 LLM 的对话。如果他们收到的回复不满意,可以选择“reroll”而不改变最后一条消息,促使 LLM 提供新的回答。此外,用户可以修改他们的最后一条消息来改变 LLM 的回应,逐步塑造对话,让对话内容以他们期望方向的进行。这种十分受用户欢迎,尤其是那些有明确对话目标的高级用户。相反,新手或不常用的用户可能会更被动,让对话自然展开。然而,Dopple AI 的核心用户群通常参与度更高,把对话当成是一项任务或角色扮演,因此更需要把控对话内容。

每个对话摘要会被存储为数据库中,具有唯一性,允许根据用户名有效过滤。摘要是通过将每三或四条消息合并为一个大的摘要生成的,然后无缝插入到向量数据库中。这一过程不断积累,成为对话记忆和上下文。除非用户明确删除对话记录,否则所有记忆将被保留,相关的记忆也会被删除。

这种 RAG 应用更注重娱乐价值而非回答准确性。

04.解决方案:使用安全、高性能的Zilliz Cloud向量数据库

Sam Butler 主要负责协调 ML 团队。他还负责与前端团队合作,搭建应用和网络平台。他们面临的最大挑战之一,就是紧跟最新的模型进展。随着新模型不断涌现和最先进技术的演变,跟上步伐需要付出巨大努力。这就是与像 Zilliz 这样的全托管服务提供商合作的价值所在,Zilliz 能够让其用户专注于核心产品。

由于 Sam 团队需要大规模检索服务,并且要求索引具有可扩展性,他们放弃了 Pinecone,转而使用 Zilliz Cloud。尽管 Pinecone 提供了全托管服务,但缺乏他们所需的细粒度权限控制和真正有效的扩展能力。随着 Dopple.AI 数据量不断增加(预计达到数亿到数十亿),他们需要寻求一种能够有效扩展的解决方案。最终,他们选择 Zilliz Cloud。

在使用 Pinecone 遇到挑战后,Sam 探索了不同向量数据库,查阅了向量数据库性能测试,最终发现了 Zilliz Cloud。Dopple AI 的团队特别对性能测试结果十分感兴趣,并十分期待进一步对其进行探索。

05.Dopple LAbs:展望未来

Sam 和他的团队最近通过引入视听体验来增强服务。他们首先集成了图像回应功能,为每个角色提供了大约 800 到 900 张图像,描绘了 30 种情绪——每种情绪都有几个不同的版本。在推理过程中,另一个语言模型确定响应的情绪,并从相应的情绪类别中随机选择一张图片以确保多样性。此外,他们还引入了声音字幕功能,并从推理提供商流式传输角色到 ElevenLabs 以实现实时音频流。这种同步的视听体验会在应用中显示表情回应的图像和文本。除此之外,他们还计划添加 Glide 语音通话、动态图像和视频。最终,用户可以通过 FaceTime 与他们的 Dopples 进行实时对话。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/395824.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

关于进程间通信的练习

1> 使用有名管道实现,一个进程用于给另一个进程发消息,另一个进程收到消息后,展示到终端上,并且将消息保存到文件上 一份 create.c #include<myhead.h>int main(int argc, const char *argv[]) {//创建一个管道文件if(mkfifo("./linux",0664)-1){perror(&qu…

RabbitMQ docker安装

后台配置文件 rabbitmq:image: rabbitmq:latestcontainer_name: rabbitmqports:- "5672:5672" # RabbitMQ server port- "15672:15672" # RabbitMQ management console portenvironment:RABBITMQ_DEFAULT_USER: adminRABBITMQ_DEFAULT_PASS: admin 若要打…

磁盘无法访问的危机与解救:数之寻软件的数据恢复之旅

在数字时代&#xff0c;磁盘作为数据存储的核心&#xff0c;承载着我们的工作文档、珍贵照片、个人视频等无价之宝。然而&#xff0c;当您试图访问某个磁盘时&#xff0c;却遭遇了“磁盘无法访问”的提示&#xff0c;这无疑是一场突如其来的数据危机。本文将深入探讨磁盘无法访…

【Kubernetes】k8s集群资源调度

目录 一、k8s的List-Watch机制 二、scheduler的调度过程 三、指定节点调度Pod 1.通过nodeName调度Pod 2.通过节点标签选择器调度Pod 3.通过亲和性调度Pod 1&#xff09;节点亲和性 2&#xff09;Pod 亲和性 四、污点(Taint) 和 容忍(Tolerations) 1.污点(Taint) 2.…

运行pytorch报异常处理

一、问题现象及初步定位&#xff1a; 找不到指定的模块。 Error loading "D:\software\python3\Lib\site-packages\torch\lib\fbgemm.dll 此处缺少.dll文件&#xff0c;首先下载文件依赖分析工具 Dependencies https://github.com/lucasg/Dependencies/tree/v1.11.1 之后下…

【大模型学习】多模态大模型进行偏好优化

一、简介 训练模型以理解并预测人类偏好是一项复杂的任务。传统方法如SFT&#xff08;监督微调&#xff09;通常需要较高的成本&#xff0c;因为这些算法需要对数据进行特定标签的标注。偏好优化&#xff08;Preference Optimization&#xff09;作为一种替代方案&#xff0c;…

【多线程-从零开始-捌】阻塞队列,消费者生产者模型

什么是阻塞队列 阻塞队里是在普通的队列&#xff08;先进先出队列&#xff09;基础上&#xff0c;做出了扩充 线程安全 标准库中原有的队列 Queue 和其子类&#xff0c;默认都是线程不安全的 具有阻塞特性 如果队列为空&#xff0c;进行出队列操作&#xff0c;此时就会出现阻…

C++ 重要特性探究

shared_from_this 使用分析 场景 类的成员函数需要获取指向自身的shared_ptr的时候类成员函数传递shared_ptr给其他函数或者对象的时候&#xff0c;目的是为了管理对象生命周期使用方法 首先类必须继承 std::enable_shared_from_this<T>必须使用 shared_from_this 获取指…

智慧交通:将物联网与人工智能完美融合

智慧交通是当今社会面临的一个重要挑战&#xff0c;也是人们生活质量提高的一个重要方面。通过将物联网技术与人工智能相结合&#xff0c;我们能够实现智慧交通系统的全面升级和优化&#xff0c;为人们带来更加便捷、高效和安全的出行体验。 在智慧交通领域&#xff0c;物联网…

电脑图片损坏打不开怎么办?能修复吗?

照片和视频是记录和保存现实生活中的事件的最好方式。由于手机储存空间有限&#xff0c;一般我们会把有纪念意义的照片放到电脑上进行保存&#xff0c;但有时难免会遇到照片被损坏打不开的情况&#xff0c;一旦遇到这种情况&#xff0c;先不要急&#xff0c;也不要因为照片打不…

【智能控制】第7章 神经网络理论基础,神经网络的分类,原理,发展,神经网络学习算法(北京航天航空大学)

目录 第7章 神经网络理论基础 1. 神经网络的发展 2. 神经网络原理 3. 神经网络的分类 (1) 前向网络 (2) 反馈网络 (3) 自组织网络 4. 神经网络学习算法 (1) 智能Hebb学习规则 (2) Delta&#xff08;δ&#xff09;学习规则 5. 神经网络的特征及…

【Mind+】 掌控板入门教程09 魔法之光

光是地球生命的来源&#xff0c;是人类生活的依据&#xff0c;更是人类认识外部世界的工具。在科技发达的今天&#xff0c;我们可以通过传感器来检测光&#xff0c;利用光帮助我们更好的生活。 今天就让我们一起通过几个小项目来感受光的魔法吧。 项目示例 掌控板…

经验是负债,学习是资产

经验是负债&#xff0c;学习是资产 经验是负债&#xff0c;学习是资产。这是李嘉诚先生的一句名言。他一语道出了学习在企业发展中的推动作用。 企业家经营的目的&#xff0c;无非就是将利润最大化。企业能够产生利润&#xff0c;靠的是提升自身业绩、降低运营成本&#xff0c;…

使用 Java Swing 创建一个最大公约数计算器 GUI 应用

使用Java语言,设计一个程序,实现求取两个正整数的最大公约数。 比较基础的一个Java小程序。 1、效果展示 2、程序代码 package demo; import javax.swing.*; import java.awt.*;

Kafka基本讲解

Kafka基本讲解 一&#xff1a;Kafka介绍 Kafka是分布式消息队列&#xff0c;主要设计用于高吞吐量的数据处理和消息传输&#xff0c;适用于日志处理、实时数据管道等场景。Kafka作为实时数仓架构的核心组件&#xff0c;用于收集、缓存和分发实时数据流&#xff0c;支持复杂的…

【博客搭建 第二篇章】项目中怎么引入其他的 icon

一、注册账号并将图标添加到自己的项目中 1、网站地址&#xff1a;https://www.iconfont.cn/ 2、注册 iconfont 账号 3、登录 iconfont 网站中 4、添加图标到购物车中 5、添加图标到项目中 6、生成在线连接 7、复制连接 二、项目中配置连接地址 找到项目中的 them…

R语言医疗数据分析笔记

分组因子又是什么意思&#xff0c;分组因子和数组的区别是什么 举个实际的例子 分组因子 分组因子是分类变量&#xff0c;用于将数据分成不同组以便于比较或分析。例如&#xff0c;在一项研究中&#xff0c;研究对象的性别&#xff08;男性和女性&#xff09;可以视为一个分组…

OBC充电机电力系统的安全保障

OBC&#xff08;On-Board Charger&#xff09;充电机是电动汽车的关键部件&#xff0c;它负责将外部交流电转换为直流电&#xff0c;为电动汽车的动力电池充电。因此&#xff0c;OBC充电机的电力系统安全保障至关重要。 首先&#xff0c;OBC充电机需要有良好的电气隔离和保护功…

【mysql 第三篇章】一条 update语句是怎么持久化到磁盘上的?

首先看一下这个 SQL 语句你会不会写? 下面是说明执行这个 SQL 语句&#xff0c;数据库底层做了什么操作。 update users set namexxx where id10;在引擎要执行更新语句的时候&#xff0c;比如更新 id10 这行数据时&#xff0c;他会先查看数据在缓冲池中是否存在&#xff0c;如…

C语言指针详解-包过系列(二)目录版

C语言指针详解-包过系列&#xff08;二&#xff09;目录版 1、数组名的深入理解1.1、数组名的本质1.2、数组名本质的两个例外1.2.1、sizeof&#xff08;数组名&#xff09;1.2.2、&数组名 2、使用指针访问数组3、一维数组传参本质4、二级指针4.1、二级指针介绍4.2、二级指针…