在浏览器和 WebGPU 中运行的结构化生成 w/SmolLM2
Vaibhav Srivastav 的非凡演示。这里是 Hugging Face 的SmolLM2-1.7B-Instruct直接在 Web 浏览器中运行(使用 WebGPU,因此目前需要 Chrome),演示结构化文本提取,将图像的文本描述转换为使用 JSON 模式定义的结构化 GitHub 问题。
该页面加载 924.8MB 的模型数据(根据此脚本汇总 window.caches 中的文件)并在浏览器中执行所有操作。我不知道这么小的模型可以产生如此有用的结果。
这是演示的源代码。它大约有 200 行代码,其中 50 行是描述要提取的数据的 JSON 模式。
这里真正的秘密武器是 MLC 的web-llm 。该库使通过浏览器中的 LLM 加载和执行提示变得异常简单,并且最近还纳入了对 MLC 的XGrammar库(也可在 Python 中使用)的支持,该库实现了 JSON 模式和基于 EBNF 的结构化输出指导。
标签: webAssembly ,拥抱脸, webgpu ,生成人工智能, MLC , ai , llms , smollm
原文: https://simonwillison.net/2024/Nov/29/structured-generation-smollm2-webgpu/#atom-everything