AI software architecture