Fill-Mask
Transformers
Safetensors
Korean
Literary Chinese
bert
text-generation
sillok
history
korean-history
classical-chinese
Instructions to use ddokbaro/SillokBert-Scratch with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use ddokbaro/SillokBert-Scratch with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("fill-mask", model="ddokbaro/SillokBert-Scratch")# pip install -U transformers accelerate # Load model directly from transformers import AutoTokenizer, AutoModelForMaskedLM tokenizer = AutoTokenizer.from_pretrained("ddokbaro/SillokBert-Scratch") model = AutoModelForMaskedLM.from_pretrained("ddokbaro/SillokBert-Scratch", device_map="auto") - Notebooks
- Google Colab
- Kaggle
Download scripts/2_define_architecture.py from ddokbaro/SillokBert-Scratch: direct link, hf CLI and curl.
- Browser
- Download file 2.14 kB
-
https://huggingface.co/ddokbaro/SillokBert-Scratch/resolve/main/scripts/2_define_architecture.py
- Command line
-
hf download hf://ddokbaro/SillokBert-Scratch/scripts/2_define_architecture.py
-
curl -L -o 2_define_architecture.py https://huggingface.co/ddokbaro/SillokBert-Scratch/resolve/main/scripts/2_define_architecture.py
2.14 kB
| # SillokBert-Scratch ํ๋ก์ ํธ 2๋จ๊ณ: ๋ชจ๋ธ ์ํคํ ์ฒ ์ ์ | |
| # ----------------------------------------------------------------- | |
| # 1๋จ๊ณ์์ ์์ฑ๋ ํ ํฌ๋์ด์ ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ฌ์ ํ์ต๋์ง ์์(from scratch) | |
| # BERT ๋ชจ๋ธ์ ๋ผ๋๋ฅผ ์ ์ํ๊ณ ์ ๋ณด๋ฅผ ํ์ธํฉ๋๋ค. | |
| # ----------------------------------------------------------------- | |
| from pathlib import Path | |
| from transformers import BertConfig, BertForMaskedLM, PreTrainedTokenizerFast | |
| def define_sillok_bert_architecture(): | |
| """ | |
| ์ฌ์ ํ์ต๋ ๊ฐ์ค์น ์์ด, BERT-base ๊ตฌ์กฐ์ ์ปค์คํ BPE ํ ํฌ๋์ด์ ์ดํ์ง์ | |
| ๋ง์ถฐ ์ด๊ธฐํ๋ '๋น' BERT ๋ชจ๋ธ์ ์ ์ํ๊ณ ์ ๋ณด๋ฅผ ์ถ๋ ฅํฉ๋๋ค. | |
| """ | |
| # --- ๊ฒฝ๋ก ์ค์ --- | |
| project_dir = Path("/home/work/baro/sillok/sillok_scratch_20250626") | |
| tokenizer_dir = project_dir / "sillok_tokenizer_bpe_preprocessed" | |
| tokenizer_file = tokenizer_dir / "tokenizer.json" | |
| print("--- 2. SillokBert Model Architecture Definition ---") | |
| # --- ํ ํฌ๋์ด์ ๋ก๋ ๋ฐ PAD ํ ํฐ ์ค์ --- | |
| tokenizer = PreTrainedTokenizerFast(tokenizer_file=str(tokenizer_file)) | |
| if tokenizer.pad_token is None: | |
| tokenizer.pad_token = '[PAD]' | |
| vocab_size = tokenizer.vocab_size | |
| print(f"๋ก๋๋ ์ดํ์ง ํฌ๊ธฐ (vocab_size): {vocab_size}") | |
| print(f"PAD ํ ํฐ ID: {tokenizer.pad_token_id}") | |
| # --- ๋ชจ๋ธ ๊ตฌ์ฑ(Configuration) ์ ์ --- | |
| config = BertConfig( | |
| vocab_size=vocab_size, | |
| hidden_size=768, | |
| num_hidden_layers=12, | |
| num_attention_heads=12, | |
| intermediate_size=3072, | |
| max_position_embeddings=512, | |
| pad_token_id=tokenizer.pad_token_id, | |
| ) | |
| print("\n์์ฑ๋ BERT ๋ชจ๋ธ ์ค์ (Configuration):") | |
| print(config) | |
| # --- ๋ชจ๋ธ ์์ฑ ๋ฐ ์ ๋ณด ํ์ธ --- | |
| model = BertForMaskedLM(config=config) | |
| print("\nโ 'From Scratch' BERT ๋ชจ๋ธ์ด ์ฑ๊ณต์ ์ผ๋ก ์์ฑ๋์์ต๋๋ค.") | |
| print(f"๋ชจ๋ธ์ ์ด ํ๋ผ๋ฏธํฐ ์: {model.num_parameters():,}") | |
| if __name__ == "__main__": | |
| define_sillok_bert_architecture() | |