/ Модель

Характеристики

Контекст
514 токенов
Параметры
152 млн
Лицензия
MIT
Архитектура
roberta · dense
Опубликована
12 апр 2022

reacc-py-retriever

ЭмбеддингиТекст → embedding4 профессии

Энкодер на основе GraphCodeBERT для поиска похожих фрагментов Python-кода, поддержки дополнения кода и обнаружения клонов.

101скачиваний за 30 дней5лайковвеса обновлены12 апр 2022

Бенчмарки

Как модель справилась с задачами пользователей ailist и что о ней публикуют открытые лидерборды

Тесты пользователейпока нет

Никто ещё не опубликовал тест этой модели. Соберите бенчмарк из своих задач — результат появится здесь.

  1. Добавьте модель в бенчмарк

    Вместе с другими моделями категории «Эмбеддинги» — сравнение идёт внутри одной категории.

  2. Опишите свои задачи

    Напишите запросы, при необходимости приложите файлы и эталонные ответы.

  3. Запустите и опубликуйте

    Модели ответят на каждую задачу, судья оценит ответы. Опубликованный результат появится на этой странице.

Публичные оценки

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

В подключённых источниках результатов для этой модели пока нет.

Что умеет модель

Описание составлено по карточке модели и метаданным Hugging Face

ReACC-py-retriever — модель извлечения похожего кода для фреймворка ReACC, разработанного авторами исследования ReACC. Она кодирует незавершённый фрагмент Python-кода, чтобы находить похожие фрагменты и поддерживать дополнение кода с использованием поиска. Модель также подходит для поиска соответствий между неполными фрагментами и обнаружения клонов кода.

Это BERT-подобный энкодер на 12 трансформерных слоях, дообученный на GraphCodeBERT с помощью контрастивного обучения. В метаданных указаны архитектура RoBERTa, 151,9 млн параметров, контекст до 514 токенов и формат PyTorch. Для входа требуется специальное нормализованное представление Python-кода, сохраняющее сведения о переносах строк и отступах; обычный исходный код перед использованием нужно преобразовать. Лицензия — MIT.

Сценарии применения

  • поиск похожего кода по незавершённому фрагменту Python
  • поиск соответствий между неполными фрагментами кода
  • обнаружение клонов Python-кода
  • извлечение признаков для поиска кода

Ограничения

Ожидается нормализованное представление Python-кода с обработанными переносами строк и отступами, а не обычный исходный код. Контекст ограничен 514 токенами.

Для каких профессий подходит4

Разделы каталога профессий, в задачах которых используется эта модель

Все профессии

Карточка модели

README от автора на Hugging Face, как он его опубликовал

Открыть на Hugging Face

ReACC-py-retriever

This is the retrieval model for ReACC: A Retrieval-Augmented Code Completion Framework.

In this paper, the model is used to retrieve similar codes given an incompletion code snippet as query. The model can be also used for incomplete code-to-code search, code clone detection.

py-retriever is BERT-like encoder consisting of 12 transformer layers. It is continual pre-trained on GraphCodeBERT with contrastive learning in Python programming language. More details can be found in our paper.

Note that the format of input codes is different from original source code. We normalize the source codes to better capture information from line break and indention in Python. An example of input is:

sum = 0<endofline>for val in numbers:<endofline><INDENT>sum = sum+val

To get more information about how to convert source codes into this format, please refer to ReACC GitHub repo.

Как запустить

На своей GPU в ailist. Цена — по текущим предложениям провайдеров

GPU в ailist

Универсальный рантайм

Можно запустить

Подбираем GPU…

Класс архитектуры
RobertaModel
Ревизия весов
de6f2dd

0 моделей