Java для разработки приложений для агентского искусственного интеллекта: что вам нужно знать

Red Hat спонсировала этот пост.

За прошедший год мир программного обеспечения был изменен в результате роста агентского искусственного интеллекта-приложений, основанных на интеллектуальных, автономных агентах, способных к принятию решений, рассуждениям и длительным циклам взаимодействия. Этот новый класс программного обеспечения быстро становится мейнстримом, от AI-Native Backends.

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

Предположим, вы разработчик Java, задаваясь вопросом, как участвовать в этом смене, не отказавшись от своего стека. Хорошая новость в том, что Ява не только жизнеспособен для агентского ИИ — это становится неотъемлемой частью этого.

В этой статье я исследую:

  • Почему Java хорошо подходит для агентского искусственного интеллекта
  • Что отличается в агентских приложениях
  • Ключевые проекты с открытым исходным кодом, управляя этой трансформацией, включая Протокол контекста модели (MCP), Langchain4j, Quarkus и OpenElemetry (OTEL)
  • Высокий взгляд на то, как начать

Почему Java? Почему сейчас?

Agentic AI-приложения являются долгоживущими, государственными и часто включают оркестровку между API, моделями крупных языков (LLMS), базами данных и взаимодействием с пользователем. Они требуют:

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

Это именно те области, где отличается Java. Современная Java с развивающимися функциями JDK (например, виртуальные потоки), облачные нативные рамки и зрелые инструменты могут создавать быстрое, обслуживание и безопасное программное обеспечение AI.

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

Что отличает агентские приложения ИИ?

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

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

Технический стек: MCP, Langchain4j, Quarkus и Openteremtery

Несколько проектов с открытым исходным кодом закладывают основу для агента AI на базе Java. Вот посмотрите на четырех ключевых игроков:

1. MCP: агентское время выполнения для приложений LLM

MCP-это новый проект с открытым исходным кодом от сообщества AI-Community App, предлагая время выполнения, специально разработанное для агентов. Его основное внимание уделяется обеспечению создания приложений LLM, которые являются постоянными, композиционными и легко проверенными.

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

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

2. Langchain4j: Языковая модель оркестровки для Java

Вдохновленный оригинальным проектом Langchain в Python, Langchain4J приносит примитивы оркестровки LLM в Java. Он абстрагирует LLMS и обеспечивает важные строительные блоки. Эти строительные блоки облегчают создание агентов и инструментов, обеспечивают эффективное управление памятью, предлагают надежные возможности быстрого шаблона, поддерживают сложные рассуждения цепей и позволяют получить документы на основе LLM.

Langchain4J поддерживает крупных поставщиков LLM, таких как OpenAI, Azure, Cohere и местные модели через Ollama или обнимающееся лицо. Он предназначен для идиоматической разработки Java: сильная набор, конфигурация, управляемая аннотациями и простая интеграция с рамками впрыска зависимостей (DI), такими как Spring и Quarkus.

Если вы хотите построить агентов, которые могут думать, планировать и взаимодействовать с использованием естественного языка, Langchain4j-это ваш слой оркестровки.

3. Quarkus: Cloud Native Java Stime Rune

Quarkus-это Kubernetes-Clive Framework, оптимизированная для контейнеров, микросервисов и теперь рабочих нагрузок ИИ. Благодаря сверхбыщему времени запуска, низкому использованию памяти и нативным компиляцией через GraAlvm, Quarkus делает Java отличной подходящей для развертывания масштабируемых агентов ИИ.

Недавние расширения Quarkus теперь обеспечивают надежную поддержку для нескольких ключевых областей. Они обеспечивают интеграцию LLM через мощные библиотеки, такие как Langchain4J. Кроме того, эти расширения облегчают реактивные рабочие процессы и расширенное программирование, управляемое событиями. Разработчики также могут извлечь выгоду из таких функций, как Live Reload и Dev UI, которые оптимизируют процесс эксперимента с моделями искусственного интеллекта. Наконец, расширения предлагают комплексные инструменты для контейнеров, позволяющие эффективному развертыванию и выполнению агентов на таких платформах, как Kubernetes, Kniates или функционирование в качестве среды обслуживания (FAAS).

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

4. Opentelemetry: структура наблюдения

Opentelemetry (OTEL) предлагает значительные преимущества для наблюдения за агентскими приложениями ИИ, основанными на LLMS, благодаря неотъемлемой сложности и недерминированной природе этих систем. В отличие от традиционных приложений с предсказуемыми путями выполнения, агенты искусственного интеллекта часто включают в себя многоэтапные, динамические рабочие процессы, использование инструментов и итерационные рассуждения.

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

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

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

Как все это объединяется

Источник: Даниэль О, красная шляпа.

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

Именно так и все это объединяется: агент AI-стек на основе Java может использовать время выполнения, например Quarkus для облачных нативных микросервисов; Использовать библиотеки Langchain4j для бесшовной оркестровки LLM, управления памятью и комплексного цепочки работы; и интегрируйтесь в MCP для выполнения внешних инструментов автономно для создания агентских приложений искусственного интеллекта.

Интеграции Quarkus langchain4j (расширения) также дополняют существующие корпоративные услуги (например, REST API, транзакции базы данных, потоковое вещание событий), инфузируя услуги искусственного интеллекта, что обеспечивает плавный переход от прототипа к надежному развертыванию производства в экосистеме Java. Для наблюдения за этими сложными приложениями, наполненными ИИ, Отель становится неоценимым; Он обеспечивает решающую основу для отслеживания многоэтажных динамических рабочих процессов агентов, захвата необходимых метрик на взаимодействиях LLM (например, использование токенов и задержка) и консолидирующие журналы. Эта архитектура предлагает непревзойденную информацию о сложных рассуждениях, использовании инструментов и общей производительности агента, что жизненно важно для отладки и оптимизации таких интеллектуальных систем.

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

Последние мысли

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

Если вы разработчик Java, сейчас самое время исследовать этот сдвиг. Вы уже знаете твердые детали — параллелизм, архитектура и развертывание. С такими инструментами MCP, Langchain4J, Quarkus и Отель, Ай-местный стек тоже становится родственным Java.

Агент ИИ не только для стартапов или исследователей. Это для всех. И в Java это уже происходит.

Red Hat OpenShift для инноваций без ограничений. Возьмите с собой большие идеи с гибридной облачной платформой, открытой для любого приложения, команды или инфраструктуры. Узнайте больше последних из Red Hat Trending Stories YouTube.com/thenewstack Tech Moving быстро, не пропустите эпизод. Подпишитесь на наш канал YouTube, чтобы транслировать все наши подкасты, интервью, демонстрации и многое другое. Группа подпишитесь с эскизом. Даниэль О. О является чемпионом Java и старшим главным разработчиком в Red Hat, где он приводит усилия по продвижению облачных инноваций с помощью технологий с открытым исходным кодом. Известно своей способностью преодолевать технические и совместные пробелы, он расширяет возможности разработчиков и организаций … Подробнее от Даниэля Ох

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *