/
ΠΠ°ΠΉΠ΄ΠΆΠ΅ΡΡ/
ΠΠ΅ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Ρ Π³ΡΠ°ΠΌΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡΠΌΠΈ ΠΌΠΎΠΆΠ΅Ρ Π΄ΠΆΠ΅ΠΉΠ»Π±ΡΠ΅ΠΉΠΊΠ½ΡΡΡ LLM
Veai ΠΏΡΠΎΠ²Π΅ΡΡΠ΅Ρ ΡΠ΅Π°Π»ΡΠ½ΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° Π² JetBrains IDE β Β«Π½Π°Π΄ΡΠΆΠ½ΠΎΡΡΡ Π½Π° ΡΠ»ΠΎΠ²Π°Ρ Β» Π½Π΅ Π·Π°ΠΌΠ΅Π½ΡΠ΅Ρ Π·Π°ΠΏΡΡΠΊ.
ΠΠΎΠ»ΡΡΠΈΠ΅ ΡΠ·ΡΠΊΠΎΠ²ΡΠ΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ (LLM) Π²ΡΡ ΡΠ°ΡΠ΅ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ Π΄Π»Ρ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ ΠΊΠΎΠ΄Π°, ΡΡΠΎ Π²ΡΠ·ΡΠ²Π°Π΅Ρ ΠΎΠΏΠ°ΡΠ΅Π½ΠΈΡ, ΡΡΠΎ ΠΈΡ
ΠΌΠΎΠ³ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π²ΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°. ΠΡΠΈ ΡΡΠΎΠΌ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Ρ Π³ΡΠ°ΠΌΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡΠΌΠΈ (GCD, Grammar-Constrained Decoding) ΡΠΈΡΠΎΠΊΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΡ Π½Π°Π΄ΡΠΆΠ½ΠΎΡΡΠΈ Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅ΠΌΠΎΠ³ΠΎ LLM-ΠΊΠΎΠ΄Π° Π·Π° ΡΡΡΡ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎΡΡΠΈ. Π ΡΡΠΎΠΉ ΡΠ°Π±ΠΎΡΠ΅ Π°Π²ΡΠΎΡΡ Π²ΡΡΠ²Π»ΡΡΡ ΠΊΠΎΠ½ΡΡΠΈΠ½ΡΡΠΈΡΠΈΠ²Π½ΡΠΉ ΡΠΈΡΠΊ: ΡΡΠ° ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½Π°Ρ Π½Π° Π½Π°Π΄ΡΠΆΠ½ΠΎΡΡΡ ΡΠ΅Ρ
Π½ΠΈΠΊΠ° ΡΠ°ΠΌΠ° ΠΌΠΎΠΆΠ΅Ρ ΡΡΠ°ΡΡ ΠΏΠΎΠ²Π΅ΡΡ
Π½ΠΎΡΡΡΡ Π°ΡΠ°ΠΊΠΈ.
ΠΠ²ΡΠΎΡΡ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ²Π°ΡΡ Π½ΠΎΠ²ΡΡ Π΄ΠΆΠ΅ΠΉΠ»Π±ΡΠ΅ΠΉΠΊ-Π°ΡΠ°ΠΊΡ, Π½Π°Π·Π²Π°Π½Π½ΡΡ CodeSpear, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠΊΡΠΏΠ»ΡΠ°ΡΠΈΡΡΠ΅Ρ GCD, ΡΡΠΎΠ±Ρ Π²ΡΠ½ΡΠ΄ΠΈΡΡ LLM Π³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°ΡΡ Π²ΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΡΠΉ ΠΊΠΎΠ΄. ΠΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΡ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡ, ΡΡΠΎ ΠΏΡΠΎΡΡΠΎΠ΅ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π±Π΅Π·ΠΎΠ±ΠΈΠ΄Π½ΠΎΠ³ΠΎ Π³ΡΠ°ΠΌΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ Π½Π° ΠΊΠΎΠ΄ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ Β«Π²Π·Π»ΠΎΠΌΠ°ΡΡΒ» (jailbreak) LLM.
Π§ΡΠΎΠ±Ρ ΡΡΡΡΠ°Π½ΠΈΡΡ ΡΡΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΡ, Π°Π²ΡΠΎΡΡ ΠΏΡΠ΅Π΄Π»Π°Π³Π°ΡΡ CodeShield - ΠΏΠΎΠ΄Ρ
ΠΎΠ΄ ΠΊ Π²ΡΡΠ°Π²Π½ΠΈΠ²Π°Π½ΠΈΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΡΡΠΎΠΉΡΠΈΠ²ΠΎ ΡΠΎΡ
ΡΠ°Π½ΡΠ΅Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π΄Π°ΠΆΠ΅ ΠΏΡΠΈ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΡΠ΅ΠΌΡΡ
Π°ΡΠ°ΠΊΡΡΡΠΈΠΌ Π³ΡΠ°ΠΌΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ
ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡΡ
. ΠΠΎΠ΄Ρ
ΠΎΠ΄ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°Π΅Ρ ΠΌΠΎΠ΄Π΅Π»Ρ ΡΠ°ΠΊ, ΡΡΠΎΠ±Ρ ΠΎΠ½Π° Π³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°Π»Π° Β«honeypotΒ»-ΠΊΠΎΠ΄ ΠΏΠΎΠ΄ GCD: ΡΠ°ΠΊΠΎΠΉ ΠΊΠΎΠ΄ ΡΠ΅ΠΌΠ°Π½ΡΠΈΡΠ΅ΡΠΊΠΈ Π±Π΅Π·Π²ΡΠ΅Π΄Π΅Π½ (Π½Π΅ ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅Ρ Π²ΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΡΠΉ Π·Π°ΠΏΡΠΎΡ) ΠΈ ΡΡΡΡΠΊΡΡΡΠ½ΠΎ ΡΠ°Π·Π½ΠΎΠΎΠ±ΡΠ°Π·Π΅Π½ (Π΅Π³ΠΎ ΡΡΡΠ΄Π½ΠΎ ΠΏΠΎΠ΄Π°Π²ΠΈΡΡ ΡΠΆΠ΅ΡΡΠΎΡΠ΅Π½ΠΈΠ΅ΠΌ Π³ΡΠ°ΠΌΠΌΠ°ΡΠΈΠΊΠΈ). ΠΡΠΈ ΡΡΠΎΠΌ ΠΌΠΎΠ΄Π΅Π»Ρ ΡΠΎΡ
ΡΠ°Π½ΡΠ΅Ρ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΡΡΡ Π½Π° Π±Π΅Π·ΠΎΠ±ΠΈΠ΄Π½ΡΡ
Π·Π°Π΄Π°ΡΠ°Ρ
, ΠΊΠΎΠ³Π΄Π° Π΅ΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΡΠΉ ΡΠ·ΡΠΊ Π΄ΠΎΡΡΡΠΏΠ΅Π½. ΠΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΡ Π½Π° 10 ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΡ
LLM ΠΈ 4 Π±Π΅Π½ΡΠΌΠ°ΡΠΊΠ°Ρ
ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡ, ΡΡΠΎ CodeSpear ΠΏΡΠ΅Π²ΠΎΡΡ
ΠΎΠ΄ΠΈΡ ΡΠ΅ΠΏΡΠ΅Π·Π΅Π½ΡΠ°ΡΠΈΠ²Π½ΡΠ΅ Π΄ΠΆΠ΅ΠΉΠ»Π±ΡΠ΅ΠΉΠΊ-Π±Π°Π·Π»Π°ΠΉΠ½Ρ ΠΈ ΠΏΠΎΠ²ΡΡΠ°Π΅Ρ ΡΡΠΏΠ΅ΡΠ½ΠΎΡΡΡ Π°ΡΠ°ΠΊΠΈ Π² ΡΡΠ΅Π΄Π½Π΅ΠΌ Π±ΠΎΠ»Π΅Π΅ ΡΠ΅ΠΌ Π½Π° 30 ΠΏΡΠΎΡΠ΅Π½ΡΠ½ΡΡ
ΠΏΡΠ½ΠΊΡΠΎΠ². CodeShield ΠΆΠ΅ Π²ΠΎΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ ΠΏΠΎΠ΄ CodeSpear, ΡΠΎΡ
ΡΠ°Π½ΡΡ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΡΡΡ Π½Π° Π±Π΅Π·ΠΎΠ±ΠΈΠ΄Π½ΡΡ
Π·Π°Π΄Π°ΡΠ°Ρ
. ΠΡΠ²ΠΎΠ΄Ρ Π²ΡΠΊΡΡΠ²Π°ΡΡ ΡΡΠ½Π΄Π°ΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΡΠΉ ΡΠΈΡΠΊ GCD ΠΈ ΠΏΡΠΈΠ·ΡΠ²Π°ΡΡ ΡΠ΄Π΅Π»ΡΡΡ Π±ΠΎΠ»ΡΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΡ Π΅Π³ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠΌ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΠ²ΠΈΡΠΌ Π΄Π»Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ.
ΠΠ°ΠΆΠ΅ ΡΠ΅Ρ
Π½ΠΈΠΊΠ°, ΠΏΡΠΈΠ΄ΡΠΌΠ°Π½Π½Π°Ρ Π΄Π»Ρ Π½Π°Π΄ΡΠΆΠ½ΠΎΡΡΠΈ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ, ΠΌΠΎΠΆΠ΅Ρ ΡΡΠ°ΡΡ ΠΏΠΎΠ²Π΅ΡΡ
Π½ΠΎΡΡΡΡ Π°ΡΠ°ΠΊΠΈ.Grammar-constrained decoding Π²ΡΠ³Π»ΡΠ΄ΠΈΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ Π·Π°ΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΌΠΎΠ΄Π΅Π»Ρ ΠΏΠΈΡΠ°ΡΡ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π²Π°Π»ΠΈΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄, Π½ΠΎ ΡΡΠ°ΡΡΡ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ: Π²Π°Π»ΠΈΠ΄Π½ΡΠΉ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ Π½Π΅ ΡΠ°Π²Π΅Π½ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΠΌΡ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΡ. ΠΠΎΡΡΠΎΠΌΡ Π²Π°ΠΆΠ½ΠΎ ΠΏΡΠΎΠ²Π΅ΡΡΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ Π² JetBrains IDE: Π·Π°ΠΏΡΡΠΊΠ°ΡΡ, Π°Π½Π°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ, ΡΠΌΠΎΡΡΠ΅ΡΡ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΈ ΡΡΡΠ΅ΠΊΡΡ ΠΊΠΎΠ΄Π°, Π° Π½Π΅ Π²Π΅ΡΠΈΡΡ ΠΊΡΠ°ΡΠΈΠ²ΠΎΠΉ ΡΠΎΡΠΌΠ΅ ΠΎΡΠ²Π΅ΡΠ°.
ΠΠ΅ΡΠ΅Π²ΠΎΠ΄ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²Π»Π΅Π½ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ Veai Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ arXiv:2606.11817. ΠΠ΅ΡΠ²ΠΎΠΈΡΡΠΎΡΠ½ΠΈΠΊ (Π°Π½Π³Π».): arxiv.org/abs/2606.11817.