モデル概要
モデル特徴
モデル能力
使用事例
license: apache-2.0 datasets:
- Congliu/Chinese-DeepSeek-R1-Distill-data-110k
- cognitivecomputations/dolphin-r1
- open-thoughts/OpenThoughts-114k
- qihoo360/Light-R1-SFTData
- qihoo360/Light-R1-DPOData language:
- zh
- en base_model:
- deepseek-ai/DeepSeek-R1-Distill-Qwen-14B tags:
- qwen2 library_name: transformers
Zhi-writing-dsr1-14b
1. はじめに
Zhi-writing-dsr1-14bは、DeepSeek-R1-Distill-Qwen-14Bをベースにファインチューニングされたモデルで、特に創造的な文章作成能力を強化するために最適化されています。いくつかのベンチマーク評価では、このモデルの創造的な文章作成性能が向上していることが示されています。
LLM Creative Story-Writing Benchmarkでは、ベースモデルの7.8に対して8.33のスコアを達成しました。WritingBench評価フレームワークでは、DeepSeek-R1-Distill-Qwen-14Bの7.93に対して8.46のスコアを獲得し、改善が見られました。また、AlpacaEvalデータセットでGPT-4oを使用して評価したところ、ベースモデルと比較して**82.6%**の勝率を達成しました。
以下の図は、WritingBenchにおける異なるドメインでの性能比較を示しています:
2. トレーニングプロセス
データ
モデルのトレーニングコーパスは、厳選されたオープンソースデータセット、連鎖思考推論コーパス、Zhihuからキュレーションされた質疑応答ペアの3つの主要なデータソースで構成されています。
最適なドメインカバレッジを達成するため、Dolphin-r1、Congliu/Chinese-DeepSeek-R1-Distill-data-110k、OpenThoughts-114k、Light-R1-SFTData、Light-R1-DPODataなどのさまざまなデータセットの分布を慎重にバランス調整し、Zhihuの高品質なコンテンツと組み合わせました。すべてのデータセットは、Reward Model(RM)フィルタリングパイプラインを通じて包括的な品質保証を受けました。
トレーニング
教師ありファインチューニング(SFT): カリキュラム学習戦略を採用した教師ありファインチューニングを実施しました。この体系的なアプローチは、創造的な文章作成能力を体系的に強化すると同時に、多様なドメインデータを取り入れて中核的な能力を維持し、破滅的な忘れを軽減します。
直接選好最適化(DPO): 最小編集距離を含むシナリオでは、Step-DPO(arxiv:2406.18629)を使用して誤ったトークンを選択的にペナルティ化し、DPOP(arXiv:2402.13228)で提案されたように損失関数に正の制約を組み込みました。
3. 評価結果
評価結果は、モデルの創造的な文章作成能力が有望に向上していることを示唆しています。LLM Creative Story-Writing Benchmark評価では、ベースモデルの7.87から8.33に改善されました。大規模言語モデルの文章能力を評価する包括的なフレームワークであるWritingBenchで評価したところ、8.46のスコアを獲得しました。これはDeepSeek-R1の性能に近く、DeepSeek-R1-Distill-Qwen-14Bの7.93から前進しています。
一般的な能力に関しては、評価結果から知識と推論タスク(CMMLU、MMLU-Pro)で2%~5%の控えめな改善が示され、AIME-2024、AIME-2025、GSM8Kなどのベンチマークで測定された数学的推論においても励みになる進歩が見られました。結果は、モデルがバランスの取れた性能プロファイルを維持しており、DeepSeek-R1-Distill-Qwen-14Bと比較して創造的文章作成、知識/推論、数学的タスク全体で改善が見られることを示唆しています。これらの特性により、さまざまな汎用アプリケーションに適している可能性があります。
4. ローカルでの実行方法
Zhi-writing-dsr1-14bは、80GBメモリを搭載したGPU、単一のH20/A800/H800、またはデュアルRTX 4090を含むさまざまなハードウェア構成で展開できます。さらに、INT4量子化バージョンZhi-writing-dsr1-14b-gptq-int4は単一のRTX 4090で展開できます。
Transformers
from transformers import AutoModelForCausalLM, AutoTokenizer
from transformers.generation import GenerationConfig
MODEL_NAME = "Zhihu-ai/Zhi-writing-dsr1-14b"
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME, trust_remote_code=True)
# bf16を使用
# model = AutoModelForCausalLM.from_pretrained(MODEL_NAME, device_map="auto", trust_remote_code=True, bf16=True).eval()
# fp16を使用
# model = AutoModelForCausalLM.from_pretrained(MODEL_NAME, device_map="auto", trust_remote_code=True, fp16=True).eval()
# CPUのみ使用
# model = AutoModelForCausalLM.from_pretrained(MODEL_NAME, device_map="cpu", trust_remote_code=True).eval()
# 自動モードでデバイスに基づいて精度を自動選択
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
device_map="auto",
trust_remote_code=True
).eval()
# 生成用のハイパーパラメータを指定。ただしtransformers>=4.32.0を使用する場合、これは不要です。
# model.generation_config = GenerationConfig.from_pretrained(MODEL_NAME, trust_remote_code=True)
generate_configs = {
"temperature": 0.6,
"do_sample": True,
"top_p": 0.95,
"max_new_tokens": 4096
}
prompt = "魯迅の口調で西湖酢魚を紹介する文章を書いてください"
messages = [
{"role": "user", "content": prompt}
]
text = tokenizer.apply_chat_template(
messages,
tokenize=False,
add_generation_prompt=True
)
model_inputs = tokenizer([text], return_tensors="pt").to(model.device)
generated_ids = model.generate(
**model_inputs,
**generate_configs
)
generated_ids = [
output_ids[len(input_ids):] for input_ids, output_ids in zip(model_inputs.input_ids, generated_ids)
]
response = tokenizer.batch_decode(generated_ids, skip_special_tokens=True)[0]
print(response)
ZhiLight
ZhiLightを使用して簡単にサービスを開始できます
docker run -it --net=host --gpus='"device=0"' -v /path/to/model:/mnt/models --entrypoints="" ghcr.io/zhihu/zhilight/zhilight:0.4.17-cu124 python -m zhilight.server.openai.entrypoints.api_server --model-path /mnt/models --port 8000 --enable-reasoning --reasoning-parser deepseek-r1 --served-model-name Zhi-writing-dsr1-14b
curl http://localhost:8000/v1/completions \
-H "Content-Type: application/json" \
-d '{
"model": "Zhi-writing-dsr1-14b",
"prompt": "魯迅の口調で西湖酢魚を紹介する文章を書いてください",
"max_tokens": 4096,
"temperature": 0.6,
"top_p": 0.95
}'
vllm
例えば、vLLMを使用して簡単にサービスを開始できます
# vllmをインストール
pip install vllm>=0.6.4.post1
# huggingfaceモデルID
vllm serve Zhihu-ai/Zhi-writing-dsr1-14b --served-model-name Zhi-writing-dsr1-14b --port 8000
# ローカルパス
vllm serve /path/to/model --served-model-name Zhi-writing-dsr1-14b --port 8000
curl http://localhost:8000/v1/completions \
-H "Content-Type: application/json" \
-d '{
"model": "Zhi-writing-dsr1-14b",
"prompt": "魯迅の口調で西湖酢魚を紹介する文章を書いてください",
"max_tokens": 4096,
"temperature": 0.6,
"top_p": 0.95
}'
SGLang
SGLangを使用して簡単にサービスを開始することもできます
# SGLangをインストール
pip install "sglang[all]>=0.4.5" --find-links https://flashinfer.ai/whl/cu124/torch2.5/flashinfer-python
# huggingfaceモデルID
python -m sglang.launch_server --model-path Zhihu-ai/Zhi-writing-dsr1-14b --served-model-name Zhi-writing-dsr1-14b --port 8000
# ローカルパス
python -m sglang.launch_server --model-path /path/to/model --served-model-name Zhi-writing-dsr1-14b --port 8000
# リクエスト送信
curl http://localhost:8000/v1/completions \
-H "Content-Type: application/json" \
-d '{
"model": "Zhi-writing-dsr1-14b",
"prompt": "魯迅の口調で西湖酢魚を紹介する文章を書いてください",
"max_tokens": 4096,
"temperature": 0.6,
"top_p": 0.95
}'
ollama
こちらからollamaをダウンロードできます
- 量子化: Q4_K_M
ollama run zhihu/zhi-writing-dsr1-14b
- bf16
ollama run zhihu/zhi-writing-dsr1-14b:bf16
5. 使用上の推奨事項
Zhi-writing-dsr1-14bを使用する際(ベンチマークを含む)は、期待される性能を達成するために以下の設定を遵守することを推奨します:
-
温度を0.5-0.7の範囲に設定(0.6推奨)して、無限の繰り返しや支離滅裂な出力を防ぎます。
-
モデル性能を評価する際は、複数回テストを行い結果を平均化することを推奨します(数学タスクには
n=16
とmax_tokens=32768
、その他にはn=2
を使用しています)。 -
DeepSeek-R1シリーズモデルのようにモデルが徹底的な推論を行うことを保証するため、すべての出力の冒頭で"<think>\n"で応答を開始するようモデルに強制することを推奨します。
6. 引用
@misc{Zhi-writing-dsr1-14b,
title={Zhi-writing-dsr1-14b: カリキュラム強化学習と直接選好最適化によるLLMの堅牢な創造的文章作成},
author={Jiewu Wang, Xu Chen, Wenyuan Su, Chao Huang, Hongkui Gao, Lin Feng, Shan Wang, Lu Xu, Penghe Liu, Zebin Ou},
year={2025},
eprint={},
archivePrefix={},
url={https://huggingface.co/Zhihu-ai/Zhi-writing-dsr1-14b},
}
7. 連絡先
ご質問がある場合は、issueを立てるかai@zhihu.comまでご連絡ください。



