Files
PTSRaiAgent/config/texts/phrases.yaml
T
ElebobaandClaude Opus 5.5 6a77831603
CI / ruff · pytest (pull_request) Successful in 1m30s
feat(llm): RAG knowledge base over clinical guidelines with cited extractive answers
- docs/source/rag: PDF sources (KR PTSD 2023, KR depression 2024, meds module spec),
  pdf->txt converter (tables as markdown, page markers, hand-transcribed figures),
  word-level check against pdftotext; fixes HAM-D/MADRS fake headers and split rows
- config/rag: corpus txt + sources.yaml (documents, audiences, retrieval params, synonyms)
- app/llm/rag: Snowball stemmer, section-aware chunker with page citations,
  BM25 + synonym expansion + densest-passage reranking, extractive answer()
  with coverage gate, patient dose/prescribing filter, optional LLM rephrasing
  rejected when it adds content; CLI python -m app.llm.rag
- tests: gold retrieval set (hit@3 >= 15/18), off-topic, safety, faithfulness
- ADR-011

Refs #60

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 04:11:06 +03:00

46 lines
4.6 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Шаблоны реплик бота (зона clinical вычитывает формулировки).
# Используются (1) как базовый смысл, который GigaChat перефразирует, (2) как ответ mock-провайдера,
# (3) как запасной ответ, если LLM недоступна или её ответ не прошёл фильтр запретов.
# Подстановки {name} берутся из контекста FSM; отсутствующие подставляются пустой строкой.
# Правила текстов: без диагнозов, без советов по дозам, без обещаний конфиденциальности сверх реальной.
phrases:
default: "Спасибо, что поделились. Я на связи и передам важное вашему врачу."
greeting: "Здравствуйте! Я помогу вам на время лечения: буду напоминать о приёме препарата и спрашивать о самочувствии. Всё важное увижу не только я, но и ваш врач."
med_reminder: "Напоминаю о приёме препарата {drug}. Отметьте, пожалуйста, когда примете."
med_taken_ack: "Отлично, отметил приём. Спасибо!"
checkin_ack: "Спасибо, записал. Хорошего вам дня."
ask_clarify: "Не совсем понял ваш ответ. Можете выбрать вариант кнопкой или описать чуть подробнее?"
support: "Спасибо, что рассказываете, как вы. Такие дни бывают, и хорошо, что вы продолжаете отмечать самочувствие."
side_effect_ack: "Спасибо, что сообщили о самочувствии. Я отмечу это для вашего врача."
nausea_info: "Тошнота часто встречается в первые дни приёма и, по инструкции к препарату, обычно проходит за 1–2 недели. Ваш врач назначил приём после еды. Если станет хуже — сообщите, я передам врачу."
quit_intent: "Понимаю, что сейчас тяжело. Эффект таких препаратов обычно наступает не сразу, а через несколько недель. Пожалуйста, не прекращайте приём самостоятельно — я сообщу вашему врачу, чтобы он с вами связался."
alcohol_info: "Спасибо, что честно рассказали. В инструкции к препарату есть предупреждение о совместном приёме с алкоголем, а алкоголь сам по себе ухудшает сон. Я передам это врачу и предложу записаться на приём пораньше."
sleep_support: "Спасибо, что рассказали про сон. Я отмечу это, и ваш врач увидит, как вы спите."
book_visit_offer: "Предлагаю записаться к врачу пораньше. Выбрать удобное время можно кнопкой ниже."
doctor_notified: "Я передал информацию вашему врачу. Он свяжется с вами."
# med_qa: базовый смысл = выдержка из инструкции ГРЛС; LLM только упрощает её, ничего не добавляя.
med_answer: "{excerpt}"
# RAG (#60): базовый смысл = выдержка из клинических рекомендаций; LLM только упрощает её, ничего не добавляя.
rag_answer: "{excerpt}"
# Шаблон саммари для врача (только по структурированным данным).
summary:
empty: "Нет данных за период."
labels:
period: "Период"
therapy_day: "День терапии"
drug: "Препарат"
phq9: "PHQ-9"
pcl5: "PCL-5"
gad7: "GAD-7"
mood: "Настроение (0–10)"
adherence: "Приверженность"
missed_doses: "Пропуски приёма"
side_effects: "Побочные эффекты"
sleep: "Сон"
nightmares: "Кошмары"
alcohol: "Алкоголь"
quit_intent: "Намерение прекратить приём"
alerts: "Алерты"