왜 LLM은 사용자 수준에 맞춰서 답하나?
모델을 학습시킬때 말을 잘듣도록 instruct 튜닝을 만들 수도 있고 그냥 주저리주저리 말하는 일반 모델을 만들 수도 있습니다. 물론 math, logic, vision 모델도 다 따로 있죠
요즘 코딩/추론 모델들은 intructGPT 이후 chatgpt 3.5 부터는 RLHF(Reinforcement Learning from Human Feedback) 이것이 기본인데 인간 피드백에 따라서 적절하게 친절하게 대답하도록 강화학습 시키는 겁니다
RLHF는 RLAIF(AI Feedback)나 더 효율적인 정렬 기법인 DPO(Direct Preference Optimization)으로 더 진화했습니다
RLHF 자체가 사용자 수준에 맞춘다는 것이 아니라 어떻게 답변하면 사용자의 프롬프트, 피드백, 이후 kv cache에 쌓이는 대화의 맥락에 가장 적합한 대답이 될 것인지 신경망의 일부로서 계산되기 때문에
결과적으로 사용자의 첫번째 프롬프트와 이어지는 프롬프트 그리고 거기서 생성되는 kv cache의 벡터 데이터가 결국 LLM의 출력 품질에 큰 영향을 끼칩니다
다시 말해서 자기도 잘 모르는 내용을 첫번째 프롬프트에 잔뜩 적어서 시행하라고 말하면 처음에는 굴러가는 것 같지만 LLM의 출력이란건 결국 결정론적 확률로서 엔트로피가 점점 줄어드는 수렴으로 가는 것이기 때문에 인간이 중간중간에 수정 및 엔트로피 주입(정신차리고 똑바로 안할래!!! 뭐 이런 욕설도 일종의 엔트로피 주입입니다 그러나 이런 욕설은 잘못된 방향으로 튀어버릴 수 있기 때문에 도움이 안되는 경우가 많으며) 해줘야 사용자의 의도대로 계속 굴러갈 수 있습니다.
교착지점에서 새로운 비전과 아이디어를 제시하지 못한다면(첫번째 프롬프트의 내용을 제대로 모르고 있다면 결코 현상황이 교착상황인지 뭔지도 파악하기 힘들고 당연히 새로운 비전과 아이디어는 제시하지 못할 것입니다) LLM은 당연히 엔트로피 저하 수렴 쪽으로 가기 때문에 지리멸렬해지는 것은 당연한 수순입니다. 이러면 실패인거죠
다시 말해서 LLM을 부려먹는 것은 뭘 알아야 부려먹을 수 있다는 겁니다
근데 뭘 좀 안다면 LLM은 정말 부려먹기에 좋은 놈입니다. 거의 타노스의 손가락 튕기기 수준이죠