/ Модель

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

Контекст
32 768 токенов
Параметры
7,5 млрд
Размер весов
16,1 ГБ
Лицензия
Своя лицензия
Архитектура
llama · dense
Базовая модель
YandexGPT-5-Lite-8B-pretrain
Библиотека
transformers
Опубликована
28 фев 2025

Vikhr-YandexGPT-5-Lite-8B-it

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

Инструктивная русско-английская модель Vikhr на базе YandexGPT-5-Lite для диалогов, выполнения инструкций и ответов по документам.

444скачиваний за 30 дней26лайковвеса обновлены1 мар 2025

Бенчмарки

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Vikhr-YandexGPT-5-Lite-8B-it — инструктивная языковая модель команды Vikhr, созданная дообучением YandexGPT-5-Lite-8B-pretrain методом SFT. Модель имеет плотную архитектуру LlamaForCausalLM, содержит 7,5 млрд параметров и принимает текст, выдавая текст. Она рассчитана прежде всего на русский язык и также поддерживает английский; длина контекста составляет 32 768 токенов.

Модель предназначена для диалогов и выполнения инструкций, включая ответы на вопросы и генерацию ответов с опорой на предоставленные документы в RAG-сценариях. Для обучения использованы датасеты GrandMaster-PRO-MAX и Grounded-RAG-RU-v2. В режиме RAG требуется системный промпт GROUNDED_SYSTEM_PROMPT; модель может дополнять сведения из документов собственными знаниями. В карточке также отмечен низкий уровень безопасности ответов и возможность дефектов генерации при высокой температуре.

Репозиторий содержит веса safetensors и использует библиотеку Transformers. Указана лицензия other; конкретные условия лицензии следует сверять с карточкой модели.

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

  • ответы на вопросы по предоставленным документам
  • чат-бот для русскоязычного общения
  • выполнение инструкций и генерация текстов
  • суммаризация и объяснение текстовой информации
  • ответы с использованием RAG-контекста

Ограничения

В README указаны низкий уровень безопасности ответов и возможные дефекты генерации при высокой температуре. Для RAG необходим системный промпт GROUNDED_SYSTEM_PROMPT, а ответы могут включать сведения, которых нет в документах.

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

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

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

Также подходит для

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

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

Открыть на Hugging Face

Vikhr-YandexGPT-5-Lite-8B-it

Инструктивная модель на основе YandexGPT-5-Lite-8B-pretrain, обученная на русскоязычном датасете GrandMaster-PRO-MAX и Grounded-RAG-RU-v2 с использованием SFT.

Quatized variants:

Особенности:

Попробовать / Try now:

Open In Colab

Обучение:

Vikhr-YandexGPT-5-Lite-8B-it была создана с использованием метода SFT (Supervised Fine-Tuning).

Инструктивная SFT часть

Для SFT этапа обучения модели мы подготовили большой (150к инструкций) инструктивный синтетический датасет Vikhrmodels/GrandMaster-PRO-MAX. Его особенностью является встроеный CoT (Chain-Of-Thought), для сбора которого мы использовали модифицированный промет для gpt-4-turbo, подробности в карточке датасета.

Кроме того, для того чтобы сделать RAG Grounding, мы подготовили другой синтетический датасет - Vikhrmodels/Grounded-RAG-RU-v2 (50k диалогов), его пайплайн сборки достаточно сложный для короткого описания и полробнее об этом вы можете прочитать в его карточке.

Конфиг обучения

Пример кода для запуска:

from transformers import AutoModelForCausalLM, AutoTokenizer

# Load the model and tokenizer
model_name = "Vikhrmodels/Vikhr-YandexGPT-5-Lite-8B-it"
model = AutoModelForCausalLM.from_pretrained(model_name)
tokenizer = AutoTokenizer.from_pretrained(model_name)

# Prepare the input text
input_text = "Напиши краткое описание фильма Назад в будущее."

messages = [
    {"role": "user", "content": input_text},
]

# Tokenize and generate text
input_ids = tokenizer.apply_chat_template(messages, truncation=True, add_generation_prompt=True, return_tensors="pt")
output = model.generate(
    input_ids,
    max_length=1512,
    temperature=0.7,
)

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

Ответ модели:

"Назад в будущее" (англ. "Back to the Future") — это американский научно-фантастический фильм, выпущенный в 1985 году. Режиссёром картины выступил Роберт Земекис, а сценарий написал Боб Гейл. Главные роли исполнили Майкл Дж. Фокс, Кристофер Ллойд и Лиа Томпсон.

Фильм рассказывает историю Марти МакФлая, обычного подростка из 1985 года, который случайно попадает в 1955 год благодаря изобретению своего друга-ученого, доктора Эмметта Брауна. Марти оказывается в прошлом, где он должен помочь доктору Брауну, который в то время был молодым и наивным, изобрести машину времени.

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

Фильм получил множество наград и стал культовым, породив два сиквела и множество мемов и цитат, которые до сих пор популярны.

Как работать с RAG

Роль documents представляет из себя список словарей с описанием контента документов, с примнением json.dumps(array, ensure_ascii=False) (см. пример ниже).
Контент документов может быть представлен в 3 различных форматах: Markdown, HTML, Plain Text. Контент каждого документа - может быть чанком текста длиной до 4к символов.

[
  {
    "doc_id": (0..5),
    "title": "(null or str)",
    "content": "(html or markdown or plain text)"
  }
]

Пример правильного использования с OpenAI-like API

Запуск vLLM сервера: vllm serve --dtype half --max-model-len 32000 -tp 1 Vikhrmodels/Vikhr-YandexGPT-5-Lite-8B-it --api-key token-abc123

GROUNDED_SYSTEM_PROMPT = "Your task is to answer the user's questions using only the information from the provided documents. Give two answers to each question: one with a list of relevant document identifiers and the second with the answer to the question itself, using documents with these identifiers."
documents = [
  {
    "doc_id": 0,
    "title": "Глобальное потепление: ледники",
    "content": "За последние 50 лет объем ледников в мире уменьшился на 30%"
  },
  {
    "doc_id": 1,
    "title": "Глобальное потепление: Уровень моря",
    "content": "Уровень мирового океана повысился на 20 см с 1880 года и продолжает расти на 3,3 мм в год"
  }
]
sample_history = [
    {'role': 'system', 'content': GROUNDED_SYSTEM_PROMPT}, 
    {'role': 'documents', 'content': json.dumps(documents, ensure_ascii=False)},
    {'role': 'user', 'content': 'Глоабльное потепление'}
]
relevant_indexes = llm_client.chat.completions.create(
    model=llm_model,
    messages=sample_history,
    temperature=0.0,
    max_tokens=2048
).choices[0].message.content
print('Using documents: ' + relevant_indexes + '\n----')
final_answer = llm_client.chat.completions.create(
    model=llm_model,
    messages=sample_history + [{'role': 'assistant', 'content': relevant_indexes}],
    temperature=0.3,
    max_tokens=2048
).choices[0].message.content
print(final_answer)

Ответ после выполнения кода будет выглядеть примерно так:

Using documents: {"relevant_doc_ids": [0, 1]}

Глобальное потепление – это долгосрочное повышение средней температуры атмосферы и океанов Земли. Это явление имеет множество последствий для нашей планеты, и среди них можно выделить два ключевых аспекта, основанных на доступных мне данных:

  1. Уменьшение объема ледников: За последние 50 лет наблюдается значительное сокращение объема ледников по всему миру. Согласно данным, объем ледников уменьшился на 30%. Это может быть связано с таянием ледников из-за повышения температур, что является одним из признаков глобального потепления.

  2. Повышение уровня моря: Уровень мирового океана также увеличивается, что связано с таянием ледников и ледяных покровов, а также с расширением воды при повышении температуры. С 1880 года уровень моря повысился на 20 сантиметров, и этот процесс продолжается, с ежегодным увеличением на 3,3 миллиметра.

Эти изменения имеют серьезные последствия для экосистем, климата и человеческого общества. Таяние ледников приводит к повышению уровня моря, что может привести к затоплению прибрежных территорий и островов, а также к изменению водных ресурсов и климатических паттернов.

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

Нюансы и ограничения

  • Модель имеет низкий уровень безопасности ответов и нацелена на правильное и полное выполенние инструкций, имейте это ввиду при использовании и тестируйте самостоятельно. Частично это исправляется системными промптами и дополнительными указаниями о важности безопасности в промпте пользователя.
  • Системные промпты не предназначены для описание персонажей, мы рекомендуем использовать их для спецификации стиля ответа (вроде "answer only in json format"). Кроме того, желательно, писать их на английском языке, так как так было в датасете, от использования английского в системных промтпах не зависит язык ответа.
  • RAG режим требует обязательного наличия системного промпта GROUNDED_SYSTEM_PROMPT описаного в секции Как работать с RAG. Так же иногда модель может добавлять общую информацию из своих знаний в ответ к той, что есть в документах.
  • Модель лучше использовать с низкой темптературой (0.1-0.5), а таже использовать top_k (30-50), при температуре 1.0 были замечены случайные дефекты генерации.

Авторы

@inproceedings{nikolich2024vikhr,
  title={Vikhr: Advancing Open-Source Bilingual Instruction-Following Large Language Models for Russian and English},
  author={Aleksandr Nikolich and Konstantin Korolev and Sergei Bratchikov and Nikolay Kompanets and Igor Kiselev and Artem Shelmanov},
  booktitle={Proceedings of the 4th Workshop on Multilingual Representation Learning (MRL) @ EMNLP-2024},
  year={2024},
  publisher={Association for Computational Linguistics},
  url={https://arxiv.org/pdf/2405.13929}
}

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

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

GPU в ailist

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

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

Подбираем GPU…

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

0 моделей