Neymar was rested ahead of the midweek Champions League trip to Liverpool while Kylian Mbappe was serving the first game of a three-match ban after his red card against Nimes.
Saint-Etienne wasted a host of early chances in the meeting at the Parc des Princes and Julian Draxler's terrific header earned the Ligue 1 champion a 22nd-minute advantage.
Cavani converted a second-half penalty he won himself with Di Maria adding gloss to the scoreline with a thumping strike before teenager Diaby opened his Ligue 1 account in the 84th minute.
Thomas Tuchel has now won his first six competitive games in charge of PSG, breaking Carlo Ancelotti's club record.
Lois Diony missed a brilliant 13th-minute chance when picked out by Yannis Salibur's low right-wing cross, Loic Perrin then sending a free header wide from Wahbi Khazri's corner.
But after Yann M'Vila slotted a shot just wide, PSG took the lead against the run of play.
Adrien Rabiot battled to win the ball in the centre circle and Marco Verratti's lofted pass into the box was nodded into the air by Draxler, who improvised to head a fine finish over Stephane Ruffier.
PSG doubled the lead just six minutes after the restart, Cavani scoring from the penalty spot for his 12th career goal against Saint-Etienne.
A clumsy challenge from Saint-Etienne captain Perrin brought the striker down, with Cavani sending Ruffier the wrong way from 12 yards.
The offside flag ruled out Timothee Kolodziejczak's own goal but PSG added a 76th-minute third when Di Maria lashed in from close range, substitute Diaby then making the most of Cavani's mishit to wrap up the scoring.