Register capacity
Node operators publish basic availability, supported models, and latency region.
Documentation
Bullbrain is a SOL-side AI project concept for chat, model routing, node quality, and synthetic data workflows. These docs explain what exists now, what is simulated, and what should be connected next.
Bullbrain presents a practical AI network product: users interact through chat and agent surfaces, requests are routed to the best available model or node, and useful prompts become material for future data refinement.
Open the project locally with any static server from the project folder.
python3 -m http.server 5173 --bind 127.0.0.1
Then visit:
http://127.0.0.1:5173/
The landing page does not require a build step. The demo bot also runs without an API key because it is currently a browser-side prototype.
The chat on the homepage is a free test bot. It is meant to validate product wording, user intent, and chat layout before the project commits to a real inference provider.
app.js.getDemoBotReply().The Bullbrain Network should route inference work to nodes based on practical performance signals rather than hype metrics. The first public dashboard can stay simple.
Node operators publish basic availability, supported models, and latency region.
Requests generate uptime, response speed, and failure-rate signals.
The app chooses a route by model fit, cost, latency, and recent node health.
Bullbrain can begin with a small curated model list. The point is not to claim every model; the point is to make routing, testing, and comparison easy.
Datagen is the feedback loop. Prompts from real users can become reviewed examples, then evaluation sets, then tuning material when the project is ready.
When a live endpoint is selected, replace the local response function in app.js with a request
to that endpoint. Keep API keys on a server, not in the browser.
async function getLiveBotReply(message) {
const response = await fetch("/api/chat", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({ message })
});
const data = await response.json();
return data.reply;
}
For the current prototype, getDemoBotReply() stays local so the page remains free to run and
easy to share.