Text Generation
Transformers
Russian
English
gpt2
causal-lm
experimental
trained-from-scratch
spacemodel
undertrained
Instructions to use openmodelai/Galactic-2.5-Mini with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use openmodelai/Galactic-2.5-Mini with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="openmodelai/Galactic-2.5-Mini")# pip install -U transformers accelerate # Load model directly from transformers import AutoModel model = AutoModel.from_pretrained("openmodelai/Galactic-2.5-Mini", device_map="auto") - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- vLLM
How to use openmodelai/Galactic-2.5-Mini with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "openmodelai/Galactic-2.5-Mini" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "openmodelai/Galactic-2.5-Mini", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }'Use Docker
docker model run hf.co/openmodelai/Galactic-2.5-Mini
- SGLang
How to use openmodelai/Galactic-2.5-Mini with SGLang:
Install from pip and serve model
# Install SGLang from pip: pip install sglang # Start the SGLang server: python3 -m sglang.launch_server \ --model-path "openmodelai/Galactic-2.5-Mini" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "openmodelai/Galactic-2.5-Mini", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }'Use Docker images
docker run --gpus all \ --shm-size 32g \ -p 30000:30000 \ -v ~/.cache/huggingface:/root/.cache/huggingface \ --env "HF_TOKEN=<secret>" \ --ipc=host \ lmsysorg/sglang:latest \ python3 -m sglang.launch_server \ --model-path "openmodelai/Galactic-2.5-Mini" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "openmodelai/Galactic-2.5-Mini", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }' - Docker Model Runner
How to use openmodelai/Galactic-2.5-Mini with Docker Model Runner:
docker model run hf.co/openmodelai/Galactic-2.5-Mini
|
Download START_HERE.md from openmodelai/Galactic-2.5-Mini: direct link, hf CLI and curl.
- Browser
- Download file 9.76 kB
-
https://huggingface.co/openmodelai/Galactic-2.5-Mini/resolve/main/START_HERE.md
- Command line
-
hf download hf://openmodelai/Galactic-2.5-Mini/START_HERE.md
-
curl -L -o START_HERE.md https://huggingface.co/openmodelai/Galactic-2.5-Mini/resolve/main/START_HERE.md
9.76 kB
| # Galactic 2.5 Mini — SpaceModel | |
| **В архиве находятся реальные веса после короткого обучения с нуля, а не только код или случайная инициализация. Это технический эксперимент, не готовый русско-английский помощник.** | |
| ## Что это | |
| - Название: **Galactic 2.5 Mini**. | |
| - Разработчик / бренд по вашему указанию: **SpaceModel**. | |
| - 49 999 872 уникальных обучаемых параметра (~50 млн). | |
| - GPT-2-совместимый decoder-only Transformer: 12 слоёв, размерность 512, 8 голов, FFN 2048. | |
| - Собственный byte-level BPE, 23 258 токенов; русский и английский входят в обучающие данные. | |
| - Случайная инициализация: чужие предобученные веса не использовались. | |
| - 300 шагов AdamW на CPU, batch 2 × 128 токенов: 76 800 предъявлений входных токенов, 76 200 целевых предсказаний. Фрагменты выбирались с возвращением, это не число уникальных токенов. | |
| - Конфигурация контекста — 512 токенов; в этом запуске обучались последовательности только по 128. Длинный контекст не обучен и не проверен. | |
| - Веса FP16, около 100 МБ (95,4 MiB); для работы на CPU пример загружает FP32. | |
| ## Важное ограничение | |
| Такой объём обучения крайне мал. Не ожидайте связных ответов, следования инструкциям, достоверных знаний, устойчивой грамматики или полноценного владения обоими языками. Название «2.5» — заданное вами имя, а не указание на существовавшие предыдущие версии или уровень качества. Модель не проходила instruction tuning, safety tuning или внешние бенчмарки. | |
| ## Файлы | |
| - `model/` — **готовое содержимое репозитория модели на Hugging Face**. | |
| - `model/model.safetensors` — веса. | |
| - `model/config.json`, `generation_config.json` — конфигурация. | |
| - `model/tokenizer.json`, `tokenizer_config.json`, `special_tokens_map.json`, `vocab.json`, `merges.txt` — токенизатор. | |
| - `model/README.md` — карточка модели с фактическими результатами. | |
| - `model/training_report.json`, `training_log.jsonl` — отчёт и журнал реального запуска. | |
| - `model/verification.json` — проверка загрузки и некорректированные примеры генерации. | |
| - `data_sources.json` — источники, размеры и SHA-256 исходных текстов. | |
| - `prepare_data.py`, `train.py`, `infer.py`, `upload.py`, `requirements.txt` — код; копия включена в `model/training/` для публикации. | |
| - `SHA256SUMS.txt` — контрольные суммы остальных файлов архива. | |
| ## Запуск локально | |
| Рекомендуется Python 3.11–3.13. После распаковки откройте терминал в папке `Galactic-2.5-Mini`: | |
| ```bash | |
| python -m venv .venv | |
| # Linux/macOS: | |
| source .venv/bin/activate | |
| # Windows PowerShell вместо предыдущей команды: | |
| # .venv\Scripts\Activate.ps1 | |
| pip install -r requirements.txt | |
| python infer.py --prompt "Однажды вечером" --max-new-tokens 64 | |
| python infer.py --prompt "Once upon a time" --max-new-tokens 64 | |
| ``` | |
| Если нужен CPU-only PyTorch, установите его перед остальными зависимостями: | |
| ```bash | |
| pip install torch==2.5.1 --index-url https://download.pytorch.org/whl/cpu | |
| pip install -r requirements.txt | |
| ``` | |
| Не используйте `apply_chat_template`: эта модель предназначена для продолжения текста, шаблона чата нет. | |
| ## Загрузка на Hugging Face | |
| Публикация автоматически **не выполнялась**. Доступ к аккаунту не запрашивался. Не отправляйте токены доступа в чат. | |
| ### Через сайт | |
| 1. Создайте репозиторий модели `Galactic-2.5-Mini` в вашем аккаунте или организации. | |
| 2. Если хотите адрес `SpaceModel/Galactic-2.5-Mini`, вам нужны права на организацию `SpaceModel`. Её существование и доступность имени не проверялись. | |
| 3. Загрузите **содержимое** папки `model/` в корень репозитория. Саму внешнюю папку `model` загружать как вложенную не нужно. ZIP не заменяет распакованные файлы модели. | |
| 4. Сохраните предупреждение о коротком пробном обучении в карточке. | |
| ### Через командную строку | |
| ```bash | |
| hf auth login | |
| python upload.py --repo YOUR_NAMESPACE/Galactic-2.5-Mini | |
| ``` | |
| Скрипт создаёт **приватный** репозиторий по умолчанию. Проверьте файлы, карточку и лицензию, затем измените видимость в Settings. Для создания сразу публичного репозитория: | |
| ```bash | |
| python upload.py --repo YOUR_NAMESPACE/Galactic-2.5-Mini --public | |
| ``` | |
| У уже существующего репозитория скрипт не меняет видимость. В `YOUR_NAMESPACE` подставьте настоящий логин или организацию с правами записи. | |
| ## Воспроизведение и продолжение обучения | |
| В исходные данные входят пять старых произведений Project Gutenberg. Исходные тексты не вложены в архив; загрузчик получает их по открытым URL. Источники помечены Gutenberg как public domain в США; перед повторным использованием проверяйте применимые правила вашей юрисдикции. Это маленький разнородный корпус: поэзия, задачи, исторический текст и английская проза; часть русских текстов имеет старую орфографию. | |
| `prepare_data.py` удаляет внешнюю Gutenberg-шапку и лицензионный хвост; дополнительная очистка редакторских вставок/оглавлений не выполнялась. Последние 5% каждого произведения отложены для валидации и не участвуют в обучении токенизатора. Валидация оценивается на небольшом фиксированном наборе окон, а не на внешнем тесте. | |
| ```bash | |
| # Загружает данные и заново обучает токенизатор в model/. | |
| # Сначала сделайте копию model/: не перезаписывайте опубликованный токенизатор! | |
| python prepare_data.py | |
| # Полный повтор короткого запуска, со случайной инициализацией: | |
| python train.py --steps 300 --batch-size 2 --seq-len 128 --device cpu --output reproduced | |
| # Продолжить с экспортированных весов; оптимизатор будет НОВЫЙ: | |
| python train.py --resume model --output continued --steps 1000 --batch-size 2 --seq-len 128 | |
| ``` | |
| Изменение источников или версии токенизатора может изменить ID токенов. При продолжении обучения сохраняйте исходный токенизатор; если подготовили другой корпус, кодируйте его именно исходным токенизатором в `.cache/train_ru.npy`, `.cache/train_en.npy`, `.cache/valid_ru.npy`, `.cache/valid_en.npy` (одномерные массивы NumPy int32). **Нельзя заново обучить токенизатор на новых данных и использовать его со старыми весами.** | |
| Состояния оптимизатора/RNG не включены ради размера: точное продолжение с того же шага невозможно. Для полезной модели нужны значительно больше подходящих данных и вычислений; простое повторение этих же текстов не заменит полноценное предобучение. При длительном обучении добавьте регулярное сохранение чекпойнтов — текущий минимальный скрипт экспортирует веса только после завершения всех шагов. | |