侧边栏壁纸
  • 累计撰写 40 篇文章
  • 累计收到 2 条评论

本地部署轻量大模型生成短剧脚本的实操笔记

2026-9-23 / 0 评论 / 28 阅读

本地部署轻量大模型生成短剧脚本的实操笔记

昨天翻本地模型库的时候突然想,之前找短剧脚本要么要会员要么生成的太套路,不如自己整个本地跑的,不用爬接口也不用付token费,说搞就搞了。

先把依赖和模型下对

我这边用的Python 3.10版本,之前试过3.12装llama-cpp-python卡了好半天编译失败,换3.10就顺了。先装基础依赖:

pip install llama-cpp-python fastapi uvicorn

如果是N卡用户想GPU加速,装llama-cpp-python之前要先设环境变量,Windows下命令是:

set CMAKE_ARGS="-DLLAMA_CUBLAS=on"
pip install llama-cpp-python --force-reinstall --upgrade

Mac用户把CMAKE_ARGS的值换成-DLLAMA_METAL=on就行,M系列芯片的速度我还没细测,反正能正常跑。模型不用下那种几十G的大版本,找Q4_K_M量化的7B短剧微调模型就够用,大概4G左右,放本地任意目录记好路径就行。

核心代码其实没几行

新建个drama_gen.py文件,把下面的代码粘进去,记得把模型路径换成你自己本地的:

from llama_cpp import Llama
import sys
# 加载本地模型
llm = Llama(
    model_path="./models/short_drama_7b_q4.gguf",
    n_ctx=2048,
    n_gpu_layers=-1, # 有GPU全量调用,纯CPU跑设为0
    verbose=False
)
def gen_script(prompt, eps=3):
    input_prompt = f"""你是专业竖屏短剧编剧,根据用户需求写{eps}集脚本,每集要有爽点和反转:
用户需求:{prompt}
脚本内容:"""
    output = llm(
        input_prompt,
        max_tokens=2048,
        temperature=0.7,
        stop=["用户需求:"],
        echo=False
    )
    return output['choices'][0]['text']

if __name__ == "__main__":
    user_demand = sys.argv[1]
    print(gen_script(user_demand))

运行的时候直接在命令行传需求参数就行,比如:

python drama_gen.py "赘婿上门被丈母娘羞辱,当场亮出首富身份"
小提示:n_ctx参数别一开始设太大,尤其是纯CPU跑的用户,先从1024开始试,跑不动再往下调,不然容易直接内存占满卡退,具体能开多大看设备配置。

我自己用着的小调整

  • 觉得生成内容太生硬的话,别先忙着调模型参数,先改prompt,加上“台词口语化”“每集结尾留钩子”这类具体要求,效果提升比改temperature明显多了
  • 想要可视化界面的话,把gen_script函数套个FastAPI接口,前端整个简单的输入框加按钮,花不了多少时间就能搭出本地网页版,我这边现在就是这么用的,同事没事就来蹭着生成爽文脚本摸鱼
  • 不用纠结7B模型效果差,专门针对短剧微调过的量化版本,生成的套路逻辑比很多平台免费送的脚本靠谱,至少不会出现前后人物设定矛盾的硬伤

对了,要是跑的时候遇到模型加载报错,先看看存放模型的路径有没有中文,我之前卡了好一会才发现是文件夹名叫“短剧模型”,改成英文名瞬间就加载成功了。就写到这,我去生成个重生复仇的脚本摸会鱼。

评论一下?

OωO
取消