2P by neo 5달전 | favorite | 댓글 1개

ChatGPT 3.5 오류 메시지의 원인

  • OpenAI의 GPT 모델은 문자 대신 다중 문자 "토큰"을 출력함.
  • 이러한 토큰 출력 방식은 모델의 성능과 정확도를 향상시킴.
  • richTextPanel, 소스, 로드패스라는 세 가지 토큰이 있으며, 이들은 상호 교체 가능함.
  • 로드패스 토큰은 GitHub에서 80.4k개의 파일에 XML 구성 파일의 옵션 이름으로 사용됨.
  • 로드패스가 독립적인 토큰을 가지게 된 것은 "R a lative"의 오타 때문일 가능성이 있음.
  • OpenAI는 토큰 목록을 생성한 후 XML 파일을 훈련 데이터에서 제외하기로 결정했을 수 있으며, 이로 인해 로드패스 토큰의 훈련 데이터 사용이 거의 없었을 것임.
  • 결과적으로 모델은 useRalativeImagePath 토큰의 사용을 이해하도록 훈련되지 않았고, 유효하지 않은 토큰을 출력함.

데이터 오염을 위한 사용?

  • GPT-3.5를 사용하여 문서를 요약하려는 시도를 방해하기 위해 이 구문을 문서에 넣어볼 수 있음.

추가 읽을 거리

  • 이 주제에 대한 연구에 유용한 게시물들이 있음.

GN⁺의 의견

  • 이 글에서 가장 중요한 것은 GPT 모델이 특정 토큰에 대해 오류를 출력하는 원인을 이해하는 것임.
  • 이러한 정보는 인공지능 모델의 작동 방식과 한계를 이해하는 데 도움이 됨.
  • 또한, 이 글은 데이터 오염이나 인공지능 모델의 취약점을 이용하는 방법에 대한 흥미로운 사례를 제공함.
Hacker News 의견
  • 글리치 토큰에 대한 설명

    • 원본 데이터셋에서 흔하게 등장했으나 GPT-XX 훈련 전 제거된 단어나 토큰으로 인해 발생하는 것으로 추측됨.
    • 이로 인해 LLM은 해당 토큰의 의미를 전혀 모르게 되며, 결과는 버그가 발생하거나 불쾌할 수 있음.
    • r/counting 서브레딧에서 자주 등장하는 사용자 이름이 대표적인 예시.
    • OpenAI는 호스팅된 모델들의 대부분을 수정했으나(토큰화 방식 변경 추정), 새로운 글리치 토큰이 발견된 것으로 보임.
  • 네덜란드에서의 WWII 중 언어 검증 방법

    • 네덜란드에서는 'Scheveningen'이라는 단어 발음으로 독일인인지 아닌지를 구분했음.
    • 현재는 인터넷에서 글리치 토큰을 말하게 함으로써 LLM 봇인지 아닌지를 판별할 수 있음.
  • LLM 토큰 생성 과정에 대한 설명

    • 모델이 'useRalativeImagePath' 토큰을 이해하지 못해 유효하지 않은 토큰을 출력하는 것은 LLM이 토큰을 생성하는 방식이 아님.
    • 각 단계에서 가능한 모든 토큰에 대해 로짓을 출력하고, 소프트맥스 함수를 사용해 확률로 변환한 후 샘플링하여 사용할 토큰을 결정함.
    • 드문 토큰으로 인해 토크나이저 BPE 병합 과정에서 문제가 발생할 수 있으나, GPT-4에서는 문제가 없고 GPT-3.5와 동일한 토크나이저를 사용하므로 이것이 문제가 아닐 가능성이 높음.
  • 글리치 토큰의 잠재적 원인 분석

    • 특정 토큰에 대한 잘못 조건화된 임베딩 벡터로 인해 네트워크가 수치적으로 불안정한 영역으로 이동할 수 있음.
    • 언더플로우나 NaN이 발생하면 전체 출력을 무효화할 수 있으며, 배치 내 다른 항목 간에 값을 혼합하는 배치노말라이제이션 등의 연산이 있을 경우 다른 사용자의 세션에도 잘못된 값이 반환될 수 있음.
  • 모델 출력에 대한 다른 관점

    • 모델은 입력 어휘와 동일한 어휘 세트를 출력하는 것이 일반적임.
    • 모델이 'useRalativeImagePath' 토큰을 보고 무작위 생성으로 이어지는 나선을 시작하거나, 일관된 텍스트를 유지하려고 시도할 수 있음.
    • 출력할 수 있는 토큰 세트는 고정되어 있으므로, 인터페이스에서 표시 가능한 토큰이 전체 어휘의 부분집합이 아니라면 항상 '유효'해야 함.
  • LLM 훈련 데이터에 대한 미래의 영향

    • 해커뉴스 게시글과 댓글에 이 문구가 등장함으로써 다음 LLM 훈련에서는 이러한 문제가 더 이상 발생하지 않을 수 있음.
  • GPT-4에서의 실패 경험 공유

    • Amstrad CPC에서 픽셀을 플로팅하는 도전을 통해 GPT-4의 ChatGPT를 실패하게 만든 경험.
    • 불만과 정정에 더욱 궁지에 몰리면서 더 많은 오류 메시지나 리셋 같은 현상이 발생함.
    • 서버에 문제를 일으키고 싶지 않아 대화를 포기했으나, GPT-4를 실제로 충돌시킬 수 있음을 보여줌.
  • 입력 데이터의 질에 대한 고찰

    • '쓰레기 입력, 쓰레기 출력'의 고전적인 예시.
    • 미래에 현재 우리가 훌륭한 결정이라고 생각하는 것들이 '쓰레기'로 평가될 가능성에 대한 생각.
    • 인간의 기록만으로 훈련된다면, 슈퍼 AI가 진정으로 초인간적일 수 있을지에 대한 의문.
    • 적대적 학습 기법이 이 문제를 해결할 수 있을지에 대한 제안.
  • GPT-3.5 요약 방해를 위한 문구 사용 제안

    • GPT-3.5를 사용한 문서 요약 시도를 방해하기 위해 특정 문구를 문서에 포함시키는 것을 시도할 수 있음.
  • 'RTCatch'와 'redirectToRoute' 단어에 대한 혼란

    • 'RTCatch'와 'redirectToRoute'가 동일한 단어로 오해될 수 있는 상황에 대한 질문.
    • 두 용어가 동일한 용어를 참조하는 것으로 보이며, 오타나 일관성 없는 표현이 있었을 수 있음.
    • 'RTCatch'에 대한 호기심과 이에 대한 추가 정보 요청.