Files
discussions/source/2026-05-03-code-review.md
vitya c874ba55a6 Track existing source/ research clippings
Pre-migration commit so the next 'git mv' to .wiki/raw/research/ shows as a
rename, not delete+add.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-05 14:33:28 +03:00

16 KiB
Raw Blame History

title, source, fetched, published, fetched_via, tags
title source fetched published fetched_via tags
Хочу обсудить, как подключить другую LLM к ревью кода, написанного КЛодом. Как это организовать? Наверняка ты знаешь, как другие это делают? https://www.google.com/search?sourceid=chrome&aep=42&source=chrome.crn.rb&q=%D0%A5%D0%BE%D1%87%D1%83+%D0%BE%D0%B1%D1%81%D1%83%D0%B4%D0%B8%D1%82%D1%8C%2C+%D0%BA%D0%B0%D0%BA+%D0%BF%D0%BE%D0%B4%D0%BA%D0%BB%D1%8E%D1%87%D0%B8%D1%82%D1%8C+%D0%B4%D1%80%D1%83%D0%B3%D1%83%D1%8E++LLM++%D0%BA+%D1%80%D0%B5%D0%B2%D1%8C%D1%8E+%D0%BA%D0%BE%D0%B4%D0%B0%2C+%D0%BD%D0%B0%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%BD%D0%BE%D0%B3%D0%BE+%D0%9A%D0%9B%D0%BE%D0%B4%D0%BE%D0%BC.+%D0%9A%D0%B0%D0%BA+%D1%8D%D1%82%D0%BE+%D0%BE%D1%80%D0%B3%D0%B0%D0%BD%D0%B8%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D1%8C%3F+%D0%9D%D0%B0%D0%B2%D0%B5%D1%80%D0%BD%D1%8F%D0%BA%D0%B0+%D1%82%D1%8B+%D0%B7%D0%BD%D0%B0%D0%B5%D1%88%D1%8C%2C+%D0%BA%D0%B0%D0%BA+%D0%B4%D1%80%D1%83%D0%B3%D0%B8%D0%B5+%D1%8D%D1%82%D0%BE+%D0%B4%D0%B5%D0%BB%D0%B0%D1%8E%D1%82%3F&mstk=AUtExfD5EFxgCPzN9i00Xb6Sng7oox3R0MLA9REWp9DPMJQl5bRyt_-vjx-aF_OLAdQQteu-vj8I7bVGjoD-a114g5-BOzZtyq0bSXcimbBbeakgHNjFiWOnFqNZ3MfdmwJwTKjGzkXXMCEsfvlWcg2J_AmBHzsuH60i3HjfHo2qSI148skiOz50PggUYfyARIMggD2xAPIent3dfljllT5pubb9vjJJXyKarGgn_uz-iiExDVpuL0wstNe7d1uUxyRS3-af17X_So2j8KnM83XZJxHLZcwUqz_l-pk&csuir=1&mtid=aof3aaPIFv_97_UPusiA6Qo&udm=50 2026-05-03 obsidian-web-clipper
wiki-raw
clipping

Результаты поиска

Здравствуйте, Victor! Что вас интересует?

Хочу обсудить, как подключить другую LLM к ревью кода, написанного КЛодом. Как это организовать? Наверняка ты знаешь, как другие это делают?

Подключение сторонней LLM для ревью кода, написанного Claude (или любой другой моделью), — это отличная практика «перекрестной проверки» (cross-review), которая помогает отловить галлюцинации и специфические баги.

Вот как это обычно организуют на практике:

1. Автоматизация через CI/CD (Самый популярный путь)

Большинство команд не копипастят код вручную, а встраивают проверку прямо в GitHub/GitLab.

  • Инструменты: Используются готовые экшены или скрипты (например, coderabbit.ai, pr-agent от Codium или опенсорсные аналоги).
  • Процесс: Claude пишет код и создает Pull Request. Скрипт в CI ловит это событие, отправляет диф (diff) в API другой модели (например, GPT-4o или Llama 3) с системным промптом: «Ты — эксперт по безопасности, проверь этот код на уязвимости».
  • Результат: Вторая LLM оставляет комментарии прямо в PR.

2. Подход «Разделение ролей»

Чтобы проверка была качественной, другой модели дают узкую специализацию. Не просите её просто «проверить». Дайте конкретный фокус:

  • Модель A (Claude): Пишет функционал и логику.
  • Модель B (например, GPT-4o): Ищет только ошибки в типах, потенциальные утечки памяти или несоответствие стилю (Style Guide).
  • Модель C (например, DeepSeek Coder): Пишет модульные тесты на этот код. Если тесты не проходят — значит, в коде Claude была ошибка.

3. Использование локальных моделей (для приватности)

Если код чувствительный, многие разворачивают локальную LLM через Ollama или vLLM.

  • Вы можете настроить локальную Llama 3 (70B) или Phind-CodeLlama, которая будет «подглядывать» за тем, что генерирует Claude, и сигнализировать, если код выглядит подозрительно.

4. Промпт-инжиниринг для ревьюера

Важно, чтобы «ревьюер» не знал, что код написала другая нейронка (это убирает предвзятость). Типовой промпт для второй модели:

"Перед тобой PR от разработчика. Проанализируй изменения. Найди логические ошибки, проблемы с производительностью и предложи 3 улучшения. Будь строг, но конструктивен."

С какими моделями лучше «спаривать» Claude?

  • Claude + GPT-4o: Классика. У них разный «стиль мышления», и они часто находят ошибки друг за другом.
  • Claude + DeepSeek V3: Отличное сочетание для Python/C++, так как DeepSeek очень силен именно в кодинге и часто дешевле.
  • Claude + Sonar (Perplexity): Если код завязан на свежих библиотеках, которые вышли месяц назад (Sonar умеет ходить в интернет и проверять актуальность API).

С какого стека технологий (язык программирования, гит-хостинг) ты хочешь начать настройку такой связки?

В ответах искусственного интеллекта могут быть ошибки. Learn more

Создание общедоступной ссылки…

Показать все

Автоматизация через CI/CD (Самый популярный путь) - а еще пути есть? ЧТобы без пулл-реквестов?

Если мы убираем этап Pull Request и CI/CD, значит, мы переносим взаимодействие на уровень IDE (среды разработки) или локальных скриптов. Это делает цикл обратной связи мгновенным: вы еще не отправили код в репозиторий, а «второе мнение» уже получено.

Вот основные способы организовать это «на лету»:

1. Расширения для IDE с поддержкой разных моделей (Continue.dev / Void)

Это самый удобный «ручной» способ.

  • Как это работает: Вы устанавливаете плагин (например, Continue для VS Code или JetBrains). В нем можно настроить сразу несколько API-ключей.
  • Процесс: Вы просите Claude (через встроенный чат или автодополнение) написать функцию. Затем выделяете этот код, нажимаете горячую клавишу, переключаете модель на GPT-4o или DeepSeek прямо в выпадающем списке и выбираете команду /verify или /review.
  • Плюс: Не нужно переключаться между вкладками браузера, код проверяется мгновенно.

2. Локальные CLI-утилиты (скрипты «надсмотрщики»)

Вы можете написать простой Python-скрипт или использовать готовые CLI-инструменты (например, Aider), которые работают в терминале.

  • Процесс: Вы сохраняете код, написанный Клодом, в файл. В терминале запускаете команду: check-code --file logic.py --model gpt4.
  • Автоматизация: Можно настроить Git Hooks (pre-commit hook). Когда вы пытаетесь сделать git commit, скрипт автоматически отправляет изменения во вторую LLM. Если она находит критические баги, коммит блокируется до тех пор, пока вы не подтвердите, что всё ок.

3. "Multi-Agent" системы (CrewAI / AutoGen)

Это более продвинутый уровень, где вы создаете «чат» между двумя нейронками прямо у себя на компьютере.

  • Организация: Вы запускаете локальный оркестратор.
  • Роли: Одной модели (Claude) дается задача «Напиши код», а второй (например, Llama 3 локально) — задача «Ты суровый техлид, критикуй каждый символ».
  • Результат: В консоли вы видите диалог двух моделей. Они спорят, пока код не станет идеальным, и только финальный вариант сохраняется в файл.

4. Использование платформ-агрегаторов (Poe / TypingMind)

Если не хочется возиться с плагинами, используются веб-интерфейсы, где несколько моделей доступны в одном окне.

  • Процесс: В TypingMind можно создать чат, где подключены обе модели. Вы отправляете промпт, Claude генерирует ответ, а вы одной кнопкой пересылаете этот ответ в соседнюю ветку чата для GPT-4 с просьбой провести аудит.

Резюме по инструментам:

  • Continue.dev — если хотите проверять код прямо в процессе написания в VS Code.
  • Aider — если любите работать через терминал и хотите, чтобы LLM сама правила файлы.
  • Git Hooks — если хотите «мини-CI» прямо на своей машине, чтобы не пропускать плохой код в историю правок.

Какой из этих вариантов ближе к твоему привычному рабочему процессу — редактор кода или терминал?

В ответах искусственного интеллекта могут быть ошибки. Learn more

Создание общедоступной ссылки…

Показать все

Git Hooks интересно

Git Hooks — это скрипты, которые Git запускает автоматически при определенных действиях (например, перед каждым коммитом). Это идеальная «точка контроля», чтобы плохой код даже не попадал в вашу локальную историю.

Для ревью кода лучше всего подходит хук pre-commit. Вот как это организовать по шагам:

1. Как это работает технически

Когда вы пишете git commit -m "feat: add logic", Git запускает скрипт. Скрипт берет ваш измененный код, отправляет его по API во вторую LLM (например, GPT-4o или DeepSeek) и ждет ответа. Если LLM находит ошибки — коммит прерывается.

2. Реализация (простой пример на Python)

Вам понадобится скрипт-прослойка. Можно использовать библиотеку pre-commit (наиболее стандартный путь в индустрии).

Файл .pre-commit-config.yaml в корне проекта:

repos:
-   repo: local
    hooks:
    -   id: llm-code-review
        name: LLM Code Review
        entry: python scripts/llm_check.py
        language: python
        stages: [commit]
        types: [python] # или другие языки

Скрипт scripts/llm_check.py (логика):
Скрипт должен:

  1. Получить список измененных строк (git diff --cached).
  2. Отправить их в API (через openai или anthropic SDK).
  3. Если в ответе от LLM есть ключевое слово (например, "FAIL" или "CRITICAL"), скрипт делает sys.exit(1), и коммит не проходит.

3. Готовые инструменты

Чтобы не писать всё с нуля, можно использовать существующие обертки:

  • Llint: Специальная утилита, которая работает как линтер, но на базе LLM. Её легко добавить в хуки.
  • Aider: Хотя это полноценный AI-программист, его можно вызвать из скрипта для проверки текущих изменений перед фиксацией.

4. Плюсы и минусы такого подхода

Плюсы:

  • Гарантия чистоты: В репозиторий не попадет код, который не прошел «вторую пару глаз».
  • Локальность: Вы узнаете об ошибке через 5 секунд, а не через 5 минут после прогона CI на сервере.

Нюансы:

  • Задержка: Коммит будет занимать чуть больше времени (пока ждем ответ от API).
  • Стоимость: Каждый git commit будет тратить несколько центов (токенов).
  • Ложные срабатывания: Если LLM ошиблась и заблокировала коммит, вам придется использовать флаг git commit --no-verify, чтобы обойти проверку.

С чего лучше начать?

Если хочешь попробовать «на коленке», я могу набросать готовый Python-скрипт, который будет брать твои изменения и отправлять их на проверку в OpenAI или любую другую модель через LiteLLM.

Нужен пример такого скрипта или помочь настроить сам механизм Git Hooks?

В ответах искусственного интеллекта могут быть ошибки. Learn more

Создание общедоступной ссылки…

Показать все

Приложения Google

Аккаунт Google

Victor Kuznetsov

vitya.kuznetsov@gmail.com