LLM游戏开发周记(一)

模型选择

openrouter上的模型很多,但是大部分的中文表达能力都很差。除了专门做了中文训练的qwen、Yi、deepseeker系列以外,能正确生成中文内容的模型基本要70B以上,成本很高。而英文生成,14B以上就能有很好的效果了。

下面列举几个,我测试过可以生成包括NSFW中文内容的模型。

1. nousresearch/hermes-3-llama-3.1-405b

405B的超大模型。目前在openrouter上还是免费的,应该是在测试功能。响应非常慢,经常超时。但是生成效果很好,对指令的跟随性很高。

中文能力很强,对于NSFW内容可以细致描述(如做性行为场景、血腥暴力场景)。

2. microsoft/wizardlm-2-8x22b

能够生成中文内容、NSFW内容。输出中文内容时,会时不时出现英文单词,偶尔会出现大段英文。chat模式指令跟随一般,容易跑偏。text-completion会好很多。生成速度比较快,最便宜的供应商提供的每M input/ouput token都是0.5刀。性价比还可以。

3. deepseek/deepseek-coder

能够生成中文内容、NSFW内容(但是会比较委婉,特殊xp支持能力薄弱)。chat模式基本用不了,只能text-completion。text-completion效果还是很不错的。生成速度快,input 0.14刀/M token,output 0.28刀/M token

4. alpindale/magnum-72b

贵的东西只有一个缺点,那就是贵。但那不是它的问题,而是你的。input 3.75刀/M token,output 4.5刀/M token

作为72b模型,这个价格有点太高了,但是在Openrouter的中文&NSFW的赛道上,它几乎是最好的选择了。算是qwen的uncensored版本,生成速度较快、指令跟随能力强。可以生成直接的色情、暴力内容。不过似乎古风网文喂的有点多。有时候生成内容有点搞笑。

5.CausalLM 7b/14b (需要本地部署)

其实我觉得CausalLM是最好的,14b的模型成本不高、速度快、在text-completion模式下跟随能力还不错。可惜openrouter上没有提供。

本地部署基本上需要12G以上(最好16G以上)的显存。不然context只能设4096。理论上用flash-attention可以降低显存要求,但是我用flash-attention有时候有bug,不能正确生成内容,所以没有尝试。

CausalLM和Magnum一样是qwen1.5架构训练的。中文、NSFW生成都很不错。在国内平台看到的所谓,无审查AI女友、无审查角色扮演都是CausalLM的。但是我目前找不到任何一家提供CausalLM api的平台。本地部署对于8G显存还是主流的玩家环境来说还是有点苛刻,租gpu云相对于直接使用api来说价格又太高了,比较尴尬。

补全模式选择

大部分模型的text-completion(或者说instruct)模式都比chat模式的效果要好。尤其是在指令跟随上。

提示词

经过很多尝试后,我发现Sillytavern的指令效果就很好了。
以角色扮演为例

1
2
3
4
5
6
7
{{char}}'s  personality: 
角色描述
Scenario:
场景描述
***
{{char}}: "语言例句"(动作例句)
***

然后使用玩家名称作为stop word,效果就比较好了。