? Floki находится на ранней стадии разработки. Платформа активно развивается в рамках текущих исследований, и я все еще изучаю и учусь эффективно интегрировать Dapr. Ожидайте серьезных изменений в API и основных структурах по мере развития инфраструктуры и уточнения информации.
Floki — это платформа с открытым исходным кодом, позволяющая исследователям и разработчикам экспериментировать с автономными агентами на основе LLM. Он предоставляет инструменты для создания, оркестрации и управления агентами, а также обеспечивает беспрепятственное подключение к API-интерфейсам вывода LLM. Созданный на основе Dapr, Floki использует унифицированную модель программирования, которая упрощает микросервисы и поддерживает как детерминированные рабочие процессы, так и взаимодействия, управляемые событиями. Используя шаблон виртуального актера Dapr, Floki позволяет агентам функционировать как независимые, автономные единицы, которые обрабатывают сообщения последовательно, устраняя проблемы параллелизма и плавно интегрируясь в более крупные рабочие процессы. Это также облегчает совместную работу агентов благодаря интеграции Dapr Pub/Sub, где агенты общаются через общую шину сообщений, что упрощает разработку рабочих процессов, где задачи эффективно распределяются, и агенты работают вместе для достижения общих целей. Объединив эти функции, Floki предоставляет мощный способ изучения агентских рабочих процессов и компонентов, которые позволяют мультиагентным системам сотрудничать и масштабироваться, и все это на базе Dapr.
Dapr предоставляет Floki унифицированную модель программирования, которая упрощает разработку отказоустойчивых и масштабируемых систем, предлагая встроенные API-интерфейсы для таких функций, как вызов служб, обмен сообщениями Pub/Sub, рабочие процессы и даже управление состоянием. Эти компоненты, необходимые для определения рабочих процессов агентов, позволяют разработчикам сосредоточиться на разработке агентов и рабочих процессов, а не на перестройке основных функций. Используя архитектуру Dapr и портативную среду выполнения, управляемую событиями, Floki также позволяет агентам эффективно сотрудничать, совместно выполнять задачи и динамически адаптироваться в облачных и периферийных средах. Эта бесшовная интеграция объединяет детерминированные рабочие процессы и принятие решений на основе LLM в единую систему, что упрощает экспериментирование с многоагентными системами и масштабируемыми агентными рабочими процессами.
Вызов между службами : облегчает прямую связь между агентами с помощью встроенных средств обнаружения служб, обработки ошибок и распределенной трассировки. Агенты могут использовать это для синхронного обмена сообщениями в многоагентных рабочих процессах.
⚡️ Публикация и подписка : поддерживает слабосвязанное сотрудничество между агентами через общую шину сообщений. Это обеспечивает взаимодействие в режиме реального времени, управляемое событиями, что критически важно для распределения и координации задач.
API рабочего процесса : определяет долгосрочные, постоянные рабочие процессы, которые сочетают в себе детерминированные процессы с принятием решений на основе LLM. Флоки использует это для беспрепятственной организации сложных многоэтапных агентских рабочих процессов.
? Управление состоянием : предоставляет агентам гибкое хранилище значений ключей для сохранения контекста при взаимодействии, обеспечивая непрерывность и адаптируемость во время рабочих процессов.
? Актеры : реализует шаблон виртуального актера, позволяющий агентам работать как автономные единицы с отслеживанием состояния, которые обрабатывают сообщения последовательно. Это устраняет проблемы параллелизма и повышает масштабируемость агентских систем Floki.
Убедитесь, что у вас уже установлен Python. Python >=3.9
pip установить floki-ai
pip установить git+https://github.com/Cyb3rWard0g/floki.git
poetry
:git клон https://github.com/Cyb3rWard0g/flokicd floki установка поэзии
Установите интерфейс командной строки Dapr для управления задачами, связанными с Dapr, такими как запуск приложений с дополнительными функциями, просмотр журналов и запуск информационной панели Dapr. Он безупречно работает как с локальными средами, так и с средами Kubernetes. Полное пошаговое руководство можно найти на официальной странице установки Dapr CLI.
Убедитесь, что CLI установлен, перезапустив терминал/командную строку и выполнив следующую команду:
дапр -ч
Убедитесь, что у вас уже установлен Docker. Я использую Docker Desktop.
Инициализируйте Dapr локально, чтобы настроить автономную среду для разработки. Этот процесс устанавливает двоичные файлы дополнительного модуля Dapr, запускает такие важные службы, как Redis (хранилище состояний и брокер сообщений) и Zipkin (наблюдаемость), а также подготавливает папку компонентов по умолчанию. Подробные инструкции см. в официальном руководстве по локальной инициализации Dapr.
Чтобы инициализировать контейнеры плоскости управления Dapr и создать файл конфигурации по умолчанию, выполните:
дапр инициализация
Убедитесь, что у вас есть экземпляры контейнера с запущенными образами daprio/dapr
, openzipkin/zipkin
и redis
:
докер, пс
Флоки родился из-за желания изучить и узнать больше о Dapr и его потенциале для создания агентных систем. Я хотел понять, как развертывать агентов как службы, управлять передачей сообщений и эффективно соединять различные компоненты. Попутно я обратился к нескольким устоявшимся основам идей и рекомендаций, которые помогли сформировать мое мышление и подход:
https://github.com/microsoft/autogen
https://github.com/langchain-ai/langchain
https://github.com/run-llama/llama_deploy
Несмотря на то, что эти платформы предоставили ценную информацию, Floki — это мой уникальный взгляд на то, как использовать Dapr для рабочих процессов и систем на основе агентов. Он отражает мой путь обучения и текущие исследования в этой захватывающей области.