79 lines
5.9 KiB
Markdown
79 lines
5.9 KiB
Markdown
# План реализации задачи
|
||
|
||
## Этап 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 |