묻고 답해요
156만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결회사에서 바로 쓰는 업무자동화 AI 에이전트 (w. n8n, LangGraph)
Route 53에서 도메인과 로드밸런스 연결 부분
n8n AWS로 배포하기 (정석버전)강의에서는 aws에서 산 도메인이라 Hosted zone에 뜨는것으로 추측되는데, 외부 도메인에 ACM 인증서까지 적용하여 어플리케이션 로드밸런스를 AWS에 만든 상태입니다. 위의 이미지 과정을 외부 도메인에서는 어떻게 로드밸런스와 연결하는지 궁금합니다.
-
미해결graphRAG - Neo4J로 구현하는 지식 그래프 기반 RAG 시스템 (feat. LangChain)
neo4j의 장점
지금 영화 추천하는 강의 보고 있습니다.질문 있습니다. 일반적인 sql 쿼리를 써도 해당 내용으로 추천 내용 다 작성 할 수 있을 것 같은데 neo4j 랑 사이퍼 쿼리를 쓰는 이유는해당 데이터를 노드화 해서 연결 함으로써검색 속도가 빨라지는 장점이 있을까요? 감사합니다.
-
미해결회사에서 바로 쓰는 업무자동화 AI 에이전트 (w. n8n, LangGraph)
ACM에서 staus가 pedding
ACM에서 staus가 pedding validation입니다.도메인은 강의에서 나온 도메인으로 설정했는데, 제가 따로 도메인을 구매해야하나요?ACM이 pendding 상태라 ALB에서 ACM 선택이 불가능합니다.
-
해결됨회사에서 바로 쓰는 업무자동화 AI 에이전트 (w. n8n, LangGraph)
강의와 다르게 API_KEY 일부만 넣으면 인증 오류가 발생하는 현상
n8n에서 Header Auth Account에 Authorization이라는 이름을 넣고 value 값을 입력한 뒤, 실제로는 __n8n_BLANK_VALUE_e5362baf-~ 이런 식으로 표시되는 것을 확인했습니다.그래서 저는 e5362baf- 부분을 API_KEY로 넣어줬는데 계속 인증 오류(Authorization data is wrong!%)가 발생했습니다.그런데 실제로 넣어준 value 전체를 그대로 사용했을 때는 정상적으로 {"message":"Workflow was started"}% 응답이 왔습니다.다만 강의에서는 e5362baf- 값만 넣어줘도 {"message":"Workflow was started"}% 응답이 나오던데, 제 경우에는 전체 value를 넣어야만 동작했습니다.무슨 차이일까요? 저도 e5362baf 값으로 넣어서 하고 싶은데..어떻게 해야될까요?
-
미해결AI 에이전트로 구현하는 RAG 시스템(w. LangGraph)
Fan-in 시 여러개 노드에서 하나로 병합되는 과정에서 질문 입니다.
Fan in 되면서 3개 노드에서 1개 노드로 병합되는 과정에서, 그 1개 노드는 3개 노드가 전부 연산을 끝낼때까지 기다린 후 실행 되는건가요??
-
미해결프로젝트로 배우는 Python 챗봇 & RAG - LangChain, Gradio 활용
환경설정 질문
질문이 있습니다.선생님께서 설정된 toml 파일은 캐럿(^)을 포함한 버전이 설정되어 있는데, 제가 프로젝트를 생성하고 toml을 확인할 경우 명시적으로 범위가 설정되어져 있습니다. 물론 큰 차이는 없겠지만 나중에 실질적인 업무나 개인적인 프로젝트를 진행할 때 영향도가 있을까요?? 만약 있다면 선생님처럼 버전을 지정해서 등록할 수 있는 설정이 따로 있을까요??
-
미해결RAG를 활용한 LLM Application 개발 (feat. LangChain)
dictionary chain 생성 시 적절치 않은 변환
%pip install --upgrade langchain-text-splitters langchain-upstage from langchain_community.document_loaders import Docx2txtLoader from langchain_text_splitters import RecursiveCharacterTextSplitter text_splitter = RecursiveCharacterTextSplitter( chunk_size=500, chunk_overlap=100 ) #loader = Docx2txtLoader('./tax_with_table.docx') loader = Docx2txtLoader('./tax_with_markdown.docx') documents_list = loader.load_and_split(text_splitter=text_splitter) documents_list1=documents_list[len(documents_list)//2:] documents_list2=documents_list[:len(documents_list)//2] from langchain_upstage import UpstageEmbeddings from dotenv import load_dotenv load_dotenv() embedding = UpstageEmbeddings(model="solar-embedding-1-large") import os from pinecone import Pinecone from langchain_pinecone import PineconeVectorStore pinecone_api_key = os.environ.get("PINECONE_API_KEY") pc = Pinecone(api_key=pinecone_api_key) index_name = "tax-markdown-index" vector_store = PineconeVectorStore.from_documents(documents_list1, embedding, index_name=index_name) vector_store.add_documents(documents_list2) query = "연봉 5천만원인 직장인의 소득세는 얼마인가요?" #retrieved_docs = database.similarity_search(query) from langchain_upstage import ChatUpstage llm = ChatUpstage() # prompt = f""" # - 당신은 최고의 한국 소득세 전문가입니다 # - [Context]를 참고해서 아용자의 질문에 답변해주세요 # [Context] # {retrieved_docs} # Question: {query} # """ # ai_message = llm.invoke(prompt) from langchain import hub prompt = hub.pull("rlm/rag-prompt") # retriever = vector_store.as_retriever() # retriever.invoke("연봉 5천만원인 거주자의 소득세는 얼마인가요?") from langchain.chains import RetrievalQA qa_chain = RetrievalQA.from_chain_type( llm=llm, retriever=vector_store.as_retriever(), chain_type_kwargs={"prompt": prompt} ) query = "연봉 5천만원인 직장인의 소득세는 얼마인가요? 2024년도 소득 기준으로 하고 인적공제는 혼자고 공제항목은 평균정도로 잡아봐." ai_message = qa_chain({"query":query}) ai_message from langchain_core.output_parsers import StrOutputParser from langchain_core.prompts import ChatPromptTemplate dictionary = ["사람을 나타내는 표현 -> 거주자"] prompt = ChatPromptTemplate.from_template(f""" 사용자의 질문을 보고 우리의 사전을 참고해서 사용자의 질문을 변경해주세요. 만약 변경할 필요가 없다고 판단된다면 사용자의 질문을 변경하지 않아도 됩니다. 사전 : {dictionary} """) dictionary_chain = prompt | llm | StrOutputParser() dictionary_chain.invoke({"question": "연봉 5천만원인 직장인의 소득세는 얼마인가요?"}) tax_chain = {"query": dictionary_chain} | qa_chain ai_response = tax_chain.invoke({"question": "연봉 5천만원인 직장인의 소득세는 얼마인가요?"}) ai_response 이 상황에서 dictionary_chain.invoke({"question":"연봉 5천만원인 직장인의 소득세는 얼마인가요?"})를 했을때 직장인을 거주자로 바꾸는게 아니라 답변을 아래와같이줍니다 ㅜㅜ'사용자의 질문을 사람을 나타내는 표현을 우리의 사전을 참고하여 "거주자"로 변경해보겠습니다. 그러나 사용자가 질문을 아직 제출하지 않았으므로, 가상의 질문을 만들어 변경해보겠습니다.\n\n가상의 사용자 질문: "사람들이 자주 방문하는 관광지는 어디인가요?"\n\n변경된 질문: "거주자들이 자주 방문하는 관광지는 어디인가요?"\n\n만약 사용자의 질문이 이미 적절하거나 변경이 필요하지 않다고 판단되면 질문을 변경하지 않습니다. 실제 사용자 질문을 알려주시면 그에 맞게 도움을 드리겠습니다.' 그 결과 최종 response도 아래와같이 나와버리네요 ㅠㅠ ['e9f858cf-0c76-4887-9556-22c5f32eadf4', '40a151b4-ee72-4f3c-ab61-055114344dd9', '6072bcb7-4ea0-4fbc-8828-e74cb883d162', 'a6a9fc0d-eb7a-482d-8b9d-e12073ea6dce', '9d16b74e-557b-475d-b536-8f37e77306a8', '5ad3b09f-8afa-42b6-8cec-a77a525e6f4b', 'a678eb3b-1b5d-4106-888f-bdf3302ac84c', '57a9b7e1-9511-4a34-822d-7f2a0ae710fc', '4ecd54b8-fac0-459b-ae14-4985f2dd0a20', 'bc50c84a-4770-4756-a8d4-06985387f03b', '65a1116f-93c3-4a5b-8a17-3018ccbd26b0', 'cfde5547-ee30-417c-b2dd-ed0c7f7a602d', '5f9a45e2-0279-4363-bb7c-b0fe85cc0595', '907860e1-e1c4-410d-8fa2-8eb82808f008', '682389cf-f2ad-45df-9db8-a1b6b046f43d', '76395c00-dffa-4d26-9f5e-fd910228538c', '136528f9-c253-406f-a5c8-c8fcd4fad21f', '5f6c5158-cd35-4b74-ae75-ec1f34c35394', 'b8cb52ec-e324-48c1-83a1-31c02e4d202d', '98dfe4bc-c0de-4f7e-996e-bf20416915dc', 'c9018194-109e-443c-8dd0-af5607de3c6f', '2120a161-f0f4-4c91-9759-5bb0aebb995d', '96948c3b-5937-44c1-ad84-04ed923e695b', '490a568c-d378-4cbb-aa69-bf195e41371b', '14e8fcec-7c2c-45d6-ac7b-14c009a6acc5',... '84802efa-23df-4a84-b311-577933f09c51', 'a22be767-fa83-4325-a605-498647daa19e', '879e0a7f-50ed-4cf1-8b6e-f4dbd2a498fc', 'e275ec53-9664-4a18-a813-d40b0e130a23', 'fbde51af-1fbb-445b-8c59-68d61b9bfa2d']Output is truncated. View as a scrollable element or open in a text editor. Adjust cell output settings.../Users/arang/.pyenv/versions/3.13.2/envs/inflearn-llm-application/lib/python3.13/site-packages/langsmith/client.py:272: LangSmithMissingAPIKeyWarning: API key must be provided when using hosted LangSmith API warnings.warn({'query': '연봉 5천만원인 직장인의 소득세는 얼마인가요? 2024년도 소득 기준으로 하고 인적공제는 혼자고 공제항목은 평균정도로 잡아봐.', 'result': '연봉 5천만원의 직장인의 경우, 2024년도 소득 기준으로 산출세액은 552만원입니다. 여기에 근로소득세액공제 29만원을 적용하면, 최종 소득세는 523만원이 됩니다.'}{'query': '사용자의 질문이 "사람을 나타내는 표현은 무엇인가요?"라면, 우리의 사전을 참고하여 질문을 변경하면 다음과 같습니다: "거주자를 나타내는 표현은 무엇인가요?" \n\n만약 사용자의 질문이 다른 주제나 내용을 다루고 있다면, 해당 질문에 맞게 사전을 참고하여 변경할 수 있습니다. 만약 질문이 이미 명확하고 변경할 필요가 없다고 판단된다면, 질문을 그대로 유지할 수 있습니다.', 'result': '사용자의 질문이 "사람을 나타내는 표현은 무엇인가요?"라면, 우리의 사전을 참고하여 질문을 변경하면 다음과 같습니다: "거주자를 나타내는 표현은 무엇인가요?" 사전에서 "거주자"는 국내에 주소를 두거나 183일 이상의 거소를 둔 개인을 의미합니다.'}
-
해결됨회사에서 바로 쓰는 업무자동화 AI 에이전트 (w. n8n, LangGraph)
Streamlit으로 만든 것 Dockerfile 만들어주실 수 있을까요?
UV로 패키지가 관리되고 있는데요. 이거 간단하게 Docker로 올려보려고 하는데요.혹시 Dockerfile 샘플로 올려주실 수 있을까요? :)
-
해결됨회사에서 바로 쓰는 업무자동화 AI 에이전트 (w. n8n, LangGraph)
Gamil Trigger 관련 이슈
Gmail Trigger가 Naver에서 받은 이메일에는 반응하지 않네요? 의도한건지 이슈인지 모르겠지만 저는 당연히 해당 이메일 계정으로 온 모든 메일에 대해 반응할 거라 생각했는데 아니라서 당황했네요. 다른 분들 참고하시라고 글 남깁니다!
-
미해결회사에서 바로 쓰는 업무자동화 AI 에이전트 (w. n8n, LangGraph)
파이썬을 활용한 데이터 전처리
안녕하세요 파이썬 활용한 데이터 전처리 부분에서 14.1 파이썬을 활용한 데이터 전처리.ipynb 위 코드를 가져와서 진행하는 과정에서 아래와 같은 에러가 발생했습니다.UnicodeEncodeError: 'cp949' codec can't encode character '\u2219' in position 1119: illegal multibyte sequence이것저것 파이썬 기본 인코디을 utf-8로 바꾸라고 해서 set PYTHONUTF8=1해당 코드도 사용해 봤는데 결국에는 아래와 같은 에러가 발생해서 질문드리게 되었습니다.TypeError: 'NoneType' object is not iterable 혹시 어떻게 해야할까요?(윈도우 사용중입니다)
-
해결됨회사에서 바로 쓰는 업무자동화 AI 에이전트 (w. n8n, LangGraph)
n8n서버가 멈추는(블로킹) 현상
n8n을 도커로 서버에 올려 사용중인데요, (서버의 스펙은 4코어 16기가)조금만 무거운 작업을 하면 Node.js(단일 이벤트 루프)의 문제인지 서버가 블로킹이 되어 작업이 완료될때까지 서버가 멈추는 현상이 있습니다.멈추는 사이에는 별도의 쓰레드로 요청을 보내도 응답을 주지 않습니다.제가 했던 워크플로는 10메가정도의 zip파일 1개를 ftp에서 다운로드 후 압축해제 하여 압축해제된 json파일을 하나로 합치는 작업입니다.이정도의 작업으로 n8n서버가 멈추는(블로킹) 현상이 일반적인가요?답변부탁드립니다.감사합니다.
-
미해결회사에서 바로 쓰는 업무자동화 AI 에이전트 (w. n8n, LangGraph)
환경변수 설정
파이썬을 활용한 전처리 데이터 강의에서 제공해주신 코드를 실행하면 MissingEnvironmentVariables 에러가 발생합니다..env에 어떤 설정을 해주어야할까요?
-
미해결회사에서 바로 쓰는 업무자동화 AI 에이전트 (w. n8n, LangGraph)
Connection lost
강사님 안녕하세요.n8n을 개인 도메인에 붙여 띄었습니다. 근데 오른쪽 상단에 Connection Lost가 나와서 실행이 다 안되더라구요.Docker도 재시작해보았고, nginx도 재시작 해 보았구요.
-
해결됨RAG를 활용한 LLM Application 개발 (feat. LangChain)
문서 전처리에 관한 질문
안녕하십니까 강사님. 제공해주신 고품질의 강의 너무 잘 보고 있습니다.3.6의 강의 내용 중 문서의 표에 대한 마크다운 전처리를 추천해주셨습니다. 만약 실시간으로 크롤링하는 데이터를 바탕으로 RAG 챗봇을 만든다고 했을 때, 크롤링된 문서를 자동적으로 전처리하는 로직은 따로 없을까요? 사용자가 수동적으로 해야하는 부분일까요? 감사합니다.
-
해결됨회사에서 바로 쓰는 업무자동화 AI 에이전트 (w. n8n, LangGraph)
QNA 챗봇 - 기존 index 에 있는 내용 삭제 문의
강의 잘 듣고 있습니다. 감사드립니다. ^^QNA 챗봇 서비스 기능을 테스트중입니다.구글 드라이브에서 PDF 문서를 읽어와서 벡터 스토어에 저장하는데,수정된 내용으로 업데이트하는 경우,기존 index 에 있는 내용을 삭제하고, 입력하는 방법은 어떻게 구현하면 될까요?
-
미해결RAG 마스터: 기초부터 고급기법까지 (feat. LangChain)
evaluate_retrieval_at_K 함수 문의드립니다.
안녕하세요, krag 라이브러리가 pip 서버에는 등록이 되어있는데 상세한 정보는 찾을 수가 없어서 문의드립니다. 일정 한도 내에서는 무료로 사용할 수 있는 Gemini API를 통해서 검색 성능을 평가중에 있는데, 중간중간 NaN값이 나오길래 추적해봤더니 API 분당 호출 수가 초과해서 값을 호출받지 못하는 경우가 생기더라구요. time.sleep을 걸고싶어도 이게 함수 자체로 전체 데이터프레임을 순회하는지라.. 혹시 delay를 넣을 수 있는 옵션이 있을까요?
-
미해결회사에서 바로 쓰는 업무자동화 AI 에이전트 (w. n8n, LangGraph)
구글드라이드 + n8n 전처리시, 구글 연동이 안됩니다.
구글드라이드 + n8n 전처리시, 구글 연동이 안됩니다. 액세스 차단됨 : n8n 앱이 google 의 인증절차를 완료하지 않았습니다.오류 403 access_denied인터넷 검색해서 적용해도locahosthost:5678...어디를 점검해 볼수 있을까요? local 드라이브에 있는 폴더를 연결할 수는 없나요?
-
미해결RAG를 활용한 LLM Application 개발 (feat. LangChain)
저장 오류
소득세법을 저장하려고 doc파일로 저장을 눌렀는데 왜 안될까요? 파일은 저장되는데 막상 눌러서 들어가보면 빈페이지 밖에 안나와요
-
미해결회사에서 바로 쓰는 업무자동화 AI 에이전트 (w. n8n, LangGraph)
20. txt to sql 1차 개선에서 query질문
수고 많으십니다. 좋은 강의 잘 듣고 있습니다. 20. txt to sql 1차 개선에서 query에서 강의자료에 있는 쿼리라고 붙여 넣기 한게 있는데 어디에 있는지 잘 모르겠습니다. 다운 받은 Json에서 찾아봐도 없어서 어디일까요?
-
미해결RAG 마스터: 기초부터 고급기법까지 (feat. LangChain)
검색기 관련 질문드립니다.
안녕하세요, Langchain RAG 강의 잘 듣고 있습니다. 데이터셋이 방대해질 경우 분명 시간이 지나면서 이제는 사용되지 않은 정보 구식의 정보라고 해야할까요? 그런 것들이 생기는데, 그런 데이터들은 어떻게 필터가 되는지 궁금합니다. 예) Python 2.xx 버전 문서 저장Python 3.xx 버전으로 신규 업데이트 분명 검색을 할 때 동일하게 겹치는 내용이라면 1번과 2번 모두 가져올 것 같은데요! 이 경우 최신 버전으로만 불러올 수 있게 가능한가요??