YAML Metadata Warning: empty or missing yaml metadata in repo card (https://huggingface.co/docs/hub/model-cards#model-card-metadata)

import imaplib import email from transformers import BartForConditionalGeneration, BartTokenizer, pipeline

Load pre-trained model and tokenizer for summarization

model_name = 'facebook/bart-large-cnn' tokenizer = BartTokenizer.from_pretrained(model_name) model = BartForConditionalGeneration.from_pretrained(model_name)

Load sentiment analysis model

sentiment_analyzer = pipeline('sentiment-analysis', model='distilbert-base-uncased')

Connect to your email account

mail = imaplib.IMAP4_SSL('imap.gmail.com') # Example for Gmail, adjust accordingly mail.login('[email protected]', 'your_password') mail.select('inbox') # Select the mailbox you want to retrieve emails from

Function to generate summary

def generate_summary(email_text): inputs = tokenizer([email_text], return_tensors='pt', max_length=1024, truncation=True)

with torch.no_grad():
    summary_ids = model.generate(**inputs)

summary = tokenizer.decode(summary_ids[0], skip_special_tokens=True)
return summary

Search for all emails

status, messages = mail.search(None, 'ALL') message_ids = messages[0].split()

Process and summarize the latest 10 emails received today

for msg_id in message_ids[-10:]: status, msg_data = mail.fetch(msg_id, '(RFC822)') raw_email = msg_data[0][1] msg = email.message_from_bytes(raw_email) sender = msg['From'] subject = msg['subject'] body = ""

if msg.is_multipart():
    for part in msg.walk():
        if part.get_content_type() == "text/plain":
            body = part.get_payload(decode=True).decode()
            break
else:
    body = msg.get_payload(decode=True).decode()

if body:
    summary = generate_summary(body)

    # Perform sentiment analysis on the summary
    sentiment_result = sentiment_analyzer(summary)
    label = sentiment_result[0]['label']
    score = sentiment_result[0]['score']

    print(f"From: {sender}")
    print(f"Email Subject: {subject}")
    print(f"Generated Summary: {summary}")
    print(f"Sentiment: {label}, Score: {score}")
    print("-" * 50)

mail.logout()

Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model is not currently available via any of the supported Inference Providers.
The model cannot be deployed to the HF Inference API: The model has no library tag.