Instructions to use OpenAssistant/falcon-7b-sft-mix-2000 with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use OpenAssistant/falcon-7b-sft-mix-2000 with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="OpenAssistant/falcon-7b-sft-mix-2000", trust_remote_code=True)# Load model directly from transformers import AutoModelForCausalLM model = AutoModelForCausalLM.from_pretrained("OpenAssistant/falcon-7b-sft-mix-2000", trust_remote_code=True, device_map="auto") - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- vLLM
How to use OpenAssistant/falcon-7b-sft-mix-2000 with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "OpenAssistant/falcon-7b-sft-mix-2000" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "OpenAssistant/falcon-7b-sft-mix-2000", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }'Use Docker
docker model run hf.co/OpenAssistant/falcon-7b-sft-mix-2000
- SGLang
How to use OpenAssistant/falcon-7b-sft-mix-2000 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 "OpenAssistant/falcon-7b-sft-mix-2000" \ --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": "OpenAssistant/falcon-7b-sft-mix-2000", "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 "OpenAssistant/falcon-7b-sft-mix-2000" \ --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": "OpenAssistant/falcon-7b-sft-mix-2000", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }' - Docker Model Runner
How to use OpenAssistant/falcon-7b-sft-mix-2000 with Docker Model Runner:
docker model run hf.co/OpenAssistant/falcon-7b-sft-mix-2000
| license: apache-2.0 | |
| language: | |
| - en | |
| - de | |
| - es | |
| - fr | |
| tags: | |
| - sft | |
| pipeline_tag: text-generation | |
| widget: | |
| - text: >- | |
| <|prompter|>What is a meme, and what's the history behind this | |
| word?<|endoftext|><|assistant|> | |
| - text: <|prompter|>What's the Earth total population<|endoftext|><|assistant|> | |
| - text: >- | |
| <|prompter|>Write a story about future of AI | |
| development<|endoftext|><|assistant|> | |
| datasets: | |
| - OpenAssistant/oasst1 | |
| # Open-Assistant Falcon 7B SFT MIX Model | |
| This model is a fine-tuning of TII's [Falcon 7B](https://huggingface.co/tiiuae/falcon-7b) LLM. | |
| It was trained on a mixture of OASST top-2 threads (exported on June 2, 2023), Dolly-15k and synthetic instruction datasets (see dataset configuration below). | |
| ## Model Details | |
| - **Finetuned from:** [tiiuae/falcon-7b](https://huggingface.co/tiiuae/falcon-7b) | |
| - **Model type:** Causal decoder-only transformer language model | |
| - **Language:** English, German, Spanish, French (and limited capabilities in Italian, Portuguese, Polish, Dutch, Romanian, Czech, Swedish); | |
| - **Weights & Biases:** [Training log](https://wandb.ai/open-assistant/public-sft/runs/tlevhltw) (Checkpoint: 2000 steps, ~2.9 epochs) | |
| - **Demo:** [Continuations for 250 random prompts](https://open-assistant.github.io/oasst-model-eval/?f=https%3A%2F%2Fraw.githubusercontent.com%2FOpen-Assistant%2Foasst-model-eval%2Fmain%2Fsampling_reports%2Fchat-gpt%2F2023-04-11_gpt-3.5-turbo_lottery.json%0Ahttps%3A%2F%2Fraw.githubusercontent.com%2FOpen-Assistant%2Foasst-model-eval%2Fmain%2Fsampling_reports%2Foasst-sft%2F2023-06-05_OpenAssistant_falcon-7b-sft-mix-2000_sampling_noprefix2.json) | |
| - **License:** Apache 2.0 | |
| - **Contact:** [Open-Assistant Discord](https://ykilcher.com/open-assistant-discord) | |
| ## Prompting | |
| Two special tokens are used to mark the beginning of user and assistant turns: | |
| `<|prompter|>` and `<|assistant|>`. Each turn ends with a `<|endoftext|>` token. | |
| Input prompt example: | |
| ``` | |
| <|prompter|>What is a meme, and what's the history behind this word?<|endoftext|><|assistant|> | |
| ``` | |
| The input ends with the `<|assistant|>` token to signal that the model should | |
| start generating the assistant reply. | |
| ## Sample Code | |
| ```python | |
| from transformers import AutoTokenizer | |
| import transformers | |
| import torch | |
| model = "OpenAssistant/falcon-7b-sft-mix-2000" | |
| tokenizer = AutoTokenizer.from_pretrained(model) | |
| pipeline = transformers.pipeline( | |
| "text-generation", | |
| model=model, | |
| tokenizer=tokenizer, | |
| torch_dtype=torch.bfloat16, | |
| trust_remote_code=True, | |
| device_map="auto", | |
| ) | |
| input_text="<|prompter|>What is a meme, and what's the history behind this word?<|endoftext|><|assistant|>" | |
| sequences = pipeline( | |
| input_text, | |
| max_length=500, | |
| do_sample=True, | |
| return_full_text=False, | |
| top_k=10, | |
| num_return_sequences=1, | |
| eos_token_id=tokenizer.eos_token_id, | |
| ) | |
| for seq in sequences: | |
| print(f"Result: {seq['generated_text']}") | |
| ``` | |
| ## Configuration Details | |
| Model: | |
| ``` | |
| falcon-7b: | |
| dtype: bf16 | |
| log_dir: "falcon_log_7b" | |
| learning_rate: 1e-5 | |
| model_name: "tiiuae/falcon-7b" | |
| deepspeed_config: configs/zero_config.json | |
| output_dir: falcon | |
| weight_decay: 0.0 | |
| max_length: 2048 | |
| warmup_steps: 20 | |
| gradient_checkpointing: true | |
| gradient_accumulation_steps: 4 | |
| per_device_train_batch_size: 4 | |
| per_device_eval_batch_size: 8 | |
| eval_steps: 100 | |
| save_steps: 500 | |
| save_strategy: steps | |
| num_train_epochs: 8 | |
| save_total_limit: 4 | |
| residual_dropout: 0.2 | |
| residual_dropout_lima: true | |
| ``` | |
| Dataset: | |
| ``` | |
| sft9-stage2: | |
| # oasst_export: 100.00% (29899) | |
| # vicuna: 50.00% (16963) | |
| # code_alpaca: 50.00% (9510) | |
| # oa_wiki_qa_bart_10000row: 100.00% (9434) | |
| # grade_school_math_instructions: 100.00% (8351) | |
| # dolly15k: 100.00% (14250) | |
| use_custom_sampler: true | |
| datasets: | |
| - oasst_export: | |
| lang: "bg,ca,cs,da,de,en,es,fr,hr,hu,it,nl,pl,pt,ro,ru,sl,sr,sv,uk" # sft-8.0 | |
| input_file_path: 2023-06-02_oasst_all_labels.jsonl.gz | |
| val_split: 0.05 | |
| top_k: 2 | |
| - vicuna: | |
| fraction: 0.5 | |
| val_split: 0.025 | |
| max_val_set: 250 | |
| - code_alpaca: | |
| fraction: 0.5 | |
| val_split: 0.05 | |
| max_val_set: 250 | |
| - oa_wiki_qa_bart_10000row: | |
| val_split: 0.05 | |
| max_val_set: 250 | |
| - grade_school_math_instructions: | |
| val_split: 0.05 | |
| - dolly15k: | |
| val_split: 0.05 | |
| max_val_set: 300 | |
| ``` |