inflearn logo
강의

Khóa học

Chia sẻ kiến thức

Nền tảng cơ bản về LangChain hoàn thành trong một giờ

답변 định dạng cách kiểm soát

JsonOutputParser 질문입니다

Đã giải quyết

83

gamzaking

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

0

4강에서 JsonOutputParser 예제를 따라하는 중입니다.

json_ai_message=llm.invoke(country_detail_prompt.invoke({"country": "France"}))
json_ai_message.content

이렇게 찍어보면

'{"Capital": "Seoul", "Population": 51966111, "Language": "Korean", "Currency": "South Korean Won (KRW)"}'


결과가 이렇게 나옵니다. 궁금한 것은 강의에서 ```json\ 이게 있을 수도 있고 없을 수도 있다고 하셨는데,

저의 결과처럼 저렇게 나올 수도 있고 강의에서 처럼 ```json\ 이게 붙은 형식으로 나올 수도 있다는 말인가요?

프롬프트엔지니어링 llm langchain 카카오공채-개발

Câu trả lời 2

0

jasonkang

네 맞습니다. 모델에 따라 ```json\이 붙어서 나오는 경우가 종종 있습니다.

0

communityai8509

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

왐뫔뫄님, 질문해 주신 내용은 JsonOutputParser의 동작 방식과 그 결과에 대한 궁금증으로 보입니다.

JsonOutputParser의 예제 및 결과 형식 차이

JsonOutputParser는 AI 모델이 JSON 형태로 파싱 될 수 있도록 돕는 유틸리티입니다. 일반적으로 JSON 형식의 문자열을 반환하는 목적을 가지고 있지만, AI 모델의 응답 방식에 따라 그 형식이 약간 달라질 수 있습니다.

결과 예시 및 가능성

  1. Clean JSON String: 예를 들어, {"Capital": "Seoul", "Population": 51966111, "Language": "Korean", "Currency": "South Korean Won (KRW)"} 과 같은 깔끔한 JSON 형식의 문자열을 얻을 수 있습니다. 이 경우 직접적으로 JSON으로 파싱하여 사용할 수 있습니다.

  2. Markdown 형식 포함: 경우에 따라 AI응답에서 json을 강조하기 위해, json\n{ ... }\n 형식으로 반환되기도 합니다. 이는 AI 응답이 코드 블록으로 인식되었을 때 나타날 수 있는 형식으로, 이런 경우 불필요한 문자열(”json)을 제거해야 실제 JSON 데이터로 사용할 수 있습니다.

해결 방법

만약 JSON 데이터의 형식에 따라 처리해야 한다면, 추가적인 문자열 전처리를 통해 불필요한 부분을 제거한 뒤 JSON으로 변환할 수 있도록 준비해 두는 것이 좋습니다. 예를 들어, 코드 블록 내 JSON을 파싱해야 할 경우, 정규표현식 등을 활용해 시작 및 끝의 불필요한 문자를 필터링할 수 있습니다.

참고로, 유사한 사례에 대한 JsonOutputParser 관련 토론을 확인하실 수 있습니다. 이는 다른 사용자가 유사한 문제를 겪었을 때 참고할 수 있는 토론을 담고 있습니다.

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

구글 그래피티 마켓 오류...?!

0

7

2

강의 내 자료는 별도로 제공하지 않나요?

0

1

0

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

0

20

1

18강 smithery 를 이용한 mcp 실습(업데이트 요청)

0

19

1

guardrails 부분도 현재버전과 약간 다릅니다.

0

22

1

안녕하세요! 질문이 있습니다.

0

53

2

'팀 단위 AI 업무 혁신' 자문 관련하여 문의드리고자 합니다. (연락처 요청)

0

76

1

🚨 OpenAI 유료계정인데 할당량 초과인 경우!!

0

96

2

ollama 같은 모델 상이 답변

0

79

2

도서, 그리고 로드맵 강의 순서

0

90

2

RAG와 MCP의 차이가 조금 헷갈립니다

0

613

2

첫번째 강의 화면과 설명이 안 맞는 거 같아요

0

111

1

RAG 강의 안듣고 AGENT 강의 먼저 들어도 되나요?

0

159

1

openai 사용하면서부터 할당량 초과했다고 나오네요.

1

383

2

Safety 이해

0

84

1

input key가 여러개인 경우 RunnablePassThrough를 쓰는 이유가 궁금합니다.

0

78

1

가상환경 설정

-2

209

6

ram 용량

0

119

2

강의 순서 질문

0

163

1

Safety prompt에 대한 질문이 있습니다

0

125

2

딥시크

0

163

1

JsonOutputParser

0

145

1

vscode에서 환경 설정하는 데 어려움이 있습니다

0

374

2

Template 사용에 관해 질문 있습니다.

0

211

2