|
|
--- |
|
|
base_model: XD-MU/ScriptAgent |
|
|
library_name: peft |
|
|
pipeline_tag: text-generation |
|
|
tags: |
|
|
- base_model:adapter:XD-MU/ScriptAgent |
|
|
- lora |
|
|
- transformers |
|
|
--- |
|
|
|
|
|
|
|
|
# ScriptAgent: Dialogue-to-Shooting-Script Generation Model |
|
|
|
|
|
This model is a fine-tuned adapter (LoRA) on top of the `XD-MU/ScriptAgent` base model, designed to **generate detailed shooting scripts from dialogue inputs**. It is trained to transform conversational text into structured screenplay formats suitable for film or video production. |
|
|
|
|
|
The model is compatible with [ms-swift](https://github.com/modelscope/swift) and supports efficient inference via the **vLLM backend**. |
|
|
|
|
|
> 💡 Note: This repository contains a **PEFT adapter** (e.g., LoRA). To use it, you must merge it with the original base model or load it via `ms-swift`. |
|
|
|
|
|
## ▶️ Inference with ms-swift (vLLM Backend) |
|
|
|
|
|
To generate shooting scripts from dialogue inputs, use the following command with **ms-swift**: |
|
|
|
|
|
You can find **DialoguePrompts** here: https://huggingface.co/datasets/XD-MU/DialoguePrompts |
|
|
```bash |
|
|
import os |
|
|
from huggingface_hub import snapshot_download |
|
|
|
|
|
os.environ['CUDA_VISIBLE_DEVICES'] = '0' |
|
|
|
|
|
model_name = "XD-MU/ScriptAgent" |
|
|
local_path = "./models/ScriptAgent" |
|
|
|
|
|
# 下载整个仓库的所有文件 |
|
|
print("下载模型所有文件...") |
|
|
snapshot_download( |
|
|
repo_id=model_name, |
|
|
local_dir=local_path, |
|
|
local_dir_use_symlinks=False, |
|
|
resume_download=True |
|
|
) |
|
|
|
|
|
print(f"模型已完整下载到: {local_path}") |
|
|
|
|
|
# 使用 SWIFT 加载 |
|
|
from swift.llm import PtEngine, RequestConfig, InferRequest |
|
|
|
|
|
engine = PtEngine(local_path, max_batch_size=1) |
|
|
request_config = RequestConfig(max_tokens=8192, temperature=0.7) |
|
|
|
|
|
infer_request = InferRequest(messages=[ |
|
|
{"role": "user", "content": "你的对话上下文(Your Dialogue)"} |
|
|
]) |
|
|
response = engine.infer([infer_request], request_config)[0] |
|
|
|
|
|
print(response.choices[0].message.content) |
|
|
``` |
|
|
|
|
|
|
|
|
|