A lot of the tools that I build that interact with LLMs are built with Breadboard. I needed to be able to run a number of tasks on the device that I have the board without using an LLM in the cloud. TransformerJS is a great API for JS developers to work with a number of different models that are hosted on HuggingFace. To get this working with breadboard I needed to create a Kit.... so here we are.
You can find the code here and if you are using breadboard you can install it as npm i @paulkinlan/transformerjs-breadboard-kit
To create an Breadboard agent you can do it as follows:
import { board } from "@google-labs/breadboard";
import { sentiment } from "@paulkinlan/transformerjs-breadboard-kit"
export default await board(({ text, model }) => {
text.isString();
model.isString();
const summarynode = transformersjs.summarize({
$id: "summary",
input: text,
model,
});
return summarynode.to(base.output());
}).serialize({
title: "Summary board",
description: "Runs the summarization analysis with transformer JS",
version: "0.0.2",
});