සම්මත ක්රමලේඛන භාෂාවලට ඔබේ අවශ්යතා සපුරාලීමට නොහැකි බව තවමත් සොයාගෙන ඇති නමුත් ඉක්මන් හා වඩා කාර්යක්ෂම යෙදුම් තැනීමට ඔබ කවදා හෝ කැමති වී තිබේද?
Mojo Language ක්රියාත්මක වන්නේ එවිටය.
Mojo යනු විසින් සංවර්ධනය කරන ලද නව ක්රමලේඛන භාෂාවකි මොඩියුලය, AI යටිතල පහසුකම් පිළිබඳ විශේෂඥ සමාගමකි.
එය විශේෂයෙන් නිර්මාණය කර ඇත්තේ AI සංවර්ධනය ඇතුළුව භාවිත අවස්ථා කිහිපයක් සඳහා සංවර්ධකයින්ට ඉක්මන් සහ වඩාත් ශක්තිමත් යෙදුම් තැනීමට හැකි වන පරිදිය. මෙම ලිපියෙන් අපි බලමු මොකක්ද කියලා මොජෝ යනු, එය ක්රියා කරන ආකාරය සහ ඔබ එය ඔබගේ මීළඟ ව්යාපෘතිය සඳහා භාවිතා කළ යුත්තේ ඇයිද යන්නයි.
Mojo හි මූලාරම්භය
Mojo හි නිර්මාතෘවරුන් C හි වේගය සහ කාර්යක්ෂමතාවය සමඟ Python භාවිතා කිරීමේ හැකියාව ඒකාබද්ධ කරන ක්රමලේඛන භාෂාවක අවශ්යතාවය හඳුනාගෙන ඇත.
තවද, ඔවුන් විසින් සම්මත දෘඪාංග විස්තර භාෂා ඉගෙන නොගෙන උසස් ක්රියාකාරී යෙදුම් තැනීමට සංවර්ධකයින්ට ඉඩ සලසන භාෂාවක් ස්ථාපිත කරන ලදී.
එහි ප්රතිඵලයක් වශයෙන්, ඔවුන් විසින් Mojo නිර්මාණය කරන ලදී, එය C-මට්ටමේ වේගය සපයන අතරම Python පරිසර පද්ධතිය සමඟ සම්පුර්ණයෙන්ම අනුකූල විය යුතුය.
Modular: Mojo Language පිටුපස සංවිධානය
ඉතින්, මෙම අනාගතවාදී භාෂාවේ නිර්මාතෘ කවුද?
මොඩියුලර් යනු ක්රිස් ලැට්නර් සහ ටිම් ඩේවිස් විසින් නිර්මාණය කරන ලද ලොව ප්රමුඛ පෙළේ AI යටිතල පහසුකම් ආරම්භයකි, ඔවුන් Google හිදී හමු වූ අතර ඉතා සංකීර්ණ සහ ඛණ්ඩනය වූ යටිතල ව්යුහය AI හි ගෝලීය බලපෑම සීමා කරන බව වටහා ගත්හ.
Modular හි අරමුණ සහ පරමාර්ථය වන්නේ මනුෂ්යත්වය වැඩි දියුණු කිරීම සඳහා AI යටිතල පහසුකම් නැවත සිතා බැලීමයි. ඔවුන්ගේ සංස්කෘතිය සහ මූලධර්ම සේවාලාභීන්, උසස් තත්ත්වයේ නිෂ්පාදන මෘදුකාංග සහ අර්ථවත් ප්රතිඵල ලබා දීම සඳහා වාරිකයක් තබයි.
Mojo හි ඉලක්ක
Mojo නිර්මාණය කර ඇත්තේ යන්ත්ර ඉගෙනුම් ත්වරණකාරක සඳහා අද්විතීය ක්රමලේඛන ආකෘතියක් සැපයීම සඳහා ය.
වර්තමාන CPU වල ටෙන්සර් සහ අනෙකුත් AI ත්වරණකාරක ඇති බැවින් Mojo පොදු කාර්ය වැඩසටහන්කරණයට ඉඩ දිය යුතු බව Modular තීරණය කළේය. තවද, Python යන්ත්ර ඉගෙනුම් සහ අනෙකුත් ක්ෂේත්රවල බහුලව භාවිතා වන බැවින්, Modular විසින් Python පරිසර පද්ධතියට සම්බන්ධ වීමට තෝරා ගන්නා ලදී.
Python භාවිතය භාෂාවේ සැලසුම තවදුරටත් පහසු කළේය. වාක්ය ඛණ්ඩයේ බහුතරය දැනටමත් නිර්ණය කර ඇති නිසා, ඒ වෙනුවට සංස්ථාවට සම්පාදනය කිරීමේ යාන්ත්රණය ගොඩනැගීම සහ විශේෂිත ක්රමලේඛන හැකියාවන් සැපයීම කෙරෙහි අවධානය යොමු කළ හැකිය.
සලකා බැලිය යුතු වැදගත් අංග
වැඩසටහන්ගත කිරීමේ හැකියාව
ප්රගතිශීලී වර්ග
Mojo Language හි ප්රගතිශීලී වර්ග විශේෂාංගය සංවර්ධකයින්ට වර්ග විවරණ භාවිතා කිරීමට හැකියාව ලබා දෙයි කාර්යක්ෂමතාව වැඩි දියුණු කිරීම සහ දෝෂ පරීක්ෂාවන්.
සංවර්ධකයින් විසින් වඩාත් සවිස්තරාත්මක ආකාරයේ තොරතුරු සැපයීම මගින් සම්පාදනය කරන අවස්ථාවේදී වැරදි හඳුනාගැනීම, දෝෂ ඉවත් කිරීම සහ කාර්යක්ෂමතාව වැඩි කිරීම සඳහා වඩාත් ඵලදායී කේතයක් නිර්මාණය කළ හැක.
ශුන්ය පිරිවැය වියුක්ත කිරීම්
Mojo Language විසින් සපයන ලද ශුන්ය-පිරිවැය වියුක්ත කිරීම්වලට ස්තූතිවන්ත වන පරිදි ව්යුහයන් තුළට පේළිගත දත්ත වෙන් කිරීමෙන් සංවර්ධකයින්ට ගබඩාව පාලනය කළ හැකිය.
අමතර මතක වෙන් කිරීම් සඳහා අවශ්යතාවය ඉවත් කිරීමෙන්, මෙම විශේෂාංගය කේත කාර්යක්ෂමතාව වැඩි දියුණු කරන අතර බොයිලේරු කේත ප්රමාණය අඩු කරයි.
Integrated Language Auto-Tuning
Mojo Language හි භාෂා-ඒකාබද්ධ ස්වයංක්රීය සුසර කිරීමේ ක්රියාකාරිත්වය මඟින් ඉලක්ක දෘඪාංගයෙන් ප්රතිලාභ ලබා ගැනීම සඳහා පරාමිතිවල පරමාදර්ශී අගයන් ස්වයංක්රීයව තීරණය කිරීමට සංවර්ධකයින්ට හැකියාව ලැබේ.
මෙම ක්රියාකාරීත්වය සමඟින්, සෑම දෘඪාංග සංයෝජනයක් සඳහාම එය අතින් සකස් කිරීමකින් තොරව කේතය ප්රශස්ත කිරීම සරල ය.
Mojo Language යනු AI සංවර්ධනය සඳහා නම්යශීලී සහ ඵලදායි මෙවලමක් වන අතර එය MLIR (බහු මට්ටමේ අතරමැදි නියෝජනය), සමාන්තර විෂම ධාවන කාලය සහ ඉක්මන් ගොඩනැගීමේ වේලාවන්හි සම්පූර්ණ බලය ද සපයයි.
සමාන්තරකරණය
Mojo විසින් MLIR භාවිතා කරයි, එය ක්රමලේඛකයින්ට සමාන්තරකරණය සඳහා AI සඳහා දෛශික, නූල් සහ දෘඪාංග ඒකක භාවිතා කිරීමට ඉඩ සලසයි. Mojo විසින් Python හි තනි නූල් ක්රියාත්මක කිරීමට ප්රතිවිරුද්ධව මධ්ය කිහිපයක් හරහා සමාන්තර සැකසුම් සඳහා සහය දක්වයි.
පයිතන්ට වඩා 35,000x වේගයක් සමඟ, Mojo වේගය අනුව අනෙකුත් භාෂා අභිබවා යයි.
අන්තර්ක්රියාකාරී හැකියාව
සමස්ත Python පරිසර පද්ධතිය සමඟ අන්තර් ක්රියාකාරීත්වය Mojo හි සුවිශේෂී වාසියකි. මෙයින් ඇඟවෙන්නේ ඔබට Numpy සහ Matplotlib වැනි ඕනෑම අත්තනෝමතික පුස්තකාලයක් මෙන්ම ඔබේ අභිමත කේතය සමඟ Mojo ඒකාබද්ධ කළ හැකි බවයි.
උදාහරණයක් ලෙස, ඔබට Python පුස්තකාලය Matplotlib භාවිතයෙන් ඔබේ Mojo කේතයේ දත්ත දෘශ්යමාන කළ හැක.
ව්යාප්තිය
Mojo ද තරමක් නම්යශීලී වන අතර, පරිශීලකයින්ට ආකෘති වලට පෙර සහ පසු සැකසුම් පියවර සරලව එක් කිරීමට හෝ පවතින පියවර නව ඒවා සඳහා මාරු කිරීමට ඉඩ සලසයි.
ඔවුන්ගේ ආකෘතීන් සහ මොඩියුලර් තොගය වැඩිදියුණු කිරීම සඳහා, සංවර්ධකයින්ට කර්නල් විලයන, ප්රස්ථාර නැවත ලිවීම්, හැඩ කාර්යයන් සහ වෙනත් ශිල්පීය ක්රම භාවිතා කළ හැක.
ඔබ එය පයිතන්ට වඩා තෝරා ගන්නේ ඇයි?
Python ජනප්රිය AI සංවර්ධන භාෂාවක් වන්නේ එහි නම්යශීලී බව සහ ඉහළ ක්රියාකාරීත්වයකින් යුත් සම්පාදනය කරන ලද පුස්තකාල නිසාය. කෙසේ වෙතත්, එය C++ වැනි භාෂාවලට වඩා සැලකිය යුතු ලෙස මන්දගාමී වේ.
එබැවින්, ක්රමලේඛකයින් කාර්ය සාධන-විවේචනාත්මක ප්රදේශ සඳහා Python භාවිතා නොකිරීමට වේගවත් භාෂා වටා Python wrappers භාවිතා කිරීමට ඉගෙන ගනී.
මෙය භාෂා දෙකේ ගැටලුවට මග පාදයි, එහි ආකෘති Python වෙතින් ONNX හෝ ටෝච් ස්ක්රිප්ට් වැනි වේගවත් ක්රියාත්මක කිරීමක් බවට පරිවර්තනය කළ යුතු අතර, එය Python හි සියලු හැකියාවන්ට සහාය නොදක්වයි. Python හට කාර්ය සාධන ගැටළු සහ හොඳ සමාන්තර සැකසුම් නොමැතිකම ද ඇත.
භාෂා දෙකේ උභතෝකෝටිකය හේතුවෙන් පළපුරුදු ක්රමලේඛකයින්ට පවා අධ්යයනය කිරීම, දෝෂහරණය කිරීම සහ කාර්ය සාධන ගැටළු විසඳීම අපහසු වේ.
භාෂාව ව්යුහගත වී ඇති ආකාරය නිසා පයිතන්ට කළ හැකි දේ සම්බන්ධයෙන් මූලික සීමාවන් ද ඇත. මූලික සංරචක භාවිතා කරන ඇල්ගොරිතම සැබෑ ලෝකයේ ක්රියාත්මක කිරීම පහසු බව පෙනෙන්නට තිබුණද, එය සැලකිය යුතු ලෙස වඩා දුෂ්කර වන අතර වේගවත් භාෂාවක් භාවිතා කිරීම අවශ්ය වේ.
ආරම්භ කරන්නේ කෙසේද?
ආරම්භ කිරීමට ඔබට දැන් ඔවුන්ගේ ක්රීඩා පිටියේ Mojo Language භාවිතා කිරීම ආරම්භ කළ හැක. JupyterHub-පදනම් වූ ක්රීඩා පිටිය Mojo තවමත් ක්රියාත්මක වෙමින් පවතින නමුත්, ඔබේම Mojo කේතයක් නිර්මාණය කිරීමට පාඩම් සහ අවස්ථාව ලබා දෙයි.
ක්රීඩා පිටියට පිවිසීමට ඔබට ඔවුන්ගේ වෙබ් අඩවියේ ප්රවේශය සඳහා ලියාපදිංචි විය හැක.
එහි කාර්ය සාධන ඉලක්ක කරා ළඟා වීමට, Mojo ඒකාබද්ධ හැඹිලි, බහු නූල් සහ වලාකුළු බෙදාහැරීමේ තාක්ෂණයන් සමඟින් ඊළඟ පරම්පරාවේ සම්පාදක තාක්ෂණයන් භාවිතා කරයි.
එය පද්ධති ක්රමලේඛනයට අමතර ප්රාථමිකයන් එකතු කරන අතර කාලයත් සමඟ පයිතන් සුපිරි කට්ටලයක් වීමට අපේක්ෂා කරයි. Mojo සමඟ කේතනය කිරීම ආරම්භ කිරීමට, Mojo compiler එක භාවිතා කර පර්යන්තයෙන් Mojo වැඩසටහනක් Python කරන ආකාරයටම ධාවනය කරන්න.
භාෂාව දැනට සංවර්ධනය වෙමින් පවතින අතර පද්ධති ක්රමලේඛනය පිළිබඳ අත්දැකීම් ඇති සංවර්ධකයින් ඉලක්ක කර ඇත.
අවසන් කරන්න
Mojo පයිතන් සුපිරි කට්ටලයක් ලෙස සැලකේ. තවද, C++ සහ Rust හි ක්රියාකාරිත්වය සමඟ Python හි සරල බව ඒකාබද්ධ කිරීමෙන් වැඩසටහන්කරණයේ විප්ලවීය වෙනසක් කිරීමට එයට හැකියාව ඇත.
එය සම්පූර්ණයෙන් ප්රයෝජන ගත හැකිය පයිතන් පුස්තකාලය පරිසර පද්ධතිය, සංවර්ධකයින්ට C, C++, Rust, හෝ CUDA අවශ්යතාවයකින් තොරව ඉහළ කාර්යසාධනයක් සහිත පුස්තකාල නිර්මාණය කිරීමට ඉඩ සලසයි.
එහි ස්වයංක්රීය සුසර කිරීම සහ සම්පාදක-කාල මෙටා-ක්රමලේඛන විශේෂාංග වලට ස්තුති වන්නට එය අතේ ගෙන යා හැකි කේත නිෂ්පාදනය සක්රීය කරයි.
එය තවමත් ක්රියාත්මක වෙමින් පවතින කාර්යයක් වුවද, එය බලවත් ක්රමලේඛන මෙවලමක් බවට පත් කිරීමට සහ ක්රමලේඛන කර්මාන්තය පරිවර්තනය කිරීමට හැකියාව ඇත. එබැවින්, අපි Modular වෙතින් අනාගත වර්ධනයන් සඳහා රැඳී සිටිය යුතුය!
ක්රිස් සැන්ටොස්
මුලික හා අතරමැදි දැනුමක් ඇති අයෙකුට මෙම නව භාෂාවෙන් තම අධ්යයන කටයුතු ආරම්භ කිරීමට හැකි වේ යැයි ඔබ සිතනවාද? එසේත් නැතිනම් ජාවාස්ක්රිප්ට් හෝ පයිතන් වැනි වඩාත් මූලික භාෂාවක් ඉගෙන ගැනීමට ඔබ උපදෙස් දෙනවාද?
ඉල්කේ කැන්ඩන් බෙන්ගි
හෙලෝ ක්රිස්, ප්රමාද වූ ප්රතිචාරයට සමාවෙන්න! Mojo සමඟ ආරම්භ කිරීමට පෙර Python පිළිබඳ මූලික අවබෝධයක්/අත්දැකීමක් තිබීම ප්රයෝජනවත් වනු ඇතැයි මම විශ්වාස කරමි.