QuixiAI/dolphin
Viewer • Updated • 3.73M • 1.41k • 434
How to use sethuiyer/OpenDolphinHermes_Llama2_7B with Transformers:
# Use a pipeline as a high-level helper
from transformers import pipeline
pipe = pipeline("text-generation", model="sethuiyer/OpenDolphinHermes_Llama2_7B")
messages = [
{"role": "user", "content": "Who are you?"},
]
pipe(messages) # Load model directly
from transformers import AutoTokenizer, AutoModelForCausalLM
tokenizer = AutoTokenizer.from_pretrained("sethuiyer/OpenDolphinHermes_Llama2_7B")
model = AutoModelForCausalLM.from_pretrained("sethuiyer/OpenDolphinHermes_Llama2_7B")
messages = [
{"role": "user", "content": "Who are you?"},
]
inputs = tokenizer.apply_chat_template(
messages,
add_generation_prompt=True,
tokenize=True,
return_dict=True,
return_tensors="pt",
).to(model.device)
outputs = model.generate(**inputs, max_new_tokens=40)
print(tokenizer.decode(outputs[0][inputs["input_ids"].shape[-1]:]))How to use sethuiyer/OpenDolphinHermes_Llama2_7B with vLLM:
# Install vLLM from pip:
pip install vllm
# Start the vLLM server:
vllm serve "sethuiyer/OpenDolphinHermes_Llama2_7B"
# Call the server using curl (OpenAI-compatible API):
curl -X POST "http://localhost:8000/v1/chat/completions" \
-H "Content-Type: application/json" \
--data '{
"model": "sethuiyer/OpenDolphinHermes_Llama2_7B",
"messages": [
{
"role": "user",
"content": "What is the capital of France?"
}
]
}'docker model run hf.co/sethuiyer/OpenDolphinHermes_Llama2_7B
How to use sethuiyer/OpenDolphinHermes_Llama2_7B with SGLang:
# Install SGLang from pip:
pip install sglang
# Start the SGLang server:
python3 -m sglang.launch_server \
--model-path "sethuiyer/OpenDolphinHermes_Llama2_7B" \
--host 0.0.0.0 \
--port 30000
# Call the server using curl (OpenAI-compatible API):
curl -X POST "http://localhost:30000/v1/chat/completions" \
-H "Content-Type: application/json" \
--data '{
"model": "sethuiyer/OpenDolphinHermes_Llama2_7B",
"messages": [
{
"role": "user",
"content": "What is the capital of France?"
}
]
}'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 "sethuiyer/OpenDolphinHermes_Llama2_7B" \
--host 0.0.0.0 \
--port 30000
# Call the server using curl (OpenAI-compatible API):
curl -X POST "http://localhost:30000/v1/chat/completions" \
-H "Content-Type: application/json" \
--data '{
"model": "sethuiyer/OpenDolphinHermes_Llama2_7B",
"messages": [
{
"role": "user",
"content": "What is the capital of France?"
}
]
}'How to use sethuiyer/OpenDolphinHermes_Llama2_7B with Docker Model Runner:
docker model run hf.co/sethuiyer/OpenDolphinHermes_Llama2_7B
mergekit SLERP of these two models
slices:
- sources:
- model: cognitivecomputations/dolphin-llama2-7b
layer_range: [0, 32]
- model: Tensoic/Llama-2-openhermes
layer_range: [0, 32]
merge_method: slerp
base_model: Tensoic/Llama-2-openhermes
parameters:
t:
- filter: self_attn
value: [0, 0.5, 0.3, 0.7, 1]
- filter: mlp
value: [1, 0.5, 0.7, 0.3, 0]
- value: 0.5
dtype: bfloat16
<|im_start|>system
You are a helpful, respectful and honest assistant. Always answer as helpfully as possible, while being safe.
Your answers should not include any harmful, unethical, racist, sexist, toxic, dangerous, or illegal content.
Please ensure that your responses are socially unbiased and positive in nature.
If a question does not make any sense, or is not factually coherent, explain why instead of answering something not correct.
If you don't know the answer to a question, please don't share false information.
<|im_end|>
<|im_start|>user
{ .Prompt}
<|im_end|>
<|im_start|>assistant
| T | Model | Average | ARC | HellaSwag | MMLU | TruthfulQA | Winogrande | GSM8K |
|---|---|---|---|---|---|---|---|---|
| 0 | meta-llama/llama-2-13b-hf | 55.69 | 59.39 | 82.13 | 55.77 | 37.38 | 76.64 | 22.82 |
| 1 | sethuiyer/OpenDolphinHermes_Llama2_7B | 54.24 | 55.03 | 78.74 | 52.25 | 46.1 | 73.16 | 20.17 |
| 2 | togethercomputer/Llama-2-7B-32K-Instruct | 50.02 | 51.11 | 78.51 | 46.11 | 44.86 | 73.88 | 5.69 |
| 3 | togethercomputer/LLaMa-2-7B-32K | 47.07 | 47.53 | 76.14 | 43.33 | 39.23 | 71.9 | 4.32 |
I wanted a LLaMa2-7B model which is as good as base LLaMa2-13B model.
!pip install -qU transformers accelerate
from transformers import AutoTokenizer
import transformers
import torch
model = "sethuiyer/OpenDolphinHermes_Llama2_7B"
messages = [{"role": "user", "content": "What is a large language model?"}]
tokenizer = AutoTokenizer.from_pretrained(model)
prompt = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
pipeline = transformers.pipeline(
"text-generation",
model=model,
torch_dtype=torch.float16,
device_map="auto",
)
outputs = pipeline(prompt, max_new_tokens=256, do_sample=True, temperature=0.7, top_k=50, top_p=0.95)
print(outputs[0]["generated_text"])
Output:
A large language model is a type of artificial intelligence system that has been trained on a massive amount of data, often millions or even billions of words, to learn the patterns and relationships between words and phrases.
These models can then be used to generate new text, understand and translate languages, and perform various natural language processing tasks.
They have become increasingly popular in recent years due to advances in machine learning technology and their ability to achieve high levels of accuracy and performance on natural language processing tasks.
Examples of large language models include GPT-2, BERT, and T5.
Thanks to Google Colab for the compute.
Detailed results can be found here
| Metric | Value |
|---|---|
| Avg. | 54.24 |
| AI2 Reasoning Challenge (25-Shot) | 55.03 |
| HellaSwag (10-Shot) | 78.74 |
| MMLU (5-Shot) | 52.25 |
| TruthfulQA (0-shot) | 46.10 |
| Winogrande (5-shot) | 73.16 |
| GSM8k (5-shot) | 20.17 |