llama-stack/docs/source/distributions/self_hosted_distro
Charlie Doern f02f7b28c1
feat: add huggingface post_training impl (#2132)
# What does this PR do?


adds an inline HF SFTTrainer provider. Alongside touchtune -- this is a
super popular option for running training jobs. The config allows a user
to specify some key fields such as a model, chat_template, device, etc

the provider comes with one recipe `finetune_single_device` which works
both with and without LoRA.

any model that is a valid HF identifier can be given and the model will
be pulled.

this has been tested so far with CPU and MPS device types, but should be
compatible with CUDA out of the box

The provider processes the given dataset into the proper format,
establishes the various steps per epoch, steps per save, steps per eval,
sets a sane SFTConfig, and runs n_epochs of training

if checkpoint_dir is none, no model is saved. If there is a checkpoint
dir, a model is saved every `save_steps` and at the end of training.


## Test Plan

re-enabled post_training integration test suite with a singular test
that loads the simpleqa dataset:
https://huggingface.co/datasets/llamastack/simpleqa and a tiny granite
model: https://huggingface.co/ibm-granite/granite-3.3-2b-instruct. The
test now uses the llama stack client and the proper post_training API

runs one step with a batch_size of 1. This test runs on CPU on the
Ubuntu runner so it needs to be a small batch and a single step.

[//]: # (## Documentation)

---------

Signed-off-by: Charlie Doern <cdoern@redhat.com>
2025-05-16 14:41:28 -07:00
..
bedrock.md fix: remove code interpeter implementation (#2087) 2025-05-01 14:35:08 -07:00
cerebras.md fix: replace all instances of --yaml-config with --config (#2196) 2025-05-16 14:31:12 -07:00
dell-tgi.md fix: docker run with --pull always to fetch the latest image (#1733) 2025-03-20 15:35:48 -07:00
dell.md fix: replace all instances of --yaml-config with --config (#2196) 2025-05-16 14:31:12 -07:00
fireworks.md fix: remove code interpeter implementation (#2087) 2025-05-01 14:35:08 -07:00
groq.md fix: remove code interpeter implementation (#2087) 2025-05-01 14:35:08 -07:00
meta-reference-gpu.md fix: remove code interpeter implementation (#2087) 2025-05-01 14:35:08 -07:00
nvidia.md fix: replace all instances of --yaml-config with --config (#2196) 2025-05-16 14:31:12 -07:00
ollama.md feat: add huggingface post_training impl (#2132) 2025-05-16 14:41:28 -07:00
passthrough.md fix: remove code interpeter implementation (#2087) 2025-05-01 14:35:08 -07:00
remote-vllm.md fix: replace all instances of --yaml-config with --config (#2196) 2025-05-16 14:31:12 -07:00
sambanova.md feat(providers): sambanova updated to use LiteLLM openai-compat (#1596) 2025-05-06 16:50:22 -07:00
tgi.md fix: replace all instances of --yaml-config with --config (#2196) 2025-05-16 14:31:12 -07:00
together.md fix: revert "feat(provider): adding llama4 support in together inference provider (#2123)" (#2124) 2025-05-08 15:18:16 -07:00