/ Модель

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

Контекст
1 026 токенов
Параметры
153 млн
Архитектура
roberta · dense
Опубликована
7 фев 2023

CoCoSoDa

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

CoCoSoDa кодирует запросы и фрагменты кода в векторы для семантического поиска соответствующего кода.

1 588скачиваний за 30 дней3лайкавеса обновлены16 мар 2023

Бенчмарки

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Модель содержит 152,8 млн параметров, использует архитектуру RoBERTa и доступна в формате PyTorch. Она преобразует текстовые запросы на естественном языке и фрагменты кода в векторы для поиска соответствий. В карточке описан сценарий поиска кода по запросу; сведения о лицензии и конкретных поддерживаемых языках программирования не приведены.

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

  • поиск фрагмента кода по описанию на естественном языке
  • ранжирование фрагментов кода по релевантности запросу
  • построение векторного индекса для поиска по кодовой базе

Ограничения

Карточка не указывает лицензию и конкретные языки программирования, представленные в обучении. Модель выдаёт векторные представления; для поиска и ранжирования требуется внешняя система индексации или сопоставления.

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

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

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

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

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

Открыть на Hugging Face

CoCoSoDa: Effective Contrastive Learning for Code Search

Our approach adopts the pre-trained model as the base code/query encoder and optimizes it using multimodal contrastive learning and soft data augmentation.

CoCoSoDa is comprised of the following four components:

  • Pre-trained code/query encoder captures the semantic information of a code snippet or a natural language query and maps it into a high-dimensional embedding space. as the code/query encoder.

  • Momentum code/query encoder encodes the samples (code snippets or queries) of current and previous mini-batches to enrich the negative samples.

  • Soft data augmentation is to dynamically mask or replace some tokens in a sample (code/query) to generate a similar sample as a form of data augmentation.

  • Multimodal contrastive learning loss function is used as the optimization objective and consists of inter-modal and intra-modal contrastive learning loss. They are used to minimize the distance of the representations of similar samples and maximize the distance of different samples in the embedding space.

Usage

import torch
from transformers import RobertaTokenizer, RobertaConfig, RobertaModel
device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
tokenizer = RobertaTokenizer.from_pretrained("DeepSoftwareAnalytics/CoCoSoDa")
model = RobertaModel.from_pretrained("DeepSoftwareAnalytics/CoCoSoDa")

Reference

Shi, E., Wang, Y., Gu, W., Du, L., Zhang, H., Han, S., ... & Sun, H. (2022). CoCoSoDa: Effective Contrastive Learning for Code Search. ICSE2023.

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

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

GPU в ailist

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

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

Подбираем GPU…

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

0 моделей