148 lines
12 KiB
Markdown
148 lines
12 KiB
Markdown
# ai/ — промпты и документация для нейросетей
|
|
|
|
Материалы md2gost, переписанные под работу с языковыми моделями.
|
|
|
|
**Главное правило: файл из `ai/prompts/` — это целиком промпт.** В нём нет ни заголовка «скопируйте текст ниже», ни разделителей, ни инструкций для человека. Открыл файл, выделил всё, вставил в модель — работает. Инструкции для человека живут только в этом README.
|
|
|
|
Файлы из `ai/context/` — справочники: их дают модели как дополнительный контекст, когда нужна точность в узком месте. Файлы из `ai/examples/` — эталонные документы, проходящие проверку `--check` без замечаний; их дают как образец.
|
|
|
|
---
|
|
|
|
## 1. Что где лежит
|
|
|
|
### `ai/prompts/` — готовые к вставке промпты
|
|
|
|
| Файл | Когда брать | Размер |
|
|
|------|-------------|--------|
|
|
| [`core-md2gost.md`](prompts/core-md2gost.md) | нужен просто markdown в диалекте md2gost, без привязки к типу учебной работы | 12 тыс. знаков |
|
|
| [`report-mirea.md`](prompts/report-mirea.md) | отчёт по практике, курсовая, ВКР (`practice`, `coursework`, `vkr`) | 12 тыс. знаков |
|
|
| [`report-apid.md`](prompts/report-apid.md) | курсовая «Архитектура приложений и данных» (`APID_coursework`) | 10 тыс. знаков |
|
|
| [`report-pis.md`](prompts/report-pis.md) | итоговый отчёт по практическим работам (`PIS_custom`) | 7 тыс. знаков |
|
|
| [`voice-human.md`](prompts/voice-human.md) | добавка к любому из промптов выше: живой текст про предмет, а не отчёт модели о сдаче задания | 5 тыс. знаков |
|
|
| [`review-fix.md`](prompts/review-fix.md) | есть готовый `.md`, надо починить его под ТЗ (в том числе по выводу `--check`) | 8 тыс. знаков |
|
|
| [`from-word.md`](prompts/from-word.md) | есть результат импорта `word2md`, надо довести до диалекта | 6 тыс. знаков |
|
|
|
|
Промпты самодостаточны: правила диалекта в них повторяются намеренно, чтобы каждый работал в одиночку.
|
|
|
|
### `ai/context/` — справочники для догрузки
|
|
|
|
| Файл | О чём | Размер |
|
|
|------|-------|--------|
|
|
| [`syntax.md`](context/syntax.md) | полная спецификация диалекта: регулярные выражения, приоритеты, подводные камни | 16 тыс. знаков |
|
|
| [`diagrams.md`](context/diagrams.md) | все нотации схем с готовыми каркасами: PlantUML, C4, Mermaid, IDEF0, DFD | 16 тыс. знаков |
|
|
| [`archimate.md`](context/archimate.md) | ArchiMate 3.2: макросы элементов и связей, направления, viewpoints, шаблоны | 22 тыс. знаков |
|
|
| [`checker.md`](context/checker.md) | каталог замечаний `--check` с текстами сообщений и способами починки | 10 тыс. знаков |
|
|
| [`cli.md`](context/cli.md) | все ключи запуска, профили типов, конфигурационные файлы, оформление | 12 тыс. знаков |
|
|
|
|
### `ai/examples/` — эталоны
|
|
|
|
| Файл | Тип | Что демонстрирует |
|
|
|------|-----|-------------------|
|
|
| [`coursework.md`](examples/coursework.md) | `coursework` | полная структура, IDEF0, C4, ER-диаграмма, объединение ячеек, формула, листинг, два приложения, шесть источников |
|
|
| [`pis-report.md`](examples/pis-report.md) | `PIS_custom` | четыре практические работы, DFD, IDEF0, сквозные метки, расчёт нагрузки |
|
|
|
|
Оба файла проверены: `--check-only` не даёт ни одного замечания, сборка DOCX проходит на локальном рендере без интернета.
|
|
|
|
---
|
|
|
|
## 2. Рецепты
|
|
|
|
Что вставлять в модель под конкретную задачу.
|
|
|
|
| Задача | Что даёшь модели |
|
|
|--------|------------------|
|
|
| Сгенерировать курсовую или отчёт по практике | `prompts/report-mirea.md` → вторым сообщением `prompts/voice-human.md` → третьим сообщением входные данные |
|
|
| То же, но нужен упор на схемы | добавь `context/diagrams.md` перед входными данными |
|
|
| Курсовая АПИД | `prompts/report-apid.md` + `prompts/voice-human.md` + при необходимости `context/archimate.md` |
|
|
| Отчёт по практическим работам ПИС | `prompts/report-pis.md` + входные данные |
|
|
| Дописать раздел в существующий отчёт | `prompts/core-md2gost.md` + `prompts/voice-human.md` + текущий `.md` целиком + что дописать |
|
|
| Починить файл по замечаниям проверки | `prompts/review-fix.md` + вывод `--check` + `.md` целиком |
|
|
| Довести импорт из Word | `prompts/from-word.md` + результат `word2md` |
|
|
| Нарисовать одну схему | `context/diagrams.md` (или `context/archimate.md`) + описание того, что надо изобразить |
|
|
| Разобраться, почему конвертер ругается | `context/checker.md` + текст ошибки |
|
|
| Модель путается в синтаксисе | добавь `context/syntax.md` |
|
|
| Нужен образец «как должно выглядеть» | добавь `examples/coursework.md` |
|
|
|
|
Если контекст модели ограничен, порядок приоритета такой: промпт → входные данные → эталон → справочник. Справочник — первое, чем можно пожертвовать.
|
|
|
|
---
|
|
|
|
## 3. Шаблон входных данных
|
|
|
|
Следующим сообщением после промпта дай модели заполненный блок:
|
|
|
|
```text
|
|
Тип работы: coursework
|
|
Тема: Разработка модуля учёта заявок на техническое обслуживание
|
|
Год сдачи: 2026
|
|
Дисциплина: Проектирование информационных систем
|
|
|
|
Объект: процесс приёма и исполнения заявок на обслуживание оборудования
|
|
Что уже известно:
|
|
- склад обрабатывает около 400 отгрузок в сутки
|
|
- заявки принимаются по телефону, фиксируются в электронных таблицах
|
|
- нужна интеграция со справочником оборудования по REST
|
|
|
|
Требования руководителя:
|
|
- обязательны диаграмма прецедентов и модель данных
|
|
- три раздела основной части
|
|
|
|
Литература: если есть свой список — приведи его здесь; иначе модель подберёт сама
|
|
Черновик: приложи имеющийся текст, если он есть
|
|
```
|
|
|
|
Чем конкретнее «что уже известно», тем меньше выдумок в тексте. Числа, названия и ограничения — самое ценное, что можно дать.
|
|
|
|
---
|
|
|
|
## 4. Полный цикл работы
|
|
|
|
```bash
|
|
# 1. Сохранить ответ модели как report.md
|
|
|
|
# 2. Проверить по ТЗ
|
|
python -m md2gost report.md --check-only --type coursework
|
|
|
|
# 3. Если есть замечания — отдать их модели вместе с файлом
|
|
# и промптом ai/prompts/review-fix.md, сохранить результат, вернуться к шагу 2
|
|
|
|
# 4. Собрать документ
|
|
python -m md2gost report.md -o report.docx --type coursework --check --strict
|
|
|
|
# 5. Проверить вёрстку готового файла (Windows + Word + pywin32)
|
|
python -m md2gost report.docx --check-pages
|
|
```
|
|
|
|
Автотитул при необходимости: положить рядом `info_conv.yaml`, добавить в начало `.md` блок ` ```title ` с номером работы и годом, запустить с `--auto-title --student "…" --group "…"`. Подробности — в [`context/cli.md`](context/cli.md).
|
|
|
|
---
|
|
|
|
## 5. Куда вставлять промпт
|
|
|
|
| Инструмент | Куда |
|
|
|------------|------|
|
|
| ChatGPT, Claude | системная инструкция проекта либо первое сообщение диалога |
|
|
| Cursor | правила для ИИ, либо первое сообщение агенту |
|
|
| GitHub Copilot Chat | контекст чата |
|
|
| API | роль `system` |
|
|
|
|
Промпты рассчитаны на модель с рассуждением и длинным контекстом: они содержат чек-листы самопроверки, которые слабые модели игнорируют. Если результат не проходит `--check` с первого раза — это нормальный рабочий цикл, для него и сделан `review-fix.md`.
|
|
|
|
---
|
|
|
|
## 6. Что модель делать не должна
|
|
|
|
Проверка `--check` не ловит фактические ошибки и выдуманные источники. Перед сдачей обязательно вычитай:
|
|
|
|
- **список литературы** — модели склонны придумывать издания, ISBN и число страниц. Промпты запрещают это прямо, но проверять всё равно нужно;
|
|
- **числа и названия** — если ты их не давал, модель их сочинила;
|
|
- **соответствие теме** — структура может быть безупречной при пустом содержании.
|
|
|
|
---
|
|
|
|
## 7. Отношение к остальному репозиторию
|
|
|
|
Каталоги `docs/` и `prompts/` в корне репозитория остаются как есть: на них ссылается встроенная справка приложения (**Справка → Документация**, **Справка → Промпт для ИИ**). Каталог `ai/` — самостоятельный набор, переписанный под подачу в модели, и ничего в приложении не ломает.
|
|
|
|
Источник истины по возможностям конвертера — код в `md2gost/`; справочники в `ai/context/` собраны по нему, а не по старой документации.
|