We are building the local AI suite at a customer for the first time. Name, industry and size stay out of this while the project runs and the clearance for a reference is still pending. The decisions are worth describing anyway, because they carry over.
First came the list of data sources, ahead of any question about models. The CRM holds contact history, quotes and notes going back years, plus the files attached to each case. As soon as an assistant reaches into that, it processes personal data about customers and about staff. That is the core of what it does, not a side effect you configure away.
So the decision went to own hardware. The models run on GPUs in the building, the search index sits in a Qdrant instance on the company network, and no record leaves the premises to produce an answer. Processors, third countries and training are off the table before anyone raises them. A different question takes their place: who is allowed to see what.
Where it got uncomfortable is the email module. Draft replies come out of it, and the writing style behind them is learned from the sent mail of the same person, which means it processes staff data that has nothing to do with customer communication. In the plan the module sits behind the base and the chatbot, so that employee representatives can form a view against a running system and not against a slide.
What stays open is everything technology does not decide: access rights per role, retention periods for drafts and logs, and the list of cases an assistant should never see at all. Those points live in the design document, not in the code.