Перейти к основному содержимому
ToolPotion
ИИ-советник
Отправить

Oscar - Git в Google

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

Открыть репозиторий
Поделиться
Открыть репозиторий
Поделиться

Oscar, архитектура агента-контрибьютора с открытым исходным кодом, представляет собой проект, направленный на улучшение разработки программного обеспечения с открытым исходным кодом путем создания автоматизированных агентов для сопровождения проектов. Основная идея заключается в том, что значительную трудоемкость сопровождения проектов с открытым исходным кодом, как больших, так и малых, можно снизить. Большие языковые модели (LLM) предоставляют новые возможности для агентов плавно взаимодействовать с людьми посредством семантического анализа естественного языка, такого как отчеты об ошибках и инструкции сопровождающих, а также путем преобразования инструкций на естественном языке в программный код. Хотя LLM являются критически важным компонентом, большая часть действий агента будет включать выполнение стандартного, детерминированного кода. В отличие от многих применений LLM, ориентированных на разработку, Oscar не стремится дополнить или заменить процесс написания кода. Вместо этого он фокусируется на менее привлекательных аспектах сопровождения, таких как обработка входящих запросов, сопоставление вопросов с существующей документацией и аналогичные задачи.

Читать далее

Oscar — это, по сути, эксперимент, чье будущее направление и полученные уроки еще предстоит полностью определить. Первоначальный прототип, бот @gabyhelp, уже продемонстрировал многочисленные успешные взаимодействия в трекере запросов Go. В настоящее время разрабатываемый в рамках проекта Go, Oscar потенциально может быть выделен в отдельный проект в будущем. Конкретные цели проекта включают снижение усилий сопровождающих по разрешению запросов и списков изменений (CL/pull requests), уменьшение усилий, необходимых для ответа на вопросы на форумах, и предоставление возможности большему количеству людей стать продуктивными сопровождающими. Ключевая нецелевая задача — автоматизация написания кода; фокус остается на автоматизации трудоемкости для сопровождающих.

Подход центрируется на создании повторно используемой и расширяемой архитектуры, которую любой программный проект может адаптировать для создания настраиваемых агентов. Oscar стремится решить проблему трудоемкости для сопровождающих, которая не уникальна для проекта Go. Ключевые выявленные возможности включают индексацию и предоставление соответствующего контекста проекта во время взаимодействия с контрибьюторами, использование естественного языка для управления детерминированными инструментами, а также анализ отчетов об ошибках, CL/PR и групповых обсуждений для их улучшения в реальном времени, маркировки и соответствующей маршрутизации. LLM являются неотъемлемой частью этих возможностей благодаря их силе в обработке естественного языка, в то время как детерминированный код обрабатывает выполнение. Проект подчеркивает использование LLM для семантического анализа и перевода естественного языка в программы, полагаясь на детерминированный код для остального.

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

Другая ключевая возможность — использование естественного языка для управления детерминированными инструментами. По мере роста проектов увеличивается количество инструментов, что затрудняет их отслеживание и использование. Oscar предусматривает средства для редактирования комментариев к запросам, добавления меток или назначения людей на основе запросов на естественном языке. LLM отлично справляются с преобразованием намерений на естественном языке в исполняемые формы, такие как вызовы инструментов. Предварительные эксперименты с Gemini показывают многообещающие результаты в выборе и вызове инструментов. Этот подход, который использует LLM для преобразования естественного языка в детерминированное использование инструментов, считается более эффективным, чем чистый подход «волшебной палочки» LLM, поскольку он позволяет осуществлять детерминированное выполнение и более легкую проверку.

Третья важная возможность включает анализ отчетов об ошибках и CL/PR. Помимо связывания связанных запросов, Oscar планирует включить семантический анализ, такой как определение основной темы запроса для соответствующей маркировки (например, «производительность»). Он также стремится определить, требуется ли дополнительная информация для полезности отчета, например, запрос ссылки на программу воспроизведения или встраивание кода. Агент потенциально может запускать изолированные инструменты выполнения для идентификации версий с ошибками или использовать git bisect для определения коммитов, вводящих ошибки. Эти анализы наиболее эффективны, когда они выполняются сразу после подачи отчета, используя круглосуточную доступность агента.

Первый прототип, Gaby («Go AI bot»), работает в трекере запросов Go, публикуя сообщения как @gabyhelp. Его исходный код находится в internal/gaby. Gaby индексирует контент из запросов Go, документации Go, обзоров кода Gerrit и обсуждений проекта Go/golang-nuts, что позволяет ему отвечать на новые запросы соответствующими ссылками. Архитектура Gaby разработана с учетом гибкости, позволяя ей работать на различных хостинговых сервисах, использовать разные LLM, уровни хранения и векторные базы данных. Текущий прототип использует GCP Cloud Run с LLM Gemini от Google и Google Cloud Firestore. Проект также признает существование @gopherbot, давно существующего детерминированного агента в проекте Go, и стремится в конечном итоге объединить @gabyhelp в @gopherbot путем перестройки @gopherbot как агента Oscar, стремясь к более легковесному методу конфигурации с использованием естественного языка.

  • КатегорияAI-помощники для программирования
  • Модель ценообразованияОткрытый исходный код
  • РазвёртываниеОблако / На месте
  • ПлатформыВеб

  • Автоматизированный агент для сопровождения проектов с открытым исходным кодом

  • Снижает трудоемкость для сопровождающих путем обработки запросов и обращений

  • Использует LLM для понимания естественного языка и семантического анализа

  • Использует детерминированный код для надежного выполнения задач

  • Индексирует и предоставляет соответствующий контекст проекта (документация, запросы, обсуждения)

  • Обеспечивает управление детерминированными инструментами с помощью естественного языка

  • Анализирует отчеты об ошибках и списки изменений для улучшения маршрутизации и маркировки

  • Прототип агента @gabyhelp активен в трекере запросов Go

  • Расширяемая архитектура для разработки настраиваемых агентов

  • Поддерживает интеграцию с различными LLM, уровнями хранения и векторными базами данных

  • Направлен на автоматизацию не связанных с кодированием аспектов сопровождения проектов с открытым исходным кодом

  • Способствует более быстрому вовлечению контрибьюторов посредством немедленных ответов

  1. Настроить: Определите возможности агента и подключитесь к источникам данных проекта

  2. Развернуть: Разместите агента на подходящей платформе (например, облачном сервисе)

  3. Интегрировать: Подключитесь к репозиториям проекта и каналам связи (например, вебхукам GitHub)

  4. Обучить/Индексировать: Позвольте агенту обрабатывать и индексировать контекст проекта с использованием LLM

  5. Мониторить: Наблюдайте за взаимодействиями и производительностью агента в трекерах запросов и на форумах

  6. Расширять: Разрабатывайте новое поведение агента и интегрируйте пользовательские детерминированные инструменты

  7. Оптимизировать: Уточняйте ответы и анализ агента на основе потребностей проекта и обратной связи

  • Автоматизация триажа запросов
  • Помощь с документацией
  • Обнаружение дублирующихся запросов
  • Снижение трудоемкости для сопровождающих
  • Поддержка контрибьюторов
  • Анализ списков изменений
  • Предоставление контекста
  • Интеграция инструментов

Популярные ИИ-инструменты, похожие на Oscar

goose

AI-репозитории на GitHub

Goose — это открытый, расширяемый AI-агент, который улучшает процесс программирования, позволяя пользователям устанавливать, выполнять, редактировать и тестировать код с любым…

AI-помощники для программирования

№31 в AI-репозитории на GitHub

Открыть инструмент

AI-репозитории на GitHub

Открытый, расширяемый AI-агент, который улучшает процесс программирования, позволяя пользователям устанавливать, выполнять, редактировать и тестировать код с любым…Goose — это открытый, расширяемый AI-агент, который улучшает процесс программирования, позволяя пользователям устанавливать, выполнять, редактировать и тестировать код с любым…

РекомендованоAI-помощники для программирования
№31 в AI-репозитории на GitHub

CodeFuse-ChatBot

AI-репозитории на GitHub

CodeFuse-ChatBot — это ИИ-ассистент с открытым исходным кодом, разработанный для оптимизации жизненного цикла разработки программного обеспечения. Он использует многоагентный…

AI-помощники для программирования

№225 в AI-репозитории на GitHub

Открыть инструмент

AI-репозитории на GitHub

ИИ-ассистент с открытым исходным кодом, разработанный для оптимизации жизненного цикла разработки программного обеспечения. Он использует многоагентный…CodeFuse-ChatBot — это ИИ-ассистент с открытым исходным кодом, разработанный для оптимизации жизненного цикла разработки программного обеспечения. Он использует многоагентный…

AI-помощники для программирования
№225 в AI-репозитории на GitHub

Devika — это инженер программного обеспечения на основе ИИ с открытым исходным кодом, разработанный как альтернатива Devin. Он понимает инструкции высокого уровня, разбивает их,…

AI-помощники для программирования

№126 в AI-репозитории на GitHub

Открыть инструмент

Инженер программного обеспечения на основе ИИ с открытым исходным кодом, разработанный как альтернатива Devin. Он понимает инструкции высокого уровня, разбивает их,…Devika — это инженер программного обеспечения на основе ИИ с открытым исходным кодом, разработанный как альтернатива Devin. Он понимает инструкции высокого уровня, разбивает их,…

AI-помощники для программирования
№126 в AI-репозитории на GitHub

OpenHands

AI-репозитории на GitHub

OpenHands — это платформа разработки на основе ИИ, размещенная на GitHub. Она позволяет разработчикам вносить свой вклад в ее развитие и функциональность, создавая учетную запись…

AI-помощники для программирования

№16 в AI-репозитории на GitHub

Открыть инструмент

AI-репозитории на GitHub

Платформа разработки на основе ИИ, размещенная на GitHub. Она позволяет разработчикам вносить свой вклад в ее развитие и функциональность, создавая учетную запись…OpenHands — это платформа разработки на основе ИИ, размещенная на GitHub. Она позволяет разработчикам вносить свой вклад в ее развитие и функциональность, создавая учетную запись…

РекомендованоAI-помощники для программирования
№16 в AI-репозитории на GitHub

Aider

ИИ-агенты

Aider — это инструмент AI парного программирования, который интегрируется с вашим терминалом, позволяя вам сотрудничать с большими языковыми моделями (LLM) над новыми проектами…

AI-помощники для программирования

№31 в ИИ-агенты

Открыть инструмент

ИИ-агенты

Инструмент AI парного программирования, который интегрируется с вашим терминалом, позволяя вам сотрудничать с большими языковыми моделями (LLM) над новыми проектами…Aider — это инструмент AI парного программирования, который интегрируется с вашим терминалом, позволяя вам сотрудничать с большими языковыми моделями (LLM) над новыми проектами…

РекомендованоAI-помощники для программирования
№31 в ИИ-агенты

TrueForge

AI-репозитории на GitHub

TrueForge — это открытый агентский каркас, который служит слоем выполнения для преобразования большой языковой модели (LLM) в функционального агента. Он разработан для упрощения…

Конструкторы AI-агентов
Открыть инструмент

AI-репозитории на GitHub

Открытый агентский каркас, который служит слоем выполнения для преобразования большой языковой модели (LLM) в функционального агента. Он разработан для упрощения…TrueForge — это открытый агентский каркас, который служит слоем выполнения для преобразования большой языковой модели (LLM) в функционального агента. Он разработан для упрощения…

Конструкторы AI-агентов
Топ-250: AI-репозитории на GitHub

BeeAI Framework

AI-репозитории на GitHub

BeeAI Framework — это набор инструментов с открытым исходным кодом для создания готовых к производству ИИ-агентов и мультиагентных систем. Он поддерживает разработку на Python и…

Конструкторы AI-агентов

№107 в AI-репозитории на GitHub

Открыть инструмент

AI-репозитории на GitHub

Набор инструментов с открытым исходным кодом для создания готовых к производству ИИ-агентов и мультиагентных систем. Он поддерживает разработку на Python и…BeeAI Framework — это набор инструментов с открытым исходным кодом для создания готовых к производству ИИ-агентов и мультиагентных систем. Он поддерживает разработку на Python и…

Конструкторы AI-агентов
№107 в AI-репозитории на GitHub

LangChain

AI-репозитории на GitHub

Langchain — это платформа для проектирования агентов, размещенная на GitHub, которая позволяет разработчикам участвовать в ее развитии. Пользователи могут взаимодействовать с…

Автоматизация и агенты

№1 в AI-репозитории на GitHub

Открыть инструмент

AI-репозитории на GitHub

Платформа для проектирования агентов, размещенная на GitHub, которая позволяет разработчикам участвовать в ее развитии. Пользователи могут взаимодействовать с…Langchain — это платформа для проектирования агентов, размещенная на GitHub, которая позволяет разработчикам участвовать в ее развитии. Пользователи могут взаимодействовать с…

РекомендованоАвтоматизация и агенты
№1 в AI-репозитории на GitHub
1 из 8