This is a project I’ve always been curious on doing, and now with how prevalent information is about creating your own model and training with your own data, I decided to give it a try of my own.
A little background information about myself; I graduated with a bachelors degree in computer science in may of 2024 and currently work as a software engineer. I previously did research at a lab focusing on symbolic reasoning and neural network enhancing artificial intelligence. My project that I worked on was to enhance large language models. I was in the lead of the project, where I focused on COVID-19 data verification on ChatGPT.

In this, I did not create my own model, but I was enhancing an existing LLM, by integrating a knowledge graph to provide additional context on the output ChatGPT gave.

Despite working closely and researching LLMs... I did not get a chance to work on them. But with the AI tech war and how quickly models are advancing, I wanted to take this opportunity to try training a model of my own. And what else would be easier than using my own data from iMessage and TikTok.
There are a lot of great resources out there, but I wanted to learn as I build and worked on the project.
Not all data are formatted are the same. Discord and TikTok were easy to request data, and within days I received a JSON file. iMessage was not as easy, I first wanted to try and find a way to get the data without spending money. After looking at multiple alternatives, iMazing was the best option (-$30.00).
Different platforms export data differently.
Tiktok allowed data exports in JSON format. These were straightforward.
This was significantly more difficult.
Apple does not provide a clean, full-message export interface. I purchased a 30day subscription to iMazing to export my texts (-$30.00)
<aside>
TIP: iMazing will not get all of your texts if you store your texts in the cloud. I followed this reddit post's instructions to fully export all texts. Essentially they tell you do disable storing iMessage messages on the iCloud and to download it locally on your phone. MAKE SURE YOU HAVE PHONE SPACE FOR THIS.
</aside>
This was by far the most tedious part.