Keller (12-9) struck out seven and walked one. The 27-year-old right-hander improved to 3-1 with a 3.07 ERA in his last seven starts.
“Just filling it up and using the cutter to lefties was huge. Using the sinker and the four-seam to righties set up the sweeper,” Keller said. “We’re able to mix things and keep a good attack plan. Mixed in the curveball again today, used some changeup there too, which was really good to see. (Catcher Jason Delay) did a great job picking spots to call them. They were really successful pitches.”
David Bednar pitched a 1-2-3 ninth for his 35th save. Keller was pulled after 92 pitches, 65 for strikes.
“When he went out in the eighth, the first two pitches he threw were like 91-92 (mph), so that was like, ‘Eh,’ with David there available,” Pirates manager Derek Shelton said. “I mean, if he comes out and he’s (throwing) 95 there, then we’re having a different conversation.”
Pittsburgh won the final three games of the four-game set against last-place Washington. The Pirates have won 11 of 16 overall.
The Nationals wasted a solid performance by Josiah Gray (7-12), who struck out 10 in 6 1/3 innings. The right-hander was charged with two runs and five hits.
"Early strikes, first-pitch strikes, finish them off with my whole array of pitches," Gray said. “Just getting ahead early worked a lot today, just believing in my stuff. Using the whole part of the plate. It was a good day.”
It was Gray's first big league appearance since Sept. 3 against Miami, when he allowed three runs and walked four in four innings.
“For me, it was just, how can I, not sort of simplify things, but try and bring out some properties in my delivery that I know where I feel stable, where I feel comfortable,” Gray said. “I felt good with it, felt I could roll with it. The early returns are good, but just like every day, have to come to the ballpark tomorrow and get back to work. Just continue to build off it.”
Pittsburgh jumped in front when Jack Suwinski led off the second with his team-high 25th homer on a drive to right. Alfonso Rivas connected with two out in the fifth, hitting a 411-foot shot to center for his third homer.
“I thought Gray was pretty good today. The slider was pretty effective,” Shelton said. "We had two solid homers, but I think in terms of Jack, he’s back to releasing the barrel the way he was earlier in the year.”
Washington put two runners on in the first when CJ Abrams hit a leadoff single and Lane Thomas reached on an error by shortstop Liover Peguero. But Keller retired Keibert Ruiz on a fly ball to left, picked off Abrams at second and struck out Joey Meneses.
“The at-bats today were not good. They weren't crisp,” Nationals manager Dave Martinez said. “We chased a lot out of the zone. We have to do a better job, especially against a guy like (Keller). He's also good. We have to get him in the zone. Today, we just chased a lot.”
Nationals: RHP Thaddeus Ward was reinstated from the 15-day injured list. He had a 7.12 ERA in 22 relief appearances this season before being placed on the IL with right shoulder inflammation on July 3. LHP Joe La Sorsa was optioned to Triple-A Rochester.
Nationals: RHP Jake Irvin (3-5, 4.20 ERA) will start Friday in the opener of a three-game set in Milwaukee.
AP MLB: https://apnews.com/hub/mlb