Not OP but generating puzzles isn’t hard if you have a database of games and I’ve done it myself.
For each game just fast forward to the end and ask for Stockfish to provide the solution. If it’s guaranteed “mate in X” then you’ve got yourself a puzzle. You can have a classifier that grabs other puzzle types too (“win the queen in X” for example)