Nice, I wrote something very similar using local models. Instead of 15 questions, I opted for a dynamic interview loop.