探索元宇宙的未来:数字人对话系统 - Linly-Talker —— “数字人交互,与虚拟的自己互动”

探索元宇宙的未来:数字人对话系统 - Linly-Talker —— “数字人交互,与虚拟的自己互动”

之前空闲的时候我似乎已经写过了有关于数字人的两篇文章,今天更多的写这篇文章就是想探索一下元宇宙的未来,这种数字人对话系统能做什么,还需要做什么的,还有什么没做的,以及我做了什么

Kedreamix:“数字人交互,与虚拟的自己互动”——用PaddleAvatar打造数字分身,探索人机交互的未来img

Kedreamix: 数字人对话系统 Linly-Talker (已加入Qwen和GeminiPro加强对话+上传任意图片的数字人)img

首先给大家贴一下我的数字人对话系统的github链接,我也一直保持更新和迭代,哈哈,一起加油,如果感兴趣可以给个star呀,如果有兴趣和我一起完善我也非常欢迎。

数字人对话系统 - Linly-Talker —— “数字人交互,与虚拟的自己互动”github.com/Kedreamix/Linly-Talker

最后也给出我在b站发布的视频,可以多多关注嘻嘻:

Linly-Talker 更新GPT多轮对话系统,LLM为数字人赋能 !!!_哔哩哔哩_bilibiliwww.bilibili.com/video/BV1v94y1K7GK/img

TO DO LIST

先说一下我做了什么吧,这下面是我用gradio已经实现了的,大家都是可以去进行尝试的,代码应该没什么问题,现在如果跑起来,加上Qwen 1.8B的大模型,可能只需要8g显存就能跑起来,还是比较简单的,我也把百度网盘的模型下载链接传上去了,方便大家学习和下载。

  • 基本完成对话系统流程,能够语音对话
  • 加入了LLM大模型,包括LinlyQwenGeminiPro的使用
  • 可上传任意数字人照片进行对话
  • Linly加入FastAPI调用方式
  • 利用微软TTS加入高级选项,可设置对应人声以及音调等参数,增加声音的多样性
  • 视频生成加入字幕,能够更好的进行可视化
  • GPT多轮对话系统(提高数字人的交互性和真实感,增强数字人的智能)

那也要提一下我想做或者说未来要做的,这也感谢大家给我提出的意见什么的,其实还有很多的想法,我觉得未来是可以把这个进行完善的,慢慢的进行一个学习和开发,慢慢加强起来。

  • 语音克隆技术(语音克隆合成自己声音,提高数字人分身的真实感和互动体验)
  • 加入Langchain的框架,建立本地知识库
  • 实时语音识别(人与数字人之间就可以通过语音进行对话交流)
  • 替换edgetts,转为个人可训练的TTS模型,可以任意定制音频和音色
  • 提高ASR速度,替换Whisper,换为中文ASR
  • NeRF数字人的方式,可以考虑替换掉SadTalker或者多几个选项

示例

从github能看到我对应给出的示例,现在能够自己自由的对话了

img

数字人对话Linly-Talker示例

项目展示

接下来讲一下我的更新,我从2023.12到现在,大概是更新了三个版本,现在应该都是可以使用并且没有bug的,如果有问题有bug我也会及时完善

2023.12 更新

用户可以上传任意图片进行对话

2024.01 更新

  • 令人兴奋的消息!我现在已经将强大的GeminiPro和Qwen大模型融入到我们的对话场景中。用户现在可以在对话中上传任何图片,为我们的互动增添了全新的层面。
  • 更新了FastAPI的部署调用方法。
  • 更新了微软TTS的高级设置选项,增加声音种类的多样性,以及加入视频字幕加强可视化。
  • 更新了GPT多轮对话系统,使得对话有上下文联系,提高数字人的交互性和真实感

现在的启动一共有几种模式,可以选择特定的场景进行设置

第一种只有固定了人物问答,设置好了人物,省去了预处理时间

 python app.py

在这里插入图片描述

固定人物问答

第二种是可以任意上传图片进行对话

 python app_img.py

在这里插入图片描述

任意图片问答

第三种是在第一种的基础上加入了大语言模型,加入了多轮的GPT对话

 python app_multi.py

在这里插入图片描述

多轮GPT问答

文件夹结构如下

Baidu (百度云盘) (Password: linl)

Linly-Talker/ 
├── app.py
├── app_img.py
├── utils.py
├── Linly-api.py
├── Linly-api-fast.py
├── Linly-example.ipynb
├── README.md
├── README_zh.md
├── request-Linly-api.py
├── requirements_app.txt
├── scripts
│   └── download_models.sh
├──	src
│	└── .....
├── inputs
│   ├── example.png
│   └── first_frame_dir
│       ├── example_landmarks.txt
│       ├── example.mat
│       └── example.png
├── examples
│   └── source_image
│       ├── art_0.png
│       ├── ......
│       └── sad.png
├── checkpoints // SadTalker 权重路径
│   ├── mapping_00109-model.pth.tar
│   ├── mapping_00229-model.pth.tar
│   ├── SadTalker_V0.0.2_256.safetensors
│   └── SadTalker_V0.0.2_512.safetensors
├── gfpgan // GFPGAN 权重路径
│   └── weights
│       ├── alignment_WFLW_4HG.pth
│       └── detection_Resnet50_Final.pth
├── Linly-AI // Linly 权重路径
│   └── Chinese-LLaMA-2-7B-hf 
│       ├── config.json
│       ├── generation_config.json
│       ├── pytorch_model-00001-of-00002.bin
│       ├── pytorch_model-00002-of-00002.bin
│       ├── pytorch_model.bin.index.json
│       ├── README.md
│       ├── special_tokens_map.json
│       ├── tokenizer_config.json
│       └── tokenizer.model
├── Qwen // Qwen 权重路径
│   └── Qwen-1_8B-Chat
│       ├── cache_autogptq_cuda_256.cpp
│       ├── cache_autogptq_cuda_kernel_256.cu
│       ├── config.json
│       ├── configuration_qwen.py
│       ├── cpp_kernels.py
│       ├── examples
│       │   └── react_prompt.md
│       ├── generation_config.json
│       ├── LICENSE
│       ├── model-00001-of-00002.safetensors
│       ├── model-00002-of-00002.safetensors
│       ├── modeling_qwen.py
│       ├── model.safetensors.index.json
│       ├── NOTICE
│       ├── qwen_generation_utils.py
│       ├── qwen.tiktoken
│       ├── README.md
│       ├── tokenization_qwen.py
│       └── tokenizer_config.json

总结

最后说一下我想做什么吧,其实我一直把这个数字对话系统趋于实时化,最近也看到相关的项目有做音频和视频流式的东西,我也在不断的学习中,希望也不断的学习,不断的超越自己。最后也提一下,我做了一个个人博客,后续也会放出来我博客的笔记,和知乎同步更新应该哈哈,大家也可以多关注一下,一起学习交流。

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

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

相关文章

Unity - gamma space下还原linear space效果

文章目录 环境目的环境问题实践结果处理要点处理细节【OnPostProcessTexture 实现 sRGB 2 Linear 编码】 - 预处理【封装个简单的 *.cginc】 - shader runtime【shader需要gamma space下还原记得 #define _RECOVERY_LINEAR_IN_GAMMA】【颜色参数应用前 和 颜色贴图采样后】【灯…

【UE5】如何给人物骨骼绑定Control Rig用来制作动画(控制)

本篇文章暂时只教绑定人物手部的Control Rig,脚的Control Rig举一反三即可 1,右键-创建-控制绑定 2在控制绑定中-右键创建基本IK 3,填入上臂-下臂-手 4【手和下臂】右键-新建-Add Controls For Selected,(或者新建-…

第十四章 RabbitMQ应用

文章目录 前言1、RabbitMQ概念1.1、生产者和消费者1.2、队列1.3、交换机、路由键、绑定1.3.1、交换机类型 2、RabbitMQ运转流程2.1、生产者发送消息流程2.2、消费者接收消息的过程2.3、AMQP协议 3、RabbitMQ windows安装3.1、下载3.2、安装 4、Spring Boot 整合RabbitMQ4.1、在…

【语录】岁月

中年 写中年,应该是年少励志三千里 踌躇百步无寸功,转眼高堂已白发 儿女蹒跚学堂中,不如意事常八九,可与人言无二三 可是诸位,不用悲伤,稻盛和夫说, 人生并不是一场物质的盛宴,而是…

单片机学习笔记---LCD1602调试工具

LCD1602调试工具 这一节开始之前先说明一下,模块化编程相关的知识(就是将代码分成多个文件来写,比如函数的定义放在.c文件中,函数的声明写在.h文件中)属于是C语言的内容,学过C语言的伙伴应该都知道。由于这…

Vue2.0+Element实现日历组件

(壹)博主介绍 🌠个人博客: 尔滨三皮⌛程序寄语:木秀于林,风必摧之;行高于人,众必非之。 (贰)文章内容 1、安装依赖 npm install moment2.29.4 --savenpm install lunar0.0.3 --savenpm install lunar-java…

配置华为交换机生成树VBST案例

知识改变命运,技术就是要分享,有问题随时联系,免费答疑,欢迎联系 厦门微思网络​​​​​​https://www.xmws.cn 华为认证\华为HCIA-Datacom\华为HCIP-Datacom\华为HCIE-Datacom 思科认证CCNA\CCNP\CCIE 红帽认证Linux\RHCE\RHC…

代理IP使用指南:风险与注意事项

在当今的数字化时代,使用在线代理IP已经成为一种常见的网络行为。然而,在使用这些代理IP时,我们需要注意一些风险和问题,以确保我们的网络安全和隐本私文。将探讨使用代理IP时需要注意的几个关键问题。 1、代理IP的安全性 使用代理…

设计模式:工厂方法模式

工厂模式属于创建型模式,也被称为多态工厂模式,它在创建对象时提供了一种封装机制,将实际创建对象的代码与使用代码分离,有子类决定要实例化的产品是哪一个,把产品的实例化推迟到子类。 使用场景 重复代码 : 创建对象…

OpenAI ChatGPT-4开发笔记2024-07:Embedding之Text Similarity文本相似度

语义相似性semantic similarity 背景结果 背景 OpenAI has made waves online with its innovative embedding and transcription models, leading to breakthroughs in NLP and speech recognition. These models enhance accuracy, efficiency, and flexibility while speed…

算法每日一题: 边权重均等查询 | 公共子祖先

大家好,我是星恒,今天给大家带来的是一道图里面有关公共子祖先的题目,理解起来简单,大家 题目:leetcode 2846 现有一棵由 n 个节点组成的无向树,节点按从 0 到 n - 1 编号。给你一个整数 n 和一个长度为 n …

聊聊大模型 RAG 探索之路的血泪史,一周出Demo,半年用不好

大家好,今天我们来继续看看 RAG 落地的一些有趣的事儿,从技术社群早上的讨论开始,喜欢技术交流的可以文末加入我们 一、从一周出Demo、半年用不好说起 最近读了读2024-傅盛开年AI大课,其中有讲到RAG环节,三张片子比较…

2023.1.23 关于 Redis 哨兵模式详解

目录 引言 人工恢复主节点故障 ​编辑 主从 哨兵模式 Docker 模拟部署哨兵模式 关于端口映射 展现哨兵机制 哨兵重新选取主节点的流程 哨兵模式注意事项 引言 人工恢复主节点故障 1、正常情况 2、主节点宕机 3、程序员主动恢复 先看看该主节点还能不能抢救如果不好定…

统一异常处理

统一异常处理 统一异常处理创建一个类定义方法ControllerAdvice和ExceptionHandler注意事项 统一异常处理 创建一个类 首先,我们来创建一个类,名字随意,这里我们取名ERHandler 定义方法 在ERHandler中,我们可以定义几个类,参数用来接收各种异常,这里的异常可以是任意的,返回…

面试官:你可以说一说你对Jmeter元素的理解吗?下

面试官:你可以说一说你对Jmeter元素的理解吗?下 监听器配置元素CSV数据集配置HTTPCookie管理器HTTP请求默认值登录配置元素 监听器 Listeners:显示测试执行的结果。它们可以以不同的格式显示结果,例如树、表、图形或日志文件 图…

LLM大语言模型(五):用streamlit开发LLM应用

目录 背景准备工作切记streamlit开发LLM demo开一个新页面初始化session先渲染历史消息接收用户输入模拟调用LLM 参考 背景 Streamlit是一个开源Python库,可以轻松创建和共享用于机器学习和数据科学的漂亮的自定义web应用程序,用户可以在几分钟内构建一…

DNS欺骗

DNS(域名系统)作为当前全球最大 、最复杂的分布式层次数据库系统,具有着开放、庞大、复杂的特性。它为全球用户提供域名解析服务,是互联网的重要基础设施。但由于其在设计之初未考虑安全性、人为破坏等因素 ,DNS系统在互联网高度发达的今天面…

Ubuntu下APT下载工具(Ubuntu 下最常用的下载和安装软件方法)

前言 本篇文章记录我学习Ubuntu 下用的最多的下载工具: APT 下载工具, APT 下载工具可以实现软件自动下载、配置、安装二进制或者源码的功能。 APT 下载工具和我们前面一篇文章讲解的“install”命令结合在一起构成了 Ubuntu 下最常用的下载和安装软件方…

【代码随想录】LC 242. 有效的字母异位词

文章目录 前言一、题目1、原题链接2、题目描述 二、解题报告1、思路分析2、时间复杂度3、代码详解 前言 本专栏文章为《代码随想录》书籍的刷题题解以及读书笔记,如有侵权,立即删除。 一、题目 1、原题链接 242. 有效的字母异位词 2、题目描述 二、解题…

刘知远团队大模型技术与交叉应用L5-BMSystem

为什么需要BMTrain? PLM越来越大。为了使训练更高效和廉价。我们有必要 1.分析GPU的显存去哪了? 2.理解GPU间的合作模式是如何的? 显存都去了哪里? CPU vs GPU CPU适合复杂逻辑运算。GPU适合大量重复的数值运算。 显存成分 1.前…