I’ll try to setup a repository for studying transformer models at the lowest level and decided to ask ChatGPT to help me setup a modern repo. Alas, I ran into interesting issues I decided to document as a sort of meta-level learning experience

I asked ChatGPT for the steps and got two problems in the output:

  1. It instructed me to use a cookiecutter template that was deprecated (probably was fine back when the LLM was trained) and landed me in total depedence hell trying to get Sphinx and Jinja2 collaborate which I after 15 minutes of struggling was able to fix by upgrading all the requirements to current and throwing out some that I did not find useful.

  2. ChatGPT also did not seem to realize that cookiecutter creates a new project folder where most of the command line commands should be run, and following its instruction you would end up with a bit weird ‘two-layer’ repo with the virtual environment at the parent directory. Specifically this became confusing when dealing with gh-page routing.

What the Wolt?

So, I scrapped the initial repo and googled for up-to-date, modern template for Python projects by also setting the search to only include results no older than 1 year. This led me to this interesting template from Wolt:

https://careers.wolt.com/en/blog/tech/project-template-for-modern-python-packages?ref=blog.jerrycodes.com

so lets give it a spin!