Сохраните файлы маленькими
Вечный спор — какой размер файла считать слишком большим. Одни говорят про Single Responsibility Principle (один класс на файл), другие — что большие файлы иногда нормальны, если не создают проблем.
С AI кодингом большие файлы = проблемы. Если RAG работает на уровне файлов — выжжете весь контекст. IDE типа Cursor начинают глючить с патчами от LLM (на Cursor 0.45.17 применение 55 изменений к 64KB файлу занимает кучу времени). При 128KB у Sonnet 3.7 проблемы с изменением всего файла (context window всего 200K токенов).
Да и оправданий для больших файлов особо нет — LLM отлично справляется со всей рутиной типа правильных импортов при разбиении файла.
Примеры
- Попросил Sonnet 3.7 в Cursor вынести маленький тестовый класс из 471KB Python файла в отдельный файл. Хотя отдельные изменения были небольшими, Sonnet 3.7 не смог создать нормальные патчи, которые Cursor мог бы применить.