Spaces:
Running
Running
| # โ๏ธ Hugging Face ํด๋ผ์ฐ๋ GPU ๋ฐฐํฌ ๊ฐ์ด๋ | |
| ## ๐ ๊ฐ์ | |
| ์ด ๊ฐ์ด๋๋ ๋ก์ปฌ PC์์ Hugging Face ํด๋ผ์ฐ๋ GPU ํ๊ฒฝ์ ์ค์ ํ๊ณ , AI ๋ชจ๋ธ์ ๋ฐฐํฌํ ํ Railway์์ ์คํ ์ค์ธ Hearth Chat๊ณผ ์ฐ๋ํ๋ ๋ฐฉ๋ฒ์ ์ค๋ช ํฉ๋๋ค. | |
| ## ๐ฏ ๋ชฉํ | |
| 1. **Hugging Face ํด๋ผ์ฐ๋ GPU ํ๊ฒฝ ์ค์ ** | |
| 2. **AI ๋ชจ๋ธ์ Hugging Face Hub์ ์ ๋ก๋** | |
| 3. **Inference Endpoints ์์ฑ** | |
| 4. **Railway Hearth Chat๊ณผ ์ฐ๋** | |
| ## ๐ 1๋จ๊ณ: Hugging Face ๊ณ์ ์ค์ | |
| ### 1.1 Hugging Face ๊ณ์ ์์ฑ | |
| 1. **Hugging Face ์น์ฌ์ดํธ ๋ฐฉ๋ฌธ**: https://huggingface.co | |
| 2. **ํ์๊ฐ์ **: ์ด๋ฉ์ผ๋ก ๊ณ์ ์์ฑ | |
| 3. **ํ๋กํ ์ค์ **: ์ฌ์ฉ์๋ช ์ค์ (์: `your-username`) | |
| ### 1.2 Access Token ์์ฑ | |
| 1. **Settings > Access Tokens**: https://huggingface.co/settings/tokens | |
| 2. **New Token ์์ฑ**: | |
| - Name: `lily-math-rag-token` | |
| - Role: `Write` | |
| 3. **ํ ํฐ ๋ณต์ฌ**: ์์ฑ๋ ํ ํฐ์ ์์ ํ ๊ณณ์ ์ ์ฅ | |
| ### 1.3 ๋ก์ปฌ ํ๊ฒฝ ์ค์ | |
| ```bash | |
| # Hugging Face CLI ์ค์น | |
| pip install huggingface_hub | |
| # ๋ก๊ทธ์ธ | |
| huggingface-cli login | |
| # ํ ํฐ ์ ๋ ฅ ํ๋กฌํํธ์์ ์์์ ์์ฑํ ํ ํฐ ์ ๋ ฅ | |
| ``` | |
| ## ๐ง 2๋จ๊ณ: ๋ชจ๋ธ ์ค๋น ๋ฐ ์ ๋ก๋ | |
| ### 2.1 ๋ก์ปฌ ๋ชจ๋ธ ํ์ธ | |
| ```bash | |
| cd C:\Project\lily_generate_project\lily_generate_package | |
| ls hearth_llm_model/ | |
| ``` | |
| ### 2.2 ๋ชจ๋ธ์ Hugging Face Hub์ ์ ๋ก๋ | |
| ```bash | |
| # ๋ชจ๋ธ ์ ๋ก๋ | |
| huggingface-cli upload your-username/lily-math-model hearth_llm_model/ | |
| # ๋๋ Python ์คํฌ๋ฆฝํธ ์ฌ์ฉ | |
| python huggingface_cloud_setup.py | |
| ``` | |
| ### 2.3 ๋ชจ๋ธ ์นด๋ ์์ฑ | |
| ```markdown | |
| # ๋ชจ๋ธ ์นด๋ ์์ (README.md) | |
| --- | |
| language: ko | |
| tags: | |
| - math | |
| - rag | |
| - korean | |
| license: mit | |
| --- | |
| # Lily Math RAG Model | |
| ์ํ ๋ฌธ์ ํด๊ฒฐ์ ์ํ ํ๊ตญ์ด RAG ๋ชจ๋ธ์ ๋๋ค. | |
| ## ์ฌ์ฉ๋ฒ | |
| ```python | |
| from transformers import AutoTokenizer, AutoModelForCausalLM | |
| tokenizer = AutoTokenizer.from_pretrained("your-username/lily-math-model") | |
| model = AutoModelForCausalLM.from_pretrained("your-username/lily-math-model") | |
| ``` | |
| ``` | |
| ## โ๏ธ 3๋จ๊ณ: Hugging Face Inference Endpoints ์ค์ | |
| ### 3.1 Inference Endpoints ์์ฑ | |
| 1. **Hugging Face ์น์ฌ์ดํธ ๋ฐฉ๋ฌธ**: https://huggingface.co/inference-endpoints | |
| 2. **New Endpoint ํด๋ฆญ** | |
| 3. **์ค์ ์ ๋ ฅ**: | |
| - **Repository**: `your-username/lily-math-model` | |
| - **Framework**: `PyTorch` | |
| - **Region**: `us-east-1` (๊ฐ์ฅ ๋น ๋ฆ) | |
| - **Instance Type**: `gpu.t4.medium` (์์์ฉ) | |
| - **Accelerator**: `GPU` | |
| ### 3.2 ์๋ํฌ์ธํธ ์ค์ | |
| ```json | |
| { | |
| "repository": "your-username/lily-math-model", | |
| "framework": "pytorch", | |
| "accelerator": "gpu", | |
| "instance_type": "gpu.t4.medium", | |
| "region": "us-east-1", | |
| "vendor": "aws" | |
| } | |
| ``` | |
| ### 3.3 ์๋ํฌ์ธํธ URL ํ์ธ | |
| - ์์ฑ๋ ์๋ํฌ์ธํธ์ URL์ ๋ณต์ฌ | |
| - ์: `https://your-endpoint-id.us-east-1.aws.endpoints.huggingface.cloud` | |
| ## ๐ 4๋จ๊ณ: Railway Hearth Chat ์ฐ๋ | |
| ### 4.1 ํ๊ฒฝ ๋ณ์ ์ค์ | |
| ```bash | |
| # ํ๊ฒฝ ๋ณ์ ์ค์ | |
| export RAILWAY_HEARTH_CHAT_URL="https://hearth-chat-production.up.railway.app" | |
| export HF_ENDPOINT_URL="https://your-endpoint-id.us-east-1.aws.endpoints.huggingface.cloud" | |
| export HF_TOKEN="your-huggingface-token" | |
| ``` | |
| ### 4.2 ์ฐ๋ ํ ์คํธ | |
| ```bash | |
| # ์ฐ๋ ํ ์คํธ ์คํ | |
| python railway_hearth_chat_integration.py | |
| ``` | |
| ### 4.3 Hearth Chat API ์์ (ํ์์) | |
| Railway Hearth Chat์์ Hugging Face ์๋ํฌ์ธํธ๋ฅผ ํธ์ถํ๋๋ก API๋ฅผ ์์ : | |
| ```javascript | |
| // Hearth Chat API ์์ | |
| async function callHuggingFaceAPI(message) { | |
| const response = await fetch(process.env.HF_ENDPOINT_URL, { | |
| method: 'POST', | |
| headers: { | |
| 'Authorization': `Bearer ${process.env.HF_TOKEN}`, | |
| 'Content-Type': 'application/json' | |
| }, | |
| body: JSON.stringify({ | |
| inputs: message, | |
| parameters: { | |
| max_length: 200, | |
| temperature: 0.7 | |
| } | |
| }) | |
| }); | |
| const result = await response.json(); | |
| return result.generated_text; | |
| } | |
| ``` | |
| ## ๐งช 5๋จ๊ณ: ํ ์คํธ ๋ฐ ๊ฒ์ฆ | |
| ### 5.1 Hugging Face ์๋ํฌ์ธํธ ํ ์คํธ | |
| ```bash | |
| # ์๋ํฌ์ธํธ ํ ์คํธ | |
| curl -X POST https://your-endpoint-id.us-east-1.aws.endpoints.huggingface.cloud \ | |
| -H "Authorization: Bearer your-token" \ | |
| -H "Content-Type: application/json" \ | |
| -d '{ | |
| "inputs": "์๋ ํ์ธ์! ์ํ ๋ฌธ์ ๋ฅผ ๋์์ฃผ์ธ์.", | |
| "parameters": { | |
| "max_length": 100, | |
| "temperature": 0.7 | |
| } | |
| }' | |
| ``` | |
| ### 5.2 Railway ์ฐ๋ ํ ์คํธ | |
| ```bash | |
| # ์ ์ฒด ์ฐ๋ ํ ์คํธ | |
| python test_railway_huggingface_integration.py | |
| ``` | |
| ## ๐ 6๋จ๊ณ: ๋ชจ๋ํฐ๋ง ๋ฐ ์ต์ ํ | |
| ### 6.1 Hugging Face ๋ชจ๋ํฐ๋ง | |
| - **Inference Endpoints ๋์๋ณด๋**: https://huggingface.co/inference-endpoints | |
| - **์ฌ์ฉ๋ ํ์ธ**: GPU ์ฌ์ฉ๋, ์์ฒญ ์, ์๋ต ์๊ฐ | |
| - **๋น์ฉ ๋ชจ๋ํฐ๋ง**: ์๋ณ ์ฌ์ฉ๋ ๋ฐ ๋น์ฉ | |
| ### 6.2 Railway ๋ชจ๋ํฐ๋ง | |
| - **Railway ๋์๋ณด๋**: https://railway.app/dashboard | |
| - **๋ก๊ทธ ํ์ธ**: ์ ํ๋ฆฌ์ผ์ด์ ๋ก๊ทธ ๋ฐ ์ค๋ฅ | |
| - **์ฑ๋ฅ ๋ชจ๋ํฐ๋ง**: ์๋ต ์๊ฐ, ๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ๋ | |
| ## ๐ง ๋ฌธ์ ํด๊ฒฐ | |
| ### Hugging Face ๊ด๋ จ ๋ฌธ์ | |
| 1. **ํ ํฐ ์ธ์ฆ ์ค๋ฅ**: ํ ํฐ ์ฌ์์ฑ ๋ฐ ํ์ธ | |
| 2. **๋ชจ๋ธ ์ ๋ก๋ ์คํจ**: ํ์ผ ํฌ๊ธฐ ๋ฐ ํ์ ํ์ธ | |
| 3. **์๋ํฌ์ธํธ ์์ฑ ์คํจ**: GPU ํ ๋น๋ ํ์ธ | |
| ### Railway ์ฐ๋ ๋ฌธ์ | |
| 1. **์ฐ๊ฒฐ ์คํจ**: URL ๋ฐ ๋คํธ์ํฌ ํ์ธ | |
| 2. **API ์ค๋ฅ**: ์๋ํฌ์ธํธ ๋ฐ ํค๋ ํ์ธ | |
| 3. **์๋ต ์ง์ฐ**: ํ์์์ ์ค์ ์กฐ์ | |
| ## ๐ฐ ๋น์ฉ ์ต์ ํ | |
| ### Hugging Face ๋น์ฉ | |
| - **gpu.t4.medium**: $0.60/์๊ฐ (์์์ฉ) | |
| - **gpu.t4.large**: $1.20/์๊ฐ (์ฑ๋ฅ ํฅ์) | |
| - **gpu.a10g**: $2.40/์๊ฐ (๊ณ ์ฑ๋ฅ) | |
| ### ๋น์ฉ ์ ์ฝ ํ | |
| 1. **์๋ ์ค์ผ์ผ๋ง**: ์ฌ์ฉํ์ง ์์ ๋ ์๋ํฌ์ธํธ ์ค์ง | |
| 2. **์บ์ฑ**: ๋์ผํ ์์ฒญ์ ๋ํ ์๋ต ์บ์ฑ | |
| 3. **๋ฐฐ์น ์ฒ๋ฆฌ**: ์ฌ๋ฌ ์์ฒญ์ ํ ๋ฒ์ ์ฒ๋ฆฌ | |
| ## ๐ ๋ฐฐํฌ ์ฒดํฌ๋ฆฌ์คํธ | |
| - [ ] Hugging Face ๊ณ์ ์์ฑ ๋ฐ ํ ํฐ ์ค์ | |
| - [ ] ๋ก์ปฌ ๋ชจ๋ธ ํ์ธ ๋ฐ ์ ๋ก๋ | |
| - [ ] Inference Endpoints ์์ฑ | |
| - [ ] ์๋ํฌ์ธํธ URL ๋ฐ ํ ํฐ ํ์ธ | |
| - [ ] Railway Hearth Chat URL ํ์ธ | |
| - [ ] ํ๊ฒฝ ๋ณ์ ์ค์ | |
| - [ ] ์ฐ๋ ํ ์คํธ ์คํ | |
| - [ ] ๋ชจ๋ํฐ๋ง ์ค์ | |
| - [ ] ๋น์ฉ ์ต์ ํ ์ค์ | |
| ## ๐ ์ง์ | |
| ### ์ ์ฉํ ๋งํฌ | |
| - **Hugging Face ๋ฌธ์**: https://huggingface.co/docs | |
| - **Inference Endpoints ๊ฐ์ด๋**: https://huggingface.co/docs/inference-endpoints | |
| - **Railway ๋ฌธ์**: https://docs.railway.app | |
| ### ๋ฌธ์ ํด๊ฒฐ | |
| 1. **Hugging Face ์ง์**: https://huggingface.co/support | |
| 2. **Railway ์ง์**: https://railway.app/support | |
| 3. **์ปค๋ฎค๋ํฐ**: GitHub Issues ๋ฐ Discord | |
| ## ๐ ์ฑ๊ณต ํ์ธ | |
| ๋ชจ๋ ์ค์ ์ด ์๋ฃ๋๋ฉด ๋ค์์ ํ์ธํ ์ ์์ต๋๋ค: | |
| - โ **Hugging Face ์๋ํฌ์ธํธ**: GPU์์ AI ๋ชจ๋ธ ์คํ | |
| - โ **Railway Hearth Chat**: ์น ์ธํฐํ์ด์ค์์ ์ฑํ ๊ฐ๋ฅ | |
| - โ **์ฐ๋**: ์ฌ์ฉ์ ๋ฉ์์ง โ Hugging Face โ AI ์๋ต โ Hearth Chat | |
| - โ **๋ชจ๋ํฐ๋ง**: ์ค์๊ฐ ์ฌ์ฉ๋ ๋ฐ ์ฑ๋ฅ ํ์ธ |