CryptGPT: Privacy-Preserving Language Models Using Vigenere Cipher (Part 1)
diwank
• • 7How to use diwank/cryptgpt-large with Transformers:
# Use a pipeline as a high-level helper
from transformers import pipeline
pipe = pipeline("text-generation", model="diwank/cryptgpt-large") # Load model directly
from transformers import AutoTokenizer, AutoModelForCausalLM
tokenizer = AutoTokenizer.from_pretrained("diwank/cryptgpt-large")
model = AutoModelForCausalLM.from_pretrained("diwank/cryptgpt-large")How to use diwank/cryptgpt-large with vLLM:
# Install vLLM from pip:
pip install vllm
# Start the vLLM server:
vllm serve "diwank/cryptgpt-large"
# Call the server using curl (OpenAI-compatible API):
curl -X POST "http://localhost:8000/v1/completions" \
-H "Content-Type: application/json" \
--data '{
"model": "diwank/cryptgpt-large",
"prompt": "Once upon a time,",
"max_tokens": 512,
"temperature": 0.5
}'docker model run hf.co/diwank/cryptgpt-large
How to use diwank/cryptgpt-large with SGLang:
# Install SGLang from pip:
pip install sglang
# Start the SGLang server:
python3 -m sglang.launch_server \
--model-path "diwank/cryptgpt-large" \
--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": "diwank/cryptgpt-large",
"prompt": "Once upon a time,",
"max_tokens": 512,
"temperature": 0.5
}'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 "diwank/cryptgpt-large" \
--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": "diwank/cryptgpt-large",
"prompt": "Once upon a time,",
"max_tokens": 512,
"temperature": 0.5
}'How to use diwank/cryptgpt-large with Docker Model Runner:
docker model run hf.co/diwank/cryptgpt-large
axolotl version: 0.4.1
# See:
# - https://github.com/karpathy/nanoGPT/blob/master/config/train_gpt2.py#L1
# - https://github.com/OpenAccess-AI-Collective/axolotl/blob/main/examples/tiny-llama/pretrain.yml#L14
# - https://github.com/karpathy/nanoGPT/blob/master/train.py#L35
base_model: diwank/cryptgpt-large
hub_model_id: diwank/cryptgpt-large
model_type: GPT2LMHeadModel
tokenizer_type: AutoTokenizer
trust_remote_code: true # required for CryptGPTTokenizer
resize_token_embeddings_to_32x: true
output_dir: ./outputs/model-out
datasets:
- path: diwank/encrypted-openwebtext
type: completion
dataset_prepared_path: ./cryptgpt-prepared-dataset
val_set_size: 0.04
shuffle_merged_datasets: false
sequence_len: 1024
pad_to_sequence_len: true
sample_packing: false
pretrain_multipack_attn: false
train_on_inputs: true
gradient_accumulation_steps: 1
micro_batch_size: 128
optimizer: adamw_bnb_8bit
adam_beta1: 0.9
adam_beta2: 0.95
seed: 42
lr_scheduler: cosine
learning_rate: 6e-4
cosine_min_lr_ratio: 0.1 # min: 6e-5
weight_decay: 0.15
bf16: auto
tf32: true
flash_attention: true
torch_compile: true
gradient_checkpointing: true
gradient_checkpointing_kwargs:
use_reentrant: true
deepspeed: deepspeed_configs/zero2.json
epochs: 20 # overriden by max_steps
max_steps: 600000
eval_steps: 12000
save_steps: 12000
save_total_limit: 3
early_stopping_patience: 3
auto_resume_from_checkpoints: true
logging_steps: 1
eval_max_new_tokens: 128
eval_causal_lm_metrics:
- sacrebleu
wandb_project: cryptgpt-large-0.1
wandb_name: cryptgpt-large-run-04
This model is a fine-tuned version of diwank/cryptgpt-large on the None dataset. It achieves the following results on the evaluation set:
More information needed
More information needed
More information needed
The following hyperparameters were used during training:
| Training Loss | Epoch | Step | Validation Loss |
|---|---|---|---|
| 15.7656 | 0.0000 | 1 | 15.4910 |
| 1.8545 | 0.5866 | 12000 | 1.8034 |
Unable to build the model tree, the base model loops to the model itself. Learn more.