inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

172만명의 커뮤니티!! 함께 토론해봐요.

과거 채팅이력을 LLM에 줄때 포멧

미해결

RAG 마스터: 기초부터 고급기법까지 (feat. LangChain)

안녕하세요. 강의에서 정의하신 아래의 함수에서 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

  • python
  • 챗봇
  • llm
  • langchain
  • rag
아이테킨 댓글 1 좋아요 0 조회수 97

application.properties에 debug 추가해도 결과가 똑같습니다.

미해결

스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술

안녕하세요. application.properties 에 logging.level.org.apache.coyote.http11=debug 를 추가해도 강사님과 같은 결과가 나오지 않는데 뭔가 잘못된 부분이 있을까요? 추가로, IntelliJ Community 버전에서는 application.properties 자동 완성을 사용할 수 있는 플러그인이 따로 없나요?

  • spring
  • mvc
euphony 댓글 1 좋아요 0 조회수 216

tbl_todo 질문입니다

미해결

코드로 배우는 React 19 with 스프링부트 API서버

강의 12분 55초에 malldb로 들어가서 tbl_todo가 떠야하는데 저는 없네요 그래서 한참 이것저것 찾아보니까 tbl_todo가 root/apidb/에 있네요. 어디가 잘못된건가요?ㅜㅜ

  • react
  • typescript
  • spring-boot
  • jpa
  • jwt
toran8754 댓글 2 좋아요 0 조회수 87

Streaming 관련해서 문의드립니다.

미해결

Next.js 완벽 마스터 (v15): 노션 기반 개발자 블로그 만들기 (with 커서AI)

Stream을 구현할 때 posts, tags 정보를 서버사이드에서 호출하고 promises 를 클라이언트 컴포넌트에 넘겨 use 훅으로 받는데요. 서버와 클라이언트의 경계가 살짝 이해가 안되네요. 서버사이드에서 promise객체를 클라이언트로 던지고 클라이언트에서 promise를 resolve하는 건가요?

  • react
  • 블로그
  • next.js
  • cursor
  • cursorai
현자타임 댓글 2 좋아요 0 조회수 107

응시권을 신청했는데 언제쯤 오나요?

미해결

비개발자도 쉽게 시작하는 코딩 입문 강의: PCCE 합격을 위한 파이썬 기초 & 알고리즘

bms0801@gmail.com 메일로 신청했습니다. 언제쯤 오나요?

  • python
  • 코딩-테스트
삶속에 댓글 1 좋아요 0 조회수 66

수업 코드 제공 관련 문의

미해결

스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술

몇몇 코드들은 강의 중에 바로 복사해 붙여넣어 사용하시는 것 같던데, 혹시 따로 제공되는 코드 파일이 있을까요? 제가 기존에 제공받은 수업 자료 PDF에서 코드를 복사해 붙여넣어 보니 줄바꿈이 이상하게 되거나, 정상적으로 붙여넣기가 되지 않는 경우가 있어서 문의드립니다.

  • spring
  • mvc
갈대 댓글 2 좋아요 0 조회수 120

RequestMappingHandlerAdapter의 Controller 호출 과정

해결됨

스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 대상] 영상 기준: 03:00 ~ pdf 기준: 6.스프링 MVC - 기본 기능.pdf 의 p.48 RequestMappingHandlerAdapter 동작 방식 그림 [질문 내용] 안녕하세요, 영한님. 제가 가진 '호출' 이라는 행위의 동작 방식과 강의(영상 또는 pdf)에서 설명해주신 방식에 괴리가 있어 둘 중 어떤 방식이 적절한 것인지 질문드립니다. 제가 이해한 방식(방식1) RequestMappingHandlerAdapter (이하 핸들러 어댑터)는 Controller (이하 컨트롤러)를 실행(호출)해야 한다. 그런데 클라이언트에게 받은 데이터를 그대로 넘기면 컨트롤러가 받아야 되는 파라미터에 맞지 않는다. 따라서 ArgumentResolver (이하 리졸버)를 호출해서 파라미터에 맞게 변환(빨강, 파랑)해달라고 한다. 핸들러 어댑터는 리졸버로부터 변환된 빨강, 파랑을 받았다. 핸들러 어댑터는 빨강, 파랑을 넘기며 컨트롤러를 호출한다. 강의에서 설명한 방식(방식2) 핸들러 어댑터는 컨트롤러를 호출하기 전, 리졸버에게 빨강, 파랑 파라미터를 요청한다. (리졸버가 작업 모두 완료했다고 가정) 핸들러 어댑터가 컨트롤러를 호출한다. 이때 리졸버가 빨강, 파랑을 컨트롤러에게 넘겨준다. -> 이 부분이 '컨트롤러 호출은 핸들러 어댑터가 하는데 중간에 리졸버가 껴서 파라미터만 넘겨준다'로 받아들여지는데 제가 기존에 알고 있던 '호출' 메커니즘과는 다르다고 생각되어서요. 제가 영한님이 말씀하신 흐름 자체를 잘못 이해한 건지, 아니면 방식1이 적절한 것인지 질문드립니다! 관련 그림

  • spring
  • mvc
dev.rudevico 댓글 3 좋아요 0 조회수 134

주문 하는것도 강의내용에 잇나요

미해결

파이썬 알고리즘 트레이딩 파트2: Interactive Brokers API를 활용한 실시간 알고리즘 트레이딩

주문 하는것도 강의내용에 잇나요

  • python
  • 객체지향
  • 퀀트
ceo7 댓글 1 좋아요 0 조회수 79

OpenAIEmbeddings모델이 사용하는 토크나이저는 뭘까요?

미해결

RAG 마스터: 기초부터 고급기법까지 (feat. LangChain)

안녕하세요. 강의 잘 듣고 있습니다. OpenAIEmbedding모델을 이용해서 텍스트를 벡터화 하는 것까지는 이해가 되었는데, 텍스트를 임베딩모델에 넣을 때, 토크나이징을 한 결과를 input으로 사용하는지, 그렇다면 어떤 토크나이징 모델을 사용하는지 궁금합니다. 아니면 토크나이징 없이 바로 임베딩 모델에 대입하는건가요?

  • python
  • 챗봇
  • llm
  • langchain
  • rag
아이테킨 댓글 2 좋아요 0 조회수 200

수정 업로드 해주신 포인터 강의 자료 관련

해결됨

(2026 최신!) 일주일만에 합격하는 정보처리기사 실기

포인터 관련 강의 2개가 수정 업로드 되었다고 하셨는데 강의 자료는 따로 없나요? 비중이 좀 있는 강의 같은데 자료가 없어서 문의드립니다

  • python
  • java
  • c
  • 정보처리기사
한우태 댓글 2 좋아요 0 조회수 118

메일 자동화 로그인 중복방지문자해결 오류 및 명시적 대기 질문

미해결

[신규 개정판] 이것이 진짜 크롤링이다 - 실전편 (인공지능 수익화)

안녕하세요 강사님 덕분에 그동안 무척 배우고 싶었던 크롤링과 데이터 수집 방법에 대해 많이 배우고 있어서 감사할 따름입니다. 다름이 아니라 네이버 자동화 로그인 과정에서 중복방지문자가 계속 나타나서 질문 드립니다. time.sleep으로 시간도 길게 했고, 시간을 충분히 가진 후(이틀 후)에도 시도했으나 계속해서 중복방지문자가 나타나서 질문드립니다. 혹시 이제 클립보드 복사 붙여넣기의 로그인 방법이 막힌건가요? 그리고 마지막으로 코드 전체를 합쳐서 실행했을 때 ElementClickInterceptedException, NoSuchElementException 오류가 계속 나타나 오류가 뜨는 대부분의 버튼에 명시적 대기를 걸어줬는데, 이렇게 코드를 한꺼번에 실행하려 했을 때는 대부분의 과정마다 모두 명시적 대기를 걸어줘야 하는지도 궁금합니다! user_id = "************" user_pw = "************" # 셀레니움 기본 템플릿 from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.common.keys import Keys import time import pyperclip import random # 크롬 드라이버 생성 driver = webdriver.Chrome() # 페이지 이동 driver.get("https://nid.naver.com/nidlogin.login?mode=form&url=https://www.naver.com/") random_sec = random.uniform(3, 5) # 아이디 입력 id = driver.find_element(By.CSS_SELECTOR, "#id") pyperclip.copy(user_id) id.send_keys(Keys.CONTROL, 'v') time.sleep(random_sec) # 비밀번호 입력 pw = driver.find_element(By.CSS_SELECTOR, "#pw") pyperclip.copy(user_pw) pw.send_keys(Keys.CONTROL, 'v') pw.send_keys(user_pw) time.sleep(random_sec) # 로그인 버튼 클릭 driver.find_element(By.CSS_SELECTOR, "#log\.login\.text").click() from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support import expected_conditions as EC driver.switch_to.window(driver.window_handles[0]) # 네이버 메인 페이지 이동 driver.get("https://www.naver.com") # 드롭다운 메뉴 클릭 driver.find_element(By.CSS_SELECTOR, "#account > div.MyView-module__my_menu___eF24q > div > div > ul > li:nth-child(1) > a > span.MyView-module__item_text___VTQQM").click() # driver.implicitly_wait(10) -> 암시적 대기는 요소가 나타날 때까지만 기다려주는 것일뿐, 클릭가능한상태까지 기다려주진않음 wait = WebDriverWait(driver, 5) # 메일함 버튼 클릭 # driver.find_element(By.CSS_SELECTOR, "#account > div.MyView-module__layer_menu_service___NqMyX > div.MyView-module__service_sub___wix9p > div.MyView-module__sub_left___AIWHR > a").click() # -> 이 코드에서 오류가 뜨는 이유는 드롭다운 메뉴가 나타나기도 전에 이 코드가 실행돼서 그럼 -> 명시적 대기를 걸어줘야 함 mail_button = wait.until(EC.element_to_be_clickable((By.CSS_SELECTOR, "#account > div.MyView-module__layer_menu_service___NqMyX > div.MyView-module__service_sub___wix9p > div.MyView-module__sub_left___AIWHR > a"))) # -> 요소를 찾아 클릭가능한 상태까지 최대 5초간 기다려줌 # mail_button.click() driver.execute_script("arguments[0].click();", mail_button) # 새창으로 전환 driver.switch_to.window(driver.window_handles[1]) # 메일쓰기 버튼 클릭 # driver.find_element(By.CSS_SELECTOR, "#root > div > nav > div > div.lnb_header > div.lnb_task > a.item.button_write").click() write_button = wait.until(EC.element_to_be_clickable((By.CSS_SELECTOR, "#root > div > nav > div > div.lnb_header > div.lnb_task > a.item.button_write"))) write_button.click() receiver = "wjddudtn1618@naver.com" # 받는사람 입력 # receiver_blank = driver.find_element(By.CSS_SELECTOR, "#recipient_input_element") # receiver_blank.click() receiver_blank = wait.until(EC.presence_of_element_located((By.CSS_SELECTOR, "#recipient_input_element"))) receiver_blank.click() receiver_blank.send_keys(receiver) # 제목 입력 title = "안녕" title_blank = driver.find_element(By.CSS_SELECTOR, "#subject_title") title_blank.click() title_blank.send_keys(title) # iframe으로 전환 iframe = driver.find_element(By.CSS_SELECTOR, "#content > div.contents_area > div > div.editor_area > div > div.editor_body > iframe") driver.switch_to.frame(iframe) body = "메일 자동화 프로그램 테스트하는 중인데, 메일 리스트에 너가 있길래 한번 보내봤어" body_blank = driver.find_element(By.CSS_SELECTOR, "body > div > div.workseditor-body > div.workseditor-content") body_blank.click() body_blank.send_keys(body) # 원래 페이지로 전환 driver.switch_to.default_content() # 메일 보내기 driver.find_element(By.CSS_SELECTOR, "#content > div.mail_toolbar.type_write > div:nth-child(1) > div > button.button_write_task").click() # driver.find_element(By.CSS_SELECTOR, "#layer > div > div > div > div.button_area > div.button_area_inner > button.button_send").click() confirm_send_button = wait.until(EC.element_to_be_clickable((By.CSS_SELECTOR, "#layer button.button_send"))) confirm_send_button.click()

  • python
  • 웹-크롤링
wjddudtn1618 댓글 2 좋아요 0 조회수 114

캐글 문제 질문..

해결됨

[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)

안녕하세요 캐글에 있는 타이타닉 문제풀이를 보면 훈련데이터를 훈련/검증으로 나누지 않고 훈련데이터 전부를 가지고 랜덤포레스트 학습을 시킨후에, 또 훈련데이터를 가지고 model.score를 평가하는데 훈련/검증안나누고 이렇게 해도되나요? 어떤풀이는 나누고 어떤풀이는 안나누니까 조금 혼동이 됩니다.

  • python
  • 머신러닝
  • 빅데이터
  • pandas
  • 빅데이터분석기사
worrb1 댓글 2 좋아요 0 조회수 73

캐글 문제 질문

해결됨

[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)

안녕하세요 캐글에 보면 작업형2 예상문제가 있는데 이중에 T2-2 당뇨병여부 문제 풀이를 보면 ROC AUC평가에 대한 부분이 전혀없습니다 그리고 최종결과물에 인덱스가 그냥 0부터 쭉되어있는데 ID값을 넣어주는게 좋지 않나요?

  • python
  • 머신러닝
  • 빅데이터
  • pandas
  • 빅데이터분석기사
worrb1 댓글 2 좋아요 0 조회수 56

tab 을 stack 에 쌓았을 때 문제

미해결

React Native with Expo: 제로초에게 제대로 배우기

<Stack> <Stack.Screen name="(tabs)" options={{ headerShown: false }} /> <Stack.Screen name="modal" options={{ presentation: "modal", headerShown: false }} /> </Stack> 위와 같이 작업하면 탭을 누를 때마가 스택이 쌓이는게 아닌가요? 그러면 물리 백버튼을 눌렀을 때 탭 이동이 될 것 같아서요. 카카오를 예시를 보면 탭은 스택을 쌓지 않고 있어서 탭 이동을 아무리 해도 뒤로 가기를 누르면 탭 이동을 하고 있지 않네요.

  • react
  • react-native
  • 하이브리드-앱
  • typescript
  • expo
박종혁 댓글 2 좋아요 0 조회수 81

wipe data 이후에 npm run android 오류

미해결

React Native with Expo: 제로초에게 제대로 배우기

wipe data 이후에 npm run android 를 실행하면 아래와 같은 오류가 발생합니다. CommandError: No development build (com.devparkoon.rntutorial) for this project is installed. Install a development build on the target device and try again. 강의 영상과 다르게 npm run android 를 실행했을 때 expo 를 다시 설치하는 과정이 없는데 어떤 문제일까요? 위 이슈를 해결하기 위해 eas build 를 다시 하면 되긴 합니다 (10분 넘게 다시 소요됨)

  • react
  • react-native
  • 하이브리드-앱
  • typescript
  • expo
박종혁 댓글 2 좋아요 0 조회수 105

ISR 매커니즘에 대한 궁금증

미해결

Next.js 완벽 마스터 (v15): 노션 기반 개발자 블로그 만들기 (with 커서AI)

안뇽하세요. 몇일 전 구매하고 열강하고 있는 개발자입니다. ISR 매커니즘에 대한 궁금증이 있는데요. 저희가 작성한 코드에 보면 export const generateStaticParams = async () => { const { posts } = await getPublishedPosts(); return posts.map((post) => ({ slug: post.slug, })); }; 이렇게 게시글들을 미리 ISR 하는 코드가 있습니다. 특정 게시글의 slug 정보 기반으로 미리 SSG 만드는 것으로 이해했는데요. 그래서 빌드를 하면 SSG + 두 개의 슬러그 페이지가 존재합니다. (getPubishedPosts의 기본 사이즈가 2개이기 때문) 그런데 제가 궁금한게 위 ISR 적용하기 전에 빌드한 후 상세 페이지에 진입을하면 약 1초 정도? 딜레이가 발생하고 화면이 렌더링이 되는데요. ISR을 적용한 후 기대한 동작은 미리 생성된 두 개의 slug에 대해서는 바로 화면에 보이지만 무한스크롤로 발생한 동적 블로그에 대해서는 빌드 전과 동일하게 1초의 딜레이가 발생하고 이후 접근 시 정적페이지가 생성되어 빠르게 보이는게 맞지 않나요? 하지만 현재 동작을 보면 미리 생성된 slug를 제외한 모든 게시글에 대해 빠르게 화면이 보여 제가 이해한게 아닌가 싶네요. 공식문서를 봐도 이해가 잘되지 않아 확인차 문의드립니다.

  • react
  • 블로그
  • next.js
  • cursor
  • cursorai
현자타임 댓글 2 좋아요 0 조회수 99

Variable Object 질문

해결됨

프론트엔드 마스터클래스

안녕하세요, 좋은 강의 감사합니다. 실행 컨텍스트 부분에서 궁금한 점이 있어서 질문드립니다. 강의에서 Variable Object를 설명해주셨는데, 제가 개인적으로 찾아본 자료들에서는 ES2015부터 실행 컨텍스트가 Lexical Environment, Variable Environment, this binding으로 구성된다고 나와 있더라고요. Variable Object는 그 이전 스펙에서 사용되던 용어인 것 같은데, 혹시 강의에서 이 개념을 선택해서 설명하신 특별한 교육적 의도가 있으셨을까요? 제가 아직 깊이 이해하지 못해서 그런데, 두 방식 중 어떤 것이 JavaScript 동작 원리를 학습하는 데 더 도움이 되는지, 또는 어떤 차이점들이 있는지 알려주시면 감사하겠습니다.

  • javascript
  • react
  • 함수형-프로그래밍
  • 객체지향
  • next.js
hans 댓글 1 좋아요 0 조회수 190

1-5 알고리즘과 친해지기 (2) 질문

해결됨

38군데 합격 비법, 2026 코딩테스트 필수 알고리즘

1. 현재 학습 진도 몇 챕터/몇 강을 수강 중이신가요? 1-5 . 알고리즘과 친해지기 (2) 어떤 알고리즘을 학습하고 계신가요? 최빈값 찾기 여기까지 이해하신 내용은 무엇인가요? def find_max_occurred_alphabet(string): alphabet = {} result = [] maxvalue = 0 for char in string: if char.isalpha(): alphabet[char] = alphabet.get(char,0) + 1 for value in alphabet: maxvalue = max(maxvalue, alphabet[value]) for i in alphabet: if alphabet[i] == maxvalue: result.append(i) return result result = find_max_occurred_alphabet print("정답 = i 현재 풀이 값 =", result("hello my name is dingcodingco")) print("정답 = e 현재 풀이 값 =", result("we love algorithm")) print("정답 = b 현재 풀이 값 =", result("best of best youtube")) 영상 안보고 문제만 보고 한번 풀어봤는데 예시의 hello my name is dingcodingco, we love algorithm, best of best youtube 문자열 전부 최빈값이 여러개라서 원본 문제로 가보니 여러개라면 -1을 반환하도록 되어있어서 조금 바꿔서 저는 리스트로 반환하도록 풀어봤는데 이 방법은 어떨까요? 알파벳 아스키코드로 풀 방법은 생각이 안나서 자바에서는 map에 넣듯이 dictionary에 넣어서 풀어보려고 했습니다 max 메소드는 연습할땐 안쓰는게 좋은데 자바 삼항연산자가 파이썬에서 어떻게 쓰는지 몰라서 일단 max로 해봤습니다

  • python
  • 코딩-테스트
  • 알고리즘
  • data-structure
윤구 댓글 2 좋아요 0 조회수 113

수업 외 질문인데 'tbl'이 무슨 의미인가요???

해결됨

코드로 배우는 React 19 with 스프링부트 API서버

Table 어노테이션에서 이름 지정 시 tbl 이라는 접두사가 붙었는데 무슨 의미가 있는건가요??

  • react
  • typescript
  • spring-boot
  • jpa
  • jwt
항상배고픔 댓글 2 좋아요 0 조회수 363

218. Post Browser 에서 처음 실행 시 CanceledError 발생

해결됨

타입스크립트로 배우는 리액트(React.js) : 기초부터 최신 기술까지 완벽하게

useEffect(() => { const controller = new AbortController(); const fetchPosts = async () => { try { setIsLoading(true); const { data } = await axiosInstance.get( `/posts?_page=${currentPage}&_limit=${limit}&q=${encodeURIComponent(searchText)}`, { signal: controller.signal, }, ); setPosts(data); } catch (e) { console.log(e); if (e instanceof Error && e.name !== "CanceledError") { if (e.message.includes("timeout")) { setError("timeout 오류 발생"); } else { setError(e.message); } } } finally { if (!controller.signal.aborted) setIsLoading(false); } }; fetchPosts(); return () => { controller.abort(); }; }, [currentPage, limit, searchText]); 처음 실행 시(새로고침) console.log(e) 에서 CanceledError {message: 'canceled', name: 'CanceledError', code: 'ERR_CANCELED', config: {…}, request: XMLHttpRequest, …} 이렇게 무조건 잡히는데 왜 그럴 까요? 물론 프로그램 실행 에는 문제가 없습니다.

  • react
  • react-router
  • redux-toolkit
  • zustand
  • react.js
jyuvenia 댓글 3 좋아요 0 조회수 112

인기 태그

인프런 TOP Writers

주간 인기글