Skip to main content

AI Data Entry Assistant

# Study Workspace

Using the AI Chat panel on the Data Entry page to extract values from a chat message or an attached document/image and map them into the open CRF's fields — input modes, the accept/reject review mechanism, and flagged issues.

AI Data Entry Assistant

The AI Chat panel is an icon-rail entry on the right sidebar of the Data Entry page. Selecting it opens a chat panel next to the open form. It is available on CRF, IMP, Randomize, and Survey data entry alike — there is no restriction by form type.

Not available on Visit Detail

The right sidebar (and therefore AI Chat, along with Issues, Queries, and History) does not appear on Visit Detail. The AI Chat panel is only reachable from an open form's own data entry page.

Starting a conversation​

Open a CRF, IMP, Randomize, or Survey form, then select AI Chat in the right sidebar. The panel opens with a prompt to describe the data in natural language, plus a few quick-reply examples (for example, "Weight is 75kg and height is 120cm" or "Blood pressure is 120/80 mmHg").

Two ways to give the assistant data, usable together or separately in the same message:

  • Type a message describing the values to enter, in plain language.
  • Attach one file or image to the message — a scanned source document, a photo of a paper form, or a PDF.
Excel and CSV attachments may be rejected

The attachment picker lets you select a .xlsx, .xls, or .csv file, but these formats are not currently accepted once the file reaches the assistant, and the attempt will fail. Prefer a PDF or an image capture of the source document instead.

Screenshot placeholder

Screenshot pending

What this should show: the AI Chat panel open beside a CRF, with a typed message and an attached image, the assistant's reply, and at least one field showing its inline Accept/Reject controls.

How extraction and field mapping work​

When the message includes an attached image or scanned document, the assistant first reads the page into plain text. That text (together with any typed message) is then matched against the schema of the CRF you currently have open — its fields' labels, codes, types, units, and answer options — so that each extracted value is mapped to the correct field by its field code. This mapping is specific to the form you have open, not a generic document extraction.

A field is only ever offered to the assistant as a fillable target if it is a normal, editable field on the form. A field is left out of what the assistant can fill when it is:

  • Read-only.
  • Hidden by the form's skip-logic at the time.
  • A calculated or derived field (its value comes from a rule, not direct entry).

There is no additional exclusion based on what kind of field it is — for example, a signature field or a field holding personally identifiable information is not automatically protected from being offered to the assistant. It is only excluded if it happens to also be read-only or hidden for one of the reasons above. Review what the assistant filled in as carefully as you would review typed data on any sensitive field.

Reviewing what the assistant filled in​

When the assistant replies with extracted values, it writes them directly into the open form's fields immediately — the same underlying mechanism used when you type a value yourself. There is no separate preview shown before the write happens.

Once written, each affected field shows an inline Accept / Reject control, and the chat message shows Accept all / Reject all:

  • Accept does not change the field's value — the value is already there. Accept only stops offering to revert that field, once you've confirmed it is correct.
  • Reject restores the field to whatever value it held immediately before the assistant wrote to it.

You still need to use the form's normal Save (or Save as Partial / Save as Complete) action afterward to persist any of this to the record — the same as for anything typed by hand. Writing a value into the form and saving it are two separate steps, whether the value came from the assistant or from your own typing.

In practice: watch what changed after each reply, and use Accept or Reject — per field or in bulk — before you save. There is no confidence or certainty indicator shown for any extracted value, so treat every extracted value as needing the same visual check you would give a typed entry.

Flagged issues​

Separately from the per-field Accept/Reject above, some extracted values surface as a flagged issue in the chat, each with its own Approve / Reject action:

FlagWhen it appears
Validation errorThe extracted value falls outside the field's configured valid range.
Value changedThe extracted value differs from a value already recorded in that field.
Partial dateA date field was only given a partial date (for example, year only, or year and month).
Anomaly detectedThe value looks clinically implausible on its own (for example, an unusually extreme vital sign or lab result, or a future date for something that should already have happened).
Source conflictTwo extracted values contradict each other (for example, a stated age that does not match a recorded date of birth).

For a flagged issue:

  • Approve opens a query on that field for follow-up — it does not dismiss the flag.
  • Reject reverts the field to its value from before the assistant's write.

Query handling itself — creating, answering, and closing — is covered in Queries — User Guide.

Who can use this​

There is no dedicated permission for the AI Chat panel — it is available to any user who can already access data entry, once your study has this AI feature enabled. Availability depends on two things outside any individual permission: whether your platform build includes the assistant, and whether a Study Administrator or System Administrator has turned on AI features for the study.

  • AI Features — overview of all AI-assisted capabilities in ClinicalDataS
  • Data Entry — the CRF, IMP, Randomize, and Survey entry types the AI Chat panel assists
  • Queries — User Guide — handling a query opened from a flagged issue