묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결RAG 마스터: 기초부터 고급기법까지 (feat. LangChain)
krag를 이용한 검색기법 평가관련 질문
안녕하세요. krag를 통해 검색기법들을 평가하는 방법에서 질문이 있습니다. 이렇게 검색기법을 통해서 검색기에 대한 성능을 평가하려면, 우선적으로 question과 answer에 대한 평가셋을 직접 만들어야 하는걸까요?
-
미해결RAG 마스터: 기초부터 고급기법까지 (feat. LangChain)
MMR 관련 질문입니다.
안녕하세요. MMR 관련 질문이 있습니다. MMR을 retriever로 설정할 때 fetch_k와 k를 같이 설정해주도록 되어 있는데, 여기서 질문입니다.fetch_k를 설정한다는 것 자체가 다양성을 확보하기 위한 MMR과 배치되는 것 아닌가요? => 그냥 전체 문서수를 fetch_k로 하면 되는 것 아닌가요? mmr 알고리즘 or 문서검색을 하는 원리가 잘 이해되지 않습니다. 감사합니다.
-
미해결RAG 마스터: 기초부터 고급기법까지 (feat. LangChain)
Text_splitter관련 질문입니다.
아래의 코드와 같이 chunk_size와 seperator 두가지 기준으로 문서를 분할하는 text_splitter를 정의하였을때, 어떤 것을 우선하여 텍스트를 분할하나요?예를 들어 토큰사이즈가 100개 이하지만 정규식 조건에 해당하여 분할을 하는것인지 혹은 토큰사이즈 100개 이상이 되어 정규식 조건을 충족하지 않아도 문서를 분할하는지 궁금합니다. text_splitter = CharacterTextSplitter.from_huggingface_tokenizer( tokenizer=tokenizer, separator=r"[.!?]\s+", chunk_size=100, chunk_overlap=0, is_separator_regex=True, keep_separator=True, )
-
미해결RAG 마스터: 기초부터 고급기법까지 (feat. LangChain)
오픈api key는 따로 구매해야되는 걸까요?
오픈api key는 따로 구매해야되는 걸까요?
-
미해결RAG 마스터: 기초부터 고급기법까지 (feat. LangChain)
과거 채팅이력을 LLM에 줄때 포멧
안녕하세요. 강의에서 정의하신 아래의 함수에서 final_answer에 입력값을 넣는것이 결국 리스트 형태의 데이터고, 리스트는 HumanMessage와 AIMessage가 번갈아가면서 저장되어 있을텐데 llm모델에 이렇게 리스트 형태로 HumanMessage, AIMessage의 객체들을 상관없이 대입해도 괜찮은가요? langchain에서 사용하는 invoke라는 매서드가 내부적으로 이런 타입들을 처리하는 로직을 실행하나요? 감사합니다. def answer_invoke(message, history): history_langchain_format = [] for human, ai in history: history_langchain_format.append(HumanMessage(content=human)) history_langchain_format.append(AIMessage(content=ai)) history_langchain_format.append(HumanMessage(content=message)) # 현재 메시지에 대해 RAG 체인 실행 rag_response = run_route_rag_chain(message) # 답변 생성 모델에게 현재 메시지에 대한 답변 요청 final_answer = answer_llm.invoke( history_langchain_format[:-1] + [AIMessage(content=rag_response)] + [HumanMessage(content=message)] ) return final_answer.content
-
미해결RAG 마스터: 기초부터 고급기법까지 (feat. LangChain)
OpenAIEmbeddings모델이 사용하는 토크나이저는 뭘까요?
안녕하세요. 강의 잘 듣고 있습니다. OpenAIEmbedding모델을 이용해서 텍스트를 벡터화 하는 것까지는 이해가 되었는데, 텍스트를 임베딩모델에 넣을 때, 토크나이징을 한 결과를 input으로 사용하는지, 그렇다면 어떤 토크나이징 모델을 사용하는지 궁금합니다.아니면 토크나이징 없이 바로 임베딩 모델에 대입하는건가요?
-
미해결RAG 마스터: 기초부터 고급기법까지 (feat. LangChain)
ChatPromptTemplate의 from_messages로 메세지를 구성할 때 system은 어떻게 설정해야하나요?
안녕하세요.. ChatPromptTemplate의 from_messages로 메세지를 구성할 때 system값과, user값이 있는데 각 값의 역할과 어떻게 구성해야 하는지 알 수 있나요? 감사합니다
-
미해결RAG 마스터: 기초부터 고급기법까지 (feat. LangChain)
create_retrieval_chain에서 context는 지정된 인자인가요?
아래 코드에서 create_retrieval_chain에 인자로 combine_docs_chain을 사용하는데요, retrieval_qa_chat_prompt에서 정의한 {context}는 프롬프트에 고정적으로 있어야 하는 부분인가요? 내부적으로 context라는 이름으로 정해져있는 것인지 궁금합니다.retrieval_qa_chat_prompt = ChatPromptTemplate.from_template(""" 다음 컨텍스트를 바탕으로 질문에 답변해주세요. 컨텍스트에 관련 정보가 없다면, "주어진 정보로는 답변할 수 없습니다."라고 말씀해 주세요. 컨텍스트: {context} 질문: {input} 답변: """) # 체인 생성 combine_docs_chain = create_stuff_documents_chain(llm, retrieval_qa_chat_prompt) rag_chain = create_retrieval_chain(retriever, combine_docs_chain) # 체인 실행 query = "테슬라 창업자는 누구인가요?" response = rag_chain.invoke({"input": query})
-
미해결RAG 마스터: 기초부터 고급기법까지 (feat. LangChain)
vectorstore의 as_retriever와 similarity_search는 같은 로직인가요?, 사용되는 검색 알고리즘은 뭔가요?
안녕하세요. 강의 잘 듣고 있습니다. 제목이 곧 질문인데요.Chroma로 생성한 vectorstore객체의 as_retriever매서드와 similarity_search는 내부적으로 같은 알고리즘 혹은 로직을 사용하나요? 그렇다면 이 두가지 매서드의 차이점은 langchain을 사용할 때 편의성 차원에서 as_retriever가 더 좋다 이렇게 알고있으면 되는걸까요? 또한 내부에서 사용되는 검색 알고리즘은 어떤건지 알 수 있을까요? 감사합니다.
-
미해결프로젝트로 배우는 Python 챗봇 & RAG - LangChain, Gradio 활용
환경설정 질문
질문이 있습니다.선생님께서 설정된 toml 파일은 캐럿(^)을 포함한 버전이 설정되어 있는데, 제가 프로젝트를 생성하고 toml을 확인할 경우 명시적으로 범위가 설정되어져 있습니다. 물론 큰 차이는 없겠지만 나중에 실질적인 업무나 개인적인 프로젝트를 진행할 때 영향도가 있을까요?? 만약 있다면 선생님처럼 버전을 지정해서 등록할 수 있는 설정이 따로 있을까요??
-
미해결RAG 마스터: 기초부터 고급기법까지 (feat. LangChain)
evaluate_retrieval_at_K 함수 문의드립니다.
안녕하세요, krag 라이브러리가 pip 서버에는 등록이 되어있는데 상세한 정보는 찾을 수가 없어서 문의드립니다. 일정 한도 내에서는 무료로 사용할 수 있는 Gemini API를 통해서 검색 성능을 평가중에 있는데, 중간중간 NaN값이 나오길래 추적해봤더니 API 분당 호출 수가 초과해서 값을 호출받지 못하는 경우가 생기더라구요. time.sleep을 걸고싶어도 이게 함수 자체로 전체 데이터프레임을 순회하는지라.. 혹시 delay를 넣을 수 있는 옵션이 있을까요?
-
미해결RAG 마스터: 기초부터 고급기법까지 (feat. LangChain)
검색기 관련 질문드립니다.
안녕하세요, Langchain RAG 강의 잘 듣고 있습니다. 데이터셋이 방대해질 경우 분명 시간이 지나면서 이제는 사용되지 않은 정보 구식의 정보라고 해야할까요? 그런 것들이 생기는데, 그런 데이터들은 어떻게 필터가 되는지 궁금합니다. 예) Python 2.xx 버전 문서 저장Python 3.xx 버전으로 신규 업데이트 분명 검색을 할 때 동일하게 겹치는 내용이라면 1번과 2번 모두 가져올 것 같은데요! 이 경우 최신 버전으로만 불러올 수 있게 가능한가요??
-
미해결프로젝트로 배우는 Python 챗봇 & RAG - LangChain, Gradio 활용
poetry add python-dotenv langchain langchain-openai gradio 설치 안 되요
패키지 설치:poetry add python-dotenv langchain langchain_openai gradio위를 입력하는데, 아래 처럼 같은 에러가 수십번 납니다 PS D:\mypersonal\myprojects\LANGCHAIN\qa-bot> poetry add python-dotenv langchain langchain-openai gradioUsing version ^1.1.1 for python-dotenvUsing version ^0.3.26 for langchainUsing version ^0.3.27 for langchain-openaiUsing version ^5.35.0 for gradioUpdating dependenciesResolving dependencies... (1.1s)The current project's supported Python range (>=3.10) is not compatible with some of the required packages Python requirement: - langchain-text-splitters requires Python <4.0,>=3.9, so it will not be installable for Python >=4.0Because no versions of langchain match >0.3.26,<0.4.0 and langchain (0.3.26) depends on langchain-text-splitters (>=0.3.8,<1.0.0), langchain (>=0.3.26,<0.4.0) requires langchain-text-splitters (>=0.3.8,<1.0.0).Because langchain-text-splitters (0.3.8) requires Python <4.0,>=3.9 and no versions of langchain-text-splitters match >0.3.8,<1.0.0, langchain-text-splitters is forbidden.Thus, langchain is forbidden.So, because qa-bot depends on langchain (^0.3.26), version solving failed. * Check your dependencies Python requirement: The Python requirement can be specified via the python or markers properties For langchain-text-splitters, a possible solution would be to set the python property to ">=3.10,<4.0"
-
미해결남박사의 파이썬으로 봇 만들기 with ChatGPT
44, 45강 실행시 오류
그대로 따라하고 실행했는데 이런 문제점이 있습니다. 왜인지 잘 모르겠어요. 44강에서 테스트 메세지의 링크가 모바일에서도 안나옵니다. 44강에서 위치보기 도 누르면 아무 링크가 안열립니다. 45강에서 PC카톡에 "안녕하세요. 봇입니다." 라는 메세지를 보내면, 계속 이렇게 나오네요.
-
미해결LLM 기초부터 최신 RAG·LangChain까지: 단 5시간 만에 LLM 기초과정 마스터!
일부 코랩 실습 파일 링크 연결 오류
다음의 코랩 실습 파일 링크 연결시 권한관련 오류 메시지가 나와서 노트북이 열리지 않습니다.해결방법 알려주세요.언어모델간임베딩유사도비교언어모델별_단어예측예시Konlpy_의미기반형태소분석기
-
미해결LLM 기초부터 최신 RAG·LangChain까지: 단 5시간 만에 LLM 기초과정 마스터!
코랩 실습 파일 링크
코랩 실습 파일 링크 연결시 권한관련 오류 메시지가 나와서 노트북이 열리지 않습니다.해결방법 알려주세요.
-
미해결남박사의 파이썬으로 봇 만들기 with ChatGPT
3강 그대로 따라했는데 코드가 아무 결과도 반납하지 않습니다.
코드를 그대로 따라서 작성하고 실행해보았는데 아무런 반환값이 나오지 않습니다. 구글과 네이버의 페이지 구조가 그동안 (처음 강의 올리신 후) 바뀌어서 그런걸까요?
-
미해결프로젝트로 배우는 Python 챗봇 & RAG - LangChain, Gradio 활용
OpenAI API를 활용하여 LLM Chain 구현하기 (실습)
OpenAI API를 활용하여 LLM Chain 구현하기 (실습) 에서 llm.invoke(prompt_text)하면 이런에러가뜹니다..api_key 새로 갱신받아도 계속 이럽니다..
-
미해결프로젝트로 배우는 Python 챗봇 & RAG - LangChain, Gradio 활용
OpenAI API를 활용하여 LLM Chain 구현하기 (실습) 에서
OpenAI API를 활용하여 LLM Chain 구현하기 (실습) 에서 All attempts to connect to pypi.org failed.Probable Causes: - the server is not responding to requests at the moment - the hostname cannot be resolved by your DNS - your network is not connected to the internetYou can also run your poetry command with -v to see more information. 이런 에러가뜹니다.. 미치겠네요..
-
미해결초보자를 위한 ChatGPT API 활용법 - API 기본 문법부터 12가지 프로그램 제작 배포까지
제미니
제미니로 바뀌어서 저 힘들었네옄ㅋㅋㅋ 관련 질문은 상세히 남겨주세요!