도구
JSONL 중복 줄 버리기
같은 프롬프트나 같은 JSON 객체를 한 그룹으로 묶고, 첫 줄 또는 JSON.stringify가 더 긴 줄만 남깁니다. 원본 줄은 기어델로 가지 않습니다.
중복 제거는 이 탭에서만 합니다. JSONL은 기어델로 가지 않습니다.
무엇을 같은 줄로 보는가
기본 묶는 키는 프롬프트입니다. Alpaca는 instruction과 input, OpenAI messages와 ShareGPT는 첫 user/human 턴입니다. 같은 프롬프트의 다른 답은 한 그룹입니다.
줄 전체로 묶으면 JSON.stringify가 키입니다. JSON.parse 뒤 키 순서가 다르면, 편집기에서 같아 보여도 갈라질 수 있습니다.
NFC를 켜면 키에 String.normalize('NFC')를 합니다. 공백 접기는 유니코드 공백 연속을 스페이스 하나로 바꾸고 trim합니다. 형태소 분석이 아닙니다.
처음 나온 줄은 붙여 넣은 순서입니다. 더 긴 줄은 그룹 안 JSON.stringify 길이이지, 토큰 수가 아닙니다.
빈 줄은 세고 건너뜁니다. 맨 앞이 JSON 배열이면 거절합니다. 이 페이지는 JSONL입니다. 한 번에 2만 줄, 또는 약 200만 글자까지입니다.
하지 않는 일
- 근사 중복, MinHash, 임베딩 유사도는 없습니다. 접은 키가 같아야 합니다.
- 한국어 문장이 다른 말로 같은 뜻인지는 모릅니다.
- 나누기 페이지는 같은 JSON.stringify를 옆 옵션으로 버릴 수 있습니다. 이 페이지는 그룹을 나열하고 unique.jsonl을 받습니다.