关于不拿那份免费的东西
过去几周,开发者圈里关于苹果Private Cloud Compute定价的抱怨一直没断。事情是这样的:新的服务器端AI服务是免费的,但只面向加入了App Store Small Business Program(小型企业项目)的开发者,这个项目把资格上限设在了一个app终身两百万次下载。有不少开发者已经超过了这个上限——有时候是被一个早就已经不赚钱的app带过的——而眼下他们就算想用PCC也没有付费的通道。他们被挡在外面了,对此一点也不高兴。
我没有被挡在外面。Patter离这个上限还远着,Gums & Bones正是这个项目所瞄准的那种小工作室。免费层是可以给我用的。我考虑过用它。我决定不用。而且越是去想为什么不用,我就越是开始觉得:被挡在外面的那些开发者,其实是被塞了一份礼物,只是从他们站的位置看不出来罢了。
苹果提供的是这样的东西。iOS自带的端上AI模型确实有真本事,但上下文窗口很小——写这篇文章的时候大约是4,000个token——意味着它没办法对一整个装满文档的文件夹,或者很长的输入,进行推理。对于想做这类工作的开发者,苹果有Private Cloud Compute:它的服务器端对等物,跑在苹果数据中心里的Apple Silicon上,其架构是真的不会存储、也不会记录请求的。按照今天的标准来看,PCC是市面上对隐私最尊重的服务器端AI服务。让我担心的不是这一部分。
让我担心的,是它免费。这里的“免费”,我指的是这件事:对小开发者免费,今天,在苹果正在建立这个平台的引力的时候。当你超过小开发者上限之后会被收多少钱,没有公布的价格。对于现在抱怨被挡在外面的那些开发者,目前也没有任何付费层。当项目变化之后,两年后、或者五年后,这个免费层会变成多少钱,没有承诺过的定价——而项目最终一定会变。
设想一下,作为一个小开发者,你在免费的PCC之上做了一个功能。它做的事情真的有用——比方说,让用户把你的app指向一个装满文档的文件夹,把那一堆东西综合成一个有条理的东西。用户们爱用。评价里都在夸。有人就是为了这个功能才付费升级的。两年过去了。苹果宣布,小开发者项目里PCC的免费额度,要被砍到每个app每月一万次请求,超过的部分按某个单次价格收费。或者苹果推出了PCC的付费层,免费层会变成某种“先试后买”。又或者你成长到了超过两百万下载的上限,仍然没有付费选项可用,于是这个功能对新用户停止工作了。或者别的、平台会做的种种事情之一。
到那个时候,你有三个选择。你可以自己把成本吞下去,让它永远地侵蚀一个一次性买断的app的财务。你可以引入订阅——如果你之前对用户许下过别的承诺,这就破了那些承诺。或者你可以下架那个功能——这是保住生意的选项,但也让你成了那个坏人。没有一个像样的第四选项。决策树是在你接入的那一刻就已经摆好的。
顺带说一句,这才是平台锁定真正起作用的方式。不是靠强迫任何人。也不是出于任何恶意——我不认为苹果是在恶意做这件事,我也认为他们的隐私架构是真心实意做出来的。锁定的作用机制是补贴。你给开发者一些真正有价值的东西,免费给,与此同时你把整合搭建起来。随着时间过去,开发者的产品演化到了依赖这个被补贴的资源的程度。然后,等到经济模型必须改变的时候——它总会到必须改变的那一天——开发者就走不了了,因为他们的用户现在已经期待这个功能了,而在没有那个被补贴的资源的情况下重新搭建,已经不再可行。平台没有对他们做任何事。是他们自己对自己做的,一次理性的决定接着一次理性的决定。
那些目前因为app跨过两百万下载而被挡在免费PCC之外的开发者,正在被保护,不去做那笔交易。他们可以看着PCC,决定它就算未来定一个目前还没公布的价格、值不值这个钱,然后睁着眼睛做选择。而项目里头的开发者,被递给他们的是一个看上去像是好买卖、实际上是一份承诺的东西。
这就是为什么应该把“我用不上”看成一个比“我有免费的访问,可能会变得离不开它”更好的问题。
公平地说一句关于苹果的话。小开发者项目是一项真实的福利,隐私保障也是真实的,建造PCC的工程师们显然在意他们建造的东西。这些都不是在说PCC不好。这是在说:一个其持续存在依赖于你无法控制的补贴的功能,跟一个其持续存在依赖于用户已经付过钱的硬件的功能,是不同种类的功能。你的用户手中iPhone上的那个模型,不管苹果对你是不是满意,都会继续工作。如果苹果改了定价策略,它继续工作。如果苹果调整了项目,它继续工作。五年之后,在已经被买下的硬件上,它继续工作。这是和服务不同的另一种资产类别。
所以Patter的AI功能用的是端上模型,并且只用端上模型。确实有一些事情它做不了。我反复回到的那个情形,就是“整个文件夹”的情形——一个用户在备忘录里有一整个文件夹的碎片,想让app从这些东西里头总出一个流程来。这是有用的事情,而它装不进4,000个token。眼下,这些用户得先自己做一遍总结,或者自己把流程写出来。这个限制带来的代价是真实的,我也不打算装作不是这样。但这是一种代价——这是拥有一个我可以按自己的条件永远维持下去、不必每一次苹果重新审视它的定价时我都得跟着重新审视一遍决定的功能,所需要付出的代价。
有两件事我是在猜,而我有可能两件都猜错。第一件是,苹果最终会不会推出一个定价干净、长期承诺的PCC付费层。如果他们这么做了,整个算账就变了——一个透明的、你可以做预算的付费服务,和一个未来无法预测的免费服务,是完全不同的两样东西。到那时我会重新考虑。第二件是,端上模型的上下文窗口会不会扩大。几乎可以肯定会。如果明年的模型能处理32,000个token而不是4,000个,那我一直在反复讲的那个“整个文件夹”的情形,可能就直接落进端上的路径里了。我在这里纠结的问题,会被硬件进步悄悄地解决掉。这是最可能的结果,也是不应该现在就把自己绑到服务器路径上的另一个理由。
那些在免费层被提供时就跳上车的工作室,多数情况下会过得不错。一些人会在条款变化时做出正确的决定。另一些人不会,我们以后会读到关于他们的报道——被下架的功能、被打破的承诺、被包装成“投资于产品的未来”的尴尬的订阅式转向。还有少数人,会安静地吞下本来应该让他们死掉的成本,由不知道这件事正在发生的用户撑着。
那些当初就被挡在外面的工作室,和那些自己选择留在外面的工作室,不会有上面任何一种问题。他们会有另一种问题,就是他们的app能做的事情没那么多。这是个真实的问题。但这是那种你可以靠对它诚实来解决的问题,而不是那种当条款变化时,反过来“解决你”的问题。
我选了那个小一些的问题。大多数日子里,我都相当确信,这是正确的选择。