rohansb10 commited on
Commit
5169ea9
·
verified ·
1 Parent(s): 57d3bd5

Create README.md

Browse files
Files changed (1) hide show
  1. README.md +96 -3
README.md CHANGED
@@ -1,3 +1,96 @@
1
- ---
2
- license: mit
3
- ---
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Custom BART Model for Text Summarization
2
+
3
+ This project involves fine-tuning a BART model for text summarization tasks. The model was trained on custom data, and the resulting model is saved locally and uploaded to Hugging Face for further use.
4
+
5
+ ## Table of Contents
6
+
7
+ - [Overview](#overview)
8
+ - [Installation](#installation)
9
+ - [Usage](#usage)
10
+ - [Training the Model](#training-the-model)
11
+ - [Saving and Uploading the Model](#saving-and-uploading-the-model)
12
+ - [Generating Summaries](#generating-summaries)
13
+ - [Contributing](#contributing)
14
+ - [License](#license)
15
+
16
+ ## Overview
17
+
18
+ This project fine-tunes a BART model (`facebook/bart-base`) on custom summarization tasks. After training, the model can generate summaries for input text, which can be used for various applications like news article summarization, report generation, etc.
19
+
20
+ ## Installation
21
+
22
+ To get started, ensure you have Python installed (preferably Python 3.8 or above). Install the required dependencies using the following command:
23
+
24
+ ```bash
25
+ pip install transformers torch huggingface_hub
26
+ Usage
27
+ Loading the Model and Tokenizer
28
+ Ensure you have saved your trained model and tokenizer in the ./custom_bart_model directory. The code snippet below demonstrates how to load the model and generate summaries based on user input.
29
+
30
+ from transformers import BartTokenizer, BartForConditionalGeneration
31
+ import torch
32
+
33
+ # Load the model and tokenizer
34
+ model = "rohansb10/summary"
35
+ tokenizer = BartTokenizer.from_pretrained(model)
36
+ model = BartForConditionalGeneration.from_pretrained(model)
37
+
38
+ # Move model to the appropriate device
39
+ device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
40
+ model.to(device)
41
+ model.eval()
42
+
43
+ def generate_summary(input_text):
44
+ inputs = tokenizer(input_text, return_tensors="pt", truncation=True, padding="max_length", max_length=512).to(device)
45
+ with torch.no_grad():
46
+ summary_ids = model.generate(inputs["input_ids"], max_length=128, num_beams=4, early_stopping=True)
47
+ output_text = tokenizer.decode(summary_ids[0], skip_special_tokens=True)
48
+ return output_text
49
+
50
+ user_input = input("Enter your text: ")
51
+ output = generate_summary(user_input)
52
+ print("\nModel Output:")
53
+ print(output)
54
+ Training the Model
55
+ The training process involves loading the pre-trained BART model and tokenizer, preparing a custom dataset, and training the model using the PyTorch DataLoader. Refer to the train_model() and evaluate_model() functions in the code for the detailed implementation.
56
+
57
+ Saving and Uploading the Model
58
+ After training, save your model and tokenizer using:
59
+
60
+ # Save the model and tokenizer
61
+ save_directory = "./custom_bart_model"
62
+ custom_model.model.save_pretrained(save_directory)
63
+ tokenizer.save_pretrained(save_directory)
64
+ Upload the saved model to Hugging Face Hub:
65
+
66
+
67
+ from huggingface_hub import notebook_login, create_repo, upload_folder
68
+
69
+ # Log in to Hugging Face
70
+ notebook_login()
71
+
72
+ # Upload to Hugging Face Hub
73
+ upload_folder(
74
+ folder_path=save_directory,
75
+ path_in_repo="",
76
+ repo_id="your_hf_username/custom-bart-finetuned",
77
+ repo_type="model",
78
+ )
79
+ Generating Summaries
80
+ The model can be used to generate summaries by feeding it input text. Adjust the parameters in the generate_summary() function to tweak the length, beam size, and other settings.
81
+
82
+ Contributing
83
+ Contributions are welcome! If you have any suggestions or improvements, please submit a pull request.
84
+
85
+ License
86
+ This project is licensed under the MIT License - see the LICENSE file for details.
87
+
88
+
89
+ ### Key Points:
90
+ - **Overview**: Describes what the project is about.
91
+ - **Installation**: Lists dependencies and how to install them.
92
+ - **Usage**: Provides instructions on how to load and use the model.
93
+ - **Training, Saving, and Uploading**: Steps to train, save, and upload the model.
94
+ - **Contributing and License**: Information on contributing and licensing.
95
+
96
+ Feel free to modify any section to better fit your project’s needs!