← Back to experienceShipped product2020—2022Ping An Technology · AI Center

Consultation System

Turn TCM consultation from a fixed questionnaire into a questioning system that can identify disease and pattern — and change course when it goes wrong

ROLEConsultation path and pattern-differentiation logic
STAGEIn production use
SURFACEDynamic consultation · Disease identification & pattern differentiation
BOUNDARYCoverage and accuracy are whole-project results. Personal contribution focuses on the consultation path, disease-and-pattern logic, and course-correction.

What this system does

TCM diagnosis answers two different questions. Disease identification is what the illness might be. Pattern differentiation is whether this illness currently sits in cold, heat, deficiency, or excess — the pattern. The same cough is treated completely differently if wind-heat is invading the lung versus cold damaging the lung. If the system only outputs “cough,” it is not enough for the user or for the models that follow.

This consultation capability sits inside Ping An Health’s TCM self-diagnosis product “Daily Suwen.” The same pattern logic lands on both a mini program and a PC consultation workbench: the phone emphasizes asking while capturing; the PC spreads dialogue and the reasoning path across one screen. After a user describes discomfort in voice or text, the system has to ask enough, give a disease and a pattern, and support identification of 9 constitution types. I owned how questions are organized, how the next question is decided, and how disease identification and pattern differentiation become maintainable rules from medical theory.

Why the earlier version did not work

Early consultation depended on fixed templates: one questionnaire per disease. Adding a new disease was expensive, and rules updated slowly. Real users also do not speak to a template — someone may say “I have a cold,” treating a disease name as a chief complaint. Once the system entered the wrong template, later questions could barely escape, and the whole consultation was locked on the wrong path.

Key product judgments

  1. Narrow the disease range first, then judge the pattern. Chief complaint and accompanying symptoms screen candidate diseases; the pattern is matched only inside that disease’s pattern table, not as a black-box classification over all patterns.
  2. The next question is decided by information already collected, not by a hard-coded full path. Different TCM schools ask in different orders; one sequence cannot be treated as the only standard.
  3. If the user said it wrong, the system must be able to re-ask. Users treating a disease name as a chief complaint, or realizing mid-way that the path is wrong, both need course-correction. Otherwise accuracy on paper still cannot handle a real conversation.
  4. Patterns need a knowledge table doctors can check against. Cold/heat, deficiency/excess, cause, and location should map to typical symptoms so a conclusion can be verified, not only given a model score.

How disease identification and pattern differentiation become questioning rules

I closed the clinical order into four steps, as extensible rules rather than a stacked questionnaire per disease.

Collect the chief complaint. Tell the user first: a chief complaint is “the worst symptom + how long,” with correct examples, supporting voice, text, and options. If the system recognizes a disease name (for example “I caught a cold and it still hasn’t gone”), it re-asks for concrete symptoms, so a fake chief complaint does not steer the rest of the chain.

Collect accompanying symptoms. Other discomforts are important for telling cold from heat and for cause. Users can describe by recording; the system does semantic understanding and listening (whether the voice sounds abnormal) at the same time; after recording, they can add more. If recording is inconvenient they can switch to text, with a note that voice information may be missed.

Identify the disease. Similarity is computed between the chief complaint plus accompanying symptoms and covered diseases, producing a candidate list. Diseases hit directly by the chief complaint rank first; if the highest similarity is below threshold, the system judges that it may be outside coverage, rather than forcing a disease name.

Differentiate the pattern. Look first at cold, heat, deficiency, and excess, then at nature (causes such as wind, cold, damp, fire) and location (mainly heart, liver, spleen, lung, kidney). The three parts are compared with that disease’s pattern table to get a concrete pattern. A full example: cough + thirst, body heat, yellow mucus, yellow tongue coating → heat; aversion to wind → wind; location in the lung → cough — wind-heat invading the lung.

The same structure also has to hold multiple schools of pattern differentiation: question order and discrimination points can be configured by school, without rebuilding a whole questionnaire for each doctor’s habit. When symptoms seem to fight each other, that is not automatically a recognition error — some patterns are mixed cold and heat, and some are a condition in transition. Those cases belong in the report, not in forcing a clean answer at the questioning stage.

My work

  • Split the limits of fixed templates into three product problems: new diseases were hard to extend, rules were hard to update, and a wrong path could not be escaped.
  • Led the computable path for disease identification and pattern differentiation, organizing questioning and matching for 50 common diseases and 9 constitution types into maintainable rules.
  • Designed chief-complaint guidance and fake-chief-complaint correction, so dynamic questioning sits on usable input rather than assuming users will speak like doctors.
  • Checked pattern results with medical experts, algorithm, and engineering, and closed quality to an acceptable bar. Before consultation capability matured, a maintainable template flow was used as a bridge, then iterated toward deciding the next question from information already in hand.

Results and limits

The consultation system covers 50 common diseases and 9 TCM constitution types, with pattern-differentiation accuracy of 90%; four-examination constitution identification improved 30% over Ping An Health’s previous approach. These numbers describe project effect after the path was rewritten.

MY CONTRIBUTION

  • Wrote TCM’s “identify the disease first, then the pattern” as a computable path: screen diseases with the chief complaint and accompanying symptoms, then match pattern using cold/heat, deficiency/excess, cause, and location
  • Identified that fixed templates were hard to extend, that users treating a disease name as a chief complaint would steer diagnosis, and that a wrong path could not be escaped
  • Led consultation rules that can decide the next question dynamically, covering common diseases and constitution identification, instead of a hard-coded questionnaire per disease

PROJECT OUTCOME

  • Covers 50 common diseases and 9 TCM constitution types, with pattern-differentiation accuracy of 90%
  • Four-examination constitution identification improved 30% over Ping An Health’s previous approach

Scope note: Coverage and accuracy are whole-project results. Personal contribution focuses on the consultation path, disease-and-pattern logic, and course-correction.