🔥🔥🔥数字人对话系统 Linly-Talker🔥🔥🔥

本文涉及的产品
实时计算 Flink 版,5000CU*H 3个月
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
大数据开发治理平台 DataWorks,不限时长
简介: Linly-Talker是一个将大型语言模型与视觉模型相结合的智能AI系统,创建了一种全新的人机交互方式。它集成了各种技术,例如Whisper、Linly、微软语音服务和SadTalker会说话的生成系统。该系统部署在Gradio上,允许用户通过提供图像与AI助手进行交谈。用户可以根据自己的喜好进行自由的对话或内容生成。

🔥🔥🔥数字人对话系统 Linly-Talker🔥🔥🔥

English简体中文

欢迎大家star我的仓库 https://github.com/Kedreamix/Linly-Talker

2023.12 更新📆

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

介绍

Linly-Talker是一个将大型语言模型与视觉模型相结合的智能AI系统,创建了一种全新的人机交互方式。它集成了各种技术,例如Whisper、Linly、微软语音服务和SadTalker会说话的生成系统。该系统部署在Gradio上,允许用户通过提供图像与AI助手进行交谈。用户可以根据自己的喜好进行自由的对话或内容生成。

创建环境

conda create -n linly python=3.8 
conda activate linly
pip install torch==1.11.0+cu113 torchvision==0.12.0+cu113 torchaudio==0.11.0 --extra-index-url https://download.pytorch.org/whl/cu113
conda install ffmpeg 
pip install -r requirements_app.txt

ASR - Whisper

借鉴OpenAI的Whisper,具体使用方法参考https://github.com/openai/whisper

TTS - Edge TTS

使用微软语音服务,具体使用方法参考https://github.com/rany2/edge-tts

THG - SadTalker

说话头生成使用SadTalker,参考CVPR 2023,详情见https://sadtalker.github.io

下载SadTalker模型:

bash scripts/download_models.sh

LLM - Linly

Linly来自深圳大学数据工程国家重点实验室,参考https://github.com/CVI-SZU/Linly

下载Linly模型:https://huggingface.co/Linly-AI/Chinese-LLaMA-2-7B-hf

git lfs install
git clone https://huggingface.co/Linly-AI/Chinese-LLaMA-2-7B-hf

或使用API:

# 命令行
curl -X POST -H "Content-Type: application/json" -d '{"question": "北京有什么好玩的地方?"}' http://url:port  
# Python
import requests
url = "http://url:port"
headers = {
  "Content-Type": "application/json"
}
data = {
  "question": "北京有什么好玩的地方?" 
}
response = requests.post(url, headers=headers, json=data)
# response_text = response.content.decode("utf-8")
answer, tag = response.json()
# print(answer)
if tag == 'success':
    response_text =  answer[0]
else:
    print("fail")
print(response_text)

优化

一些优化:

  • 使用固定的输入人脸图像,提前提取特征,避免每次读取
  • 移除不必要的库,缩短总时间
  • 只保存最终视频输出,不保存中间结果,提高性能
  • 使用OpenCV生成最终视频,比mimwrite更快

Gradio

Gradio是一个Python库,提供了一种简单的方式将机器学习模型作为交互式Web应用程序来部署。

对Linly-Talker而言,使用Gradio有两个主要目的:

  1. 可视化与演示:Gradio为模型提供一个简单的Web GUI,上传图片和文本后可以直观地看到结果。这是展示系统能力的有效方式。
  2. 用户交互:Gradio的GUI可以作为前端,允许用户与Linly-Talker进行交互对话。用户可以上传自己的图片并输入问题,实时获取回答。这提供了更自然的语音交互方式。

具体来说,我们在app.py中创建了一个Gradio的Interface,接收图片和文本输入,调用函数生成回应视频,在GUI中显示出来。这样就实现了浏览器交互而不需要编写复杂的前端。

总之,Gradio为Linly-Talker提供了可视化和用户交互的接口,是展示系统功能和让最终用户使用系统的有效途径。

启动

python app.py

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

python app_img.py

参考

相关文章
|
1月前
|
人工智能 搜索推荐 固态存储
|
7月前
|
人工智能 语音技术
|
8月前
|
算法 语音技术
遥遥领先!青否数字人直播系统支持真人接管实时驱动!
青否数字人SaaS系统5.0正式发布,王炸更新!提供口播视频批量制作+7*24小时直播全套解决方案。 同时直播间支持真人开麦/输入文字选择音色接管,实时驱动直播间数字人回复
|
Web App开发 开发工具 图形学
|
1月前
|
传感器 人工智能 搜索推荐
|
17天前
|
算法
VASA-1:实时音频驱动的数字人说话面部视频生成技术
【6月更文挑战第8天】VASA-1是实时音频驱动的数字人面部视频生成技术,能根据输入音频精准生成匹配的面部表情。具备实时性、高准确性和适应性,适用于虚拟主播、在线教育和影视娱乐等领域。简单示例代码展示了其工作原理。尽管面临情感理解和硬件优化等挑战,但随着技术发展,VASA-1有望在更多领域广泛应用,开启生动数字世界的新篇章。
47 5
|
6天前
|
机器学习/深度学习 人工智能 自然语言处理
【数字人】AIGC技术引领数字人革命:从制作到应用到全景解析
【数字人】AIGC技术引领数字人革命:从制作到应用到全景解析
20 0