Агенты искусственного интеллекта становятся настоящими сотрудниками на рабочем месте, и каждый день больше разработчиков начинают их строить. Чтобы раскрыть свой потенциал для вашей команды, агенты искусственного интеллекта должны иметь возможность выполнять определенные цели и выполнять задачи рабочего процесса, принимать решения и принимать меры без постоянного человеческого надзора. Они должны учиться на своих взаимодействиях и со временем адаптировать свое поведение. И они должны делать все это, осознавая и сосредоточившись на вашем контексте и ваших целях.
Чтобы быть полезным, агент должен сбалансировать множество безопасных — безопасных и надежных интеграций. Это поле битвы, в которое начинают подбираться специальные инструменты и рамки.
В мае Microsoft запустила свой Azure AI Foundry, чтобы помочь вам построить, среди прочего, агентов по контексту и их рабочих процесса. У Postman есть свой AI Agent Builder, Open AI имеет свою детскую площадку, у питона экосистемы уже есть богатый набор библиотек и инструментов, создающих агента, а специализированные инструменты создания агентов все время приходят.
Но это все еще оставляет нам один маленький пробел …
Java и JVM.
Что Java делает с агентами искусственного интеллекта?
Java по -прежнему является огромным игроком в разработке программного обеспечения для предприятия. Вполне естественно, что строительные предприятия Java Applications and Services, которые использовали AI, наблюдали за увеличением инвестиций в соответствии с любой другой экосистемой разработки.
Проект Spring AI быстро набирает обороты как сильный набор абстракций по сравнению с низкоуровневыми деталями взаимодействия LLM, предоставляя готовый набор инструментов для интеграции ИИ в ваши приложения и услуги Java.
Но преданная и целенаправленная поддержка создания агентов ИИ на основе JVM была немного худой на земле до недавнего времени. Это, похоже, изменится с первым из того, что, вероятно, станет новым набором фреймворков, ориентированных на агент, для JVM: Embabel.
Что забирает?
Embabel — это новый проект с открытым исходным кодом, который, похоже, упростит, как создать безопасные рабочие процессы агента искусственного интеллекта внутри, в полной мере используя богатую экосистему Java.
Как отметил основатель проекта, Род Джонсон, отметил в среднем блоге: разработка агента AI требует «новой модели программирования» и «технологии оркестровки более высокого уровня» для безопасной интеграции с существующим контекстом, лучшими или более дешевыми моделями ИИ, внедряет решающие ограждения, управляйте выполнением потока и дает достаточно определенного детерминированного контроля того, как агент делает ее выбор, когда вы выполняете задачу.
Таким образом, агент имеет много одинаковых характеристик любой кодовой базы предприятия, т.е. множественными интеграциями, множественными стилями интеграции и оркестровками в нескольких источниках данных различного объема, скорости, разнообразия, достоверности и значения.
Изначально Джонсон создал Spring Framework, чтобы обеспечить лучшую модель программирования для Enterprise Java. С помощью Embabel это поворот программирования для агентов ИИ.
Подобно тому, как Spring изменила Enterprise Java, используя новую модель программирования, основанную на инъекции зависимостей и инверсии контроля, Embabel смотрит на создание модели программирования, которая помогает разработчикам создавать агентов, используя те же самые лучшие практики, которые обычно придерживается производственного кода, в то время как в то же время позволяет вашим агентам стремиться к конкретным целям, выполняемым рабочим процессам и выполняют свои собственные динамики, определяющие решения.
Агенты, доверие и детерминизм
Детерминизм и модели ИИ имеют сложную историю. Когда мы создаем приложения, мы привыкли к детерминированному поведению приложения — т.е. наш код, учитывая тот же вход и начальное состояние, всегда будет создавать один и тот же вывод и поведение.
Это не так, как работают LLM. LLMS Hallucinate — некоторые утверждают, как и люди — на одну крайность, а с другой — это может ответить удивительными, но удивительно полезными результатами, когда дают свободные варианты их творческих вариантов.
Для простых, быстрых взаимодействий с людьми в цикле, этот нетерминизм может быть раздражением, но не гораздо большим. Но с агентами, которые также закрывают петлю Oooda (наблюдать, ориентироваться, решать и действовать) полностью, принимая меры без взаимодействия человека, определение результата становится важной.
Укрепление доверия к рабочим процессам вашего агента требует средств для изучения определения того, как ваш агент ориентируется на свой рабочий процесс. Вы хотите оставить дверь открытой для невероятных результатов работы агента, убедившись, что вы сохраняете некоторый контроль над тем, как эта работа проходит. Чтобы сделать это, Embabel поворачивается к козе.
Что такое кова, и как его использует embabel?
Агенты Embabel используют, ориентированное на целеустремленное планирование действий (GOAP) из коробки, чтобы иметь возможность ориентироваться в возможных шагах на пути к определенной цели. В реализации Embabel of Doap цель — это шаг — какой -то исполняемый код — с набором предварительных условий, которые должны быть достигнуты до того, как цель может быть выполнена.
Тогда есть сопровождающие возможные шаги, называемые действиями, которые имеют условия до и после шага, которые намекают на то, должны ли они участвовать в запланированном пути к цели. Одним из инноваций Embabel здесь является объявление этих условий в коде Java-безопасных типов.
Embabel оценивает цель и шаги внутри вашего агента, планируя путь, который должен соответствовать цели, но если в какой -либо момент в выполнении пути, набор условий не выполняется, то Embabel изменит свой путь.
Одним из примеров этого может быть набор пост-кондиционеров на шаге, который работал с непретерьерным LLM, может быть неудовлетворительным, и, таким образом, можно выбрать альтернативный шаг, возможно, использование другого LLM, чтобы увидеть, можно ли получить лучшие результаты, оцениваемые по условиям пост-шага, могут быть получены.
Компоненты ренты.
Модель программирования Embabel включает в себя:
- Действия: Шаги, которые принимает агент, часто методы или функции, обозначенные атрибутом @Action.
- Цели: Чего пытается достичь агент, обозначенный атрибутом @achievesgoal.
- Условия: Факторы, которые нужно оценить, до выполнения действия или определения того, что цель была достигнута. Условия пересматриваются после выполнения каждого действия.
- План: Последовательность действий для достижения цели. Планы динамически сформулированы Embabel. Заключить переполнения после завершения каждого действия, позволяя ему адаптироваться к новой информации, а также наблюдать за последствиями предыдущего действия.
Модель программирования Embabel позволяет составить рабочий процесс агента из многих возможных шагов, разграниченных атрибутом @Action, а также одно или несколько аннотированных действий @AchievesGOAL, чтобы указать цель.
Сбор возможных шагов может быть определенно перемещена во время выполнения Embabel, основанную на ваших указанных условиях до и публикации к определенной цели, оставляя опцию для переплаты, если результаты шагов/действий не выполняются так, как вам нужно.
Со второго сообщения в блоге, описывающем, как планы Embabel, используя модель программирования Embabel, вы можете «воспользоваться преимуществами системы, которая может составить планы [you] Никогда явно кодировал, но не платя цену за сдачу контроля потока в непрозрачную модель. Ваши агенты могут найти баланс между детерминизмом и потенциалом для новых, лучших, даже более дешевых маршрутов к цели через множество различных шагов, которые может предпринять ваш агент.
Если вы приезжаете из фона JVM, сместите корабли с некоторыми примерами и инструкциями, чтобы пнуть его шины и начать исследовать создание собственных агентов для JVM. Embabel на 100% написана в Котлине, но полностью охватывает Java для развития ваших агентов.
Будущее яркое для агентов ИИ
Создание агентов ИИ находится в зачаточном состоянии, а заполненная — очень рано в своей жизни. Хорошей новостью является то, что существует проверенный послужной список быстрых инноваций в открытом исходном коде и Embabel открыта и лицензирована с лицензией на программное обеспечение Apache Friendy Friendly Enterprise.
Вы можете ожидать, что вещи будут развиваться в общественном доступе довольно быстро, и здесь, на NewStack, мы предсказали, что «многие инженеры -программисты станут авторами агентских процессов». Только в специальном страховании и государственном секторах Прасад Прабхакатан, глава отдела искусственного интеллекта в Эсинергии, сказал мне, что «мы видим сдвиг на 30-50% в инженерной работе искусственного интеллекта в направлении строительства, организации и управления агентами ИИ».
Он добавил: «Наша текущая цель с клиентами — абстрагировать сложность LLMS и оркестровки, что делает разработку агента доступным для основных разработчиков — особенно инженеров Java/Spring и .net. Мы строим повторные модели, SDK и справочные архитектуры, которые позволяют этим командам подключать агентов, не нуждающиеся в ИИ -экспертах».
Есть история агента, чтобы рассказать?
Создание собственных агентов и у вас есть история, чтобы рассказать? Пожалуйста, обратитесь ко мне, если вы заинтересованы в том, чтобы поделиться своими историями, хорошими и плохими, влияниями и подводными камнями этого нового подхода ИИ.
Trending Stories youtube.com/thenewstack Tech движется быстро, не пропустите эпизод. Подпишитесь на наш канал YouTube, чтобы транслировать все наши подкасты, интервью, демонстрации и многое другое. Группа подпишитесь с эскизом. Расс Майлз выполняет миссию, как автор, слушатель, спикер и разработчик, чтобы помочь людям процветать в одной из самых суровых и потенциально эффективных рабочих сред: разработка программной системы. Он написал более 10 книг по предметам из -за устойчивости … Подробнее от Расс Майлз