Instructions to use jgigivjry/threads-summary-taide with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- PEFT
How to use jgigivjry/threads-summary-taide with PEFT:
from peft import PeftModel from transformers import AutoModelForCausalLM base_model = AutoModelForCausalLM.from_pretrained("chengxi0618/taidelx7bchattv1") model = PeftModel.from_pretrained(base_model, "jgigivjry/threads-summary-taide") - Notebooks
- Google Colab
- Kaggle
Threads Discussion Summary TAIDE LoRA
這是一個用於 Threads 討論串摘要的繁體中文 LoRA adapter。
模型接收一則 Threads 原始貼文及其下方留言,根據貼文內容、留言文字及 父子回覆結構,產生約 3~6 句繁體中文摘要。
摘要主要整理:
- 原始貼文的主題、觀點或訴求
- 留言區的主要討論內容
- 支持、反對、爭議或共識
- 討論串的整體氣氛
本 Repository 只提供 PEFT LoRA adapter,不包含完整的 7B 基礎模型。 使用時必須另外載入相容的基礎模型。
Model Lineage
本模型的來源關係如下:
Meta Llama 2 7B
↓
taide/TAIDE-LX-7B-Chat
↓
chengxi0618/taidelx7bchattv1
↓
Threads Discussion Summary TAIDE LoRA
Direct base model
本 LoRA adapter 的 adapter_config.json 指定:
chengxi0618/taidelx7bchattv1
因此,這是執行本 LoRA 時應載入的直接基礎模型:
https://huggingface.co/chengxi0618/taidelx7bchattv1
Upstream original model
chengxi0618/taidelx7bchattv1 的 config.json 中,
_name_or_path 顯示為:
taide/TAIDE-LX-7B-Chat
因此可將 TAIDE 官方模型記錄為上游原始模型:
https://huggingface.co/taide/TAIDE-LX-7B-Chat
chengxi0618/taidelx7bchattv1 是第三方帳號發布的模型,
並非 TAIDE 官方帳號的 Repository。
config.json 的 _name_or_path 可以作為模型來源資訊,但不能單獨證明
第三方版本與官方版本的所有模型權重、Tokenizer 及其他檔案完全一致。
Model Details
- Model type: PEFT LoRA adapter
- Task: Threads discussion summarization
- Language: Traditional Chinese
- Output: Generative text summary
- Library: PEFT and Transformers
- Direct base model: chengxi0618/taidelx7bchattv1
- Upstream model: taide/TAIDE-LX-7B-Chat
- Upstream architecture: Llama causal language model
- Adapter format: SafeTensors
- License: TAIDE L Models Community License Agreement
Intended Uses
本模型適合用於:
- Threads 討論串摘要
- 社群留言內容整理
- 輿情分析
- 快速掌握留言區主要意見
- 整理支持、反對及爭議觀點
- 產生繁體中文短摘要
- 研究、教育及競賽展示
- 作為留言分析或 RAG 系統的摘要模組
Out-of-Scope Uses
本模型不應直接用於:
- 將摘要視為完整討論串的替代品
- 自動判斷貼文或留言是否真實
- 判定任何人違法或涉及霸凌
- 未經人工確認的新聞報導
- 自動懲處、封鎖或標記使用者
- 推論使用者的心理狀態或敏感屬性
- 摘要私人、未授權或含敏感個資的對話
- 產生醫療、法律、投資或其他專業結論
Input Format
模型預期接收已整理成樹狀結構的 Threads 純文字:
[root_post] @original_author: 原始貼文內容
[reply] @user_a: 第一層留言
[reply] @user_b: 回覆第一層留言
[reply] @user_c: 另一則第一層留言
[thread_continuation] @original_author: 原作者補充內容
節點標記:
| 標記 | 說明 |
|---|---|
[root_post] |
原始貼文 |
[reply] |
一般留言或回覆 |
[thread_continuation] |
原作者的串文延續內容 |
縮排表示留言的回覆層級及父子關係。
Installation
請依實際建立的 Repository 名稱修改 adapter_id。
import torch
from peft import PeftModel
from transformers import (
AutoModelForCausalLM,
AutoTokenizer,
BitsAndBytesConfig,
)
# LoRA 實際綁定的直接基礎模型
base_model_id = "chengxi0618/taidelx7bchattv1"
# 本專案上傳的 LoRA Repository
adapter_id = "jgigjvjy/threads-summary-taide-lora"
# 載入 Tokenizer
tokenizer = AutoTokenizer.from_pretrained(
base_model_id,
use_fast=False,
)
if tokenizer.pad_token_id is None:
tokenizer.pad_token = tokenizer.eos_token
載入直接基礎模型
compute_dtype = (
torch.bfloat16
if torch.cuda.is_available()
and torch.cuda.is_bf16_supported()
else torch.float16
)
quantization_config = BitsAndBytesConfig(
load_in_4bit=True,
bnb_4bit_quant_type="nf4",
bnb_4bit_compute_dtype=compute_dtype,
bnb_4bit_use_double_quant=True,
)
base_model = AutoModelForCausalLM.from_pretrained(
base_model_id,
quantization_config=quantization_config,
device_map="auto",
)
套用 LoRA Adapter
model = PeftModel.from_pretrained(
base_model,
adapter_id,
)
model.eval()
產生 Threads 摘要
thread_text = """
[root_post] @original_author: 最近想了解大家對這項政策的看法。
[reply] @user_a: 方向正確,但配套還不完整。
[reply] @user_b: 同意,執行方式需要再說明。
[reply] @user_c: 目前資訊不足,還不能確定成效。
""".strip()
system_prompt = """
你是一個協助整理 Threads 討論串的助手。
你會收到一則 Threads 貼文與其下方回覆的純文字紀錄,
並依照回覆層級縮排。
請用繁體中文寫一段摘要,長度約 3~6 句,需涵蓋:
1. 原始貼文的主題、觀點或訴求
2. 留言區的主要討論內容、正反意見或共識
3. 討論串的整體氣氛
只輸出摘要本文,不要加標題,不要使用 Markdown 條列。
""".strip()
messages = [
{
"role": "system",
"content": system_prompt,
},
{
"role": "user",
"content": thread_text,
},
]
input_ids = tokenizer.apply_chat_template(
messages,
tokenize=True,
add_generation_prompt=True,
return_tensors="pt",
)
model_device = next(
model.parameters()
).device
input_ids = input_ids.to(
model_device
)
with torch.inference_mode():
output_ids = model.generate(
input_ids,
max_new_tokens=300,
do_sample=True,
temperature=0.15,
top_p=0.9,
repetition_penalty=1.15,
pad_token_id=tokenizer.pad_token_id,
eos_token_id=tokenizer.eos_token_id,
)
generated_ids = output_ids[
0,
input_ids.shape[-1]:,
]
summary = tokenizer.decode(
generated_ids,
skip_special_tokens=True,
).strip()
print(summary)
Compatibility Notice
本 LoRA 是針對以下直接基礎模型建立:
chengxi0618/taidelx7bchattv1
雖然該模型的 config.json 指向:
taide/TAIDE-LX-7B-Chat
但不建議在未測試的情況下,直接將 base_model_id 改成:
taide/TAIDE-LX-7B-Chat
如果要改用 TAIDE 官方模型,應先確認:
- 模型架構完全一致
- Tokenizer 字典及特殊 Token 一致
- Chat template 一致
- 各層權重名稱與形狀一致
- LoRA adapter 可以正確載入
- 相同輸入下的生成結果合理
- 已同意官方模型的存取及授權條款
Limitations
本模型具有以下限制:
- 可能產生原始討論串未提及的內容。
- 可能遺漏少數意見或後段留言。
- 過長討論串可能需要截斷。
- 父子關係錯誤會影響摘要理解。
- 可能誤解反諷、玩笑、雙關語及迷因。
- 無法直接理解圖片、影片、語音或貼圖。
- 已刪除、非公開或抓取失敗的留言無法納入摘要。
- 摘要不代表事實查核結果。
- 第三方基礎模型未經逐檔驗證與官方模型完全一致。
- 輸入可能包含使用者名稱,使用前應評估匿名化需求。
- Downloads last month
- 23
Model tree for jgigivjry/threads-summary-taide
Base model
chengxi0618/taidelx7bchattv1