<!-- MIT License. Copyright (c) 2026 Decentralized Science Labs LLC. -->
<!-- summary: How a DAO owns GL1F Model NFTs: pricing inference, selling access and API keys, market listings, licences and internals, donations and the Models section. -->
# Models with GL1F

GL1F, GenesisL1 Forest, runs machine-learning models on chain: gradient-boosted tree ensembles stored on GenesisL1, owned as Model NFTs and evaluated by the Forest runtime. A COLLAB DAO can own Model NFTs in its treasury and decide by vote who may run them and what that costs. This page is for members of a DAO that holds or wants to hold models, and for anyone who runs one. It covers collections, owning a model, pricing inference, selling access, market listings, licences and internals, donating a model to a DAO, and the **Models** section.

## Collections

GL1F comes in collections. Each is four contracts that belong together: a model registry, a Model NFT contract, a market and a runtime. COLLAB's deployment on GenesisL1 lists two:

- **GL1F**, for general models (gl1f.com);
- **GL1F Crypto**, for market models (crypto.gl1f.com), which also keeps a licence per model and lets an owner choose how a model's internals are shown.

A DAO works with the collections it lists as [integrations](integrations.md), up to 8: the ones this deployment offers, or collections of its own. Its **Models (GL1F)** proposals act on those collections, and its Models section lists their models by collection. A DAO that lists no collection can still hold Model NFTs but cannot govern them: Models proposals cannot reach a model in a collection the DAO does not use, and treasury rules apply to it instead.

Each collection has administrators of its own, outside the DAO, who keep powers over its contracts and so over the DAO's models there. The DAO's **Settings** show who holds them; see [Outside admin keys](integrations.md#outside-admin-keys).

## Owning a model

The treasury owns a model when it holds its Model NFT. From then on, members decide by **Models (GL1F)** proposals on its pricing, access plans, keys and any sale or transfer. A DAO gets a model in two ways: a holder donates it (see [Donating a model](#donating-a-model)), or members vote to buy one listed on its collection's market with **Buy a model**, paid with L1 from the treasury.

**Send a model** transfers a Model NFT from the treasury to another address, for example a partner DAO or the people who maintain the model; the new owner then controls its pricing, plans and keys. Model NFTs move by Models proposals, not by Treasury spends.

Owning a Model NFT gives the DAO control of the model on chain, not by itself the intellectual property in it; see [Data, models and IP rights](integrations.md#data-models-and-ip-rights).

## Pricing inference

**Price inference** turns inference on or off and chooses how runs are paid:

- **Free**: anyone can run the model with a read call, without a wallet, a transaction or a fee;
- **Tips**: runs stay free, and a run by transaction can add an optional tip of any amount (**Suggested tip**);
- **Paid**: every run made by transaction pays the **Fee per run**; holders of a valid API key run it without paying per call.

The **Fee recipient** receives fees, tips and access-plan sales: the DAO treasury unless the vote says otherwise. The GL1F contracts pay fees and plan sales straight to it; COLLAB takes nothing.

Who receives a model's income after it changes hands depends on the collection. In GL1F Crypto, income follows the NFT: a new owner is paid until it chooses a recipient of its own, so a donated model pays the DAO at once. In GL1F, fees keep going to the recipient a previous owner chose until the DAO changes the model's pricing; the model's page then warns "Fees go to …, not the treasury." and offers **Propose paying the treasury**, and so does its row in the Models section.

## Selling access

A paid model can sell access, so that frequent users do not pay per run:

- **Access plans** sell time-limited API keys: a buyer pays the plan price once, and their key then runs the model with signed read calls, without per-run fees, until it expires. A plan runs for a number of blocks at a set price, paid once per purchase to the model's fee recipient; a price of zero makes the plan free to claim. Buying again for the same key extends it.
- **API keys** gives addresses a free API key that never expires, for example every member (**Use all current members**), or revokes keys. The composer takes up to 30 addresses per proposal (a proposal holds at most 32 actions), so very large lists take several proposals.

Keys work only while the model is paid. What an owner can undo differs by collection:

- In **GL1F Crypto**, access bought through a plan can never be revoked and keeps running until it ends, even if the model changes hands, and a model with a running subscription cannot be deleted until the last one ends. Free keys an owner gives work only while that owner holds the NFT. Set plans with care.
- In **GL1F**, the owner can revoke any key, bought ones included, one call per key.

**Buying access yourself.** On a paid model's page, **Buy** beside a plan opens "Buy access to …": choose **Which key gets access?** — **My wallet** (you then run the model by signing each request in your wallet), **Another address**, or **A new key**, which your browser generates. A new key's private key appears in the dialog, and COLLAB keeps it only in that tab and forgets it when you leave, so save it before you pay (**I saved the private key somewhere safe**). It is a key for running models only, not a wallet.

## Running a model

Each model's page has **Run the model**. Enter the inputs in the model's order; each value is multiplied by the model's scale and rounded to a whole number before it reaches the chain, exactly as the GL1F sites do, and the page shows the exact integers it sent. Depending on the pricing, you run it with a free read call, by transaction with a tip or the fee (**Pay … and run**), with an API key your wallet holds (**Run with my API key**), or with an API key you hold elsewhere (**Run with an API key you hold**: its private key signs this one request in your browser and is not stored or sent anywhere). Paste only an API key there, never your wallet's key. The owner of a paid model's NFT runs it without a fee.

A prediction is a computation, not a verified finding. Check how a model was trained before relying on it.

## Listing a model for sale

- **List for sale** offers a Model NFT on its collection's market at a fixed price. The DAO keeps the model and its earnings until someone buys it, and the buyer's payment goes to the treasury. The proposal makes two calls: it approves the collection's market for this one NFT, then lists it with the market's listing fee. In GL1F the listing fee goes to the market's owner; in GL1F Crypto it stays in the market until anyone burns it.
- **Cancel a listing** takes a Model NFT the DAO listed off its market.

A listing outlives the model leaving its seller: if the model comes back, the old listing applies again while the market is still approved. Approve the market for one model at a time, as COLLAB's own forms do, and cancel a listing before moving its model. Revoking the market's approval also stops an old listing from selling.

## Licences and internals

Where a collection keeps a licence per model and lets an owner choose how internals are shown, as GL1F Crypto does, two more actions apply:

- **Change the licence** moves a model to a later version of its licence or to a more open licence. A licence can never move back to a more restrictive one: rights granted under the new licence stay granted to everyone, so this opens the model's intellectual property for good.
- **Internals visibility** chooses whether GL1F sites show a model's internals: its trees, depth and inputs. This changes what GL1F sites show, not who can read the chain: anyone can still rebuild the model from its stored bytes. Showing the internals makes copying the model easier.

Both use the critical rules by default, and so does **Burn and delete**, which permanently burns a Model NFT and removes the model from its registry, so nobody can run it afterwards. GL1F Crypto has no deletion by its administrators, and a model with a running subscription cannot be deleted until it ends.

**Which rules.** The other Models actions use the standard rules unless the DAO made the type critical. Where treasury spends are critical, pricing, access plans and granting API keys use the critical rules whoever is paid, and so do listing a Model NFT, sending one away and buying with treasury L1. Where treasury spends are standard, they stay standard, since a standard vote there can already spend. See [When treasury spends are critical](treasury.md#when-treasury-spends-are-critical).

## Donating a model

Anyone who holds a Model NFT of one of the DAO's collections can give it to the DAO from the Models section: connect the wallet that holds it and press **Donate** beside the model under **Donate a model**. The confirmation says exactly what changes:

- the DAO treasury becomes the owner, and members decide its pricing, access plans, keys and any sale or transfer from then on;
- you cannot take it back;
- where its income goes next, by collection (see [Pricing inference](#pricing-inference));
- what happens to API keys: in GL1F Crypto, free keys you gave stop working, yours included, while access people bought keeps running until it ends; in GL1F, keys granted before the transfer keep working.

If the model is listed for sale in your name, the page asks you to cancel the listing first: a listing stays open after a transfer, the market would not let the DAO list the model while it is open, and it would sell the model at your price if it ever came back to you. A previous owner's listing that is still open can be cancelled only by that seller or the market's owner.

## The Models section

The Models section of a DAO is at `/dao/<web address>/models`: "Machine-learning models the treasury owns, stored on GenesisL1 as GL1F tree ensembles in the collections this DAO chose."

- For each collection the DAO uses, the models it owns, each with its pricing and status, and **Propose buying a model** when it owns none.
- **For sale on GL1F markets**: models other owners list, which the DAO can buy by proposal.
- **Donate a model**, which lists the Model NFTs of the DAO's collections that your connected wallet holds.
- **More GL1F collections**: collections this deployment lists that the DAO does not use yet, which a critical Governance rules vote can add.
- **How GL1F models work here**, in four steps from publishing a model to its fees.

Each model has a page at `/dao/<web address>/models/<collection>/<number>`:

- the model's masthead, with **Owned by this DAO** when it is, and **Propose a change**;
- **Run the model**, described above;
- its API keys and access plans, with what your wallet holds and **Buy** for each plan on sale;
- **Earnings for the treasury**: the L1 paid to the treasury for this model since the DAO received it, by block;
- its datasheet: inputs in order, trees and depth, scale, storage, licence and internals setting, and who is paid;
- **Verify the stored model**, which rebuilds the model from chain storage and checks that its keccak256 hash equals the model's ID;
- the Models proposals for this model, from pricing to **Burn and delete**.

![The Models section of a demo DAO](figure:dao5-models)

## Related

- [Integrations](integrations.md)
- [The treasury](treasury.md)
- [Sealed data with CIPNFT](sealed-data.md)
- [The 13 proposal types](proposal-types.md#models-gl1f)
- [Costs and gas](costs.md)
- [Known limitations](limits.md)
