Skip to content

Commit

Permalink
Documentation init
Browse files Browse the repository at this point in the history
  • Loading branch information
voatsap committed Nov 16, 2023
1 parent 2d92a57 commit 8404b07
Show file tree
Hide file tree
Showing 4 changed files with 62 additions and 9 deletions.
48 changes: 48 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
# The SHALB Helm Library

Here we collect useful charts we designed in [SHALB](https://shalb.com) also used in our [cluster.dev](htts://cluster.dev) product for building cloud installers and creating infrastructure templates with Terraform modules and Helm charts.

## Before you begin

### Prerequisites

- Kubernetes 1.23+
- Helm 3.8.0+

## Setup a Kubernetes Cluster

The quickest way to setup a Kubernetes cluster in different clouds to install SHALB Charts is by using [cluster.dev](https://docs.cluster.dev).

## Bootstrapping Kubernetes in Different Clouds

Create fully featured Kubernetes clusters with required addons:

| Cloud Provider | Kubernetes Type | Sample Link | Technologies |
|----------------|-----------------|-------------------------|------------------|
| AWS | EKS | [**AWS-EKS**](https://docs.cluster.dev/examples-aws-eks/) | <img src="https://docs.cluster.dev/images/AWS.png" width="50" height="50"> <img src="https://docs.cluster.dev/images/Kubernetes.png" width="50" height="50"> |
| AWS | K3s | [**AWS-K3s**](https://docs.cluster.dev/examples-aws-k3s/) | <img src="https://docs.cluster.dev/images/AWS.png" width="50" height="50"> <img src="https://docs.cluster.dev/images/K3s.png" width="50" height="50"> |
| GCP | GKE | [**GCP-GKE**](https://docs.cluster.dev/examples-gcp-gke/) | <img src="https://docs.cluster.dev/images/Google Cloud Platform.png" width="50" height="50"> <img src="https://docs.cluster.dev/images/Kubernetes.png" width="50" height="50"> |
| AWS | K3s + Prometheus| [**AWS-K3s Prometheus**](https://docs.cluster.dev/examples-aws-k3s-prometheus/) | <img src="https://docs.cluster.dev/images/AWS.png" width="50" height="50"> <img src="https://docs.cluster.dev/images/K3s.png" width="50" height="50"> <img src="https://docs.cluster.dev/images/Prometheus.png" width="50" height="50"> |
| DO | K8s | [**DO-K8s**](https://docs.cluster.dev/examples-do-k8s/) | <img src="https://docs.cluster.dev/images/Digital Ocean.png" width="50" height="50"> <img src="https://docs.cluster.dev/images/Kubernetes.png" width="50" height="50"> |

## Using Helm

To install Helm, refer to the [Helm install guide](https://github.com/helm/helm#install) and ensure that the helm binary is in the PATH of your shell.
Once you have installed the Helm client, you can deploy a SHALB Helm Chart into a Kubernetes cluster.
Please refer to the [Quick Start guide](https://helm.sh/docs/intro/quickstart/).

## Using Helm with cluster.dev

Example of how to deploy application with Helm and Terraform to Kubernetes:

| Description | Sample Link | Technologies |
|-----------------------------|---------------------------------------|------------------|
| Kubernetes Terraform Helm | [**Quick Start with Kubernetes**](https://docs.cluster.dev/get-started-cdev-helm/) | <img src="https://docs.cluster.dev/images/Kubernetes.png" width="50" height="50"> <img src="https://docs.cluster.dev/images/terraform.png" width="50" height="50"> <img src="https://docs.cluster.dev/images/HELM.png" width="50" height="50"> |

## License

Copyright © 2023 SHALB.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0
2 changes: 1 addition & 1 deletion huggingface-model/Chart.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
apiVersion: v2
name: huggingface-model
description: Helm chart for deploy Hugging Face to kubernetes cluster. See [Hugging Face models](https://huggingface.co/models)
description: Helm chart for deploy Hugging Face models and chat-ui to Kubernetes cluster. See [Hugging Face models](https://huggingface.co/models)

type: application

Expand Down
9 changes: 7 additions & 2 deletions huggingface-model/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,11 @@
# Helm chart for deploy Hugging Face to kubernetes cluster
# Helm chart for deploy HuggingFace models to Kubernetes cluster

See [Hugging Face models](https://huggingface.co/models)
Charts install [Text Generation Inference](https://github.com/huggingface/text-generation-inference) container and serves [Text Generation LLM models](https://huggingface.co/models?pipeline_tag=text-generation).
It is possible to inject another image to serve inference with different approach.

init-container is used to download model to PVC storage from HuggingFace directly or from s3-compatible(and from other storage).

Also it would deploy [HuggingFace chat-ui](https://github.com/huggingface/chat-ui) image and configure it to use with deployed model to be able to chat with it in browser.

## Parameters

Expand Down
12 changes: 6 additions & 6 deletions huggingface-model/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,25 +3,25 @@
## ref: https://huggingface.co/models
## @param model.organization Models' company name on huggingface, required!
## @param model.name Models' name on huggingface, required!
## e.g. to deploy model https://huggingface.co/segmind/SSD-1B use configuration below:
## organization: segmind
## name: SSD-1B
## e.g. to deploy model https://huggingface.co/HuggingFaceH4/zephyr-7b-beta use configuration below:
## organization: HuggingFaceH4
## name: zephyr-7b-beta
##
model:
organization: ""
name: ""

## Init configuration. By default, init clone model from huggingface git.
## Init configuration. By default, init clone model from Huggingface git using git-lfs.
## The another way is to upload model to s3 bucket to reduce init delay and external traffic.
## @param init.s3.enabled Turn on/off s3 data source Default: disabled
## @param init.s3.bucketURL Full s3 URL included path to model's folder
##
init:
s3:
enabled: false
bucketURL: s3://k8s-model-zephyr/llm/deployment/segmind/SSD-1B
bucketURL: s3://k8s-model-zephyr/llm/deployment/HuggingFaceH4/zephyr-7b-beta

## huggingface block configure running text-generation-launcher internal port and additional arguments
## Huggingface block configure running text-generation-launcher internal port and additional arguments
## @param huggingface.containerPort Deployment/StatefulSet ContainerPort, optional
##
huggingface:
Expand Down

0 comments on commit 8404b07

Please sign in to comment.