--- language: - ru license: apache-2.0 tags: - text-generation - pytorch - causal-lm - llama model_name: Clornet-150m pipeline_tag: text-generation datasets: - uonlp/CulturaX --- # Clornet 150M **Clornet** - это предварительно обученная Decoder-only языковая модель объемом **150 миллионов параметров**, построенная на базе классической архитектуры **Llama** и оптимизированная для генерации и обработки русскоязычного текста. Модель была обучена с нуля на отфильтрованном русскоязычном корпусе данных и демонстрирует стабильную сходимость с итоговым показателем перплексии **22.59**. ## Основные характеристики | Параметр | Значение | | :--- | :--- | | **Объем параметров** | ~150M | | **Архитектура** | Llama | | **Размер словаря** | 24,576 токенов | | **Длина контекста** | 2048 токенов | | **Основной язык обучения** | Русский | | **Перплексия** | **22.59** (на валидационной выборке) | | **Лицензия** | Apache 2.0 | ## Инференс Для запуска модели рекомендуется использовать библиотеку `transformers`. Пример кода для инференса на Python: ```python import torch from transformers import AutoTokenizer, AutoModelForCausalLM model_name = "Toondra/Clornet-150m" device = "cuda" if torch.cuda.is_available() else "cpu" tokenizer = AutoTokenizer.from_pretrained(model_name) model = AutoModelForCausalLM.from_pretrained(model_name).to(device) prompt = "В глубоком лесу росло странное дерево, которое" inputs = tokenizer(prompt, return_tensors="pt").to(device) with torch.no_grad(): outputs = model.generate( **inputs, max_new_tokens=64, do_sample=True, top_k=20, top_p=0.8, temperature=0.4, repetition_penalty=1.15 ) # Срезаем промпт, чтобы не дублировать его на выводе generated_ids = outputs[0][inputs.input_ids.shape[-1]:] generated_text = tokenizer.decode(generated_ids, skip_special_tokens=True) print("Результат генерации:") print(generated_text) ```