# Parallel Context Windows for Large Language Models

论文地址：

* [https://arxiv.org/pdf/2212.10947.pdf](https://arxiv.org/pdf/2212.10947.pdf)

## 整体思路以及计算方式

提供了一个让LM处理更长序列的思路，图示如下：

![](https://2520240655-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fb2lKDIgZ0I1cirExLedu%2Fuploads%2Fgit-blob-a62a3cfeb58c7827ff27307fbc49be3cdd79e4d7%2F001.jpg?alt=media)

首先假设输入分为context window和task token。假设最大训练长度为$$N$$，task token的序列长度为$$T$$，那么context window的序列长度不能超过$$C=N-T$$，后续计算时，context window内部做self attention, task token和全部context window做cross attention（概念上，不准确的描述），和自身做self attention。另一方面context window中使用前$$C$$个位置编码，task token使用$$C+1\sim N$$个位置编码。

## 代码

* [https://github.com/ai21labs/parallel-context-windows](https://github.com/ai21labs/parallel-context-windows)

## 简评

还不错的思路，唯一的问题是task token计算attention时的序列长度长于$$N$$，可能有泛化性的问题。
