고수가 되는 파이썬 : 동시성과 병렬성 문법 배우기 Feat. 멀티스레딩 vs 멀티프로세싱 (Inflearn Original)
안녕하세요. 저는 daemon=True 해도 서브가 모두 돌고 끝납니다. 무슨 이유가 있을까요? # 스레드 실행 함수 def thread_func(name, d): logging.info('Sub-Thread %s: starting', name) for i in d: print(i) logging.info('Sub-Thread %s: finished', name) ... # 함수 인자 확인 # daemon : default False x = threading.Thread(target=thread_func, args=('First', range(20000)), daemon=True) y = threading.Thread(target=thread_func, args=('Second',range(10000)), daemon=True) 19:16:32: Main-Thread: all done 0 1 2 ... 19999 19:16:32: Sub-Thread Second: finished 19:16:32: Sub-Thread First: finished
최적 값을 보장하지 않음에도 최소 개수를 출력 가능한 이유가 궁금합니다. 예를 들어 10 20 80의 경우 80+10/ 20 이나 80+20/10이나 결국엔 2개의 보트가 필요한 건 같고 낭비 공간의 총량도 동일합니다. 하지만 자꾸 돌아보면 최적 값으로 맞추는 로직이 추가 되어야 하지 않을까? 라는 의문이 남습니다.
안녕하세요. get_dummies 관련 문의드립니다. Feature Engineering 강의 듣다가 문의 있어 글 납깁니다. [Pclass:3,sex:male,Age:25,Parch:0,Fare:8,Embarked:Q] 만약에 새로운 위에 있는 데이터를 predict 하고 싶으면, df에 concat 시키고, 다시 get_dummies 후에 해당 Row로 predict 해봐야 되는건가요? 그리고 만약에 embarked에 Z라는 새로운 카테고리가 생기면 다시 학습시켜줘야 되는건가요?
# 코드스니펫 입출력 예제 두번째 라인 print("정답 = ()()( / 현재 풀이 값 = ", get_correct_parentheses("))()(")) 코드스니펫 예제 입출력에 오류가 있는것 같습니다. 문제 조건에도 다음과 같이 명시되어 있고 균형잡힌 괄호 문자열 p가 매개변수로 주어질 때, 주어진 알고리즘을 수행해 올바른 괄호 문자열로 변환한 결과를 반환하시오. 프로그래머스 원문제 링크 조건에도 문자열 p를 이루는 '(' 와 ')' 의 개수는 항상 같습니다. 라는 조건이 있는데 해당 입력케이스는 균형잡힌 괄호 문자열이 아니므로 요구조건에 부합하지 않네요
강사님! 혹시 Title 부분과 Narration을 하나씩 생성할 수 있는 방법은 없나요? 예를 들어, 킬러 주제를 한 가지 뽑아줘 > 위 주제를 토대로 대본을 생성해줘! 위와 같은 형태로요. 그리고 또한 작성된 대본을 spilt 노드를 통해 나눈 후 각 문장에 적합한 이미지를 생성하고 싶은데 가능할까요?
💡 질문 작성 가이드 보다 빠르고 정확한 답변을 위해, 아래 사항을 참고해 질문을 작성해주세요. 1. 간단한 내용은 ChatGPT로 먼저 확인해보세요. 기본 개념이나 용어 설명은 ChatGPT를 활용하는 것이 더 빠르고 효율적일 수 있습니다. 2. 질문하실 때, 아래 내용을 함께 적어주시면 좋아요. 어느 파트인지 풀이 코드 > Bottom-Up 방식의 구현 내가 이해한 내용 + 궁금한점 cost = [[0, 0, 0]] dp = [[-1, -1, -1] for _ in range(N + 1)] 해당 부분을 제거 하고 cost = [list(map(int, input().split())) for _ in range(N)] dp = [[-1, -1, -1] for _ in range(N)] 초기값 처리에서도 1번째가 아닌 0번째 초기화 처리 for문에서도 range(2, n+1)이 아닌 range(1, n) 처리 이렇게 0번째 배열부터 사용하도록 해도 같은 결과를 추출 할 수 있는데 굳이 0번째 배열을 [0,0,0], [-1,-1,-1]로 저장해놓는 이유가 있는지 궁금합니다. 0번째 배열을 쓰는 문제가 있는건지,,, 놓친 부분이 있는건지,, 해서 여쭤봅니다. N = int(input()) cost = [list(map(int, input().split())) for _ in range(N)] dp = [[-1, -1, -1] for _ in range(n)] dp[0][0] = costs[0][0] dp[0][1] = costs[0][1] dp[0][2] = costs[0][2] # DP Table 갱신 for i in range(1, n): # dp[i][0 ~ 2] # dp[i][0] dp[i][0] = costs[i][0] + min(dp[i - 1][1], dp[i - 1][2]) # dp[i][1] dp[i][1] = costs[i][1] + min(dp[i - 1][0], dp[i - 1][2]) # dp[i][2] dp[i][2] = costs[i][2] + min(dp[i - 1][0], dp[i - 1][1])
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (아니오) [질문 내용] 안녕하세요. 컬렉션 조회 최적화 부분에서 페이징 + 검색 조건 관련해서 궁금한 점이 있어서 질문드립니다. 질문) Order 리스트 페이징을 하고 싶은데@BatchSize는 안쓰고 5번처럼 QueryDto직접 쿼리 2번 + map O(0) 방식으로 처리하려고 합니다. 이 때 만약 검색 조건이 toMany 로 맺어진 테이블 (orderItem.quantity, orderItem.item.name 등) 에 있다면 toOne 방향 루트 join fetch 쿼리 할 때 이 조건을 함께 포함시켜면 되는걸까요 (join orderItem .. where .. 같이) 예를들어 item.name이 "tesla"인 item을 포함하고 있는 모든 order를 페이징 적용해서 보여주고 싶은 경우에 어떻게 하면 좋을지 궁금합니다.
강의 : 0104 GEMINI CLI 파이썬 바이브코딩을 위한 환경 설정 OS : Windows 11 Web browser : Chrome 143.0.7499.41 영상에서 사용한 슬라이드로 아래 URL을 알려주셨습니다. 해당 URL에 접근하면 카스퍼스키에서 경고 창을 표시합니다. 확인 부탁드립니다. https://corazzon.github.io/slides/ai_py_dev_env.html
안녕하세요! LangChain 관련 강의를 수강하고 있습니다. 다름이 아니라 응답 속도에 관해서 질문드리고싶은데요. LLM(e.g., OpenAI)에 입력(질문)한다. OpenAI의 API Call이 수행된다. OpenAI에서 응답이 BE로 전달된다. 이 순서가 될텐데. 이 때, 강의를 보면 AIMessage가 금방 도출이 되는데. 질문의 길이가 길고, 전문적이게 된다면 응답의 속도가 느려지는건지 궁금합니다.
안녕하세요^^ 강의 너무 잘 들었습니다. 초보인 저에게 따라가기 쉽게 친절히 설명해주셔서 감사합니다! 보통 유투브 채널 운영하시는 분들은 채널관리가 편리하고 또한 매각/이전 등이 가능한 브랜드채널을 활용해서 유투브 채널을 운영합니다. 브랜드채널은 한 계정의 첫번째 채널 말고 2번째부터 생성되는 채널을 의미하는데요 강의에서는 계정의 첫번째로 생성된 채널에 업로드 되도록 기본설정되어 있는것 같습니다. 업로드 하고싶을 채널을 2번째 또는 3번째 ... 원하는 채널에 업로드 하려면 방법이 있는지 문의 드립니다. 감사합니다.
3.0.2 버전의 경우 readValue가 JacksonException을 throw하는 것으로 타입이 선언되어 있는데요. (unchecked Exception 타입) public <T> T readValue(String content, Class<T> valueType) throws JacksonException Unchecked Exception(상위 에러 타입이 RuntimeException)이지만 강의처럼 try catch 이용하여 JacksonException을 catch 하면 될까요? 아님 RuntimeException 이니 별도로 catch 없이 코드를 작성하는게 좋을까요?
강의 섹션4. 데이터베이스를 지배하라. 챕터에서 아래는 JPA 방식으로 일대다 관계를 가진 데이터를 페치 조인으로 가져오는 예제 코드야. returnnew JpaCursorItemReaderBuilder <Post>() .name( "postBlockReader" ) .entityManagerFactory(entityManagerFactory) .queryString( """ SELECT p FROM Post p JOIN FETCH p.reports r WHERE r.reportedAt >= :startDateTime AND r.reportedAt < :endDateTime """ ) .parameterValues(Map.of( "startDateTime" , startDateTime, "endDateTime" , endDateTime )) .build(); 근데 jdbc 커서 예제에서는 킬구형이 아래처럼 단일 테이블만 조회하는 예제를 사용했어. @Bean public JdbcCursorItemReader < Victim > terminatedVictimReader () { returnnew JdbcCursorItemReaderBuilder<Victim>() .name( "terminatedVictimReader" ) .dataSource(dataSource) .sql( "SELECT * FROM victims WHERE status = ? AND terminated_at <= ?" ) .queryArguments(List.of( "TERMINATED" , LocalDateTime.now ())) .beanRowMapper(Victim. class ) .build(); } 근데 내가 지금 하려고 하는 건 jdbc 커서 방식에서 일대다 관계 테이블 데이터를 조회해서 일일정산 데이터 만드는 기능으로 복습해보려고 하는데, 데이터가 뻥튀기 되서 강의 예제에서 해당 케이스를 찾아보려고 하는데, 못 찾아서 질문글 작성했어. jdbc 방식으로 일대다 관계 데이터를 Reader로 읽어와서 위에 jpa 구조로 매핑하려면 어떻게 해야하는지 알려줄 수 있어? @Bean @StepScope public JdbcCursorItemReader<OrderBatchJoinDto> jdbcCursorReader( @Value("#{jobParameters['orderDate']}") LocalDate orderDate) { LocalDateTime startOrderDate = orderDate.atStartOfDay(); LocalDateTime endOrderDate = orderDate.atTime(23, 59, 59); return new JdbcCursorItemReaderBuilder<OrderBatchJoinDto>() .name("jdbcCursorReader") .dataSource(dataSource) .sql(""" SELECT ob.ORDERS_BATCH_ID, ob.USER_ID, ob.STATUS, ob.ORDER_DATE_TIME, oib.ORDERS_ITEM_BATCH_ID, oib.ORDERS_BATCH_ID, oib.PRODUCT_BATCH_ID, oib.PRODUCT_NAME, oib.PRICE, oib.QUANTITY FROM orders_batch ob LEFT JOIN orders_item_batch oib ON ob.ORDERS_BATCH_ID = oib.ORDERS_BATCH_ID WHERE ob.ORDER_DATE_TIME BETWEEN ? AND ? ORDER BY ob.ORDERS_BATCH_ID, oib.ORDERS_ITEM_BATCH_ID """) .queryArguments(List.of(startOrderDate, endOrderDate)) .beanRowMapper(OrderBatchJoinDto.class) } public class OrderItemBatchDto { private Long id; private Long ordersBatchId; private Long productBatchId; private String productName; private int price; private int quantity; } public class OrderItemBatchDto { private Long id; private Long ordersBatchId; private Long productBatchId; private String productName; private int price; private int quantity; }