PruhaNLP/1C-Ebench
C1-Bench — поиск кода 1С / BSL по запросу на русском Бенчмарк для оценки embedding-моделей: по тексту вопроса на русском языке нужно найти релевантный фрагмент кода на встроенном языке 1С (BSL) или языке запросов. Каждый запрос имеет ровно один эталонный документ. Данные реальные — вопросы и код взяты из практики разработчиков 1С, а не сгенерированы синтетически. Перед публикацией прошли очистку (PII, мусор, дубликаты) — подробности ниже. Срезы (subsets)… See the full description on the dataset page: https://huggingface.co/datasets/PruhaNLP/1C-Ebench.
C1-Bench — поиск кода 1С / BSL по запросу на русском
Бенчмарк для оценки embedding-моделей: по тексту вопроса на русском языке нужно найти релевантный фрагмент кода на встроенном языке 1С (BSL) или языке запросов. Каждый запрос имеет ровно один эталонный документ.
Данные реальные — вопросы и код взяты из практики разработчиков 1С, а не сгенерированы синтетически. Перед публикацией прошли очистку (PII, мусор, дубликаты) — подробности ниже.
Срезы (subsets)
Срезы независимы: идентификаторы и пары query→code внутри каждого среза свои. Объединённый срез не поставляется — при необходимости два среза объединяются с переназначением _id для глобальной уникальности.
Структура
.
├── forum/test-00000-of-00001.parquet
└── fastcode/test-00000-of-00001.parquetОдна задача (code retrieval), один split (test), два сабсета по источнику. Каждый сабсет — плоская таблица пар «вопрос → код».
Поля
Один релевантный документ на запрос. Для retrieval-оценки корпус собирается из всех code среза, релевантность — по совпадению id.
Очистка и подготовка
Бенчмарк — производный очищенный срез исходного корпуса вопросов и ответов 1С. Этапы:
- Извлечение кода. Из ответов берутся только блоки кода с проверкой, что это BSL или язык запросов 1С, — текстовые комментарии и оффтоп отбрасываются.
- Удаление PII. Многоступенчатый scrubbing (scrubadub + регулярные выражения + Natasha):
- e-mail →
[EMAIL], телефоны (форматы +7 / 8) →[PHONE]; - IP-адреса →
[IP]с защитой от ложных срабатываний на номерах версий 1С (1.0.0.51и т.п. не редактируются); - пути файловой системы (Windows, UNC, UNIX) →
[PATH]; - ФИО и имена в присваиваниях (
ИмяПользователя,ФИО,Подписант, …) →[PERSON]со списком стоп-слов, чтобы не портить идентификаторы 1С. - Если персональные данные остаются в самом вопросе — строка удаляется целиком.
- Фильтрация мусора — слишком короткие, пустые и нерелевантные фрагменты убираются.
- Дедупликация по хешу кода — повторяющиеся эталоны исключаются.
Происхождение
Производный очищенный срез датасета `arefaste/1C_Forums` (вопросы и решения по 1С). Срез forum — обсуждения c Infostart, срез fastcode — каталог сниппетов FastCode.
Лицензия Hub: other — учитывайте условия исходного датасета и площадок-источников.
Загрузка
from datasets import load_dataset
# сабсет forum или fastcode
ds = load_dataset("PruhaNLP/C1-Bench", "forum", split="test")
row = ds[0]
print(row["id"], row["question"][:100], row["code"][:200])Ограничения
- Только русские запросы; код — фрагменты из ответов, не целые конфигурации.
- Один gold на запрос; сложные треды сведены к одной паре.
- Возможны артефакты редакции (например,
[PERSON]на идентификаторе 1С). - Качество «решений с форума» не верифицировано экспертами.
Правовая информация и дисклеймер
Бенчмарк собран исключительно для исследовательских и образовательных целей (оценка качества embedding-моделей) и распространяется «как есть», без каких-либо гарантий.
- Что внутри. Только короткие фрагменты кода на встроенном языке 1С (BSL) и языке запросов, опубликованные авторами в открытых сообществах и тематических площадках. Это пользовательский контент с публичных обсуждений, а не части дистрибутива.
- Чего внутри нет. Дистрибутивов, бинарных файлов, файлов информационных баз, типовых конфигураций и иного проприетарного кода фирмы «1С» или её партнёров. Материалы не получены путём декомпиляции, дизассемблирования, извлечения из информационной базы или обхода технических средств защиты.
- Товарный знак. «1С», «1С:Предприятие» и связанные обозначения — товарные знаки их правообладателя. Проект не аффилирован с фирмой «1С», не одобрен и не спонсируется ею; названия используются исключительно для описания предметной области (номинативное использование).
- Права авторов. Права на конкретные фрагменты кода принадлежат их авторам. Они включены в минимально необходимом объёме как короткие цитаты для научной задачи (информационный поиск). Перед коммерческим использованием убедитесь в наличии прав на исходные материалы.
- Лицензия. Метка лицензии набора —
other: пользователь самостоятельно отвечает за соблюдение условий исходных площадок, авторских прав и применимого законодательства при использовании данных. - Запрос на удаление (takedown). Если вы правообладатель и считаете, что какой-либо фрагмент включён неправомерно, — сообщите сопровождающим набора, и спорный материал будет оперативно удалён.
Использование данных означает согласие с настоящим дисклеймером. Авторы набора не несут ответственности за способы его дальнейшего применения третьими лицами.
Контакт для связи
konstphx@gmail.com
Цитирование
@dataset{pruhanlp_c1_bench,
author = {PruhaNLP},
title = {C1-Bench: 1C/BSL code retrieval benchmark},
year = {2026},
publisher = {Hugging Face},
howpublished = {\url{https://huggingface.co/datasets/PruhaNLP/1C-bench}}
}Исходный корпус:
@misc{arefaste2025,
title = {Arefaste: Parsed dataset for 1C},
author = {arefaste},
year = {2025},
publisher = {Hugging Face},
howpublished = {\url{https://huggingface.co/datasets/arefaste/1C_Forums}}
}