Community

개발자 99% 커뮤니티에서 수다 떨어요!

← Go back

CRA의 규제 업데이트 확인을 자동화하는 Regulatory Intelligence Claw

#side-projects
2일 전
81
1

제목

CRA의 규제 업데이트 확인을 자동화하는 Regulatory Intelligence Claw


최종 배포 주소

https://cra-assistant-agent.warwarsn.workers.dev/


한 줄 소개

MFDS, ICH, KoNECT 규제 정보를 수집, 분석하고, RAG와 Workflow, Scheduler를 통해 CRA에게 필요한 변경사항을 브리핑과 문서로 정리해 주는 Regulatory Intelligence Agent입니다.


프로젝트 설명

CRA(Clinical Research Associate)는 임상시험이 계획서와 GCP, 관련 규정에 따라 적절하게 수행되고 있는지 확인하고, 시험기관의 운영과 문서, 데이터의 품질을 관리하는 역할을 합니다.

CRA 직무를 준비하면서 ICH-GCP뿐 아니라 MFDS, KoNECT 등 여러 출처에서 제공되는 공지와 규제 자료를 지속적으로 확인해야 한다는 점을 알게 되었습니다. 하지만 모든 업데이트가 실제 CRA 업무와 직접적으로 연결되는 것은 아니기 때문에, 새로 올라온 내용을 확인한 뒤 업무와 관련 있는 정보를 다시 선별하는 과정이 필요했습니다.

규제 정보는 한 번 확인하고 끝나는 것이 아니라 계속해서 업데이트됩니다. 매주 여러 사이트를 방문해 새로운 자료를 찾고, 이전에 확인한 내용과 비교해 무엇이 달라졌는지 확인한 뒤, 그중 중요한 내용만 다시 정리하는 과정은 반복적인 업무에 가깝다고 생각했습니다.

그래서 제가 이전 데이터, 개발 업무에서 경험했던 데이터 수집, QC, 변경 감지, 자동화의 방식을 CRA 업무 학습에 적용해 보고자 CRA ASSISTANT CLAW를 만들었습니다.

MFDS, ICH, KoNECT의 규제 정보를 Source Agent가 수집하고, CRA 관련성을 분석하며, 이전에 수집한 상태와 비교해 변경 여부를 확인합니다. 분석 결과는 Regulatory Memory에 축적되고, 필요한 경우 Weekly Regulatory Briefing으로 종합되어 Workspace에 저장됩니다.

또한 사용자는 Chat을 통해 ICH 문서를 RAG로 검색하거나, 이전에 수집된 규제 정보를 다시 조회하고, 비교 자료나 메모를 Workspace에 작성할 수 있습니다.

반복적으로 확인하고 싶은 경우에는 Scheduler를 이용해 Weekly Briefing을 자동 실행하고 이메일로 받아볼 수도 있습니다.

'규제 정보를 검색하는 도구'보다는 '규제 정보를 지속적으로 확인하고 정리하는 CRA용 작업 환경' 을 만드는 것을 목표로 했습니다.


핵심 기능

  • 규제 정보 수집·분석
    MFDS, ICH, KoNECT의 규제 정보를 수집하고 CRA 업무와 관련 있는 내용을 선별합니다.

  • 변경사항 감지
    이전에 수집한 정보와 비교해 새로 추가되거나 변경된 내용을 구분합니다.

  • RAG 기반 규정 검색
    ICH E6(R2), E6(R3) 등 인덱싱된 문서를 기반으로 근거 중심의 질의응답을 제공합니다.

  • Regulatory Memory
    이전 Workflow에서 수집하고 분석한 규제 정보를 저장하고 다시 조회할 수 있습니다.

  • Weekly Regulatory Briefing
    여러 Source의 분석 결과를 종합해 CRA 관점의 주간 브리핑을 생성합니다.

  • Workspace 연동
    생성한 Briefing, 비교 문서, 메모 등을 Markdown 파일로 저장하고 관리할 수 있습니다.

  • Email 발송
    Chat에서 작성한 이메일은 승인 후 발송하고, Workflow 결과는 설정에 따라 자동 발송할 수 있습니다.

  • Scheduler
    원하는 요일과 시간에 Regulatory Workflow를 자동 실행하도록 예약할 수 있습니다.

  • 실행 이력 및 중복 방지
    Workflow 및 Email 실행 이력을 D1에 기록하고, 중복 실행과 중복 발송을 방지합니다.

  • AI Gateway Observability
    AI Gateway를 통해 모델 호출 로그와 실행 상태를 확인할 수 있습니다.


사용 방법

1. How to Use 에서 각 기능의 역할 확인하기

화면의 CRA Assistant Overview 에서 'How to Use' 버튼을 눌러 RAG, Regulatory Memory, Workflow, Workspace, Email, Scheduler가 각각 어떤 역할을 하는지 확인할 수 있습니다.

2. 최신 규제 정보를 수집, 확인하기 위해 Workflow 실행하기

Regulatory Memory는 이전에 수집한 정보를 저장한 것이기 때문에 실시간 최신 상태를 의미하지 않습니다.

MFDS, ICH, KoNECT의 정보를 다시 확인하고 싶다면 Regulatory Workflow를 실행합니다.

확인할 Source와 기간을 선택한 뒤 Run Workflow를 누르면,

Source Processing → Synthesis → Reporting

순서로 분석이 진행됩니다.

완료된 Briefing은 자동으로 Workspace의 Regulatory Report 영역에 저장됩니다.

Email 옵션을 선택했다면 Workflow 완료 후 지정한 수신자에게 결과가 발송됩니다.

3. Chat에서 CRA 또는 규제 관련 질문하기

Chat에서 일반적인 질문을 입력하면 됩니다.

예를 들어,

“ICH E6(R3)에서 Risk-based Monitoring의 핵심 내용을 설명해 주세요.”

“R2와 R3의 Monitoring 차이를 비교해 주세요.”

“최근 Regulatory Memory에 저장된 변경사항을 알려 주세요.”

“Workspace에 저장된 문서는 무엇이 있나요?”

질문의 종류에 따라 CRA Assistant가 RAG, Regulatory Memory, User Memory, Workspace 등의 Tool을 선택해 사용합니다.

오른쪽의 Agent Activity 영역에서는 현재 Assistant가 어떤 Tool을 사용하고 있는지도 확인할 수 있습니다.

4. 결과를 Workspace에서 관리하기

Workspace에서는 Chat이나 Workflow가 생성한 Markdown 파일을 관리할 수 있습니다.

현재 주요 폴더는 다음과 같습니다.

  • /notes — 메모

  • /comparisons — 규정 및 문서 비교 자료

  • /reports/regulatory — Regulatory Briefing

  • /reports/site-review — Site Review 관련 자료

  • /logs — 기록성 자료

파일을 직접 수정하거나 다운로드할 수도 있고, Chat에서 특정 내용을 정리해 Workspace에 저장하도록 요청할 수도 있습니다.

5. 정기적 업데이트 및 보고서 작성을 위한 Schedule 만들기

Schedule 화면에서는 Weekly Regulatory Briefing을 자동 실행하도록 예약할 수 있습니다.

실행할 요일과 시간을 KST 기준으로 선택하고, 확인할 Source와 Email 발송 여부를 설정합니다.

생성된 Schedule에서는 다음 실행 시각과 최근 실행 결과를 확인할 수 있으며, View History를 통해 과거 실행 내역도 조회할 수 있습니다.

필요하지 않은 Schedule은 Cancel 후 다시 생성할 수 있습니다.

Chat에서도,

“매주 금요일 오후 7시에 MFDS, ICH, KoNECT Weekly Briefing을 실행해 줘.”

와 같이 요청하여 Schedule을 만들 수 있습니다.


스크린샷

Chat

Workflow

Schedule

Memory

RAG

Workspace


4주를 마치며

4주 동안 여러 과제를 진행하면서 비교적 짧은 시간 안에 Claw의 구조와 주요 기능을 빠르게 익힐 수 있어 좋은 경험이었습니다.

마지막 졸업 과제를 만들면서는 예상하지 못한 문제도 많았습니다. 특히 MFDS, ICH, KoNECT의 규제 정보를 가져오는 방식이 사이트마다 달라 HTML 파싱, JavaScript 데이터 구조 확인, 숨겨진 API endpoint 탐색 등 여러 방법을 시도해야 했습니다. 개발 환경과 배포 환경에서 동작이 달라 Scheduler 시간 처리나 WebSocket 같은 문제를 실제 배포 후 다시 점검해야 했던 점도 기억에 남습니다.

이번 프로젝트에서는 강의에서 배운 기능을 최대한 많이 활용하되, 억지로 넣기보다는 RAG, Memory, Workflow, Workspace, Scheduler, Email 등이 각각 필요한 위치에서 자연스럽게 동작하도록 구성하는 것을 목표로 했습니다.

4주가 정말 빠르게 지나갔고, 마지막 주에는 개인적으로 여러 일이 겹쳐 프로젝트에 충분히 집중하지 못한 점이 조금 아쉽습니다. 아직 품질 향상과 최적화, RAG 고도화 등 보완할 부분이 많지만, 우선은 전체 핵심 기능이 실제로 동작하도록 완성하는 데 집중했습니다.

가능하다면 Demo Day 전까지 CRA Daily Log와 Site Review 기록을 검토하는 Critic / Reviewer Agent까지 추가해 프로젝트를 한 단계 더 발전시키고 싶습니다.


앞으로의 수정 및 보완 계획

  • 모델 역할 분리 및 최적화
    Main Agent와 Sub-agent의 역할에 맞게 서로 다른 모델을 적용하고, AI Gateway 로그를 기반으로 품질과 속도, 비용을 비교해 최적화할 예정입니다.

  • 규제 정보 출처 확대
    현재 MFDS, ICH, KoNECT 외에도 CRA 업무와 관련 있는 추가 규제·가이드라인 출처를 연동할 계획입니다.

  • RAG 검색 고도화
    ICH E6(R2), E6(R3) 등 문서별 버전별 필터링을 강화하고, 비교 질문에서는 각 문서의 근거를 분리해 검색하도록 개선할 예정입니다.

  • Workflow 분석 품질 개선
    변경사항의 중요도, CRA 실무 영향, 후속 조치 필요 여부를 더 정교하게 평가하도록 분석 로직을 개선할 예정입니다.

  • CRA Daily Log 및 Site Review 기능 확장
    CRA가 일일 업무나 모니터링 과정에서 기록한 내용을 구조화해 저장하고, 이후 Site Review나 Action Item 관리와 연결할 수 있도록 확장할 예정입니다.

  • Critic / Reviewer Agent 도입
    CRA Daily Log와 Site Review 기록을 기반으로 별도의 Critic 또는 Reviewer Agent가 기록의 누락, 모순, 후속 조치 필요 여부, GCP 관점의 점검 포인트 등을 검토하도록 구현할 계획입니다. Main Agent의 답변을 그대로 신뢰하기보다 별도의 검토 단계를 두어 결과의 일관성과 품질을 높이는 방향으로 확장할 예정입니다.

1 comment