Endurance rides too hard, so manually change and it affects prediction a lot

Common for AI systems to use approximate nearest neighbors when doing rag lookups in a vector db. It’s how I would implement workout lookups if I were building something similar.

Complicated math reasons, but bottom line is it gets results that are quite close to the best available, but not necessarily the best fit.

Also could be the order the AI selected workouts. If it goes day by day and picks what increases the most, that isn’t necessarily the same as filling a whole plan out, then changing a ride mid plan. Especially so if the rider didn’t adhere to the plan, or if RPE drifted from estimates.

Can you show us the before and after?