Triangle104's picture
Update README.md
a359949 verified
metadata
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