45

실습: 첫 번째 Text2Cypher

Day 1: Text2Cypher 개론

학습 목표

Neo4jGraph로 스키마를 추출할 수 있다 GraphCypherQAChain을 사용할 수 있다 커스텀 프롬프트를 적용하여 정확도를 높일 수 있다 intermediate_steps에서 생성된 Cypher를 추출할 수 있다

미션: Text2Cypher 시스템 만들기

LangChain의 GraphCypherQAChain을 사용해 자연어 질문을 Cypher로 변환하는 시스템을 만들어보세요.


Step 1: 환경 설정

에디터 로딩 중...
에디터 로딩 중...

Step 2: Neo4j 연결 및 스키마 확인

에디터 로딩 중...

Step 3: 기본 Chain 만들기

아래 starter code를 완성하세요.

Step 4: 커스텀 프롬프트 적용하기

기본 Chain이 작동하면, 커스텀 프롬프트를 만들어 정확도를 높여보세요.

  • READ-ONLY 제약 추가
  • LIMIT 강제
  • 도메인 용어 매핑 추가

테스트 질문 (난이도순)

  1. "모든 회사 이름을 알려줘" (단순 조회)
  2. "삼성전자의 경쟁사는?" (관계 탐색)
  3. "반도체 산업의 회사들" (필터링)
  4. "가장 많은 경쟁사를 가진 회사" (집계)
  5. "삼성전자와 2단계 이내로 연결된 회사" (경로 탐색 - 도전!)
에디터 로딩 중...
힌트 보기
  • temperature는 반드시 0으로 설정 (일관된 Cypher 생성)
  • verbose=True로 설정하면 생성된 Cypher를 콘솔에서 확인 가능
  • return_intermediate_steps=True로 해야 result에서 Cypher 추출 가능
  • cypher_prompt 파라미터로 커스텀 프롬프트를 전달할 수 있음
  • allow_dangerous_requests=True는 개발 단계에서만 사용
정답 보기
에디터 로딩 중...