{% assign lang_repos = site.github.public_repositories|jsonify %}
Beware that the documentation pages for most Experimental repos have little or no content, and that documentation for other languages probably is out-of-date. Writing documentation for each language repository is an ongoing effort, and part of the development process.
The languages are grouped in three different ways, according to maturity, geography and language family. Private repositories are not listed.
The maturity levels are production, beta, alpha and experimental. Some of the beta language models are used in practical applications.
Being in the Production group does not necessarily mean a language model is in production for all purposes, it could be for one only. See the documentation for each language for further details. The columns in the tables under the Production heading are explained here:
<script src="/assets/js/langtable.js"></script> <script> const domProdLangs = document.querySelector('#prod_languges'); domProdLangs.appendChild(addRepoTable({{lang_repos}}, 'lang-', ['maturity-prod'])) </script> <script> const domBetaLangs = document.querySelector('#beta_languges'); domBetaLangs.appendChild(addRepoTable({{lang_repos}}, 'lang-', ['maturity-beta'])) </script> <script> const domAlphaLangs = document.querySelector('#alpha_languges'); domAlphaLangs.appendChild(addRepoTable({{lang_repos}}, 'lang-', ['maturity-alpha'])) </script> <script> const domExperLangs = document.querySelector('#exper_languges'); domExperLangs.appendChild(addRepoTable({{lang_repos}}, 'lang-', ['maturity-exper'])) </script> <script> const domUndefLangs = document.querySelector('#undef_languges'); domUndefLangs.appendChild(addNegUnorderedList({{lang_repos}}, 'lang-', ['maturity-exper', 'maturity-beta', 'maturity-alpha', 'maturity-prod'])) </script> <script> const domNordLangs = document.querySelector('#geo_nordic'); domNordLangs.appendChild(addUnorderedList({{lang_repos}}, 'lang-', ['geo-nordic'])) </script> <script> const domEuroLangs = document.querySelector('#geo_europe'); domEuroLangs.appendChild(addUnorderedList({{lang_repos}}, 'lang-', ['geo-europe'])) </script> <script> const domRussLangs = document.querySelector('#geo_russia'); domRussLangs.appendChild(addUnorderedList({{lang_repos}}, 'lang-', ['geo-russia'])) </script> <script> const domNorALangs = document.querySelector('#geo_northamerica'); domNorALangs.appendChild(addUnorderedList({{lang_repos}}, 'lang-', ['geo-northamerica'])) </script> <script> const domAfricaLangs = document.querySelector('#geo_africa'); domAfricaLangs.appendChild(addUnorderedList({{lang_repos}}, 'lang-', ['geo-africa'])) </script> <script> const domOthrLangs = document.querySelector('#geo_other'); domOthrLangs.appendChild(addNegUnorderedList({{lang_repos}}, 'lang-', ['geo-nordic', 'geo-europe', 'geo-russia', 'geo-northamerica', 'geo-africa'])) </script> <script> const domUndefLangs = document.querySelector('#geo_undef'); domUndefLangs.appendChild(addNegUnorderedList({{lang_repos}}, 'lang-', ['geo-])) </script> <script> const domAfroAsiaticLangs = document.querySelector('#fam_afroasiatic'); domAfroAsiaticLangs.appendChild(addUnorderedList({{lang_repos}}, 'lang-', ['langfam-afro-asiatic'])) </script> <script> const domAlgicLangs = document.querySelector('#fam_algic'); domAlgicLangs.appendChild(addUnorderedList({{lang_repos}}, 'lang-', ['langfam-algic'])) </script> <script> const domArtificialLangs = document.querySelector('#fam_artific'); domArtificialLangs.appendChild(addUnorderedList({{lang_repos}}, 'lang-', ['langfam-artificial'])) </script> <script> const domAustorLangs = document.querySelector('#fam_austro'); domAustorLangs.appendChild(addUnorderedList({{lang_repos}}, 'lang-', ['langfam-austronesian'])) </script> <script> const domEskAleutLangs = document.querySelector('#fam_eskimo_aleut'); domEskAleutLangs.appendChild(addUnorderedList({{lang_repos}}, 'lang-', ['langfam-eskimo-aleut'])) </script> <script> const domIndEurLangs = document.querySelector('#fam_indoeuropean'); domIndEurLangs.appendChild(addUnorderedList({{lang_repos}}, 'lang-', ['langfam-indoeuropean'])) </script> <script> const domIsolateLangs = document.querySelector('#fam_isolates'); domIsolateLangs.appendChild(addUnorderedList({{lang_repos}}, 'lang-', ['langfam-isolate'])) </script> <script> const domMongolicLangs = document.querySelector('#fam_mongolic'); domMongolicLangs.appendChild(addUnorderedList({{lang_repos}}, 'lang-', ['langfam-mongolic'])) </script> <script> const domNigerCongoLangs = document.querySelector('#fam_nigercongo'); domNigerCongoLangs.appendChild(addUnorderedList({{lang_repos}}, 'lang-', ['langfam-niger-congo'])) </script> <script> const domTurkicLangs = document.querySelector('#fam_turkic'); domTurkicLangs.appendChild(addUnorderedList({{lang_repos}}, 'lang-', ['langfam-turkic'])) </script> <script> const domUralicLangs = document.querySelector('#fam_uralic'); domUralicLangs.appendChild(addUnorderedList({{lang_repos}}, 'lang-', ['langfam-uralic'])) </script> <script> const domOthrFamLangs = document.querySelector('#fam_other'); domOthrFamLangs.appendChild(addNegUnorderedList({{lang_repos}}, 'lang-', ['langfam-afro-asiatic', 'langfam-algic', 'langfam-artificial', 'langfam-austronesian', 'langfam-eskimo-aleut', 'langfam-indoeuropean', 'langfam-isolate', 'langfam-mongolic', 'langfam-niger-congo', 'langfam-turkic', 'langfam-uralic'])) </script> <script> const domUndefFamLangs = document.querySelector('#fam_undef'); domUndefFamLangs.appendChild(addNegUnorderedList({{lang_repos}}, 'lang-', ['langfam-'])) </script>