Modular Π½Π°ΠΊΠΎΠ½Π΅Ρ Π²ΡΠΏΠΎΠ»Π½ΠΈΠ»Π° ΠΎΠ±Π΅ΡΠ°Π½ΠΈΠ΅ ΡΡΡΡ Π»Π΅ΡΠ½Π΅ΠΉ Π΄Π°Π²Π½ΠΎΡΡΠΈ β ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ ΠΈ ΡΡΠ»ΡΠ΅ΠΉΠ½ ΡΠ·ΡΠΊΠ° Mojo Π²ΡΡΠ»ΠΈ ΠΏΠΎΠ΄ Π»ΠΈΡΠ΅Π½Π·ΠΈΠ΅ΠΉ Apache 2.0. ΠΠ±Π΅ΡΠ°Π½ΠΈΠ΅ Π²ΠΈΡΠ΅Π»ΠΎ Π² Π²ΠΎΠ·Π΄ΡΡ Π΅ Ρ ΠΌΠ°Ρ 2023 Π³ΠΎΠ΄Π°, Π° Π½Π° ΠΏΡΠΎΡΠ»ΠΎΠΉ Π½Π΅Π΄Π΅Π»Π΅ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ Π²ΡΠΏΡΡΡΠΈΠ»Π° Π²Π΅ΡΡΠΈΡ 1.0 ΠΈ ΡΠ»Π΅Π΄ΠΎΠΌ ΠΎΡΠΊΡΡΠ»Π° ΠΊΠΎΠ΄. ΠΡΠ»ΠΈ Π²Ρ ΠΏΠΈΡΠ°Π»ΠΈ GPU-ΠΊΠΎΠ΄ Π½Π° CUDA ΠΈ ΡΡΡΠ°Π»ΠΈ ΠΎΡ boilerplate, ΠΈΠ»ΠΈ ΡΠ»Π΅Π΄ΠΈΠ»ΠΈ Π·Π° Mojo ΠΈΠ·Π΄Π°Π»Π΅ΠΊΠ°, ΠΆΠ΄Π°Π»ΠΈ ΠΈΠΌΠ΅Π½Π½ΠΎ ΡΡΠΎΠ³ΠΎ ΠΌΠΎΠΌΠ΅Π½ΡΠ° β ΡΠ°ΠΌΠΎΠ΅ Π²ΡΠ΅ΠΌΡ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ, ΡΡΠΎ ΡΠ΅Π°Π»ΡΠ½ΠΎ ΠΏΠΎΠΌΠ΅Π½ΡΠ»ΠΎΡΡ.
ΠΠΎΡΠ΅ΠΌΡ ΡΡΠΎ Π²ΠΎΠΎΠ±ΡΠ΅ Π·Π°ΠΌΠ΅ΡΠ½Π°Ρ Π½ΠΎΠ²ΠΎΡΡΡ
Mojo Ρ ΡΠ°ΠΌΠΎΠ³ΠΎ ΡΡΠ°ΡΡΠ° ΠΏΠΎΠ·ΠΈΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π»ΡΡ ΠΊΠ°ΠΊ ΡΠ·ΡΠΊ, ΠΊΠΎΡΠΎΡΡΠΉ Π±Π΅ΡΡΡ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ Python ΠΈ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ Π΅ΠΌΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΡΡΠΎΠ²Π½Ρ C++. ΠΠ΄Π΅Ρ Π±ΡΠ»Π° Π°ΠΌΠ±ΠΈΡΠΈΠΎΠ·Π½ΠΎΠΉ: ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΠΠ-ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ ΠΏΠΈΡΡΡ ΠΏΡΠΈΠ²ΡΡΠ½ΡΠΉ ΠΏΠΈΡΠΎΠ½ΡΡΠΈΠΉ ΠΊΠΎΠ΄, Π° ΠΏΠΎΠ΄ ΠΊΠ°ΠΏΠΎΡΠΎΠΌ Π²ΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΡΡΡ Π² Π±ΡΡΡΡΡΠΉ ΠΌΠ°ΡΠΈΠ½Π½ΡΠΉ ΠΊΠΎΠ΄ Π΄Π»Ρ CPU ΠΈ GPU. Π’ΡΠΈ Π³ΠΎΠ΄Π° ΡΠ·ΡΠΊ ΡΠ°Π·Π²ΠΈΠ²Π°Π»ΡΡ Π·Π°ΠΊΡΡΡΠΎ Π²Π½ΡΡΡΠΈ Modular β ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΎΠ±ΡΡΡΠ½ΡΠ»Π° ΡΡΠΎ ΡΠ΅ΠΌ, ΡΡΠΎ Β«Π½Π΅Π±ΠΎΠ»ΡΡΠ°Ρ ΡΠΏΠ»ΠΎΡΡΠ½Π½Π°Ρ Π³ΡΡΠΏΠΏΠ° ΠΈΠ½ΠΆΠ΅Π½Π΅ΡΠΎΠ² Ρ ΠΎΠ±ΡΠΈΠΌ Π²ΠΈΠ΄Π΅Π½ΠΈΠ΅ΠΌ Π΄Π²ΠΈΠ³Π°Π΅ΡΡΡ Π±ΡΡΡΡΠ΅Π΅, ΡΠ΅ΠΌ community-ΠΏΡΠΎΠ΅ΠΊΡΒ». Π’Π΅ΠΏΠ΅ΡΡ ΡΡΠ° ΡΠ°Π·Π° Π·Π°ΠΊΠΎΠ½ΡΠ΅Π½Π°, ΠΈ ΠΊΠΎΠ΄ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ° Π΄ΠΎΡΡΡΠΏΠ΅Π½ Π»ΡΠ±ΠΎΠΌΡ.
Π§ΡΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΎΡΠΊΡΡΠ»ΠΈ
ΠΡΠΊΡΡΡ Π½Π΅ Π΄Π΅ΠΌΠΎ-ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΈ Π½Π΅ Π½Π°Π±ΠΎΡ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠ², Π° ΡΠ°ΠΌ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ ΠΈ Π²Π΅ΡΡ ΡΡΠ»ΡΠ΅ΠΉΠ½ β ΡΠΎ Π΅ΡΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ ΡΠ±ΠΎΡΠΊΠΈ, ΠΎΡΠ»Π°Π΄ΠΊΠΈ ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Π½Π° Mojo. ΠΠΈΡΠ΅Π½Π·ΠΈΡ Apache 2.0 β ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΉ Π²ΡΠ±ΠΎΡ Π΄Π»Ρ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ½ΡΡ open source ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ², ΠΎΠ½Π° ΡΠ°Π·ΡΠ΅ΡΠ°Π΅Ρ ΠΊΠΎΠΌΠΌΠ΅ΡΡΠ΅ΡΠΊΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅, ΡΠΎΡΠΊΠΈ ΠΈ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ Π±Π΅Π· ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΡΡΠ²Π° ΠΎΡΠΊΡΡΠ²Π°ΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄ (Π² ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ GPL). ΠΠ»Ρ ΡΠ·ΡΠΊΠ°, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠ΅ΡΠΈΡ Π² ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎΠ΄ ΠΠ-Π½Π°Π³ΡΡΠ·ΠΊΠΈ, ΡΡΠΎ ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΡΠΉ Π²ΡΠ±ΠΎΡ: ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΈΠ· Π±ΠΈΠ³ΡΠ΅Ρ Π° ΠΎΠ±ΡΡΠ½ΠΎ ΠΈΠ·Π±Π΅Π³Π°ΡΡ copyleft-Π»ΠΈΡΠ΅Π½Π·ΠΈΠΉ Π² ΠΏΡΠΎΠ΄Π°ΠΊΡΠ΅Π½Π΅.
ΠΠΎΡΠ΅ΠΌΡ Mojo Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ Β«ΡΡΠΏΠ΅ΡΡΠ΅Ρ PythonΒ»
ΠΠ·Π½Π°ΡΠ°Π»ΡΠ½ΡΠΉ ΠΏΠ»Π°Π½ Π±ΡΠ» Π±ΡΠΊΠ²Π°Π»ΡΠ½ΡΠΌ: ΡΠ΄Π΅Π»Π°ΡΡ Mojo Π½Π°Π΄ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎΠΌ Python, ΡΡΠΎΠ±Ρ Π²Π΅ΡΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠΉ ΠΏΠΈΡΠΎΠ½ΡΡΠΈΠΉ ΠΊΠΎΠ΄ Π·Π°ΠΏΡΡΠΊΠ°Π»ΡΡ Π±Π΅Π· ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΈ ΠΏΠΎΡΡΠ΅ΠΏΠ΅Π½Π½ΠΎ ΠΎΠ±ΡΠ°ΡΡΠ°Π» ΡΠΈΠΏΠ°ΠΌΠΈ ΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡΠΌΠΈ. ΠΡΠΎΡ ΠΏΠ»Π°Π½ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΡΡ Π΅ΡΡ Π² Π°Π²Π³ΡΡΡΠ΅ 2025 Π³ΠΎΠ΄Π°. ΠΠΎΠΌΠ°Π½Π΄Π° Modular ΠΏΡΡΠΌΠΎ Π½Π°ΠΏΠΈΡΠ°Π»Π°, ΡΡΠΎ Mojo ΠΌΠΎΠΆΠ΅Ρ Π½Π΅ ΡΡΠ°ΡΡ ΠΏΠΎΠ»Π½ΡΠΌ ΡΡΠΏΠ΅ΡΡΠ΅ΡΠΎΠΌ Python β ΠΈ ΡΡΠΎ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎ:
Mojo ΠΌΠΎΠΆΠ΅Ρ ΡΠ²ΠΎΠ»ΡΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°ΡΡ Π² ΠΏΠΎΠ»Π½ΡΠΉ ΡΡΠΏΠ΅ΡΡΠ΅Ρ Python, Π° ΠΌΠΎΠΆΠ΅Ρ ΠΈ Π½Π΅Ρ, ΠΈ ΡΡΠΎ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎ. ΠΠ°Ρ Π²Π΄ΠΎΡ Π½ΠΎΠ²Π»ΡΠ΅Ρ, Π½Π°ΡΠΊΠΎΠ»ΡΠΊΠΎ Ρ ΠΎΡΠΎΡΠΎ AI-ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ ΡΠΆΠ΅ ΡΠ΅Π³ΠΎΠ΄Π½Ρ ΠΏΠΎΠΌΠΎΠ³Π°ΡΡ ΠΌΠΈΠ³ΡΠΈΡΠΎΠ²Π°ΡΡ ΠΊΠΎΠ΄ Ρ Python Π½Π° Mojo, ΠΈ ΠΌΡ ΡΠ²Π΅ΡΠ΅Π½Ρ, ΡΡΠΎ Π±ΡΠ΄ΡΡΠΈΠ΅ ΡΡΠ»Ρ ΠΈ Π·ΡΠ΅Π»ΠΎΡΡΡ ΡΠΊΠΎΡΠΈΡΡΠ΅ΠΌΡ ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΠΎΡ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ Π΅ΡΡ ΠΏΡΠΎΡΠ΅.
ΠΠ° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅ ΡΡΠΎ Π·Π½Π°ΡΠΈΡ: ΡΠ΅Π³ΠΎΠ΄Π½ΡΡΠ½ΠΈΠΉ Mojo β ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΡΠΉ ΡΠ·ΡΠΊ Ρ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠΎΠΌ, Π²Π΄ΠΎΡ Π½ΠΎΠ²Π»ΡΠ½Π½ΡΠΌ Python, Π½ΠΎ Π½Π΅ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΡΠΉ Ρ Π½ΠΈΠΌ Π½Π° 100%. ΠΠ»Π°Π²Π½Π°Ρ ΡΠ΅Π»Ρ ΡΠΌΠ΅ΡΡΠΈΠ»Π°ΡΡ Ρ Β«Π·Π°ΠΌΠ΅Π½Ρ PythonΒ» Π½Π° Β«ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ Π±Π΅Π·Π±ΠΎΠ»Π΅Π·Π½Π΅Π½Π½ΠΎΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ GPUΒ». Π‘ΡΠ°Π²ΠΊΡ ΡΠ΄Π΅Π»Π°Π»ΠΈ Π½Π° AI-Π°ΡΡΠΈΡΡΠ΅Π½ΡΠΎΠ² β Π²ΠΌΠ΅ΡΡΠΎ ΡΡΡΠ½ΠΎΠΉ ΠΏΠΎΡΡΠ°ΡΠΈΠΈ ΠΊΠΎΠ΄Π° Π°Π²ΡΠΎΡΡ ΠΏΠΎΠ»Π°Π³Π°ΡΡΡΡ Π½Π° ΡΠΎ, ΡΡΠΎ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π²ΡΠΎΠ΄Π΅ GPT ΠΈΠ»ΠΈ Claude ΡΠ°ΠΌΠΈ ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΡΡ ΠΏΠΈΡΠΎΠ½ΡΡΠΈΠΉ ΡΠΊΡΠΈΠΏΡ Π² Mojo-ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ.
ΠΠ°ΠΊ ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ ΡΠ·ΡΠΊ ΠΏΡΡΠΌΠΎ ΡΠ΅ΠΉΡΠ°Ρ
ΠΡΠ»ΠΈ ΡΠ°Π½ΡΡΠ΅ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΡΠΌ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΎΠΌ ΠΏΡΠ°Π²Π΄Ρ Π±ΡΠ»Π° Π·Π°ΠΊΡΡΡΠ°Ρ ΡΠ΅ΠΏΠ° Modular, ΡΠ΅ΠΏΠ΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΌΠΎΡΡΠ΅ΡΡ ΠΈΡΡ ΠΎΠ΄Π½ΠΈΠΊΠΈ Π½Π°ΠΏΡΡΠΌΡΡ.
ΠΠ΅ΡΠ²ΡΠΉ ΡΠ°Π³ β ΠΊΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΈ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΡΡΡΡΠΊΡΡΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°:
``bash git clone https://github.com/modular/modular.git cd modular ``
ΠΠ°Π»ΡΡΠ΅ ΡΡΠΎΠΈΡ ΠΈΠ΄ΡΠΈ ΠΏΠΎ ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎΠΉ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Modular β ΠΈΠΌΠ΅Π½Π½ΠΎ ΡΠ°ΠΌ Π°ΠΊΡΡΠ°Π»ΡΠ½ΡΠ΅ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ ΠΏΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ΅ ΡΡΠ»ΡΠ΅ΠΉΠ½Π° ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΠΏΠ΅ΡΠ²ΡΡ
ΡΠ°ΠΉΠ»ΠΎΠ² .mojo, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΏΡΠΎΡΠ΅ΡΡ ΡΠ±ΠΎΡΠΊΠΈ Ρ ΠΌΠΎΠ»ΠΎΠ΄ΡΡ
ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ½ΡΡ
ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² ΠΌΠ΅Π½ΡΠ΅ΡΡΡ ΠΎΡ ΡΠ΅Π»ΠΈΠ·Π° ΠΊ ΡΠ΅Π»ΠΈΠ·Ρ. ΠΠ΅ ΠΏΠΎΠ»Π°Π³Π°ΠΉΡΠ΅ΡΡ Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΈΠ· ΡΡΠ°ΡΡΡ
Π±Π»ΠΎΠ³-ΠΏΠΎΡΡΠΎΠ² ΠΈΠ»ΠΈ Stack Overflow β Ρ Π²ΡΡ
ΠΎΠ΄ΠΎΠΌ 1.0 ΠΌΠ½ΠΎΠ³ΠΎΠ΅ ΠΌΠΎΠ³Π»ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡΡΡ Π±ΡΠΊΠ²Π°Π»ΡΠ½ΠΎ Π·Π° ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ Π΄Π½ΠΈ.
ΠΡΠΎΡΠΎΠΉ ΡΠ°Π³ β ΠΏΡΠ΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌ ΠΏΠΈΡΠ°ΡΡ Π±ΠΎΠ΅Π²ΠΎΠΉ ΠΊΠΎΠ΄, ΠΏΠΎΡΠΌΠΎΡΡΠΈΡΠ΅ issues ΠΈ pull requests Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ. ΠΠ»Ρ ΡΠ·ΡΠΊΠ°, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΠΎ ΠΎΡΠΊΡΡΠ»ΡΡ, ΡΡΠ΅ΠΊΠ΅Ρ Π·Π°Π΄Π°Ρ β Π»ΡΡΡΠΈΠΉ ΡΠΏΠΎΡΠΎΠ± ΠΏΠΎΠ½ΡΡΡ, ΠΊΠ°ΠΊΠΈΠ΅ ΡΠ°ΡΡΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ° ΡΡΠ°Π±ΠΈΠ»ΡΠ½Ρ, Π° ΠΊΠ°ΠΊΠΈΠ΅ Π²ΡΡ Π΅ΡΡ ΡΡΡΡΠ΅.
Π’ΡΠ΅ΡΠΈΠΉ ΡΠ°Π³ β Π΅ΡΠ»ΠΈ Ρ Π²Π°Ρ ΡΠΆΠ΅ Π΅ΡΡΡ Python-ΠΊΠΎΠ΄ Π΄Π»Ρ GPU (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠ°ΡΡΠΎΠΌΠ½ΡΠ΅ ΡΠ΄ΡΠ° Π΄Π»Ρ PyTorch ΠΈΠ»ΠΈ NumPy-Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ), Π½Π΅ ΠΏΡΡΠ°ΠΉΡΠ΅ΡΡ ΠΏΠ΅ΡΠ΅Π½ΠΎΡΠΈΡΡ Π΅Π³ΠΎ Π²ΡΡΡΠ½ΡΡ. ΠΠΎΠΌΠ°Π½Π΄Π° Modular ΡΠ°ΠΌΠ° ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ AI-Π°ΡΡΠΈΡΡΠ΅Π½ΡΠΎΠ² Π΄Π»Ρ ΠΌΠΈΠ³ΡΠ°ΡΠΈΠΈ β ΡΡΠΎ ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½Π°Ρ ΡΡΡΠ°ΡΠ΅Π³ΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°, Π° Π½Π΅ ΠΊΠΎΡΡΡΠ»Ρ.
Π§ΡΠΎ Π΄Π΅Π»Π°ΡΡ Ρ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠΌ Python-ΠΊΠΎΠ΄ΠΎΠΌ
Π Π°Π· Mojo Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ Π³Π°ΡΠ°Π½ΡΠΈΡΡΠ΅Ρ ΠΎΠ±ΡΠ°ΡΠ½ΡΡ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΡ Ρ Python, ΡΡΡΠ°ΡΠ΅Π³ΠΈΡ Β«ΠΏΡΠΎΡΡΠΎ ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΡΠΉΡΠ΅ .py Π² .mojoΒ» Π½Π΅ ΡΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π½Π°Π΄ΡΠΆΠ½ΠΎ. Π Π΅Π°Π»ΠΈΡΡΠΈΡΠ½ΡΠΉ ΠΏΡΡΡ β ΠΌΠΈΠ³ΡΠ°ΡΠΈΡ ΠΏΠΎ ΡΠ°ΡΡΡΠΌ:
- ΠΡΠ΄Π΅Π»ΠΈΡΠ΅ ΡΠ·ΠΊΠΎΠ΅ ΠΌΠ΅ΡΡΠΎ Π² Π²Π°ΡΠ΅ΠΌ Python-ΠΊΠΎΠ΄Π΅ β ΠΎΠ±ΡΡΠ½ΠΎ ΡΡΠΎ ΡΠΈΠΊΠ» Ρ ΠΈΠ½ΡΠ΅Π½ΡΠΈΠ²Π½ΡΠΌΠΈ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡΠΌΠΈ ΠΈΠ»ΠΈ ΠΊΠ°ΡΡΠΎΠΌΠ½Π°Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ Π΄Π»Ρ GPU.
- ΠΠ΅ΡΠ΅ΠΏΠΈΡΠΈΡΠ΅ ΠΈΠΌΠ΅Π½Π½ΠΎ ΡΡΠΎΡ ΡΡΠ°Π³ΠΌΠ΅Π½Ρ Π½Π° Mojo, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ AI-Π°ΡΡΠΈΡΡΠ΅Π½ΡΠ° ΠΊΠ°ΠΊ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ΡΠΈΠΊΠ° ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ°.
- ΠΡΡΠ°Π²ΡΡΠ΅ ΠΎΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΏΡΠΎΠ΅ΠΊΡ Π½Π° Python, Π²ΡΠ·ΡΠ²Π°Ρ Mojo-ΠΌΠΎΠ΄ΡΠ»Ρ ΠΊΠ°ΠΊ Π²Π½Π΅ΡΠ½ΡΡ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡ.
ΠΡΠΎ ΡΠΎΡ ΠΆΠ΅ ΠΏΠ°ΡΡΠ΅ΡΠ½, ΡΡΠΎ ΡΠ°Π½ΡΡΠ΅ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ»ΠΈ Π΄Π»Ρ C-ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠΉ Π² Python (ΡΠ΅ΡΠ΅Π· Cython ΠΈΠ»ΠΈ pybind11), ΡΠΎΠ»ΡΠΊΠΎ Π²ΠΌΠ΅ΡΡΠΎ C β ΡΠ·ΡΠΊ Ρ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΈΡΠΎΠ½ΡΡΡΠΈΠΌ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠΎΠΌ ΠΈ Π²ΡΡΡΠΎΠ΅Π½Π½ΠΎΠΉ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΎΠΉ MLIR (ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ°, Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΌ ΡΡΡΠΎΡΡΡΡ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ML-ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊΠΈ).
ΠΠ΄Π΅ Π»ΠΎΠΌΠ°Π΅ΡΡΡ
ΠΠ»Π°Π²Π½ΡΠΉ ΡΠΈΡΠΊ β ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠ°Ρ Π½Π΅ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΠΎΡΡΡ. Mojo ΠΌΠ΅Π½ΡΠ΅ΡΡΡ Π±ΡΡΡΡΠΎ, ΠΈ ΠΊΠΎΠ΄, Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡΠΉ ΠΏΠΎΠ»Π³ΠΎΠ΄Π° Π½Π°Π·Π°Π΄, ΠΌΠΎΠΆΠ΅Ρ Π½Π΅ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°ΡΡΡΡ ΡΠ΅Π³ΠΎΠ΄Π½Ρ. ΠΡΠΎΡΠΎΠΉ ΡΠΈΡΠΊ β ΠΏΡΡΠ°Π½ΠΈΡΠ° Π² ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΡΡ : ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ Π΄ΠΎ ΡΠΈΡ ΠΏΠΎΡ ΡΡΠΈΡΠ°ΡΡ Mojo ΠΏΠΈΡΠΎΠ½ΠΎΠΌ Ρ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΠ΅ΠΌ, Ρ ΠΎΡΡ Ρ Π°Π²Π³ΡΡΡΠ° 2025 Π³ΠΎΠ΄Π° ΡΡΠΎ ΡΠΆΠ΅ Π½Π΅ ΡΠ°ΠΊ, ΠΈ ΡΠ°ΡΡΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΡ Python-Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ ΠΏΡΠΎΡΡΠΎ Π½Π΅ Π·Π°ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π±Π΅Π· ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΡΠ²Π°Π½ΠΈΡ. Π’ΡΠ΅ΡΠΈΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ β ΠΎΡΠΊΡΡΡΠΈΠ΅ ΠΈΡΡ ΠΎΠ΄Π½ΠΈΠΊΠΎΠ² Π½Π΅ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ ΠΌΠ³Π½ΠΎΠ²Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠΎΡΡΠ° community-ΠΊΠΎΠ½ΡΡΠΈΠ±ΡΡΡΠΈΠΉ: ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ ΡΠ·ΡΠΊΠΎΠ² β ΡΠ»ΠΎΠΆΠ½Π°Ρ ΠΎΠ±Π»Π°ΡΡΡ, ΠΈ ΠΏΠ΅ΡΠ²ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ pull request'ΠΎΠ², ΡΠΊΠΎΡΠ΅Π΅ Π²ΡΠ΅Π³ΠΎ, Π±ΡΠ΄ΡΡ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡΡ ΠΎΡ ΡΠ°ΠΌΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Modular.
Π§ΡΠΎ ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ Π΄Π°Π»ΡΡΠ΅
ΠΠ°ΡΠ½ΠΈΡΠ΅ Ρ ΠΌΠ°Π»ΠΎΠ³ΠΎ: Π²ΠΎΠ·ΡΠΌΠΈΡΠ΅ ΠΎΠ΄ΠΈΠ½ Π²ΡΡΠΈΡΠ»ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΡΠΆΡΠ»ΡΠΉ ΡΡΠ°Π³ΠΌΠ΅Π½Ρ ΡΠ²ΠΎΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°, ΠΏΡΠΎΠ³ΠΎΠ½ΠΈΡΠ΅ Π΅Π³ΠΎ ΡΠ΅ΡΠ΅Π· AI-Π°ΡΡΠΈΡΡΠ΅Π½ΡΠ° Ρ ΠΏΡΠΎΡΡΠ±ΠΎΠΉ ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΠ°ΡΡ Π½Π° Mojo, ΠΈ ΡΡΠ°Π²Π½ΠΈΡΠ΅ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Ρ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ Python-ΠΊΠΎΠ΄ΠΎΠΌ Π½Π° CPU ΠΈ GPU. ΠΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΠΎ ΠΏΠΎΠ΄ΠΏΠΈΡΠΈΡΠ΅ΡΡ Π½Π° issues Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ β ΡΡΠΎ Π±ΡΡΡΡΠ΅Π΅ Π»ΡΠ±ΠΎΠ³ΠΎ Π±Π»ΠΎΠ³Π° ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ, ΠΊΡΠ΄Π° Π΄Π²ΠΈΠΆΠ΅ΡΡΡ ΡΠ·ΡΠΊ. Π Π½Π΅ ΡΠΏΠ΅ΡΠΈΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΡΠ²Π°ΡΡ Π²Π΅ΡΡ ΡΡΠ΅ΠΊ: Mojo ΡΠ΅ΠΉΡΠ°Ρ β ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Π΄Π»Ρ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΡ Π³ΠΎΡΡΡΠΈΡ ΡΠΎΡΠ΅ΠΊ Π² GPU-ΠΊΠΎΠ΄Π΅, Π° Π½Π΅ Π·Π°ΠΌΠ΅Π½Π° Python Π½Π° Π²ΡΠ΅Ρ ΡΡΠΎΠ²Π½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
FAQ
Mojo ΡΠ΅ΠΏΠ΅ΡΡ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ Π±Π΅ΡΠΏΠ»Π°ΡΠ΅Π½ ΠΈ open source?
ΠΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ ΠΈ ΡΡΠ»ΡΠ΅ΠΉΠ½ ΠΎΡΠΊΡΡΡΡ ΠΏΠΎΠ΄ Apache 2.0 β ΡΡΠΎ permissive-Π»ΠΈΡΠ΅Π½Π·ΠΈΡ, ΡΠ°Π·ΡΠ΅ΡΠ°ΡΡΠ°Ρ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΡ, Π²ΠΊΠ»ΡΡΠ°Ρ ΠΊΠΎΠΌΠΌΠ΅ΡΡΠ΅ΡΠΊΠΈΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΡ.
ΠΠΎΠΆΠ½ΠΎ Π»ΠΈ ΠΏΡΠΎΡΡΠΎ Π·Π°ΠΏΡΡΡΠΈΡΡ ΡΡΠ°ΡΡΠΉ Python-ΠΊΠΎΠ΄ Π² Mojo?
ΠΠ΅Ρ Π³Π°ΡΠ°Π½ΡΠΈΠΈ. Π‘ Π°Π²Π³ΡΡΡΠ° 2025 Π³ΠΎΠ΄Π° Mojo ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎ Π½Π΅ ΠΏΠΎΠ·ΠΈΡΠΈΠΎΠ½ΠΈΡΡΠ΅ΡΡΡ ΠΊΠ°ΠΊ ΡΡΡΠΎΠ³ΠΈΠΉ ΡΡΠΏΠ΅ΡΡΠ΅Ρ Python, ΡΠ°ΡΡΡ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ° ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ ΠΌΠΎΠΆΠ΅Ρ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΡΡ Π±Π΅Π· Π°Π΄Π°ΠΏΡΠ°ΡΠΈΠΈ.
ΠΠ°ΡΠ΅ΠΌ Π²ΠΎΠΎΠ±ΡΠ΅ Π½ΡΠΆΠ΅Π½ Π΅ΡΡ ΠΎΠ΄ΠΈΠ½ ΡΠ·ΡΠΊ, Π΅ΡΠ»ΠΈ Π΅ΡΡΡ CUDA ΠΈ C++?
Mojo ΡΠ΅Π»ΠΈΡΡΡ Π² ΡΠ΄ΠΎΠ±ΡΡΠ²ΠΎ: ΠΏΠΈΡΠΎΠ½ΡΡΠΈΠΉ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ ΡΠ½ΠΈΠΆΠ°Π΅Ρ ΠΏΠΎΡΠΎΠ³ Π²Ρ ΠΎΠ΄Π° Π² GPU-ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ ΠΊΠ»Π°ΡΡΠΈΡΠ΅ΡΠΊΠΈΠΌ CUDA C++, ΠΏΡΠΈ ΡΡΠΎΠΌ ΠΎΠ±Π΅ΡΠ°Ρ ΡΠΎΠΏΠΎΡΡΠ°Π²ΠΈΠΌΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ.
Π‘ΡΠΎΠΈΡ Π»ΠΈ ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΡΠ²Π°ΡΡ production-ΠΊΠΎΠ΄ Π½Π° Mojo ΠΏΡΡΠΌΠΎ ΡΠ΅ΠΉΡΠ°Ρ?
Π Π°Π·ΡΠΌΠ½Π΅Π΅ Π½Π°ΡΠ°ΡΡ Ρ ΠΈΠ·ΠΎΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ , Π²ΡΡΠΈΡΠ»ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΡΠΆΡΠ»ΡΡ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠΎΠ², Π° Π½Π΅ Ρ ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΌΠΈΠ³ΡΠ°ΡΠΈΠΈ β ΡΠ·ΡΠΊ ΠΌΠΎΠ»ΠΎΠ΄ΠΎΠΉ, API Π΅ΡΡ ΠΌΠ΅Π½ΡΠ΅ΡΡΡ.
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ MLIR ΠΈ ΠΏΡΠΈ ΡΡΠΌ Π·Π΄Π΅ΡΡ ΠΎΠ½?
MLIR β ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΠΎΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ°, Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΏΠΎΡΡΡΠΎΠ΅Π½Ρ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ML-ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊΠΈ. Mojo β ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΏΠ΅ΡΠ²ΡΡ ΠΊΡΡΠΏΠ½ΡΡ ΡΠ·ΡΠΊΠΎΠ², ΡΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎ ΠΏΠΎΠ΄ MLIR, ΡΡΠΎ Π΄Π°ΡΡ Π΅ΠΌΡ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²ΠΎ ΠΏΡΠΈ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Π΄Π»Ρ ΠΠ-Π½Π°Π³ΡΡΠ·ΠΎΠΊ.

