Talk to an expert human

Research Software Development and Consultancy

Bespoke, fit-to-purpose software built with researchers, businesses, and educators.

AI guideExperimental

An AI guide, not a person. It can be wrong. Chats are kept for 90 days and processed in the US. Please don't share personal details or community material.

Full notice
  1. An AI guide, not a person. It can be wrong: the cards on this site and the call are the record.
  2. What you type goes through OpenRouter, a US company, to third-party AI model hosts. For text, that is Anthropic, the US company that makes Claude.
  3. It may be processed outside Canada, including in the United States, where authorities may be able to access it.
  4. OpenRouter doesn't store it, unless its safety screening flags it. Anthropic deletes it within 30 days, unless it is flagged for a safety review (then up to 2 years) or the law requires longer.
  5. We use it to answer you here and, if you ask for a call, to arrange it. Guide chats are kept for 90 days, then deleted.
  6. Sending your first message loads Cloudflare's bot check, which uses your IP address and browser details to tell people from bots.
  7. Please don't type personal or sensitive details, or anything about other people.
  8. A call request emails your name, email address, preferred times and project summary to us. Your name, email address and times don't go to the AI model.
  9. Up to 20 messages, 500 characters each. The guide switches off when it reaches its daily or monthly limit. Questions: [email protected].

The AI guide needs JavaScript. You can write to [email protected], or read the examples.

Research software

Champollion: a full, agent-ready suite of machine translation development tools, built with low-resource and Indigenous languages in mind.

champollion.dev In development

Train models

One training run: its loss falls steeply over the first 500 steps, from 12.9 to 3.1, then levels off, reaching 0.65 at step 8,000. A check every 800 steps saves a checkpoint; the best is at step 8,000.

Build corpora

Sentence pairs accumulate into the training set: 12,800 pairs. 501 dev pairs and 2,001 test pairs are split off, and the test set is sealed.

Test and deploy methods

Four methods are scored, one by one, against the sealed test set. The board settles into rank, and the top method is deployed.

One Champollion calibration run, into a constructed language: 12,800 training pairs, with 501 dev pairs and 2,001 test pairs held apart; 8,000 steps, training loss logged every 10 steps. Every 800 steps a check scored the model on dev pairs and saved a checkpoint; the best was the last, at step 8,000. Loss is the mean cross-entropy per output token, in nats. From the run log of 14 October 2026.

Business software

Bespoke ERPs: software built around how one business actually runs, from first lead to work order.

Examples: Primary Heating and Australia Farm Innovations.

  1. Lead generation
  2. Building code check
  3. Auto-generate takeoff
  4. Licensed human review
  5. Vendor quotes and sourcing
  6. Auto-generate WO/PO/Quote

A job moves through the six steps, and each step makes something. Lead generation scores a lead. The building code check checks the job against the code's rules. For the takeoff, the AI proposes facts from the drawings and a person accepts each one, and then the quantities are computed. A licensed person reviews the work, revises the document and signs it off. Vendor quotes set the prices, and the job is re-priced. Then the work order, the purchase order and the quote are made, and a person approves each one before it goes out.

Learning software

Instructive AI Tutors: most AI chatbots will happily do your homework for you. Our gated tutors are focused on teaching and student learning.

Teaching tutor

A chat with a course tutor. The tutor has set a problem: "Problem 3: solve 3x + 5 = 20." The student types "Can you just give me the answer?" and sends it. While the chat shows only that the tutor is thinking, the backend works: the instructor's custom instructions ("Hints only") sit on the model; the model looks things up in its tools, one channel each, the answer key, the course material and the rubric checks, going back and forth; its draft goes to the reply gate, an automatic check. The first draft gives too much away, so the gate sends it back to the model to revise; the revised draft passes and arrives in the chat as a hint: "Not yet. What could you subtract from both sides to leave 3x on its own?"

Guided by ground truth: it leads the student to the answer, checked against the course's own material and the instructor's rules.

Evaluation tutor

LLM-fault finding as critical thinking

A design, not yet built. A chat with an exercise tutor. The student types "Can I try an exercise?" and sends it. While the chat shows only that the tutor is thinking, the model builds an exercise with its tools; one tool, the seeded fault, plants a known mistake. The reply gate sends back an exercise with no fault in it, and passes the one that carries the fault. The exercise arrives in the chat: "Find the mistake:" 1: 2x − 4 = 10; 2: 2x = 6; 3: x = 3. The student types "Line 2: it should be 2x = 14." and sends it for scoring, and a checkmark appears on the student's message.

Assessment by seeded faults: the model plants a mistake, and the student finds it.

Potential applications

  • Code review exams
  • Lab-report checking
  • Worked math proofs
  • Engineering calculations
  • Clinical case notes
  • Contract drafting

Continuous data amalgamation

Edmonton Daily Brief: many public sources, one daily paper, every item cited.

edmontondailybrief.ca

sources data feeds
  • City of Edmonton
  • City council
  • Alberta Legislature
  • Alberta Court of Appeal
  • Environment Canada
  • Alberta Health Services
  • Edmonton Transit Service
  • EPCOR
  • + 215 more
writer four checks readings paper sentence + quote kept removed timestamped link could not read
sources data feeds
  • City of Edmonton
  • City council
  • Alberta Legislature
  • Alberta Court of Appeal
  • Environment Canada
  • Alberta Health Services
  • Edmonton Transit Service
  • EPCOR
  • + 215 more
writer four checks readings paper sentence
+ quote
kept removed timestamped link could not read

Two lanes into one paper. Stories: a writer turns each source's text into sentences, each tied to a passage quoted from its source, and every sentence must pass four checks. A sentence that fails is removed, and an item left with no sentence runs only as its headline and a link. Readings: the data feeds become readings, each with its time; a feed that fails says it could not read, never zero.

Persona chatbots

BertaGPT: characters that stay in character.

bertagpt.com