Π‘ΡΠ΅ΠΊ: C++17 Β· CMake Β· Python Β· pybind11
Π‘ΠΎΡ ΡΠ°Π½ΡΠ½Π½Π°Ρ Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Π΄Π²ΡΠΌΠ΅ΡΠ½ΠΎΠ³ΠΎ Π΄Π°ΡΠ°ΡΠ΅ΡΠ° d1 ΠΈΠ· ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°; ΡΡΠΎ Π³ΡΠ°ΡΠΈΠΊ Π΄Π°Π½Π½ΡΡ , Π° Π½Π΅ ΠΌΠ΅ΡΡΠΈΠΊΠ° ΠΊΠ°ΡΠ΅ΡΡΠ²Π° ΠΊΠ»Π°ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ.
ΠΠΎΠΌΠ°Π½Π΄Π½ΡΠΉ ΡΡΠ΅Π±Π½ΡΠΉ ΠΏΡΠΎΠ΅ΠΊΡ, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π½ΡΠΉ Π² ΠΌΠΎΡΠΌ ΠΏΠΎΡΡΡΠΎΠ»ΠΈΠΎ. Π ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½Ρ Π½Π΅ΠΉΡΠΎΠ½Π½Π°Ρ ΡΠ΅ΡΡ, Π΄Π²Π° ΡΠΏΠΎΡΠΎΠ±Π° ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ, ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Ρ ΠΌΠ°ΡΡΠΈΡΠ°ΠΌΠΈ, ΠΌΠ΅ΡΡΠΈΠΊΠΈ ΠΈ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ Ρ Python. ΠΠΎΠ΄ ΡΠ΅ΡΠΈ, ΠΎΠ±ΡΡΠ΅Π½ΠΈΠ΅, ΡΠ΅ΡΡΡ.
Π£ΡΠ΅Π±Π½Π°Ρ Π½Π΅ΠΉΡΠΎΠ½Π½Π°Ρ ΡΠ΅ΡΡ Π΄Π»Ρ ΠΊΠ»Π°ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ: Π³ΡΠ°Π΄ΠΈΠ΅Π½ΡΠ½ΡΠΉ ΡΠΏΡΡΠΊ ΠΈ Π³Π΅Π½Π΅ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ Π°Π»Π³ΠΎΡΠΈΡΠΌ ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ, ΡΠ°Π±ΠΎΡΠ° Ρ Π΄Π°Π½Π½ΡΠΌΠΈ, ΠΌΠ΅ΡΡΠΈΠΊΠΈ ΠΈ Python bindings.
| ΠΠ°ΡΠ°Π»ΠΎΠ³ | Π‘ΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ |
|---|---|
include/, src/ |
Π‘Π΅ΡΡ, ΡΡΠ΅Π½Π΅ΡΡ, ΠΌΠ°ΡΡΠΈΡΠ½ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ, ΠΌΠ΅ΡΡΠΈΠΊΠΈ |
tests/ |
ΠΡΡ ΠΎΠ΄Π½ΡΠ΅ ΡΠ΅ΡΡΡ |
data/ |
ΠΡΠΈΠΌΠ΅ΡΡ Π΄Π°Π½Π½ΡΡ |
scripts/ |
Π Π°Π±ΠΎΡΠ° Ρ ΠΌΠΎΠ΄Π΅Π»ΡΡ ΠΈΠ· Python |
ΠΡΠΆΠ½Ρ CMake, ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ C++17, Python Ρ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡΠ½ΡΠΌΠΈ ΡΠ°ΠΉΠ»Π°ΠΌΠΈ ΠΈ Π΄ΠΎΡΡΡΠΏ Π² ΡΠ΅ΡΡ Π΄Π»Ρ pybind11.
cmake -S . -B build
cmake --build build --config ReleaseΠΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠ΅ ΡΠ°ΠΉΠ»Ρ main ΠΈ test_runner Π½Π°Ρ
ΠΎΠ΄ΡΡΡΡ Π² build/ (ΠΈΠ»ΠΈ build/Release/ Π΄Π»Ρ ΠΌΠ½ΠΎΠ³ΠΎΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠ±ΠΎΡΠΊΠΈ). ΠΠ°ΠΏΡΡΠΊΠ°ΠΉΡΠ΅ ΠΈΡ
ΠΈΠ· ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π° ΡΠ±ΠΎΡΠΊΠΈ, Π³Π΄Π΅ CMake ΡΠ°Π·ΠΌΠ΅ΡΠ°Π΅Ρ Π΄Π°Π½Π½ΡΠ΅.
Π‘Π±ΠΎΡΠΊΠ° ΡΠΎΡ
ΡΠ°Π½Π΅Π½Π° ΠΈΠ· ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠ°. ΠΠΎΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Python-ΠΌΠΎΠ΄ΡΠ»Ρ Π² nnlib.pyd ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½ΠΎ Π½Π° Windows; Π΄Π»Ρ Π΄ΡΡΠ³ΠΈΡ
ΡΠΈΡΡΠ΅ΠΌ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π°Π΄Π°ΠΏΡΠ°ΡΠΈΡ.
ΠΠΎΠΌΠ°Π½Π΄Π½Π°Ρ ΡΠ°Π±ΠΎΡΠ° ΠΈΠ· sirchin-an/ai-project. ΠΠ²ΡΠΎΡΡ ΠΈ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ΅ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΡΠΎΡ ΡΠ°Π½Π΅Π½Ρ Π² docs/source-readme.md. ΠΡΠ±Π»ΠΈΡΠ½Π°Ρ ΠΊΠΎΠΏΠΈΡ ΡΠΈΠΊΡΠΈΡΡΠ΅Ρ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°; Π½ΠΎΠ²Π°Ρ Π»ΠΈΡΠ΅Π½Π·ΠΈΡ ΠΎΡ ΠΈΠΌΠ΅Π½ΠΈ ΡΠΎΠ°Π²ΡΠΎΡΠΎΠ² Π½Π΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π°.
