$ show OpenBMB/MiniCPM
This repository is the official release hub for the MiniCPM family of compact large language models (1B to 8B parameters) from OpenBMB. It provides model weights, deployment scripts for 10+ inference backends (vLLM, SGLang, llama.cpp, Ollama, etc.), fine-tuning recipes for 5 frameworks (TRL, LLaMA-Factory, unsloth, etc.), quantization tools (AWQ, GPTQ, BNB), and application demos (survey generation, MCP tool calling, code interpreter). The repo is primarily a model card and cookbook collection rather than a single integrated application; it serves as a developer toolkit for deploying and customizing MiniCPM models in production and edge scenarios. The repository also includes research artifacts such as training datasets (UltraData suite) and technical reports, but the dominant character is applied machine learning engineering.
The LLM identified 2 files worth highlighting for reuse:
A self-contained XML tool parser plugin for vLLM that enables MiniCPM5 models to perform tool/function calling. It implements a custom tool parser class registered with vLLM's tool parser interface, demonstrating a clean separation of concerns and a reusable pattern for integrating custom tool calling formats with vLLM's serving infrastructure. This module can be extracted and adapted for other models that use a similar XML tool format.
A Jinja2 chat template that integrates tool calling instructions into the model's tokenizer template. It supports enabling/disabling thinking mode and embedding tool definitions directly in the conversation history. This pattern is reusable for any LLM that needs structured tool calling via chat templates and can be extracted as a reference for custom template design.