Skip to content

Commit

Permalink
Update all links (#254)
Browse files Browse the repository at this point in the history
Signed-off-by: Igor Gitman <[email protected]>
  • Loading branch information
Kipok authored Nov 20, 2024
1 parent e5fc148 commit 7269809
Show file tree
Hide file tree
Showing 17 changed files with 71 additions and 71 deletions.
12 changes: 6 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,17 +4,17 @@ NeMo-Skills is a collection of pipelines to improve "skills" of large language m
We mainly focus on the ability to solve mathematical problems, but you can use our pipelines for many other tasks as well.
Here are some of the things we support.

- [Flexible inference](https://kipok.github.io/NeMo-Skills/basics/inference): Seamlessly switch between API providers, local server and large-scale slurm jobs for LLM inference.
- [Multiple formats](https://kipok.github.io/NeMo-Skills/pipelines/checkpoint-conversion): Use any of the [NeMo](https://github.com/NVIDIA/NeMo), [vLLM](https://github.com/vllm-project/vllm)
- [Flexible inference](https://nvidia.github.io/NeMo-Skills/basics/inference): Seamlessly switch between API providers, local server and large-scale slurm jobs for LLM inference.
- [Multiple formats](https://nvidia.github.io/NeMo-Skills/pipelines/checkpoint-conversion): Use any of the [NeMo](https://github.com/NVIDIA/NeMo), [vLLM](https://github.com/vllm-project/vllm)
and [TensorRT-LLM](https://github.com/NVIDIA/TensorRT-LLM) servers and easily convert checkpoints from one format to another.
- [Model evaluation](https://kipok.github.io/NeMo-Skills/pipelines/evaluation): Evaluate your models on many popular benchmarks
- [Model evaluation](https://nvidia.github.io/NeMo-Skills/pipelines/evaluation): Evaluate your models on many popular benchmarks
- Math problem solving: gsm8k, math, amc23, aime24, omni-math (and many more)
- Coding skills: human-eval, mbpp
- Chat/instruction following: ifeval, arena-hard
- General knowledge: mmlu (generative)
- [Model training](https://kipok.github.io/NeMo-Skills/pipelines/training): Train models at speed-of-light using [NeMo-Aligner](https://github.com/NVIDIA/NeMo-Aligner/).
- [Model training](https://nvidia.github.io/NeMo-Skills/pipelines/training): Train models at speed-of-light using [NeMo-Aligner](https://github.com/NVIDIA/NeMo-Aligner/).

You can find the full documentation [here](https://kipok.github.io/NeMo-Skills/).
You can find the full documentation [here](https://nvidia.github.io/NeMo-Skills/).

## OpenMathInstruct-2

Expand Down Expand Up @@ -83,7 +83,7 @@ The models trained on this dataset achieve strong results on common mathematical
</tr>
</table>

We provide all instructions to [fully reproduce our results](https://kipok.github.io/NeMo-Skills/openmathinstruct2).
We provide all instructions to [fully reproduce our results](https://nvidia.github.io/NeMo-Skills/openmathinstruct2).

See our [paper](https://arxiv.org/abs/2410.01560) for ablations studies and more details!

Expand Down
16 changes: 8 additions & 8 deletions docs/basics/inference.md
Original file line number Diff line number Diff line change
Expand Up @@ -46,10 +46,10 @@ Click on :material-plus-circle: symbols in the snippet below to learn more detai
print(outputs[0]["generation"]) # (3)!
```

1. Here we use [generic/default](https://github.com/Kipok/NeMo-Skills/tree/main/nemo_skills/prompt/config/generic/default.yaml) config
and [llama3-instruct](https://github.com/Kipok/NeMo-Skills/tree/main/nemo_skills/prompt/template/llama3-instruct.yaml) template.
1. Here we use [generic/default](https://github.com/NVIDIA/NeMo-Skills/tree/main/nemo_skills/prompt/config/generic/default.yaml) config
and [llama3-instruct](https://github.com/NVIDIA/NeMo-Skills/tree/main/nemo_skills/prompt/template/llama3-instruct.yaml) template.

See [nemo_skills/prompt](https://github.com/Kipok/NeMo-Skills/tree/main/nemo_skills/prompt) for more config/template options
See [nemo_skills/prompt](https://github.com/NVIDIA/NeMo-Skills/tree/main/nemo_skills/prompt) for more config/template options
or [create your own prompts](prompt-format.md)


Expand Down Expand Up @@ -96,10 +96,10 @@ Click on :material-plus-circle: symbols in the snippet below to learn more detai

To use OpenAI models, use `OPENAI_API_KEY` and set `base_url=https://api.openai.com/v1`.

2. Here we use [generic/default](https://github.com/Kipok/NeMo-Skills/tree/main/nemo_skills/prompt/config/generic/default.yaml) config.
2. Here we use [generic/default](https://github.com/NVIDIA/NeMo-Skills/tree/main/nemo_skills/prompt/config/generic/default.yaml) config.
Note that with API models we can't add special tokens, so prompt template is not specified.

See [nemo_skills/prompt](https://github.com/Kipok/NeMo-Skills/tree/main/nemo_skills/prompt) for more config/template options
See [nemo_skills/prompt](https://github.com/NVIDIA/NeMo-Skills/tree/main/nemo_skills/prompt) for more config/template options
or [create your own prompts](prompt-format.md)


Expand Down Expand Up @@ -138,12 +138,12 @@ Click on :material-plus-circle: symbols in the snippet below to learn more detai
print(outputs[0]["generation"]) # (5)!
```

1. Here we use [generic/default](https://github.com/Kipok/NeMo-Skills/tree/main/nemo_skills/prompt/config/generic/default.yaml) config
and [llama3-instruct](https://github.com/Kipok/NeMo-Skills/tree/main/nemo_skills/prompt/template/llama3-instruct.yaml) template.
1. Here we use [generic/default](https://github.com/NVIDIA/NeMo-Skills/tree/main/nemo_skills/prompt/config/generic/default.yaml) config
and [llama3-instruct](https://github.com/NVIDIA/NeMo-Skills/tree/main/nemo_skills/prompt/template/llama3-instruct.yaml) template.

Note how we are updating system message on the next line (you can also include it in the config directly).

See [nemo_skills/prompt](https://github.com/Kipok/NeMo-Skills/tree/main/nemo_skills/prompt) for more config/template options
See [nemo_skills/prompt](https://github.com/NVIDIA/NeMo-Skills/tree/main/nemo_skills/prompt) for more config/template options
or [create your own prompts](prompt-format.md)

2. 8B model doesn't always follow these instructions, so using 70B or 405B for code execution is recommended.
Expand Down
12 changes: 6 additions & 6 deletions docs/basics/prerequisites.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
To get started first install the repo (python 3.10+). Either clone and run `pip install -e .` or install directly with

```bash
pip install git+https://github.com/Kipok/NeMo-Skills.git
pip install git+https://github.com/NVIDIA/NeMo-Skills.git
```

## Environment variables
Expand Down Expand Up @@ -48,9 +48,9 @@ python -c "import nemo_skills; print(nemo_skills.__path__)"

## Cluster configs

All of the [pipeline scripts](https://github.com/Kipok/NeMo-Skills/tree/main/nemo_skills/pipeline) accept `--cluster` argument which you can use
All of the [pipeline scripts](https://github.com/NVIDIA/NeMo-Skills/tree/main/nemo_skills/pipeline) accept `--cluster` argument which you can use
to control where the job gets executed. That argument picks up one of the configs inside your local
[cluster_configs](https://github.com/Kipok/NeMo-Skills/tree/main/cluster_configs)
[cluster_configs](https://github.com/NVIDIA/NeMo-Skills/tree/main/cluster_configs)
folder by default, but you can specify another location with `--config_dir` or set it in `NEMO_SKILLS_CONFIG_DIR` env variable.
You can also use `NEMO_SKILLS_CONFIG` env variable instead of the `--cluster` parameter.
The cluster config defines an executor (local or slurm), mounts for data/model access and (slurm-only) various parameters
Expand Down Expand Up @@ -78,7 +78,7 @@ all other parameters are directly passed into the underlying `nemo_skills/...` s

## Running pipelines

All of the [pipeline scripts](https://github.com/Kipok/NeMo-Skills/tree/main/nemo_skills/pipeline) can be called in 3 equivalent ways.
All of the [pipeline scripts](https://github.com/NVIDIA/NeMo-Skills/tree/main/nemo_skills/pipeline) can be called in 3 equivalent ways.
As an example let's see how to run [evaluation](../pipelines/evaluation.md) on 10 samples from gsm8k and math benchmarks

```bash title="ns command-line entrypoint"
Expand Down Expand Up @@ -132,7 +132,7 @@ set up on your machine.

All of our scripts assume that data or models are mounted inside the appropriate container so before running any
commands make sure to modify
[cluster_configs/example-local.yaml](https://github.com/Kipok/NeMo-Skills/tree/main/cluster_configs/example-local.yaml).
[cluster_configs/example-local.yaml](https://github.com/NVIDIA/NeMo-Skills/tree/main/cluster_configs/example-local.yaml).
It's convenient to rename it to local.yaml (so you can use `--cluster local`) after you defined necessary mounts.

Most of our containers are quite heavy, so the first time you run a job that requires a large container, it will take
Expand All @@ -144,5 +144,5 @@ to cache them.
If you're running on slurm, you need to define some additional information inside cluster config.

Populate the commented out fields inside
[cluster_configs/example-slurm.yaml](https://github.com/Kipok/NeMo-Skills/tree/main/cluster_configs/example-slurm.yaml).
[cluster_configs/example-slurm.yaml](https://github.com/NVIDIA/NeMo-Skills/tree/main/cluster_configs/example-slurm.yaml).
It's convenient to rename it to slurm.yaml (so you can use `--cluster slurm`) or a cluster name if you use multiple slurm clusters.
18 changes: 9 additions & 9 deletions docs/basics/prompt-format.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,9 @@ Our prompts are configured via two input yaml files: prompt template and prompt
The template file defines model-specific special tokens, e.g. bos, turn tokens,
user/assistant/system message, special tokens for code execution, etc. All of the
templates that we support by default are available in
[nemo_skills/prompt/template](https://github.com/Kipok/NeMo-Skills/tree/main/nemo_skills/prompt/template)
[nemo_skills/prompt/template](https://github.com/NVIDIA/NeMo-Skills/tree/main/nemo_skills/prompt/template)
folder. Here is an example template for
[llama3-instruct](https://github.com/Kipok/NeMo-Skills/tree/main/nemo_skills/prompt/template/llama3-instruct.yaml) models:
[llama3-instruct](https://github.com/NVIDIA/NeMo-Skills/tree/main/nemo_skills/prompt/template/llama3-instruct.yaml) models:

```yaml
# Prompt specification for the original Llama3-instruct model
Expand Down Expand Up @@ -64,9 +64,9 @@ in the included folder. If you provide a full path, we will take the file you sp
The prompt config contains user and system messages with placeholders for keys from a data file.
The configs are model independent (any model can be used with any config).
All of the configs that we support by default are available in
[nemo_skills/prompt/config](https://github.com/Kipok/NeMo-Skills/tree/main/nemo_skills/prompt/config)
[nemo_skills/prompt/config](https://github.com/NVIDIA/NeMo-Skills/tree/main/nemo_skills/prompt/config)
folder. Here is an example prompt for
[math evaluations](https://github.com/Kipok/NeMo-Skills/tree/main/nemo_skills/prompt/config/generic/math.yaml):
[math evaluations](https://github.com/NVIDIA/NeMo-Skills/tree/main/nemo_skills/prompt/config/generic/math.yaml):

```yaml
# default prompt for all math benchmarks (e.g. gsm8k, math)
Expand All @@ -91,15 +91,15 @@ user: |-
Note that we use `{problem}`, `{solution}` and `{examples}` format strings here. The `{examples}` is a special
key that will be used to include few shot examples you specify above (it's empty unless you add `++examples_type` or
specify it in the config like e.g. in
[llama3-gsm8k prompt](https://github.com/Kipok/NeMo-Skills/tree/main/nemo_skills/prompt/config/generic/gsm8k.yaml)).
[llama3-gsm8k prompt](https://github.com/NVIDIA/NeMo-Skills/tree/main/nemo_skills/prompt/config/generic/gsm8k.yaml)).
All other keys will need to be specified when you call `prompt.fill`
(more on that in the [prompt-api section](#prompt-api)) so that we can replace placeholders with actual input.

The input for few shot examples always comes from one of the available example types in
[here](https://github.com/Kipok/NeMo-Skills/tree/main/nemo_skills/prompt/few_shot_examples/__init__.py). E.g. in the
[llama3-gnstruct/gsm8k](https://github.com/Kipok/NeMo-Skills/tree/main/nemo_skills/prompt/config/llama3-instruct/gsm8k.yaml)
[here](https://github.com/NVIDIA/NeMo-Skills/tree/main/nemo_skills/prompt/few_shot_examples/__init__.py). E.g. in the
[llama3-gnstruct/gsm8k](https://github.com/NVIDIA/NeMo-Skills/tree/main/nemo_skills/prompt/config/llama3-instruct/gsm8k.yaml)
prompt the `gsm8k_standard_few_shot` examples from
[here](https://github.com/Kipok/NeMo-Skills/tree/main/nemo_skills/prompt/few_shot_examples/gsm8k.py) are used.
[here](https://github.com/NVIDIA/NeMo-Skills/tree/main/nemo_skills/prompt/few_shot_examples/gsm8k.py) are used.


## Prompt API
Expand Down Expand Up @@ -157,4 +157,4 @@ which outputs
]
```

You can also have a look at the [tests](https://github.com/Kipok/NeMo-Skills/tests/test_prompts.py) to see more examples of using our prompt API.
You can also have a look at the [tests](https://github.com/NVIDIA/NeMo-Skills/tests/test_prompts.py) to see more examples of using our prompt API.
2 changes: 1 addition & 1 deletion docs/code-execution/sandbox.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ we provide a basic sandbox that we use to execute code and validate the correctn
## Local sandbox

The default sandbox option used in our pipeline is a local docker container.
Check out [nemo_skills/code_execution/local_sandbox](https://github.com/Kipok/NeMo-Skills/blob/main/nemo_skills/code_execution/local_sandbox)
Check out [nemo_skills/code_execution/local_sandbox](https://github.com/NVIDIA/NeMo-Skills/blob/main/nemo_skills/code_execution/local_sandbox)
for implementation details.

Please note that our provided sandbox is not fully secure and you are strongly encouraged to
Expand Down
2 changes: 1 addition & 1 deletion docs/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ hide:
- toc
---

[NeMo-Skills](https://github.com/Kipok/NeMo-Skills) is a collection of pipelines to improve "skills" of large language models.
[NeMo-Skills](https://github.com/NVIDIA/NeMo-Skills) is a collection of pipelines to improve "skills" of large language models.
We mainly focus on the ability to solve mathematical problems, but you can use our pipelines for many other tasks as well.
Here are some of the things we support.

Expand Down
4 changes: 2 additions & 2 deletions docs/openmathinstruct2/dataset.md
Original file line number Diff line number Diff line change
Expand Up @@ -254,7 +254,7 @@ update_output_files("<path to workspace>/new-problems-solution-augmentation/", c

Now all the data is generated and you can follow up by converting it to the SFT format.
We remove the problems marked as contaminated.
We also remove problems and solutions with length > 1024 Llama tokens.
We also remove problems and solutions with length > 1024 Llama tokens.
To avoid the models from generating extremely short solutions, we remove solutions shorter than 200 characters.

```bash
Expand All @@ -276,4 +276,4 @@ python -m nemo_skills.training.prepare_sft_data \

## Dataset contamination explorer

To reproduce our dataset contamination explorer demo refer to [dataset_explorer_demo/README.md](https://github.com/Kipok/NeMo-Skills/blob/main/dataset_explorer_demo/README.md)
To reproduce our dataset contamination explorer demo refer to [dataset_explorer_demo/README.md](https://github.com/NVIDIA/NeMo-Skills/blob/main/dataset_explorer_demo/README.md)
4 changes: 2 additions & 2 deletions docs/openmathinstruct2/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,6 @@ for some of the commands to complete!
!!! note

If you want to reproduce results for [OpenMathInstruct-1: A 1.8 Million Math Instruction Tuning Dataset](https://arxiv.org/abs/2402.10176)
please check out [v0.1.1](https://github.com/Kipok/NeMo-Skills/blob/v0.1.1/docs/reproducing-results.md)
branch of the [NeMo-Skills](https://github.com/Kipok/NeMo-Skills) repo and read the instructions in there.
please check out [v0.1.1](https://github.com/NVIDIA/NeMo-Skills/blob/v0.1.1/docs/reproducing-results.md)
branch of the [NeMo-Skills](https://github.com/NVIDIA/NeMo-Skills) repo and read the instructions in there.

14 changes: 7 additions & 7 deletions docs/pipelines/checkpoint-conversion.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,21 +2,21 @@

!!! info

This pipeline starting script is [nemo_skills/pipeline/convert.py](https://github.com/Kipok/NeMo-Skills/blob/main/nemo_skills/pipeline/convert.py)
This pipeline starting script is [nemo_skills/pipeline/convert.py](https://github.com/NVIDIA/NeMo-Skills/blob/main/nemo_skills/pipeline/convert.py)

All extra parameters are passed to one of the following scripts

* For conversion to NeMo:
- If `--model_type=llama`: [nemo_skills/conversion/hf_to_nemo_llama.py](https://github.com/Kipok/NeMo-Skills/blob/main/nemo_skills/conversion/hf_to_nemo_llama.py)
- If `--model_type=qwen`: [nemo_skills/conversion/hf_to_nemo_qwen.py](https://github.com/Kipok/NeMo-Skills/blob/main/nemo_skills/conversion/hf_to_nemo_qwen.py)
- If `--model_type=llama`: [nemo_skills/conversion/hf_to_nemo_llama.py](https://github.com/NVIDIA/NeMo-Skills/blob/main/nemo_skills/conversion/hf_to_nemo_llama.py)
- If `--model_type=qwen`: [nemo_skills/conversion/hf_to_nemo_qwen.py](https://github.com/NVIDIA/NeMo-Skills/blob/main/nemo_skills/conversion/hf_to_nemo_qwen.py)

* For conversion to TensorRT-LLM:
- If `--model_type=llama`: [nemo_skills/conversion/hf_to_trtllm_llama.py](https://github.com/Kipok/NeMo-Skills/blob/main/nemo_skills/conversion/hf_to_trtllm_llama.py)
- If `--model_type=qwen`: [nemo_skills/conversion/hf_to_trtllm_qwen.py](https://github.com/Kipok/NeMo-Skills/blob/main/nemo_skills/conversion/hf_to_trtllm_qwen.py)
- If `--model_type=llama`: [nemo_skills/conversion/hf_to_trtllm_llama.py](https://github.com/NVIDIA/NeMo-Skills/blob/main/nemo_skills/conversion/hf_to_trtllm_llama.py)
- If `--model_type=qwen`: [nemo_skills/conversion/hf_to_trtllm_qwen.py](https://github.com/NVIDIA/NeMo-Skills/blob/main/nemo_skills/conversion/hf_to_trtllm_qwen.py)

* For conversion to HuggingFace:
- If `--model_type=llama`: [nemo_skills/conversion/nemo_to_hf_llama.py](https://github.com/Kipok/NeMo-Skills/blob/main/nemo_skills/conversion/nemo_to_hf_llama.py)
- If `--model_type=qwen`: [nemo_skills/conversion/nemo_to_hf_qwen.py](https://github.com/Kipok/NeMo-Skills/blob/main/nemo_skills/conversion/nemo_to_hf_qwen.py)
- If `--model_type=llama`: [nemo_skills/conversion/nemo_to_hf_llama.py](https://github.com/NVIDIA/NeMo-Skills/blob/main/nemo_skills/conversion/nemo_to_hf_llama.py)
- If `--model_type=qwen`: [nemo_skills/conversion/nemo_to_hf_qwen.py](https://github.com/NVIDIA/NeMo-Skills/blob/main/nemo_skills/conversion/nemo_to_hf_qwen.py)


We support 3 common model formats. Here are some recommendations on when each format should be used.
Expand Down
4 changes: 2 additions & 2 deletions docs/pipelines/decontamination.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@

!!! info

This pipeline starting script is [nemo_skills/pipeline/check_contamination.py](https://github.com/Kipok/NeMo-Skills/blob/main/nemo_skills/pipeline/check_contamination.py)
This pipeline starting script is [nemo_skills/pipeline/check_contamination.py](https://github.com/NVIDIA/NeMo-Skills/blob/main/nemo_skills/pipeline/check_contamination.py)

All extra parameters are passed to [nemo_skills/inference/check_contamination.py](https://github.com/Kipok/NeMo-Skills/blob/main/nemo_skills/inference/check_contamination.py)
All extra parameters are passed to [nemo_skills/inference/check_contamination.py](https://github.com/NVIDIA/NeMo-Skills/blob/main/nemo_skills/inference/check_contamination.py)

We implemented an LLM-based data decontamination pipeline following
[lmsys methodology](https://lmsys.org/blog/2023-11-14-llm-decontaminator/).
Expand Down
Loading

0 comments on commit 7269809

Please sign in to comment.