metodika_core / docs /mvp.md
zenivan's picture
url test
25033b2
|
Raw
History Blame Contribute Delete
5.59 kB

A newer version of the Gradio SDK is available: 6.24.0

Upgrade

Текущее состояние Цель прототипа:

Показать, как AI генерирует план урока на основе:

Загруженного учебника (PDF).

Параметров от учителя (тема урока, метод, количество учеников и т.д.).

Технологии:

Backend: Python + Responses API (OpenAI).

Frontend: Streamlit (для быстрого создания веб-интерфейса).

Обработка файлов: Responses API (загрузка и поиск в PDF).

Упрощения:

Работаем только с текстом (пока не обрабатываем картинки/аудио/видео).

Используем один учебник для тестирования.

План работы над прототипом

  1. Подготовка (1-2 часа) Убедитесь, что у вас есть:

API-ключ от OpenAI.

Установленный Python (рекомендую версию 3.8+).

Установленные библиотеки:

bash Copy pip install openai streamlit Пример PDF учебника для тестирования.

  1. Создание веб-интерфейса (2-3 часа) Используем Streamlit для создания простого интерфейса:

Поле для загрузки PDF.

Поля для ввода параметров урока (тема, метод, количество учеников).

Кнопка для генерации плана урока.

Пример кода:

python Copy import streamlit as st import openai

Настройка OpenAI API

openai.api_key = "ваш API-ключ"

Заголовок приложения

st.title("AI-ассистент учителя")

Параметры урока

lesson_topic = st.text_input("Тема урока") class_size = st.number_input("Количество учеников", min_value=1) method = st.selectbox("Метод обучения", ["Test-Teach-Test", "Проектный", "Лекция"])

Загрузка PDF

uploaded_file = st.file_uploader("Загрузите учебник (PDF)", type="pdf")

if uploaded_file and lesson_topic: # Сохраняем PDF временно with open("temp.pdf", "wb") as f: f.write(uploaded_file.getvalue())

# Загрузка файла в OpenAI
file = openai.File.create(
    file=open("temp.pdf", "rb"),
    purpose="search"
)

# Поиск в файле
search_response = openai.File.search(
    file_id=file.id,
    query=lesson_topic
)

# Генерация плана урока
prompt = f"""
Создай план урока по теме: {lesson_topic}.
Метод: {method}.
Количество учеников: {class_size}.
Материалы учебника: {search_response.data[0].text}
Формат плана:
- Цели урока
- Необходимые материалы
- Шаги урока с таймингом
- Домашнее задание
"""

lesson_plan = openai.ChatCompletion.create(
    model="gpt-4",
    messages=[{"role": "user", "content": prompt}]
)

# Вывод результата
st.write("**План урока:**")
st.markdown(lesson_plan.choices[0].message.content)
  1. Тестирование (1-2 часа) Загрузите PDF учебника.

Введите параметры урока (например, тема "Фотосинтез", метод "Test-Teach-Test", 25 учеников).

Проверьте, генерирует ли AI корректный план урока.

  1. Улучшение прототипа (3-4 часа) Обработка ошибок:

Добавьте проверку на пустые поля.

Обработайте случаи, когда в учебнике нет информации по теме.

Оптимизация запросов:

Ограничьте объем текста, передаваемого в промпт (например, первые 3000 символов).

Улучшение интерфейса:

Добавьте возможность выбора раздела учебника.

Отобразите найденные фрагменты текста перед генерацией плана.

Логирование:

Сохраняйте запросы и ответы в лог-файл для анализа.

  1. Демонстрация и обратная связь (2-3 часа) Покажите прототип учителям или коллегам.

Соберите обратную связь:

Удобен ли интерфейс?

Соответствуют ли планы уроков ожиданиям?

Какие функции нужно добавить?

  1. Дальнейшие шаги После успешного тестирования MVP:

Добавьте обработку картинок/аудио/видео (если нужно).

Интегрируйте веб-поиск для поиска дополнительных материалов.

Расширьте функциональность:

Сохранение планов уроков.

Редактирование сгенерированных планов.

Оптимизируйте производительность:

Кэшируйте результаты поиска.

Используйте асинхронные запросы.