Inflearn brand logo image

인프런 커뮤니티 질문&답변

JIYEON SUNG님의 프로필 이미지
JIYEON SUNG

작성한 질문수

graphRAG - Neo4J로 구현하는 지식 그래프 기반 RAG 시스템 (feat. LangChain)

지식그래프(KG) 검색 - Text2Cypher 기법

Text2Cypher 기법에서 Llm이 작성하는 cypher 코드의 오타 발생 문제

작성

·

147

0

안녕하세요 강사님

수업 도중 openai의 llm 모델이 아니라 개인적으로 ChatOllama를 이용해 gemma3 모델로 실습을 해 보고 있었는데, 스키마가 제대로 전달이 되었는데도 불구하고 llm이 서치를 위해 작성한 cypher 코드 상에서 오타가 나는 것을 발견했습니다.

 

image.png

우선 위와 같이 전달 되는 스키마는 제대로 [:DIRECTED] 로 작성되어 있음을 확인할 수 있고요.

 

image.png

반면 크리스토퍼 놀란이 감독한 영화를 찾기 위해 작성한 쿼리에서는 Llm이 [:DORECTED]로 오타를 내고 있습니다.

(참고로 다른 예제에서는 정상적으로 동작하였습니다.)

 

  1. 이처럼 llm이 쿼리 작성 시에 오타를 내는 문제가 종종 발생하는 일인지

  2. 그렇다면 이 문제를 어떻게 해결 혹은 완화할 수 있는지 궁급합니다! 그냥 좀 더 똑똑한 모델을 쓰면 대체적으로 해결되는 문제인가요?

 

 

답변 2

1

판다스 스튜디오님의 프로필 이미지
판다스 스튜디오
지식공유자

안녕하세요.

 

Text2Cypher에서 LLM의 오타 문제는 흔한 현상이며, 특히 작은 모델에서 자주 발생합니다.
모델이 학습한 데이터에 Cypher 구문이 얼마나 많이 포함되어 있는지에 따라서도 차이가 있습니다.

일반적인 해결책은 Few-shot으로 예시를 직접 보여주거나, 더 좋은 성능을 보이는 모델을 적용하는 것입니다.

 

  1. Few-shot 프롬프팅: 예시 추가

"""
Examples:
CORRECT: MATCH (p:Person)-[:DIRECTED]->(m:Movie)
WRONG: MATCH (p:Person)-[:DORECTED]->(m:Movie)
"""
  1. 더 좋은 모델 사용: GPT-4.1, Google Gemini-2.0-pro, Claude-3.7-sonnet 등


이 외에도 적용 도메인에서 자주 사용하는 Cypher 쿼리를 기반으로 Fine-tuning하거나, LLM을 사용하여 Cypher 쿼리 검증 및 재작성하는 방법도 가능합니다.

JIYEON SUNG님의 프로필 이미지
JIYEON SUNG
질문자

감사합니다! few shot 프롬프팅도 좋은 방법이 되겠네요!

0

안녕하세요, 인프런 AI 인턴입니다. JIYEON SUNG님.

LLM 모델을 사용하는 과정에서 예기치 않은 오타가 발생할 수 있습니다. 이는 자연어 처리 모델의 특성상 맥락을 충분히 이해하지 못하는 경우에 발생할 수 있는 일입니다. 주로 모델이 텍스트 기반의 지시를 데이터 처리 명령어로 변환하는 과정에서 문맥적 실수를 하게 되죠.

  1. 쿼리 작성 시 오타 문제 발생 여부:

    • LLM 모델이 작성한 코드에는 가끔 문법적 오류나 오타가 발생할 수 있습니다. 이는 특히 입력 프롬프트에 명확성이 부족하거나 충분히 강력한 데이터셋으로 학습되지 않았을 때 더욱 두드러질 수 있습니다.
  2. 문제 해결 및 완화 방법:

    • 프롬프트 개선: 더 다양한 사례를 제공하거나 특정 문법 규칙을 명시하면 도움이 될 수 있습니다.

    • 자동 교정: 작성한 쿼리를 후처리하여 잘못된 부분을 자동으로 교정하는 로직을 추가할 수 있습니다.

    • 더 높은 성능의 모델 사용: 오류율을 줄이기 위해서는 고성능 모델을 사용할 필요가 있습니다. 성능이 좋은 모델들은 텍스트 맥락을 더 잘 파악하여 오류를 줄일 수 있습니다.

    • 커스터마이징: 학습된 모델을 특정 작업에서 더 잘 수행할 수 있도록 추가적인 데이터로 파인튜닝할 수 있습니다.

관련된 경험이나 해결 방법에 대한 깊은 논의를 보실 수 있게끔 다른 질문과 답변을 참고해 주시면 좋을 것 같습니다. 이 링크에서는 다양한 모델 및 프롬프트 관리 방안에 관한 정보가 다루어졌습니다.

저는 질문자님의 이해를 돕고자 지식공유자의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

JIYEON SUNG님의 프로필 이미지
JIYEON SUNG

작성한 질문수

질문하기