Once this has completed successfully, you can test it by running:
python ./src/interactive_conditional_samples.py
Installing Reddit Bot
Next, if you haven't already, back out of the gpt-2 directory and clone the gpt-2_bot repository:
cd ..
git clone https://github.com/shevisjohnson/gpt-2_bot.git
cd gpt-2_bot
Next, install requirements:
pip install -r requirements.txt
And finally, copy reddit_bot.py over to the main GPT-2 repository under the src sub-directory:
cp ./reddit_bot.py ../gpt-2/src/reddit_bot.py
Configuring Praw (Reddit python interface)
Praw is a library that interfaces with the Reddit API for you. It limits how many requests you can make, and makes it easy to extract the json responses.
You need to do a bit of setup first though in order for the bot to be able to post to Reddit.
Give it a name. You have to choose a redirect uri (for some stupid reason, stupid because I'm building a bot, not a webapp, but whatever). I chose http://127.0.0.1
You will now get a client_id (red box below) and secret (blue box below). Note it down, but keep it secret.
Now, you need to update your praw ini file to remember these settings. Otherwise, you’ll have to put them in your script and thats dangerous (as others might see them).
I don’t recommend modifying the package-level praw.ini as those changes will be overwritten every time the package is updated. Instead praw.ini should be placed in the directory that the program is run from (often the same directory as the file).
In your praw.ini file, make sure the profile tag is set to [gptbot] and make sure the file is located in the base of the gpt-2 repository.
Running the bot
Once setup is complete, actually running the bot is very simple. From the base of the gpt-2 repository:
python ./src/reddit_bot.py
That's it!
Big thanks to OpenAI for releasing this model publicly!