묻고 답해요
161만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨맞춤형 LLM 만들기 : 처음 시작하는 분을 위한 RAG 기초 개념부터 멀티모달·Agent 실습까지
제공해준 ipynb 소스에
강사님의 api 키가 노출되는 거 같습니다호출은 안해봤는데
-
미해결RAG를 활용한 LLM Application 개발 (feat. LangChain)
pdf화일을 임베딩하고 싶어요
현재 국가전산망 화재로 소득세법을 '국가법령센터'가 장애중입니다. 대체사이트인 (사법정보공개포탈)에서는 PDF와 TXT만 다운로드가 가능합니다. 대부분 pdf화일 문서가 많은데, word말고 pdf문서를 임베딩하는 방법/강의가 있었으면 합니다. 추가로, 문서내 텍스트외에 도형이나 표같은경우는 어떻게 임베딩을 하면 좋을까요?
-
미해결RAG를 활용한 LLM Application 개발 (feat. LangChain)
RAG 구조에서 전체 맥락을 이해시키는 방법
안녕하세요, 강사님.강의 덕분에 RAG를 활용한 챗봇을 성공적으로 구현해서 잘 사용하고 있습니다!(질문1)다만, RAG 구조상 사용자의 질문과 가장 유사한 문서 조각(chunk)을 찾아서 그 안에서만 답변을 생성하다 보니, 전체 문서를 이해해서 답변을 해주지는 못하는 점이 아쉽습니다.RAG로 학습시킨 매뉴얼이 약 47페이지 정도이고 양이 많지 않은데,이 전체 매뉴얼의 내용 전체를 이해하고 종합적으로 답변할 수 있는 방법이 있을까요?출처를 알려줄 수 있는 RAG의 분명한 장점이 있어서, 현재의 RAG 기반 구조를 유지한 채 개선을 할 수 있는 방법이 있을지 궁금합니다. (질문2)47페이지 문서 외에 더 자세한 매뉴얼을 추가로 반영하려고 하는데요,이때 pinecone에 동일 DB(인덱스)로 그냥 추가하는게 좋을지 아니면 더 나은 구조가 있을지 조언 구하고 싶습니다.감사합니다.
-
해결됨RAG를 활용한 LLM Application 개발 (feat. LangChain)
ㅠ 업스테이지 임베딩을 못 쓰네요..
업스테이징 임베딩에서 오픈ai쪽 _AllReturnType를 사용하는건가요?ㅠ버전 문제 같은데, 해결 방법이 없을까요 ? --------------------------------------------------------------------------- ImportError Traceback (most recent call last) Cell In[12], line 2 1 from dotenv import load_dotenv ----> 2 from langchain_upstage import UpstageEmbeddings 4 load_dotenv() 5 embedding = UpstageEmbeddings( 6 model = "solar-embedding-1-large" 7 ) File ~/IdeaProjects/inflearn-llm-app/.venv/lib/python3.10/site-packages/langchain_upstage/__init__.py:1 ----> 1 from langchain_upstage.chat_models import ChatUpstage 2 from langchain_upstage.document_parse import UpstageDocumentParseLoader 3 from langchain_upstage.document_parse_parsers import UpstageDocumentParseParser File ~/IdeaProjects/inflearn-llm-app/.venv/lib/python3.10/site-packages/langchain_upstage/chat_models.py:43 41 from langchain_core.utils import from_env, secret_from_env 42 from langchain_core.utils.function_calling import convert_to_openai_tool ---> 43 from langchain_openai.chat_models.base import ( 44 BaseChatOpenAI, 45 _AllReturnType, 46 _convert_message_to_dict, 47 _DictOrPydantic, 48 _DictOrPydanticClass, 49 _is_pydantic_class, 50 ) 51 from pydantic import BaseModel, Field, SecretStr, model_validator 52 from tokenizers import Tokenizer ImportError: cannot import name '_AllReturnType' from 'langchain_openai.chat_models.base' (/Users/xeroman.k/IdeaProjects/inflearn-llm-app/.venv/lib/python3.10/site-packages/langchain_openai/chat_models/base.py)
-
미해결RAG를 활용한 LLM Application 개발 (feat. LangChain)
upstate import 가 안됩니다.
---------------------------------------------------------------------------ImportError Traceback (most recent call last) Cell In[3], line 1 ----> 1 from langchain_upstage import ChatUpstage 2 llm = ChatUpstage() File ~/Documents/dev/Langchain/devInf/.venv311/lib/python3.11/site-packages/langchain_upstage/__init__.py:1----> 1 from langchain_upstage.chat_models import ChatUpstage 2 from langchain_upstage.document_parse import UpstageDocumentParseLoader 3 from langchain_upstage.document_parse_parsers import UpstageDocumentParseParser File ~/Documents/dev/Langchain/devInf/.venv311/lib/python3.11/site-packages/langchain_upstage/chat_models.py:4341 from langchain_core.utils import from_env, secret_from_env 42 from langchain_core.utils.function_calling import convert_to_openai_tool ---> 43 from langchain_openai.chat_models.base import ( 44 BaseChatOpenAI, 45AllReturnType, 46convert_message_to_dict, 47DictOrPydantic, 48DictOrPydanticClass, 49ispydantic_class, 50 ) 51 from pydantic import BaseModel, Field, SecretStr, model_validator 52 from tokenizers import Tokenizer ImportError: cannot import name '_AllReturnType' from 'langchain_openai.chat_models.base' (/Users/frair/Documents/dev/Langchain/devInf/.venv311/lib/python3.11/site-packages/langchain_openai/chat_models/base.py)이런 메세지이고요from langchain_upstage import ChatUpstage llm = ChatUpstage()해당부분 실행시 나타납니다.파이썬 3.11.9 버전 사용하고 있고 설치된 랭체인들을 보니 langchain_openai-0.3.34langchain)upstage-0.7.3버전으로 설치가 되어있기는 합니다.venv 사용하고 있고 맥os 실리콘 쓰고있습니다.
-
미해결RAG를 활용한 LLM Application 개발 (feat. LangChain)
3.3 코드 에러
3.3 LangChain 없이 구성하는 RAG의 불편함.ipynb의 8번째tax_collection = chroma_client.get_or_create_collection(collection_name, embedding_function=openai_embedding)에서 아래의 에러가 납니다.ValueError: An embedding function already exists in the collection configuration, and a new one is provided. If this is intentional, please embed documents separately. Embedding function conflict: new: openai vs persisted: default 어떻게 해야하나요?
-
미해결RAG를 활용한 LLM Application 개발 (feat. LangChain)
현업에서 LangChain 사용에 대해 질문드립니다
안녕하세요 강사님 강의 듣고 이젠 스스로가 재밌어서 LangChain 문서들 혼자서 읽고 학습중입니다 ㅎㅎ강의를 들으면서 몇개 질문들이 있는데요현업에서 LangChain이 많이 쓰이나요?해외 reddit이나 개발자 커뮤니티에서도 랭체인이 오히려 불편하다고, 실제 서비스에서는 안쓴다고 하는 분들이 있어서 현업에서도 잘 쓰는지 궁급합니다LangChain 공식 문서를 보면 너무 자주 바뀌는데, 어떻게 해결하시나요?특히 API에서 말하는 예제랑 공식 문서에서 소개하는 예제가 너무 다릅니다 (retrieval chain 등)현재 2025년 10월 기준, 강의 내용은 0.2 기반이고 현재 랭체인 버전은 0.3, 그리고 10월 말에 1.0이 정식 출시된다고 해서 너무 혼란스럽네요바뀔 떄마다 코드를 수정하시는건가요?
-
미해결RAG를 활용한 LLM Application 개발 (feat. LangChain)
출처를 좀 더 명확하게 표시해주고 싶습니다!
강의에서는 출처를 제공할 때, 프롬프트 설정을 통해 제공하는 형태로 되어있는데어떤 문서에서 몇 페이지에 있는 건지 표시해주기Pinecone기준 코사인 유사도를 숫자로 환산해 표시해주기좀 더 확실한 출처 제공을 위해 위에 적은 기능을 활용해보고 싶은데, 어떤 부분을 수정해줘야 할까요?지피티 대답이 너무 중구난방에 수정해도 오류가 계속 발생해서 여쭤봅니다!
-
미해결RAG를 활용한 LLM Application 개발 (feat. LangChain)
split_text 문의
안녕하세요.코드를 보면 문서를 인코딩 후 청크 단위로 나눈 다음 다시 디코딩하여 임베딩 하는데요.언뜻 생각하기로는 다시 디코딩하는 것이 효율적이지 않은 것 같은데요. 바로 임베딩하지 않고 디코딩하여 임베딩하는 이유가 있을까요?
-
미해결RAG를 활용한 LLM Application 개발 (feat. LangChain)
hub.pull("rlm/rag-prompt") 실행 시 오류가 발생합니다.
위 이미지처럼 코드 실행 시 오류가 발생하는데, 원인 파악이 안돼서 여쭤보고자 합니다.이전에는 LangSmith API KEY 미존재 오류가 발생하여 .env 파일에 LANGCHAIN_API_KEY, LANGCHAIN_TRACING_V2 값 모두 등록해놓은 상태입니다.
-
미해결RAG를 활용한 LLM Application 개발 (feat. LangChain)
배포 시 requirement.txt 유무
배포 시 requirement.txt 가 존재하지 않을 때는 배포가 되지 않았는데, 추가하니까 배포가 정상적으로 됩니다. 해당 파일은 배포 시 필수 파일인가요 ?
-
미해결RAG를 활용한 LLM Application 개발 (feat. LangChain)
10강 궁금증
10강에서 OpenAIEmbeddings -> UpstageEmbeddings로 변경하는 과정을 따라하고 있었습니다. 궁금한 점은 query = "연봉 5천만원인 직장인의 소득세는 얼마인가요?" reviewed_docs = database.similarity_search(query, k=3) 이렇게 진행을 하시고, 또 아래와 같은 코드를 왜 실행시키는지 궁금합니다.# 이제 QA 체인 만들기 from langchain.chains import RetrievalQA qa_chain = RetrievalQA.from_chain_type(llm=llm, retriever=database.as_retriever(), chain_type_kwargs={"prompt" : prompt})QA 체인이 문서 검색 기능을 해주는 것으로 알고 있는데 왜 위에서 "reviewed_docs = database.similarity_search(query, k=3) " 을 넣으신건지 궁금합니다.
-
미해결RAG를 활용한 LLM Application 개발 (feat. LangChain)
문서 못 찾음
%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.docx") document_list = loader.load_and_split(text_splitter=text_splitter) %pip install -qU langchain-text-splitters document_list len(document_list) from langchain_openai import OpenAIEmbeddings from dotenv import load_dotenv load_dotenv() embedding = OpenAIEmbeddings(model="text-embedding-3-large") %pip install -qU langchain-chroma from langchain_chroma import Chroma # database = Chroma.from_documents(documents=document_list, embedding=embedding, collection_name="chroma-tax", persist_directory="./chroma") database = Chroma(collection_name="chroma-tax", persist_directory="./chroma", embedding_function=embedding) print(database._collection.count()) # 문서 개수 query = "연봉 5천만원인 직장인의 소득세는 얼마인가요?" # reviewed_docs = database.similarity_search(query, k=3) from langchain_openai import ChatOpenAI llm = ChatOpenAI(model="gpt-4o") %pip install -U langchain langchainhub --quiet from langchain import hub prompt = hub.pull("rlm/rag-prompt") prompt # 이제 QA 체인 만들기 from langchain.chains import RetrievalQA qa_chain = RetrievalQA.from_chain_type(llm=llm, retriever=database.as_retriever(), chain_type_kwargs={"prompt" : prompt}) ai_messgae = qa_chain.invoke({"query" : query}) ai_messgae인강을 들으며 코드를 동일하게 작성하였는데 관련 문서 내용을 찾지 못하여 답변이 저렇게 나오는데 어느 부분이 문제인지 모르겠습니다.
-
미해결RAG를 활용한 LLM Application 개발 (feat. LangChain)
Golden Dataset 관련 질문
안녕하세요. 강의 잘 듣고 있습니다. 강의에서 evaluation을 위한 golden dataset을 chatgpt로 생성하셨는데 실무에서는 보통 어떻게 처리하시는지 궁금합니다. 실무에서도 LLM이나 인공지능을 활용하여 dataset을 만드시나요? 아니면 사람이 개입해서 수집이나 조사 등을 통해 작성하시나요?
-
미해결RAG를 활용한 LLM Application 개발 (feat. LangChain)
멘토링 신청은 어디서 하나요
멘토링 페이지에서 강사님 이름을 쳐도 안나오는데 멘토링 신청 안받는것인지 궁금해서 여쭤봅니다.
-
미해결RAG를 활용한 LLM Application 개발 (feat. LangChain)
Mysql과 벡터 DB를 사용해야하는 경우
안녕하세요. 실무에서 Mysql을 많이 사용하는데 Mysql 사용자 테이블을 기준으로 사용자와 비슷한 취미 이런것들을 추천 시스템을 만든다고한다면 mysql에 저장된 데이터를 벡터 DB에 계속 업데이트를 해야하는데 가능한건지 의문이듭니다. 사용자 테이블에는 탈퇴를 했다거나 취미가 바뀌었다거나 등 데이터가 업데이트가 되는데 벡터 DB에서도 해당 데이터를 찾아서 업데이트 되는게 가능한건지 아니면 배치성으로 데이터를 한번에 업데이트를 헤야하는것인지 고민이 드는데 강사님 같은 경우에 어떻게 해결하셨는지 궁금합니다.
-
미해결RAG를 활용한 LLM Application 개발 (feat. LangChain)
OpenAIEmbedding
OpenAI Embedding 모델을 사용하셨는데, 기업 환경에서도 이 모델을 활용하는지 궁금합니다. 데이터가 OpenAI 서버로 전송된다면 보안상 위험은 없을까요?
-
미해결RAG를 활용한 LLM Application 개발 (feat. LangChain)
AI논문은 주로 어디서 보시나요?
이번 강의에서 많은 인사이트를 얻어갑니다. Few shot이나 이런 논문은 주로 어디서 어떻게 얻으시는지 궁금합니다.
-
미해결RAG를 활용한 LLM Application 개발 (feat. LangChain)
Metric 3가지 방식 중에 추천해주시는 방식이있나요?
제목 그대로 추천해주시는 Mertic 방식이 있나요? 각 방식마다 장 단점이 있을거같고 특수 상황에서 쓰이는 방식들이있을거같아서요.
-
미해결RAG를 활용한 LLM Application 개발 (feat. LangChain)
토큰별로 문서를 쪼개는 이유
안녕하세요.토큰별로 문서를 쪼개는 이유가 아래가 맞을까요?유사도 검색18만글자를 안쪼개고 벡터 데이터베이스에 저장하면 유사도 검색이 안됨GPT4-0 컨텍스트 토큰 한계18만글자를 안쪼개고 넣는다 한들 유사도 검색 후 GPT가 그 결과값을 보고 답변을 줘야하는데 결과값이 18만글자니깐 답변 조차 못함