CryptGPT: Privacy-Preserving Language Models Using Vigenere Cipher (Part 1)
diwank
• • 7How to use diwank/cryptgpt with Transformers:
# Use a pipeline as a high-level helper
from transformers import pipeline
pipe = pipeline("text-generation", model="diwank/cryptgpt") # Load model directly
from transformers import AutoTokenizer, AutoModelForCausalLM
tokenizer = AutoTokenizer.from_pretrained("diwank/cryptgpt")
model = AutoModelForCausalLM.from_pretrained("diwank/cryptgpt")How to use diwank/cryptgpt with vLLM:
# Install vLLM from pip:
pip install vllm
# Start the vLLM server:
vllm serve "diwank/cryptgpt"
# 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",
"prompt": "Once upon a time,",
"max_tokens": 512,
"temperature": 0.5
}'docker model run hf.co/diwank/cryptgpt
How to use diwank/cryptgpt with SGLang:
# Install SGLang from pip:
pip install sglang
# Start the SGLang server:
python3 -m sglang.launch_server \
--model-path "diwank/cryptgpt" \
--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",
"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" \
--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",
"prompt": "Once upon a time,",
"max_tokens": 512,
"temperature": 0.5
}'How to use diwank/cryptgpt with Docker Model Runner:
docker model run hf.co/diwank/cryptgpt
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
hub_model_id: diwank/cryptgpt
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: 64
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.1
bf16: auto
tf32: true
flash_attention: true
torch_compile: true
gradient_checkpointing: false
deepspeed: deepspeed_configs/zero2.json
max_steps: 1200000
eval_steps: 12000
save_steps: 12000
auto_resume_from_checkpoints: true
logging_steps: 1
eval_max_new_tokens: 128
eval_causal_lm_metrics:
- sacrebleu
wandb_project: cryptgpt-0.1
wandb_name: cryptgpt-run-07
This model is a fine-tuned version of diwank/cryptgpt 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 |
|---|---|---|---|
| 10.9453 | 0.0000 | 1 | 10.9383 |
| 3.0117 | 0.2933 | 12000 | 2.8623 |
| 2.5234 | 0.5866 | 24000 | 2.4040 |
| 2.3398 | 0.8799 | 36000 | 2.2717 |
Unable to build the model tree, the base model loops to the model itself. Learn more.