Isso não é possível sem algumas alterações sérias no código para sudo e sshd. O Sudo não conhece os métodos de login e o ssh não publica em outros programas nada que indique se chave pública, senha ou algum outro mecanismo foi usado para o login.
Como alguém disse, você pode usar a opção NOPASSWD em sudoers - isso se aplica a usuários especificados sempre, porém, não apenas quando eles usam ssh com chaves privadas.
Se você realmente quiser, pode haver truques que você pode fazer com um programa suid que verifica o log sshd e bloqueia / edita o arquivo sudoers para permitir que o usuário faça um sudo sem senha e uma tarefa periódica para revogar essa permissão.
Tudo isso dito, acho que é uma má ideia. Exigir uma senha para comandos privilegiados tem alguns benefícios interessantes que a chave privada SSH não possui. Notavelmente, permite que você tenha tempos limite para a autenticação (a senha deve ser reinserida, não verdadeira para as sessões ssh), permite que você tenha mínimos e rotação de senha (ao contrário das chaves ssh, que possuem uma senha fora do controle do servidor).