Downloads · 30 days
13
2% of all-time downloads
sooolee/flan-t5-base-cnn-samsum-lora
flan-t5-base-cnn-samsum-lora is a summarization model from sooolee. Use it when you need a shorter version of a longer text. It is set up for adapter-transformers. The card lists the license as apache-2.0.
This model is a fine-tuned version of braindao/flan-t5-cnn on the samsum dataset.
Downloads · 30 days
13
2% of all-time downloads
All-time downloads
663
Public
Repo size
7.9 MB
Likes
0
Public
Click a slice to open those files.
.bin7.1 MB · 69%
From the Hugging Face model README
This model is a fine-tuned version of braindao/flan-t5-cnn on the samsum dataset.
The base model braindao/flan-t5-cnn is a fine-tuned verstion of google/flan-t5-base on the cnn_dailymail 3.0.0 dataset.
Please visit HF Spaces sooolee/summarize-transcripts-gradio for Gradio API. This API takes YouTube 'Video_ID' as the input.
Summarize transcripts such as YouTube transcripts.
The following hyperparameters were used during training:
Note 'max_new_tokens=60' is used in the below example to control the length of the summary. FLAN-T5 model has max generation length = 200 and min generation length = 20 (default).
import torch
from peft import PeftModel, PeftConfig
from transformers import AutoModelForSeq2SeqLM, AutoTokenizer
# Load peft config for pre-trained checkpoint etc.
peft_model_id = "sooolee/flan-t5-base-cnn-samsum-lora"
config = PeftConfig.from_pretrained(peft_model_id)
# load base LLM model and tokenizer
model = AutoModelForSeq2SeqLM.from_pretrained(config.base_model_name_or_path, device_map='auto') # load_in_8bit=True,
tokenizer = AutoTokenizer.from_pretrained(config.base_model_name_or_path)
# Load the Lora model
model = PeftModel.from_pretrained(model, peft_model_id, device_map='auto')
# Tokenize the text inputs
texts = "<e.g. Part of YouTube Transcript>"
inputs = tokenizer(texts, return_tensors="pt", padding=True, ) # truncation=True
# Make inferences
device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
with torch.no_grad():
output = self.model.generate(input_ids=inputs["input_ids"].to(device), max_new_tokens=60, do_sample=True, top_p=0.9)
summary = self.tokenizer.batch_decode(output.detach().cpu().numpy(), skip_special_tokens=True)
summary
Please check out the BART-Large-CNN-Samsum model fine-tuned for the same purpose: sooolee/bart-large-cnn-finetuned-samsum-lora