Что нового в PyCharm 2025.1

Объединение редакций, бесплатный доступ к ИИ, публичная версия Junie, запуск Cadence, улучшения для Jupyter, поддержка Hatch и реализация Data Wrangler.

Главное в релизе

Новый единый PyCharm: месяц Pro-функций бесплатно

Мы объединили две редакции PyCharm в один продукт. Основные функции, включая поддержку Jupyter-ноутбуков, будут бесплатными, а подписка Pro откроет дополнительные инструменты для профессиональной разработки. С выходом версии 2025.1 все пользователи получают бесплатный доступ к Pro на один месяц, чтобы попробовать расширенные возможности. После пробного периода вы сможете выбрать: оформить подписку или продолжить пользоваться бесплатными функциями. Подробнее об изменениях читайте в нашем блоге.

Junie — ваш персональный агент для работы с кодом Pro

Junie, ИИ-агент от JetBrains, теперь доступен в PyCharm через JetBrains AI. Junie самостоятельно продумывает, пишет, улучшает и тестирует код, делая разработку более эффективной и приятной. Junie берет на себя рутинные задачи, такие как реструктуризация кода, создание тестов и улучшения, чтобы вы могли сосредоточиться на более сложных задачах и инновациях.

PyCharm goes AI

Большое обновление JetBrains AI: теперь AI Assistant и Junie входят в одну подписку. В этой версии все ИИ-функции в JetBrains IDE стали бесплатными. Некоторые из них, например автодополнение кода и поддержка локальных моделей, предоставляются без ограничений, а другие — с лимитом по кредитам. Мы также вводим новую систему подписки, которая упрощает масштабирование с уровнями AI Pro и AI Ultimate.

Cadence — запуск ML-кода в облаке без лишних хлопот Pro

Теперь вы можете запускать ML-скрипты на мощных облачных машинах прямо из PyCharm — быстро и без сложной настройки. Плагин Cadence упрощает рабочий процесс, позволяя вам сосредоточиться на коде и при этом использовать масштабируемые облачные ресурсы.

Подробнее о Cadence

Data Wrangler Pro

Теперь в PyCharm есть Data Wrangler — удобный инструмент для работы с данными на Python. Просматривайте и анализируйте данные, изучайте статистику по столбцам и визуализации, автоматически генерируйте код Python для преобразований.

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

Подробнее о Data Wrangler

Ячейки SQL в ноутбуках Pro

В PyCharm 2025.1 появились ячейки SQL. Этот новый тип ячеек позволяет выполнять запросы к базам данных, датафреймам и прикрепленным CSV-файлам в Jupyter-ноутбуках, а также автоматически сохранять результаты запросов в pandas DataFrame.

Поддержка Hatch

Мы добавили поддержку Hatch — современного диспетчера проектов Python с возможностью расширения от Python Packaging Authority (PyPA). Он автоматически переносит настройки из setuptools, создает изолированные окружения, запускает сборки и публикует их, облегчая работу с пакетами Python.

В PyCharm теперь можно создавать проекты под управлением Hatch. IDE автоматически распознает такие проекты при импорте с локальной машины и из удаленных источников.

Jupyter-ноутбуки

Улучшенная поддержка Jupyter-ноутбуков

Работать с Jupyter в PyCharm стало еще удобнее. В новой версии мы добавили следующие возможности:

  • запуск серверов Jupyter с помощью интерпретатора uv, как расширение существующей поддержки uv;
  • перетаскивание ячеек Jupyter для изменения их порядка с помощью панели на полях;
  • опция Commit without outputs, которая очищает результаты выполнения ячеек перед коммитом (доступна в меню по нажатию на значок шестеренки);
  • настраиваемые цвета для фона ноутбука, ячеек с кодом, выделенных строк и границ ячеек;
  • панель управления ячейками с действиями для каждого типа ячейки; Pro
  • новые статусы ячеек Crashed и Queued в представлении Structure;
  • плавающая панель форматирования, которая появляется при выделении текста в ячейках Markdown, а также более аккуратный вид пустых ячеек;
  • кнопка Shut down Kernel на основной панели инструментов.

Улучшенная настройка сервера Jupyter Pro

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

Другие улучшения:

  • поддержка подключения к удаленным серверам через прокси;
  • новая поддержка удаленных подключений AWS SageMaker;
  • улучшенная файловая система для удаленных серверов Jupyter;
  • возможность запуска ноутбуков на Jupyter-серверах Kaggle.

Улучшения отладчика Jupyter

  • Добавлена функция Run to caret.
  • Теперь PyCharm позволяет отлаживать ячейки Jupyter построчно, автоматически ставя точку останова на первой строке ячейки, если другие точки не установлены.
  • Исправлено много ошибок.
  • Поддержка отладки и представления Variables для удаленных экземпляров Jupyter. Pro

Data Science

Переформатирование SQL, встроенного в Python Pro

В версии 2025.1 можно автоматически форматировать SQL-код, встроенный в Python-скрипты, в соответствии с заданным стилем. Это упрощает работу и помогает поддерживать чистоту и единообразие кода.

Быстрое открытие новых вкладок в Data View Pro

Теперь вы можете легко открывать новые вкладки в окне Data View — просто нажмите кнопку + рядом с уже открытыми вкладками. Это удобно, если нужно быстро посмотреть содержимое NumPy-массивов, pandas DataFrame и других типов данных — достаточно ввести имя переменной или выражение.

Просмотр массивов NumPy и тензоров в виде изображений

Во время отладки приложений, работающих с изображениями, для просмотра последних в отладчике можно использовать действие View as Image. При этом не придется писать новый код. Эта функция поддерживает NumPy-массивы и библиотеки: PyTorch, TensorFlow, Matplotlib, Seaborn, OpenCV, Pillow, ImageIO и scikit-image. Чтобы использовать его, в режиме отладки нажмите правой кнопкой на переменной и выберите View as Image.

Инструменты для работы с базами данных

Уровни интроспекции для MySQL и MariaDB Pro

Мы продолжаем работать над повышением производительности интроспекции. В PyCharm появилась поддержка уровней интроспекции для MySQL и MariaDB. Теперь объем загружаемой метаинформации зависит от размера базы: если она большая, загружается только самое необходимое. Это заметно сокращает время интроспекции и позволяет приступить к работе с новыми подключенными источниками данных практически сразу. Подробнее об уровнях интроспекции и о том, как их настроить, читайте на этой странице.

Поддержка инструмента объектно-реляционного сопоставления SQLAlchemy

В этой версии улучшена интеграция PyCharm с SQLAlchemy: теперь IDE автоматически распознает типы объектов базы данных. Благодаря этому автодополнение для столбцов и результатов запросов стало точнее, что заметно упрощает работу с проектами на ORM.

Django Pro

Поддержка подсказок типов в request.user

Новая версия PyCharm автоматически применяет корректные подсказки типов для request.user, исходя из AUTH_USER_MODEL, если эта информация указана в файле настроек Django. В результате улучшается качество автодополнения кода и проверок типов для пользовательских моделей.

Поддержка объявлений маршрутов для фреймворка Django Ninja

Теперь в проектах Django можно объявлять конечные точки с помощью фреймворка Django Ninja. PyCharm распознает такие маршруты и отображает их в окне Endpoints, упрощая работу над бэкендом и фулстек-разработку в соответствии с лучшими практиками.

AI Assistant

Больше моделей в чате

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

  • Claude 3.7 Sonnet
  • OpenAI GPT-4.1 (скоро)
  • Gemini 2.0 Flash

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

Офлайн-режим: работа с локальными моделями

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

Изменение нескольких файлов в режиме редактирования

Отредактировать сразу несколько файлов стало гораздо проще. Теперь AI Assistant поддерживает мультифайловые правки прямо в чате, предлагая изменения по всему проекту. С помощью генерации с дополненной выборкой (retrieval-augmented generation, RAG) он находит самые релевантные файлы, позволяя внести нужные правки за одно действие.

Генерация быстрых диаграмм в таблицах Jupyter с помощью ИИ Pro

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

Улучшенная генерация кода в Jupyter-ноутбуках Pro

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

Исключение файлов из контекста AI Assistant

Вы можете сделать определенные файлы или папки недоступными для AI Assistant, с помощью файла .aiignore. В результате JetBrains AI не будет видеть определенные файлы или папки и не будет обрабатывать содержащуюся там конфиденциальную информацию.

Поиск в сети из чата

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

Применение кода из чата

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

ИИ лучше учитывает контекст

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

Взаимодействие с IDE

Новая архитектура терминала бета-версия

В версии 2025.1 переработанная архитектура терминала доступна в режиме бета-версии. Теперь в основе терминала лежит стабильное и соответствующее требованиям стандарта ядро, а для рендеринга интерфейса используется редактор IDE. Эти изменения позволили нам добавить новые функции, одновременно обеспечив совместимость и производительность на разных локальных и удаленных платформах. Подробнее о планах и ходе работы читайте в нашем блоге.

Нативные диалоги для работы с файлами на Windows

Теперь PyCharm по умолчанию использует нативные диалоги Windows для работы с файлами, а не собственную реализацию. Это значит, что при открытии или сохранении файлов интерфейс будет выглядеть так, как в других приложениях Windows. Если вы предпочитаете предыдущий вариант, к нему можно вернуться в настройках Advanced Settings | User Interface.

Быстрое создание файлов в окне Project

Создавать файлы стало проще: нажмите + в окне Project , чтобы открыть список шаблонов, и используйте поиск, чтобы быстро найти нужный тип файла.

Автоматическое обновление плагинов

Теперь в PyCharm можно настроить автоматическое обновление плагинов в фоновом режиме. Доступные обновления будут загружаться и применяться при следующем запуске IDE без дополнительных уведомлений. Включить эту функцию можно в диалоге обновления, поставив флажок Enable auto-update, или в меню File | Settings | Appearance & Behavior | System Settings | Updates.

Экспорт записей Kafka в форматы JSON, CSV и TSV Pro

В PyCharm появилась возможность экспортировать записи Kafka напрямую в форматы JSON, CSV и TSV. Это упрощает анализ и обмен потоковыми данными. IDE может сохранить всю информацию о записи, включая тему, метку времени, ключ, значение, партицию и смещение, в распространенных форматах. Это помогает быстрее находить ошибки, проверять целостность данных, проводить глубокий анализ и делиться информацией с командой. Новая функция делает работу с Kafka прозрачнее и эффективнее.

Улучшенный интерфейс для сгенерированных HTTP-запросов Pro

Теперь HTTP-клиент открывает HTTP-запросы, сгенерированные из кода, в правой панели редактора в режиме Split, так что их больше не надо проверять в отдельной вкладке.

Системы контроля версий

Информация о коммите на панели Diff

Теперь в окне сравнения (diff) можно сразу увидеть сведения о коммите: сообщение, автора, дату и время, а также полный хеш. Это упрощает понимание истории файла и помогает быстрее разобраться в изменениях.

Запуск инструментов для проверок перед коммитом

Теперь можно запускать любые инструменты для проверки кода перед коммитом — вместе с инспекциями и автоформатированием. Настроить собственные проверки можно через диалог Run Configuration. Это помогает выявлять потенциальные проблемы заранее и следить за тем, что ваш код соответствует стандартам проекта до коммита.

Отключение запущенных Git-хуков коммита

Теперь в IDE появилась опция, позволяющая отключить выполнение Git-хуков при коммите. Раньше хуки запускались автоматически, что не всегда было удобно. С этим обновлением вы можете легко пропустить их и получить больше контроля над процессом коммита.

Другие возможности

PyPackage: установка отсутствующих пакетов из консоли

Если при попытке выполнить код IDE обнаружит, что отсутствуют необходимые пакеты, она предложит их установить прямо из консоли Python, окна Run или окна Debug, тем самым упрощая работу.

Конечные точки FastAPI: поддержка mount  Pro

В новой версии окно Endpoints поддерживает монтирование приложений, в том числе Django и Flask, в FastAPI. Пути монтирования определяются автоматически и отображаются в окне Endpoints с соответствующими префиксами, чтобы вам было проще управлять проектами с несколькими приложениями.

Исправленные ошибки

  • [PY-54850] Требование к пакету не выполнено, если имя пакета отличается от указанного в файле требований с учетом использованных точек, дефисов и подчеркиваний.
  • [PY-56935] Функции, измененные с использованием ParamSpec, выдают ложные сообщения об отсутствующих аргументах со значениями по умолчанию.
  • [PY-76059] Выводится ложное предупреждение Incorrect Type для asdict и dataclass.
  • [PY-34394] Ошибка Unresolved attribute reference возникает для AUTH_USER_MODEL.
  • [PY-73050] Тип возвращаемого значения open("file.txt", "r") должен выводиться как TextIOWrapper, а не TextIO.
  • [PY-75788] Администратор Django не находит классы моделей через admin.site.register, только через decorator @admin.register.
  • [PY-65326] Окно Django Structure не отображает модели из подпакетов, если при импорте использовались подстановочные знаки.