Как стать автором
Поиск
Написать публикацию
Обновить
14
3
Игорь @iik_812

Team Lead / Java developer

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

Semantic Error Correction Loop (SECL): самоисправляющиеся LLM-пайплайны с понятием доверия к контексту

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров2.1K

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

В своей практике я столкнулся с необходимостью повышения качества генерации без постоянного ручного контроля и затратных этапов дообучения. Это подтолкнуло меня к идее нового подхода — Semantic Error Correction Loop (SECL), представляющего собой само исправляющийся итеративный пайплайн с внутренней оценкой качества и семантической уверенности.

Читать далее

Создание и использование оберток (wrappers) в Java: подробный разбор

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров3.6K

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

Читать далее

Интеграция предобученных нейросетей в Java-проектах: практический пример

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров2.4K

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

В данной статье я привожу практический пример интеграции с предобученной моделью, так рассмотрим задачу извлечения именованных сущностей (NER) — автоматического определения имен, мест или дат из текста. Мы будем использовать предобученную модель BERT, выполненную через библиотеку ONNX Runtime.

Вообще существует множество предобученных моделей для извлечения именованных сущностей (NER) и других задач NLP. Вот некоторые из них:

Читать далее

Хэши: виды, применение и примеры на Java

Время на прочтение7 мин
Количество просмотров7.7K

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

Читать далее

Применимость Java в искусственном интеллекте: 7 библиотек для нейросетей, которые стоит изучить

Уровень сложностиПростой
Время на прочтение12 мин
Количество просмотров3.9K

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

Читать далее

Войти и не выйти из IT: советы для начинающих разработчиков

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров1.5K

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

Читать далее

Генетический алгоритм: природа в действии для оптимизации сложных задач (c примером на java)

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров3.1K

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

Алгоритм основан на модели эволюции Дарвина. Его ключевые компоненты:

Читать далее

От подвала до облака: как обучить нейросеть в домашних условиях

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров5.4K

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

Читать далее

Создание плагина для IntelliJ IDE с подключением GigaChat для проверки качества кода

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров4K

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

Читать далее

Пишем простую нейронку для адаптивного управления JVM: обучение и применение многослойной нейронной сети на Java

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров1.1K

Данная статья является описанием моего эксперимента передать управление ресурсами JVM нейронной сети, которая будет предсказывать необходимость управления ресурсами на основе текущих данных, таких как загрузка CPU и память.

Читать далее

Подключение к GigaChat API на Java: пошаговое руководство

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров4.3K

Подключение к GigaChat API на Java: пошаговое руководство.

В этой статье я расскажу о том, как подключиться к API GigaChat в IntelliJ IDEA на Java и настроить безопасное соединение с использованием SSL-сертификатов, чтобы получать ответы от GigaChat в своем приложении.

Читать далее

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

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров22K

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

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

Объективно, где мы используем в работе алгоритмы?

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

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

Читать далее

Собственные исключения в Java: как управлять ошибками в вашем приложении

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров19K

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

Читать далее

Parallel Stream — не панацея или используй с умом (tutorial для начинающих)

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров24K

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

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

Читать далее

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность

Специализация

Backend Developer
Java
PostgreSQL
Spring Boot
Hibernate
Kubernetes
CI/CD
Apache Kafka