Супер информативно! Как разработать систему приложений искусственного интеллекта на основе агента
Супер информативно! Как разработать систему приложений искусственного интеллекта на основе агента

Агент, управляемый LLM

Обзор литературы «Рост и потенциал агентов на основе больших языковых моделей: опрос», проведенный Fudan NLP и MiHoYo Survey, подробно описывает соответствующие теории, практические модели и глубокие размышления об агентах на основе LLM. Это сделано экспертами по Zhihu. После детальной интерпретации я сделаю на основе этого разговорное изложение.

первый,Почему понятие «Агент»? Потому что эта ситуация сохраняется и по сей день в области ИИ.,Со временем,Его концептуальная коннотация расширяется.,Но неважно, в какую эпоху,Оно может в двух словах суммировать конечную цель ИИ — тело машины автономного мышления и действия. Многие люди беспокоятся, что роботы уничтожат человечество в будущем, когда слышат «автономное мышление и действие». Это потому, что простые люди не понимают охвата области ИИ.,Одно из направлений – изучение социальной природы интеллекта.,Любой интеллект должен быть социальным,Тогда будет свой кодекс поведения. Суммируя,В области ИИ,Агент — это не новая концепция, появившаяся за последние два года.,Это одна из основных концепций, которая всегда проходит через исследования в области ИИ.,Прошлое, настоящее и будущее будут существовать как основной словарь. поколение ИИ,С точки зрения агента,можно разделить на:Symbolic Agents -> Reactive Agents -> RL-based Agents -> Agent with transfer learning and meta learning -> LLM-based Agent。вAlphaGoиDQNдаRL-basedпродукт времени。“научиться учиться”则да在LLMВажные вопросы, предшествовавшие появлению。доGPTВзорвать индустрию,Это знаменует собой наступление нового поколения эры агентов.

Строительные блоки агента

Агент состоит из модуля мозга, модуля Восприятие и модуля действия. Как наименьшая единица проекта ИИ.,Функции агента могут быть разными,Но конструкция модуля полностью соответствует человеческому познанию.,поэтому,Трехмодульная структура незаменима.

центральный мозг

Сегодня, в 2024 году, поскольку у нас уже есть степень магистра права, когда мы думаем о том, какими способностями должен обладать мозг Агента, это совершенно отличается от того, как думали предыдущие поколения. В эпоху LLM мозг агента в основном включает в себя:

  • Взаимодействие на естественном языке, включая понимание естественного языка, многоходовой диалог, генерацию естественного языка (высокого качества), понимание намерений и значений.
  • Знания, включая знание языка, знание здравого смысла и знание профессиональной области. Конечно, необходимо рассмотреть возможность предоставления Агенту возможности получать знания в режиме реального времени через внешнюю базу знаний.
  • Память. Методы улучшения возможностей памяти включают увеличение предельной длины входных данных Transformer, суммирование памяти и сжатие памяти с помощью векторов или структур данных. В то же время необходимо уделять внимание актуальности, релевантности и важности извлечения из памяти.
  • Рассуждение и планирование, рассуждение зависит от уровня подготовки самого LLM, а планирование включает в себя два этапа: формулирование плана и размышление о плане.
  • Переносимость и универсальность, мое личное понимание, главным образом означает, что можно переучить произошедшее как часть самой модели, тем самым все ближе и ближе подходя к человеческому уровню мышления.

Восприятие

Сам агент как минимальная единица,Необходимо реагировать на обстоятельства,Возможность контролировать среду часто означает, в чем состоит основная функция этого Агента.,Как и различные человеческие органы,Восприятие Боль и вкус,Часто означает его функцию. С точки зрения LLM,Объектами Восприятие Агента являются в основном:

  • Ввод текста
  • Визуальный ввод, включая статические изображения и непрерывные кадры (видео, gif и т. д.)
  • Слуховой ввод в основном относится к аудио, включая существующие аудиофайлы и сбор звуков в реальном времени.
  • Другие входные данные, я лично считаю, в основном включают в себя различные виды аппаратного интеллекта. датчики обеспечения, программные триггеры, комплексные результаты вычислений в сочетании с различными типами информации, вывод информации от других связанных агентов, центральный инструкции мозга.

действие

Реальная часть агента,с точки зрения программирования,Функции центрального мозга могут быть разнообразными.,Но Восприятие и действие определяют границы Агента.,Определяет фактическую функцию Агента. С точки зрения LLM,Действия агента в основном включают в себя:

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

С точки зрения воплощенного действия,Сам агент не статичен,Это должно быть похоже на человеческие клетки,Иметь способность метаболизировать,Когда Агент сам способен ориентироваться в среде,Учитесь и взаимодействуйте,Осаждено как часть самой модели,и принимать решения на основе этого, чтобы адаптироваться к окружающей среде,Так что это также означает,Мозгу нужен новый контент,с точки зрения программированиясмотреть,Возможно, это динамическая модель обучения,и горячая замена текущей модели после обучения,Этот цикл повторяется снова и снова.

Модель управления агента

в предыдущих статьях,Я подробно представил Модель управления агента., но в данной статье это сформулировано более развернуто. На сегодняшний день в 2024 году видимые режимы в основном включают три типа: Одиночный Agent、Multi-Agents、Human-Agent。

Single Agent

Проще говоря, Агент — это приложение, которое непосредственно используется пользователями. Этот тип агента часто представляет собой часть программного обеспечения, которая получает пользовательский ввод и возвращает результаты пользователю в соответствии с настройками его функций. Например, существуют такие текущие приложения, как ChatGPT, GPT и база знаний RGA. Наиболее примечательными являются LangChain и AutoGPT.

Хотя слово «одиночный» звучит очень тонко, и создается впечатление, что он не может производить какие-либо особенные продукты, мы можем заставить агента обладать отличными творческими способностями с помощью разумной структуры. Например, на фигме есть много умных плагинов. Их появление может быстро помочь нам решить некоторые сценарии. Хотя сами эти плагины имеют очень тонкий вход, их может поддерживать целая компания и огромная технология. С этой точки зрения проектирования одиночный агент можно классифицировать со следующих точек зрения:

  • Целенаправленный, используется для выполнения задач, предложенных людьми, для повышения эффективности производства.
  • Ориентирован на инновации, используется для быстрой проверки в конкретных областях, чтобы значительно сократить время эксперимента. Например, в программировании конфигурации белков открытие программирования последних 10 лет сегодня может быть завершено за 1 минуту.
  • ориентированный на жизненный цикл,Проще говоря, этот тип дизайна Агента не преследует конкретных целей.,Просто дайте ему постоять за себя в открытой и свободной среде.,расти сам по себе,Посмотрите, как это выглядит,Берем из него полезные части

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

Multi-Agents

Уже как 1986 Год,Марвин Мински сделал дальновидные прогнозы. Он предложил новую теорию интеллекта в своей книге «Общество разума».,думатьИнтеллект возникает в результате взаимодействия множества мелких агентов с конкретными функциями. Например, некоторые агенты могут отвечать за распознавание образов, тогда как другие агенты могут отвечать за принятие решений или генерирование решений.Проще говоря,Глядя на это с точки зрения известной человечеству теории систем,Разделение труда может решить многие проблемы. Пусть агенты с разными функциями координируются системой для достижения цели.,Это может сделать систему более устойчивой и перспективной в будущем. То есть,Система (например, компания) имеет больше перспектив развития, чем закрытое физическое лицо (например, индивидуальный предприниматель).

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

  • дополнительное сотрудничество
    • Неупорядоченное сотрудничество, между агентами нет порядка, каждый агент реагирует на окружающую среду (относясь к другим агентам как к факторам окружающей среды), и сумма поведенческих результатов всех агентов является тем результатом, который нам нужен.
    • Упорядоченное сотрудничество: текущий агент получает на вход только выходные данные предыдущего агента, и все агенты соединены последовательно.
  • Состязательное взаимодействие, между агентами существуют контролирующие и конфронтационные отношения, например, есть агенты, которые играют роли тестировщиков, проверяющих и т. д.

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

Human-Agent

Люди направляют и контролируют рабочий процесс агента, чтобы обеспечить более высокое качество продукции. Люди взаимодействуют с Агентами для выполнения работы, которая включает в себя методы взаимодействия, отношения и т. д. Например, равны ли статусы людей и Агентов? Является ли обратная связь, предоставляемая агентом, качественной или количественной? В какой степени участвуют люди? Является ли это ключевым узлом или каждый узел требует участия человека? Как гарантировать, что вводимые человеком данные являются точными и не создают дополнительной нагрузки на агента? и т. д.

Мы все знаем, что интеллект ИИ зависит от интеллекта самого LLM. Возможности понимания и планирования ИИ в настоящее время ограничены и еще не достигли уровня наших обычных взрослых. Кроме того, взаимодействие между Агентами слабо поддается объяснению и требует участия человека для обеспечения выполнения объяснения по воле человека. Более того, из-за такой предвзятости интерпретации это может привести к серьезным неблагоприятным последствиям, и участия человека также можно в определенной степени избежать.

Участие человека во взаимодействии может быть взаимодействием «человек-Агент» один-к-одному, взаимодействием «человек-Агент» один-ко-многим или человеком как Агентом, участвующим в цепочке упорядоченного сотрудничества между Агентами.

Социальность агента

Сущность общества — «группа, подчиняющаяся правилам». Без правил не бывает общества. С правилами часто формируется общество. В системе агенты могут предоставляться различными поставщиками услуг. На основе обучения ИИ агенты выражают свои собственные познания, эмоции и личность. Эти абстрактные качественные выражения представляют собой наше обобщение его социального поведения.

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

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

Заставляя ИИ выполнять определенные задачи, упорядочивайте детали и логику программным способом, позволяя ИИ объяснять задачи и выполнять план. Нам остается только принять результаты или поучаствовать во взаимодействии по ключевым звеньям. Итак, как нам следует разработать систему, отвечающую таким требованиям?

Классификация функций агента

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

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

Здесь следует отметить, что я не рассматривал класс датчика как тип Агента. Как будет сказано ниже, наши аппаратные датчики по сути являются лишь входным терминалом сигнала. На основе определенного протокола могут работать всевозможные странные датчики. в конечном итоге обеспечивают входные данные в унифицированную стандартную структуру данных ИИ, эту часть должны выполнять разработчики датчиков. Как разработчики систем ИИ, эту часть нельзя трогать. Таким же образом мы отделим оборудование, используемое для выполнения задач, от самой системы. Однако, поскольку исполнительное оборудование является вызываемым, эту часть инкапсуляции должны выполнить разработчики нашей системы ИИ.

Проектирование системы искусственного интеллекта

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

Первый — прием и понимание инструкций. Мы получаем инструкции через микрофон. В это время на микрофон поступает аудиоинформация, которую мы преобразуем в текстовую информацию через агента. Затем мы вводим текст в агент для понимания инструкций. Агент понимает назначение инструкции из всех поддерживаемых им функций и отправляет инструкцию центральному агенту в фиксированном тексте протокола. Основная способность центрального агента - понимание и планирование. После получения инструкции он правильно понимает инструкцию. и через функциональные Вызывающая функция создает задачу и сохраняет идентификатор задачи в памяти; далее она начинает планировать задачу. Первый шаг — подтверждение ее окружения, второй шаг — подтверждение того, выполняются ли условия для яичницы, и второй шаг. — подтвердить, соблюдены ли условия для яичницы. Третий шаг — подготовить ингредиенты, а четвертый — приготовить… после завершения плана доработать план, выбрать все связанные агенты и Карта задачи создается; затем задача выполняется путем включения камеры и радара миллиметрового диапазона для сканирования всего дома. После включения этих устройств информация будет передаваться через соответствующие агенты слой за слоем и окончательно подтверждаться. центр; а затем отправляется на выполнение. Инструкция гусеничного хода контролирует работу двигателя для реализации движения и управления различными аппаратными устройствами, завершая яичницу и уведомляя владельца о завершении задачи;

Мы видим, что это очень сложная система со множеством деталей. Хотя это и сложно, но не невозможно, не так ли?

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

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

На стороне платформы мы используем «уровень агента событий» для реализации разделения конкретных агентов и платформ. Наша платформа будет подключаться к бесчисленному количеству агентов. Благодаря развязке нам не нужно проектировать для разных агентов. Вместо этого мы предоставляем единый протокол. Агенты подписываются или публикуют события через протокол, не заботясь о своей собственной среде. Что касается передачи сигналов, мы проектируем односторонний информационный поток, так что каждый агент имеет только один вход и один выход, что упрощает реализацию. Поскольку задание имеет непрерывность во времени, мы проектируем уровень планирования задач для поддержания очереди задач и предоставления решений для планирования задач через концентраторный уровень. Более того, я считаю, что существует ситуация, когда датчик обнаруживает новые переменные среды во время выполнения задачи. В этот момент нам может потребоваться вставить новую задачу или немедленно остановить текущую задачу.

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

Архитектура приложений ИИ

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

Схема проектирования приложения ИИ

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

Язык кода:javascript
копировать
когда @agent1 Когда происходит xx, и @agent2 Когда статус xx, @agent3 Выполнить ххх

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

Заключение

Изучая искусственный интеллект, мы все лучше начинаем понимать, как работает человеческий мозг. Посредством интерпретации статьи Фудана в этой статье предлагается архитектура системы обработки задач, которая может обеспечивать самовыполнение. Реализация агента сама по себе может быть сложной, но концептуально это всего лишь «входной элемент». -> agent -> «вывод» очень прост. По мере углубления в технологию мы будем приближаться все ближе и ближе к Программированию. искусственного интеллекта。Как показано выше,будущее,На базе AIсистемы,Нам просто нужно использовать очень простой естественный язык.,может выполнять целенаправленные задачи,не заботясь о его конкретной реализации,и его внутренняя работа. таким образом,Даже обычные люди (даже люди с ограниченными возможностями), никогда не сталкивавшиеся с программированием, могут легко реализовать свои собственные идеи или работать с помощью машин.

boy illustration
Неразрушающее увеличение изображений одним щелчком мыши, чтобы сделать их более четкими артефактами искусственного интеллекта, включая руководства по установке и использованию.
boy illustration
Копикодер: этот инструмент отлично работает с Cursor, Bolt и V0! Предоставьте более качественные подсказки для разработки интерфейса (создание навигационного веб-сайта с использованием искусственного интеллекта).
boy illustration
Новый бесплатный RooCline превосходит Cline v3.1? ! Быстрее, умнее и лучше вилка Cline! (Независимое программирование AI, порог 0)
boy illustration
Разработав более 10 проектов с помощью Cursor, я собрал 10 примеров и 60 подсказок.
boy illustration
Я потратил 72 часа на изучение курсорных агентов, и вот неоспоримые факты, которыми я должен поделиться!
boy illustration
Идеальная интеграция Cursor и DeepSeek API
boy illustration
DeepSeek V3 снижает затраты на обучение больших моделей
boy illustration
Артефакт, увеличивающий количество очков: на основе улучшения характеристик препятствия малым целям Yolov8 (SEAM, MultiSEAM).
boy illustration
DeepSeek V3 раскручивался уже три дня. Сегодня я попробовал самопровозглашенную модель «ChatGPT».
boy illustration
Open Devin — инженер-программист искусственного интеллекта с открытым исходным кодом, который меньше программирует и больше создает.
boy illustration
Эксклюзивное оригинальное улучшение YOLOv8: собственная разработка SPPF | SPPF сочетается с воспринимаемой большой сверткой ядра UniRepLK, а свертка с большим ядром + без расширения улучшает восприимчивое поле
boy illustration
Популярное и подробное объяснение DeepSeek-V3: от его появления до преимуществ и сравнения с GPT-4o.
boy illustration
9 основных словесных инструкций по доработке академических работ с помощью ChatGPT, эффективных и практичных, которые стоит собрать
boy illustration
Вызовите deepseek в vscode для реализации программирования с помощью искусственного интеллекта.
boy illustration
Познакомьтесь с принципами сверточных нейронных сетей (CNN) в одной статье (суперподробно)
boy illustration
50,3 тыс. звезд! Immich: автономное решение для резервного копирования фотографий и видео, которое экономит деньги и избавляет от беспокойства.
boy illustration
Cloud Native|Практика: установка Dashbaord для K8s, графика неплохая
boy illustration
Краткий обзор статьи — использование синтетических данных при обучении больших моделей и оптимизации производительности
boy illustration
MiniPerplx: новая поисковая система искусственного интеллекта с открытым исходным кодом, спонсируемая xAI и Vercel.
boy illustration
Конструкция сервиса Synology Drive сочетает проникновение в интрасеть и синхронизацию папок заметок Obsidian в облаке.
boy illustration
Центр конфигурации————Накос
boy illustration
Начинаем с нуля при разработке в облаке Copilot: начать разработку с минимальным использованием кода стало проще
boy illustration
[Серия Docker] Docker создает мультиплатформенные образы: практика архитектуры Arm64
boy illustration
Обновление новых возможностей coze | Я использовал coze для создания апплета помощника по исправлению домашних заданий по математике
boy illustration
Советы по развертыванию Nginx: практическое создание статических веб-сайтов на облачных серверах
boy illustration
Feiniu fnos использует Docker для развертывания личного блокнота Notepad
boy illustration
Сверточная нейронная сеть VGG реализует классификацию изображений Cifar10 — практический опыт Pytorch
boy illustration
Начало работы с EdgeonePages — новым недорогим решением для хостинга веб-сайтов
boy illustration
[Зона легкого облачного игрового сервера] Управление игровыми архивами
boy illustration
Развертывание SpringCloud-проекта на базе Docker и Docker-Compose