← 돌아가기

Text2Cypher Simulator

Phase 3 Week 7 - 자연어 → Cypher 쿼리 변환

🎯 난이도 필터

📝 샘플 쿼리

🗄️ 그래프 스키마

소셜 네트워크

노드: User, Post, Interest

관계: FRIENDS_WITH, POSTED, LIKES, INTERESTED_IN, FOLLOWS

이커머스

노드: User, Product, Order, Review, Category

관계: PURCHASED, REVIEWED, BELONGS_TO, VIEWED

기업 네트워크

노드: Company, Person, Product, Industry

관계: WORKS_AT, COMPETES_WITH, PARTNERS_WITH, SUPPLIES_TO, BELONGS_TO

✏️ 직접 입력

💡 키워드: 모든/전체, 친구/팔로우, 몇/수/개수, 최단/경로, 인기/많은

💬 자연어 질문

샘플 쿼리직접 입력

"모든 사용자를 보여줘"

사용 스키마::User

📚 Text2Cypher 이해하기

Text2Cypher란?

자연어 질문을 Neo4j의 Cypher 쿼리로 자동 변환하는 기술입니다. LLM(Large Language Model)을 활용하여 사용자 의도를 파악하고 적절한 쿼리를 생성합니다.

핵심 기술 요소

  • Intent Recognition: 질문의 의도 파악 (검색, 집계, 경로 탐색 등)
  • Entity Extraction: 노드/관계 타입 및 속성값 추출
  • Schema Mapping: 추출된 정보를 그래프 스키마에 매핑
  • Query Generation: Cypher 문법에 맞는 쿼리 생성

주요 Cypher 패턴

패턴Cypher설명
노드 검색MATCH (n:Label)특정 라벨의 노드
속성 필터WHERE n.prop = value조건 필터링
관계 탐색(a)-[:REL]->(b)연결된 노드 찾기
집계count(), sum(), avg()통계 계산
경로shortestPath()최단 경로 탐색

실무 활용

  • 챗봇: 데이터베이스 질의를 자연어로
  • BI 도구: 비개발자도 데이터 탐색 가능
  • 지식 그래프: 복잡한 관계 데이터 질의