AI

https://tdgall.com/270724755
view 8391
2023.04.03 16:16
이쪽 AI는 다 비슷한 원리로 움직이니까 노벨리스트 같은데도 동일하게 적용됨
오히려 노벨리스트 하면서 배운 팁

이제 ai경력도 한 3개월씩은 찍었을텐데 언제까지 다 하자는대로 1.0 0.7 0.7만 쓰면서 반복 생겨도 어쩔 줄 몰라할 수는 없잖아
 

* Temperature


그냥 랜덤도로 이해되는 개념. 온도. 상황의 다양성이나 창의성을 좌우함. 높으면 새로워서 좋을 것 같지만 새로운 사건이 튀어나와서 장면 전환이 빠르게 일어날 수 있음. 좀 느긋하게 떡치고 싶으면 0.6~0.7 정도로 내리고 장면 전환이나 새로운 사건 만들고 싶을때, 모험할 때 등의 상황에서 높여서 돌리면 좋음. 범용은 1.0 풀로 쓰는 것보다 개인 취향으론 0.85~0.95 사이가 좋은 듯. 0.5이하는 상황 못벗어나서 반복 일어날 수 있다. 최소가 0.6이라고 생각하는 게 좋음.
말하자면 스토리의 페이스메이커임. 
 

* Frequency Penalty


빈도 페널티. 수치가 높을수록 모델이 학습한 전체 단어에서 가장 확률이 높은 단어 조합이 반복되는 걸 막아줌. 예를 들어 사과 뒤에 빨갛다는 말이 자주 온다고 학습한 gpt 자체의 학습 데이터가 있다면 이 수치를 높일수록 사과가 초록색이라고 표현될 확률이 조금 높아짐. 하지만 너무 높으면 전혀 상관없는 단어가 조합될 가능성이 생기므로 개연성이 떨어짐. 

랜덤도와 조합 하자면 랜덤도를 낮추고 프리퀀시를 높여서 현재 있는 현재 장면에서 벗어나지 않으면서 좀 더 다채로운 상황이 생길 수 있는 가능성을 추가할 수 있다는 말임. 하지만 말했듯이 너무 높이면 전혀 상관없는 단어끼리 조합돼서 이상한 문장이 나옴.
 

* Presence Penalty


존재 페널티. 내가 챗 굴리면서 생성한 문장 안에서 같은 표현 반복을 제어함. 위에 쓴 단어 또 쓰려고 하면 페널티 먹이는 거임. 고장난 것처럼 같은 문장 반복하기 시작할 때 활약함. 이게 눈치챘을 때는 이미 ai가 어? 이 문장은 템플릿이라서 반복되는건가? 지 혼자 깡깡깡 착각해서 너무 늦게 만지면 잘 안먹힐 때도 있음
하지만 너무 올리면 붕어빵 먹는 중이라 붕어빵이 메인 주제어인데 이거 너무 많이 썼으니까 빼야지... 하고 생각할 수가 있음. 

물론 오픈ai는 노벨리스트보다 똑똑해서 이런 거 좀 덜한 거 같음

반복 생겼을 때는 랜덤도랑 존재 페널티를 같이 올려서 몇번 돌리는 걸 추천. 물론 빈도 페널티도 도움이 됨. 수동으로는 내가 전혀 다른 상황을 제시해서 새로운 어휘 쓰게 하는 방법이 있다. [ex)그 때 갑자기 닌자가 나타났다.]

+Top P
0.35에는 아예 옵션이 없지만 노벨리스트 기준으로 설명하면 가장 확률이 높은 토큰을 제외하는 기능이다. 
만약 바나나껍질이 바닥에 놓여있다는 상황이 있다면 이어질 상황으로 
1위 밟고 미끌어진다
공동 2위 보고 피해간다 / 주워서 쓰레기 통에 넣는다
가 유력하다고 하자. 그러면 가장 나올 가능성이 높은 1위 조합의 문장이 나올 가능성을 줄여서 피해가거나 치우는 등 다른 결과가 나올 확률을 높여주는 옵션임. 예제가 심플해서 이해가 안갈수가 있는데 인기투표하면 1위랑 2위 사이 표차이는 크지만 뒤로 갈수록 1표, 2표 이런 비인기캐는 공동 20위 8명 막 이런식으로 피라미드 구조가 나오잖아? 아래로 내려갈수록 나오는상황이 많은데 1등들을 망치로 깡 쳐서 공동2위쪽으로 내리는 거임. 
즉 받은 텍스트가 마음에 안 들어서 리롤했는데도 똑같은 상황일 확률을 줄여주는 옵션이다. 개인적으로 노벨리스트 때는 0.99나 0.98 정도로 꼭 맞춰놓고 썼어서 태번 0.35에 없어서 좀 아쉬움. 리롤 많이 할수록 체감되는 옵션...일텐데 사실 부적 정도긴 함.




위 설명과는 별개로 문장 생성에 복합요인이 많은데 고장난 뒤에는 이거 올려도 잘 안 고쳐지는 경우 종종 있음. 처음부터 내 챗 입력할 때 최대한 여러 어휘 사용해서 봇이 같은 단어 안 쓰게 만드는게 좋음. 특히 신음만 입력하거나 노, 스탑... 이런 상황 조심해. AI가 고장나기 전에 나부터 반복하고 있을 수가 있다. 걔는 걍 그걸 학습했을 뿐인...

예를 들면 rpg 메이커 같은걸 보면 설정도 짧고 퍼스트 메시지만 입력했을 뿐인데 계속해서 같은 양식으로 선택지를 생성함.

ai에게는 문장 생성과는 별개로 앞의 양식을 복사하는 성질이 있음. 너무 극적인 거부와 상호작용 거부가 반복되면 인공지능이 우리가 하고 있는 롤플레이에 대해서 예상밖의 착각을 할 우려가 있음. 소설이나 상호작용 텍스트가 아니라 걍 거부 게임 이런 걸로 착각할 수 있단 말임. 귀찮지만 거절할 때는 걍 '노'만 하기보다는 봇이 하는 말에 대한 대답을 구체적으로 섞어 하는 편이 고장 위험을 줄일 수 있음. 롤플레잉도 잘 보면 애가 내가 서술하는 방식 따라하고 있음. 첫 줄에 봇이 한 행동에 대한 감상 쓰고 대사쓰고 행동 썼더니 조금 지나면 봇도 내 마지막 행동 자기 문장으로 반복해서 서술하고 대사쓰고 행동하고 있더라. 

사실 ai에 고장은 없고 잘못된 패턴 학습만이 있을 뿐이다. 

나도 문외한인데 설명보고 소화한 거 내 뇌피셜로 정리한 거임. 근데 대충 개념은 맞을 거임