inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

LangGraph를 활용한 AI Agent 개발 (feat. MCP)

2.3 공식문서 따라하면 실패하는 Agentic RAG

코드 최종 결과 질문드립니다.

2

알타리

작성한 질문수 9

0

안녕하세요.

좋은 강의 만들어주셔서 감사합니다.

강의 2.3 에서 강사님 코드와 동일하게 작성하고 gpt 모델만 'gpt-5.4-mini' 로 변경 후에 전체 실행 했을 때, 답변이 이렇게 돌아옵니다.

{'query': '연봉 5천만원 세금',
 'context': [Document(id='9814d06b-07f0-47e3-866c-fdf3940e2649', metadata={'source': 'income_tax.txt'}, page_content='5년 이하: 30만원 → 납입연수\n5년 초과 10년 이하: 150만원 + 50만원 × (납입연수 - 5년)\n10년 초과 20년 이하: 400만원 + 80만원 × (납입연수 - 10년)\n20년 초과: 1,200만원 + 120만원 × (납입연수 - 20년)\n\n② 직장근로자 초과관세환급금을 분배하여 지급받는 경우 세액의 계산 방법 등 필요한 사항은 대통령령으로 정한다. \n<대통령 2014. 12. 23.>\n<전문개정 2009. 12. 31.>\n제64조(부동산매매업자에 대한 세액 계산의 특례)\n1) 대통령령으로 정하는 부동산매매업(이하 “부동산매매업”이라 한다)을 영위하는 거주자가 이하 “부동산매매업자”라 한다)로서 종합소득세법에 제104조제1항제1호(본항을 포함한다) 및 제103조 또는 같은 조 제7항 각 호의 어느 하나에 해당하는 자산의 매매자익(이하 “주택등매매차익”이라 한다)이 있는 자의 종합소득 산출세액은 다음 각 호의 세액 중 많은 것으로 한다. \n<개정 2014. 12. 23., 2017. 12. 19., 2020. 12. 29.>\n1. 종합소득 산출세액\n\n다음 각 목에 따른 세액의 합계액\n  가. 주택등매매차익에 따른 세율을 적용하여 산출한 세액의 합계액\n  나. 종합소득세법 제55조에 따라 주택등매매차익에 대한 개별세액을 공제한 금액을 과세표준으로 하고 이에 제55조에 따른 세율을 적용하여 산출세액'),
  Document(id='74dc15eb-b151-49b8-9106-1399b7722dd3', metadata={'source': 'income_tax.txt'}, page_content='1. 근속연수에 따라 정한 다음의 금액\n근속연수 | 공제액\n--- | ---\n5년 이하 | 100만원 공제소득\n5년 초과 10년 이하 | 500만원+200만원×(근속연수−5)\n10년 초과 20년 이하 | 1천500만원+250만원×(근속연수−10)\n법제처 | 31 | 국가법령정보센터'),
  Document(id='1c1ccbad-e1fe-45f7-b08f-223a475212c4', metadata={'source': 'income_tax.txt'}, page_content='소특별판\n경우에는 100분의 30에 해당하는 금액을 해당 과세기간의 종합소득세법에서 공제한다. \n<개정 2014. 12. 23., 2016. 12. 20., 2017. 12. 19, 2021. 12. 8, 2023. 12. 31.>')],
 'answer': AIMessage(content='연봉 5천만원의 세금은 공제 항목(4대보험, 근로소득공제, 인적공제 등)에 따라 달라져 정확히 한 숫자로 말하기 어렵습니다.  \n제공된 자료만으로는 5천만원 연봉의 실제 세액을 계산할 수 없습니다.  \n원하시면 **연봉 5천만원, 1인 가구/부양가족 여부** 기준으로 대략 계산해드릴게요.', additional_kwargs={'refusal': None}, response_metadata={'token_usage': {'completion_tokens': 108, 'prompt_tokens': 848, 'total_tokens': 956, 'completion_tokens_details': {'accepted_prediction_tokens': 0, 'audio_tokens': 0, 'reasoning_tokens': 0, 'rejected_prediction_tokens': 0}, 'prompt_tokens_details': {'audio_tokens': 0, 'cached_tokens': 0}}, 'model_provider': 'openai', 'model_name': 'gpt-5.4-mini-2026-03-17', 'system_fingerprint': None, 'id': 'chatcmpl-DtSMXJU8oQmhDi4TWrlNkXhmwuADF', 'service_tier': 'default', 'finish_reason': 'stop', 'logprobs': None}, id='lc_run--019eedff-fd63-79f1-bb50-9fe5bb58b7c8-0', tool_calls=[], invalid_tool_calls=[], usage_metadata={'input_tokens': 848, 'output_tokens': 108, 'total_tokens': 956, 'input_token_details': {'audio': 0, 'cache_read': 0}, 'output_token_details': {'audio': 0, 'reasoning': 0}})}

결국 답변은 정보가 부족하다는 것 같아 보이는데, retrieve 할 때, k의 개수도 4로 늘려보았지만 답변은 같았습니다. 이러한 경우 어떻게 하는 게 답변을 개선하기 좋을까요?

프롬프트엔지니어링 llm ai-agent langgraph mcp

답변 1

0

인프런 AI 인턴

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

질문해주신 내용을 바탕으로 살펴보았을 때, 현재 시스템이 연봉 5천만 원의 세금 계산에 대한 구체적인 정보를 충분히 제공하지 못하고 있는 것으로 보입니다. 이를 개선하기 위한 몇 가지 방법을 제안드리겠습니다.

문제 원인 분석

  1. 데이터의 적절성:

    • 문서에서 소득세 계산에 직접 필요한 정보가 부족할 수 있습니다. 세율, 공제 항목 등이 누락되었거나 정확하지 않을 수 있습니다.
  2. 인덱싱 및 검색 설정:

    • 벡터 데이터베이스의 k 값을 4로 늘리셨지만 여전히 충분한 정보를 제공하지 못하고 있는 것 같습니다. 더 많은 검색 결과를 통해 최대한 관련성이 높은 정보를 제공받아야 합니다.
  3. 모델의 한계:

    • 현재 사용하고 있는 모델의 성능이 제한적일 수 있으며, 특정 정보나 컨텍스트에 대한 이해도가 낮을 수 있습니다.

해결 방안 제안

  1. 데이터베이스 강화:

    • 소득세 계산에 필요한 주요 정보(세율표, 공제 항목 등)가 포함된 문서를 확보하고 데이터베이스에 추가하시기 바랍니다. 이 과정에서 문서가 충분히 포괄적이어야 합니다.
  2. 검색 파라미터 조정:

    • 단순히 k 값을 높이는 것 외에도 검색의 유사도 임계값을 조정하거나 검색 기준을 재설정하여 더 높은 관련성의 문서가 선택되도록 할 수 있습니다.
  3. 모델 업데이트:

    • 모델을 다른 버전으로 테스트하거나, context에 더 많은 예시 및 구체적인 계산 절차를 포함시키는 프롬프트 제작을 통해 성능을 개선할 수 있습니다.
  4. 데이터 전처리 검토:

    • 불필요한 데이터 및 잘못된 정보가 포함되어 있다면, 이를 정리하고, 필요한 정보를 명확하게 분류하여 저장해야 합니다.
  5. 시스템 튜닝:

    • 데이터베이스와 검색 기능을 지속적으로 점검하고, 검색 결과의 피드백을 통해 시스템을 튜닝해 나가야 합니다.

관련 질문과 사례는 여기에서 확인하실 수 있습니다. 벡터 DB 및 LLM 설정의 차이에 따라 응답이 달라지는 문제에 대한 논의가 포함되어 있습니다.

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

AgentState의 messages 확인해주세요.

0

12

1

2.3 Agentic RAG 관련 질문이 있습니다.

0

34

2

깃허브 레포지토리 확인 요청

0

47

2

제공해주신 레포가 Windows 환경에 너무 비친화적입니다.

0

79

2

마크다운을 텍스트 파일로 변환하기

0

81

1

max token을 제한하는게 왜 성능을 개선하게 되는걸까요?

0

78

2

pyzerox 유니코드 에러

0

99

2

영상 메타데이터 생성 관련 LLM 활용 질문

0

93

1

종합부동산세 부분 tool 사용 질문 드립니다.

0

90

2

uv sync 파이썬 버전문제 onnxruntime

-1

150

2

MCP를 활용해서 간단한 에이전트를 만들어보세요

0

126

1

PDF 형식

0

86

1

5.3 langchain-mcp-adpater를 활용한 MCP 도구 사용 tool_list 지연 사유

0

107

2

3.6 human_in_the_loop 3rd case

0

97

1

summary 를. 시스템메세지에 추가하는 부분에 관하여

0

100

3

병렬 처리 중 retrieve 관련 궁금한 사항

0

89

1

query 에 대한 answer 결과값이 나오지 않습니다.

0

109

2

사람과 관련된 표현이 없는데 rewrite 로 이동하지 않는경우

0

85

1

retriever 관련 질문

0

70

1

인터룹 관련 질문

0

52

2

2.4 Self-RAG 결과가 달라요!

0

91

2

md vs txt 차이..

0

190

2

OpenAI API 호출 때문에 발생하는 Error code: 429 문제

0

139

2

단순 도구 사용과 도구를 가진 에이전트를 사용하는 것의 차이가 궁금합니다.

0

95

1