인프런 커뮤니티 질문&답변

qpal1zm23님의 프로필 이미지
qpal1zm23

작성한 질문수

모두를 위한 대규모 언어 모델 LLM(Large Language Model) Part 2 - 랭체인(LangChain)으로 나만의 ChatGPT 만들기

랭체인(LangChain)이란

RAG의 데이터 소스로 RDB 사용 시 어떤 로더를 사용해야 하나요?

작성

·

1.8K

·

수정됨

0

안녕하세요 강의 잘 듣고 있습니다.

RAG방식과 관련해 현업에서는 실제 어떻게 사용하는지 알고 싶어 여쭤봅니다.

 

  1. 데이터 소스로 RDB를 사용하고 싶은 경우 어떤 로더를 사용해 연동을 하나요??

    DB와 직접 연동은 힘들고 해당하는 데이터를 파일도 별도로 추출하여 사용해야 할까요?? 구글링하여도 벡터 디비를 사용하는 방식만 나와 답답해서 질문 드립니다 ㅠㅠ

     

  2. langchain에서 지원하는 로더 대신에 사용하는 외부 모듈이 존재할까요?? aws와 같은 퍼블릭 클라우드의 s3나 엘라스틱 서치를 데이터 소스로 하여 사용하고 싶은 경우는 어떻게 설정하는 것이 좋을지 문의 드립니다.

  3. 보통 S3 버킷을 데이터 소스로 하여 정의할 때 s3를 호스팅하여 urlLoader를 이용해 사용하는 방식을 많이 차용하나요?

     

  4. aws의 ElasticSearch를 검색 시스템으로 사용하고 싶은데, 참고할 만한 힌트가 있을까요?... 해당 모듈을 바로 직접적으로 import해서 vectorDB대신 사용하는 것인지, 혹은 ES를 데이터 소스로하여 데이터롤 로드해서 vectorDB에 넣고 사용하는 것인지 감이 잘 잡히지 않습니다 ㅠ

답변 2

0

AISchool님의 프로필 이미지
AISchool
지식공유자

안녕하세요~. 반갑습니다.

  1. 데이터 소스로 RDB를 사용하고 싶은 경우 어떤 로더를 사용해 연동을 하나요??

    DB와 직접 연동은 힘들고 해당하는 데이터를 파일도 별도로 추출하여 사용해야 할까요?? 구글링하여도 벡터 디비를 사용하는 방식만 나와 답답해서 질문 드립니다 ㅠㅠ

     

    ->

    랭체인에서 Vector store로 지원하는 전체 목록은 아래 링크에서 확인하실 수 있습니다.

    https://python.langchain.com/docs/integrations/vectorstores

    현재 Vector Store로 RDB에 직접 연동하는 기능은 제공하지 않는 것으로 보이며 그나마 RDB와 유사한 형태로 연동해서 사용하시려면 SQLite-VSS를 사용하시는게 좋아보입니다.

https://python.langchain.com/docs/integrations/vectorstores/sqlitevss


2. langchain에서 지원하는 로더 대신에 사용하는 외부 모듈이 존재할까요?? aws와 같은 퍼블릭 클라우드의 s3나 엘라스틱 서치를 데이터 소스로 하여 사용하고 싶은 경우는 어떻게 설정하는 것이 좋을지 문의 드립니다.

->

랭체인에서 지원하는 전체 도큐먼트 로더 목록은 아래 링크에서 확인하실 수 있습니다.

https://python.langchain.com/docs/integrations/document_loaders

 

S3에 있는 파일이나 디렉토리를 읽어올 수 있습니다.

https://python.langchain.com/docs/integrations/document_loaders/aws_s3_file

https://python.langchain.com/docs/integrations/document_loaders/aws_s3_directory


3. 보통 S3 버킷을 데이터 소스로 하여 정의할 때 s3를 호스팅하여 urlLoader를 이용해 사용하는 방식을 많이 차용하나요?

 ->
이 부분은 개별 어플리케이션 구현을 어떻게하느냐 따라 다른 문제이므로 상황에 맞게 적절하게 구성해서 사용하시면 될 것 같습니다.


4. aws의 ElasticSearch를 검색 시스템으로 사용하고 싶은데, 참고할 만한 힌트가 있을까요?... 해당 모듈을 바로 직접적으로 import해서 vectorDB대신 사용하는 것인지, 혹은 ES를 데이터 소스로하여 데이터롤 로드해서 vectorDB에 넣고 사용하는 것인지 감이 잘 잡히지 않습니다 ㅠ


->

이부분은 제가 ElasticSearch에 대한 지식이 없어서 정확히 답변드리긴 힘들 것 같습니다.
아래 문서에서 ElasticSearch와 연동하는 템플릿 내용을 다루고 있는 것 같습니다.

https://python.langchain.com/docs/templates/rag-elasticsearch
https://python.langchain.com/docs/integrations/vectorstores/elasticsearch


좋은 하루되세요.

감사합니다.

0

안녕하세요, 인프런 AI 인턴입니다.
qpal1zm23님, 질문해주셔서 감사합니다.

  1. RDB를 데이터 소스로 사용하기 위한 로더는 명확한 정보가 제공되지 않았으므로, 특정 로더를 추천드리기 어렵습니다. 벡터 데이터베이스 외에 RDB를 직접 연동할 수 있는 로더에 대한 정보는 해당 기술에 대한 공식 문서나 적합한 커뮤니티를 통해 더 자세한 정보를 얻으실 수 있을 거예요.

  2. langchain에서 지원하는 로더 대신 사용할 수 있는 외부 모듈에 대한 정보도 동일하게 공식 문서나 커뮤니티 등에서 추가적인 정보를 찾아보셔야 할 것 같습니다. AWS S3나 엘라스틱 서치 등을 데이터 소스로 사용하기 위한 설정 방법도 이들의 API 문서나 사용 사례 등을 참조하시는 것이 좋겠습니다.

  3. S3 버킷을 데이터 소스로 정의할 때 주로 사용하는 방식에 대한 정보 또한 공식 문서나 기술 커뮤니티를 통해 살펴보시는 것이 유익할 것으로 보입니다. 많은 경우 urlLoader나 다른 방식이 사용될 수 있으나, 프로젝트의 요구사항에 따라 달라질 수 있습니다.

  4. AWS의 ElasticSearch를 검색 시스템으로 사용하는 방법에 대해서도 아쉽게도 구체적인 답변을 드리기 어렵습니다. VectorDB와의 연동 방법이나 ES 데이터 소스 활용과 관련해서는 해당 기술의 공식 문서, 온라인 튜토리얼, 블로그 포스트 등에서 참고할 만한 정보를 얻을 수 있으며, 실제 유저들의 경험을 공유하는 포럼 등이 도움이 될 수 있습니다.

제가 드린 답변이 qpal1zm23님의 문제 해결에 조금이나마 도움이 되었으면 좋겠습니다.
추가적인 궁금증이 있으시다면, 다시 문의하시거나 필요한 기술 문서를 찾아보시길 권장드립니다.

qpal1zm23님의 프로필 이미지
qpal1zm23

작성한 질문수

질문하기