Any tips or ideas on choosing a final year project? I don't really have any ideas in mind other than implementing an LLM,
not sure how applicable or good this is though, my major is computer engineering and i'm only interested in software dev
I am unfamiliar with your school system I think. Final year of college / university?
Do you have a specialization in your major (graphics, machine learning, embedded, networks / security - something like this?)
I'd go with something from the specialization if you have one. If not, just something that interests you.
I don’t think you should do LLM or machine learning stuff if you want to get software development out of the project. Mostly because most of the time you won’t do software dev stuff with that kind of stuff. You will mostly just download some off the shelf model, prepare data, tweak parameters, cross your fingers and pray for slightly better results, and repeat.
My recommendation without knowing much about you is to make a game engine. You remove the pressure of making something practical, and can just focus on making stuff that looks cool. You can easily control the scope of the project, and you will face a great variety of software development challenges. Lots of opportunities to learn.
And finally you will also have something that’s fun to present.
Ask your profs or other applicable personnel for offered final year projects, suggestions, and previous years projects. You can also check software dev companies which may offer such projects as job openings. That'll give you more of an overview of current common projects, and some ideas of what you could do.
I might misunderstand what you mean with "implementing" an LLM, but unless you have a good understanding of deep learning and math I wouldn't recommend to implement one from scratch. There's a lot of complex math involved in these kind of topics. If you mean implementing an application around an existing LLM, for example writing a chat website that interfaces with ChatGPT or a local LLM, then it's doable (depending on you current skills).
The math involved in LLMs is not complex for anyone that has passed undergrad Calc and Linear Algebra classes. If you know derivatives, the chain rule and some matrix basics you can figure them out with enough studying.
The hard part about LLMs is not the math but the neural net architecture innovations they brought (eg self-attention)