ChatGLM-Math is a math problem-solving model custom-designed based on a self-critical process, aimed at improving the mathematical problem-solving capabilities of large language models (LLMs). The model provides feedback signals by training a general Math-Critique model and enhances the mathematical problem-solving ability of LLMs by adopting rejection sampling refinement and direct preference optimization. It has been experimentally tested on both academic datasets and newly created challenging datasets MathUserEval, demonstrating a significant improvement in mathematical problem-solving capabilities while maintaining linguistic ability.