news 2026/6/1 3:47:45

如何用MiniCPM3-4B实现本地AI对话?超简单的Python推理教程(附完整代码)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
如何用MiniCPM3-4B实现本地AI对话?超简单的Python推理教程(附完整代码)

如何用MiniCPM3-4B实现本地AI对话?超简单的Python推理教程(附完整代码)

【免费下载链接】MiniCPM3-4B项目地址: https://ai.gitcode.com/hf_mirrors/zhouhui/MiniCPM3-4B

MiniCPM3-4B是一款高性能的小型AI模型,其整体性能超越了Phi-3.5-mini-Instruct和GPT-3.5-Turbo-0125,可与许多最新的7B~9B模型相媲美。本文将为你提供一个超简单的Python推理教程,帮助你快速在本地搭建MiniCPM3-4B的AI对话环境,实现高效的本地AI对话体验。

📋 准备工作:环境搭建与依赖安装

在开始使用MiniCPM3-4B进行本地AI对话之前,我们需要先搭建好相应的环境并安装必要的依赖。

1. 克隆项目仓库

首先,我们需要将MiniCPM3-4B项目仓库克隆到本地。打开终端,执行以下命令:

git clone https://gitcode.com/hf_mirrors/zhouhui/MiniCPM3-4B cd MiniCPM3-4B

2. 安装依赖包

项目提供了 requirements.txt 文件,里面包含了运行推理代码所需的依赖。我们可以使用 pip 命令来安装这些依赖:

pip install -r examples/requirements.txt

requirements.txt 文件中包含了以下主要依赖:

  • transformers==4.41.0:用于加载和运行预训练模型
  • accelerate:用于加速模型推理
  • datamodel_code_generator:数据模型代码生成工具
  • jsonschema:JSON数据验证工具

🚀 快速开始:使用Python实现本地AI对话

完成环境搭建后,我们就可以使用Python代码来实现MiniCPM3-4B的本地AI对话了。项目提供了一个示例推理脚本 examples/inference.py,我们可以直接使用这个脚本来进行对话。

1. 运行示例推理脚本

在终端中执行以下命令,运行示例推理脚本:

python examples/inference.py

这个脚本会加载MiniCPM3-4B模型,并生成对"推荐5个北京的景点。"这个问题的回答。

2. 了解推理代码的工作原理

让我们来简单了解一下 examples/inference.py 中的代码是如何工作的:

首先,代码会解析命令行参数,获取模型路径:

def parse_args(): parser = argparse.ArgumentParser() parser.add_argument( "--model_name_or_path", type=str, help="Path to model", default="zhouhui/MiniCPM3-4B", ) args = parser.parse_args() return args

然后,根据系统是否支持NPU来选择设备(NPU或CPU):

if is_torch_npu_available(): device = "npu:0" else: device = "cpu"

接下来,加载tokenizer和模型:

tokenizer = AutoTokenizer.from_pretrained(model_path, trust_remote_code=True) model = AutoModelForCausalLM.from_pretrained(model_path, torch_dtype=torch.bfloat16, device_map=device, trust_remote_code=True)

然后,构建对话消息并生成模型输入:

messages = [ {"role": "user", "content": "推荐5个北京的景点。"}, ] model_inputs = tokenizer.apply_chat_template(messages, return_tensors="pt", add_generation_prompt=True).to(device)

最后,使用模型生成回答并解码输出:

model_outputs = model.generate( model_inputs, max_new_tokens=1024, top_p=0.7, temperature=0.7 ) output_token_ids = [ model_outputs[i][len(model_inputs[i]):] for i in range(len(model_inputs)) ] responses = tokenizer.batch_decode(output_token_ids, skip_special_tokens=True)[0] print(responses)

3. 自定义对话内容

如果你想进行自定义的对话,只需要修改 messages 列表中的内容即可。例如,如果你想询问"什么是人工智能?",可以将 messages 改为:

messages = [ {"role": "user", "content": "什么是人工智能?"}, ]

然后重新运行脚本,就可以得到模型对这个问题的回答。

⚡ 提升性能:使用vLLM进行推理加速

如果你想进一步提升推理性能,可以使用vLLM来进行推理加速。vLLM是一个高性能的LLM服务库,可以显著提高模型的推理速度。

1. 安装vLLM

首先,需要安装项目提供的vLLM分支版本:

pip install git+https://github.com/OpenBMB/vllm.git@minicpm3

2. 使用vLLM进行推理

使用vLLM进行推理的代码如下:

from transformers import AutoTokenizer from vllm import LLM, SamplingParams model_name = "openbmb/MiniCPM3-4B" prompt = [{"role": "user", "content": "推荐5个北京的景点。"}] tokenizer = AutoTokenizer.from_pretrained(model_name, trust_remote_code=True) input_text = tokenizer.apply_chat_template(prompt, tokenize=False, add_generation_prompt=True) llm = LLM( model=model_name, trust_remote_code=True, tensor_parallel_size=1 ) sampling_params = SamplingParams(top_p=0.7, temperature=0.7, max_tokens=1024, repetition_penalty=1.02) outputs = llm.generate(prompts=input_text, sampling_params=sampling_params) print(outputs[0].outputs[0].text)

使用vLLM可以大幅提高MiniCPM3-4B的推理速度,让你的本地AI对话更加流畅。

📊 MiniCPM3-4B性能评估

MiniCPM3-4B在多个基准测试中表现出色,下面是一些主要的评估结果:

在中文任务上,MiniCPM3-4B表现优异,CMMLU得分为73.3,CEVAL得分为73.6,均超过了许多同规模的模型。在数学任务上,GSM8K得分为81.1,MathBench得分为65.6,展现了强大的数学推理能力。在代码任务上,HumanEval+得分为68.3,MBPP+得分为63.2,说明MiniCPM3-4B也具备不错的代码生成能力。

总体而言,MiniCPM3-4B的平均得分为66.3,超过了Qwen2-7B-Instruct、GLM-4-9B-Chat等模型,是一款性能强大的小型AI模型。

📝 总结

通过本文的教程,你已经学会了如何使用MiniCPM3-4B实现本地AI对话。我们首先搭建了环境并安装了依赖,然后使用示例脚本进行了简单的对话,还介绍了如何使用vLLM来提升推理性能。MiniCPM3-4B是一款性能强大且易于使用的小型AI模型,非常适合在本地环境中部署和使用。

希望本文能够帮助你快速上手MiniCPM3-4B,享受本地AI对话带来的便利和乐趣!如果你有任何问题或建议,欢迎在项目仓库中提出。

【免费下载链接】MiniCPM3-4B项目地址: https://ai.gitcode.com/hf_mirrors/zhouhui/MiniCPM3-4B

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/1 3:47:41

Z-Image模型架构深度解析:Transformer在图像生成中的创新应用

Z-Image模型架构深度解析:Transformer在图像生成中的创新应用 【免费下载链接】Z-Image 项目地址: https://ai.gitcode.com/hf_mirrors/MindIE/Z-Image Z-Image作为HuggingFace镜像项目MindIE的核心组件,是一个基于Transformer架构的创新图像生成…

作者头像 李华
网站建设 2026/6/1 3:47:30

多保真贝叶斯优化在工业控制参数调优中的应用

1. 项目概述在工业自动化和智能制造领域,控制器参数的优化一直是个既关键又具有挑战性的任务。传统方法往往需要在真实系统上进行大量实验,不仅成本高昂,还可能影响生产安全。我在参与某工业机器人控制项目时,就曾面临这样的困境—…

作者头像 李华