分类: 代码

  • 使用LLM创作赛马娘同人小说

    项目地址quantumxiaol/umamusume-novel

    要让LLM能够创作符合人设的赛马娘怪文书的同人文,有以下几种思路:

    • 使用足够多的怪文书语料微调开源大模型
    • 使用RAG的方式给LLM提供相关角色的人设
    • 使用function call 的方法在LLM创作前先爬取相关的网页,包括角色设定、优秀的怪文书样例等

    下面是使用RAG的方法进行怪文书写作的示例。

    运行环境

    conda

        conda create -n umamusume-novel python=3.12
        conda activate umamusume-novel
        pip install -r requirements.txt
    

    uv

        uv venv --python 3.12
        use             source .venv/bin/activate
        or use          .venv/Scripts/activate
        uv sync
    
        playwright install
    

    将.env.template复制为.env,修改其中的API_KEY。LLM,

    我测试时使用QWEN,和OPENAI的格式是兼容的。如果要使用OPENAI,直接修改QWEN_MODEL_NAME等即可,不用管前缀和下面的OPENAI_API_KEY。

    QWEN的API在官网中获取,免费也是有不少额度的。

    运行

    赛马娘基础知识问答

    在终端1中运行python umamusume_query.py -p 1122开启服务器 在终端2中运行python umamusume_client.py -u http://127.0.0.1:1122/ask测试

    赛马娘怪文书写作

    使用RAG MCP先查询本地向量数据库的赛马娘的角色信息, 使用WEB MCP在网络上查询赛马娘的角色信息, 根据这些信息去创作小说。

    运行source .venv/bin/activate开启环境

    在终端1中运行bash run-server.sh开启服务器

    等待Web MCP 和 RAG MCP 启动成功,RAG使用本地的向量数据库,因此会比较慢。

    在终端2中运行bash run-client.sh开启客户端

    通过修改run-param.sh中的端口来修改配置。

    在log文件中查看工具调用和服务器的输出。