A small model as the first stop
With Laya and Jev, something happened to me that hadn't happened with a model in a long time. I thought: this is exactly what I was trying to achieve. In our Gateway, we had set up…
After explaining what Nala is and why it makes sense as a product, the technical side deserves its own space.
It also helps to remember what the acronym stands for: Natural Adaptive Language Assistant. That idea of language, adaptation, and guided assistance is deeply reflected in how the system is architected.
Because Nala is not designed as a generic chat for children, but as a guided conversational system where every product decision also depends on a very specific architecture.
The starting point matters: Nala does not behave like a free-form, unpredictable chat governed by one giant prompt.
Its behavior is constrained by design. Every interaction goes through prior logic that tries to understand what the child needs and what kind of response is appropriate before any text is generated.
The goal is not to impress with a "creative" AI, but to build an experience that is stable, brief, understandable, and safe.
The web application runs on Next.js 15 and React 19.
The conversational core lives in its own package called nala-ai-api, built with Genkit 1.33 and OpenAI models.
That separation helps preserve something important: the child-facing interface, the product logic, and the conversational orchestration do not end up mixed into a single layer that is hard to evolve.
Each child message is not sent straight to the model just to "see what it says."
Before that, Nala moves through several stages:
In practice, this means the system tries to distinguish whether the child wants to play, talk, ask for help, follow a routine, regulate themselves, or simply ask a question.
The final response does not come only from the model. It comes from the combination of profile, context, limits, detected intent, and safety rules.
One of the most important aspects of Nala is that personalization is not treated as a superficial layer.
Each child profile can define:
From the outside, that may look like simple configuration. Technically, it is a way to constrain the system and make it more useful.
The point is not just to make the AI "sound different." The point is to make it respond inside a clear and adapted framework.
When a tool interacts with children, safety cannot depend on a single model inference.
That is why Nala includes several protection layers:
This reduces improvisation, limits ambiguity, and prevents everything from depending on one probabilistic answer.
Another important point is what Nala does not do.
Its internal tools do not execute external actions. They do not send messages, buy anything, trigger calendars, or connect to third-party services.
They operate in a controlled environment focused on context, memory, and local activities.
That greatly simplifies the risk surface and makes the system easier to reason about, audit, and constrain.
For a conversational experience to feel continuous, some memory is necessary.
But in Nala that memory is not designed to accumulate sensitive information or build an opaque history that is impossible to review.
The idea is to keep just enough summarized context to preserve continuity between turns without turning the system into a repository of delicate data.
The technical side here is not a secondary detail.
In a children's product, architecture, safety, and user experience are tightly connected. If the technical foundation is weak, the experience stops being predictable. And if it stops being predictable, it also stops being appropriate for many children and many families.
That is why Nala is not trying to answer everything. It is trying to answer well inside a clear framework.
Nala is built as a guided conversational AI with explicit layers of intent, context, personalization, and safety.
It is not trying to appear more open. It is trying to be more useful, more governable, and calmer to use.
In a children's environment, that technical difference is not minor. It is exactly what makes the product meaningful.