작성
·
29
·
수정됨
0
안녕하세요, 강사님.
강의 마지막 섹션 Agent RAG 시스템을 그래프로 구현 에서 # 4. Agent RAG 구현 부분에서 LLM 모델에 따라 결과 다르게 나오는 것 같습니다.
참고로, 저는 ANTHROPIC claude-3-7-sonnet-20250219 모델을 사용하는데요.
다음과 같이, '정보 추출 및 평가' 노드에서 애러가 발생합니다. 안정적인 결과를 얻기 위해서는 어떤 방안이 좋을지 의견을 부탁 드립니다.
---정보 추출 및 평가---
ValidationError: 2 validation errors for ExtractedInformation
strips
Input should be a valid list [type=list_type, input_value='[\n {\n "content": "...="query_relevance">0.95', input_type=str]
For further information visit https://errors.pydantic.dev/2.10/v/list_type
query_relevance
Field required [type=missing, input_value={'strips': '[\n {\n "..."query_relevance">0.95'}, input_type=dict]
For further information visit https://errors.pydantic.dev/2.10/v/missing
수업 영상 몇 분/초 구간인지 알려주세요.
답변 2
0
안녕하세요. 답변이 늦었습니다.
Pydantic에서 기대하는 출력 구조가 OpenAI와 Anthropic이 다르기 때문에 발생한 에러로 보입니다.
수업 영상 몇 분/초 구간인지 알려주시면 같은 모델로 테스트해보겠습니다.
안녕하세요.
Claude를 사용할 때 구조화된 출력 스키마에서 리스트 구조 처리하는 과정에서 문제가 발생한 것 같습니다. 다음과 같이 프롬프트에 추출하려는 구조를 명시하면 해결됩니다.
extract_prompt = ChatPromptTemplate.from_messages([
("system", """당신은 개인정보보호법 전문가입니다. 주어진 문서에서 질문과 관련된 주요 사실과 정보를 3~5개 정도 추출하세요.
각 추출된 정보에 대해 다음 두 가지 측면을 0에서 1 사이의 점수로 평가하세요:
1. 질문과의 관련성
2. 답변의 충실성 (질문에 대한 완전하고 정확한 답변을 제공할 수 있는 정도)
당신의 응답은 반드시 다음 JSON 구조를 따라야 합니다:
{{
"strips": [
{{
"content": "추출된 정보 내용",
"source": "정보의 출처",
"relevance_score": 0.9,
"faithfulness_score": 0.9
}},
...
],
"query_relevance": 0.8
}}
모든 점수는 0에서 1 사이의 숫자여야 합니다.
"""),
("human", "[질문]\n{question}\n\n[문서 내용]\n{document_content}")
])
감사합니다.
0
안녕하세요, 인프런 AI 인턴입니다. SPAGGY님.
‘정보 추출 및 평가’ 노드에서 발생한 문제는 Pydantic을 이용한 데이터 유효성 검사에서 발생하는 오류로, 모델의 출력이 예상한 데이터 구조와 일치하지 않기 때문에 발생할 수 있습니다. 이를 해결하기 위해 아래 몇 가지 접근 방법을 제안드립니다:
모델 출력 조정: ANTHROPIC의 ‘claude-3-7-sonnet-20250219’ 모델이 특정 형식의 출력을 반환하고 있는지 확인해보세요. 만약 그렇다면, 모델에 추가적인 지시 또는 프롬프트 엔지니어링을 통해 형식을 수정할 수 있습니다.
에러 메시지 분석: 에러 메시지를 통해 무엇을 수정해야 하는지 명확히 파악할 수 있습니다. query_relevance
필드가 누락되었다는 점을 지적하고 있으므로, 예상하는 JSON 구조에 이 필드를 추가해서 모델의 출력을 조정해보세요.
출력 변환 로직 추가: Pydantic의 데이터 모델로 변환하기 전에 모델의 출력을 변환하는 로직을 추가해서, 적절한 필드가 포함되도록 중간 처리를 해보세요.
아래는 이와 관련된 유사한 상황에서의 논의 및 해결 방법을 다룬 게시물입니다:
이 진행 중인 문제에 대한 포괄적인 해결책이 필요하다면, 관련 강의의 프롬프트 및 모델 사용 방법 섹션을 주의 깊게 살펴보시는 것도 권장드립니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
"Agent RAG 시스템을 그래프로 구현" 10분 30초 구간입니다.
감사합니다.