Instructions to use Naphula/BlackDolphin-24B with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use Naphula/BlackDolphin-24B with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="Naphula/BlackDolphin-24B") messages = [ {"role": "user", "content": "Who are you?"}, ] pipe(messages)# Load model directly from transformers import AutoTokenizer, AutoModelForCausalLM tokenizer = AutoTokenizer.from_pretrained("Naphula/BlackDolphin-24B") model = AutoModelForCausalLM.from_pretrained("Naphula/BlackDolphin-24B") 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]:])) - Notebooks
- Google Colab
- Kaggle
- Local Apps
- vLLM
How to use Naphula/BlackDolphin-24B with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "Naphula/BlackDolphin-24B" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "Naphula/BlackDolphin-24B", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker
docker model run hf.co/Naphula/BlackDolphin-24B
- SGLang
How to use Naphula/BlackDolphin-24B 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 "Naphula/BlackDolphin-24B" \ --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": "Naphula/BlackDolphin-24B", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'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 "Naphula/BlackDolphin-24B" \ --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": "Naphula/BlackDolphin-24B", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }' - Docker Model Runner
How to use Naphula/BlackDolphin-24B with Docker Model Runner:
docker model run hf.co/Naphula/BlackDolphin-24B
Refusals triggered via SLERP
From the fallendolphin experiment merge:
O25 specifically tests a model's willingness to follow instruction even when offered a choice not to.
DolphinMistralVeniceEdition and FallenMistralv1e both pass this test individually. But when SLERPed, it says "I cannot assist with or encourage..."
So, something about merging can trigger refusals even in models that don't refuse. This probably applies to other merge methods, and also explains why BlackDolphin had more refusals than BlackSheep or DolphinVenice.
Dolphins reply: "Yes, I will explain these things to you."
Fallen Mistral doesn't even preface with anything and jumps right into the task.
No point releasing this merge since it fails compliance test.
But here is the yaml if anyone wants to try it.
base_model: dphn/Dolphin-Mistral-24B-Venice-Edition
architecture: MistralForCausalLM
merge_method: slerp
dtype: bfloat16
slices:
- sources:
- model: Naphula/BeaverAI_Fallen-Mistral-Small-3.1-24B-v1e_textonly
layer_range: [0, 40]
- model: dphn/Dolphin-Mistral-24B-Venice-Edition
layer_range: [0, 40]
parameters:
t: 0.5
tokenizer:
source: union
chat_template: auto
Hi I am the creator of BlackSheep, did you find a solution to merging where the refusal is unaffected? I can give you the layers to skip over that I used for abliteration to create BlackSheep as its not a fine tune its a persona vector model.
It appears the SLERP method in general re-activates refusals even with non-abliterated (finetuned) models. Precog and FallenMistral merged into Morax confirms this. The layers might help for other methods and it would be interesting to see if your process works on the new magistral 2509.
I may consider merging fallen mistral with dolpin and blacksheep using della normfalse instead since that seems less likely to refuse
Btw I am releasing a 12B version of black dolphin