如何用MiniCPM3-4B实现本地AI对话超简单的Python推理教程附完整代码【免费下载链接】MiniCPM3-4B项目地址: https://ai.gitcode.com/hf_mirrors/zhouhui/MiniCPM3-4BMiniCPM3-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-4B2. 安装依赖包项目提供了 requirements.txt 文件里面包含了运行推理代码所需的依赖。我们可以使用 pip 命令来安装这些依赖pip install -r examples/requirements.txtrequirements.txt 文件中包含了以下主要依赖transformers4.41.0用于加载和运行预训练模型accelerate用于加速模型推理datamodel_code_generator数据模型代码生成工具jsonschemaJSON数据验证工具 快速开始使用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, typestr, helpPath to model, defaultzhouhui/MiniCPM3-4B, ) args parser.parse_args() return args然后根据系统是否支持NPU来选择设备NPU或CPUif is_torch_npu_available(): device npu:0 else: device cpu接下来加载tokenizer和模型tokenizer AutoTokenizer.from_pretrained(model_path, trust_remote_codeTrue) model AutoModelForCausalLM.from_pretrained(model_path, torch_dtypetorch.bfloat16, device_mapdevice, trust_remote_codeTrue)然后构建对话消息并生成模型输入messages [ {role: user, content: 推荐5个北京的景点。}, ] model_inputs tokenizer.apply_chat_template(messages, return_tensorspt, add_generation_promptTrue).to(device)最后使用模型生成回答并解码输出model_outputs model.generate( model_inputs, max_new_tokens1024, top_p0.7, temperature0.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_tokensTrue)[0] print(responses)3. 自定义对话内容如果你想进行自定义的对话只需要修改 messages 列表中的内容即可。例如如果你想询问什么是人工智能可以将 messages 改为messages [ {role: user, content: 什么是人工智能}, ]然后重新运行脚本就可以得到模型对这个问题的回答。⚡ 提升性能使用vLLM进行推理加速如果你想进一步提升推理性能可以使用vLLM来进行推理加速。vLLM是一个高性能的LLM服务库可以显著提高模型的推理速度。1. 安装vLLM首先需要安装项目提供的vLLM分支版本pip install githttps://github.com/OpenBMB/vllm.gitminicpm32. 使用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_codeTrue) input_text tokenizer.apply_chat_template(prompt, tokenizeFalse, add_generation_promptTrue) llm LLM( modelmodel_name, trust_remote_codeTrue, tensor_parallel_size1 ) sampling_params SamplingParams(top_p0.7, temperature0.7, max_tokens1024, repetition_penalty1.02) outputs llm.generate(promptsinput_text, sampling_paramssampling_params) print(outputs[0].outputs[0].text)使用vLLM可以大幅提高MiniCPM3-4B的推理速度让你的本地AI对话更加流畅。 MiniCPM3-4B性能评估MiniCPM3-4B在多个基准测试中表现出色下面是一些主要的评估结果在中文任务上MiniCPM3-4B表现优异CMMLU得分为73.3CEVAL得分为73.6均超过了许多同规模的模型。在数学任务上GSM8K得分为81.1MathBench得分为65.6展现了强大的数学推理能力。在代码任务上HumanEval得分为68.3MBPP得分为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),仅供参考