Skip to main content

Summarize and Narrate your emails through power of LLMs.

Project description

INarrator

Logo

Install the Package

pip install inarrator

Use the Package

Gmail

  1. In the Google Cloud console, enable the Gmail API.

  1. Register your App

    • In the Google Cloud console, go to OAuth Consent screen
    • Once on OAuth Consent Screen, select User Type External and then click create:
    • Now complete the registration of your app which is fairly simple. Just remember two things:
      • Since this is a Testing App, you will have to add some test users (ideally make it the same email through which you are registering the app)
      • Add .../auth/gmail.readonly scope
  2. Create "gmail_credentials.json" file:

    • Go to Credentials
    • Click + CREATE CREDENTIALS > OAuth client ID
    • SELECT Desktop app as application type
    • After this a pop up will appear which will have a option to DOWNLOAD OAuth Client JSON file.
    • Save the JSON and rename it to gmail_credentials.json
  3. Use the inarrator

  • Chat-GPT Example

    gmail = Gmail()
    gmail.authenticate(
        credentials_path="gmail_credentials.json",
        gmail_scope=["https://www.googleapis.com/auth/gmail.readonly"],
    )
    # https://support.google.com/mail/answer/7190 (You can read more about Gmail Filters)
    emails = gmail.get_latest_emails(
            gmail_filters="from:(-noreply -no-reply) is:unread -category:social -category:promotions -unsubscribe", # 
            gmail_max_emails="30",
        )
    os.environ['OPENAI_API_KEY'] = ''
    model = GPTModel(model_name = 'gpt-3.5-turbo-16k')
    documents = []
    for email in emails:
        documents.append(email)
    print(model.summarize(documents))
    
  • Hugging Face Hub Example

    gmail = Gmail()
    gmail.authenticate(
        credentials_path="gmail_credentials.json",
        gmail_scope=["https://www.googleapis.com/auth/gmail.readonly"],
    )
    emails = gmail.get_latest_emails(
            gmail_filters="from:(-noreply -no-reply) is:unread -category:social -category:promotions -unsubscribe",
            gmail_max_emails="30",
        )
    model =  HuggingFaceModel(api_token="",model_name="tuner007/pegasus_summarizer")
    print(model.summarize(emails[0])) # Hugging Face Hub Models currently can summarize one email at a time.
    

Outlook

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

inarrator-0.0.1.tar.gz (9.7 kB view hashes)

Uploaded Source

Built Distribution

inarrator-0.0.1-py3-none-any.whl (11.5 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page