GitHub Repo | Technical Report | Join Us
π Contact us in Discord and WeChat
MiniCPM4 and MiniCPM4.1 series are highly efficient large language models (LLMs) designed explicitly for end-side devices, which achieves this efficiency through systematic innovation in four key dimensions: model architecture, training data, training algorithms, and inference systems.
MiniCPM4.1-8B: The latest version of MiniCPM4, with 8B parameters, support fusion thinking.
MiniCPM4.1-8B-GPTQ: MiniCPM4.1-8B in GPTQ format. (<-- you are here)
MiniCPM4.1-8B-AutoAWQ: MiniCPM4.1-8B in AutoAWQ format.
MiniCPM-4.1-8B-Marlin: MiniCPM4.1-8B in Marlin format.
MiniCPM4.1-8B-GGUF: MiniCPM4.1-8B in GGUF format.
MiniCPM4.1-8B-MLX: MiniCPM4.1-8B in MLX format.
MiniCPM4.1-8B-Eagle3: Eagle3 model for MiniCPM4.1-8B.
MiniCPM4 Series
MiniCPM4 and MiniCPM4.1 are extremely efficient edge-side large model that has undergone efficient optimization across four dimensions: model architecture, learning algorithms, training data, and inference systems, achieving ultimate efficiency improvements.
ποΈ Efficient Model Architecture:
π§ Efficient Learning Algorithms:
π High-Quality Training Data:
β‘ Efficient Inference System:
pip install vllm
import os
import multiprocessing
os.environ['VLLM_USE_V1'] = '0'
multiprocessing.set_start_method('spawn', force=True)
from vllm import LLM, SamplingParams
prompt = "εδΊ¬ζδ»δΉε₯½η©ηε°ζΉ"
sampling_params = SamplingParams(temperature=0.6, top_p=0.9, max_tokens=1500)
llm = LLM(model="MiniCPM4.1-8B-GPTQ", trust_remote_code = True)
tokenizer = llm.get_tokenizer()
messages = [{"role": "user", "content": prompt}]
# if open think mode, use the following code
formatted_prompt = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
# if close think mode, use the following code
# formatted_prompt = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True, enable_thinking=False)
outputs = llm.generate([formatted_prompt], sampling_params)
print("-"*50)
for output in outputs:
prompt = output.prompt
generated_text = output.outputs[0].text
print(f"Prompt: {prompt!r}\nGenerated text: {generated_text!r}")
print("-"*50)
9 commits
GitHub Repo | Technical Report | Join Us
π Contact us in Discord and WeChat
MiniCPM4 and MiniCPM4.1 series are highly efficient large language models (LLMs) designed explicitly for end-side devices, which achieves this efficiency through systematic innovation in four key dimensions: model architecture, training data, training algorithms, and inference systems.
MiniCPM4.1-8B: The latest version of MiniCPM4, with 8B parameters, support fusion thinking.
MiniCPM4.1-8B-GPTQ: MiniCPM4.1-8B in GPTQ format. (<-- you are here)
MiniCPM4.1-8B-AutoAWQ: MiniCPM4.1-8B in AutoAWQ format.
MiniCPM-4.1-8B-Marlin: MiniCPM4.1-8B in Marlin format.
MiniCPM4.1-8B-GGUF: MiniCPM4.1-8B in GGUF format.
MiniCPM4.1-8B-MLX: MiniCPM4.1-8B in MLX format.
MiniCPM4.1-8B-Eagle3: Eagle3 model for MiniCPM4.1-8B.
MiniCPM4 Series
MiniCPM4 and MiniCPM4.1 are extremely efficient edge-side large model that has undergone efficient optimization across four dimensions: model architecture, learning algorithms, training data, and inference systems, achieving ultimate efficiency improvements.
ποΈ Efficient Model Architecture:
π§ Efficient Learning Algorithms:
π High-Quality Training Data:
β‘ Efficient Inference System:
pip install vllm
import os
import multiprocessing
os.environ['VLLM_USE_V1'] = '0'
multiprocessing.set_start_method('spawn', force=True)
from vllm import LLM, SamplingParams
prompt = "εδΊ¬ζδ»δΉε₯½η©ηε°ζΉ"
sampling_params = SamplingParams(temperature=0.6, top_p=0.9, max_tokens=1500)
llm = LLM(model="MiniCPM4.1-8B-GPTQ", trust_remote_code = True)
tokenizer = llm.get_tokenizer()
messages = [{"role": "user", "content": prompt}]
# if open think mode, use the following code
formatted_prompt = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
# if close think mode, use the following code
# formatted_prompt = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True, enable_thinking=False)
outputs = llm.generate([formatted_prompt], sampling_params)
print("-"*50)
for output in outputs:
prompt = output.prompt
generated_text = output.outputs[0].text
print(f"Prompt: {prompt!r}\nGenerated text: {generated_text!r}")
print("-"*50)
9 commits