inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

RAG 마스터: 기초부터 고급기법까지 (feat. LangChain)

이전 대화 내용 기억하기

167

brh1243

작성한 질문수 4

0

안녕하세요.
강의를 듣고 추가적으로 공부를 하려고 하는데
예를 들어

Q. 테슬라의 창업자는 누구야

A. 테슬라의 창업자는 OOO입니다.

이러한 대화 바로 다음 OOO에 관련한 추가 질문을 하려고합니다.
예시) Q. 그렇다면 그 사람에 대해서 간단하게 설명해줘.

위 질문을 하려면 LLM이 이전대화내용을 기억해야하는데 그것에 대해서 공부하려합니다.
키워드를 뭐라고 잡아야할까요?

python 챗봇 llm langchain rag

답변 1

0

판다스 스튜디오

안녕하세요. 판다스 스튜디오입니다.

아래 2개의 링크를 참고하시면 됩니다.
랭체인 구버전(0.2): https://inf.run/hSejf
랭체인 신버전(0.3): https://inf.run/1HCfK

버전 0.3 문서에는 랭그래프 메모리 기능을 중심으로 설명하고 있습니다.
구 버전의 RunnableWithMessageHistory를 우선 살펴보시고 구현하시면 좋을 것 같아요.

구현해보시고 궁금한 점이 있으면 말씀해주세요.
감사합니다!

0

brh1243

감사합니다!!
랭그래프 메모리 기능에 대해서 확인했는데 RunnableWithMessageHistory 로 구현하는것은 지양해야하나요?

0

판다스 스튜디오

랭체인으로 구현하신다면 RunnableWithMessageHistory를 사용하시는 것도 좋다고 생각합니다. 랭체인 팀에서는 랭그래프를 조금 더 미는 느낌입니다.

0

brh1243

감사합니다.
개발중에 궁금한 점이 생겨서 문의드립니다.
제가 파악한 핵심은 프롬프트에 이전대화기록을 넣는 것이라고 생각합니다.
그렇다면 RunnableWithMessageHistory , 랭그래프와 같은 메소드를 사용하지않고 이전대화기록을 DB에 저장하고 프롬프트에 넣는 작업을 수행하는 것이 더 좋은 방법이라고 생각하는데 실무에서는 어떻게 활용되는지 알 수 있을까요?

1

판다스 스튜디오

안녕하세요. 이 부분은 정답은 없는 것 같습니다. 일반적으로 실무에서는 프로젝트 요구사항, 팀의 전문성, 시간 제약 등에 따라 접근 방식을 선택합니다.

  • 초기 프로토타입/MVP: 빠른 개발을 위해 LangChain 같은 프레임워크 활용

  • 대규모 프로덕션 시스템: 맞춤형 요구사항이 많다면 직접 DB 구현 방식 선택

  • 하이브리드 접근: 기본 구조는 프레임워크를 사용하고, 필요한 부분만 커스텀 개발

참고하시기 바랍니다. 감사합니다.

테스트데이터셋 평가지표 값 문제

0

53

1

언어 감지 및 검색 라우팅

0

52

2

동영상이 검은 화면으로 나옵니다.

0

68

2

강의가 진행되지 않습니다.

0

69

2

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

0

57

1

Rerank에 대해 질문드립니다.

0

68

2

Cross Encoder Reranker 임포트 에러 관련 내용입니다.

0

104

2

HuggingFaceCrossEncoder 임포트 에러

0

82

2

아나콘다랑 pytry없이. 단순 파이참에서 venv 설정해서 설치하는건 불가능하나요?

0

81

1

2.7 전체 RAG파이프라인 구성에서 4번째 줄 오류

0

81

1

rag 와 랭체인

0

115

2

score 기반 서치

0

50

2

KR.txt파일이 없습니다.

0

78

2

krag를 이용한 검색기법 평가관련 질문

0

77

2

MMR 관련 질문입니다.

0

84

1

Text_splitter관련 질문입니다.

0

62

2

오픈api key는 따로 구매해야되는 걸까요?

0

267

2

과거 채팅이력을 LLM에 줄때 포멧

0

74

1

OpenAIEmbeddings모델이 사용하는 토크나이저는 뭘까요?

0

174

2

ChatPromptTemplate의 from_messages로 메세지를 구성할 때 system은 어떻게 설정해야하나요?

0

98

2

create_retrieval_chain에서 context는 지정된 인자인가요?

0

64

1

vectorstore의 as_retriever와 similarity_search는 같은 로직인가요?, 사용되는 검색 알고리즘은 뭔가요?

0

95

2

evaluate_retrieval_at_K 함수 문의드립니다.

0

68

2

검색기 관련 질문드립니다.

0

88

2