Skip to main content

Llama Stack Provider for Distributed InstructLab Training using KFT

Project description

llama-stack-provider-kft

Llama Stack Remote Post Training Provider for Distributed InstructLab Training using the Kubeflow Trainer

Utilities

As a part of this package, the ilab-kft command line interface is available to get a cluster properly set up for distributed training.

NOTE: the oc cli is a pre-requisite to using this tool.

How to

Upload your SDG data to the cluster

Currently ilab-kft allows you to upload a local directory of data to your cluster mounted in a PVC.

example: python3.11 ilab-kft.py data-upload --data-path ~/.local/share/instructlab/datasets/ --pvc-name data --namespace default

Upload your model

Using the same data-upload command, you can also upload models:

example: python3.11 ilab-kft.py data-upload --data-path ~/.cache/instructlab/models/granite-7b-lab/ --pvc-name model --namespace default

Run training

Using llama-stack and the client SDK, one can spin up a llama stack server and run post-training using this provider

llama stack run run.yaml --image-type venv

python3.10 train.py

train.py utilizes the llama-stack-client python SDK to initialize training arguments, and pass the required arguments to supervised_fine_tune in order to kick off the provider implementation maintained externally in this repository.


Run llama-stack-provider-kft in cluster

1. Deploy Kustomize manifests

Apply the kustomize manifests under base directory.

kubectl apply -k manifests/base/

2. (Optional) Access the service locally

If you want to run a client such as the train.py script locally, you can port-forward the service to your localhost.

kubectl port-forward svc/lls-provider-kft 8321:80

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

llama_stack_provider_kft-0.1.0.tar.gz (11.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

llama_stack_provider_kft-0.1.0-py3-none-any.whl (11.8 kB view details)

Uploaded Python 3

File details

Details for the file llama_stack_provider_kft-0.1.0.tar.gz.

File metadata

File hashes

Hashes for llama_stack_provider_kft-0.1.0.tar.gz
Algorithm Hash digest
SHA256 b443b1b3cb37d99b125ac73a4dd8bc46e802603370c6f734ac175852375b830b
MD5 27e3f5aa2ffe596d8dfd335ffef1e6d0
BLAKE2b-256 56e9c1dca00dee4638ebcb43d57146dec3e3d08f65ba2323ae399f476b845582

See more details on using hashes here.

File details

Details for the file llama_stack_provider_kft-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for llama_stack_provider_kft-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9b567b1b676fe370ea55fcb91cd32e64c8bc54a610160ed3dbcaf09e9e3cf941
MD5 3541139ce8bf948c4bffa98c35525167
BLAKE2b-256 c718c41b7e1568c45bcda2ee183ffe4f1f5de88012710687f5a6dc1d920f1b40

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page