← All posts
ENGINEERING 1 min read

Why Cake writes your greetings on the phone, not on a server

Birthday messages are personal. We wanted the AI part of Cake to work without sending a single name to the cloud.

When we started on greeting suggestions, the obvious route was a cloud API. It would have been faster to build and the results would have been better on day one. It would also have meant sending your friends' names, ages and group memberships to a server every time Cake wrote a message.

So Cake runs a small language model directly on the iPhone. The first time you use AI greetings, the app downloads the model once. After that, everything happens offline: Cake builds a prompt from the greetings you collected for a group, generates a few suggestions, and lets you keep the ones you like.

What we gave up

A model that fits on a phone is smaller than the ones in the cloud. It needs examples to sound like you, which is why Cake asks you to collect a few greetings first. Generation also needs a real device. The simulator can show the interface but cannot run the model.

If a message is for one person, it should stay between you and that person.

We think the trade is worth it. Your contacts stay on your phone, and Cake works on a plane.