OpenSmartReply 1 (10 Epochs, DistilGPT2)

Welcome to OpenSmartReply v1 (fine-tuned from DistilGPT2), a.k.a OSR, OSR 1, or OSRv1. Before using this model, please take a moment to read the following. This version of OSR is not meant to be a conversational model. We've fine-tuned DistilGPT2 and achieved surprising quality based on the model size, however the bot still often outputs nonsensical information.

The purpose of OSRv1 is to generate suggestions for responses to messages in a chat-like app. This can be achieved by passing the prior 10 to 20 messages as context. On mobile devices, solutions have been developed to run these types of models (iOS/Android) using on-device machine learning, which protects the privacy of users.

OpenSmartReply

Google has an offline "Smart Reply" system with similar functionality, but this is an open-source attempt to replicate that.

Integration into iOS: Core ML (tutorial soon)

Integration into Android: TensorFlow Lite

TL;DR Try it Out

Most important thing before trying it: This is NOT a chat model! It is supposed to generate suggestions for replies. The quality will be poor and the replies will likely be nonsensical.

On Unix-based systems:

curl -s https://huggingface.co/osr-project/osr1-10/raw/main/chat-demo.py | python3

On Windows/DOS:

(LMK if there's a better way to do this on DOS - I don't use Windows)

Details

We are planning to release a model trained on more epochs in the near future.

Prompt Format

The following is the prompt format:

<user>: message
<context>: message
<user>: message
<context>: message

Note: The prompt format may be confusing. context is not supposed to be context but instead another user (user 1 is user and user 2 is context).

License

CC-BY-NC-ND 4.0

Notes