Introducing @TTAships

This Terran Trade Authority ship does not exist

It's time for a new bot! Unlike my Trove bots, this one isn't useful or even historical; it's just for fun. @TTAships tweets out an image of a spaceship (mostly), once(ish) a day.

Here's today's TTA spaceship:

The image is AI-generated art, hopefully evocative of the kind of illustrations associated with 1970s science fiction novels and, especially, the Terran Trade Authority books which scifi geeks of a certain age will remember with great fondness. Think Angus McKie, Peter Elson, Chris Foss (though his art was never actually used in a TTA book). The results are, inevitably, variable, but when the AI gets it right, I think it gets it very right indeed: weird spaceships doing mysterious things in a strange universe.

This Terran Trade Authority ship does not exist

The images are generating using Looking Glass v1.3, which uses ruDALL-E. I don't fully* understand how it works, but in effect you feed it some training images, say how much variety you want, and let it run. For the bot I've used just 15 images, with medium universe similarity and medium confidence settings (and upscaled x2 to make them 512x512 in size; the image at the top of this post has been differently AI-resized), and that seems to give a nice balance between vague familiarity and intriguing novelty. See my Twitter thread here and here for many more examples.

This Terran Trade Authority ship does not exist


The bot is a very basic piece of Python code (which nevertheless was far harder to write than it needed to be, because I code so infrequently that I always need to learn everything over again). Probably the most interesting aspect of the bot was deciding to deploy it on Heroku. For the Trove bots, I use Glitch (because Tim Sherratt's instructions made that dead simple). But Heroku is a more fully-featured development and production environment for cloud services, and so I figured I might learn more that way. There a number of tutorials out there; here's one I found helpful.

This Terran Trade Authority ship does not exist

I'd like to improve @TTAships in future. One would be to add some more interesting text, ideally something randomly TTAish. The obvious way to do this would be again via AI, probably using GPT-2. An easier way would be to just write some scifi boilerplate and use that. Another thing to do would be to fully automate the pipeline from the AI to Twitter. At the moment I generate the images manually on Google Colab, then manually push the images to Heroku. In theory it should be possible to cut out the middleperson and do it all on Heroku without my intervention, but I think that would cost more in time and money than I am willing to spend (i.e. next to nothing). For now I can easily generate a few months' worth of images in a day on Colab, so the bot should require very little intervention from me to keep running. (We'll see!)

This Terran Trade Authority ship does not exist

In a day @TTAships has acquired 88 followers, meaning that it has already caught up to my most popular Trove bot, @TroveAirBot. The sky may be the limit, but space is the final frontier…

Update: I've already implemented one of the improvements suggested above:

CC BY-NC-ND 4.0 This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. Permissions beyond the scope of this license may be available at

Leave a Reply

Your email address will not be published. Required fields are marked *