--- language: en library_name: omni tags: - llm - multimodal - vlm - vam - voice - training-framework --- # Omni: Multimodal LLM Training & Inference Framework ![Python](https://img.shields.io/badge/-Python-3776AB?style=flat-square&logo=python&logoColor=white) ![PyTorch](https://img.shields.io/badge/-PyTorch-EE4C2C?style=flat-square&logo=pytorch&logoColor=white) ![HuggingFace](https://img.shields.io/badge/-HuggingFace-FFD21E?style=flat-square&logo=huggingface&logoColor=black) ![Transformers](https://img.shields.io/badge/-Transformers-2660B0?style=flat-square&logo=huggingface&logoColor=white) Train and serve **Language-only (LM)**, **Vision-Language (VLM)**, and **Full Omni-modal (VAM β€” text + vision + audio)** models under one framework. ## πŸ“’ News - **2026-07-23** πŸ—„οΈ HF Xet for large files β€” migrated all checkpoints & dataset (29 GB) to Xet storage; git stores LFS pointers, HF server uses Xet for chunk-dedup transport. - **2026-07-23** πŸ“¦ Omni-O HF conversion β€” `convert_omni_o_to_hf.py` converts `.pth` checkpoints to HuggingFace format with `trust_remote_code` support; auto-detects MoE vs dense architecture. - **2026-07-22** πŸŽ₯ Real-time camera + voice β€” `omni_o_call.py` streams webcam frames and ASR-transcribed voice into the Omni-O model; FP16 NaN guard, VAD-based interrupt, no hardcoded "请描述这张图片". - **2026-07-21** πŸ€— Published to HF Hub β€” model code + checkpoints at [chenbhao/omni](https://huggingface.co/chenbhao/omni). - **2026-07** πŸ§ͺ VAM real-time inference β€” `RealtimeSession` with SileroVAD, SenseVoice ASR, MimiCodec audio decode, and streaming generation. - **2026-06** πŸ”¬ Omni-O (VAM) training β€” Full-modal SFT with speech I/O, audio projector, and TalkerModule. - **2026-05** πŸ–ΌοΈ VLM training β€” Vision-language pretrain + SFT with SigLIP encoder and projector. - **2026-04** πŸ—οΈ LM training β€” Core pretrain / full SFT / LoRA / DPO / PPO / GRPO / distillation pipelines. - **2026-03** πŸŽ‰ Initial commit β€” core architecture (Attention, RoPE, MoE, RMSNorm, Block), LM training loop. ## πŸ“¦ Install ```bash uv sync # optional extras: RL training / API serving / web demo uv sync --extra rl --extra serve --extra demo ``` ### HF Xet (faster large-file transfer) Large checkpoint files (`*.pth`, `*.safetensors`, `*.parquet`, etc.) are tracked via Git LFS. Install the **git-xet** custom transfer agent to replace the standard LFS protocol with Xet's chunk-dedup transport for much faster push/pull: ```bash curl --proto '=https' --tlsv1.2 -sSf \ https://raw.githubusercontent.com/huggingface/xet-core/refs/heads/main/git_xet/install.sh | sh git xet install ``` After setup, use normal git workflow β€” `git-xet` automatically handles LFS objects: ```bash git lfs pull # download all large files git add && git commit # LFS pointer stored in git git push # Xet protocol uploads actual content ``` ## πŸš€ Quick Start ### Train (YAML-driven) All training shares a single entrypoint pattern `python -m trainers..