Itinai.com ai automation knolling flat lay business tools lap 0000ddae 8e6d 4c82 9fdf eb0c5ed90b01 3
Itinai.com ai automation knolling flat lay business tools lap 0000ddae 8e6d 4c82 9fdf eb0c5ed90b01 3

SWERank: Эффективное решение для локализации программных ошибок от Salesforce AI

Легче сразу спросить 💭

AI снижает операционные расходы на 20–40% 📊 за 6 месяцев. А что бы вы сделали с этими деньгами?

Опишите задачу — обсудим, как это можно реализовать у вас.

ИИ автоматизирует 70% рутинных задач 🤖 за 3 месяца. Какие процессы в вашем бизнесе скинуть роботу?
Персонализированные AI-кампании увеличивают клиентскую базу на 30% 📈. Как это работает?
AI-аналитика сокращает ошибки в прогнозах на 50% 📉. Расскажите подробнее!

Проблема локализации программных ошибок

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

SWERank — Практическая основа для точной локализации

Чтобы решить эти проблемы, Salesforce AI представила SWERank, легкую и эффективную структуру для локализации программных ошибок. SWERank предназначен для устранения разрыва между эффективностью и точностью, рассматривая локализацию как задачу ранжирования кода. Структура состоит из двух ключевых компонентов:

  • SWERankEmbed: модель би-кодирования, которая кодирует вопросы GitHub и фрагменты кода в общее пространство встраивания для эффективного поиска по сходству.
  • SWERankLLM: список-ориентированный повторный ранжировщик, основанный на LLM, который уточняет ранжирование извлеченных кандидатов с использованием контекстного понимания.

Архитектура и методологические достижения

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

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

Результаты и преимущества

Оценки на SWE-Bench-Lite и LocBench показывают, что SWERank достигает передовых результатов на уровне файлов, модулей и функций. SWERankEmbed-Large (7B) достигла точности на уровне функций 82.12%, превосходя даже LocAgent, работающий с Claude-3.5. В сочетании с SWERankLLM-Large (32B) производительность улучшилась до 88.69%, устанавливая новый стандарт для этой задачи.

Кроме того, SWERank предлагает значительные преимущества по стоимости. В отличие от агентов на базе Claude, которые в среднем стоят около $0.66 за пример, стоимость вывода SWERankLLM составляет $0.011 для модели 7B и $0.015 для варианта 32B, обеспечивая до 6 раз лучшее соотношение точности к стоимости.

Заключение

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

Практические рекомендации

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

Если вам нужна помощь в управлении ИИ в бизнесе, свяжитесь с нами по адресу hello@itinai.ru. Чтобы быть в курсе последних новостей ИИ, подписывайтесь на наш Telegram.

AI Solution Image

Новости в сфере искусственного интеллекта