5.9 KiB
План реализации задачи
Этап 1: Установка структуры проекта
Цель: Создать структуру каталогов проекта и базовые файлы в соответствии с архитектурой.
Зависит от: ничего не зависит
Входные данные: Архитектура документа, Конституция
Выходные данные: src/, tests/, конфигурационные файлы, входы
Список готовности:
- Структура каталогов соответствует архитектуре
- Входы созданы
- Конфигурационные файлы в месте Риски: Ничего нет
Этап 2: Установка LLM Console
Цель: Создать веб-интерфейс для работы с моделями языкового обучения машин (LLM) и добавить функциональность выбора модели, ввода запросов и просмотра результатов.
Зависит от: Этап 1
Входные данные: internal/server/web/index.html, internal/server/handlers_llm.go
Выходные данные: src/internal/server/web/index.html, src/internal/server/handlers_llm_test.go
Список готовности:
- Функционал выбора модели добавлен
- Функционал ввода запросов реализован
- Функционал просмотра результатов реализован Риски: Возможно возникнет необходимость дополнительных тестов для обеспечения корректной работы веб-интерфейса
Этап 3: Установка LLM Models
Цель: Создать список доступных моделей языкового обучения машин и добавить функциональность выбора модели.
Зависит от: Этап 2
Входные данные: internal/llm/models.go, internal/server/handlers_llm.go
Выходные данные: src/internal/llm/models.go, src/internal/server/handlers_llm_test.go
Список готовности:
- Функционал выбора модели добавлен Риски: Возможно возникнет необходимость дополнительных тестов для обеспечения корректной работы списка моделей
Этап 4: Установка LLM History
Цель: Добавить функциональность просмотра истории запросов и ответов модели.
Зависит от: Этап 2
Входные данные: internal/llm/state.go, internal/server/handlers_llm.go
Выходные данные: src/internal/llm/state.go, src/internal/server/handlers_llm_test.go
Список готовности:
- Функционал просмотра истории добавлен Риски: Возможно возникнет необходимость дополнительных тестов для обеспечения корректной работы с историей
Этап 5: Установка LLM Streaming
Цель: Добавить функциональность получения результатов работы модели по частям.
Зависит от: Этап 2
Входные данные: internal/llm/stream.go, internal/server/handlers_llm.go
Выходные данные: src/internal/llm/stream.go, src/internal/server/handlers_llm_test.go
Список готовности:
- Функционал получения результатов по частям добавлен Риски: Возможно возникнет необходимость дополнительных тестов для обеспечения корректной работы стриминга ответов
Этап 6: Установка Web Server
Цель: Добавить веб-сервер на Go, обеспечивающий доступ к LLM Console и другим функционалам.
Зависит от: Этапы 2–5
Входные данные: internal/server/server.go, internal/server/web_static.go
Выходные данные: src/internal/server/server.go, src/internal/server/web_static.go
Список готовности:
- Веб-сервер запускается и работает корректно Риски: Возможно возникнет необходимость дополнительных тестов для обеспечения корректной работы веб-сервера
Этап 7: Установка Build Scripts
Цель: Добавить скрипты сборки и запуска проекта.
Зависит от: Этапы 1–6
Входные данные: build.bat, init-gskaro.bat, start-gskaro.bat
Выходные данные: src/build.bat, src/init-gskaro.bat, src/start-gskaro.bat
Список готовности:
- Скрипты сборки и запуска работают корректно Риски: Возможно возникнет необходимость дополнительных тестов для обеспечения корректной работы скриптов сборки и запуска
Проверка
- name: Unit tests command: pytest src/internal/server/tests/
- name: Type check command: mypy src/internal/server/
- name: Lint command: ruff check src/internal/server/
Версия
1.0.0