Разработать приложения с генеративным искусственным интеллектом для улучшения образовательного процесса и обучения.

Создание приложений с генеративным искусственным интеллектом для оптимизации образовательного процесса и обучения.

В последнее время учителя и учебные заведения ищут различные способы интеграции искусственного интеллекта (ИИ) в свои учебные программы, будь то обучение машинному обучению (МО) или включение его в создание учебных планов, оценку знаний и другие образовательные задачи. Генеративные модели ИИ, в частности большие языковые модели (LLM), значительно ускорили влияние ИИ на образование. Генеративные модели ИИ и модели естественного языка программирования (NLP) имеют большой потенциал для улучшения обучения и обучения путем создания персонализированного контента и обеспечения интересных образовательных опытов для студентов.

В этом посте мы создаем генеративное решение ИИ для учителей, чтобы они могли создавать учебные материалы, а студенты могли изучать английские слова и предложения. Когда студенты предоставляют ответы, решение предоставляет оценку в режиме реального времени и предлагает персонализированную обратную связь и руководство студентам для улучшения их ответов.

Конкретно, учителя могут использовать решение для следующих целей:

  • Создание задания для студентов путем генерации вопросов и ответов из подсказки
  • Создание изображения на основе подсказки, чтобы представить задание
  • Сохранение нового задания в базе данных
  • Просмотр существующих заданий из базы данных

Студенты могут использовать решение для следующих целей:

  • Выбор и рассмотрение задания из базы данных заданий
  • Ответ на вопросы выбранного задания
  • Проверка оценок ответов в режиме реального времени
  • Ознакомление с предлагаемыми грамматическими улучшениями для своих ответов
  • Ознакомление с предлагаемыми улучшениями предложений для своих ответов
  • Чтение рекомендуемых ответов

Мы покажем вам шаги создания решения с использованием Amazon Bedrock, Amazon Elastic Container Service (Amazon ECS), Amazon CloudFront, Elastic Load Balancing (ELB), Amazon DynamoDB, Amazon Simple Storage Service (Amazon S3) и AWS Cloud Development Kit (AWS CDK).

Обзор решения

На следующей диаграмме показаны ресурсы и сервисы, используемые в решении.

Решение работает в виде масштабируемой службы. Учителя и студенты используют свои браузеры для доступа к приложению. Контент предоставляется через распределение Amazon CloudFront с балансировщиком нагрузки приложений в качестве источника данных. Оно сохраняет сгенерированные изображения в бакете S3 и сохраняет задания учителя и ответы и оценки студентов в отдельных таблицах DynamoDB.

Решение использует Amazon Bedrock для генерации вопросов, ответов, изображений заданий и оценки ответов студентов. Amazon Bedrock – это полностью управляемый сервис, который предоставляет основные модели от ведущих стартапов в области ИИ и Amazon через простые API-интерфейсы. В решении также используется API для коррекции грамматических ошибок и API для перефразировки от AI21 для рекомендации исправления слов и предложений.

Вы можете найти подробности реализации в следующих разделах. Исходный код доступен в репозитории GitHub.

Пререквизиты

Вам следует иметь некоторое представление о генеративном ИИ, МЛ и используемых в этом решении сервисах, включая Amazon Bedrock, Amazon ECS, Amazon CloudFront, Elastic Load Balancing, Amazon DynamoDB и Amazon S3

Мы используем AWS CDK для создания и развертывания решения. Инструкции по настройке вы можете найти в файле с инструкциями.

Создание заданий

Учителя могут создавать задания из входного текста с помощью следующей страницы пользовательского интерфейса. Задание включает в себя входной текст, вопросы и ответы, сгенерированные на основе этого текста, а также изображение, сгенерированное из входного текста, для представления задания.

В нашем примере учитель вводит направления о безопасности детей и велосипедов от Министерства транспорта Соединенных Штатов. В качестве входного текста мы используем файл bike.safe.riding.tips.txt.

Следующее сгенерированное изображение:

Ниже приведены сгенерированные вопросы и ответы:

"Вопрос": "Что всегда следует носить, когда вы катаетесь на велосипеде?", "Ответ": "Вам всегда нужно надевать правильно подогнанный велошлем при катании на велосипеде. Шлем защищает ваш мозг и может спасти вашу жизнь при аварии."

"Вопрос": "Как вы можете удостовериться, что водители вас видят, когда вы катаетесь на велосипеде?", "Ответ": "Чтобы водители вас видели, носите яркие неоновые или флуоресцентные цвета. Используйте также отражающую ленту, маркировки или мигающие огни, чтобы вас было видно."

"Вопрос": "Что нужно сделать, прежде чем сесть на велосипед?", "Ответ": "Перед поездкой на велосипеде проверьте его, чтобы убедиться, что все детали надежно закреплены и работают правильно. Проверьте, что шины надуты, тормоза работают надлежащим образом, и установлены отражатели."

"Вопрос": "Почему опаснее кататься на велосипеде ночью?", "Ответ": "Более опасно кататься ночью, потому что людям в транспортных средствах сложнее увидеть вас в темноте."

"Вопрос": "Как можно избежать опасностей во время катания на велосипеде?", "Ответ": "Смотрите вперед на опасности, такие как ямы, битое стекло и собаки. Обозначайте опасности и кричите о них, чтобы передним велосипедистам. Избегайте езды ночью, когда труднее заметить опасности."

Учитель ожидает, что ученики завершат задание, прочитав входной текст и затем отвечая на сгенерированные вопросы.

Портал использует Amazon Bedrock для создания вопросов, ответов и изображений. Amazon Bedrock ускоряет разработку решений, основанных на генеративном искусственном интеллекте, предоставляя основные модели через API-интерфейсы. Исходный код можно найти в файле 1_Create_Assignments.py.

Портал вызывает две основные модели:

  • Stable Diffusion XL для генерации изображений с использованием функции query_generate_image_endpoint
  • Anthropic Claude v2 для генерации вопросов и ответов с использованием функции query_generate_questions_answers_endpoint

Портал сохраняет сгенерированные изображения в бакет S3 с использованием функции load_file_to_s3. Он создает задание на основе входного текста, идентификатора учителя, сгенерированных вопросов и ответов, а также ссылки на бакет S3 для загруженного изображения. Задание сохраняется в таблице DynamoDB “assignments” с использованием функции insert_record_to_dynamodb.

Вы можете найти код AWS CDK, который создает таблицу DynamoDB, в файле cdk_stack.py.

Показать задания

Учителя могут просматривать задания и сгенерированные артефакты, используя следующую страницу интерфейса.

Портал использует функцию get_records_from_dynamodb для получения заданий из таблицы DynamoDB с названием “assignments”. Он также использует функцию download_image для загрузки изображения из бакета S3. Вы можете найти исходный код в файле 2_Show_Assignments.py.

Ответить на вопросы

Студент выбирает и читает задание учителя, а затем отвечает на вопросы задания.

Портал предоставляет захватывающий опыт обучения. Например, когда студент предоставляет ответ “Мне следует надевать шляпу для защиты мозга при авариях”, портал оценивает ответ в реальном времени, сравнивая его с правильным ответом. Портал также ранжирует все ответы студентов на один и тот же вопрос и показывает три лучших балла. Вы можете найти исходный код в файле 3_Complete_Assignments.py.

Портал сохраняет ответы студента в таблице DynamoDB с названием “answers”. Вы можете найти код AWS CDK, который создает таблицу DynamoDB, в файле cdk_stack.py.

Для оценки ответа студента портал вызывает модель Titan Embeddings компании Amazon для перевода ответа студента и правильного ответа в числовое представление, а затем вычисляет их сходство в виде балла. Решение можно найти в файле 3_Complete_Assignments.py.

Портал генерирует рекомендации по грамматическим исправлениям и улучшению предложений в ответе студента. Наконец, портал показывает правильный ответ на вопрос.

Портал использует API исправления грамматических ошибок и API перефразировки от AI21 для генерации рекомендаций по грамматическим исправлениям и улучшению предложений. Модель перефразировки AI21 доступна как рабочая модель в SageMaker. Вы можете развернуть модель перефразировки AI21 в качестве точки входа в SageMaker и вызвать ее для генерации улучшений предложений.

Функции generate_suggestions_sentence_improvements и generate_suggestions_word_improvements в файле 3_Complete_Assignments.py представляют альтернативный способ использования конечных точек REST API AI21. Вам необходимо создать учетную запись AI21 и найти связанный с вашей учетной записью ключ API для вызова API. После пробного периода вам придется оплачивать вызовы.

Заключение

В этой статье вам было показано, как использовать решение, основанное на искусственном интеллекте, для улучшения процесса обучения и обучения с использованием нескольких генеративных ИИ- и NLP-моделей. Вы можете использовать тот же подход для разработки других прототипов и приложений, использующих генеративный ИИ.

Если вас интересует основы генеративного ИИ и работа с фундаментальными моделями, включая продвинутые техники побуждения, загляните в учебный курс Generative AI с LLMs. Это курс на заказ, продолжительностью 3 недели, для специалистов по обработке данных и инженеров, которые хотят научиться создавать приложения с генеративным ИИ с помощью LLMs. Это хорошее основание для начала разработки с помощью Amazon Bedrock. Посетите страницу с функциями Amazon Bedrock и зарегистрируйтесь, чтобы узнать больше о Amazon Bedrock.