license: llama3.1
base_model: nvidia/OpenMath2-Llama3.1-8B
datasets:
- nvidia/OpenMathInstruct-2
language:
- en
tags:
- nvidia
- math
- llama-cpp
- gguf-my-repo
library_name: transformers
Triangle104/OpenMath2-Llama3.1-8B-Q8_0-GGUF
This model was converted to GGUF format from nvidia/OpenMath2-Llama3.1-8B
using llama.cpp via the ggml.ai's GGUF-my-repo space.
Refer to the original model card for more details on the model.
Model details:
OpenMath2-Llama3.1-8B is obtained by finetuning Llama3.1-8B-Base with OpenMathInstruct-2.
The model outperforms Llama3.1-8B-Instruct on all the popular math benchmarks we evaluate on, especially on MATH by 15.9%.
How to use the models?
Our models are trained with the same "chat format" as Llama3.1-instruct models (same system/user/assistant tokens). Please note that these models have not been instruction tuned on general data and thus might not provide good answers outside of math domain.
We recommend using instructions in our repo to run inference with these models, but here is an example of how to do it through transformers api:
import transformers import torch
model_id = "nvidia/OpenMath2-Llama3.1-8B"
pipeline = transformers.pipeline( "text-generation", model=model_id, model_kwargs={"torch_dtype": torch.bfloat16}, device_map="auto", )
messages = [ { "role": "user", "content": "Solve the following math problem. Make sure to put the answer (and only answer) inside \boxed{}.\n\n" + "What is the minimum value of $a^2+6a-7$?"}, ]
outputs = pipeline( messages, max_new_tokens=4096, ) print(outputs[0]["generated_text"][-1]['content'])
Reproducing our results
We provide all instructions to fully reproduce our results. Citation
If you find our work useful, please consider citing us!
@article{toshniwal2024openmath2, title = {OpenMathInstruct-2: Accelerating AI for Math with Massive Open-Source Instruction Data}, author = {Shubham Toshniwal and Wei Du and Ivan Moshkov and Branislav Kisacanin and Alexan Ayrapetyan and Igor Gitman}, year = {2024}, journal = {arXiv preprint arXiv:2410.01560} }
Terms of use
By accessing this model, you are agreeing to the LLama 3.1 terms and conditions of the license, acceptable use policy and Meta’s privacy policy
Use with llama.cpp
Install llama.cpp through brew (works on Mac and Linux)
brew install llama.cpp
Invoke the llama.cpp server or the CLI.
CLI:
llama-cli --hf-repo Triangle104/OpenMath2-Llama3.1-8B-Q8_0-GGUF --hf-file openmath2-llama3.1-8b-q8_0.gguf -p "The meaning to life and the universe is"
Server:
llama-server --hf-repo Triangle104/OpenMath2-Llama3.1-8B-Q8_0-GGUF --hf-file openmath2-llama3.1-8b-q8_0.gguf -c 2048
Note: You can also use this checkpoint directly through the usage steps listed in the Llama.cpp repo as well.
Step 1: Clone llama.cpp from GitHub.
git clone https://github.com/ggerganov/llama.cpp
Step 2: Move into the llama.cpp folder and build it with LLAMA_CURL=1
flag along with other hardware-specific flags (for ex: LLAMA_CUDA=1 for Nvidia GPUs on Linux).
cd llama.cpp && LLAMA_CURL=1 make
Step 3: Run inference through the main binary.
./llama-cli --hf-repo Triangle104/OpenMath2-Llama3.1-8B-Q8_0-GGUF --hf-file openmath2-llama3.1-8b-q8_0.gguf -p "The meaning to life and the universe is"
or
./llama-server --hf-repo Triangle104/OpenMath2-Llama3.1-8B-Q8_0-GGUF --hf-file openmath2-llama3.1-8b-q8_0.gguf -c 2048