/ Модель

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

Контекст
16 384 токена
Параметры
6,6 млрд
Размер весов
13,5 ГБ
Лицензия
Apache 2.0
Архитектура
llama · dense
Базовая модель
CodeLlama-7b-hf
Опубликована
13 мая 2024

CodeLlama-7B-KStack-clean

Генерация текстаТекст → текст3 профессии

Дообученная на Kotlin-коде модель CodeLlama для генерации и автодополнения программ, особенно в задачах по алгоритмам.

136скачиваний за 30 дней5лайковвеса обновлены22 мая 2024

Бенчмарки

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

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

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

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

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

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

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

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

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

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

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

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

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

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

JetBrains/CodeLlama-7B-KStack-clean — языковая модель для генерации кода, дообученная JetBrains на отфильтрованном наборе Kotlin-кода KStack-clean. Это плотная авторегрессионная модель семейства Llama с 6,6 млрд параметров и контекстом до 16 384 токенов; веса опубликованы в формате safetensors для Hugging Face Transformers. Модель подходит для генерации и автодополнения Kotlin-кода, в том числе для задач по алгоритмам. В README указано, что на Kotlin HumanEval она получила pass rate 37,89 против 26,89 у базовой CodeLlama-7B.

Для заполнения пропусков внутри кода можно использовать формат FIM с префиксом и суффиксом. Модель дообучена на 25 тысячах примеров объёмом около 23 млн токенов, выбранных по образовательной ценности для изучения алгоритмов на Kotlin. Лицензия — Apache-2.0. README предупреждает, что качество может снижаться при отклонении от формата задач на Kotlin, а ответы могут быть неточными или нежелательными; перед практическим применением требуется проверка результатов.

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

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

Ограничения

Дообучение ориентировано на задачи и формат Kotlin-кода, поэтому при других типах запросов точность может снижаться. Модель может выдавать неточные или нежелательные ответы; результаты следует проверять.

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

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

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

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

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

Открыть на Hugging Face

Model description

This is a repository for the CodeLlama-7b model fine-tuned on the KStack-clean dataset with rule-based filtering, in the Hugging Face Transformers format. KStack-clean is a small subset of KStack, the largest collection of permissively licensed Kotlin code, automatically filtered to include files that have the highest "educational value for learning algorithms in Kotlin".

How to use

from transformers import AutoModelForCausalLM, AutoTokenizer

# Load pre-trained model and tokenizer
model_name = 'JetBrains/CodeLlama-7B-KStack-clean'
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(model_name).to('cuda')

# Create and encode input
input_text = """\
This function takes an integer n and returns factorial of a number:
fun factorial(n: Int): Int {\
"""
input_ids = tokenizer.encode(
    input_text, return_tensors='pt'
).to('cuda')

# Generate
output = model.generate(
    input_ids, max_length=60, num_return_sequences=1, 
    pad_token_id=tokenizer.eos_token_id
)

# Decode output
generated_text = tokenizer.decode(output[0], skip_special_tokens=True)
print(generated_text)

As with the base model, we can use FIM. To do this, the following format must be used:

'<PRE> ' + prefix + ' <SUF> ' + suffix + ' <MID>'

Training setup

The model was trained on one A100 GPU with following hyperparameters:

HyperparameterValue
warmup100 steps
max_lr5e-5
schedulerlinear
total_batch_size32 (~30K tokens per step)
num_epochs2

More details about fine-tuning can be found in the technical report (coming soon!).

Fine-tuning data

For tuning the model, we used 25K exmaples from the KStack-clean dataset, selected from the larger KStack dataset according to educational value for learning algorithms. In total, the dataset contains about 23M tokens.

Evaluation

For evaluation, we used the Kotlin HumanEval dataset, which contains all 161 tasks from HumanEval translated into Kotlin by human experts. You can find more details about the pre-processing necessary to obtain our results, including the code for running, on the datasets's page.

Here are the results of our evaluation:

Model nameKotlin HumanEval Pass Rate
CodeLlama-7B26.89
CodeLlama-7B-KStack-clean37.89

Ethical Considerations and Limitations

CodeLlama-7B-KStack-clean is a new technology that carries risks with use. The testing conducted to date has not covered, nor could it cover all scenarios. For these reasons, as with all LLMs, CodeLlama-7B-KStack-clean's potential outputs cannot be predicted in advance, and the model may in some instances produce inaccurate or objectionable responses to user prompts. The model was fine-tuned on a specific data format (Kotlin tasks), and deviation from this format can also lead to inaccurate or undesirable responses to user queries. Therefore, before deploying any applications of CodeLlama-7B-KStack-clean, developers should perform safety testing and tuning tailored to their specific applications of the model.

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

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

GPU в ailist

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

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

Подбираем GPU…

Класс архитектуры
LlamaForCausalLM
Ревизия весов
8e1eeb8

0 моделей