코드 2-5의 GPTDatasetV1 클래스와 코드 2-6의 create_dataloader_v1 함수가 어떻게 동작하는지 이해하기 위해 문맥 크기를 4와 배치 크기 1로 dataloader를 테스트해 보겠습니다.8
with open("the-verdict.txt", "r", encoding="utf-8") as f:
raw_text = f.read()
dataloader = create_dataloader_v1(
raw_text, batch_size=1, max_length=4, stride=1, shuffle=False)
data_iter = iter(dataloader) ----- 데이터 로더를 파이썬 반복자(iterator)로 변환한 다음, 파이썬 내장 next() 함수로 다음 원소를 추출합니다.
first_batch = next(data_iter)
print(first_batch)
앞의 코드를 실행하면 다음과 같은 결과가 출력됩니다.
[tensor([[ 40, 367, 2885, 1464]]), tensor([[ 367, 2885, 1464, 1807]])]