火山引擎推出文生视频全自动剪辑方案,专为内容素材创作打造,可根据用户输入的主题,快速生成富有寓意的双语视频。 为体验者提供丰富多彩、富有教育意义的视听体验,在快乐中学习和成长。
本地MacBook 运行效果 https://www.bilibili.com/video/BV1PuQcY7EdV/
上手须知:
- 使用火山引擎部分模型需要 企业认证账户
- python版本需要 低于 3.12
- 需要访问GitHub 获取火山开源代码
- 需要MacBook上先安装了Brew
- 需要MacBook安装了 node.js npm
我们先去获取我们在搭建完成后需要用到的各种模型的key。
1、首先注册火山引擎:
https://volcengine.com/L/OyJmMND9eSw/
邀请码:EZ3L56P8
这个项目会使用到不少Token,火山现在还有赠送Toeken的活动,如果你还没有注册,可以使用这个邀请码和链接去注册,你就可以获得375万的Token了。(我也能获得一些token)
2、开通各项服务和拿到各个服务的Key (这里我们先大概看一眼,后面一个个获取)
LLM_ENDPOINT_ID=<test-llm-endpoint-id>
TOS_BUCKET=<test-tos-bucket>
TTS_ACCESS_TOKEN=<tts-access-token>
TTS_APP_ID=<tts-app-id>
VLM_ENDPOINT_ID=<vlm-endpoint-id>
CGT_ENDPOINT_ID=<doubao-seaweed-endpoint-id>
ARK_API_KEY=<ark-api-key>
VOLC_ACCESSKEY=<volcano-engine-ak>
VOLC_SECRETKEY=<volcano-engine-sk>
2.1 获取LLM_ENDPOINT_ID、VLM_ENDPOINT_ID、CGT_ENDPOINT_ID、ARK_API_KEY
注册后点击:控制台,进入火山方舟控制台。
(https://console.volcengine.com/ark/region:ark+cn-beijing/model?vendor=Bytedance&view=LIST_VIEW)
创建一个接入点,点击在线推理--点击 自定义推理点接入 TAB -- 创建推理接入点
创建接入点: 豆包-pro-32k
命名并选择Doubao-pro-32k模型
选择好之后,确认
成功创建之后,可以看到如图红线部分的接入点
创建接入点:豆包-视频模型
写个名称(比如下图的 doubao-vision-pro-32k),选择 doubao-vision-pro-32k ,没有开通的小伙伴可以点 - 立即开通
这里不会扣款,使用后再计费
创建接入点:豆包-视频生成模型
弄完上面的3个之后,咱们的推理点 应该是下面这种状态
根据对应的序号,把你复制的推理点ID (上图中,对应 每个 接入点 下面 ep- 开头的字符串) ,填入其中。如下:
这里我们先大概看一眼,目前还没有下载代码
LLM_ENDPOINT_ID=xxxxxxxxxxx(这里粘贴的是 doubao_pro_32k 的 ep- 开头的ID) <--这一步获取
TOS_BUCKET=<test-tos-bucket>
TTS_ACCESS_TOKEN=<tts-access-token>
TTS_APP_ID=<tts-app-id>
VLM_ENDPOINT_ID=xxx(这里粘贴的是 doubao-vision-pro-32k的ID) <--这一步获取
CGT_ENDPOINT_ID=xxx(这里粘贴的是 doubao-视频生成模型的ID) <--这一步获取
ARK_API_KEY=<ark-api-key>ARK_API_KEY
VOLC_ACCESSKEY=<volcano-engine-ak>
VOLC_SECRETKEY=<volcano-engine-sk>
3 创建ARK_API_KEY
然后继续点击“API key管理”创建一个并复制下来。 这个就是ARK_API_KEY
LLM_ENDPOINT_ID=xxxxxxxxxxx(这里粘贴的是 doubao_pro_32k 的 ep- 开头的ID) < -- 之前获取了
TOS_BUCKET=<test-tos-bucket>
TTS_ACCESS_TOKEN=<tts-access-token>
TTS_APP_ID=<tts-app-id>
VLM_ENDPOINT_ID=xxx(这里粘贴的是 doubao-vision-pro-32k的ID) < --之前获取了
CGT_ENDPOINT_ID=xxx(这里粘贴的是 doubao-视频生成模型的ID) < -- 之前获取了
ARK_API_KEY=<ark-api-key>ARK_API_KEY < -- 这一步获取
VOLC_ACCESSKEY=<volcano-engine-ak>
VOLC_SECRETKEY=<volcano-engine-sk>
4 开通对象存储服务,获取TOS_BUCKET
进入这个地址,开通服务:https://console.volcengine.com/tos/bucket?
添加名字,选择任意区域之后,直接点击创建即可。
创建完成后,复制你的桶名称,我这里是:txt-2-video-buk (你得写个自己定义的名字)
LLM_ENDPOINT_ID=xxxxxxxxxxx(这里粘贴的是 doubao_pro_32k 的 ep- 开头的ID) < -- 之前获取了
TOS_BUCKET=<test-tos-bucket> < -- 这一步获取
TTS_ACCESS_TOKEN=<tts-access-token>
TTS_APP_ID=<tts-app-id>
VLM_ENDPOINT_ID=xxx(这里粘贴的是 doubao-vision-pro-32k的ID) < --之前获取了
CGT_ENDPOINT_ID=xxx(这里粘贴的是 doubao-视频生成模型的ID) < -- 之前获取了
ARK_API_KEY=<ark-api-key>ARK_API_KEY < -- 之前获取了
VOLC_ACCESSKEY=<volcano-engine-ak>
VOLC_SECRETKEY=<volcano-engine-sk>
5 获取 VOLC_ACCESSKEY、VOLC_SECRETKEY
点击这个链接,直接跳转:
https://console.volcengine.com/iam/keymanage/
LLM_ENDPOINT_ID=xxxxxxxxxxx(这里粘贴的是 doubao_pro_32k 的 ep- 开头的ID) < -- 之前获取了
TOS_BUCKET=<test-tos-bucket> < -- 之前获取了
TTS_ACCESS_TOKEN=<tts-access-token>
TTS_APP_ID=<tts-app-id>
VLM_ENDPOINT_ID=xxx(这里粘贴的是 doubao-vision-pro-32k的ID) < --之前获取了
CGT_ENDPOINT_ID=xxx(这里粘贴的是 doubao-视频生成模型的ID) < -- 之前获取了
ARK_API_KEY=<ark-api-key>ARK_API_KEY < -- 之前获取了
VOLC_ACCESSKEY=<volcano-engine-ak> < -- 这步获取
VOLC_SECRETKEY=<volcano-engine-sk> < -- 这步获取
6 获取TTS_ACCESS_TOKEN、TTS_APP_ID
这个KEY比较特殊,需要有企业的认证。
- 企业认证
https://console.volcengine.com/user/authentication/detail/
- 开通语音技术产品
https://console.volcengine.com/speech/app
2.1 勾选大模型语音合成和流式语音识别大模型
2.2 开通语音合成大模型,注意:语音合成大模型从开通到可以使用有大概5-10分钟延迟
2.3 流式语音识别大模型有试用包,可以不开通。如需提供稳定服务,建议开通正式版本。
2.4 开通后,回到“语音合成大模型”,获取TTS_APP_ID 和TTS_ACCESS_TOKEN
LLM_ENDPOINT_ID=xxxxxxxxxxx(这里粘贴的是 doubao_pro_32k 的 ep- 开头的ID) < -- 之前获取了
TOS_BUCKET=<test-tos-bucket> < -- 之前获取了
TTS_ACCESS_TOKEN=<tts-access-token> < -- 这步获取
TTS_APP_ID=<tts-app-id> < -- 这步获取
VLM_ENDPOINT_ID=xxx(这里粘贴的是 doubao-vision-pro-32k的ID) < --之前获取了
CGT_ENDPOINT_ID=xxx(这里粘贴的是 doubao-视频生成模型的ID) < -- 之前获取了
ARK_API_KEY=<ark-api-key>ARK_API_KEY < -- 之前获取了
VOLC_ACCESSKEY=<volcano-engine-ak> < -- 之前获取了
VOLC_SECRETKEY=<volcano-engine-sk> < -- 之前获取了
至此,我们已经拿到了所有要用的服务key,接下来正式开始部署。
这里还是看一下,代码我们还没有下载,马上啦!
LLM_ENDPOINT_ID=xxxxxxxxxxx
VLM_ENDPOINT_ID=xxx
CGT_ENDPOINT_ID=xxx
ARK_API_KEY=XXXX
TOS_BUCKET=XXXX
VOLC_ACCESSKEY=XXXX
VOLC_SECRETKEY=XXXX
TTS_ACCESS_TOKEN=XXXX
TTS_APP_ID=XXXX
补充: 同时来这里确认一下,你也已经开通了这些服务!,即使拿到了key 如果服务没开通 还是不能用的。
一定要到 互动双语视频生成器 主页
查看右边这些服务,你是否都开通了,一个一个点进去开通!
2.1 代码下载
随便打开一个终端,进入一个合适的文件夹。
运行 git 命令下载代码。(由于网络问题,可能有的小伙伴在这一步不太顺利...)
git clone ``https://github.com/volcengine/ai-app-lab.git
下载成功后,会有一个 ai-app-lab 的目录
我们需要进入 这个目录下的文件夹: demohouse/chat2cartoon
来到这个目录后,找到一个 .env 文件,⚠️ 这个文件是一个隐藏文件。
可以使用 ls -a 命令查看
输入 vim .env 命令编辑该文件
刚打开,它是这个样子,我们需要把之前我们得到的KEY 和 ID 放到这个文件里面。
大家耐心一点,拷贝一下
别的小伙伴编辑情况举例
2.2 配置代码环境
进入backend文件夹
配置虚拟环境:
安装 pyenv
- brew install pyenv
安装Python 3.11.10 版本
pyenv install 3.11.10
下图我已经安装,大家安装一下即可
安装 pyenv-virtualenv 插件
brew install pyenv-virtualenv
先看下你有没有~/.bash_profile 文件,如果没有就创建(如果有,则跳过这步)
Vim ~/.bash_profile
在你的 shell 配置文件 ~/.bash_profile ,添加以下内容
# pyenv
export PATH="$HOME/.pyenv/bin:$PATH"
eval "$(pyenv init --path)"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"
重新加载配置
source ~/.bash_profile
创建并激活虚拟环境 (一定要保证上一步运行,让新增加的工具加入到环境里)
pyenv virtualenv 3.11.10 myenv
pyenv activate myenv
成功进入虚拟环境可以看到上面 命令行前的 (myenv)
再看一下python 版本:(是我们设置的版本)
2.3 安装后端 , 并启动服务
(在创建好的虚拟环境中)
大家的网络不通,需要不同的时间,也有安装失败的情况 ...
然后打开“终端”输入以下命令
每次只复制一行粘贴进入并执行:
pip install poetry==1.6.1
部分截图
poetry install
成功后的部分截图
安装 ffmpeg
brew install ffmpeg
安装成功后,可以看下版本
ffmpeg -version
(myenv) susirial@susirialdeMacBook-Pro backend % where ffmpeg
/opt/homebrew/bin/ffmpeg <---- 我的在这
(myenv) susirial@susirialdeMacBook-Pro backend %
可以每次运行时,都设置一下
export IMAGEIO_FFMPEG_EXE=/opt/homebrew/bin/ffmpeg
或者保存在shell 里
打开 bash_profile, 在里面增加
export IMAGEIO_FFMPEG_EXE=/opt/homebrew/bin/ffmpeg
vim ~/.bash_profile
在执行一下:
source ~/.bash_profile
启动后端服务器
poetry run python index.py
注意⚠️ 不要关闭这个服务窗口
2.4 启动前端
新开一个终端窗口,千万不要关闭刚才创建的后端服务 终端窗口。
安装组件 (下面的命令一个一个执行)
sudo npm install -g pnpm@8
pnpm install
拷贝环境配置
cp ../.env ./
启动前端服务
pnpm dev
启动成功!
三 本地演示
最后了。。。 请让我来个自我介绍