Бот для экзамена

15 полезных Telegram-ботов, которые помогут тебе учиться на отлично

Telegram входит в пятёрку самых популярных мессенджеров в мире. Так происходит не только из-за мемов с Павлом Дуровым. В телеге ты можешь общаться

с друзьями и учиться. Хочешь проверять ошибки в тексте, строить планы на учёбу или практиковать английский? Тебе помогут Telegram-боты. Мы собрали незаменимых помощников абитуриентов в одной статье.

Боты, которые помогут подготовиться к экзамену по русскому

OrfoBot — проверит твои тексты на ошибки. С ним ты станешь самым грамотным в классе.

Антиплагиат-бот от Text.ru — воспользуйся им, когда пишешь сочинение. Так ты поймёшь процент уникальности своего текста.

Дактиль — бот, созданный, чтобы подтянуть твои знания русской поэзии. Назначай время и Дактиль пришлет тебе стихотворение. Заряжает на хорошее настроение.

20 телеграм-каналов и ботов, которые облегчают жизнь школьникам и абитуриентам

Боты для сдающих английский язык

Yandex.Translate — это инструмент интегрированный с переводчиком Яндекса. Держи его под рукой, когда работаешь с текстами на иностранном.

InMind — мини-репетитор прямо в твоём Telegram. Уделяя ему 15 минут в день, ты сможешь учить новые слова, а также соревноваться в знании английского с друзьями.

Andy English Bot — потенциальный друг по переписке. Он пополнит твои знания речевых конструкций. Поможет сдать устную часть экзамена на отлично.

5 Телеграм-каналов, на которые тебе точно стоит подписаться

Боты, которые позволят тебе управлять временем

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

Alert Bot — удобная альтернатива напоминалкам в телефоне. Введи время и событие, о котором нужно напомнить. Тогда бот тебе маякнёт.

Evernote — бот от популярного приложения Evernote. С помощью него ты сможешь добавлять в свой блокнот текст, фото, файлы, аудиосообщения и локацию. Подходит для работы над большими школьными проектами.

Не по фану, а для учёбы: как грамотно использовать Telegram для подготовки к ЦТ

Боты с полезными статьями

Arzamas Bot — продукт от известной платформы Арзамас. Там ты найдёшь материалы из истории, культуры, философии и искусства. Маст-хэв для сдающих гуманитарные предметы.

Химик — бот-химик. Он с радостью будет присылать тебе новости из мира химии. Там ты найдёшь познавательные фото и видео с экспериментами. За конспектами лекций по темам и таблицами тоже обращайся к нему.

MISIS Books — огроменный сборник статей по всем экзаменационным предметам. Механика работы понятная: пишешь ему тему, а он выдает книги по ней.

10 научно-популярных каналов на YouTube, которые тебе точно понравятся

Боты для работы с текстом

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

Voicy — переводит голосовые сообщения в текстовые. С ним ты сделаешь реферат или эссе за считанные минуты. Диктуешь нужные предложения, а бот трансформирует их в текстовый формат.

Бот Алёша — Переводчик исходящих текстовых сообщений в голосовые.

Кстати, у нас есть собственные Telegram-каналы, там мы общаемся, публикуем полезные посты и подготовке к экзаменам, вузах, психологии и хобби.

Адукар | Подписывайся и получай новости образования и помощь в подготовке к ЦТ

ЦТ-улей| Адукар 2022

ЕГЭ-улей | Адукар 2022

Адукар | ЕГЭ 2022

Надеемся, Telegram-боты облегчат твою учёбу и увеличат шансы получить хорошую отметку. Но помни, настоящую подготовку к экзаменам они не заменят.

Спасибо, что дочитал до конца. Мы рады, что были полезны. Чтобы получить больше информации, посмотри ещё:

Каталог учебных заведений Адукар

Курсы подготовки к ЦТ 2022

Тренируйся решать тесты в ЦТ онлайн

Не пропускай важные новости и подписывайся на наш YouTube, ВК, Instagram, Telegram, Facebook, TikTok.

***

Если хотите разместить этот текст на своём сайте или в социальной сети, свяжись с нами по адресу info@adukar.by. Перепечатка материалов возможна только с письменного согласия редакции.

Хочешь быть в курсе новостей ЦТ?
Подписывайся на Адукар в соцсетях!

Начни подготовку к ЦТ и ЦЭ прямо сейчас!

Адукар обещает крутых преподавателей, индивидуальный подход и много полезной практики.

Привет! Ты уже записался на наши

итоговые занятия перед ЦТ? Такие занятия мы проводим уже четвёртый год, и преподаватели нашего учебного центра
научились достаточно точно предсказывать, какие вопросы будут на ЦТ. На этом занятии мы прорешаем их вместе с тобой!
Регистрируйся,
если еще не сделал этого — и увеличь свои шансы на поступление!

В ноябре 2022 года компания OpenAI запустила чат-бот ChatGPT, который сразу же произвел переполох в IT-индустрии.

Он привлек внимание своими широкими возможностями. По сути ChatGPT может делать почти все что угодно: отвечать на вопросы, писать код, переводить тексты, генерировать рассказы на заданные темы, и это лишь малая часть того, на что он способен.

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

Крупные компании уже опасаются ChatGTP. Например, глава Google Сундар Пичаи объявил внутри компании «красный код» из-за ChatGPT.

Содержание:

  • ▪ ChatGPT разрабатывает компания, основанная Илоном Маском

    ▪ Как запустить ChatGPT

    ▪ ChatGPT не всегда работает стабильно

    ▪ Школьники в США и России используют ChatGPT для решения домашних заданий

    ▪ ChatGPT умеет писать хакерский код

    ▪ Многие люди боятся, что ChatGPT и его аналоги будут обладать собственным разумом

    ▪ Будущее ChatGPT пока что не определено, но компания уже монетизировала проект

ChatGPT разрабатывает компания, основанная Илоном Маском


ChatGPT может сам рассказать о своем создании.

Точно неизвестно, когда OpenAI начала разрабатывать ChatGPT. Компания была основана в конце 2015 года, а среди ее учредителей числится Илон Маск. Он вышел из совета директоров OpenAI 20 февраля 2018 года из-за возможного конфликта интересов.

Руководит OpenAI Сэм Альтман, бывший президент Y Combinator — венчурного фонда, который инвестирует средства в технологические компании. Y Combinator инвестировал в Reddit, Airbnb, Dropbox, Disqus и еще в сотни стартапов.

OpenAI занимается созданием различных технологий на основе машинного обучения. Одним из самых известных проектов OpenAI является нейросеть DALL·E 2, которая может рисовать картины на основе текстового запроса.

Также OpenAI принадлежит модель обработки языка GPT-3. По словам разработчиков, она способна отвечать на различные вопросы на английском языке.


Вот так ChatGPT описывает свое отличие от Google.

Главное преимущество GPT-3 заключается в том, что нейросеть способна понимать запрос по нескольким словам и сразу же выдавать готовый ответ. Аналогичным образом работают поисковые системы, но в отличие от того же Google, GPT-3 сразу дает ответ из своей базы знаний, а не показывает предложенные сайты, где пользователь сам должен искать информацию.

ChatGPT, запущенный 30 ноября 2022 года, построен на новой версии GPT-3.5. Он еще лучше понимает запросы и работает в виде обычного чат-бота. Но самое главное, что OpenAI удалось создать фактически первую нейросеть, которая думает и разговаривает, как человек.

◦ Назад к содержанию ◬

Как запустить ChatGPT

1. Включите VPN и откройте сайт ChatGPT

2. Нажмите кнопку Try ChatGPT

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

4. После регистрации откроется ChatGPT. Все запросы надо писать в текстовое поле внизу экрана

ChatGPT официально работает в США, Канаде, Австралии, Европе и некоторых других странах. В России он недоступен, и с VPN сайт не всегда открывается.

Поскольку в России бот не работает, то и российские номера, начинающиеся на +7, для регистрации не подойдут.

Решить эту проблему можно, купив в интернете виртуальный номер телефона, или использовать бесплатный. Однако многие бесплатные номера уже есть в базе OpenAI, поэтому проще заплатить 5-10 рублей за виртуальный номер.

◦ Назад к содержанию ◬

ChatGPT не всегда работает стабильно


ChatGPT может вести канал в Telegram.

На данный момент ChatGPT находится в бета-версии, которую может протестировать любой желающий, но есть ограничения.

Сервера OpenAI не справляются с нагрузкой из-за огромного наплыва пользователей, в результате чего ChatGPT не всегда доступен. Бот предлагает подождать либо перезапустить страницу позже, но эта ошибка может длиться несколько часов.

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


ChatGPT может генерировать идеи подарков.

Иногда ChatGPT не может ответить на вопрос или отвечает непонятно. В таком случае надо просто переформулировать запрос.

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

wp-image-1180710wp-image-1180711wp-image-1180712

ChatGPT можно использовать в качестве переводчика. Качество перевода на уровне Google Translate и Deepl.

ChatGPT поддерживает русский язык, но переводит его на английский для поиска ответа. Из-за этого качество ответов ниже, чем на английском языке. Иногда бот отвечает на английском на вопрос, заданный на русском. Бывают ситуации, когда ChatGPT внезапно прерывает ответ.

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

◦ Назад к содержанию ◬

Школьники в США и России используют ChatGPT для решения домашних заданий


Пример сочинения, написанного ChatGPT.

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

Все зашло настолько далеко, что школы Нью-Йорка и Сиэтла запретили использовать ChatGPT на своих компьютерах и сетях, объяснив это негативным влиянием на обучение.

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


ChatGPT подойдет для написания простых сочинений на русском языке. Но для ЕГЭ и ОГЭ его не получится использовать, потому что нейросеть не знает структуру сочинений школьных экзаменов.

Ведущие университеты Австралии теперь требуют, чтобы студенты писали экзамены от руки. Это произошло после того, как студенты начали сдавать тексты, сгенерированные ChatGPT.

Подобная проблема характерна не только для зарубежных стран, но и для России. По данным издания «Новые Известия», российские школьники быстро научились пользоваться ChatGPT, и уже успешно решают школьные задания. Учителя ставят четверки и пятерки за ответы, созданные ChatGPT.


ChatGPT может решить уравнения и задачи по математике и химии за 8 класс. С ЕГЭ по математике он не справился.

Нейросеть отлично справляется с точными науками: математикой, геометрией, биологией, химией и физикой. С гуманитарными предметами чуть сложнее, потому что база ChatGPT в основном состоит из англоязычных источников и обучается нейросеть преимущественно на запросах на английском языке. Запросы на русском языке перед ответом предварительно проходят через встроенный переводчик ChatGPT.

Решение школьных задач не кажется чем-то необычным, учитывая, что ChatGPT смог получить магистерскую степень по экономике в университете Пенсильвании.

По словам профессора Кристиана Тервиша, чат-бот «потрясающе справляется с основными вопросами управления операциями и анализа процессов, включая те, которые основаны на тематических исследованиях». Единственная проблема, с которой столкнулся ChatGPT, это ответы на сложные вопросы, связанные с анализом процессов. Если бы это был настоящий экзамен, то профессор поставил бы ChatGPT оценку 4 или 4-.

◦ Назад к содержанию ◬

ChatGPT умеет писать хакерский код

Одна из главных и часто встречающихся возможностей ChatGPT — работа с кодом. Разработчики могут использовать ChatGPT для отладки кода, нейросеть сама найдет и исправит ошибки. Также он может переписать функцию с одного языка на другой.

Хакеры тестируют ChatGPT для своих целей. Исследователи безопасности Check Point Research смогли использовать ChatGPT для виртуальной фишинговой атаки, а в начале января обнаружили на одном из хакерских форумов код инфостилера на Python, который ищет на компьютере файлы Microsoft Office и PDF, а затем отправляет их на сервер владельца стилера. Исследователи пришли к выводу, что программа хоть и рабочая, но ее автор обладает минимальными навыками программирования.

Уже сейчас ChatGPT может написать простой скрипт на Python для шифрования файлов. На первый взгляд, в этом нет ничего страшного, но эксперты считают, что в будущем бот сможет написать код для удаленного шифрования чужого устройства. Аналогичным образом работают программы-вымогатели на Windows.


ChatGPT знает много языков программирования, в том числе Swift, который используется для написания iOS-приложений.

Компания Hold Security заметила, что мошенники на сайтах знакомств уже используют ChatGPT для автоматизации переписок с девушками.

Они планируют создать чат-ботов, которые будут выдавать себя за девушек, чтобы продвинуться дальше в переписках со своими жертвами, — сказал он. — Они пытаются автоматизировать пустую болтовню.

Алекс Холден, основатель Hold Security

После обычного флирта к беседе могут подключиться мошенники и вымогатели.

◦ Назад к содержанию ◬

Многие люди боятся, что ChatGPT и его аналоги будут обладать собственным разумом


ChatGPT может писать новости, но на общие темы и без деталей.

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

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

Сэм Альтман, глава OpenAI, считает, что школам придется адаптироваться к ChatGPT, и запрещать его не стоит.

Я понимаю, почему преподаватели так относятся к ChatGPT. Однако мы же адаптировались к калькуляторам и на уроках математики стали проверять другие вещи. Чат-бот, без сомнения, более тяжёлый случай, но и преимущества он даёт более значительные.

Сэм Альтман, глава OpenAI

Аналогичного мнения придерживается журналист The New York Times Кевин Руз. «При правильном подходе он может стать эффективным инструментом обучения», — пишет он в своей колонке.


Иногда ChatGPT переключается на английский язык для ответа на вопрос на русском языке.

Бот мог бы индивидуально объяснять конкретные вопросы каждому ученику, генерировать идеи для занятия в классе или выступать в качестве спарринг-партнера в дебатах.

Другие эксперты считают, что ChatGPT стоит каким-то образом маркировать свои ответы, чтобы человек без проблем понимал, что перед ним ответ от искусственного интеллекта. Однако на длинной дистанции это вряд ли сработает, потому что в будущем будет появляться больше аналогов ChatGPT. Тем не менее, сама OpenAI сделала шаг в этом направлении, и пообещала выпустить инструмент для определения эссе, написанных ChatGPT.


ChatGPT умеет писать простые сценарии для фильмов.

Что касается других сфер, то в них тоже не все так однозначно. Например, ChatGPT хоть и может написать сценарий, но человек, получивший его, не сможет оформить авторские права в США.

В 2018 году Бюро авторского права США отказало в получении авторских прав искусственному интеллекту Creativity Machine, объяснив это тем, что в работе «отсутствует человеческое авторство, необходимое для обоснования заявления об авторских правах», и что «связь между человеческим разумом и творческим самовыражением» является важнейшим элементом защиты.

Многие пользователи опасаются, что ChatGPT и его аналоги будут способствовать распространению фейков. OpenAI отмечает, что ChatGPT иногда пишет «правдоподобно звучащие, но неправильные или бессмысленные ответы».

Вот что сам бот говорит по этому поводу:

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

ChatGPT

Другая проблема заключается в том, боты станут настолько умными, что вполне могут обладать «человеческим» разумом.

ChatGPT ужасно хорош. Мы недалеки от опасно сильного ИИ.

Илон Маск

Сэм Альтман ответил Маску, что опасность искусственного интеллекта в первую очередь представляет огромный риск для кибербезопасности. По его словам, разумный ИИ может появиться в следующем десятилетии, но уже сейчас людям стоит отнестись к этому серьезно.

◦ Назад к содержанию ◬

Будущее ChatGPT пока что не определено, но компания уже монетизировала проект

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

В 2020 году Microsoft объявила о запуске суперкомпьютера, созданного специально для OpenAI. На нем как раз и обучался ChatGPT.

Суперкомпьютер включает более 285 тысяч процессорных ядер, 10 тысяч графических процессоров и скорость 400 Гбит/с для каждого сервера.

OpenAI также начала предлагать некоторым пользователям платную подписку ChatGPT Pro за $42 в месяц. Она предоставляет стабильный доступ к ChatGPT и быстрее отвечает на вопросы.

Ранее Сэм Альтман заявлял, что средняя стоимость каждого ответа измеряется «однозначными центами». Но компания тратит очень много денег на расширение инфраструктуры из-за огромного наплыва пользователей.

Другой способ монетизации ChatGPT является добавление его в другие продукты начиная от обычных чат-ботов других компаний, заканчивая многими популярными приложениями.

Microsoft уже изучает возможность внедрения ChatGPT в Word, PowerPoint и Outlook для проверки и написания текстов. В таком случае пользователи Word могли бы просто ввести идею текста, а программа бы написала его самостоятельно.

Вероятно, OpenAI найдет и другие способы заработка на ChatGPT, но сначала нужно дождаться, когда чат-бот будет работать стабильно и корректно фильтровать свои ответы.

1 Звезд2 Звезды3 Звезды4 Звезды5 Звезд (39 голосов, общий рейтинг: 4.85 из 5)

🤓 Хочешь больше? Подпишись на наш Telegram.

undefined

iPhones.ru


В ноябре 2022 года компания OpenAI запустила чат-бот ChatGPT, который сразу же произвел переполох в IT-индустрии. Он привлек внимание своими широкими возможностями. По сути ChatGPT может делать почти все что угодно: отвечать на вопросы, писать код, переводить тексты, генерировать рассказы на заданные темы, и это лишь малая часть того, на что он способен. Помимо многочисленных…

  • Искусственный интеллект,
  • Нейросети,
  • Это интересно

Илья Сидоров avatar

Илья Сидоров

@ilyasidorov

Редактор новостей и автор статей на iPhones.ru.

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

6
branches

0
tags

Code

  • Use Git or checkout with SVN using the web URL.

  • Open with GitHub Desktop

  • Download ZIP

Latest commit

Files

Permalink

Failed to load latest commit information.

Type

Name

Latest commit message

Commit time

CrosswordHelperBot

Телеграм бот (@PddTelegramBot).

Бот для проверки знаний ПДД либо в режиме тренировки, либо в режиме сдачи экзамена.

Режим тренировки

Crossword Helper demo

Режим экзамена

Crossword Helper demo

Лицензия

Apache License 2.0

Цель

Создан в целях ознакомления с python и telegram. Планирую покрыть тестами всего бота, добавить функциаонал и написать автотесты.

Мы собрали образовательные Telegram-боты, которые пригодятся школьникам и студентам: помогут проверить орфографию, усвоить английский и даже научиться решать химические реакции.

Школьникам становится все сложнее разбираться в потоках информации, и миллионы ссылок в Google поиске не всегда помогают. Выручают набирающие популярность виртуальные помощники: голосовые роботы, чат-боты и другие умные цифровые ассистенты. Они фильтруют информацию, находят правильные ответы и экономят время. Особенно удобно пользоваться чат-ботами в популярном у школьников мессенджере Telegram.

Школа «Пиксель»‎ собрала 10 полезных Telegram-ботов, которые помогут в учебе школьникам и студентам. Они ускорят поиск информации и упростят освоение учебного материала. С помощью этих ботов вы сможете проверить орфографию, найти значение слова, изучить сложные понятия из математики и программирования и даже выучить английский.

Идеальный вариант для начинающих программистов. Этот бот в течение трех месяцев будет отправлять вам уроки по программированию. Обучение делится на три части, каждый месяц вы изучаете новый язык: к примеру, первым может быть С++. А еще в бот встроен обширный справочник: здесь собраны базовые термины из программирования, объясняется разница между языками, даются примеры кода.

Пишите сочинение и ищите подходящий синоним к слову? Вам пригодится этот бот, здесь собраны более 164 тысяч слов. Просто отправьте в чат слово, а алгоритм подберет подходящие варианты синонимов.

Гид по истории России, который поможет выучить даты. Как это работает: вы можете ввести дату или диапазон дат, а бот подскажет, какие события в это время происходили. Или наоборот, введите название события и получите все даты, с которыми оно может быть связано. К примеру, на запрос «Русско-польская война» бот выдает целых 10 возможных совпадений.

Ваш личный репетитор, который поможет в изучении английского языка вне зависимости от того, какой у вас уровень. Вы можете общаться с ботом, играть в игры, изучать новые слова или практиковать грамматику. А еще бот отправляет ежедневные уроки, чтобы держать вас в тонусе. Достаточно просто отправить боту одну из команд: /Play, /New Words, /Grammar, /Lessons.

Еще один помощник по английскому языку. Бот предлагает простую систему: ежедневно посвящать 5 минут практике: изучать новые слова или играть против случайного противника. Бот работает с тремя уровнями английского: есть легкий, средний и продвинутый. Когда вы начнете изучать слова, алгоритм предложит исключить те, которые вам уже знакомы, чтобы максимально персонализировать материал и сделать обучение эффективным.

Возможно, вы слышали о технике Помодоро, которая рекомендует делить время труда на промежутки: 25 минут на работу, 5 минут на перерыв, а после четырех таких подходов нужно взять паузу на 15 минут. Такой подход должен улучшить вашу продуктивность и помочь сосредоточиться на учебе или работе. Мы нашли бот-таймер, который отсчитывает эти промежутки времени. Попробуйте воспользоваться этой методикой и решите, подходит ли она вам.

Этот бот серьезно относится к ошибкам в орфографии и непременно укажет вам на них. Просто отправьте ему любое слово на русском или английском, и он пришлет верный вариант. Забавный бонус: бота можно добавлять в групповые чаты, и он будет выявлять ошибки в сообщениях ваших друзей и объявлять о них всем участникам.

Бот для школьников, которым трудно дается химия. Здесь робот Химаша научит вас решать химические реакции. Нужно всего лишь ввести часть реакции, а бот допишет концовку.

Здесь вы можете узнать толковое значение слова. В этом чат-боте собрано много справочников: есть словари русского, английского, немецкого и украинского языков, а также Википедия, переводчики Яндекса и Google. Вы можете настроить, какие словари будут активными и какие — неактивными. Просто введите слово, а бот предложит вам самый верный вариант словаря, а также возможность посмотреть его значение во всех других словарях.

Боты отлично подходят для изучения точных наук. Например, этот чат-бот занимается факторизацией натурального числа, то есть его разложением в произведение простых множителей. Результат можно получить как в текстовом сообщении, так и в отдельном файле. Бот поддерживает целых четыре языка: русский, английский, татарский и башкирский.

За последние несколько лет появилось много ботов под самые разные задачи. Однако возможностей еще больше: попробуйте сделать своего чат-бота, чтобы автоматизировать рутинные задачи. В этом вам поможет язык программирования Python.

***

Материал подготовлен школой программирования для детей «Пиксель»‎. Мы обучаем детей 5-17 лет разработке игр, созданию веб-сайтов и др. Приходите к нам изучать язык программирования Python, создавать чат-боты, игры и много другое.

Муниципальное бюджетное общеобразовательное учреждение

«Школа № 16» города Сарова

Проект на тему:

«Создание telegram бота для подготовки к ЕГЭ по русскому языку»

Практико-ориентированный проект

Работу выполнил:

Ученик 10 «Б» класса

Ермолович Василий Сергеевич

Руководитель: Галкина Инна Владимировна,

учитель информатики

МБОУ «Школа №16»

Город Саров

2022

Оглавление

Введение 3

Основная часть 5

Теоретическая часть. 5

Практическая часть. 5

Заключение 15

Введение

С каждым годом ЕГЭ по русскому языку становится все сложнее и сложнее. Так, например, в 2022 году увеличили материал для проверки умения производить пунктуационный анализ в девятнадцатом задании и расширили спектр возможных заданий в номере шестнадцать, где требуется раскрытие скобок в предложениях, а в 2021 году усложнили девятый номер: если в предыдущие годы корневая гласная, которую следовало отнести с одной из трёх групп была в слове пропущена, то в КИМах последующих годов в словах не будет пропусков, это значит, что c этого момента выпускникам нужно самостоятельно определять корень слова и решать, есть ли в нём искомый тип гласного. В связи с этим, возрастает количество необходимых часов, уделённых на подготовку к этому экзамену.

С 01.09.20 во всех российских школах был введён новый образовательный стандарт (ФГОС) — профильного общего образования. Это привело к тому, что у многих десятиклассников и одиннадцатиклассников появились большие временные промежутки между уроками и, соответственно, свободное время, которые они вынуждены проводить в школе. А это, в свою очередь, отличная возможность для подготовки к предстоящему экзамену.

Для подготовки в школе смартфон подходит больше всего ввиду его компактности и портативности. Чтобы готовится к ЕГЭ с помощью телефона можно выбрать разные способы: приложения, браузер или бот. Приложения требуют свободное место в памяти, сайты браузера для подготовки на телефоне не удобны, ведь эти сайты предназначены для персональных компьютеров, а вот боты не обладают такими недостатками: они есть в уже установленных на большинстве телефонах мессенджерах, которые были созданы для смартфонов.

Самым подходящим мессенджером для такого бота является Telegram, так как он является самым популярным среди целевой аудитории бота — школьников.

На сегодняшний момент существует несколько telegram ботов для подготовки к единому государственному экзамену по русскому языку, и у каждого из них есть один серьёзный недостаток — невозможность выбора задания для подготовки. Эти боты случайным образом выбирают одно из двадцати шести заданий и отправляют его пользователю. Такой способ выдачи заданий нельзя назвать удобным, ведь очень часто человеку нужно подтянуть определённые номера. Также немаловажным недостатком таких ботов является недостаточная проработанность или полное отсутствие статистики правильности ответов пользователей. Только у одного уже существующего бота есть возможность просмотра своей статистики, но эта статистика хранит только общий процент верности ответов, что не позволяет проанализировать, с какими номерами возникает больше всего трудностей.

В связи с вышеописанным была поставлена цель — создание telegram бота для подготовки к ЕГЭ по русскому языку, в котором возможно выбирать номер задания для подготовки и который способен собирать, обрабатывать и выводить личную статистику верности ответов пользователя.

Для достижения этой цели были поставлены следующие задачи:

  1. Зарегистрировать бота;

  2. Заполнить базу данных;

  3. Создать базовые функции для работы бота;

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

  5. Создать систему изменения, хранения и вывода статистики

Регистрация бота необходима для того, чтобы получить доступ к серверам Telegram, которые отправляют сообщения.

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

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

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

Статистика записывается в базу данных sqlite с помощью библиотеки sqlite3, далее ее можно выводить и менять этой же библиотекой.

Основная часть Теоретическая часть.

Работу бота можно описать следующим образом: человек пишет команду “/start”, после этого, для хранения информации о нём, создаются две строки в разных таблицах базы данных. В одну из них записываются telegram ID пользователя и его текущий статус, тем самым эти два параметра связываются между собой; это необходимо для того, чтобы бот знал кому и что надо писать. В другую строку записывается тот же ID, а также начальная статистика. Статистика в чистом виде представляет собой достаточно длинную строку таблицы базы данных с количеством правильных и неправильных на каждый номер ответов, данных пользователем. Начальная статистика у всех одинаковая — строка нулей.

Каждый пользователь сначала получает статус “MAIN”, а после того, как он выбрал задачу, ему присваивается другой статус — “TASK” с номером на конце. Получив его, человеку отправляется условие случайной задачи из базы данных для выбранного им номера. Ответившему на вопрос пользователю сообщается его результат, который также записывается в базу данных, далее ему опять присваивается статус “MAIN”.

Для претворения в жизнь данных задумок были выбраны python библиотеки sqlite3 и telebot. С помощью sqlite3 выполняются специфические запросы к базе данных SQLite, а telebot способствует взаимодействию с серверами telegram.

Практическая часть.

Для регистрации и наименования бота я написал @BotFather в телеграме, этот бот выдаёт специальный “токен”, который, по сути, является паролем от вашего собственного бота. Этот набор символов нельзя никому разглашать, иначе сторонние лица получат доступ к изменению поведения бота.

После получения токена была создана база данных SQLite с помощью приложения SQLiteStudio. В этой базе данных будут хранится всё что нужно для работы бота.

Далее были созданы главные таблицы “statuses” и “stats”. В “statuses” были добавлены столбцы “id” и “status”, чтобы для каждого пользователя хранилось его текущее состояние, а в “stats” — 55 столбцов: “id”, “tc”, “ti”, “t1c”, “t1i”, “t2c”, “t2i” и так далее до 26-ого номера включительно. Название столбцов таблицы “stats” расшифровываются следующим образом: “tc” — общее количество данных пользователем правильных ответов, “ti” — общее количество неправильных; “t{номер задания}c”, “t{номер задания}i” — то же самое, но для каждого номера. Структуры таблиц представлены на рисунках 1 и 2.

Рисунок 1

Рисунок 2

Структура таблицы “stats”, ввиду её однотипности и большого объёма, была создана программным путём. Код, написанный для создания данной таблицы изображён на рисунке 3. Переменная “blank”, создаваемая на третей строке, выполняет роль шаблона. Этот шаблон используется в последующем цикле (строки 4-6): в него вставляются номер задания, обозначение правильного и неправильного номера. Затем эти шаблоны добавляются к строке “STAT_INFO”, которая была объявлена ранее. После исполнения цикла создаётся список “f” (строка 7), хранящий в себе переменную “STATS_INFO”, но с четким разделением каждого наименования столбца. В дальнейшем производится соединение с базой данных и создаётся “исполнитель”, который способствует изменению базы данных (строки 9-10). Ранее сформированный список “f” перебирается циклом (строки 12-14). Каждый объект списка последовательно используется в специальной строке, принимаемой методом “execute” нашего “исполнителя”. Эта строка — команда SQLite, которая добавляет колонку к таблице. В конце (строка 15) просто сохраняются ранее совершённые изменения.

Рисунок 3

Основные строки, импортирующие функционал библиотек и создающие экземпляры классов этих библиотек можно лицезреть на рисунке 4. “config”, импортирующийся на 3 строке, является обычным py файлом. В нём хранится токен и путь к базе данных.

Рисунок 4

Затем, для возможности регистрации в боте, была написана функция “send_welcome”. Структура и содержание функции находятся на рисунке 5. Первые две линии данной функции создают две начальные строки базы данных для пользователя. Далее этому же пользователю отправляется приветственное сообщение, объясняющее назначение бота.

Рисунок 5

После написания функции “send_welcome”, была описана функция “send_statistic”. Код функции представлен на рисунке 6. Переменная “msg”, которая объявлена на 84 строке, заполняется всей статистикой циклом (строки 91-100) и отправляется пользователю. Перед началом цикла проверяется, начинал ли пользователь выполнять задания. Если начинал, то цикл выполняется, а если нет, то отправляется соответствующее сообщение. В самом цикле есть три условных оператора: “if”, “else”, “elif”. Они нужны для предотвращения деления на ноль при расчёте статистики. Само отправление статистики и исполнение тела функции “send_statistic” происходит при использовании пользователем команды “stats”.

Рисунок 6

В “send_statistic” можно заметить написанные мной ранее функции “two_digit_percent_normalize” и “matrix_grouping”, их коды представлены на рисунках 7 и 8 соответственно.

Изображённая на рисунке 7 функция принимает на вход число с одни или двумя знаками после запятой (модуль числа меньше одного) в обычном для python формате, а возвращает его же, но в виде процентов. К примеру, из числа 0,1 получается 10. На первой строке данной функции срезается начало любого числа такого типа — “0,”, далее, исходя из длины оставшейся части числа, возвращается необходимый процент: если длина равна единице, то просто возвращается этот остаток с нулём на конце; если длина равна двум и начало остатка является нулём, то возвращается второе число остатка; если предыдущие условия не исполняются, то остаток возвращается без изменений.

Рисунок 7

“matrix_grouping” просто принимает на вход список с длиной чётной двум и возвращает этот же список, но с каждыми двумя объектами, объединёнными в другой список. Тем самым получается список со множеством других списков внутри.

Рисунок 8

Далее началось написание самой объёмной функции — “task_choice”. Эта функция отвечает за выбор номера задания. В ней описываются условия и формат отправки той или иной задачи. Большой объём данной функции объясняется разнообразностью условий заданий самого единого государственного экзамена по русскому языку. Суть работы функции можно описать следующим образом: если пользователь пишет номер от одного до 26 включительно, то его статус в таблице базы данных “stats” меняется на соответствующее значение — “TASK” и номер задания, затем с помощью команды sqlite производится запрос к базе данных для получения информации о случайном упражнении данного номера, далее эти данные вставляются в определённый шаблон для заданий заданного типа и отправляются пользователю; если же пользователь вводит что-то кроме номера задний, то ему отправляется сообщение о том, что бот ожидает от него. С фрагментом функции можно ознакомиться на рисунке 9.

Рисунок 9

Во время работы над вышеупомянутой функцией были сделаны другие — “get_status” и “status_change”. Эти функции представлены на рисунках 10 и 11 соответственно.

“get_status” просто возвращает статус определённого пользователя, принимая в качестве аргумента его id. Функция нужна для того, чтобы сделать код более понятным и компактным.

Рисунок 10

“status_change” меняет статус пользователя, принимая в качестве аргументов новый статус и id. По сути, функция просто сокращает длину кода и делает его более читабельным.

Рисунок 11

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

Первым функционирующим номером в боте был номер четыре — задание на ударения. Для заполнения базы данных был взят текст с сайта https://ctege.info/russkiy-yazyik-teoriya-ege/orfoepicheskiy-slovnik-minimum-ege-po-russkomu-yazyiku.html. Этот текст был продублирован в текстовый редактор, затем считан, обработан и вставлен в таблицу sqlite-документа. Для этого была написана программа, фрагмент которой представлен на рисунке 12. Переменная “b” хранит ссылку на список строк скопированного, необработанного текста. В этом тексте есть как и строки с одним словом, так и с двумя через тире. Условные операторы в коде предназначены как раз для того, чтобы каждое из этих слов добавлялось в базу данных.

Рисунок 12

Другой фрагмент данной программы находится на рисунке 13. Это функция, которая определяет ударный слог введённого в неё слова, при условии, что ударная гласная слова находится в верхнем регистре. Осуществляется это посредством определения количества безударных гласных перед ударным.

Рисунок 13

После заполнения необходимых для номера данных, нужно было добавить в ранее упомянутую функцию “task_choice” условия перехода пользователя к заданию четыре. Таким условием является получение от занимающегося сообщения “4”. Если текущий статус пользователя “MAIN”, и он пишет боту цифру четыре, то начинает исполняться фрагмент кода, изображённый на рисунке 14. На 135 строке используется ранее описанная функция “status_change”, меняющая статус на “TASK4”. Далее осуществляется запрос случайного элемента базы данных, информация о котором хранится в переменной “task_data”. В данном случае в “task_data” находятся слово и номер ударного слога. Затем пользователю отправляется шаблон с вставленным в него словом: “На какой по счету слог падает ударение в слове {место для слова}?”.

Рисунок 14

После изменения статуса поведение бота меняется. Выполняемый затем код находится на рисунке 15. На первой строке фрагмента объявляется статус, при котором для обработки ответов пользователя будет использоваться функция ниже. Далее проверяется введённый боту ответ. Осуществляется это посредством обычного сравнения текста сообщения и верного ответа. Если ответ пользователя неправильный, то он об этом оповещается и информация об этой ошибке записывается в базу данных с помощью “statistic_update”. Если же ответ совпадает с верным в таблице, то пользователь также оповещается и его статистика обновляется. После внесения изменений в таблицу со статистикой, статус отправителя меняется на первоначальный.

Рисунок 15

Следующий работающим упражнением был пятый номер из ЕГЭ по русскому языку, задание с паронимами. Информация для него была взята с сайта https://paronymonline.ru/ege.html. Так же, как и с номером четыре, информация для номера была занесена в базу данных программным путём. Фрагмент кода написанной для этого программы находится на рисунке 16. Изменённый для удобства текст из источника хранится в переменной “red_inf”. “red_inf” — список, содержащуюся им информацию можно описать следующим образом: первый его элемент — это строка с двумя или более словами через дефис — самими паронимами; следующие элементы, количество которых равняется количеству слов первого элемента — определения для паронимов. Этот список перебирается последовательно двумя циклами (строки 13-15 и 19-20). В первом цикле заполняется словарь “gr”, который нужен для того, чтобы знать сколько слов хранится в элементе, перечисляющем паронимы. Во втором цикле производится непосредственная работа с базой данных. Наличие в перебираемом элементе знака “-” свидетельствует о том, что начинается следующая связка паронимов; а значит, что нужно добавить в базу данных информацию о предыдущей, если же дефиса нет, то продолжается заполнение предыдущей связки.

Рисунок 16

Структура таблицы пятого номера представлена на рисунке 17.

Рисунок 17

Структура пятого номера является самой простой и это связано с тем, что при настройке этого задания было решено попробовать сделать задания более случайными и разнообразными. Формулировка задания в боте отличается от формулировки в едином государственном экзамене по русскому языку, она больше нацелена на понимание отличий паронимов одного типа: в ЕГЭ нужно просто заменить неправильно употреблённое слово, в моём же боте пользователю нужно сопоставить определения с похожими словами. Фрагмент кода, отвечающего за переход к номеру пять представлен на рисунке 18. Весь этот код можно разделить на три части: обработка информации из базы данных (строки 141-152), случайное распределение слов и определений (строки 153-169), составление верного ответа для перемешанных слов и определений (строки 170-173). Для перетасовки в этом номере была частично импортирована библиотека “random”.

Рисунок 18

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

Рисунок 19

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

После окончательной настройки пятого задания добавление номеров было последовательным, то есть следующим был первый. Таблица для этого номера заполнялась вручную, и формулировка была точно такой же, как и в ЕГЭ по русскому языку. В базу данных добавлялись не целые условия, они делились на колонки. В данном случае это были “text”, “test”, “answers”. Это было сделано для того, чтобы не заполнять таблицы лишней информацией, одинаковой для всех задач данного типа. Структура этой таблицы представлена на рисунке 20.

Рисунок 20

Условие перехода к первому номеру, то есть фрагмент кода за это отвечающий, находится на рисунке 21. Сильных отличий от переходника к четвёртому номеру тут нет, только шаблон условия задачи (строки 114-118), который подстроен под первый номер.

Рисунок 21

Ну, в принципе, как и с условием перехода, обработчик ответов первого номера схож с обработчиком четвёртого. Убедиться в этом можно, посмотрев на рисунок 22. Фактически, отличается он только тем, что вместо четвёрочек стоят единички и что изменён индекс ответа в полученном ответе базы данных.

Рисунок 22

Дальнейшая работа над ботом была более-менее стандартизирована: таблицы для заданий заполнялись вручную, переходники к номеру отличались только условиями задач, а обработчики так и вообще циферками. Исключения были только у номеров с неоднозначностью ответов. Под неоднозначностью подразумевается наличие разных правильных ответов. Неоднозначность, например, есть во втором номере ЕГЭ по русскому языку, в котором нужно подставить недостающую частицу.

Для обработки неоднозначных ответов была написана специальная функция “is_all_in”. Код функции расположен на рисунке 23. Суть функции проста — сообщить, все ли элементы первого списка есть во втором. Для осуществления задумки была применена рекурсия, то есть функция вызывала сама себя. Первым условием было полное сходство списков. Если списки равны, то не имеет смысла их проверять — элементы первого схожи со вторым. Иначе начинал исполнение блок с рекурсией. Выходом из неё были условия на строке 34 и 39, а рекурсивным случаем — строка 36. Функция последовательно проверяла последние элементы первого листа: если элемент был во втором списке, то рекурсия продолжалась, если не было — прерывалась с последующим выводом “False”, если же первый список был пуст, то выводилось “True”.

Рисунок 23

Отличие обработчиков заданий с неоднозначными ответами было только одно — использование “is_all_in” для сравнения текста сообщения, полученного от пользователя, и ответа, хранящегося в базе данных.

Однотипное добавление номеров продолжалось до 22 задания. Именно в нём произошла ошибка, оповещение о который было таким — “(__init__.py:688 MainThread) ERROR — TeleBot: «A request to the Telegram API was unsuccessful. Error code: 400. Description: Bad Request: message is too long»”. Её причина указана в конце — “message is too long”, что переводится как “сообщение слишком длинное”. Это неудивительно, ведь ограничение по длине сообщения в Telegram — 4096 символов, когда в условии двадцать второго номера единого государственного экзамена по русскому языку находится достаточно объёмный фрагмент текста (около 4100 символов).

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

Чтобы вставлять текст в картинку была написана программа, фрагмент которой изображён на рисунке 24. Для работы с изображениями использовалась библиотека “PIL”. Также была написана функция “add_line_breaks”, которая переносила строки, исходя из размера изображения.

Рисунок 24

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

Другим более удачным решением этой проблемы стало обычное разделение сообщения на две последовательно отправляемые части. Для этого была написана функция “dividing_msg_into_parts”, представленная на рисунке 25. Она просто делит текст на две примерно равные в данном случае части и выводит их в виде кортежа.

Рисунок 25

Функция применяется в обработчиках от двадцать второго до двадцать шестого заданий. Пример использования “dividing_msg_into_parts” представлен на рисунке 26.

Рисунок 26.

Заключение

В результате проделанной работы были выполнены все поставленные задачи и, соответственно, достигнута цель — создание telegram бота для подготовки к ЕГЭ по русскому языку, в котором возможно выбирать номер задания для подготовки и который способен собирать, обрабатывать и выводить личную статистику верности ответов пользователя.

Понравилась статья? Поделить с друзьями:
  • Бот для проверки сочинений
  • Боязнь высоты сочинение
  • Боюсь экзаменов в университете
  • Боюсь экзамена по вождению что делать
  • Боюсь экзамена по анатомии