Web Overflow 🇺🇦 | LSP + AI 🔌Що таке LSP? Це стандарт, за яким клієнт (зазвичай редактор ...

Logotipo de la comunidad de telegram -
2024-07-14

Número de suscriptores:
3989
Fotos:
419 
Videos:
42 
Enlaces:
546 
Categoría:
Tecnologías
Descripción:
Затишний блог про веб-розробку і не тільки 💛 Чат: @web_overflow_chat Співпраця: @web_overflow_support Автори: @lluchkaa & @anastasiia_tarasenko

Canal Web Overflow 🇺🇦 - @web_overflow - №1575

LSP + AI 🔌Що таке LSP? Це стандарт, за яким клієнт (зазвичай редактор коду, а тепер і AI) взаємодіє з “мовним сервером”.А що таке мовний сервер? Це окремий невеликий сервіс, який розуміє код (зазвичай конкретну мову) і знає, як із ним працювати.Чому це круто? Якщо ви створите свою мову C++ Pro Max (назва під авторським правом!!), розробникам VS Code, Neovim, JetBrains тощо не потрібно буде додавати її підтримку. Замість цього ви пишете власний сервер, який через LSP допомагає редактору:• находити визначення функцій;• показувати всі їх виклики;• знаходити статичні помилки;• перейменовувати змінні, та інше.Виглядає це приблизно так:Редактор > Мовний сервер: де визначена функція X (файл X.cpp, рядок 4, символ 12)?Мовний сервер > Редактор: у файлі ABC.cpp, з (рядок 130, символ 0) до (рядок 142, символ 1).👉 Читати більшеТепер про AI-агентів.Коли AI читає код проєкту, він бачить лише текст. Без LSP йому доводиться здогадуватися: де визначена функція, які в неї параметри, чи існує вона взагалі.Наприклад, щоб знайти визначення функції, AI робить пошук по імені в усьому проєкті й серед збігів намагається знайти імплементацію. І це ще простий випадок. А якщо функція перейменована через імпорт? Так, AI впорається - але витратить значно більше токенів.З LSP агент отримує:• точні визначення символів і типів;• список усіх використань функції (корисно для рефакторингу);• діагностику в реальному часі (помилки та попередження);• семантичний пошук замість grep.На практиці різниця особливо помітна у великих репозиторіях. Коли контекст і так великий, AI може "ходити" по коду осмислено, а не просто читати все підряд.Ми вже підключили LSP для JS/TS та Python. Конфігурації в більшості провайдерів дуже схожі, тому ділимося посиланням на GitHub Copilot.👉 Відкрити посилання
1550
26-04-24 11:51