sqlalchemy 강의 내용에 보면 connection pool에 대한 이론과 실습 설명이 있었습니다. 헌데 비동기를 이용하여 하나의 connection pool만 사용하는 것으로 실습과 코드가 마무리 되더군요. 제가 생각할 때, connection pool을 제대로 사용하기 위해서는 사용 가능한 모든 pool 을 병렬로 처리해야 하지 않을까란 생각이 들었습니다. 하지만, 비동기 병렬 처리를 하게 되면 트랜잭션 락으로 인해 race condition 상태 등의 더 복잡한 문제가 발생할거 같은데, 사용하는게 맞는가란 생각도 들었습니다. 이에 아래와 같은 질문을 드리려 합니다. 1. 실무에서 사용시 connection pool로 할당한 수만큼 비동기 병렬로 처리를 하는게 맞는지요? 2. 만약 맞다면, 트랜잭션 락은 어떻게 구현하여 사용하는게 일반적인지요? 혹은, 예제와 달리, fastapi에서는 요청이 들어오는대로 각각의 connection pool에 할당을 하고 10개가 넘는 경우는 대기를 하다 반환된 pool에 배치되는건지요?
7-1 서버 액션 강의를 수강하는 중 page.tsx:75 Server Error: Route "/book/[id]" used params.id . params should be awaited before using its properties. 라는 문구와 함께 book > [id] 폴더의 page.tsx에서 404 오류가 발생하여 화면이 보여지지 않아 해결을 위해 다양한 시도를 해보던 중 해당 강의의 예제 코드(section7 - chapter1)를 가져와 사용했더니 (with-searchbar) > error.tsx에서 (0 , util_ delay__WEBPACK_IMPORTED_MODULE_3__.delay) is not a function Error 위 와 같은 오류가 뜹니다. 어떻게 해결해야할까요?
안녕하세요 섹션4의 next-auth 를 수강하고있습니다. next-auth를 사용하는 이유가 무엇인가요? 보통 백엔드에서 로그인 기능을 구현하는 것이 일반적이라고 알고 있습니다. next-auth는 백엔드가 로그인 기능을 구현하지 않았을 때 사용하는 것인가요? 아니면 이미 백엔드에서 구현한 로그인 API를 사용하기 위해서도 next-auth를 사용하는 경우가 있나요?
안녕하세요! Next 강좌를 보던 중 헷갈리는게 있어 질문을 올리게 되었습니다! 다름이아니라, 현재 next15에서 getServerSideProps 등이 사라진걸로 알고있는데 그럼 서버사이드 렌더링을 서버 컴포넌트로 대체하는건지 여쭤보려고 합니다! 서버사이드 렌더링과 서버 컴포넌트는 다른 개념이라고 알고있는데 결국 서버사이드 렌더링을 서버 컴포넌트를 이용해서 구현하는 것인지,, 그게 궁금합니다!
회원가입후 회원가입완료되면 자동으로 메인페이지 이동해야 하는데, 라이디렉트가 안되고 있습니다. db는 확인해보니 제대로 전송되고 있고요. 데이터 또한 정상적으로 200 떠서 넘김 처리한거 같은데 뭐가 말썽인지 모르겠습니다. 기존꺼 듣다가 15로 업데이트 해서 패키지로 기존에 싹다 날리고, npm i로 다시 설치 했습니다. 그래도 안되서 문의드려요. 1. env, 2.handler, 3.browser, 4.https, 5.auth 6.기타 컴포넌트 그대로 복사해서 붙여놨는데도 문제가있네요. 그리고 추가로 가입하기 버튼후 새로고침 안하면 계속 대기중으로 표시되는것 같습니다. 회원가입 시 프론트서버 회원가입 시 백엔드 서버(npm run start:dev) 회원가입시 브라우저콘솔( 이부분은 확인해보니 매우느리게 status가 200으로 처리가 되었네요) 확인사항: 방금 https://github.com/ZeroCho/next-app-router-15 으로 그대로 zip파일열어서 그대로 실행시켜 봤는데 제 코드랑 같은 현상이 일어나는걸로 봐서는 백엔드 혹은 백엔드와 상호작용에서 뭔가 문제가 있는것 같은데 혹시 문제해결을 알수있을까요? *추가로 새로보시는 분들은 상관없는데, 기존에 보시다가 변경되신 분들은 지금 강의 너무 혼란스럽습니다. 진행자 입장에서는 크게 변한게 없다고 하겠지만, 시청하는 입장에서는 패키지 버전부터, 기타 등등 이 바꼈고, 이해안가는 부분만 해당 강의를 시청할려고 다시 듣는데 기존꺼랑 새로운거랑 그냥 아예 섞여버려서 강의가 가독성이 지금 너무 떨어지고있습니다. 인트로부분에 15버전수정은 15버전이라고 기재한다고 했는데, 그것도 일부분만 하고 나머지도 슬쩍 변경이 됬는데, 아예 기존것처럼 해놔서 더 혼동이 오네요. 차라리 업데이트를 한번에 하시지 왜 진행도중에 하시는지 ..조금 불편합니다.. 나중에 참고해주시면 감사하겠습니다.
안녕하세요. 군대에서 정말 잘 듣고있습니다. 아무래도 싸지방이다보니 codespace로 동작시켰는데요. 다름이 아니라 셀레니움 부분을 공부하던 중 어찌저찌해서 driver를 연결까진 했으나, 화면이 뜨지 않아서 질문드립니다. 에러가 나는 것은 아니지만, 아마 GUI가 설정이 안되어있어서 그런 것 같습니다. 어떻게 해야할까요? 아래는 driver = webdriver.Chrome()를 codespace에 맞게 변경한 코드이고 from selenium import webdriver from selenium.webdriver.chrome.service import Service from selenium.webdriver.chrome.options import Options # ChromeDriver 경로 명시 chromedriver_path = "/usr/local/bin/chromedriver" # ChromeDriver 경로 chrome_path = "/usr/bin/google-chrome" # Chrome 브라우저 경로 (시스템에 따라 다를 수 있음) # Chrome 옵션 설정 options = Options() options.add_argument("--headless") # GUI 없이 실행 options.add_argument('--no-sandbox') options.add_argument('--disable-dev-shm-usage') options.binary_location = chrome_path # Chrome 브라우저 경로 설정 # ChromeDriver 서비스 설정 service = Service(chromedriver_path) # WebDriver 생성 driver = webdriver.Chrome(service=service, options=options) 아래는 이로인해 나타나는 화면입니다. driver.get() 등등의 메소드를 이용하면 title, current_url의 결과로 잘 작동되는 것을 알 수 있습니다. 하지만, 화면이 바뀌지 않아서 문제입니다. 앞에서도 언급했지만, GUI를 codespace에서 설정하는 방법을 알아야할 거 같은데 쉽지 않습니다.. GUI가 없다보니 headless를 설정할 수밖에 없었구요..
안녕하세요 선생님 얼마전 머신러닝 완벽가이드 강좌에 소프트맥스 질문 드렸던 사람입니다. 저는 소프트맥스 연산에 대한 하드웨어 가속기 설계 연구를 진행하고 있는 석사 과정생입니다. 그 때 남겨주셨던 답변에 대해 답을 드리면, Softmax의 Input 정밀도라는 것은, 마지막 FC layer를 통과한 후, Softmax층의 input으로 들어가는 값에 몇 bit를 할당할 것이냐에 관한 내용입니다. 즉 제가 알고 싶은 내용을 다시 정리해보면 다음과 같습니다. softmax의 input (혹은 output도)에 많은 bit가 할당되면, H/W resource가 커지게 되므로, 모델의 accuracy를 크게 저해하지 않는 수준에서 어느 정도의 정밀도를 유지해야 하는지 알고 싶습니다. 하여 모델에서 softmax input 전에 따로 텐서 안의 값들을 특정 소수점 자리에서 반올림 해주는 함수를 정의해 반올림을 거치거나, 기존의 FP32를 FP16으로 casting을 거치도록 하여 좀 더 낮은 정밀도에서 잘 돌아가는 지 시뮬레이션을 해보는 중이었습니다. 저의 시뮬레이션 내용은 아래에 첨부하겠습니다. (rounding의 경우는 텐서 안의 값들이 제대로 반올림이 안된 것인지, 아니면 다른 이유가 있는 것인지.. 소수점 10번째에서 rounding을 하든, 20번째, 30번째에서 하든 accuracy에 큰 변화가 없고 거의 36프로 정도를 보였습니다.) 또 일반적으로 H/W설계 시에 floating point보다 fixed point가 구현이 훨씬 간단하며, 리소스 사용량이 매우 적은데, 소프트웨어적으로 모델을 학습시킬 때의 데이터는 대부분 float 32 또는 float 64를 이용하는 것 같습니다. 이는 역전파 과정에서 높은 정밀도가 필요하기 때문이 아닐까 싶은데, 모델 학습 시에 fixed point를 사용했을 때 발생할 수 있는 문제점이 있을까요 ? (소수점 10째자리에서 반올림을 하든, 20,30째자리에서 반올림을 하든 이론상으로는 정밀도가 높아질수록 accuracy가 높아져야 될 것 같은데 제 시뮬레이션 상으로는 모두 36프로의 정확도를 보여 코드에 문제가 있는 것인지, 아니면 알고리즘적으로 문제가 있는 것인지 궁금합니다.) 또한, FP16으로 표현 가능한 최대 정밀도의 값들이 훈련 시에 자주 사용되는지, 실제로 필요한 수준의 정밀도인지 궁금합니다. softmax 층의 input으로 들어가는 logit값(?)들의 range가 어느 정도인지도 궁금합니다. 아마 모델과 사용하는 데이터에 따라 크게 달라질 것 같기는 한데, 제가 읽었던 softmax accelerator관련 논문들에서는 일반적으로 softmax의 input의 range를 [-10,10]으로 가정을 했습니다. (알고리즘 분야가 아닌 하드웨어 논문들이기는 합니다..ㅠㅠ) 허나 실제 학습 시에 floating point를 사용한다는 것은 분명 logit값이 10보다 매우 큰 값이기 때문일 것 같은데 왜 논문들에서는 저런 범위를 가정했는지 궁금하여 든 생각이 혹시 practical한 모델 내에서는 softmax로 들어가기 전에 특정 범위 안으로 들어가도록 전 처리를 해주는 layer가 따로 있는 것인지 궁금했습니다. 또 학습이 점점 진행되면서 logit 값이 학습 후반부로 갈수록 일반적으로 수렴하는 분포(?)가 있는 것인지 궁금합니다.. (epoch별로 logit 값을 출력해보고 싶은데, 아직 코딩에 익숙치 않아 난항을 겪고 있습니다) 본질적으로 softmax를 사용하는 이유가 궁금합니다.. multi classification에서 결국 하나의 class로 분류하는 것이 목적인데, 그러면 최종 logit값들 중 가장 큰 값을 선택하면 되는데 왜 굳이 softmax를 통해 확률 분포를 만든 후에 가장 높은 확률의 class로 선택하는지가 궁금합니다. (어차피 softmax를 취한 후의 maximum이나 취하기 전의 maximum이나 같을텐데) ( 시뮬레이션 내용 ) 지난 번의 코드는 깃헙에서 임의로 가져온 코드라 조금 더 제대로 된 코드로 실습하고자 이번에는 선생님의 강의 자료인 VGG_Practice 실습 코드를 이용했습니다. 실습 코드의 모델 정의 부분에서 소프트 맥스 layer 직전에 rounding, 혹은 casting하는 부분을 추가한 것 외에 달라진 점은 없습니다. 그림 1: float 16 그림 2. float 16 결과 그림 3. rounding (소수점 10째자리에서 반올림) 그림 4. rounding 결과 회로 설계 관련 연구를 진행하다 보니 AI 알고리즘에 대한 지식이 부족하여 다소 난해하게 질문드리게 된 점 정말 죄송합니다.. 또 하드웨어적 관점에서 생각하다보니 알고리즘 부분과는 다소 동떨어진 질문이 있을 수도 있을 것 같은데, 그런 부분이 있다면 죄송합니다 ㅠㅠ 몇 년전, 동아리 활동을 하면서 머신러닝에 관심을 갖게 되어 선생님의 강의를 수강하고, 잘 공부했었던 기억이 있어 이렇게 다시 찾아 질문 드리게 되었습니다. 긴 내용 읽어주셔서 감사드립니다..
한입 잘라먹는 NEXT.JS 강좌 풀라우트 캐시 2 4분 30초 쯤에 Suspense 를 사용하여 next run build 를 하는 과정이 있습니다 그런데 Type error: Type '{ searchParams: { q?: string | undefined; }; }' does not satisfy the constraint 'PageProps'. Types of property 'searchParams' are incompatible. Type '{ q?: string | undefined; }' is missing the following properties from type 'Promise<any>': then, catch, finally, [Symbol.toStringTag] 32 | 33 | // Check the prop type of the entry function > 34 | checkFields<Diff<PageProps, FirstArg<TEntry['default']>, 'default'>>() | ^ 35 | 36 | // Check the arguments and return type of the generateMetadata function 37 | if ('generateMetadata' in entry) { 계속 이런 에러가 발생해서 구글링 해서 찾아보면 components 및 해당 app 폴더 안에 중첩되는 page.tsx 나 layout.tsx 가 존재하면 이러한 에러가 발생할수도 있다고 하여 각 폴더 마다 파일명을 변경하고 계속 빌드를 시도했지만 에러문구는 해결이 되지않고 있네요... 위의 사진은 제가 현재 문제가 발생하고 있는 프로젝트의 전체 폴더 및 파일 구조입니다. 어디가 문제일까요...ㅠ 답변 부탁드리겠습니다.
안녕하세요 강사님 좋은 강의 감사드립니다. 몇 가지 헷갈리는 점이 있어 질문드립니다. React (CSR)에서는 js Bundle시 요청 페이지 뿐만 아니라 모든 페이지의 자바스크립트 파일과 컴포넌트들을 불러오는 반면, Next (SSR)에서는 js Bundle시 모든 페이지가 아닌 요청페이지의 파일과 컴포넌트들을 불러온다. 제가 이해한 게 맞을까요? 2. 프리 페칭 시점은 js bundle후 -> 페이지에 접속한 후 -> "프리페칭" 이 시점이 맞을까요? (프리페칭 시점에 현재 페이지에서 이동할 수 있는 모든 페이지들의 자바스크립트를 사전에 불러온다.) 3. next에서 js bundle시 요청페이지의 파일을 불러온다고 했는데, 요청페이지의 파일은 _app.tsx를 기준으로 하나요?
import sys import copy #sys.stdin=open("input.txt","rt") ''' #3번이 틀림 n =int(input()) li1 = [list(map(int, input().split())) for _ in range(n)] cpy =copy.deepcopy(li1) #깊은 카피를 사용 m=int(input()) tot=s=0 e = n #print(cpy) #li1 회전 for i in range(m): li2 = list(map(int, input().split())) print(li2) if li2[1] == 0: #왼쪽으로 회전 for j in range(n): if j-li2[2] < 0: li1[li2[0]-1][j-li2[2]+n] = cpy[li2[0]-1][j] else: li1[li2[0]-1][j-li2[2]] = cpy[li2[0]-1][j] if li2[1] == 1: #오른쪽으로 회전 for j in range(n): if j+li2[2] < n: li1[li2[0]-1][j+li2[2]] = cpy[li2[0]-1][j] else: li1[li2[0]-1][(j+li2[2])%n] = cpy[li2[0]-1][j] #print(li1) for i in range(n): for j in range(s,e): tot += li1[i][j] if i < n//2: s+=1 e-=1 else: s-=1 e+=1 print(tot) 다음과 같이 풀때, 1245번은 정답이 뜨는데 3번만 틀린ㄴ값으로 뜹니다.. 뭐가 틀린지 모르겠습니다..알려주세요..
안녕하세요. 수강생 입니다. 좋은 강의 잘 수강하면서 열심히 공부하고 있습니다. 노션 페이지 내용 관련으로 문의드립니다. [입문] 시작은 프리캠프 - 섹션 3 CSS의 기본과 싸이월드 실습 1 CSS 사용방법 3가지 예시 이미지 중 해당 내용들에 대한 이미지가 이상해 문의 남깁니다. 감사합니다.
안녕하세요. 저는 login.ui.py 파일이 생성되지 않아 문의 드립니다. 아래 캡켜화면은 저의 VScode입니다. 강의에서 06.GUI프로그래밍을 프로젝트폴더로 선택한 상태에서 아래의 터미널에 입력(pyside6-uic login.ui -o login_ ui.py)을 하였으나 에러문구가 뜹니다. 제가 무엇을 잘못했는지 궁금합니다. 감사합니다. ================================================================ 강의 노트에 아래의 문구가 있어 다시 문의드립니다. (문의사항) 확장프로그램(Qt for Python)은 이제 설치하지 않아도 되는가요? 터미널에서 명령이 실행을 제가 올바르게 한건지 확인 부탁드립니다.
5번만 틀렸는데, 어느부분에서 틀렸는지 모르겠습니다.. 알려주세요 .. 아래는 제가 짠 코드입니다 n = int(input()) max = -1 tot,tto = 0,0 li = [[0]*n for _ in range(n)] # n의 크기를 가지고 0으로초기화된 리스트를 n번 반복 for i in range(n): li[i]= list(map(int, input().split())) for i in range(n): if sum(li[i]) > max: max = sum(li[i]) for j in range(n): for i in range(n): tot += li[i][j] tot = 0 if tot > max: max = tot for i in range(n): tot += li[i][i] tto += li[i][n-i-1] if tot > max: max = tot if tto > max: max = tto print(max)
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. RISS의 주제저를 추출하는 부분에서 파이썬을 이용한 크롤링은 잘 되었습니다. 하지만 크롤링한 데이터를 보니 웹에는 표시되지 않는 문자들이 같이 출력되었습니다. 저만 이런 문자가 추가로 붙었는지 궁금해서 강사님의 강의도 보니 강사님의 강의에서도 똑같이 추출한 데이터에서 문자가 추가된 것을 확인할 수 있었습니다. 마지막 줄에 AI하고 \u3000 이라는 문자가 추가되었는데 외주를 할 때 이런 오류는 문제가 되지 않는지 궁금합니다.