pratical llms
1.0.0
LLM(Large Language Model) 엔지니어를 위한 저장소에 오신 것을 환영합니다! 이 Jupyter Notebook 컬렉션은 업무의 실제적인 측면을 수집하도록 설계되었습니다. 학습 및 실험 목적으로 jupyter 및/또는 스크립트를 수집하고 추가하겠습니다.
공책 | 설명 | URL |
---|---|---|
1_understanding_llms_benchmarks.ipynb | 이 노트북은 openLLM 순위표에 사용되는 주요 벤치마크에 대한 설명을 제공합니다. LLM 벤치마킹에 사용되는 주요 지표와 방법론을 파악하는 데 도움이 되는 것을 목표로 합니다. | 링크 |
2_양자화_베이스.ipynb | 이 노트북에서는 BitandBytes 라이브러리를 사용하여 Hugging Face 모델을 8비트 및 4비트로 여는 방법을 알아봅니다. 양자화는 모델 성능과 리소스 사용을 최적화하는 데 중요한 기술이며, 이 노트북은 프로세스를 안내합니다. | 링크 |
3_양자화_gptq.ipynb | 이 노트북으로 auto-gptq 라이브러리를 사용하여 GPTQ 형식의 양자화를 살펴보세요. GPTQ 형식은 GPT와 같은 대규모 모델을 압축하고 양자화하는 효율성으로 인해 인기를 얻고 있습니다. 모델에 이 형식을 활용하는 방법을 알아보세요. | 링크 |
4_양자화_exllamav2.ipynb | HF에서 exllamav2로 모델을 양자화하는 방법 | 링크 |
5_sharding_and_offloading.ipynb | 모델을 여러 청크로 샤딩하는 방법 이를 통해 다른 장치에 로드하거나 메모리를 관리하면서 한 번에 하나씩 로드할 수 있습니다. 일부 레이어를 CPU 또는 디스크로 오프로드하는 방법 알아보기 | 링크 |
6_gguf_Quantization_and_inference.ipynb | llama.cpp 라이브러리를 사용하여 모델을 GGUF로 양자화합니다. OpenAI 호환 서버에서 추론합니다. | 링크 |
7_gguf_split_and_load.ipynb | GGUF Quantized 모델을 여러 부분으로 분할하여 쉽게 공유 가능 | 링크 |
8_hqq_퀀트화.ipynb | HQQ(Half-Quadratic Quantization)를 사용한 양자화 살펴보기 | 링크 |
9_inference_big_model_cpu_plus_gpu.ipynb | 이 노트북은 양자화된 GGUF 모델에 필요한 RAM을 계산하는 방법과 RAM과 VRAM을 모두 사용하여 이를 메모리에 로드하는 방법, GPU로 오프로드할 수 있는 레이어 수를 최적화하는 방법을 보여줍니다. 노트북은 T4 15GB VRAM 및 약 32GB RAM이 있는 시스템에서 Qwen/Qwen1.5-32B-Chat-GGUF를 로드하는 방법을 보여줍니다. | 링크 |
a10_inference_llama3.ipynb | LLama3가 출시되었습니다. 이 노트북은 24GB VRAM이 있는 GPU에 액세스할 수 있는 경우 LLama3-8B-Instruct 반 정밀도를 실행하는 방법을 보여주고, 10GB VRAM이 있는 경우 8비트로 양자화되며, 다음과 같은 경우 최대 성능을 달성하기 위해 Q8 GGUF 버전을 실행하는 방법을 보여줍니다. VRAM은 10GB 밖에 없습니다. | 링크 |
a11_llm_guardrails_using_llama3_guard.ipynb | LLama3-guard-2를 사용하여 백엔드와 생성 AI 애플리케이션을 보호하세요. 이 노트북에서는 10GB VRAM을 사용하여 서버를 설정하는 방법과 HTTP POST 요청을 통해 추론을 수행하는 방법을 보여줍니다. | 링크 |
a12_speculative_decoding.ipynb | 노트북은 더 작고 가벼운 초안 모델을 사용하여 대상 모델에서 생성되는 토큰/초를 늘리는 '추측적 디코딩' 기술을 실제로 설명하고 시연합니다. LLama-3-70B-Instruct(Target) 및 LLama-3-8B-Instruct(Draft)에서 구현된 예입니다. | 링크 |
a13_inference_vision_llm.ipynb | 노트북은 비전 LLM을 사용하여 간단한 추론을 수행하는 방법을 보여줍니다. 예를 들어 저는 Microsoft가 새로 출시한 Phi-3-vision-128k-instruct를 선택했습니다. 해당 모델은 MIT 라이선스를 취득한 모델이므로 어떠한 제한 없이 자체 애플리케이션에 사용할 수 있습니다. 이 모델은 하나의 Nvidia L4에서 실행될 수 있습니다. | 링크 |
a14_llm_as_evaluator.ipynb | 노트북은 Prometheus 2를 사용하여 LLM을 판사로 사용하는 방법을 보여줍니다. 노트북에는 LLM 또는 애플리케이션 파이프라인에서 반환된 답변을 평가하는 방법이 나와 있습니다. | 링크 |
a15_llm_evaluation.ipynb | 노트북은 EleutherAI/lm-evaluation-harness를 사용하여 공식 순위표에서도 사용되는 공용 벤치마크에서 LLM을 평가하는 방법을 보여줍니다. 이 프로세스는 리더보드에 모델을 제출할 때 자동으로 사용되는 것과 동일합니다. | 링크 |
a16_synthetic_data_ Generation.ipynb | 이 노트북에서는 Llama-3-8B를 LLM으로 사용하여 입력 파일에서 합성 QA 데이터 세트를 생성하기 위한 사용자 정의 클래스를 만들었습니다. 또한 이 스크립트는 llama-3-8b-Q_8 GGUF에서 llama-server의 새 버전을 빌드하고 실행하는 방법을 보여줍니다. | 링크 |
a17_sglan_serving_llm_multiusers.ipynb | 이 노트북에서는 SGLang을 사용하여 사용자 정의 서버에 LLama3.1-8B-FP8을 효율적으로 배포하고 우수한 성능을 유지하면서 64명의 잠재적 병렬 사용자에게 서비스를 제공하는 방법에 대한 모든 단계를 보여줍니다. | 링크 |
a18_jailbreak_control_using_promptguard.ipynb | 탈옥을 위해 새로운 PromptGuard-86M을 사용해 보세요. 스포일러: 지금은 모델이 깨졌거나 정말 안 좋아 보이는데요. | 링크 |
a19_document_information_and_table_extraction.ipynb | 이 노트북은 다중 모달 리터레이트 모델(Kosmos 2.5)을 사용하여 유료 클라우드 서비스를 사용하지 않고도 텍스트와 테이블을 정확하고 효율적으로 추출하는 방법을 보여줍니다. 이 모델은 개인 GPU에서 실행되어 데이터를 비공개로 안전하게 유지합니다. | 링크 |
a20_finetuning_llm_unsloth.ipynb | 이 노트북은 '생각' 구조 체인의 HF 데이터 세트에서 unsloth를 사용하여 Phi-3.5-mini-instruct를 미세 조정하는 방법을 보여줍니다. | 링크 |
추가 리소스 및 지원을 받으려면 언제든지 커뮤니티에 문의하거나 다음을 참조하세요.
LLM을 통해 즐겁게 학습하고 실험해 보세요!