How to generate a model with FarkiBot
Generate M1 asks FarkiBot to build a model that conforms to a metamodel already in your project — a real, structured, valid model, not a picture of one.
This is the task most people use most, and the one where cheap models do genuinely good work. The metamodel is already in the prompt, so FarkiBot is filling in a structure rather than inventing one.
Before you start, set up FarkiBot. You need contributor access or above, and at least one M2 metamodel in the project — import one from the Farketplace if you don’t have one.
Generate a model
Section titled “Generate a model”- Open View > FarkiBot and switch the task dropdown to Generate M1
- Use the Metamodel chip to choose which metamodels the result must conform to
- Attach your source material, and/or type a brief
- Press Enter
Feed it source material
Section titled “Feed it source material”This is where Generate M1 earns its keep. Attach the documents that describe the thing you’re modelling and let FarkiBot do the transcription:
| File type | Notes |
|---|---|
.md, .txt | Notes, specs, glossaries |
.pdf | Sent to the model natively — no conversion step |
.docx | Read straight from the file, keeping headings and lists, because a spec’s structure is part of its meaning |
.farki | An existing model to work from or extend |
An older .doc won’t open — save it as .docx or PDF first.
Realistic inputs that work well: a PRD, an architecture decision record, a strategy document, a systems inventory spreadsheet exported to Markdown, meeting notes from a discovery workshop, a vendor’s product documentation.
Or just describe it
Section titled “Or just describe it”A brief on its own is enough when the subject is well understood:
A Business Model Canvas for a subscription coffee roastery that sells direct to consumers and to cafés.
A logical data model for a library: members, loans, holdings, reservations, fines.
Combining both is often best — attach the source document and say what to emphasise:
From the attached PRD, model the application landscape. Focus on integrations; I don’t need the UI detail.
Choosing the metamodels
Section titled “Choosing the metamodels”The Metamodel chip controls which M2 packages the generated model must conform to. By default all of them are included.
Narrow it when:
- The project has several metamodels and only one is relevant
- You want a smaller, cheaper prompt
- A generated model keeps drifting into types you didn’t want
What happens while it runs
Section titled “What happens while it runs”- Reasoning models stream their thinking, then the raw file streams in
- FarkiBot validates the result against the real importer and against the governing metamodel — element types have to exist, relationships have to satisfy the constraints
- Problems are fed back for repair, up to three attempts
- The output token limit is shown next to the LLM picker and raised automatically if the model runs out of room
That second validation is why a generated M1 is usually correct rather than plausible: it isn’t accepted unless it actually conforms.
Review before importing
Section titled “Review before importing”Nothing touches your project until you say so.
- Review opens a Contents tree — every element, relationship and diagram, with relationships showing the names they connect rather than internal ids, and a Source tab for the raw file. Search the tree to find anything in it.
- Save .farki… downloads the file
- Import brings it into your project, with a provenance note naming the model and date
- Discard throws it away
Staged packages survive reloads, up to 10 per project.
What to check in the review
Section titled “What to check in the review”| Check | Why |
|---|---|
| The element count is plausible | A model with 8 elements from a 40-page PRD has skipped most of it. |
| Names match your language | Rename now, in the review, rather than across 60 elements later. |
| Relationships aren’t just hierarchy | A model where everything is “composed of” something has structure but no insight. |
| Nothing was invented | If the source didn’t name an owner, no element should claim one. |
If it fails
Section titled “If it fails”The failure card explains why in plain language, offers the raw output for download, and Try again resubmits the same brief — with the same or a different LLM.
A free model can do useful M1 work. In our testing nvidia/nemotron-3-ultra-550b:free produced a good Business Model Canvas M1 at no cost. If your first free-model attempt fails, try a different free model before you reach for a paid one. See How to choose an LLM.
Changing a model you already have
Section titled “Changing a model you already have”To alter an existing model rather than build a new one, use Modify M1 — it shows you a diff before anything is replaced. See How to modify a model.