학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 여기에 질문 내용을 남겨주세요. 문제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를 나눠야 효과적일까요?
안녕하세요. 제네릭 하한 바운드(super) 관련해서 질문 드립니다. 상한 바운드(extends) 같은 경우에는 현재 실무에서도 유용하게 사용하고 있는데요. 다만 하한 바운드는 실무에서 한번도 사용해본 적이 없습니다. 하한 바운드는 결국 Object까지 거슬러 올라갈 수 있기 때문에 이점이 없다고 생각하고, 보통은 상한 바운드로 해결이 되었기 때문인데요. 혹시 하한 바운드에 대한 활용 사례를 간단히 설명해주실 수 있으실까 해서 질문 드립니다!
안녕하세요 강의 듣다가 문득 궁금한점이 생겨서 질문드립니다. ArticlePageResponse 클래스에 List<ArticleResponse> articles; 를 구성으로 하여 클래스를 생성해주셨는데 ArtlcieResponse를 상속하여 만들어진 ArticlePageResponse를 활용하여도 상관 없을까요?? 자바, 스프링을 동시에 공부하고 있다보니.. 주니어의 허접한 질문에 답변해주시면 감사드리겠습니다..
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예 [질문 내용] Thread 의 yield 함수에 대해서 질문드립니다 . 양보를 할지 말지 에 대한 hint만 주는것이고 스케쥴링이 알아서 양보 여부에 대해 정한다고 하셨는데 만약에 양보를 하게되면 que의 제일 뒤로 가게 되는건가요? 만약에 que에 10개의 일이 쌓여있으면 양보를 하게되면 10개가 다 끝나고 실행 되는 건지 아니면 1~~n개가 실행되고 그다음에 실행 되는 건지는 모르는 건가요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 안녕하세요! 항상 좋은 강의 감사드립니다. BlockingQueue는 스레드가 동시에 접근하였을때 동시성 제어를 위한 자료 구조인데 세마포어 개념도 동시에 스레드가 접근 하였을때 가능한 스레드 수를 제어하는 개념인 것을 공부하였습니다. 어떤 상황에서 BlockingQueue 를 쓰고 어떤 상황에서 세마포어를 쓰는게 더 좋을까요? 락을 획득하였을떄 Queue 는 FIFO 구조이므로 순서를 보장해주고 싶을 떄 BlockingQueue 를 쓰는게 좋나요? 세마포어는 스레드가 직접 자원을 획득하기 전까지 기다리니까 동기이고 비동기는 큐에 넣고 다른 일을 하러 가는 즉 호출한 함수가 처리 결과를 기다리지 않는 비동기여서 동기/ 비동기 차이를 구분하고 싶을때 쓰는게 둘을 구분해서 쓰는게 좋을까요?
안녕하십니까, 강의에서 배운 평가지표를 이용하여 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로 평가하는 것은 유의미합니다. 하여, 의견이 궁금하기에 글 남깁니다. 이상입니다.
========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 안녕하십니까 선생님, 영속성 컨텍스트의 변경 감지에서 질문있습니다. 강의 내용 중 엔티티 클래스에는 가급적 Setter를 사용하지 말라고 하셨는데(특히 실무에서) 변경 감지라는 게 엔티티를 조회하여 영속성 컨텍스트에 저장을 해야 이 영속성 컨텍스트의 스냅샷을 통해 엔티티 필드의 값에 변경이 일어났을 때 update를 시키는 것이고 결국 엔티티의 필드를 수정 해야 하는데 그럼 필드를 수정하기 위해선 또 결국 Setter를 사용할 수밖에 없는 것 아닌가요???
실행 시 에러 나는데 무슨 문제일까요? 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'}}
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 안녕하세요, 강의 수강 중 질문이 생겨 여쭤보게 되었습니다. 스레드의 생명 주기 - 코드 강의 파트에서 Thread.sleep(1000);를 입력하여 메인 스레드를 잠시 멈추는데, 메인 스레드의 이름이 Thread라서 Thread.sleep을 하는 것일까요 ? 아니면, sleep 메서드가 static이어서 이렇게 사용되는지 궁금합니다.
프로그래밍 시작하기 : 도전! 45가지 파이썬 기초 문법 실습 (Inflearn Original)
파이썬 수업을 여기서 지금 처음 듣고 있는데 str 이 string 문법? 이라든지 index 원소에 접근하는 인덱스 이런거를 해당 강좌의 앞부분에서 못 본 것 같은데 제가 못 찾는건지요ㅠ.. 무슨 함수인지 아예 처음 듣는데 이미 공유해주신 것 같아서 몇강을 참고하면 좋을지 문의드립니다.
안녕하세요. 사전 구입하여 책을 읽고있는 한 인원입니다. 다름이아니라 책 102쪽 4.11 예제를 제 컴퓨터에서 하려하는데 다음과같은 오류가 뜹니다. 혹시 버전문제일까요? 지금 버전에서 해당 컨텍스트 길이를 보려면 어떻게 수정해야할까요? 추가적으로 큰 문제는 아니지만 책에 오타있는 부분도 기재합니다. 43페이지 딱히 큰 문제는 아니지만 사소하게 변수명이 잘못적혀있습니다..! 해당 장의 다른 변수들은 모두 맞게 작성되어있지만 해당 부분만 오타가있습니다. 크리티컬한 오타는 아니지만 혹여나 도움이 될까 싶어 기재합니다. 지금 절반 정도 읽었는데 읽는 인원이 최대한 잘 이해하고 어려워하지 않도록 매 개념마다 실습을 진행하고 한줄 한줄 코드 해석해주는 것이 느껴지는 책입니다. 강의 등 랭체인 및 LLM 어플리케이션 개발에 항상 큰 도움을 받고있습니다. 좋은 자료 강의 항상 감사드립니다.
베스트 프랙티스 6.무조건 Optional이 좋은 것은 아니다 부분을 설명 하실 때 "값이 없으면 예외를 던지는 것"이 더 자연스러운 상황에 대한 설명 부분에서 궁금한 것이 생겨서 질문드립니다. 예를 들어 특정 ID 기반으로 User 엔티티를 찾는 DBA 코드가 있다고 할 때 반환타입을 Optional<User>가 아닌 User로 했을 때 클라이언트 코드쪽에서는 if (user == null) { throw new NotFoundException("..."); } 아래와 같은 Optional을 사용한 코드보다 위와 같은 이런 코드가 더 낫다는 걸로 받아들이면 될까요?? findUserById(userId) .orElseThrow(() -> new NotFoundException("..."));
========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. UsernameOnly 인터페이스 타입과 지네릭스 타입으로 결과는 문제 없이 동작하지만 UsernameOnlyDto 타입으로 결과 값을 받으려고 findProjectionsByUsername를 호출하면 type mismatch 오류가 생깁니다. Specified result type [study.datajpa.dto.UsernameOnlyDto] did not match Query selection type [study.datajpa.entity.Member] - multiple selections: use Tuple or array List<UsernameOnlyDto> result = memberRepository.findProjectionsByUsername("m1"); package study.datajpa.dto; public class UsernameOnlyDto { private final String username; public UsernameOnlyDto(String username) { this.username = username; } public String getUsername() { return username; } } // List<UsernameOnly> findProjectionsByUsername(@Param("username") String username); List<UsernameOnlyDto> findProjectionsByUsername(@Param("username") String username); <T> List<T> findProjectionsByUsername(@Param("username") String username, Class<T> type); org.springframework.orm.jpa.JpaSystemException: Specified result type [study.datajpa.dto.UsernameOnlyDto] did not match Query selection type [study.datajpa.entity.Member] - multiple selections: use Tuple or array at org.springframework.orm.jpa.vendor.HibernateJpaDialect.convertHibernateAccessException(HibernateJpaDialect.java:341) at org.springframework.orm.jpa.vendor.HibernateJpaDialect.translateExceptionIfPossible(HibernateJpaDialect.java:241) at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.translateExceptionIfPossible(AbstractEntityManagerFactoryBean.java:560) at org.springframework.dao.support .ChainedPersistenceExceptionTranslator.translateExceptionIfPossible(ChainedPersistenceExceptionTranslator.java:61) at org.springframework.dao.support .DataAccessUtils.translateIfNecessary(DataAccessUtils.java:343) at org.springframework.dao.support .PersistenceExceptionTranslationInterceptor.invoke(PersistenceExceptionTranslationInterceptor.java:160) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:184) at org.springframework.data.jpa.repository.support .CrudMethodMetadataPostProcessor$CrudMethodMetadataPopulatingMethodInterceptor.invoke(CrudMethodMetadataPostProcessor.java:136) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:184) at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:223) at jdk.proxy2/jdk.proxy2.$Proxy149.findProjectionsByUsername(Unknown Source) at study.datajpa.repository.MemberRepositoryTest.projections(MemberRepositoryTest.java:403) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at java.base/java.util.ArrayList.forEach(ArrayList.java:1511) at java.base/java.util.ArrayList.forEach(ArrayList.java:1511) Suppressed: org.springframework.transaction.UnexpectedRollbackException: Transaction silently rolled back because it has been marked as rollback-only at org.springframework.transaction.support .AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:804) at org.springframework.transaction.support .AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:758) at org.springframework.test.context.transaction.TransactionContext.endTransaction(TransactionContext.java:135) at org.springframework.test.context.transaction.TransactionalTestExecutionListener.afterTestMethod(TransactionalTestExecutionListener.java:272) at org.springframework.test.context.TestContextManager.afterTestMethod(TestContextManager.java:488) at org.springframework.test.context.junit.jupiter.SpringExtension.afterEach(SpringExtension.java:275) ... 2 more Caused by: org.hibernate.query.QueryTypeMismatchException: Specified result type [study.datajpa.dto.UsernameOnlyDto] did not match Query selection type [study.datajpa.entity.Member] - multiple selections: use Tuple or array at org.hibernate.query.sqm.internal.SqmUtil.throwQueryTypeMismatchException(SqmUtil.java:1272) at org.hibernate.query.sqm.internal.SqmUtil.verifyResultType(SqmUtil.java:1209) at org.hibernate.query.sqm.internal.SqmUtil.verifySelectionType(SqmUtil.java:1159) at org.hibernate.query.sqm.internal.SqmUtil.verifySingularSelectionType(SqmUtil.java:1114) at org.hibernate.query.sqm.internal.SqmUtil.checkQueryReturnType(SqmUtil.java:1088) at org.hibernate.query.sqm.internal.SqmUtil.checkQueryReturnType(SqmUtil.java:1049) at org.hibernate.query.sqm.internal.SqmUtil.validateQueryReturnType(SqmUtil.java:1040) at org.hibernate.query.sqm.tree.select .SqmSelectStatement.validateResultType(SqmSelectStatement.java:153) at org.hibernate.query.sqm.internal.QuerySqmImpl.<init>(QuerySqmImpl.java:240) at org.hibernate.internal.AbstractSharedSessionContract.createCriteriaQuery(AbstractSharedSessionContract.java:1483) at org.hibernate.internal.AbstractSharedSessionContract.createQuery(AbstractSharedSessionContract.java:1443) at org.hibernate.internal.AbstractSharedSessionContract.createQuery(AbstractSharedSessionContract.java:143) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at org.springframework.orm.jpa.SharedEntityManagerCreator$SharedEntityManagerInvocationHandler.invoke(SharedEntityManagerCreator.java:320) at jdk.proxy2/jdk.proxy2.$Proxy136.createQuery(Unknown Source)