Files
TestingWebApp/docs/шаги/10-ai-assistant.md
T
Константин Лебединский a68331c86b docs: статус проекта, инструкция dev, обновление всех .md
- PROJECT_STATUS: что сделано (черновики, версии, разбор, каталог) и планы
- DEV_CONTOUR_USER_GUIDE: сценарии для проверяющих на dev-стенде
- README, ТЗ, card1, журнал, бэклоги, шаги 01–11+README, спринты, TEST_TABLES: ссылки и примечания
- backend/PROGRESS: ссылка на PROJECT_STATUS

Made-with: Cursor
2026-04-24 22:12:06 +05:00

95 lines
2.3 KiB
Markdown

# Шаг 10: AI-помощник (DeepSeek)
## Цель
Интегрировать LLM DeepSeek для помощи при создании тестов.
---
## Задачи
### 10.1. Настройка API
- Сохранить API ключ DeepSeek в таблице `settings`
- Ключ хранится только на бэкенде, не передаётся на фронтенд
### 10.2. Функции AI-помощника
#### Генерация теста
| Эндпоинт | Метод | Описание |
|----------|-------|----------|
| `/api/ai/generate-test` | POST | Сгенерировать тест |
**Запрос:**
```json
{
"topic": "Оказание первой помощи",
"question_count": 10
}
```
**Ответ:** готовый тест с вопросами и вариантами ответов
#### Улучшение формулировки
| Эндпоинт | Метод | Описание |
|----------|-------|----------|
| `/api/ai/improve-question` | POST | Улучшить вопрос |
**Запрос:**
```json
{
"question": "Что делать при переломе?"
}
```
#### Добавление дистракторов
| Эндпоинт | Метод | Описание |
|----------|-------|----------|
| `/api/ai/add-distractors` | POST | Добавить неправильные варианты |
**Запрос:**
```json
{
"question": "Признаки инфаркта:",
"correct_answer": "Боль в груди",
"count": 3
}
```
#### Проверка качества
| Эндпоинт | Метод | Описание |
|----------|-------|----------|
| `/api/ai/check-quality` | POST | Проверить качество теста |
**Запрос:**
```json
{
"test": { ... }
}
```
**Ответ:** рекомендации по улучшению
### 10.3. Обработка ошибок
- Timeout при длительном ответе API
- Логирование ошибок
- Fallback при недоступности DeepSeek
---
## Результат
- AI-генерация вопросов
- Улучшение формулировок
- Рекомендации по качеству
---
*Актуальная привязка к коду: [../PROJECT_STATUS.md](../PROJECT_STATUS.md) · индекс шагов: [README.md](README.md).*