Faits : A. A._, ressortissant russe né en 1987, est atteint d'une diplégie spastique congénitale. Il est entré en Suisse le 24 septembre 2008, puis s'est vu délivrer par le Secrétariat d'État aux migrations une admission provisoire. Il a séjourné dans un établissement psychiatrique (du 14 au 22 septembre 2010 et du 6 au 15 mars 2013) et a subi une résection de l'exostose au niveau du fémur distal interne droit le 11 janvier 2011. Le 19 décembre 2014, il a déposé une demande de prestations de l'assurance-invalidité. L'Office de l'assurance-invalidité pour le canton de Vaud (ci-après: l'office AI) a recueilli l'avis des médecins traitants, dont celui de la doctoresse B._, spécialiste en médecine interne générale et médecin traitant (notamment du 26 septembre 2017), puis soumis l'assuré à une expertise pluridisciplinaire au Centre d'expertise médicale de Nyon (CEMed). Dans leur rapport daté du 21 juin 2018, les docteurs C._, spécialiste en médecine interne générale, D._, spécialiste en psychiatrie et psychothérapie, et E._, spécialiste en neurologie, ont diagnostiqué - avec répercussion sur la capacité de travail - une diplégie spastique congénitale. Les médecins ont indiqué que l'assuré pouvait travailler à 65 % dans une activité de type employé de commerce ou toute autre activité adaptée aux limitations fonctionnelles décrites depuis toujours, sans diminution de rendement. Par décision du 29 avril 2019, l'office AI a nié le droit de l'assuré à des prestations de l'invalidité. B. L'assuré a déféré cette décision au Tribunal cantonal du canton de Vaud, Cour des assurances sociales, et produit notamment l'avis des docteurs F._, spécialiste en psychiatrie et psychothérapie (du 17 avril 2019), et B._ (des 10 et 27 mai 2019). Statuant le 9 septembre 2020, le Tribunal cantonal a rejeté le recours formé par l'assuré et confirmé la décision du 29 avril 2019. C. A._ forme un recours contre cet arrêt et conclut en substance au renvoi de la cause à l'autorité précédente pour instruction complémentaire au sens des considérants.