Split out AI module