文本块长度:L1
Basic prompt长度:L2
一条Prompt包含的文本块数量:x
总的文本块数量:n
那么一共有n/x条prompt
对于一条prompt的推理,比较严谨的一种时间复杂度为(N为prompt长度,d为特征维度,α、β为常量系数,bias为潜在的可能和x有关的时间开销):
αN2d(点积计算)+βNd2(线性层变换)+bias
总共的时间复杂度:
L1≈300L2≈20n=400
(αd(xL1+L2)2+βd2(xL1+L2)+bias)⋅n/x=n((αdL12)x+(αdL22+βd2L2)/x+2αdL1L2+βd2L1+bias/x)≈400(90000αdx+(400αd+20βd2+bias)/x+12000αd+300βd2)
只需考虑变量x,本质是一种形如y=ax+b/x+c的函数
根据前面测试的样本拟合得到的函数:
y=0.39x+5.72/x+37.72
红色线条为拟合函数,蓝色线条为测得的样本,横坐标为x(一个prompt所包含的文本块数量),纵坐标为时间(秒)
为使拟合成立,需要满足以下条件:
令a=160000αd,b=8000βd2,c=400bias
225a=0.39a+b+c=5.7230a+15b=37.72
解得
a≈0.00173b≈2.518c≈3.2
说明是存在一种可行解的,即结果上存在x=1和x=4两者吞吐差不多的可能,并且在x增大时所呈现的趋势也符合分析得到的函数,而之前分析得到的3.6倍差距并没有考虑到实际的常量系数关系