[有手就行]本地部署AI酒馆、语言模型和图片生成,完成异世界冒险

简述:

       这是一篇有的迟来的教程,在本文中,会从头到尾运用社区资源搭建你自己的AI酒馆、本地AI语言模型、本地SD绘画模型。

具体需要如下程序:

⭐-核心-酒馆本体

---Silly Tavern

⭐-驱动-语言模型

---Chat RWKV(国产开源可商用语言模型本地部署)

---Open AI API(使用Open AI的国内镜像接口)

⭐-附加-其他模块

---AI绘图(给你的冒险实时生图)

---寻找角色卡

      本文会在每个节点提供本地和云端两种部署方法,并且尽量选用开源傻瓜部署,主打低门槛易上手。

-----------------------------------------------------

Part.1- Silly Tavern的安装

       首要前提,Silly Tavern本身并非商用项目,所以本体在权限管理上存在一些问题,所以当你部署完成后,建议只在本地网络使用,不要尝试部署在公开服务器上。

1.1下载项目文件

       在这里我们选用SillyTavern Launcher这个项目来简单的部署。

https://github.com/vircus/SillyTavern-Launcher-zh/

不要问怎么解压缩奥

我们直接下载整个项目文件即可。

1.2 运行安装程序

自动检测环境变量是否配置,并且进行安装

       下载完后,将文件解压缩,运行项目文件夹中的installer.bat,程序会为你安装winget、Git和Miniconda3,并且帮助你配置环境变量。

        在环境安装完成后会进入程序的安装过程。Silly Tavern本身只是一个网页程序,作为整个结构的操作端,其本身没有任何的性能负载,所以全部安装也没什么影响,各位可以按照自己的需要进行安装。

       在这里我选择了默认的只安装本体,他会自动的克隆SillyTavern文档,如果感觉下载速度较慢可以使用国内的镜像源进行下载

显示如上,即为安装完毕。

1.3 启动

        在安装完成后,还需要手动安装NodeJs,由于我们没有开发需求,所以并不需要安装版本管理相关的程序,我们直接下载即可

https://nodejs.org/zh-cn/download/prebuilt-installer

       在完成nodejs安装后,我们回到SillyTavern启动器文件夹中,运行Launcher.bat,即可开启。

       如果你的Nodejs安装完成,则会通过npm下载相关软件包,下载完成后即可开始使用。浏览器会为你打开 http://127.0.0.1:8000/

         显示如下,证明你已成功部署SillyTavern,但是先别着急,这才刚刚开始。

Part.2- 语言模型的选择和安装

        在实现酒馆的对话功能的时候,AI有两种实现方法,其中是通过文本补全来生成对话,另外一种即是通过Chat功能来生成对话,不同的语言模型在两者上性能有些许差别。

       现在的语言模型市场百花齐放,选择方向很多,而且大部分都是有类似的启动器,且其HTTP接口都与Open AI接口类似,易于部署的同时也易于使用。

       这里我选择使用RWKV模型,RWKV模型的性能优秀,且节约显存,最主要社区支持也不错。

      其官网如下 https://rwkv.cn。

      综上所述,本节会从本地部署RWKV和使用网络API两种方法实现语言模型驱动角色交互。

2.1本地RWKV的部署

        RWKV的社区也包含一键部署的启动包,项目名称: RWKV-Runner

直接在release中下载最新的启动器即可

https://github.com/josStorer/RWKV-Runner/releases/tag/v1.8.5

      我们直接放置到任意目录,然后运行RWKV-Runner_windows_x64.exe即可,由于后续的模型下载需要占用一定的空间,最好放置在一个还有余量空间的磁盘中。

       我们可以直接进入配置界面,选择我们需要的模型和精度以及配置其他参数。

如何判断选择自己可用或者希望使用的配置,我们以第一个配置文件为例 GPU-2G-1B5-World。

       其中,前缀有GPU\CPU\AnyGPU三种,这一项可以根据你的配置来进行选择,如果你是NVIDA显卡,则选用GPU前缀; 如果你的显卡显存低于2G,或你是核显或者集显,那么你可以选择CPU,但是RWKV目前CPU只有音乐模型没有语言模型,所以如果你没有独立显卡或者显存低于2G请直接跳过本地部署这一小节;如果你是AMD、Intel或者摩尔线程等显卡,你可以选择AnyGPU。

        其次,2G代表着你预计使用的显存容量,这个要根据你的显存来决定。

        然后,1B5代表模型的训练集大小,你可以简单的理解为越大模型性能越好

        最后,WORLD标志着训练所用的语言,在本项目里我建议使用world而不是cn因为大多数角色卡的prompt是使用英文编写的,可能会存在一些问题,建议直接使用WORLD.

        综上所述,你可以根据自身条件对配置进行选择,在这里为了演示,我会使用最初始的GPU-2G-1B5-World进行演示。


        在开始之前,我们需要先对端口进行一下调整,因为我们的SillyTavern已经使用了8000端口,所以我们的rwkv端口应该简单变动一下,在这里我选择了8001,也就是说,我们的ai http位置为127.0.0.1:8001。

        最后点击运行,程序会为你自动下载模型,在这里下载速度较慢,可以使用国内大黄脸镜像来提高你的下载速度。

       运行后,会开始读取模型,在模型读取完成后会显示启动完成。

       你可以在聊天和续写两个页面中对你的语言模型进行简单测试。

        本次选用的模型虽然只有1.5B且精度较低,但也完全可以满足日常使用。在我们确定了模型可以使用之后,我们可以直接连接到我们的网站上进行测试。

       在这里为了统一后续的使用,我们都使用CHAT接口进行操作。

        在这里提一点,建议使用相关的翻译插件,因为很多角色卡是使用英文编写的,所以为浏览器安装一个汉化插件很有必要,在这里我选用沉浸式翻译作为演示。

       我们需要在网页中配置接口,RWKV接口和openai的chat接口格式相同,所以我们直接输入我们的本地地址即可使用。

        在输入url后点击连接,就可以在可用模型处看到我们的模型,选择后即可,也可以点击发送测试消息进行简单测试。

        这样我们就完成了配置,我们直接来到对话界面进行使用

       在项目中默认有一个Seraphina的角色卡,在社区内很有名气,我们可以直接用Seraphina进行测试。Seraphina角色卡附带的prompt是英语,所以在对话过程中,最好借助翻译来进行对话。

        如图所示,已经可以看到RWKV模型1.5B就已经让角色初具人型了。RWKV的输入TOKEN很大,很适合玩这类的AI酒馆,并且性能优异,有条件的观众可以尝试一下使用更大的模型太进行测试,并且RWKV在大黄脸中的分支,还包含一些社区训练的NSFW模型,如果你追求更刺激的体验可以自行测试下。

2.2使用在线API接入

       Openai的ChatGPT是市面上较早出圈的llm产品,后续的部分产品接口都是依据ChatGPT的HTTP接口进行构建的,但是ChatGPT接口在国内并不是十分好用,所以在这里我选择使用国内的镜像网站。

https://api2d.com/

       此网站的token价格是OpenAI接口的1.5倍,但是响应速度高,如果只使用gpt3.5 turbo和gpt -3.5-16k来看,每次对话产生的费用在几分钱。

          其界面如图所示,网站的最低消费为21元10000p,如果只用于AI对话可以使用很久。我们只需要其中两个参数,一个是用户的Forward Key和API地址。

fk215620-xxxxxxxxx------这个就是我们的key

https://oa.api2d.net------接口地址固定

其计费如下

---gpt-3.5 输入部分 1333 token = 10 P,

     输出部分 1000 token = 10 P;

---gpt-3.5-16k 输入部分 666 token = 10 P,

     输出部分 500 token = 10 P;

---gpt-4 输入部分 66.6 token = 10 P,

     输出部分 33.3 token = 10 P。

      可选的模型和chatgpt官方接口相同,可以选择gpt-4、gpt-3.5-turbo、gpt-3.5-turbo-16k、gpt-4o。

在这里我推荐使用gpt-3.5-turbo,更加省钱。

在完成填写之后,可以直接进入使用。

        使用chatgpt效果体验如上。

        其中有一点需要注意,如果你需要进行很多轮对话,那么你的模型最好选择使用gpt-3.5-turbo-16k,这样在输入token多的时候才会有更好的性能。

2.3对于两种方案的总结

       本地部署RWKV优势明显,免费开源,而且性能优异,最主要易于部署,且输入部分大,很适合这种应用场景,但是对本地条件还是有一定需求。使用Open AI接口会产生小额度花销,但是性能相较于小模型还是有明显优势。

        总而言之,两种方案实现难度都不大,可以自己实操体验后再选择,并且语言模型也可以用于其他条件,比如文本续写或者其他生产条件下,可以根据自己的需求进行使用。

-----------------------------------------------------

Part.3- 图片生成,为你的冒险增加沉浸感

        在SillyTavern中还提供了根据你的对话内容自动生成角色肖像,环境地图等功能,并且SillyTavern的配置中提供了多个服务提供商,我强烈建议本地或者云端部署sd项目后使用接口,而并非使用商业接口。因为在对话中,如果你想要为每轮对话生成图片和状态,如果你使用OpenAI的DALL-E或者SD的官方付费接口会产生大量的费用,而国内的文生图模型虽然价格实惠但是存在内容审查,在部分条件下并不能满足一些特殊需求。

       所以我这里使用本地部署的方法进行实现生图。这样你的AI酒馆就会彻底变成一个GalGame。

        在这里我也提供两种方案,并且都是门槛极低,极易上手的操作手法

3.1本地部署Stable Diffusion

       相较于早些时间Stable Diffusion的部署十分麻烦,且还没有webui。但是现在经过社区的创作,已经有一大批简单易上手的启动来使用了。

      本节使用秋葉aaaki的SD启动器进行快速部署。

如何下载: 

 bilibili搜索 秋葉aaaki 。私信整合包会自动回复下载地址

        部署十分简便,下载后点击启动即可。如果实在不会部署,可以直接观看aki的视频进行学习,在此我只会简单讲述一下配置方法。

        我们要做的只有两件事,打开选项启用API和开放远程连接。然后点击一键启动,等待即可。待网页自动弹出,即证明服务已经成功运行了。我们直接进入SillyTavern进行配置。

        可以根据硬件参数,对生成图的大小和采样步数进行调整。注意一点,aki启动器中自带一个模型,可以直接使用。但是如果你要使用需要特殊提示词的模型,例如pony模型,

       你需要在图像提示模板中进行调整。

       由于我使用的是RTX 2060 6G进行演示,所以我适当的降低了参数。

      在配置完成后我们直接进行测试

       你可以生成你想要的图案,例如这里我想要为故事生成一个图案。

       在此基础上你也可以选择生成更多的选项,比如生成角色肖像,环境,背景等。

3.2云服务器部署Stable Diffusion

       在此基础之上,出于硬件限制,我们无法实现很多更有创造性的想法,同时使用网络接口又会让我们的钱包空空,这里我建议使用按小时计费的租用服务器来实现最终的功能。

        在这里我选择使用腾讯云提供的高性能应用服务 HAI,这个项目是按秒计费,每小时计算花费1.2元,存储花费0.01元,开机费用为预付1小时的使用价格,并且其计费按秒计费,也就是说每次的最低消费是一小时,一小时后按秒计费。

        并且,还有新人优惠,1元可以买10元的卷。也就是说1元钱你可以薅腾子8小时的TESLA T4使用机会,而且在校大学生还能再加个半价。

       但是要注意一点:HAI是后付费项目,一定要注意自己的余额和不用的时候关机来节约费用,使用HAI的部署流程如下:

1.(可选)购买1元抵消10元卷

2.进入控制台创建实例


https://console.cloud.tencent.com/hai/

3.点击新建进行创建

       保持和3.1中的同步性,我们直接使用模板中的社区模板,再创建一个aki的实例。注意,创建一个机器需要预先缴纳1小时的费用,也就是1.21元,如果你没有买卷的话记得的账户内存在足够的余额。

        基础的套餐提供的是Tesla T4 有16G的显存,足够完成大部分AIGC工作。

4.购买创建后,观察站内信,获取主机信息

       在这里你可以使用windows自带的远程桌面进行连接,填写IP地址,默认用户名,登陆密码即可。

        远程连接后,我们还需要在防火墙内打开端口7860,来便于我们外部进行访问。

5.配置防火墙

        其中,来源列填写0.0.0.0/0即意味着向IPV4所有公网ip开放; TCP:7860 表明开放的7860端口TCP协议。

       注意一点,服务器是弹性公网地址,即IPV4地址并非固定的,每次开机会更换,记得及时修改你的连接ip和网页用的接口ip。

        随后的操作和3.1相似,只需要把http地址更换为,http://服务器ip:7860即可

只需要更改url地址,然后点击连接即可。

我们来测试一下实际的性能。

        总而言之,使用云主机来进行生图会为我们提供更快的生图速度和生图质量,并且我们还可以尝试更换质量更高的模型,来增加体验感。在一些NSFW应用中,这一功能更是加强了刺激性。

        一定要注意,在使用结束后,一定要关闭你的主机,以避免产生不必要的费用,查看你的消费,则可以通过右上角,费用-优惠管理-现金卷进行查看自己的余额。

-----------------------------------------------------

Part.4 – 如何找到更多的内容

        Silly Tavern有一个丰富的社区,我们可以通过导入角色卡,导入场景来丰富游玩体验。

        以导入角色为例,我们可以进入这些网站进行导入。

        以https://chub.ai/为例我们可以进入网站下载角色卡,然后导入,操作方法如下

       我们可以选择任意一个角色进入下载界面,我们下载PNG类型的角色卡然后进行导入,类似于恋活和3D定制女仆等,不知道是哪个神人想出来的。

       然后选择从文件导入角色。

       导入后直接开始对话即可

       而且还有很多相关的社区可以进行探索,并且可导入的也不仅仅有角色卡,还包含剧本,场景等其他东西,你可以带着你的ai角色一起探索冒险什么的。

------------------------------------------------------

总结

       本文基于傻瓜式脚本部署了一个ai酒馆,并且完成了配套的语言模型和文生图模型的部署,只能说很利于释放压力,实现你的Deep Dark Fantasy。

       最后再说一句,目前的AIGC前景实际上并不很好,目前的互联网上已经充斥了很多AIGC的垃圾,虽然拿ai来做galgame看起来很怪,但是总比在互联网填充垃圾强。
而且,目前很多ai酒馆,收费和门槛都不低,而且审查严重,用起来很不爽,所以有了这个文章。

更多游戏资讯请关注:电玩帮游戏资讯专区

电玩帮图文攻略 www.vgover.com