7.2. μ§μΉ¨μ λ°λ₯΄κΈ° μν λ―ΈμΈ μ‘°μ
Tip
AWS ν΄νΉ λ°°μ°κΈ° λ° μ°μ΅νκΈ°:
HackTricks Training AWS Red Team Expert (ARTE)
GCP ν΄νΉ λ°°μ°κΈ° λ° μ°μ΅νκΈ°:HackTricks Training GCP Red Team Expert (GRTE)
Azure ν΄νΉ λ°°μ°κΈ° λ° μ°μ΅νκΈ°:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricks μ§μνκΈ°
- ꡬλ κ³ν νμΈνκΈ°!
- **π¬ λμ€μ½λ κ·Έλ£Ή λλ ν λ κ·Έλ¨ κ·Έλ£Ήμ μ°Έμ¬νκ±°λ νΈμν° π¦ @hacktricks_liveλ₯Ό νλ‘μ°νμΈμ.
- HackTricks λ° HackTricks Cloud κΉνλΈ λ¦¬ν¬μ§ν 리μ PRμ μ μΆνμ¬ ν΄νΉ νΈλ¦μ 곡μ νμΈμ.
Tip
μ΄ μΉμ μ λͺ©νλ ν μ€νΈ μμ±λ§ νλ κ²μ΄ μλλΌ μ§μΉ¨μ λ°λ₯΄λλ‘ μ΄λ―Έ μ¬μ νλ ¨λ λͺ¨λΈμ λ―ΈμΈ μ‘°μ νλ λ°©λ²μ 보μ¬μ£Όλ κ²μ λλ€. μλ₯Ό λ€μ΄, μ±λ΄μΌλ‘μ μμ μ μλ΅νλ κ²μ λλ€.
λ°μ΄ν°μ
LLMμ μ§μΉ¨μ λ°λ₯΄λλ‘ λ―ΈμΈ μ‘°μ νκΈ° μν΄μλ μ§μΉ¨κ³Ό μλ΅μ΄ ν¬ν¨λ λ°μ΄ν°μ μ΄ νμν©λλ€. LLMμ μ§μΉ¨μ λ°λ₯΄λλ‘ νλ ¨νλ λ°λ λ€μν νμμ΄ μμ΅λλ€. μλ₯Ό λ€μ΄:
- Apply Alpaca ν둬ννΈ μ€νμΌ μμ :
Below is an instruction that describes a task. Write a response that appropriately completes the request.
### Instruction:
Calculate the area of a circle with a radius of 5 units.
### Response:
The area of a circle is calculated using the formula \( A = \pi r^2 \). Plugging in the radius of 5 units:
\( A = \pi (5)^2 = \pi \times 25 = 25\pi \) square units.
- Phi-3 ν둬ννΈ μ€νμΌ μμ:
<|User|>
Can you explain what gravity is in simple terms?
<|Assistant|>
Absolutely! Gravity is a force that pulls objects toward each other.
LLMμ μ΄λ¬ν μ’ λ₯μ λ°μ΄ν° μΈνΈλ‘ νλ ¨μν€λ κ²μ λ¨μν μμ ν μ€νΈ λμ LLMμ΄ λ°λ μ§λ¬Έμ λν΄ κ΅¬μ²΄μ μΈ μλ΅μ μ 곡ν΄μΌ νλ€λ κ²μ μ΄ν΄νλ λ° λμμ΄ λ©λλ€.
λ°λΌμ μμ²κ³Ό λ΅λ³μ΄ ν¬ν¨λ λ°μ΄ν° μΈνΈλ‘ μνν΄μΌ ν 첫 λ²μ§Έ μμ μ€ νλλ μνλ ν둬ννΈ νμμΌλ‘ ν΄λΉ λ°μ΄ν°λ₯Ό λͺ¨λΈλ§νλ κ²μ λλ€. μλ₯Ό λ€μ΄:
# Code from https://github.com/rasbt/LLMs-from-scratch/blob/main/ch07/01_main-chapter-code/ch07.ipynb
def format_input(entry):
instruction_text = (
f"Below is an instruction that describes a task. "
f"Write a response that appropriately completes the request."
f"\n\n### Instruction:\n{entry['instruction']}"
)
input_text = f"\n\n### Input:\n{entry['input']}" if entry["input"] else ""
return instruction_text + input_text
model_input = format_input(data[50])
desired_response = f"\n\n### Response:\n{data[50]['output']}"
print(model_input + desired_response)
κ·Έλ° λ€μ, νμ κ·Έλ λ―μ΄ λ°μ΄ν°μ μ νλ ¨, κ²μ¦ λ° ν μ€νΈ μΈνΈλ‘ λΆλ¦¬ν΄μΌ ν©λλ€.
λ°°μΉ λ° λ°μ΄ν° λ‘λ
κ·Έλ° λ€μ, νλ ¨μ μν΄ λͺ¨λ μ λ ₯κ³Ό μμ μΆλ ₯μ λ°°μΉν΄μΌ ν©λλ€. μ΄λ₯Ό μν΄ νμν κ²μ:
- ν μ€νΈλ₯Ό ν ν°νν©λλ€.
- λͺ¨λ μνμ λμΌν κΈΈμ΄λ‘ ν¨λ©ν©λλ€(μΌλ°μ μΌλ‘ κΈΈμ΄λ LLMμ μ¬μ νλ ¨νλ λ° μ¬μ©λ 컨ν μ€νΈ κΈΈμ΄λ§νΌ ν½λλ€).
- μ¬μ©μ μ μ μ½λ μ΄νΈ ν¨μμμ μ λ ₯μ 1λ§νΌ μ΄λμμΌ μμ ν ν°μ μμ±ν©λλ€.
- νλ ¨ μμ€μμ μ μΈνκΈ° μν΄ μΌλΆ ν¨λ© ν ν°μ -100μΌλ‘ κ΅μ²΄ν©λλ€: 첫 λ²μ§Έ
endoftextν ν° μ΄νμ λͺ¨λ λ€λ₯Έendoftextν ν°μ -100μΌλ‘ λ체ν©λλ€(μλνλ©΄cross_entropy(...,ignore_index=-100)λ₯Ό μ¬μ©νλ©΄ -100μΈ νκ²μ 무μνκΈ° λλ¬Έμ λλ€). - [μ ν μ¬ν] LLMμ΄ λ΅λ³μ μμ±νλ λ°©λ²λ§ λ°°μ°λλ‘ μ§λ¬Έμ μνλ λͺ¨λ ν ν°μ -100μΌλ‘ λ§μ€νΉν©λλ€. Apply Alpaca μ€νμΌμμλ
### Response:κΉμ§ λͺ¨λ κ²μ λ§μ€νΉνλ κ²μ μλ―Έν©λλ€.
μ΄λ κ² μμ±ν ν, κ° λ°μ΄ν°μ (νλ ¨, κ²μ¦ λ° ν μ€νΈ)μ μν λ°μ΄ν° λ‘λλ₯Ό μμ±ν μκ°μ λλ€.
μ¬μ νλ ¨λ LLM λ‘λ λ° λ―ΈμΈ μ‘°μ λ° μμ€ νμΈ
μ¬μ νλ ¨λ LLMμ λ‘λνμ¬ λ―ΈμΈ μ‘°μ ν΄μΌ ν©λλ€. μ΄λ λ€λ₯Έ νμ΄μ§μμ μ΄λ―Έ λ Όμλμμ΅λλ€. κ·Έλ° λ€μ, μ΄μ μ μ¬μ©λ νλ ¨ ν¨μλ₯Ό μ¬μ©νμ¬ LLMμ λ―ΈμΈ μ‘°μ ν μ μμ΅λλ€.
νλ ¨ μ€μλ μν¬ν¬ λμ νλ ¨ μμ€κ³Ό κ²μ¦ μμ€μ΄ μ΄λ»κ² λ³νλμ§ νμΈνμ¬ μμ€μ΄ μ€μ΄λ€κ³ μλμ§, κ³Όμ ν©μ΄ λ°μνκ³ μλμ§λ₯Ό νμΈν μ μμ΅λλ€.
κ³Όμ ν©μ νλ ¨ μμ€μ΄ μ€μ΄λ€κ³ μμ§λ§ κ²μ¦ μμ€μ΄ μ€μ΄λ€μ§ μκ±°λ μ€νλ € μ¦κ°ν λ λ°μν©λλ€. μ΄λ₯Ό νΌνκΈ° μν΄ κ°μ₯ κ°λ¨ν λ°©λ²μ μ΄λ¬ν νλμ΄ μμλλ μν¬ν¬μμ νλ ¨μ μ€λ¨νλ κ²μ
λλ€.
μλ΅ νμ§
μ΄κ²μ μμ€ λ³νλ₯Ό λ μ λ’°ν μ μλ λΆλ₯ λ―ΈμΈ μ‘°μ μ΄ μλκΈ° λλ¬Έμ, ν
μ€νΈ μΈνΈμμ μλ΅μ νμ§μ νμΈνλ κ²λ μ€μν©λλ€. λ°λΌμ μμ±λ μλ΅μ λͺ¨λ ν
μ€νΈ μΈνΈμμ μμ§νκ³ κ·Έ νμ§μ μλμΌλ‘ νμΈνλ κ²μ΄ μ’μ΅λλ€. μλͺ»λ λ΅λ³μ΄ μλμ§ νμΈν©λλ€(LLMμ΄ μλ΅ λ¬Έμ₯μ νμκ³Ό ꡬ문μ μ¬λ°λ₯΄κ² μμ±ν μ μμ§λ§ μμ ν μλͺ»λ μλ΅μ μ 곡ν μ μλ€λ μ μ μ μνμμμ€. μμ€ λ³λμ μ΄λ¬ν νλμ λ°μνμ§ μμ΅λλ€).
μμ±λ μλ΅κ³Ό μμ μλ΅μ λ€λ₯Έ LLMμ μ λ¬νμ¬ μλ΅μ νκ°νλλ‘ μμ²νλ λ°©μμΌλ‘ μ΄ κ²ν λ₯Ό μνν μλ μμ΅λλ€.
μλ΅ νμ§μ κ²μ¦νκΈ° μν΄ μ€νν λ€λ₯Έ ν μ€νΈ:
- λκ·λͺ¨ λ€μ€ μμ μΈμ΄ μ΄ν΄ (MMLU): MMLUλ μΈλ¬Έν, κ³Όν λ± 57κ° μ£Όμ μ κ±Έμ³ λͺ¨λΈμ μ§μκ³Ό λ¬Έμ ν΄κ²° λ₯λ ₯μ νκ°ν©λλ€. λ€μν λμ΄λμμ μ΄ν΄λλ₯Ό νκ°νκΈ° μν΄ κ°κ΄μ μ§λ¬Έμ μ¬μ©ν©λλ€.
- LMSYS Chatbot Arena: μ΄ νλ«νΌμ μ¬μ©μκ° λ€μν μ±λ΄μ μλ΅μ λλν λΉκ΅ν μ μλλ‘ ν©λλ€. μ¬μ©μκ° ν둬ννΈλ₯Ό μ λ ₯νλ©΄ μ¬λ¬ μ±λ΄μ΄ μλ΅μ μμ±νμ¬ μ§μ λΉκ΅ν μ μμ΅λλ€.
- AlpacaEval: AlpacaEvalμ GPT-4μ κ°μ κ³ κΈ LLMμ΄ λ€μν ν둬ννΈμ λν λ€λ₯Έ λͺ¨λΈμ μλ΅μ νκ°νλ μλνλ νκ° νλ μμν¬μ λλ€.
- μΌλ° μΈμ΄ μ΄ν΄ νκ° (GLUE): GLUEλ κ°μ λΆμ, ν μ€νΈ ν¨μ λ° μ§λ¬Έ μλ΅μ ν¬ν¨ν μν κ°μ§ μμ°μ΄ μ΄ν΄ μμ μ λͺ¨μμ λλ€.
- SuperGLUE: GLUEλ₯Ό κΈ°λ°μΌλ‘ νμ¬ SuperGLUEλ νμ¬ λͺ¨λΈμ λν΄ μ΄λ €μ΄ μμ μ ν¬ν¨ν©λλ€.
- λͺ¨λ°© κ²μ λ²€μΉλ§ν¬ μ΄μ (BIG-bench): BIG-benchλ μΆλ‘ , λ²μ λ° μ§λ¬Έ μλ΅κ³Ό κ°μ μμμμ λͺ¨λΈμ λ₯λ ₯μ ν μ€νΈνλ 200κ° μ΄μμ μμ μ ν¬ν¨νλ λκ·λͺ¨ λ²€μΉλ§ν¬μ λλ€.
- μΈμ΄ λͺ¨λΈμ μ 체μ μΈ νκ° (HELM): HELMμ μ νμ±, κ°κ±΄μ± λ° κ³΅μ μ±κ³Ό κ°μ λ€μν λ©νΈλ¦μ κ±Έμ³ ν¬κ΄μ μΈ νκ°λ₯Ό μ 곡ν©λλ€.
- OpenAI Evals: OpenAIμμ μ 곡νλ μ€ν μμ€ νκ° νλ μμν¬λ‘, AI λͺ¨λΈμ μ¬μ©μ μ μ λ° νμ€νλ μμ μμ ν μ€νΈν μ μμ΅λλ€.
- HumanEval: μΈμ΄ λͺ¨λΈμ μ½λ μμ± λ₯λ ₯μ νκ°νλ λ° μ¬μ©λλ νλ‘κ·Έλλ° λ¬Έμ λͺ¨μμ λλ€.
- μ€ν ν¬λ μ§λ¬Έ μλ΅ λ°μ΄ν°μ (SQuAD): SQuADλ λͺ¨λΈμ΄ μ ννκ² λ΅λ³νκΈ° μν΄ ν μ€νΈλ₯Ό μ΄ν΄ν΄μΌ νλ μν€νΌλμ κΈ°μ¬μ λν μ§λ¬ΈμΌλ‘ ꡬμ±λ©λλ€.
- TriviaQA: λ°©λν μμ ν΄μ¦ μ§λ¬Έκ³Ό λ΅λ³, μ¦κ±° λ¬Έμκ° ν¬ν¨λ λ°μ΄ν°μ μ λλ€.
κ·Έλ¦¬κ³ λ§μ λ§μ λ μμ΅λλ€.
μ§μΉ¨ λ°λ₯΄κΈ° λ―ΈμΈ μ‘°μ μ½λ
μ΄ λ―ΈμΈ μ‘°μ μ μννλ μ½λμ μλ https://github.com/rasbt/LLMs-from-scratch/blob/main/ch07/01_main-chapter-code/gpt_instruction_finetuning.pyμμ μ°Ύμ μ μμ΅λλ€.
μ°Έκ³ λ¬Έν
Tip
AWS ν΄νΉ λ°°μ°κΈ° λ° μ°μ΅νκΈ°:
HackTricks Training AWS Red Team Expert (ARTE)
GCP ν΄νΉ λ°°μ°κΈ° λ° μ°μ΅νκΈ°:HackTricks Training GCP Red Team Expert (GRTE)
Azure ν΄νΉ λ°°μ°κΈ° λ° μ°μ΅νκΈ°:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricks μ§μνκΈ°
- ꡬλ κ³ν νμΈνκΈ°!
- **π¬ λμ€μ½λ κ·Έλ£Ή λλ ν λ κ·Έλ¨ κ·Έλ£Ήμ μ°Έμ¬νκ±°λ νΈμν° π¦ @hacktricks_liveλ₯Ό νλ‘μ°νμΈμ.
- HackTricks λ° HackTricks Cloud κΉνλΈ λ¦¬ν¬μ§ν 리μ PRμ μ μΆνμ¬ ν΄νΉ νΈλ¦μ 곡μ νμΈμ.


