최근 대화형 인공지능(AI)을 활용해 데이터베이스 스키마(schema)를 변경하는 새로운 방식의 CRM(고객 관계 관리) 시스템이 등장했습니다. 이 시스템은 사용자가 자연어로 “연락처에 회사 필드가 필요해”와 같이 요청하면, AI 모델이 이를 이해하고 데이터베이스 스키마를 변경한 후 사용자 인터페이스(UI)를 자동으로 다시 렌더링(re-render)합니다. 개발자가 직접 코드를 수정하거나 SQL(구조화 질의어)을 작성할 필요 없이, 마치 대화하듯이 데이터 구조를 바꿀 수 있다는 점이 핵심입니다.
이 CRM의 가장 흥미로운 부분은 AI 모델이 SQL을 직접 생성하지 않는다는 점입니다. 대신, `createTables`, `addColumn`, `renameColumn`, `changeColumnType`과 같은 네 가지 유형의 도구(tool)와 현재 스키마 정보를 컨텍스트(context)로 받아 어떤 도구를 사용할지와 인수를 선택합니다. 실제 SQL 생성은 애플리케이션이 담당하며, 이 방식 덕분에 AI 모델이 잘못된 SQL 구문을 만들거나, 구현되지 않은 `DROP`과 같은 위험한 명령을 요청할 수 없게 됩니다. 안전성은 AI 모델의 행동을 제약하는 프롬프트(prompt)가 아닌, 제공되는 도구의 어휘 자체에 내재되어 있습니다. 또한, AI 모델은 테이블과 컬럼 이름, 유형만 볼 뿐 실제 데이터 값에는 접근하지 않아 데이터 프라이버시(privacy)도 보호됩니다.
모든 스키마 변경 제안은 사용자의 명시적인 승인을 거쳐야만 적용되며, 마지막 변경 사항은 언제든지 되돌릴 수 있는 실행 취소(undo) 기능도 제공됩니다. 이는 각 마이그레이션(migration)이 `up_sql`과 `down_sql`을 함께 생성하고 저장하기 때문에 가능합니다. 이러한 접근 방식은 비즈니스 사용자가 개발팀의 도움 없이도 빠르게 변화하는 비즈니스 요구사항에 맞춰 데이터 모델을 조정할 수 있게 함으로써, 개발 프로세스의 병목 현상을 줄이고 민첩성을 크게 향상시킬 수 있습니다. 특히, 데이터 구조 변경이 잦은 초기 스타트업이나 소규모 팀에게 매우 유용한 도구가 될 수 있습니다.