Skip to content

Waterwzy/AI_live_host_for_windows

Repository files navigation

一个在windows系统上用于给AI虚拟主播在bilibili上开播的工具。

注意:本项目只能实现各个平台的对接与结果呈现,相关语言模型,筛选器模型,TTS模型需要自行准备以对接

本项目处于早期阶段,欢迎任何issue和pr。

(并非快速的)开始

一:从源码构建

运行

git clone git@github.com:Waterwzy/AI_live_host_for_windows.git
cd AI_live_host_for_windows
./setup.bat

这样,你就可以在虚拟环境下安全地运行项目了。

二:开放平台的申请

哔哩哔哩直播开放平台

在上述平台中申请权限,等待一周左右,你会在对应邮箱中获得access_key_id,access_key_secret。

幻星-互动玩法中,你可以获得你的主播身份码。

此外,你需要找一个GPT-so-vits的api服务(或者直接部署本地)以及语言模型(可以是你自己的模型,也可以是有prompt的网络模型),准备至少一个语言模型的api_key。

三:配置文件

有了足够的配置,现在可以开始进行相关环境配置了。

打开config.json文件,填入相关信息。(文件里的描述很完整了,这里不再赘述)

注意:我不建议你使用beta功能,有bug且高度不可控

四:直播场景的搭建

本项目不可以帮你搭建直播场景,相关直播场景的搭建,live2d的准备需要个人完成

建议使用的直播场景搭建工具:哔哩哔哩直播姬,OBS Studio

建议使用的live2d播放工具:VTube Studio(如果你有能力,可以直接使用pylive2d,后续版本可能会补上接口)

五:直播程序的启动

在项目目录下运行:

./run.bat

或者直接使用venv环境下的python解释器运行 main.py 亦可。

详细说明

  1. 项目能够实现的功能

    • 监听直播间消息(具体类型:进入直播间,给直播间点赞,直播间弹幕,直播间礼物,直播间大航海)
    • 对弹幕的筛选以及指令反馈:去除不易于AI主播处理的弹幕,在程序内处理有关命令的弹幕。
    • 对正常的聊天类型弹幕,交给AI主播处理,进行TTS,并进行输出和相应反馈。
    • 增加游戏功能,让AI主播可以和人类通过弹幕进行互动游戏(功能选择开启,开启并启动该游戏后会启动一个pygame窗口,可导入OBS,game文件夹下的main.py为游戏主程序,firefly.pngplayer.png可以随意更换,需要保证文件名一致,像素不超过40*40,game_origin.py文件作为游戏参考,可以进行键鼠操作,基本游戏逻辑相同)。
    • 接入vts接口,可以更加高效地处理表情触发(注意:在首次打开vts后,运行程序时,需要手动同意vts的插件请求,后续只要不关闭vts就不需要再次同意)。
    • (new update)增加消息合并功能:当有多个消息进入处理,且当前消息处理消息暂未返回时,会主动取消当前任务,将待处理消息合并后一起发送,合并次数存在上限,可在config文件中更改(注意:此策略可能会消耗额外tokens,请按需使用)
  2. 关于输出

    所有输出文件储存在logs文件夹中,其中:

    • command.json text.json todo_raw.json``game.json为中间文件(日志),分别存储直播命令+经过筛选的弹幕,语言模型的输出,初始消息列表,游戏命令列表。

    • livetext.txt存储除弹幕外之前提到的所有监听到的消息,可以直接导入OBS。

    • output.txt存储语言模型的输出,可以直接导入OBS。

    • mode.txt储存当前模式,分为chatsinging两种,可以直接导入OBS。

  3. 关于指令

    现阶段不支持自定义指令,支持的指令有:

    • remtext操作权限仅限于主播(需在配置文件中设置),房管,可以清除模型的记忆。(prompt,预设对话除外)
    • 翻唱 歌曲名/编号可以进行相关角色翻唱(配置文件中可以设置条件),仅支持在AI目录中保存的歌曲。
    • 点歌 歌曲名可以进行点歌,前提是你自己开一个点歌机。(这好像不是我们的指令,但我们可以保证相关弹幕不会被语言模型处理)
    • #开头的弹幕不会进行处理。
    • 输入game进行游戏(配置文件设置条件),输入相应坐标(例如A5,不区分大小写)进行行动。

好像没什么可说的了(?),想到什么再来补充吧。

About

一个在windows系统上用于给AI虚拟主播在bilibili上开播的工具。

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •