Skip to main content

Personal EGE informatics templates by Wilgelmzwer

Project description

wilgelmzwerege

wilgelmzwerege — личная Python-библиотека шаблонов для решения задач ЕГЭ по информатике. Создана для экспериментов. По возникающим вопросам можно никуда не писать или ищите автора по названию библиотеки и пишите ему на почту.

Основная идея проекта: быстрые локальные шаблоны + личный AI-режим через приватный сервер Wege AI. Локальные шаблоны работают без интернета, без токена и без обращения к ИИ.

Актуальная версия этого архива: 0.3.5.

Возможности

  • шаблоны решений ЕГЭ №1–27;
  • запуск из Python и из консоли;
  • поиск по шаблонам;
  • сохранение шаблона в файл;
  • AI-запрос по тексту;
  • AI-запрос с локальным файлом данных;
  • OCR/отладка распознавания условия по изображению;
  • AI-запрос по изображению/скриншоту;
  • AI-запрос по изображению и одному файлу данных;
  • AI-запрос по изображению и нескольким файлам данных, например для ЕГЭ №27 с файлами A и B.

Установка

pip install wilgelmzwerege

Обновление:

pip install --upgrade wilgelmzwerege

На Windows иногда удобнее запускать не командой wege, а через модуль:

python -m wilgelmzwerege list
python -m wilgelmzwerege ege13

Локальные шаблоны

Python

from wilgelmzwerege import wege

wege("ege13")
wege("ege24")
wege("ege27")

Функция wege() печатает шаблон на экран. Поэтому обычно не нужно писать print(wege("ege13")), иначе после шаблона дополнительно появится None.

Консоль

python -m wilgelmzwerege list
python -m wilgelmzwerege ege13
python -m wilgelmzwerege show ege24
python -m wilgelmzwerege save ege24
python -m wilgelmzwerege search ip
python -m wilgelmzwerege info ege13
python -m wilgelmzwerege version

Если команда wege доступна в PATH, можно короче:

wege list
wege ege13
wege search ip

AI-режим по тексту

AI-режим требует личный токен доступа к приватному серверу Wege AI.

Python

from wilgelmzwerege import wegeii

wegeii("ваш_токен", "Реши задачу ЕГЭ по информатике")

С явным типом задания:

from wilgelmzwerege import wegeii

wegeii("ваш_токен", "ege24", "Реши задачу №24")

Получить ответ как строку:

from wilgelmzwerege import wegeii

answer = wegeii(
    "ваш_токен",
    "Реши задачу ЕГЭ по информатике",
    print_answer=False,
)

print(answer)

Консоль

python -m wilgelmzwerege ai ваш_токен "Реши задачу ЕГЭ по информатике"
python -m wilgelmzwerege ai ваш_токен --task ege24 "Реши задачу №24"

AI-режим с локальным файлом данных

Подходит для задач, где есть .txt, .csv, .xlsx или другой файл данных.

Python

from wilgelmzwerege import wegeii

wegeii(
    "ваш_токен",
    "Реши задачу 24 по приложенному файлу",
    file_path="24.txt",
    task_type="ege24",
)

Старый короткий стиль тоже поддерживается:

from wilgelmzwerege import wegeii

wegeii("ваш_токен", "ege24", "Реши задачу 24", file_path="24.txt")

Консоль

python -m wilgelmzwerege ai-file ваш_токен 24.txt "Реши задачу 24 по файлу"
python -m wilgelmzwerege ai-file ваш_токен 24.txt --task ege24 "Реши задачу 24 по файлу"

OCR: отладка распознавания изображения

Команда debug-ocr нужна, чтобы посмотреть, как сервер распознал текст условия.

python -m wilgelmzwerege debug-ocr ваш_токен task.png

Для скрина с таблицей можно включить табличную OCR-модель:

python -m wilgelmzwerege debug-ocr ваш_токен table.png --table

В Python:

from wilgelmzwerege import wegeii_ocr

wegeii_ocr("ваш_токен", "task.png")
wegeii_ocr("ваш_токен", "table.png", ocr_model="table")

AI по изображению/скриншоту

Подходит, если условие задачи на картинке или скриншоте.

Python

from wilgelmzwerege import wegeii_image

wegeii_image("ваш_токен", "task.png")
wegeii_image("ваш_токен", "ege26", "task.png")
wegeii_image("ваш_токен", "task.png", "Реши задачу, дай Python-код")

Можно явно указать тип задания и обойти кэш при тестировании:

from wilgelmzwerege import wegeii_image

wegeii_image(
    "ваш_токен",
    "task.png",
    task_type="ege26",
    fresh=True,
)

Консоль

python -m wilgelmzwerege ai-image ваш_токен task.png
python -m wilgelmzwerege ai-image ваш_токен task.png --task ege26
python -m wilgelmzwerege ai-image ваш_токен task.png "Реши задачу, дай код"
python -m wilgelmzwerege ai-image ваш_токен task.png --task ege26 --fresh

AI по изображению и одному файлу

Подходит для задач №24, №26 и других, где условие на скрине, а данные в отдельном файле.

Python

from wilgelmzwerege import wegeii_image_file

wegeii_image_file("ваш_токен", "task.png", "26-174.txt")
wegeii_image_file("ваш_токен", "ege26", "task.png", "26-174.txt")

С параметрами:

from wilgelmzwerege import wegeii_image_file

wegeii_image_file(
    "ваш_токен",
    "task.png",
    "26-174.txt",
    task_type="ege26",
    fresh=True,
)

Консоль

python -m wilgelmzwerege ai-image-file ваш_токен task.png 26-174.txt
python -m wilgelmzwerege ai-image-file ваш_токен task.png 26-174.txt --task ege26
python -m wilgelmzwerege ai-image-file ваш_токен task.png 26-174.txt --task ege26 --fresh

AI по изображению и нескольким файлам

Главный пример — ЕГЭ №27, где есть файл A и файл B.

Python

from wilgelmzwerege import wegeii_image_files

wegeii_image_files(
    "ваш_токен",
    "task27.png",
    ["27_A.txt", "27_B.txt"],
    task_type="ege27",
)

С новым стилем:

from wilgelmzwerege import wegeii_image_files

wegeii_image_files(
    "ваш_токен",
    "ege27",
    "task27.png",
    ["27_A.txt", "27_B.txt"],
    fresh=True,
)

Консоль

python -m wilgelmzwerege ai-image-files ваш_токен task27.png 27_A.txt 27_B.txt --task ege27
python -m wilgelmzwerege ai-image-files ваш_токен task27.png 27_A.txt 27_B.txt --task ege27 --fresh

Если нужен дополнительный запрос, его можно добавить после файлов:

python -m wilgelmzwerege ai-image-files ваш_токен task27.png 27_A.txt 27_B.txt --task ege27 --fresh "Реши строго, не выдумывай разделители"

Флаги CLI

--task ege24 — явно сообщает серверу тип задания. Поддерживаются ege1ege27, а также ege19, ege20, ege21, которые приводятся к ege192021.

--fresh — добавляет уникальную метку в запрос, чтобы при тестировании не получить старый ответ из серверного кэша.

--table — использует табличную OCR-модель для скринов с таблицами.

--page — явно использует обычную OCR-модель страницы.

Список шаблонов

Библиотека покрывает задания:

ege1, ege2, ege3, ege4, ege5, ege6, ege7, ege8, ege9,
ege10, ege11, ege12, ege13, ege14, ege15, ege16, ege17,
ege18, ege192021, ege22, ege23, ege24, ege25, ege26, ege27

Для заданий 19–21 используется общий шаблон:

python -m wilgelmzwerege ege192021

Также доступны алиасы:

python -m wilgelmzwerege ege19
python -m wilgelmzwerege ege20
python -m wilgelmzwerege ege21

Безопасность

YandexGPT API key и OCR key не хранятся внутри библиотеки. Клиентский пакет отправляет запрос на приватный сервер автора, а сервер уже обращается к YandexGPT/OCR.

Не публикуйте личные токены Wege AI в открытых репозиториях, скриншотах и логах.

Проверка установки

python -m wilgelmzwerege version
python -m wilgelmzwerege help
python -m wilgelmzwerege list
python -m wilgelmzwerege ege13

Ожидаемо:

wilgelmzwerege 0.3.5

Для разработки

Проверка компиляции:

python -m compileall -q wilgelmzwerege

Сборка пакета:

python -m build
python -m twine check dist/*

Публикация на PyPI выполняется только после локальной проверки:

python -m twine upload dist/*

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

wilgelmzwerege-0.3.5.tar.gz (60.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

wilgelmzwerege-0.3.5-py3-none-any.whl (76.8 kB view details)

Uploaded Python 3

File details

Details for the file wilgelmzwerege-0.3.5.tar.gz.

File metadata

  • Download URL: wilgelmzwerege-0.3.5.tar.gz
  • Upload date:
  • Size: 60.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for wilgelmzwerege-0.3.5.tar.gz
Algorithm Hash digest
SHA256 890078988009133a8ec900af4b4fbe633eab1e841df8b1ef5830b786a330ac24
MD5 b237b0c24070370feff4cd8ec1468bd1
BLAKE2b-256 20478a4d61700e52115fa3c9b1a1d99001406e0125e5336755bf2a0b294ffa58

See more details on using hashes here.

File details

Details for the file wilgelmzwerege-0.3.5-py3-none-any.whl.

File metadata

  • Download URL: wilgelmzwerege-0.3.5-py3-none-any.whl
  • Upload date:
  • Size: 76.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for wilgelmzwerege-0.3.5-py3-none-any.whl
Algorithm Hash digest
SHA256 76a67aedc8acec4f927bdc461868c9aefd87bf2c0a5ff3e3a58fcb488e4a65a1
MD5 729bab4e5145ba9cfc48f6f428d72c90
BLAKE2b-256 4f460dcd9fc59f67d3e6395dd965203c34fcdf9c34f40be1c85420cfb142902a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page