inflearn logo
강의

Khóa học

Chia sẻ kiến thức

Hệ thống RAG triển khai bằng AI Agent (với LangGraph)

Triển khai hệ thống Agent RAG dưới dạng đồ thị

Agent RAG 구현에서 '정보 추출 및 평가' 노드 결과 애러

128

SPAGGY

7 câu hỏi đã được viết

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

수업 영상 몇 분/초 구간인지 알려주세요.

llm langchain rag ai-agent langgraph

Câu trả lời 2

0

pdstudio

안녕하세요. 답변이 늦었습니다.

Pydantic에서 기대하는 출력 구조가 OpenAI와 Anthropic이 다르기 때문에 발생한 에러로 보입니다.

수업 영상 몇 분/초 구간인지 알려주시면 같은 모델로 테스트해보겠습니다.

0

SPAGGY

"Agent RAG 시스템을 그래프로 구현" 10분 30초 구간입니다.

감사합니다.

0

pdstudio

안녕하세요.
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

communityai8509

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

‘정보 추출 및 평가’ 노드에서 발생한 문제는 Pydantic을 이용한 데이터 유효성 검사에서 발생하는 오류로, 모델의 출력이 예상한 데이터 구조와 일치하지 않기 때문에 발생할 수 있습니다. 이를 해결하기 위해 아래 몇 가지 접근 방법을 제안드립니다:

  1. 모델 출력 조정: ANTHROPIC의 ‘claude-3-7-sonnet-20250219’ 모델이 특정 형식의 출력을 반환하고 있는지 확인해보세요. 만약 그렇다면, 모델에 추가적인 지시 또는 프롬프트 엔지니어링을 통해 형식을 수정할 수 있습니다.

  2. 에러 메시지 분석: 에러 메시지를 통해 무엇을 수정해야 하는지 명확히 파악할 수 있습니다. query_relevance 필드가 누락되었다는 점을 지적하고 있으므로, 예상하는 JSON 구조에 이 필드를 추가해서 모델의 출력을 조정해보세요.

  3. 출력 변환 로직 추가: Pydantic의 데이터 모델로 변환하기 전에 모델의 출력을 변환하는 로직을 추가해서, 적절한 필드가 포함되도록 중간 처리를 해보세요.

아래는 이와 관련된 유사한 상황에서의 논의 및 해결 방법을 다룬 게시물입니다:

이 진행 중인 문제에 대한 포괄적인 해결책이 필요하다면, 관련 강의의 프롬프트 및 모델 사용 방법 섹션을 주의 깊게 살펴보시는 것도 권장드립니다.

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

섹션2-11 내용중 tool_call

0

25

2

gradio 를 통한 챗봇 인터페이스 실습이 진행되지 않습니다.

0

46

1

모델의 성능에 따라서 선택하는 도구가 많이 차이 나나요?

0

144

2

Fan-in 시 여러개 노드에서 하나로 병합되는 과정에서 질문 입니다.

0

80

3

로드맵

0

112

2

강의 46에서 노드의 병렬 수행시 Thread-Safety 문제는 없을까요?

0

107

2

similarity_search 후 왜 다시 LLM을 통해 grade를 측정 하나요?

0

107

2

agent_executor 실행시 JSONDecodeError에러가 발생해요.

0

147

4

툴의 숫자가 많을때 동작

0

124

2

안녕하세요 후속강의 듣고 싶은데, 비용이 부담되어서..

0

141

2

[실습을 위한 환경 설정 방법] 자료가 없습니다.

0

178

3

최근 안내해주신 수강생 이벤트 관련 문의입니다.

0

111

1

AI 에이전트로 구현하는 RAG 시스템 수강생입니다.

0

156

1

수업 자료 문의

0

177

3

docker 환경에서 해당 서비스를 구성해보는 건 어떤가요?

0

175

2

numpy 설치 에러

0

490

1

The onnxruntime python package is not installed.

0

224

1

섹션 5, 사용자 정의 조건부 엣지 관련 질문입니다.

0

131

1

강사님의 LLM 모델의 버전이 어떻게 되나요?

0

225

1

메시지 그래프/피드백 루프 활용하기에서 질문

0

110

1

에이전틱 루프에서의 병렬 노드 구현 문의

0

142

2

[공유] llama3-groq 모델명 수정 필요

0

198

1

수업자료 문의

1

214

2

서브그래프로 구성된 워크플로우 설계 조언을 듣고 싶습니다

0

129

1