병렬 후보의 재활용
여러 위치의 토큰을 병렬로 갱신하면 아직 올바른 문장으로 확정되지 않은 후보도 생긴다. 이 과정에서 얻은 연속 토큰 묶음을 보관했다가 검증 후보로 활용한다. 후보 생성과 검증 분기는 같은 실행 단계 안에서 함께 처리할 수 있다.
접두어 검사의 독립 예제
현재 확정 문맥 뒤에 후보 A-B-C와 A-D-E가 있다고 하자. 검증에서 다음 토큰 A가 맞더라도 그 뒤가 D로 결정되면 B-C 경로는 이어 붙일 수 없다. 후보에 들어 있다는 사실과 현재 문맥에서 확정할 수 있다는 사실을 구분해야 한다.
저장소와 캐시
외부 검색 데이터베이스나 별도의 작은 언어 모형을 준비할 필요는 없다. 다만 실행 중에 생성한 토큰 묶음을 보관하는 내부 풀은 사용한다. 외부 자료 저장소가 없다는 설명을 모든 임시 저장 공간이 없다는 뜻으로 해석하면 안 된다.
연산과 지연시간
한 단계에 더 많은 연산을 배치해 전체 순차 단계 수를 줄이는 접근이다. 남는 병렬 자원이 적거나 검증 후보가 잘 맞지 않으면 이득이 작아질 수 있다. 토큰당 연산량의 감소와 응답 지연시간의 감소는 같은 지표가 아니므로 각각 측정한다.
관련 문서
추측 디코딩 / Medusa 디코딩 / EAGLE 디코딩 / 언어 모형 / FlashAttention / 트랜스포머