묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨RAG를 활용한 LLM Application 개발 (feat. LangChain)
database.as_retriever 의 결과가 다릅니다.
코드가 똑같은데도 불구하고database.as_retriever 의 결과값이 다를 수 있을까요?as_retriever 함수에 최소 k=5을 넣어야 제55조 항목이 검색됩니다.tax_with_markdown.docx 파일은 제공해주신 파일이고혹시나 싶어서 pinecone index테이블도 삭제했다가 다시 생성해서 바로 찍은 결과입니다. 아래는 제 코드입니다.from langchain_community.document_loaders import Docx2txtLoader from langchain_text_splitters import RecursiveCharacterTextSplitter text_splitter = RecursiveCharacterTextSplitter( chunk_size=1500, # 각 텍스트 조각의 최대 크기 chunk_overlap=200, # 텍스트 조각 간의 중복 길이 ) # .docx 파일을 로드하고 텍스트를 분할. loader = Docx2txtLoader('./tax_with_markdown.docx') document_list = loader.load_and_split(text_splitter=text_splitter) document_list[52] from dotenv import load_dotenv from langchain_openai import OpenAIEmbeddings # 환경 변수를 로드합니다. load_dotenv() # OpenAI 임베딩 모델을 설정합니다. embedding = OpenAIEmbeddings(model='text-embedding-3-large') import os from pinecone import Pinecone from langchain_pinecone import PineconeVectorStore # Pinecone 인덱스 이름을 설정합니다. index_name = 'tax-markdown-index' # 환경 변수에서 Pinecone API 키를 가져옴 pinecone_api_key = os.environ.get("PINECONE_API_KEY") # Pinecone을 초기화 pc = Pinecone(api_key=pinecone_api_key) # from_documents()`를 사용하여 새 인덱스 생성 database = PineconeVectorStore.from_documents(document_list, embedding, index_name=index_name) query = '연봉 5천만원인 직장인의 소득세는?' retriever = database.as_retriever(search_kwargs={'k': 5}) retriever.invoke(query) 쿼리를 날린 결과를 찍어보면5번째에서 제55조가 나옵니다.아래는 결과값 일부입니다.[Document(metadata={'source': './tax_with_markdown.docx'}, page_content='나. 그 밖의 배당소득에 대해서는 100분의 14\n\n3. Document(metadata={'source': './tax_with_markdown.docx'}, page_content='차. 외국정부(외국의 지방자치단체와 연방국가인 외국의 지방정부 Document(metadata={'source': './tax_with_markdown.docx'}, page_content='1. 「공익신탁법」에 따른 공익신탁의 이익\n\n2. Document(metadata={'source': './tax_with_markdown.docx'}, page_content='저. 대통령령으로 정하는 복리후생적 성질의 급여\n\n4
-
해결됨RAG를 활용한 LLM Application 개발 (feat. LangChain)
확장프로그램 어떤거 쓰시나요?
사진처럼 어떤 파라미터가 들어가는지 보여주는 확장프로그램이 어떤건가요? 저는 Python, Jupyter, Pylance 확장프로그램이 설치되어 있습니다.
-
해결됨RAG를 활용한 LLM Application 개발 (feat. LangChain)
LangSmith로 평가시 0, 1 점수 대신 더 세분화된(예: 5단계) 점수 사용
오늘 라이브 강의 잘 들었습니다! 고맙습니다.LangSmith에서 rag-answer-vs-reference로 평가하는데 각 항목의 점수가 0,1로만 나와서 아쉽네요. 더 세분화된(예: 5단계) 점수로 평가하려면 어떻게 바꿔야 할지 궁금합니다. 그리고 실제로 사용하실 때 몇 단계 평가를 많이 쓰시나요?
-
해결됨RAG를 활용한 LLM Application 개발 (feat. LangChain)
R.A.G를 통한 구현의 Scope 문의
저는 R.A.G를 통한 LLM 챗봇을 개발을 하기위해 본 강의를 수강하기 시작했는데 너무 유읙합니다. 이럴 경우에도 embedding을 해서 R.A.G를 통해 retrieve가 가능한지 여쭤보고 싶어요.데이터 크롤링 (컬럼 중에 리뷰데이터)의 데이터를 전처리해서 바로 Embedding을 통해 vector database에 넣어서 RAG를 활용할 수 있나요?결과물에 대한 시나리오는 User가 챗봇에게 피부관련 사진 또는 문제에 대해서 고민을 입력하면 특정 논문 (강사님 강의에서 tax 파일과 같은 의미)을 기반으로 답변을 주게 되며 동시에 특정 쇼핑몰의 화장품의 리뷰들을 요약해주며 해당 제품을 추천하는 형태의 서비스입니다.지금 생각으로는 데이터크롤링을 통해 긁어온 모든 자료들을 embedding해서 RAG할 수 있을 것 같은데 그것에 가능한지 궁금합니다.
-
해결됨RAG를 활용한 LLM Application 개발 (feat. LangChain)
이미지 데이터 학습 및 응답
안녕하세요 강사님먼저 훌륭한 강의 공유해주셔서 너무 감사합니다저는 지금 사내 위키를 크롤링해서 그 내용을 학습하고 이에 대한 내용을 GPT에게 질문했을 때 답변하는 챗봇을 개발하고 있습니다.가이드 문서에는 이미지 파일을 통한 예시와 함께 작성된 가이드 문서가 많은데 이를 어떻게 학습시키거나 이용자에게 뿌려줄 수 있을지 궁금합니다첨부된 GPT답변을 보시면 예제 스크린샷이라고 나오지만 제가 문제로 예상하는것은 위키가 로그인 된 사용자만 열람이 가능하기 때문에 이미지 링크 파일 또한 로그인되지 않은 상태에서는 접근이 불가능하기 때문입니다.혹시 답변에 도움이 될까 싶어 제가 구현한 단계를 마지막으로 질문 마치겠습니다크롤링(selenium)을 통해 wiki를 탐색하며 .txt파일로 긁어옵니다표 같은경우 강사님 조언대로 table -> markdowncode태그는 ```code``` 태그로 감싼다image데이터의 경우 src에서 파일 링크를 추출해서 text로 변환 (ex https://cdn.inflearn.com/public/files/courses/324145/9b8f6df3-8278-446f-b0da-394371126807/inflearn_python_07.png)DirectoryLoader로 파일들을 embedding해서 벡터화강의 따라가며 나머지 동일하게 구현
-
해결됨RAG를 활용한 LLM Application 개발 (feat. LangChain)
JSONLoader 관련 질문있습니다!
안녕하세요!강의를 듣고 docx를 가지고 RAG 설정하는 걸 배우고나서JSON파일을 가지고 RAG을 설정해보려고 하는데요, 이렇게 json을 로드하면 한글이 잘 출력이 됩니다.하지만, langchain의 JSONLoader를 이용해서 load and split을 하려고 하면해당 부분이 인코딩 되어 출력됩니다. 공식문서에서 해결방법을 찾지 못했는데, 혹시 강사님께서 해당 문제를 해결하는 방법에 대해서 알고 있으실까요?
-
해결됨RAG를 활용한 LLM Application 개발 (feat. LangChain)
docx에 표
안녕하세요! 강의 잘 듣고 있습니다강의에서 docx 내부의 표를 markdown으로 변경하셨던데,그러면 docx 문서를 전부 훑어서 모든 표를 markdown으로 일일이 수정해야할까요?혹시 좀 더 간편한 방법이 있는 건 아닌지 궁금하여 여쭤봅니다!
-
미해결프로젝트로 배우는 Python 챗봇 & RAG - LangChain, Gradio 활용
ffmpy 설치 실패, ChefBuildError
poetry add python-dotenv langchain langchain_openai gradio 입력하니 powershell에서 이렇게 나옵니다.ffmpy 설치 실패와 함께 ChefBuildError가 뜨는데 어떻게 해야 하나요?아래의 글은 제가 모두 시도해본 방법입니다. 그러나 해결되지 않았습니다. cache 삭제도 해봤습니다.-------------------------------------------------------해결 방법빌드 환경에 setuptools 설치setuptools가 현재 빌드 환경에 설치되어 있는지 확인하고, 설치되어 있지 않다면 설치합니다. 다음 명령어를 사용하여 setuptools를 다시 설치해보세요:pip install --upgrade setuptoolswheel 패키지 설치wheel 패키지도 설치되어 있어야 합니다. 아래 명령어로 설치해 보세요:pip install wheel패키지의 버전 확인ffmpy의 다른 버전을 시도해 볼 수 있습니다. ffmpy의 최신 버전이 문제를 해결할 수 있을지 확인해 보세요. 예를 들어, 최신 버전을 설치하려면:pip install ffmpypip install ffmpy==0.2.3
-
해결됨RAG를 활용한 LLM Application 개발 (feat. LangChain)
배포 마지막 에러가 발생하는데 왜 그럴까요?
안녕하세요!제가 파이썬 세팅을 처음해봐서 3.10으로 한것 같은데 정확하지 않습니다 ㅠㅠ우선 github repo는 private으로 해서 streamlit cloud에서 연결해서 사용중입니다.강의랑 똑같은 dot_env쪽 에러 발생해서pip freeze > requirements.txt 후 git commit 한 상태입니다.좋은 하루 되시고 답변 부탁드립니다.
-
미해결RAG를 활용한 LLM Application 개발 (feat. LangChain)
Knowledge graph
Llm 에서 knowledge graph를 db로 쓴다는 이야기를들었는데, vector db의 자리에 graph db를 교체해넣는개념인가요. Vector db와 knowledge graph의 장단점은 무엇일까요. 평시에 너무궁금했던내용이라 질문드립니다
-
해결됨RAG를 활용한 LLM Application 개발 (feat. LangChain)
정해진 질문
질문있습니다. 정해진 주제외의 질문에는 답을하지 않도록하는 방법도 있을까요? 예를들어 유아용 채팅봇을 만드는데 정해진 주제 외에는 답을하지 못하게 하고 싶습니다.
-
해결됨RAG를 활용한 LLM Application 개발 (feat. LangChain)
정해진주제만 답하는봇
질문있습니다. Rag와 반대로 정해진주제외의 질문은 답을하지 않도록하는 방법도 있을까요? 예를들어 유아용 채팅봇을 만드는데 정해진 주제 외에는 답을하지 못하게 하고 싶습니다.
-
해결됨RAG를 활용한 LLM Application 개발 (feat. LangChain)
query 결과 값이 일치하지 않습니다.
안녕하세요.이번에 처음 프론트개발하다 파이썬 사용해보고 강의 잘 보고 있습니다. 꾸역꾸역 따라가고 있는데 결과값이 일치하지 않네요.3.5 강의에서 결과가 일치하지 않습니다! %% %pip install --upgrade --quiet docx2txt langchain-community # %% from langchain_community.document_loaders import Docx2txtLoader from langchain_text_splitters import RecursiveCharacterTextSplitter text_splitter = RecursiveCharacterTextSplitter( chunk_size=1500, chunk_overlap=200 ) loader = Docx2txtLoader('./tax_with_markdown.docx') document_list = loader.load_and_split(text_splitter=text_splitter) # %% document_list[52] # %% from dotenv import load_dotenv from langchain_openai import OpenAIEmbeddings load_dotenv() embedding = OpenAIEmbeddings(model="text-embedding-3-large") # %% import os from pinecone import Pinecone from langchain_pinecone import PineconeVectorStore index_name = 'tab-markdown-index' pinecone_api_key = os.environ.get("PINECONE_API_KEY") pc = Pinecone(api_key=pinecone_api_key) database = PineconeVectorStore.from_documents(document_list, embedding, index_name=index_name) # %% query = '연봉 5천만원인 직장인의 소득세는 얼마인가요?' # retrieved_docs = database.similarity_search(query, k=3) # %% from langchain_openai import ChatOpenAI llm = ChatOpenAI(model="gpt-4o") # %% from langchain import hub prompt = hub.pull("rlm/rag-prompt") # %% from langchain.chains import RetrievalQA retriever=database.as_retriever() qa_chain = RetrievalQA.from_chain_type( llm, retriever=retriever, chain_type_kwargs={"prompt": prompt} ) # %% retriever.invoke(query) # %% ai_message = qa_chain({"query":query}) # %% ai_message # %% [markdown] # {'query': '연봉 5천만원인 직장인의 소득세는 얼마인가요?', # 'result': '연봉 5천만원인 직장인의 소득세는 기본세율이 적용됩니다. 기본세율은 과세표준 구간별로 다르므로, 정확한 소득세 금액을 계산하려면 연말정산 등 세율표를 참조해야 합니다. 따라서 구체적인 금액을 제공하려면 추가 정보가 필요합니다.'} # %% [markdown] # 참고1 retriever.invoke(query) 한 다음이미지처럼 metadata 속성이 더 추가 되어 제 코드 결과가 나옵니다.참고2 마크다운 테이블 잘 가져옵니다.참고3 인덱스 네임은 제가 오타나서 그대로 사용중입니다.ㅜㅜindex_name = 'tab-markdown-index'참고4https://github.com/jasonkang14/inflearn-rag-notebook/blob/main/3.5%20Retrieval%20%ED%9A%A8%EC%9C%A8%20%EA%B0%9C%EC%84%A0%EC%9D%84%20%EC%9C%84%ED%95%9C%20%EB%8D%B0%EC%9D%B4%ED%84%B0%20%EC%A0%84%EC%B2%98%EB%A6%AC.ipynb이 코드 그대로 하면 결과는 아래 이미지와 같습니다!참고5
-
해결됨RAG를 활용한 LLM Application 개발 (feat. LangChain)
chromadb 오류,
이 오류로 클론코딩 및 스스로 코딩연습도 못하고 있습니다.git에 보니 chromadb 버전문제라고 하는데.... 그리고 강사님 강의에 환경설정들이 너무 안되는게 많아서 온전히 강의에 집중이 안되네요...환경 설정이나 이런 부분들에 대해서 좀더 자세히 설명 바랍니다.
-
미해결프로젝트로 배우는 Python 챗봇 & RAG - LangChain, Gradio 활용
커널에서 poetry env가 보이지 않습니다.
안녕하세요!vs code를 종료하고 재시작해봐도 poetry env 커널이 보이지 않습니다. poetry activate는 했습니다!알려주시면 정말 감사하겠습니다.
-
미해결프로젝트로 배우는 Python 챗봇 & RAG - LangChain, Gradio 활용
Chroma 오류
Chroma 오류가 발생합니다.오류가 발생하면서 커널이 끊어집니다.here 눌렀을 때jupyter log 눌렀을 때 입니다.다음 부분에서 오류가 나는 것 같습니다.from langchain_community.vectorstores import Chroma db = Chroma.from_documents(splits, embeddings_model)
-
미해결프로젝트로 배우는 Python 챗봇 & RAG - LangChain, Gradio 활용
RAG에서의 chain 코드
chain 연결하는 | 문법을 사용하지 않는 이유가 있을까요?
-
미해결프로젝트로 배우는 Python 챗봇 & RAG - LangChain, Gradio 활용
프롬프트 기법에 대한 소식을 어디서 얻을 수 있을까요?
단편적으로 프롬프트는 이렇다를 넘어서서 그런 최신의 정보를 얻으려면 어디서 얻어야할까요?감사합니다
-
미해결프로젝트로 배우는 Python 챗봇 & RAG - LangChain, Gradio 활용
api key 호출 시
랭체인은 env파일에서 자동으로 openai key를 가져오는 것으로 알고 있습니다.강의 영상 처럼 불러와서 넣어주는 이유가 따로 있으실까요?
-
해결됨RAG를 활용한 LLM Application 개발 (feat. LangChain)
윈도우 pyenv 설치불가
따라하기식으로 수업하려고 수강했는데용. Mac기준영상인건 몰랐네요.. 윈도우에서 아나콘다로 따라하기가가능한걸까요? 3.1환경설정 영상보는데 다른거같애서요.. ㅠㅠㅠ 가이드문서 비스름 한거라도 받을 수 있을까요?