
DeepSeek-Math 7B 数学推理模型本地上手指南【免费下载链接】DeepSeek-MathDeepSeekMath: Pushing the Limits of Mathematical Reasoning in Open Language Models项目地址: https://gitcode.com/GitHub_Trending/de/DeepSeek-MathDeepSeek-Math 是 DeepSeek 开源的 7B 数学推理大语言模型基于 DeepSeek-Coder-v1.5 7B 继续预训练而来。它在竞赛级 MATH 数据集上取得了 51.7% 的 Top1 成绩官方 README 数据未使用外部工具接近 Gemini-Ultra 和 GPT-4 的水平。如果你想在本地跑一个专门解数学题的开源模型或想复现它的数学基准评测这份指南会在 10 分钟内讲清楚它是什么、怎么跑、边界在哪。项目定位它能做什么不能做什么这一节回答是否值得投入时间试用。先说清楚仓库里有什么。仓库主体是模型发布说明、评测代码和结果数据而不是一个应用工程replicate/提供基于 Cog 的推理服务入口replicate/predict.py是单文件预测脚本evaluation/是完整的基准评测套件覆盖 few_shot_test_configs.json 和 zero_shot_test_configs.json 配置包含 GSM8K、MATH、CMATH、Gaokao、SAT、OCW、MMLU-STEM 等数据位于 evaluation/datasets/outputs.zip 是官方发布的全部模型输出evaluation_results.json 是汇总后的评测结果。它能做什么中英文数学解题instruct 和 RL 版本支持思维链Chain-of-Thought即让模型先写出逐步推理过程再给答案推理对英文和中文问题分别有官方推荐的提示格式工具集成推理base 模型继承自代码模型 DeepSeek-Coder可以写 Python 程序辅助解题和验证这是它区别于普通数学模型的路线复现评测evaluation/目录可以按论文设定重跑 zero-shot 与 few-shot 评测。它不能做什么上下文长度固定为 4096 token不适合长文档数学分析或多轮超长对话官方明确不建议在输入中携带 system prompt该特性与当前版本模型不兼容模型权重不在本仓库内需从 Hugging Face 下载base / instruct / RL 三个版本它不是通用助手非数学的自然语言与代码能力只是可比的副产品别拿它替代通用模型。快速开始最小可运行路径这一节回答本地试用配置怎么做最少要执行哪几步。环境准备需要 Python PyTorch transformers建议 GPUbfloat16 推理。最小安装pip install torch transformers accelerate模型权重在 Hugging Face 上仓库 README 列出了三个可下载版本deepseek-math-7b-base、deepseek-math-7b-instruct、deepseek-math-7b-rl。如果只在本仓库内工作可先克隆评测与脚本部分git clone https://gitcode.com/GitHub_Trending/de/DeepSeek-Math第一次调用 base 模型以下代码来自仓库 README 的 Quick Start适用于有 CUDA GPU 的环境7B 模型 bfloat16 推理约需 15GB 显存显存不足时建议加量化参数import torch from transformers import AutoTokenizer, AutoModelForCausalLM, GenerationConfig model_name deepseek-ai/deepseek-math-7b-base tokenizer AutoTokenizer.from_pretrained(model_name) model AutoModelForCausalLM.from_pretrained( model_name, torch_dtypetorch.bfloat16, device_mapauto ) model.generation_config GenerationConfig.from_pretrained(model_name) model.generation_config.pad_token_id model.generation_config.eos_token_id text The integral of x^2 from 0 to 2 is inputs tokenizer(text, return_tensorspt) outputs model.generate(**inputs.to(model.device), max_new_tokens100) print(tokenizer.decode(outputs[0], skip_special_tokensTrue))跑通这段代码就验证了下载—加载—生成整条链路。按任务拆解能力base 补全、instruct 对话、工具推理这一节回答不同任务该选哪个模型版本、输入输出长什么样、常见坑在哪。任务一用 instruct 模型做对话式解题适用场景把数学题交给模型希望得到带推理步骤的完整解答。输入输出输入是带思维链指令的对话消息输出是推理过程加\boxed{}里的最终答案。使用建议官方要求对 instruct 和 RL 版本使用思维链提示英文问题追加Please reason step by step, and put your final answer within \boxed{}.中文问题追加请通过逐步推理来解答问题并把最终答案放置于\boxed{}中。。这是硬性要求不用该格式分数会明显下降。常见坑messages [ {role: user, content: what is the integral of x^2 from 0 to 2?\nPlease reason step by step, and put your final answer within \\boxed{}.} ] input_tensor tokenizer.apply_chat_template( messages, add_generation_promptTrue, return_tensorspt ) outputs model.generate(input_tensor.to(model.device), max_new_tokens100) print(tokenizer.decode(outputs[0][input_tensor.shape[1]:], skip_special_tokensTrue))用apply_chat_template会自动处理bos_tokentokenizer 默认加begin▁of▁sentence不要自己手动拼模板时再加一遍不要塞 system prompt官方明确说该版本不兼容截取输出时从input_tensor.shape[1]:开始否则会把问题本身解码出来。任务二用 base 模型做纯文本补全适用场景研究基座模型行为、做继续预训练前的能力摸底。输入输出输入是未完成的数学语句如 The integral of x^2 from 0 to 2 is输出是接着写出的答案没有对话格式。使用建议base 模型不理解用户/助手角色别套 chat 模板想要结构化输出就改用 instruct 版本。任务三工具集成推理写代码解题适用场景需要数值验证的题目比如求多项式在区间上的最值、复杂表达式求值。输入输出输入是题目加结合自然语言和 Python 程序解答的指令输出是推理加可执行代码块英文提示为Please integrate natural language reasoning with programs to solve the problem above, and put your final answer within \boxed{}.见 evaluation/README.md。使用建议这条路线的收益在 base_results_2.png 对应的官方评测表中有体现——base 模型借助写程序的能力在解题和形式化证明任务上都有提升。注意模型生成的代码不保证正确执行前需要沙箱隔离。跑评测从零到一份结果文件这一节回答如何安装评测环境并生成自己的评测结果。如果你只想看分数不跑实验直接读 evaluation_results.json 和 outputs.zip 即可官方输出已经全量给出。要复现的话evaluation/的入口是# 1. 先修改 environment.yml 中的 prefix 字段再创建环境 conda env create -f environment.yml # 2. 提交评测任务示例为 DeepSeekMath-Base 7B8 GPU python submit_eval_jobs.py --n-gpus 8 # 3. 汇总各进程结果生成 evaluation_results.json python summarize_results.py要点换模型或换数据集改 submit_eval_jobs.py 与 evaluation/configs/ 下的 JSON 配置few-shot 提示模板在 evaluation/few_shot_prompts/COT 和 PALProgram-Aided Learning两套都有summarize_results.py --eval-atp会调用 unsafe_score_minif2f_isabelle.py 评测形式化证明结果需要预先搭好 PISA/Isabelle 服务没搭的话不要加该参数单卡环境别照抄 8 GPU 示例--n-gpus按实际卡数改显存不够就减小批处理或分数据集跑。适合与不适合明确边界这一节回答什么人该用、什么场景别用。适合研究方向是数学推理、工具调用TIR、强化学习后训练仓库的 RL 模型用了 GRPO 算法的团队仓库同时放出 base / instruct / RL 三个 checkpoint方便对照实验需要在本地或私有云部署数学解题服务、且数据不能出域的开发者代码是 MIT 协议模型按 LICENSE-MODEL 使用允许商用模型使用需遵守该协议条款想用现成数据集和脚本快速做 baseline 的评测研究者evaluation/datasets/ 下 GSM8K、MATH、CMATH 等数据已就位。不适合追求低延迟、高并发线上推理的场景7B 模型用 transformers 原生generate吞吐有限生产环境应换 vLLM 之类的推理引擎本仓库未内置该部分需要 system prompt 精细控制、超长上下文的对话产品期待开箱即用的 Web UI 或 SDK仓库定位是模型发布 评测服务化入口只有replicate/这一个参考实现。一个客观预期官方口径是 base 模型不依赖工具时接近 GPT-4 水平、超过 Minerva 540BRL 模型在 MATH 上使用工具后接近 60% 准确率。具体数字以仓库 README 和评测表为准不同提示策略下波动不小。进阶路径从本地试用到服务化这一节回答跑通最小示例之后往哪走。本地调优先固定思维链提示格式再调max_new_tokens和采样参数temperature、top_k、top_preplicate/predict.py 里给了完整参数集默认temperature1、top_k50、top_p0.9。数学题建议降低随机性用低温度采样并多次生成取一致答案。服务化replicate/目录是现成参考predict.py 用 Cog 框架实现了流式输出TextIteratorStreamer和模型缓存加载cog.yaml 是部署配置。想自建 API 服务可以照它的setup 加载一次 predict 多次调用结构改造成任意 Web 框架。批量评测与对比改 evaluation/configs/ 下的 JSON把候选模型都指到同一批数据集上用summarize_results.py出统一报告中文能力重点看 CMATH、Gaokao 两组英文看 GSM8K、MATH。训练侧延伸如果你要继续预训练可以顺着 Data Collection 一节的流程理解数据构造——以 OpenWebMath 为种子训练 FastText 分类器从去重后的 Common Crawl 中召回数学网页经域名发现与人工标注迭代四轮最终得到 35.5M 页面、120B token 的数学语料。这套方法本身比数据更有复用价值。下一步按这个顺序做一天内能完成第一轮评估准备一张 16GB 以上显存的 GPU执行前文的安装和 base 模型补全示例确认链路跑通换成 instruct 模型用中文思维链提示测 3~5 道你业务里真实的数学题记录答案是否落在\boxed{}中、推理步骤是否自洽如果满足需求再看 replicate/predict.py 搭一个最小 API 服务如果要做严肃对比进 evaluation/ 按上文流程复现一次评测。【免费下载链接】DeepSeek-MathDeepSeekMath: Pushing the Limits of Mathematical Reasoning in Open Language Models项目地址: https://gitcode.com/GitHub_Trending/de/DeepSeek-Math创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考