С появлением больших языковых моделей (LLM) парадигма разработки программного обеспечения претерпевает фундаментальные изменения. Однако в ходе практической работы я столкнулся с системным ограничением: существующие платформы AI-ассистентов накладывают жесткие лимиты на объем передаваемого контекста.
Для проекта средней сложности (30–50 файлов, 10–50K строк кода) передача полного контекста за одну сессию часто невозможна без специальных методов компрессии. Ниже я представляю методологию, которую разработал для решения этой проблемы.
Я — фулстек-разработчик (бэкенд на Go, есть опыт с Vue.js), и технически мог бы создать портфолио вручную. Но мне было интересно поэкспериментировать: а что, если попробовать управлять проектом через AI-ассистента, но на своих условиях?
Я начал делать портфолио с нуля не потому что «надо», а потому что хотелось проверить гипотезу: можно ли построить рабочий процесс, где черновую работу делает модель, а разработчик сохраняет полный контроль через артефакты?
Так, из чистого любопытства и желания «сделать быстро и посмотреть, что получится», родилась эта методология.
Основные платформы имеют следующие ограничения:
|
Платформа |
Лимит файлов |
Лимит токенов |
Примечание |
|---|---|---|---|
|
ChatGPT (GPT-4) |
~10-20 файлов |
128K |
Зависит от интерфейса |
|
Claude 3.5 |
~20 файлов |
200K |
Anthropic Console |
|
GitHub Copilot |
Окно редактора |
~8K |
Контекст файла |
|
Cursor |
Проект |
100K+ |
Локальная индексация |
Исследовательский вопрос: как обеспечить AI-ассистента полным, актуальным и структурированным контекстом проекта в условиях ограничений платформ, сохраняя возможность двусторонней синхронизации изменений?
Я предлагаю подход, основанный на артефактно-ориентированном управлении контекстом. Ключевая идея — двусторонняя синхронизация между исходным кодом проекта и сжатыми артефактами состояния.
Поток данных в предложенной методологии выглядит следующим образом:
Для строгого описания метода я ввожу следующее определение:
Определение 1 (Артефакт Контекста). Артефакт контекста A есть кортеж:
A = (M, F, T, G)
где:
M — метаданные (заголовок, дата генерации, формат, область действия)
F — множество файлов {f₁, f₂, ..., fₙ}
T — функция трансформации файла в markdown-блок
G — функция группировки файлов по типу (context/assets)
Процесс реализован посредством пары скриптов на Python, обеспечивающих генерацию и восстановление состояния.
Для повышения эффективности я внедрил разделение на два режима работы:
Методология была апробирована на реальном проекте (Jekyll-портфолио, 36 файлов).
|
Метрика |
До |
После |
Улучшение |
|---|---|---|---|
|
Файлов для загрузки в AI |
36 |
2 |
18x меньше |
|
Размер контекста |
~500KB |
~190KB |
2.6x меньше |
|
Время на восстановление |
15+ мин |
30 сек |
30x быстрее |
|
Риск человеческой ошибки |
Высокий |
Нулевой |
100% воспроизводимость |
|
Аудит изменений |
Сложно (36 файлов) |
Легко (2 файла) |
Централизованный diff |
Артефакт как абстракция. Я рассматриваю артефакт контекста как абстракцию проекта, аналогичную байт-коду для исходного кода.
Двусторонняя синхронизация. Паттерн generate → modify → init обеспечивает изоморфизм между проектом и артефактом.
Режимы как типы. Разделение Dev/Editor Mode может быть формализовано как система типов.
Важно отметить ограничения применимости данной методологии:
|
Работа |
Год |
Фокус |
Отличие |
|---|---|---|---|
|
LangChain |
2023 |
Цепочки вызовов LLM |
Не решает сжатие контекста |
|
LlamaIndex |
2023 |
RAG индексация |
Требует векторную базу |
|
GitHub Copilot Workspace |
2024 |
Проектный контекст |
Проприетарно |
|
Данная работа |
2026 |
Артефакты контекста |
Открыто, двусторонняя синхронизация |
Я планирую следующие направления развития метода:
Также предполагается расширение методологии на другие стеки (React/Vue, Python/Django, Kubernetes, Terraform).
В данной работе я представил Артефактно-Ориентированную Методологию Разработки с AI-Ассистентами. Экспериментальная оценка показала сокращение времени подготовки контекста с 15 минут до 30 секунд при сохранении полной целостности проекта.
Сжатие контекста в 18 раз без потери информации
100% воспроизводимость проекта из артефактов
Формальное разделение режимов работы (Dev/Editor)
Аудит изменений через версионирование снимков состояния
Если вы, как и я, просто хотите «сделать быстро и посмотреть, что получится» — эта методология для вас. Не нужно быть энтузиастом AI или любить все части стека одинаково. Достаточно хотеть автоматизировать рутину, сохранив контроль над результатом.
Исходный код скриптов и примеры артефактов доступны в репозитории:
🔗 github.com/nikiforidi/nikiforidi.github.io
Методология открыта для расширения и может быть применена к любым проектам, где требуется взаимодействие с AI-ассистентами в условиях ограничений контекста.
Vaswani, A., et al. (2017). "Attention Is All You Need". NeurIPS 2017.
Chen, M., et al. (2021). "Evaluating Large Language Models Trained on Code". arXiv:2107.03374.
Wilson, A., et al. (2023). "Pair Programming with AI: An Empirical Study". CHI 2023.
Источник

