MLB: Boston Red Sox at Toronto Blue Jays

Toronto's Cavan Biggio, left, is greeted by Vladimir Guerrero Jr. after hitting a solo home run against the Boston Red Sox on Tuesday night. Both players helped the New Hampshire Fisher Cats to the Eastern League title last season.

Ken Giles retired Rafael Devers with two on in the ninth inning to seal the Blue Jays' 4-3 victory over the visiting Boston Red Sox on Tuesday, snapping Toronto's season-high, seven-game losing streak.

Giles converted his 19th save in 20 chances, but it was hardly easy. He needed to 29 pitches to cap a night in which Toronto six relievers combined for 4 2/3 scoreless innings.

The Blue Jays retired 11 consecutive batters until pinch hitter Brock Holt collected a one-out single off Giles. Pinch runner Gorkys Hernandez stole second, and Mookie Betts drew a two-out walk.

Giles fell behind in the count 2-0 to Devers before getting back-to-back strikes. After a foul ball on the fifth pitch, Devers flied out to center field.

The Blue Jays (56-89) scored all of their runs on homers by former New Hampshire Fisher Cats Cavan Biggio, Reese McGuire and Rowdy Tellez.

Tellez gave Toronto a 4-3 lead in the fifth when he connected for a two-run shot. It was his 18th homer of the year and fourth since returning from Triple-A on Aug. 3. The burly first baseman slugged a 1-1 fastball over the right field fence off Josh Taylor (1-2).

The Red Sox (76-69) lost their fourth straight and fell to 3-7 in their past 10 games.

Betts homered on the game's first pitch and reached for the 24th straight game by hitting his 20th career leadoff homer. J.D. Martinez hit a game-tying double in the fifth, and Andrew Benintendi's RBI single gave the Red Sox a short-lived 3-2 lead later in that frame.

Toronto rookie T.J. Zeuch, another former Fisher Cat, threw 81 pitches in his first career start and allowed three runs on six hits in 4 1/3 innings. He struck out one, walked three and became the 20th different starting pitcher used by Toronto this season.

Justin Shafer (2-1) recorded the final out of the fifth and pitched a hitless sixth.

Boston's Nathan Eovaldi allowed three runs on six hits in 4 1/3 innings. He struck out six and walked two in a 93-pitch outing.