Instructions to use togethercomputer/GPT-NeoXT-Chat-Base-20B with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use togethercomputer/GPT-NeoXT-Chat-Base-20B with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="togethercomputer/GPT-NeoXT-Chat-Base-20B")# Load model directly from transformers import AutoTokenizer, AutoModelForCausalLM tokenizer = AutoTokenizer.from_pretrained("togethercomputer/GPT-NeoXT-Chat-Base-20B") model = AutoModelForCausalLM.from_pretrained("togethercomputer/GPT-NeoXT-Chat-Base-20B") - Notebooks
- Google Colab
- Kaggle
- Local Apps
- vLLM
How to use togethercomputer/GPT-NeoXT-Chat-Base-20B with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "togethercomputer/GPT-NeoXT-Chat-Base-20B" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "togethercomputer/GPT-NeoXT-Chat-Base-20B", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }'Use Docker
docker model run hf.co/togethercomputer/GPT-NeoXT-Chat-Base-20B
- SGLang
How to use togethercomputer/GPT-NeoXT-Chat-Base-20B with SGLang:
Install from pip and serve model
# Install SGLang from pip: pip install sglang # Start the SGLang server: python3 -m sglang.launch_server \ --model-path "togethercomputer/GPT-NeoXT-Chat-Base-20B" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "togethercomputer/GPT-NeoXT-Chat-Base-20B", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }'Use Docker images
docker run --gpus all \ --shm-size 32g \ -p 30000:30000 \ -v ~/.cache/huggingface:/root/.cache/huggingface \ --env "HF_TOKEN=<secret>" \ --ipc=host \ lmsysorg/sglang:latest \ python3 -m sglang.launch_server \ --model-path "togethercomputer/GPT-NeoXT-Chat-Base-20B" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "togethercomputer/GPT-NeoXT-Chat-Base-20B", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }' - Docker Model Runner
How to use togethercomputer/GPT-NeoXT-Chat-Base-20B with Docker Model Runner:
docker model run hf.co/togethercomputer/GPT-NeoXT-Chat-Base-20B
What kind of machine would be suitable for this model (in amazon sagemaker)?
For simply to try deployment and inference with up to 500 words. Any help?
Hi! The model has approximately 20 billion parameters and thus loading the model in FP16 format would require approximately 40GB of VRAM, with additional memory required for inference.
However, if you allow some loss of precision, you can also try 8bit quantization which should halve the memory footprint.
After installing accelerate and bitsandbytes, just try to load the model as follows:
model = AutoModelForCausalLM.from_pretrained('togethercomputer/GPT-NeoXT-Chat-Base-20B', device_map="auto", load_in_8bit=True)
Thanks for the help. Managed to deploy OK but unfortunately getting an error during inference (I deployed using very big instances (ml.g4dn.12xlarge that has 48 vCPU and 192 GiB mem). I wonder if the huggingface version (amazon supports up to transformers_version="4.17.0") is a problem or if there's something else going on.
I could deploy & do inference just fine on neo 125MB model, but this big 20B model is causing an error during inference:
ModelError: An error occurred (ModelError) when calling the InvokeEndpoint operation: Received client error (400) from primary with message "{
"code": 400,
"type": "InternalServerException",
"message": "\u0027gpt_neox\u0027"
}
It seems that most likely the problem is with the version. (Cross-posting this same link) ...here's a potential solution:
HI, were you able to solve this with the above solution?
It appears that 8-bit quantization works well on version 4.22.1, but not on version 4.21.1. So it is likely a version issue.