안녕하세요 제로초님 next 15버전으로 바뀌고나서 새로 처음부터 다시 강의를 들으면서 만들어 보고 있습니다. next 15버전으로 바뀌고 나서 옛날꺼랑 msw 설정이 바뀌었더라구요 그런데 강의대로 msw 설정을 하니 ssr 적용이 제대로 안되는 것 같습니다. msw 설정 후 페이지의 network 탭에 localhost document의 미리보기 내용이 없습니다. ssr이 된다면 document에 미리보기에 내용이 넘어와야 하는데 msw 설정 후에 없습니다. 옛날에 만들어 놓았던, next14 버전으로 했었던 프로젝트에서는 미리보기에 내용이 잘 담겨 ssr이 잘되고 있고, 15버전으로 진행한 프로젝트에서 layout에 있는 mswprovider 컴포넌트를 없애주니 다시 미리보기에 내용이 생기는 것으로 보아 msw 설정에서 문제가 생긴 것으로 추측됩니다. 아래는 옛날 14 버전으로 진행했던 코드입니다. msw 2.1 버전입니다. "use client"; import { useEffect } from "react"; export const MSWComponent = () => { useEffect(() => { if (typeof window !== "undefined") { if (process.env.NEXT_PUBLIC_API_MOCKING === "enabled") { require("@/mocks/browser"); } } }, []); return null; }; 아래는 지금 하고있는 코드입니다. msw 2.7.3 버전입니다. "use client"; import { Suspense, use } from "react"; import { handlers } from "@/mocks/handlers"; const mockingEnabledPromise = typeof window !== "undefined" // browser일 때 ? import("@/mocks/browser").then(async ({ default: worker }) => { if (process.env.NODE_ENV === "production") { return; } await worker.start({ // msw가 처리할 수 없는 요청이 들어왔을 때 onUnhandledRequest(request, print) { if (request.url.includes("_next")) { // next가 내부적으로 처리하는 url이기 때문에 msw가 처리할 필요 없음 그래서 return return; } print.warning(); }, }); worker.use(...handlers); (module as any).hot?.dispose(() => { worker.stop(); }); console.log(worker.listHandlers()); }) : Promise.resolve(); export function MSWProvider({ children, }: Readonly<{ children: React.ReactNode; }>) { // If MSW is enabled, we need to wait for the worker to start, // so we wrap the children in a Suspense boundary until it's ready. return ( <Suspense fallback={null}> <MSWProviderWrapper>{children}</MSWProviderWrapper> </Suspense> ); } function MSWProviderWrapper({ children, }: Readonly<{ children: React.ReactNode; }>) { // use 사용해서 promise 실행 기다리고 children return use(mockingEnabledPromise); return children; } 제 추측으로는 MSWProvider에 있는 Suspense때문에 ssr 이 안되는 것 같은데, 맞는지 궁금합니다. 그리고 맞다면 next 사용시 msw로 데이터를 mocking 하게 되면 ssr 확인을 어떻게 해야 할까요??
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 그대로 했는데 제 선택자는 선택이 되지 않네요. 어디를 고쳐야 하나요
안녕하세요~ 닭가슴살 과제 해보던 중 첫번째 상품만 출력되어 문의드립니다. 돌려보면 대부분 첫번째 상품만 출력되지만, 어쩔 땐 애매하게 10개정도 출력이 될때도 있고, 좀 복불복이더라구요.. 무엇이 문제일까요?ㅠㅠ from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.common.keys import Keys from bs4 import BeautifulSoup import time import pandas as pd data = [] #크롬 드라이버 생성 driver = webdriver.Chrome() # 페이지 이동 driver.get("https://search.shopping.naver.com/search/all?query=%EB%8B%AD%EA%B0%80%EC%8A%B4%EC%82%B4") html = driver.page_source soup = BeautifulSoup(html, 'html.parser') #스크롤 전 높이 last_height = driver.execute_script("return document.body.scrollHeight") while True: #스크롤 끝까지 내리기 driver.execute_script("window.scrollTo(0,document.body.scrollHeight)") #잠시 대기해줘야, 한번만 작동하지 않고 무한반복함 time.sleep(2) #스크롤 후 높이 new_height = driver.execute_script("return document.body.scrollHeight") #비교 (if, break문) if new_height == last_height : break #스크롤 전 높이 업데이트 last_height = new_height products = soup.select(".product_item__KQayS") for product in products: # 상품명 name = product.select_one(".product_title__ljFM_").text # 상세페이지 링크 link = product.select_one(".product_title__ljFM_>a").attrs['href'] # 가격 price = product.select_one(".price_num__Y66T7").text.split('원')[0].replace(',','') print(name, link, price) data.append([name, link, price])
먼저 좋은 강의 감사합니다. Airflow Limitation 내용 중 Inefficient for Short Tasks 라는 말씀 하셨는데요. 실무에서 Datapipeline 을 구성할때 해당 Task 을 잘게 자르게 되는데, 혹시 경험적으로 기준 시간은 어느 정도 수행 시간 이상으로 Task를 나눠야 효과적일까요?
안녕하세요 강사님 질문이 있습니다. fallback 상태일때는 SEO가 적용이 되지 않는것은 이해가 됐는데 서버에서 요청한 페이지(book/4)를 내려주면 결국 해당 페이지에 대한 SEO가 다시 잘 적용이 되는데 굳이 fallback 상태일때도 SEO를 신경써줘야하는 이유가 있나요?
안녕하십니까, 강의에서 배운 평가지표를 이용하여 anomaly detection을 진행하고자 합니다. 문제는 다음과 같습니다. anomaly detection에서는 TN(이상이 없다고 잘 예측함)비율이 압도적으로 많은 상황입니다. 제 생각에는 ROC-AUC에서 FN 비율이 높아져도 FP비율이 낮다면, 여전히 ROC-AUC에서는 높은 성능을 보인다 생각했습니다. 따라서 FN에 linear하게 반응하는 F1-max를 사용하고자 했습니다. 하지만 주변에서 다음과 같은 답변을 받았습니다. Anomaly detection을 위핸 manual threshold가 문제라는 것 같네요. 해당 부분 분명히 문제가 맞습니다. 하지만 이 부분이 AUROC라는 평가지표가 잘못되었다라는 주장을 하기에는 적절한지 아직 의문입니다. AUROC는 다양한 threshold를 두어 종합적으로 평가하기 때문입니다. 개인적으로 TN의 비율이 압도적인 것은 anomaly를 탐지하는 AD에서는 문제가 되지 않는다고 생각합니다. AUROC에서 역시 TN은 사용되지 않습니다. 모델이 모든 샘플에 대해 normal이라고 말하거나 혹은 그 반대여도 역시 AUROC는 낮아집니다 물론 F1-max도 중요하지만, 제 생각에는 여전히 AUROC로 평가하는 것은 유의미합니다. 하여, 의견이 궁금하기에 글 남깁니다. 이상입니다.
실행 시 에러 나는데 무슨 문제일까요? 2.3 임베딩 모델입니다. --------------------------------------------------------------------------- RateLimitError Traceback (most recent call last) Cell In[81], line 6 2 embeddings = OpenAIEmbeddings( 3 model ="text-embedding-3-small", # 사용할 모델 이름을 지정 가능 4 ) 5 sample_text = "테슬라 창업자는 누구인가요?" ----> 6 vector = embeddings.embed_query(sample_text) 7 print(f"임베딩 벡터의 차원: { len(vector)}") File ... (...) 1031 retries_taken =retries_taken, 1032 ) RateLimitError : Error code: 429 - {'error': {'message': 'You exceeded your current quota, please check your plan and billing details. For more information on this error, read the docs: https://platform.openai.com/docs/guides/error-codes/api-errors .', 'type': 'insufficient_quota', 'param': None, 'code': 'insufficient_quota'}}
프로그래밍 시작하기 : 도전! 45가지 파이썬 기초 문법 실습 (Inflearn Original)
파이썬 수업을 여기서 지금 처음 듣고 있는데 str 이 string 문법? 이라든지 index 원소에 접근하는 인덱스 이런거를 해당 강좌의 앞부분에서 못 본 것 같은데 제가 못 찾는건지요ㅠ.. 무슨 함수인지 아예 처음 듣는데 이미 공유해주신 것 같아서 몇강을 참고하면 좋을지 문의드립니다.
안녕하세요. 사전 구입하여 책을 읽고있는 한 인원입니다. 다름이아니라 책 102쪽 4.11 예제를 제 컴퓨터에서 하려하는데 다음과같은 오류가 뜹니다. 혹시 버전문제일까요? 지금 버전에서 해당 컨텍스트 길이를 보려면 어떻게 수정해야할까요? 추가적으로 큰 문제는 아니지만 책에 오타있는 부분도 기재합니다. 43페이지 딱히 큰 문제는 아니지만 사소하게 변수명이 잘못적혀있습니다..! 해당 장의 다른 변수들은 모두 맞게 작성되어있지만 해당 부분만 오타가있습니다. 크리티컬한 오타는 아니지만 혹여나 도움이 될까 싶어 기재합니다. 지금 절반 정도 읽었는데 읽는 인원이 최대한 잘 이해하고 어려워하지 않도록 매 개념마다 실습을 진행하고 한줄 한줄 코드 해석해주는 것이 느껴지는 책입니다. 강의 등 랭체인 및 LLM 어플리케이션 개발에 항상 큰 도움을 받고있습니다. 좋은 자료 강의 항상 감사드립니다.
1.배열포인터는 첫번째 인덱스 값이 나온다고 하셨었는데 구조체 포인터는 초기값이 뭐가 나오나요? struct Person{ int age = 10; int price = 5; } person1 main(){ struct Person person1; struct Person *ptr = &person1; System.out.printf(“%d”, *ptr); } 2.아래처럼 구조체 명을 명시하지 않은경우엔 구조체 배열, 구조체 포인터를 어떻게 생성하나요? struct { int age = 10; int price = 5; } person1
질문은 동영상 강의에 들어가서 오른쪽에 커뮤니티 버튼을 통해 해주세요. 그래야 어떤 강좌에서 질문하셨는지 알 수 있습니다. 영상에서 몇 분 몇 초 대를 알려주셔야 제가 한 번에 질문 내용 확인이 가능합니다. 이미 다른 누군가가 질문을 한 이력 이 있을 수 있습니다. 질문 게시판을 한 번 확인 부탁드립니다. 학교의 과제나 타 강사의 코드 등 외부 수업 자료에 대해서는 답변하지 않습니다. 제가 다루는 커리큘럼 외의 이론이나, 너무 디테일한 컴퓨터 이론에 대해서는 답변 드리지 않습니다. 시험에 안 나오는 경우가 많고, 나와 봤자 1문제 나오는데 외워야 할 부분이 많은 것 등 (예시: 서브넷 마스크 계산) 질문을 올릴 때 이 글은 모두 지우고 내용을 입력해주세요. 안녕하세요 선생님. 사정이 있어서 시험 시작 15일 전에 시험 준비를 시작한 비전공자 학생입니다. 코딩 관련된 회차 강의를 다 듣고 올려주신 기출 문제를 최근 문제까지 다 풀어봤을 때 24년 2회차 전 까지는 각 회차마다 한 두문제 막히긴 해도 거의 다 맞추던가 복습을 하면 어느정도 커버가 가능할 정도로 자신감이 있었습니다. 그런데 24년 2회차 부터 생각보다 어려운 문제들이 많아서 코딩 2문제 정도는 손을 못댈 정도로 벅차다고 느끼고 있습니다.(물론 아직 시험까진 11일 정도 남았지만 킬러문제를 맞출 수 있을거란 생각이 안들어서요...) 여기서 들은 생각이 선생님께서 추천 해주신 코드문제를 다 맞추고 이론을 두문제 정도 맞추는 전략이 아닌 코드 킬러문제는 버리고 이론문제를 조금 더 맞추는 전략은 어떨지 여쭤보고 싶어 질문드립니다. 그러하면 이론 공부에 시간을 조금 더 투자해야 하는데 어떻게 하는게 좋을까요???