Dear Lucas,
(I'm not a CP2K developer, but I have worked quite a bit with ASE.)
Your code snippet looks fine, except that this will simply relax the ionic positions.
If you also want to optimize the cell vectors, you will need to look at e.g. the StrainFilter
or UnitCellFilter in ase.constraints. An "fmax" value of 0.01 eV/Angstrom should
generally give well-converged minima. Fmax=0.05 eV/Angstrom is also sufficiently
accurate in many cases (but please check it yourself to be sure).
But the fact that the forces do not readily decrease in this calculation suggests
that something may be wrong with your CP2K input. But without a minimal working
example (including all input and output files you get when running the example),
it is impossible to diagnose that further.
Best,
Maxime