완전 초보를 위한 N8N 설치부터 셀프호스팅까지_DOCKER 실습편 입니다. GIHUB 에서 NVIDIA GPU 유저로 복사해서 설치 하려고 하는데.. 세번째 줄 docker compose --profile gpu-nvidia up을 복사하고 엔터를 치면 아래와 같이 나옵니다. C:\N8N\self-hosted-ai-starter-kit>docker compose --profile gpu-nvidia up time="2025-11-13T13:12:52+09:00" level=warning msg="The \"POSTGRES_USER\" variable is not set. Defaulting to a blank string." time="2025-11-13T13:12:52+09:00" level=warning msg="The \"POSTGRES_PASSWORD\" variable is not set. Defaulting to a blank string." time="2025-11-13T13:12:52+09:00" level=warning msg="The \"POSTGRES_USER\" variable is not set. Defaulting to a blank string." time="2025-11-13T13:12:52+09:00" level=warning msg="The \"POSTGRES_PASSWORD\" variable is not set. Defaulting to a blank string." time="2025-11-13T13:12:52+09:00" level=warning msg="The \"POSTGRES_USER\" variable is not set. Defaulting to a blank string." time="2025-11-13T13:12:52+09:00" level=warning msg="The \"POSTGRES_DB\" variable is not set. Defaulting to a blank string." time="2025-11-13T13:12:52+09:00" level=warning msg="The \"POSTGRES_USER\" variable is not set. Defaulting to a blank string." time="2025-11-13T13:12:52+09:00" level=warning msg="The \"POSTGRES_PASSWORD\" variable is not set. Defaulting to a blank string." env file C:\N8N\self-hosted-ai-starter-kit\.env not found: CreateFile C:\N8N\self-hosted-ai-starter-kit\.env: The system cannot find the file specified.
아래 코드, hub.pull 안되실 경우 from langchain import hub prompt = hub.pull("rlm/rag-prompt") 아래와 같이 변경해 보세요. 저는 LANGSMITH_API_KEY 를 직접 넣었지만, 환경변수에 등록해서 사용하시는게 나을것 같네요. from langsmith import Client LANGSMITH_API_KEY = "ls...." client = Client(api_key=LANGSMITH_API_KEY) prompt = client.pull_prompt("rlm/rag-prompt", include_model=True)
안녕하세요. 시간 가는줄도 모를 만큼 강의를 재밌게 들으며 배워가고 있는 수강생입니다. 강의를 듣던 중 Upstage API 연동이 잘 되지 않아 QnA 게시판을 보았는데, 저를 비롯한 많은 분들께서 Upstage API를 사용하고 있다는 것을 알게되었고 연동 관련해서 어려움을 느끼시는 것 같아 제가 해결한 과정을 같이 공유해보고자 글을 적었습니다. 저도 배워가는 과정인지라 표현이 서툴거나 잘못된 내용이 있을 수 있어 강사님의 피드백도 같이 공유 받을 수 있다면 더욱 좋을 것 같습니다..! 제가 해결한 방법을 결론 먼저 말씀드리면 chunk_list 길이를 찍었을 때 100개 이내인 경우에는 코드가 정상 동작했다는 것입니다. (대부분의 코드는 강사님께서 작성하신 내용을 그대로 따라했습니다.) # 에러 (chunk_list의 length가 100개 이상인 경우) # chunk_list = split_text(full_text, 1500) # 작동 (chunk_list의 length가 100개 미만인 경우) chunk_list = split_text(full_text, 1700) 위와 같이 split_text에서 1500으로 인자를 주었던 것을 1700으로 변경하면 chunk_list의 길이는 100개 미만이 되며, 이를 초과할 경우 400 ERROR 또는 add 작업 중 중간에 멈추며 에러가 발생했습니다. 따라서 저는 이러한 문제의 원인을 아래 내용이라고 추정하며 해결했습니다. 강의 촬영 당시 사용된 법률안에 비해 현재는 개정 등으로 인해 늘어난 문자열 수 1로 인해 인자값을 1500으로 주었을 때 강의 촬영 당시 대비 커져버린 chunk_list의 크기 2로 인해 chromaDB에 add 할 수 있는 개수가 100개 이상 초과하면 발생되는 오류 전체 코드 참고하실 분들은 아래 링크에서 참고하시면 좋을 것 같습니다. https://github.com/C0deH4ter/langchain-basics/blob/main/3.3%20Upstage%20Challenge/rag_without_langchain_chroma(w.Upstage).ipynb
안녕하세요, score 기반 서치를 할 때 특정 유사도 미만이면 결과를 출력해주지 않았는데요 물론.... 프로젝트의 종류, 성질에 따라 다르지겠지만, 보통 스코어가 0.X 이상일 때 부터 그나마 관련이 있는 문서여서 사용자에게 보여줘도 된다 ! 라는 그런 수치가 혹시 있을까요? 본 강의에서는 0.6이라고 정의를 하셨는데 실제 도입할 때는 몇으로 하는지 궁금합니다
추가 질문 드립니다! 현재 업무지침 원본 문서에 챗봇용 추가 정보(예: 부연설명 등)를 직접 삽입하여 feeding 하고 있습니다. 다만, 업무지침이 매년 개정되다 보니 , 개정 시마다 챗봇용으로 추가한 정보들을 새로운 버전에 다시 반영해야 하는 어려움 이 있습니다. 특히 이런 문서 관리는 개발팀이 아닌 현업에서 해야 하는 부분이라 현업 관점에서 문서 버전 관리나 갱신을 보다 효율적으로 할 수 있는 방법 이 있을지 조언을 구하고 싶습니다. 감사합니다.
안녕하세요, 질문드립니다. 사내 업무 챗봇을 만드는 과정에서 질문 드립니다. 답변의 일관성 관련 현재 챗봇 테스트 중인데, 동일한 질문임에도 답변이 조금씩 달라집니다. 서비스 운영 시에도 직원들이 한 질문에 대해 일관된 답변을 받아야 문제점을 정확히 파악할 수 있을 것 같아, 같은 질문에는 동일한(유사한) 답변이 나오도록 설정하고 싶습니다. 다만 현재 history_aware_retriever 를 사용하고 있어서, 이전 대화 맥락이 다르면 동일한 질문이라도 검색되는 문서와 답변이 달라질 수 있다는 점 을 확인했습니다. 이때 이전 대화 맥락이 있더라도 질문이 동일하면 동일한(비슷한) 문서가 검색되도록 하거나 답변의 편차를 최소화 하는 방법이 있을지 궁금합니다. RAG 검색 우선순위 관련 현재 2개 문서(A, B)에 대해서 RAG를 적용하고 있습니다. 이때 A문서에서 가장 유사한 chunk를 먼저 검색하고, 유사한 chunk가 없는 경우 B문서에서 chunk를 찾도록 하고 싶습니다. 제가 생각한 방법은 2개인데, 어떤 접근이 더 좋을지 또는 더 나은 방법 있을지 문의드립니다. 1안) 단일검색 + A문서 우선랭킹 A와 B를 동시에 검색한 후, 뽑힌 문서 중 A결과를 먼저 선택하는 방법 (k=2 예정) 후보: [A1, B1, B2, A2] → 최종: [A1, A2] 후보: [A1, B1, B2, B3] → 최종: [A1, B1] 2안) 계단식 검색 1차로 A만 검색 후 임계치 미달 시 B문서 검색하는 방식입니다. 다만 임계치를 결정하는 것이 어려울 것 같고, langchain 만으로 구현이 가능할지 모르겠습니다. langgraph를 사용하면 쉽게 할 수 있는 방법이 있을까요? 감사합니다!
강사님 안녕하세요. 수익형 AI Agent n8n 전문가 강의 를 수강하다 강사님 강의가 재밌어서 이 강의를 또 수강하고 있는 학생입니다. (최근 base64로 한참 골머리를 앓았었죠^^;) 제가 전문가 과정에서 수업했을때는 호스팅에서 도메인을 만들고 SSL 통해서 https가 적용된 상태입니다. 이럴땐 지금 강의해주시는 내용에서 NGROG 설정 단계를 건너뛰고 제 도메인 고유주소(https://healthyagent.kr)을 써도 되는걸까요?
위와 같이 에러가 나네요. ㅠ..ㅠ OpenAI에 물어보니 Add Option에서 Add Option Manually나 Expression Editor에 들어가서 q {{ $json.chatInput }} 입력하고 Execute Step을 다시 눌러보면 된다고 하는데... Add Option에 해당 메뉴가 아예 없습니다. ^^+ Q&A를 찾아보니 해당 게시글이 몇 개 있는데... 당췌 무슨 말인지 잘 모르겠어요. ㅠ..ㅠ step by step으로 화면 캡쳐해서 해결 방법을 좀 보여주시면 안될까요? 이제4강인데... 벌써 포기할 수는 없어요. 부탁드려요~
안녕하십니까! 강병진 강사님! 강의를 수강하고 인터뷰도 보면서 많은 에너지와 영향을 받았습니다. 정말 감사드립니다! 강병진님의 langchain강의 커리큘럼에서 n8n을 제외하고 모두 수강하였습니다. 덕분에 RAG를 어떻게 구성하고 어떤식으로 정확도를 향상시킬 수 있는지도 배웠습니다. 다름이 아니라 저는 현재 대학교 3학년으로써 프로젝트를 진행하고 싶은데 강병진님 같은 훌륭하신 선배 개발자님께서 좋게 보실 만한 프로젝트가 어떤 프로젝트인지 조언을 구하고 싶습니다. 단순 챗봇을 구현해보기에는 기업에서 이러한 것이 많이 중요할까? 라는 걱정도 있습니다. 기업에서는 어떤식으로 RAG를 사용하고 원하는 경험이 무엇일까 궁금합니다. 저는 실무에서 RAG를 어떤식으로 사용하는지도 잘 모르고 선배님들께서 이러한 기술로 어떤 업무들을 하시는지도 잘 모릅니다. 그래서 어떤 방향성으로 준비해야 할지 잘 모르겠습니다. 만약 강병진님께서 같이 일할 주니어를 뽑으신다면 어떤 프로젝트 경험이 있는 주니어를 뽑으실 지 가능하신다면 조언 한번만 부탁드리고 싶습니다! 현재 사용할 수 있는 기술은 알려주신 langchain관련 기술과 fastapi로 백엔드 구현이 가능합니다. 도메인마다 원하는 방향성이 다르겠지만 프로젝트 기획하는 단계로써 좋은 출발을 하고 싶어서 질문드립니다! 계신 시간대로 저녁일거라 예상되는데 좋은 저녁 보내시길 바랍니다ㅎㅎ 감사합니다!
어떤 강의에 대한 질문인지 자세하게 알려주시면 답변을 드리는데 도움이 됩니다. 스크린샷 윈도우키 + 쉬프트키 + S(윈도우) 을 자세히 첨부하시면 답변 드리는데 많은 도움이 됩니다. 동영상 재생 관련 같은 인프런 서비스 관련 문의는 1:1 문의하기를 이용해 주세요 하루에 06시, 정오, 자정 이렇게 스케줄을 해놨는데, 수동으로 할 때는 텔레그램 수신까지 확인했는데, 스케쥴로는 해당 시간에 작동을 안합니다. 제가 확인할 옵션이 있을까요?
첫번째 강의에 대한 질문입니다. 제 노트북에는 Hyper그게 없어서 일단 없이 나머지 2개를 체크하고 넘어갔습니다. 그리고 docker를 설치했습니다 docker는 설치된 것처럼 보이는데, 그 다음 단계 self host에서 제 gpu가 Intel(R) Iris(R) Xe Graphics 이건데 모르고 그냥 nvidia걸로 n8n host를 했습니다. docker compose --profile gpu-nvidia up 이걸 넣었더니 variable not found라고 뜹니다. 이런 경우에는 어떻게 해야되나요?
<추가> youtube-transcript 오류를 위한 무료 API 분석부터 직접 서버 구축까지! 8월 경에 추가된 강의로 보이는데, 지금은 kome.ai도 막힌 것으로 보입니다. 영문, 국문 사이트 url 여러가지를 시도해봤는데, 제가 해본 것은 모두 저작권 문제로 제공할 수 없다는 피드백만 나옵니다.
안녕하세요. 세션 관련으로 문제가 있는게 아닌가 해서 질문드립니다. store = {} # ❌ 전역 변수 - 모든 사용자 공유 def get_ai_response(user_message): # ... config={ "configurable": {"session_id": "abc123"} # ❌ 고정된 ID } ❌ 모든 사용자가 "abc123" 세션 공유 ❌ 사용자 A, B, C의 대화 맥락이 섞임 ❌ 실제 배포하면 문제 발생 해결 방법으로 동적인 세션 ID를 부여하는 것을 클로드는 추천을 해주던데 클로드 말대로 해볼까요?