안녕하세요. 강의 잘 듣고 있습니다. 듣던 차에 궁금한 부분이 있어 질문 남깁니다. (현재 섹션3 강의는 다 들은 상태입니다.) 저는 NLP나 RAG 관련해서 전공 공부한 적이 없고 모르는 개념은 강의를 들으면서 그때그때 검색해서 공부하고 있습니다! 저희 질문이 "연봉 5천만원인 직장인의 소득세는?" 인데, 질문을 할 때마다 답변이 다르게 나오는 건 알겠지만 1400초과 ~ 5000만원 이하 과세표준으로 계산함 1의 과세표준으로 계산했지만 계산 결과가 틀림 1의 과세표준으로 계산했고 계산 결과가 맞지만 후에 부가적으로 기본공제, 지방소득세 등 이상한 내용이 들어가서 결과적인 직장인의 소득세가 매우 상이하게 나옴 5000초과~ 8800만원 이하 과세표준으로 계산 등 여러번 돌려보니까 다양한 결과가 나오더라구요. (LLM이니깐 매번 돌릴 때마다 결과가 다른 건 알고 있습니다!) 현재 query 수정 (회사원 -> 거주자), markdown으로 표 수정은 이미 다 한 상태입니다. LLM은 외부 API를 (저는 Upstage로 하고 있습니다) 사용하기 때문에 LLM은 아예 저의 소관이 아니라고 생각하고, 저는 최대한 잘 자르고 유사도 검색을 잘 해서 prompt를 잘 쓰는 것까지 저의 일이라고 생각합니다. 아무튼 이러한 경우에는 제가 양질의 답변을 얻기 위해서는 추가적으로 어떤 걸 해야할까요? ㅠㅠ 제가 생각했을 땐 초과, 이하의 개념을 프롬포트로 제공한다 retriever_docs를 검색할 때 추가적인 정보가 많이 제공되지 않게끔 k를 조절한다. 정도 생각하고 있습니다!
몇 시간 동안 GPT, Claude랑 싸웠는데(?) 도저히 해결이 안 되네요.. 파이썬 버전도 낮춰보고 이것저것 지웠다깔았다 해봤는데 여기서 며칠 째 막혀있습니다..ㅠㅠ chapter3에서도 pinecone 설치 오류가 계속 나서 겨우 고쳤는데 pinecone에 트라우마 생길 것 같아요 ^^ 참고하시라고 chapter3에서 혼자서 고쳐본 부분도 같이 올려드립니다. -> 기존 강사님 코드를 제 컴퓨터에서 실행하면 나오는 결과입니다. -> 이렇게 바꾸니 오류는 안 나지만 왠지 엄청 오래 걸립니다. 가능하시면 이 부분의 문제도 같이 봐주시면 감사하겠습니다.
파인콘으로 바꾸는 부분 도중에 에러가 납니다.. 아래 오류 메시지도 입력했습니다 ㅠㅠ INFO: pip is looking at multiple versions of langchain-pinecone to determine which version is compatible with other requirements. This could take a while. Note: you may need to restart the kernel to use updated packages. WARNING: Ignoring invalid distribution ~angchain-core (c:\Users\alice\test-llm\test-llm\Lib\site-packages) WARNING: Ignoring invalid distribution ~angchain-core (c:\Users\alice\test-llm\test-llm\Lib\site-packages) ERROR: Ignored the following versions that require a different python version: 0.0.2 Requires-Python >=3.8.1,<3.13; 0.0.2rc0 Requires-Python >=3.8.1,<3.13; 0.0.3 Requires-Python >=3.8.1,<3.13; 0.1.0 Requires-Python <3.13,>=3.8.1; 0.1.1 Requires-Python <3.13,>=3.8.1; 0.1.2 Requires-Python <3.13,>=3.8.1; 0.1.3 Requires-Python <3.13,>=3.8.1; 0.2.0 Requires-Python <3.13,>=3.9; 0.2.0.dev 1 Requires-Python <3.13,>=3.9 ERROR: Could not find a version that satisfies the requirement simsimd<4.0.0,>=3.6.3 (from langchain-pinecone) (from versions: 4.4.0, 5.0.0, 5.0.1, 5.1.0, 5.1.1, 5.1.2, 5.1.3, 5.1.4, 5.2.0, 5.2.1, 5.3.0, 5.4.0, 5.4.1, 5.4.2, 5.4.3, 5.4.4, 5.5.0, 5.5.1, 5.6.0, 5.6.1, 5.6.3, 5.6.4, 5.7.0, 5.7.1, 5.7.2, 5.7.3, 5.8.0, 5.9.0, 5.9.1, 5.9.2, 5.9.3, 5.9.4, 5.9.5, 5.9.6, 5.9.7, 5.9.8, 5.9.9, 5.9.10, 5.9.11, 6.0.0, 6.0.1, 6.0.2, 6.0.3, 6.0.4, 6.0.5, 6.0.6, 6.0.7, 6.1.0, 6.1.1, 6.2.0, 6.2.1) ERROR: No matching distribution found for simsimd<4.0.0,>=3.6.3
RateLimitError: Error code: 429 - {'error': {'message': 'You exceeded your current quota, please check your plan and billing details. For more information on this error, read the docs: https://platform.openai.com/docs/guides/error-codes/api-errors .', 'type': 'insufficient_quota', 'param': None, 'code': 'insufficient_quota'}} 청크 사이즈도 많이 줄여서 하는데, 똑같은 에러가 나서 질문드립니다! 강의 영상이랑 똑같이 진행하고 있는데 결제크레딧 카드가 12월5일부로 open-ai에서 결제가 안되서 급하게 부랴부랴 크레딧을 가지고 있는분께 크레딧이 얼마 없긴한 계정 빌려서 해보고 있는데도 rateLimiterror가 나오고 있습니다. 위와같은 에러가 다른경우도 나는 경우가 있을까요?
안녕하세요 rag의 최적화 및 성능 향상을 위해 이것저것 알아보다 HTML구조가 Plain Text 보다 훌륭한 결과를 도출할 수 있다는 논문이 있어서 의견을 물어보고 싶습니다. https://arxiv.org/pdf/2411.02959 논문에서는 HTML 형식이 일반 텍스트보다 우수한 성능을 보인다고 하고 있습니다. 저의 경우 데이터 수집을 크롤링으로 하고 있는데 만약 HTML이 더 우수하다고 한다면 굳이 html tag를 처리하는 노다가를 하지 않고도 오히려 더 좋은 성능이 나온다고 하니 솔깃한 마음이 있네요 또 강의에서는 표를 이해시키기 위해 마크다운 형식으로 전처리 작업을 했는데 이건 특정 모델마다 (ex openAI, Llama) 편차를 보이는지 궁금합니다
안녕하세요 강사님 덕분에 최종예제를 따라서 어찌어찌 챗봇을 만드는데까지는 성공했습니다. 이제 수행속도를 좀 올릴수 있는 방법이 없을까하다가.. llm(업스테이지), 업스테이지 임베딩, 파인콘인덱스 등등 get_***()함수에서 가져오다보니 질문을 한번 할떄마다 인스턴스를 생성하는 거 같더라구요.. 혹시 llm(업스테이지), 업스테이지 임베딩, 파인콘인덱스 등등은 가장 바깥에 선언해두고 get_***()함수에서는 그냥 가져다 쓰면안되는건지 궁금합니다.
개인 토이 프로젝트 진행중입니다. chroma db에 제가 저장하고 싶은 데이터를 저장하려하는데 mySQL과 같이 관계형 데이터베이스 형식으로 데이터 저장이 안되는지 궁금합니다. 첨부한 그림과 같은 데이터 구조인데, 회원에 따른 회원정보 임베딩 값을 크로마db에 저장하고 싶습니다. document_list에 회원정보를 list로 전달하고, ids를 회원 숫자 값으로 저장하려했는데 안되어서 질문 남깁니다
database = PineconeVectorStore.from_documents(document_list, embedding, index_name=index_name) 코드 실행시 오류가 발생합니다. PineconeApiException: (400) Reason: Bad Request HTTP response headers: HTTPHeaderDict({'Date': 'Sat, 23 Nov 2024 12:34:02 GMT', 'Content-Type': 'application/json', 'Content-Length': '104', 'Connection': 'keep-alive', 'x-pinecone-request-latency-ms': '3748', 'x-pinecone-request-id': '2915271834887315110', 'x-envoy-upstream-service-time': '5', 'server': 'envoy'}) HTTP response body: {"code":3,"message":"Vector dimension 4096 does not match the dimension of the index 3072","details":[]} 초기 embedding 모델은 upstage 임베딩 모델을 사용했습니다. Pinecone index 생성시 기존 text-embedding-3-large 모델 선택했더니 dimension 기본값이 3064였는데 4096으로 변경했어야하는 부분인가요?
https://python.langchain.com/api_reference/langchain/chains/langchain.chains.retrieval_qa.base.RetrievalQA.html#langchain.chains.retrieval_qa.base.RetrievalQA 3.2강 API 오류 발생하네요 upstage api 를 이용하는데 그 문제일까요?
제가 강사님 소스와 거의 같지만 다른게 upstage와 WikipediaRetriever 를 쓴다는 것인데 이러면서 requirements.txt에서 계속 버전 충돌 에러가 나네요;; pip show 로 해서 충돌나는 버전을 visual studio code에 맞춰서 해도 계속 에러가 나네요 langchain-upstage 때문인것 같은데 이것 때문에 다른 라이브러리 전체의 버전을 다 바꿔야 하는 걸까요?
안녕하세요 강사님 항상 좋은 강의와 답변에 감사드립니다. 다름이 아니라 저는 upstage를 사용하는데요 requirements.txt에 langchain-upstage==0.3.0 이렇게 넣으니까 에러가 나던데 이게 아닌건가요? pip install 에 보면 버전은 이게 맞는거 같은데요
안녕하세요~ 지난번에 gemini로 한다고 고전한다고 질문글을 남겼던 학생입니다. 그냥 openai로 다시 시작하니 실크로드마냥 뻥 뚫리더라고요.....기억나실지는 모르겠지만 지지난번에 남겼던 .env 문제도 해결했습니다. vscode에서도 그냥.env로 파일명 만들면 만들어지더라고요. 전엔 해당 확장자로 안 됐는데 어느순간 되는것이 이유를 모르겠습니다만... 아무튼 네 됐습니다. 그런데 (어쩌면 수업 외적인) 질문이 있는데요. 만약에 제가 chatbot에 2개 이상의 문서를 넣고 싶으면 어떻게 해야되나요? 가령 소비자 보호법과 세법을 넣는다고하면 소비자보호법 관련 문서에는 이게 소비자 보호법이라는게 명시가 안 되어 있고, 세법 문서에는 해당 내용이 세법이라는 것에 대해 명시가 되어 있지 않아 1) 단순히 두 word파일을 하나의 파일로 합치면 혼란이 올 것 같은데, 2) 안 합치고 따로 하자니 일단 그 방법도 모르거니와 각각 넣는 게 파일명 말고는 1번과 무슨 차이인지도 모르겠어서 선생님께 질문을 드립니다. 비슷한 상황으로 다른 예시를 들어드리자면 , 가령 대출 관련 챗봇을 만드려고 할 때, 신용 대출에 대한 문서가 신용 대출 << 언급이 안되어 있는 아래와 같은 상황이고 [직장인 대출] 금리 10% 조건 : 1년이상 재직자 대출한도: 만원 [직장인 대출2] 금리 9% 조건 : 3년이상 재직자 대출한도: 2만원 [CSS 대출] 금리 11% 조건 : 20세이상 30세 미만 대출한도: 3만원 그리고 주택 담보 대출은 아래와 같을 때, (= 대출 내용은 다르지만 대출을 받을 수 있는 컨디션은 똑같을 때) [a아파트 대출] 금리 10% 조건 : 1년이상 재직자 대출한도: 50만원 [주택 대출] 금리 9% 조건 : 3년이상 재직자 대출한도: 60만원 [버팀목 대출] 금리 11% 조건 : 20세이상 30세 미만 대출한도: 70만원 이 상황에서 만약에 주택담보대출을 알아보고 있으면 굳이 신용대출까지 조회를 안 해도 되잖아요. 이런 상황은 어떻게 거르죠? 참고로 직장인 대출 <- 신용이라는 키워드로 거를수가 없습니다. 강의에서 알려주신 대로 데이터 사전이나 프롬포트를 이용해 처리하는 방법밖엔 없을까요? (생각나는 상황이 이런거인데 사실 대출을 잘몰라서 ;; 제 질문이 잘 전달됐는지 모르겠네요..) 아무튼 긴 글 읽어주셔서 다시 한 번 감사합니다.