Instructions to use BruhzWater/Forbidden-Fruit-L3.3-70b-0.2a with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use BruhzWater/Forbidden-Fruit-L3.3-70b-0.2a with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="BruhzWater/Forbidden-Fruit-L3.3-70b-0.2a") messages = [ {"role": "user", "content": "Who are you?"}, ] pipe(messages)# Load model directly from transformers import AutoTokenizer, AutoModelForCausalLM tokenizer = AutoTokenizer.from_pretrained("BruhzWater/Forbidden-Fruit-L3.3-70b-0.2a") model = AutoModelForCausalLM.from_pretrained("BruhzWater/Forbidden-Fruit-L3.3-70b-0.2a", device_map="auto") 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 Settings
- vLLM
How to use BruhzWater/Forbidden-Fruit-L3.3-70b-0.2a with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "BruhzWater/Forbidden-Fruit-L3.3-70b-0.2a" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "BruhzWater/Forbidden-Fruit-L3.3-70b-0.2a", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker
docker model run hf.co/BruhzWater/Forbidden-Fruit-L3.3-70b-0.2a
- SGLang
How to use BruhzWater/Forbidden-Fruit-L3.3-70b-0.2a 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 "BruhzWater/Forbidden-Fruit-L3.3-70b-0.2a" \ --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": "BruhzWater/Forbidden-Fruit-L3.3-70b-0.2a", "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 "BruhzWater/Forbidden-Fruit-L3.3-70b-0.2a" \ --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": "BruhzWater/Forbidden-Fruit-L3.3-70b-0.2a", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }' - Docker Model Runner
How to use BruhzWater/Forbidden-Fruit-L3.3-70b-0.2a with Docker Model Runner:
docker model run hf.co/BruhzWater/Forbidden-Fruit-L3.3-70b-0.2a
Forbidden-Fruit-L3.3-70b-0.2a
Mergefuel merge. The idea of this one was to broaden cultural, math/science, and medical knowledge. And of course, TheDrummer/Fallen-Llama-3.3-70B-v1 was added to prevent refusals and fit the theme. A sort of "all-around" model meant to serve as forbidden knowledge.
If you like this model, show the original creators some love <3!
Merge Details
Models Merged
The following models were included in the merge:
- AstroMLab/AstroSage-70B
- shisa-ai/shisa-v2-llama3.3-70b
- TheDrummer/Fallen-Llama-3.3-70B-v1
- deepcogito/cogito-v2-preview-llama-70B
- jdh-algo/Citrus1.0-llama-70B
- LumiOpen/Llama-Poro-2-70B-Instruct
Configuration
The following YAML configuration was used to produce this model:
models:
- model: /workspace/cache/models--shisa-ai--shisa-v2-llama3.3-70b/snapshots/0a3080fbcbfbb0160c30db82b05be039453a4c01
parameters:
weight: 0.16
density: 0.7
epsilon: 0.2
- model: /workspace/cache/models--AstroMLab--AstroSage-70B/snapshots/86496984f418ef5a6825f2c16983595e7f7d5930
parameters:
weight: 0.16
density: 0.7
epsilon: 0.2
- model: /workspace/cache/models--LumiOpen--Llama-Poro-2-70B-Instruct/snapshots/ba7a467a544e2b8d944a8a8636120fd0fea9358d
parameters:
weight: 0.16
density: 0.7
epsilon: 0.2
- model: /workspace/cache/models--jdh-algo--Citrus1.0-llama-70B/snapshots/cd76fde83bb61650a211b2bba499ec8489b91c3d
parameters:
weight: 0.16
density: 0.7
epsilon: 0.2
- model: /workspace/cache/models--TheDrummer--Fallen-Llama-3.3-70B-v1/snapshots/d46ef2629f1c3cd46789a55793c5ff0af60de3e8
parameters:
weight: 0.16
density: 0.7
epsilon: 0.2
- model: /workspace/cache/models--deepcogito--cogito-v2-preview-llama-70B/snapshots/1e1d12e8eaebd6084a8dcf45ecdeaa2f4b8879ce
parameters:
weight: 0.2
density: 0.5
epsilon: 0.25
base_model: /workspace/prototype-0.4x295
merge_method: della
parameters:
normalize: false
lambda: 1.05
chat_template: llama3
pad_to_multiple_of: 8
int8_mask: true
tokenizer:
source: base
dtype: float32
Chat template:
- Llama3
Instruct Template:
Llama3
Deep Cogito - https://huggingface.co/deepcogito/cogito-v1-preview-llama-70B
{{- '<|begin_of_text|>' }}
{%- if not tools is defined %}
{%- set tools = none %}
{%- endif %}
{%- if not enable_thinking is defined %}
{%- set enable_thinking = false %}
{%- endif %}
{#- This block extracts the system message, so we can slot it into the right place. #}
{%- if messages[0]['role'] == 'system' %}
{%- set system_message = messages[0]['content']|trim %}
{%- set messages = messages[1:] %}
{%- else %}
{%- set system_message = "" %}
{%- endif %}
{#- Set the system message. If enable_thinking is true, add the "Enable deep thinking subroutine." #}
{%- if enable_thinking %}
{%- if system_message != "" %}
{%- set system_message = "Enable deep thinking subroutine.
" ~ system_message %}
{%- else %}
{%- set system_message = "Enable deep thinking subroutine." %}
{%- endif %}
{%- endif %}
{#- Set the system message. In case there are tools present, add them to the system message. #}
{%- if tools is not none or system_message != '' %}
{{- "<|start_header_id|>system<|end_header_id|>
" }}
{{- system_message }}
{%- if tools is not none %}
{%- if system_message != "" %}
{{- "
" }}
{%- endif %}
{{- "Available Tools:
" }}
{%- for t in tools %}
{{- t | tojson(indent=4) }}
{{- "
" }}
{%- endfor %}
{%- endif %}
{{- "<|eot_id|>" }}
{%- endif %}
{#- Rest of the messages #}
{%- for message in messages %}
{#- The special cases are when the message is from a tool (via role ipython/tool/tool_results) or when the message is from the assistant, but has "tool_calls". If not, we add the message directly as usual. #}
{#- Case 1 - Usual, non tool related message. #}
{%- if not (message.role == "ipython" or message.role == "tool" or message.role == "tool_results" or (message.tool_calls is defined and message.tool_calls is not none)) %}
{{- '<|start_header_id|>' + message['role'] + '<|end_header_id|>
' }}
{%- if message['content'] is string %}
{{- message['content'] | trim }}
{%- else %}
{%- for item in message['content'] %}
{%- if item.type == 'text' %}
{{- item.text | trim }}
{%- endif %}
{%- endfor %}
{%- endif %}
{{- '<|eot_id|>' }}
{#- Case 2 - the response is from the assistant, but has a tool call returned. The assistant may also have returned some content along with the tool call. #}
{%- elif message.tool_calls is defined and message.tool_calls is not none %}
{{- "<|start_header_id|>assistant<|end_header_id|>
" }}
{%- if message['content'] is string %}
{{- message['content'] | trim }}
{%- else %}
{%- for item in message['content'] %}
{%- if item.type == 'text' %}
{{- item.text | trim }}
{%- if item.text | trim != "" %}
{{- "
" }}
{%- endif %}
{%- endif %}
{%- endfor %}
{%- endif %}
{{- "[" }}
{%- for tool_call in message.tool_calls %}
{%- set out = tool_call.function|tojson %}
{%- if not tool_call.id is defined %}
{{- out }}
{%- else %}
{{- out[:-1] }}
{{- ', "id": "' + tool_call.id + '"}' }}
{%- endif %}
{%- if not loop.last %}
{{- ", " }}
{%- else %}
{{- "]<|eot_id|>" }}
{%- endif %}
{%- endfor %}
{#- Case 3 - the response is from a tool call. The tool call may have an id associated with it as well. If it does, we add it to the prompt. #}
{%- elif message.role == "ipython" or message["role"] == "tool_results" or message["role"] == "tool" %}
{{- "<|start_header_id|>ipython<|end_header_id|>
" }}
{%- if message.tool_call_id is defined and message.tool_call_id != '' %}
{{- '{"content": ' + (message.content | tojson) + ', "call_id": "' + message.tool_call_id + '"}' }}
{%- else %}
{{- '{"content": ' + (message.content | tojson) + '}' }}
{%- endif %}
{{- "<|eot_id|>" }}
{%- endif %}
{%- endfor %}
{%- if add_generation_prompt %}
{{- '<|start_header_id|>assistant<|end_header_id|>
' }}
{%- endif %}
- Downloads last month
- 10
