在 AI 绘画赛道还在疯狂卷大模型参数、卷提示词技巧的时候,Liblib(哩布哩布)用一种很特别的方式挤进了牌桌:不做基础模型,不做独立应用,而是把别人训练好的模型集中起来,做成一个“模型托管 + 在线生成 + 社区分发”的平台。伴随着外界报道中提到的 20 亿美元估值,关于它是“跑出来的奇迹”还是“资本吹起来的泡沫”的争论一直没有停过。
这篇文章不打算站队,也不会单纯复述新闻。我会从平台机制、业务角色、商业模式、技术实现、开发者接入、争议风险几个维度,把 Liblib 这家公司拆开来看。如果你想了解 AI 绘画平台的运作逻辑,或者正在做模型托管、AI 应用工具、模型 API 服务类产品,这篇文章应该能给你一些可参考的思考。
1. Liblib 到底在做什么:AI 绘画界的“模型中转站”
1.1 平台定位与背景
Liblib 的定位可以简单理解为“AI 绘画模型的一站式平台”。它不是一个从零训练基础模型的实验室,而是一个把 Stable Diffusion 生态里的 Checkpoint(大模型)、LoRA(低秩适配模型)、ControlNet、Embedding 等文件集中管理、在线推理、分发给普通用户的平台。
这个定位非常巧妙。Stable Diffusion 开源之后,社区里每天都有大量新模型产生,但这些模型散布在 GitHub、Hugging Face、Civitai、网盘、公众号各种渠道,普通用户想要找到一个适合自己的模型,成本其实很高。另一方面,绝大多数普通用户没有一台能跑 Stable Diffusion 的显卡,即使有了模型文件,也不会安装 WebUI、配置环境、调整参数。
Liblib 做的事情,就是把这些“不会用模型的人”和“会做模型但不会运营的人”连接起来。用户不需要下载模型,不需要本地显卡,直接打开网页就能在线生成图片;模型作者也不需要自己搭网站,把模型文件上传到平台,就能靠下载量、在线使用量获取收益或影响力。
从产业分工的角度看,Liblib 更像是 AI 绘画产业链里的“渠道商”和“技术服务商”,而不是“生产者”。这种模式决定了它的商业逻辑和估值逻辑与一般的 AI 公司完全不同。
1.2 平台里的三种核心角色
要理解 Liblib,先要理解平台上的三种角色。
第一类是普通 C 端用户。他们可能是设计师、自媒体运营、游戏原画爱好者,或者只是偶尔想生成一张头像的普通网友。这类用户不在乎底层技术是什么,只在乎“能不能快速生成一张好看的图”“模型多不多”“价格贵不贵”。
第二类是模型作者。他们通常是熟悉 Stable Diffusion 训练流程的技术型玩家,会自己收集数据集、训练 LoRA 或微调大模型。模型作者是平台内容供给的核心,没有他们持续产出优质模型,平台就留不住普通用户。
第三类是 B 端企业开发者。他们会通过 Liblib 提供的能力,把模型生成能力集成到自己的产品和业务流程中。比如电商公司用 AI 生成商品图,游戏公司用 AI 出概念设计稿,自媒体团队用 AI 给文章配图。B 端客户是平台商业化的重要方向。
一张图就能说明平台的价值链:
模型作者(供给方) → Liblib平台(托管+分发+算力+计费) → C端用户/B端客户(需求方)Liblib 在中间承担了存储、推理、计费、审核、社区运营等一系列工作,这也是为什么很多人把它叫“中间商”。只不过这个中间商不是简单的倒买倒卖,而是通过技术手段把模型供给和内容消费两端的效率同时提高了。
1.3 商业模式的底层逻辑
Liblib 的商业模式可以拆成几个层次。
最基础的是算力付费。用户在线生成图片消耗 GPU 资源,平台按生成次数或会员套餐收费。这是最直接也最容易理解的收入来源,相当于把闲置的模型能力和 GPU 算力成体系地对外售卖。
其次是会员订阅。高频用户会购买月度或年度会员,享受更多生成次数、更高并发、专属模型使用权等权益。订阅制的优势是现金流稳定,用户一旦养成使用习惯,流失率会相对较低。
第三层是模型交易与打赏。平台提供一个模型分发和交易的环境,模型作者可以设置付费下载、接受打赏、参与平台激励计划。平台从中抽取一定比例的服务费或推广费。这个模式类似于应用商店的开发者分成。
第四层是 B 端 API 服务。把在线生成能力封装成 API,按调用量计费,开放给企业和个人开发者。这个方向一旦做起来,Liblib 就不只是一家内容平台,而是一个 AI 绘画基础设施提供商。
这四层业务相互支撑,形成了一种“社区养模型、模型带用户、用户补算力、算力促商业”的循环。如果这个循环能持续转下去,平台的护城河会越来越深;如果其中某一环断了,整个估值逻辑也会受到质疑。
2. 拆解 Liblib 的典型业务闭环
2.1 模型上传与托管
模型作者在本地训练完成一个 LoRA 或 Checkpoint 之后,需要把模型文件上传到平台。平台会要求作者填写模型名称、描述、触发词、示例图、适用底模等信息。
这里有一个很容易被忽视的细节:平台的价值不只是帮你存文件,而是帮你把模型变成产品。一个模型文件放在本地,它只是一个几 GB 的二进制文件;但放到平台上,它有了封面图、有示例图、有参数推荐、有使用评价、有下载数据。这些信息组合起来,才能让一个陌生用户快速判断“这个模型适不适合我”。
从技术角度看,模型托管还涉及文件存储、版本管理、安全扫描、格式校验等问题。一个 Checkpoint 动辄 2GB 到 7GB,如果平台存储和 CDN 做得不好,用户下载模型时会非常痛苦。Liblib 的做法是把在线推理作为核心体验,用户不需要下载完整模型,只需要在网页端提交生成请求,由平台侧加载模型并执行推理。这就把“模型文件大小”这个痛点从用户侧转移到了平台侧。
对模型作者来说,上传模型还有一层意义:获得曝光和收益。一个训练精良的 LoRA 模型,如果踩中了热门题材,在平台上可能获得上万次的使用量。这比在 GitHub 上放一个 README 要有价值得多,因为平台本身就是流量入口。
2.2 在线推理与生成
在线推理是 Liblib 最核心的技术环节。用户在网页端选择模型、填写提示词、设置参数、点击生成,平台在云端调度 GPU 资源,运行 Stable Diffusion 推理脚本,最后把生成结果返回给用户。
一个完整的在线生成请求可以拆成几个阶段:
- 用户提交生成请求,包含模型 ID、提示词、负向提示词、采样步数、CFG、宽高、种子等参数。
- 平台校验用户权限、配额、内容合规性。
- 平台把请求放入任务队列,等待 GPU 资源分配。
- 调度器将任务分配给某个推理节点,加载对应模型。
- 推理节点执行 Stable Diffusion,生成图片。
- 结果上传到对象存储,返回给用户展示。
对于用户来说,这个过程最好是秒级完成;对于平台来说,推理成本直接和生成次数挂钩,所以算力调度效率直接决定了毛利润。高峰期用户量激增,如果队列设计得不好,用户就会长时间等待,然后流失。
这也是为什么 Liblib 这类平台会花很大精力去做“队列调度”“空闲实例回收”“模型热加载缓存”等偏底层的工作。表面上用户看到的是一个网页,实际上背后是一套相当复杂的分布式任务系统。
2.3 社区分发与内容消费
Liblib 的社区属性是它区别于纯 API 服务平台的关键。
用户生成图片后,可以发布到平台的“作品广场”,其他用户可以看到用哪个模型、什么提示词生成的,然后一键“同款”或“克隆”继续生成。这种内容分发机制让模型有了持续的曝光入口,也让新用户可以在浏览作品时不知不觉完成“看到 → 喜欢 → 使用 → 生成 → 发布”的完整循环。
这个机制和常规内容平台的推荐逻辑类似:平台会根据用户浏览记录、收藏、生成历史做内容推荐。模型作者为了获得更多曝光,会持续优化模型质量,并发布高质量的示例图。普通用户即使没有训练能力,也能通过平台上其他人的成果,获得很好的生成体验。
从这个角度看,Liblib 有两个产品同时在做:一个是工具,一个是社区。工具负责满足生成需求,社区负责供给内容、留存用户、形成网络效应。如果只看工具属性,它很容易被同类产品替代;但加上社区属性之后,用户迁移成本会显著提高。
3. 技术视角:Liblib 式平台的核心模块
3.1 模型仓库:存储与版本管理
模型仓库是平台的底座。它要解决三个问题:模型文件安全存储、模型格式标准化、模型版本回溯。
从存储角度看,模型文件体积大、数量多,需要对象存储配合 CDN 做分发。考虑到下载频繁,还需要做热点文件的预加载和多级缓存。底层通常是一套支持海量小文件和大文件混合存储的对象存储系统,而不是传统的单机文件系统。
从版本管理角度看,模型作者发布新版本后,旧版本仍然可能被大量用户使用。平台不能强制所有人都迁移到新版本,所以需要为每个模型维护多条版本分支,用户可以分别查看每个版本的效果图、参数和下载量。这有点像 Docker Registry 的 tag 机制。
模型仓库还需要做内容安全校验。训练数据中如果包含违规内容,模型本身也可能在推理时生成违规图片。平台不能像检查普通文本一样检查模型内容,但可以通过生成样例图、关键词过滤等方式做初步审核。合规问题是模型平台长期面临的风险点。
3.2 推理服务:队列与显存调度
Stable Diffusion 推理的核心资源是 GPU 显存。一个 7GB 的 Checkpoint 在被加载后,会占用数 GB 显存,如果平台同时加载大量模型,GPU 显存很快就会耗尽。
所以平台通常会采用“模型实例缓存”策略:一台 GPU 服务器同时保留多个热门的模型文件在显存中,请求进来后优先命中已有缓存,避免反复从磁盘加载模型。热门模型被高频使用,缓存命中率高,整体吞吐量就高;长尾模型使用频率低,每次加载都需要额外时间,平台通常会对这类请求设置更长的排队时间。
任务调度层需要用队列来控制并发。最简单的方案是给每个模型维护一个 FIFO 队列,复杂一点的做法是全局共享队列加模型亲和性调度。核心目标是在有限的 GPU 资源下,尽可能提高响应速度,同时避免因为个别用户的批量请求把整个平台压垮。
对于开发者来说,如果自己搭建类似的推理服务,可以先用 Redis 做任务队列,用 Python 多进程或 Celery 做 Worker,再逐步引入 Kubernetes 做弹性伸缩。起步阶段不需要一上来就上微服务,先把链路跑通更重要。
3.3 计费与鉴权:额度、Token、API Key
计费模块是商业化的关键,通常包含两套体系:
一是用户额度体系。平台会给不同等级的用户设定每日生成次数上限,根据用户充值的套餐实时调整额度。每次生成请求发出前,系统要先检查用户剩余额度,扣减额度成功后才允许进入推理队列。为了防止用户并发刷量,需要做原子的额度扣减操作,否则在并发场景下会出现超扣的情况。
二是 API 鉴权体系。B 端开发者调用 API 时,需要使用平台签发的 API Key。每次请求需要校验签名、时间戳、请求体完整性。常见的签名方式是用 Secret Key 对请求参数做 HMAC 签名,然后携带在 Header 中。平台根据 API Key 识别调用方身份,并按调用次数计费。
# 签名示例:使用 HMAC-SHA256 生成请求签名 import hashlib import hmac import time import requests api_key = "your_api_key" secret_key = "your_secret_key" timestamp = str(int(time.time())) params = { "model_id": "demo-lora-001", "prompt": "a beautiful girl, best quality", "negative_prompt": "lowres, bad anatomy", "width": 512, "height": 512, "steps": 20, "cfg_scale": 7.0, } # 把所有参数按 key 排序后拼接成字符串 query_string = "&".join(f"{k}={params[k]}" for k in sorted(params)) message = f"{timestamp}\n{query_string}" signature = hmac.new(secret_key.encode(), message.encode(), hashlib.sha256).hexdigest() headers = { "X-API-Key": api_key, "X-Timestamp": timestamp, "X-Signature": signature, } resp = requests.post( "https://api.example.com/v1/generate", json=params, headers=headers, timeout=30, ) print(resp.json())需要注意,这里的接口地址、参数名、签名规则都是示意写法,实际接入时要以 Liblib 官方 API 文档为准。但整体思路是通用的:先签名,再请求,避免 API Key 被滥用。
4. 开发者实战:模拟一个模型平台 API 调用
4.1 注册应用与获取密钥
假设我们要开发一个电商商品图小程序,希望接入 Liblib 这类平台的模型生成能力。第一步不是写代码,而是在平台注册开发者账号,创建一个应用,然后获取 API Key 和 Secret Key。
创建应用时通常需要填写应用名称、应用描述、回调地址、使用场景等信息。平台会针对不同场景分配不同的权限范围,比如有的应用只能使用限定的模型,有的应用可以调用全部公开模型。建议开发者在初始阶段只申请最小权限,等业务验证通过后再申请扩大。
密钥获取之后,一定要妥善保存。API Key 和 Secret Key 一旦泄露,别人就可以用你的账号调用付费接口,造成经济损失。不要把 Secret Key 写在前端代码或客户端安装包里,应该由后端服务保管。
4.2 调用在线生成接口
在线生成接口通常是一个异步接口。也就是说,你提交请求之后,接口不会立刻返回最终图片,而是返回一个任务 ID。真正拿到图片,需要轮询任务状态或等待回调通知。
import requests import time def submit_generate_task(api_key, prompt, model_id="demo-lora-001"): url = "https://api.example.com/v1/generate" headers = {"Authorization": f"Bearer {api_key}"} payload = { "model_id": model_id, "prompt": prompt, "negative_prompt": "blurry, low quality", "width": 768, "height": 768, "steps": 25, "batch_size": 1, } resp = requests.post(url, json=payload, headers=headers, timeout=30) resp.raise_for_status() return resp.json()["task_id"] def poll_task(api_key, task_id, max_wait=120): url = f"https://api.example.com/v1/tasks/{task_id}" headers = {"Authorization": f"Bearer {api_key}"} start = time.time() while time.time() - start < max_wait: resp = requests.get(url, headers=headers, timeout=10) data = resp.json() status = data.get("status") if status == "succeeded": return data["images"] elif status == "failed": raise RuntimeError(f"task failed: {data.get('error')}") time.sleep(3) raise TimeoutError("task timeout") task_id = submit_generate_task("your_api_key", "product photo of a white sneaker, studio lighting") images = poll_task("your_api_key", task_id) print(images)这段代码的流程是提交生成任务 → 轮询任务状态 → 获取结果。实际开发中,如果平台支持 webhook 回调,更推荐用回调模式,因为轮询会占用大量无效请求,增加平台和调用方两侧的负担。
4.3 任务结果的保存与展示
拿到生成图片之后,图片 URL 通常是一个临时地址,可能在一定时间后失效。如果业务需要长期保存,应立即把图片下载到自己的对象存储中,并在数据库中保存关联关系。
import boto3 from urllib.parse import urlparse # 以 AWS S3 为例,实际使用国内云厂商时替换为对应 SDK s3 = boto3.client("s3") def download_and_save_image(image_url, bucket_name, object_key): resp = requests.get(image_url, timeout=60) resp.raise_for_status() s3.put_object(Bucket=bucket_name, Key=object_key, Body=resp.content) return f"https://{bucket_name}.s3.amazonaws.com/{object_key}"注意,生成图片涉及版权和使用范围问题。开发者要确认平台服务和模型的授权协议,不能把生成结果用于违反规定或侵犯第三方权益的场景。
4.4 错误处理与重试策略
AI 生成服务最常见的错误类型包括:额度不足、参数非法、模型不存在、任务超时、服务过载。和普通 API 不同,生成服务的单次调用耗时较长,如果服务端已经进入推理阶段,客户端超时重试可能会导致重复扣费。
因此,建议重试策略遵循以下原则:
- 网络连接失败或 5xx 错误,可以重试,但要设置最大重试次数。
- 4xx 错误说明是调用参数或权限问题,不重试,直接检查代码。
- 如果请求已成功返回任务 ID,只是轮询时网络中断,不要重新提交任务,而是用原任务 ID 继续查询。
- 对于生成失败的任务,先查询失败原因,再决定是否重试。
import time MAX_RETRY = 3 def generate_with_retry(api_key, prompt): for attempt in range(MAX_RETRY): try: task_id = submit_generate_task(api_key, prompt) images = poll_task(api_key, task_id) return images except (requests.ConnectionError, requests.Timeout) as exc: if attempt == MAX_RETRY - 1: raise exc time.sleep(2 ** attempt)这种退避重试方案可以在临时性故障时提高任务成功率,同时避免在请求已经提交成功后重复创建任务。
5. 从“中间商”模式看估值逻辑
5.1 为什么平台型生意值钱
回到文章标题的问题:Liblib 凭什么能撑起高估值?一个很重要的原因是平台型生意的放大器效应。
传统软件公司的收入是线性的,卖一个客户收一份钱,规模扩大需要更多人力和销售投入。平台型生意不一样,它的核心资产是“双边网络”:模型作者越多,可用的模型越丰富,普通用户就越愿意来;普通用户越多,模型作者的收益和曝光越高,也就越愿意持续产出。这种正向循环一旦建立,平台的边际成本会逐步下降,而用户价值会持续上升。
Liblib 没有选择做“又一个生成图片的网站”,而是做了一个“让 AI 模型可以流通和交易的基础设施”。这个定位让它在产业链中站在了一个更有利的位置:无论未来谁的基础模型更强,只要用户还需要各种细分风格的 LoRA 和 Checkpoint,Liblib 这样的分发平台就有存在的空间。
5.2 高估值背后的支撑点
支撑估值的第一点是流量和用户规模。AI 绘画工具在 2023 年到 2024 年经历了爆发式增长,Liblib 乘着 Stable Diffusion 社区开源的东风,积累了大量对本地部署不熟悉、但有强烈图像生成需求的用户。用户量是互联网产品估值的基础,有了用户量,后面的商业化才有想象空间。
第二点是商业化的多渠道布局。算力付费、会员订阅、模型交易、B 端 API,四条变现路径相互补位,比单一靠广告或单一靠算力收费的模式更稳健。资本市场对“有明确盈利路径的平台”容忍度更高。
第三点是数据和生态壁垒。用户在平台上生成图片、收藏模型、发布作品,这些行为数据不断沉淀模型评价体系和推荐系统。模型作者和用户之间的互动关系也很难迁移到新平台。随着时间推移,平台的网络效应会越来越强,这是估值的重要支撑。
5.3 光环之外的泡沫隐忧
看到支撑点的同时,也不能忽略风险。
首先是版权和合规风险。AI 绘画依赖的训练数据可能包含大量未授权素材,模型的生成结果也可能与现有作品高度相似。平台作为模型分发和生成的中间环节,是否承担审核责任、如何界定侵权边界,在现有法律框架下仍然存在不确定性。一旦出现大规模诉讼或监管收紧,平台的运营成本会显著上升。
其次是算力成本压力。在线推理的每一张图都是成本。如果平台为了拉新而大量赠送免费生成次数,或者在高峰期承接了大量低价值请求,毛利润会被严重侵蚀。如何在用户体验和算力成本之间找到平衡,是持续运营的关键。
第三是同质化竞争。模型托管和在线推理的技术门槛正在快速降低,很多云厂商和独立开发者都能搭建类似服务。如果平台不能在社区生态、模型质量、开发者服务上形成差异化,用户很容易被价格更低或体验更好的替代品抢走。
6. 常见问题与排查思路
6.1 生成请求一直排队
| 问题现象 | 常见原因 | 解决思路 |
|---|---|---|
| 提交任务后长时间显示排队 | 当前用户量过高,GPU 资源不足 | 错峰使用,或升级到高优先级套餐 |
| 高峰期排队特别严重 | 平台算力弹性不足 | 异步重试,接受排队机制 |
| 某个模型排队明显更久 | 该模型冷门,实例缓存未命中 | 换用热门等效模型 |
如果你是自己搭建类似的推理服务,也要提前设计队列策略。建议用 Redis 做任务队列,并记录每个任务进入队列和开始执行的时间,方便监控队列积压和算力瓶颈。
6.2 模型加载失败或效果不一致
| 问题现象 | 常见原因 | 解决思路 |
|---|---|---|
| 生成图片和示例图差异大 | 提示词、采样参数不同 | 参考模型作者推荐的参数 |
| 部分模型无法加载 | 模型格式不兼容或文件损坏 | 确认模型支持平台版本,重新上传 |
| 生成结果偏色或模糊 | 底模不匹配或步数过低 | 调整底模和采样步数 |
这里要特别提醒模型作者,发布模型时一定要注明适用的底模版本和推荐参数。同样一个 LoRA,在不同的底模上表现差异可能非常大,写明使用条件能显著降低用户投诉率。
6.3 API 调用被限流
| 问题现象 | 常见原因 | 解决思路 |
|---|---|---|
| 返回 429 状态码 | 调用量超过 QPS 限制 | 降低并发,增加退避时间 |
| 额度用尽后请求失败 | 账户余额不足 | 及时充值,或设置用量告警 |
| 部分接口返回 403 | API Key 权限不足 | 检查应用权限配置 |
开发者在接入 API 时,应该在代码中提前处理 429 和 403 这类可预期的错误,而不是抛出一个大而全的异常。可以对接告警系统,在调用失败率超过阈值时触发通知,这样能尽早发现线上问题。
7. 给开发者与创作者的实际建议
7.1 对模型作者的建议
- 上传模型时提供完整的说明文档,包括触发词、示例图参数、负面提示词、推荐底模。
- 定期在平台发布新作品,保持社区活跃度,但不要刷量或刷好评。
- 注意训练数据合规性,不要使用侵犯版权或包含个人隐私的素材。
- 可以对核心模型采取付费下载策略,但前期先用免费模型积累口碑更稳妥。
7.2 对平台开发者的建议
- 做好资源隔离,防止单个用户的大量请求拖垮整体服务。
- 日志记录要完整,每次生成请求都记录请求参数、模型 ID、耗时和结果状态,方便复盘。
- 计费和配额扣减必须在任务进入推理队列之前完成,避免用户提交大量任务后因额度不足导致超扣。
- 建立多级缓存,热门模型常驻显存,冷门模型按需加载。
7.3 对普通绘画用户的建议
如果只是日常使用,不必追求最贵的会员套餐。先免费额度测试自己的使用频率,再决定是否付费。很多社区中的免费模型已经足够满足日常配图、头像、海报等需求。另外,生成结果如果用于商业用途,请仔细确认模型授权,避免引发版权纠纷。
8. 写在最后
回到标题里的问题:Liblib 跑出了奇迹还是泡沫?
从商业模式来看,它的“模型中间商”定位确实踩中了 Stable Diffusion 生态里的真实痛点,平台化、社区化、算力服务的组合拳也让它找到了一个可持续滚动的飞轮。只要 AI 绘画的 C 端创作和 B 端应用需求还在增长,Liblib 这类平台就有继续向上走的动力。
从风险来看,版权合规、算力成本、同质化竞争都是实打实的压力。当行业进入洗牌期,那些没有真实用户价值、只靠资本催熟的模式会被淘汰,而能持续服务好模型作者和普通用户的平台,才有机会把估值的“泡沫”变成“市值”。
对技术人来说,Liblib 给我们的启发不只是“一个 AI 绘画网站做大了”,更重要的是它展示了一种通用思路:在一个开源生态里,找到供给方和需求方之间的连接空档,用平台化的方式把两方面需求同时满足。这种思路适用于 AI 绘画,也适用于其他大量依赖开源组件的垂直领域。
至于它最终会被定义为奇迹还是泡沫,时间会给出答案。我们普通开发者和创作者能做的,是把这类平台的工具能力用好,同时保持对技术和商业模式本身的独立思考。