본문 바로가기
300x250

전체 글94

python pydantic이란? typing과 함께 사용법 이해하기 python의 pydantic 라이브러리를 사용하면 input 데이터 검증을 할 수 있다.나는 원하는 조건을 지정해서 해당 조건에 맞는 데이터가 들어올 때만 정상적인 응답을 리턴해주고,그렇지 않다면 오류를 반환하도록 도와주는 라이브러리라는 것으로 이해하고 있다. pydantic은 BaseModel을 상속하는 방식으로 활용하는데,이 때 BaseModel은 객체를 정의하는 방법을 제공해준다고 생각하면 편할 것 같다. 또한 typing 모듈과 함께 사용할 때 큰 효과를 발휘한다.FastAPI 앱과 함께 pydantic의 예제와 그 필요성을 살펴보자.  먼저 pydantic을 사용하지 않는다면?아래와 같이 POST를 보낼 때 타입을 지정해서 main2.py를 작성해보자.from fastapi import Fas.. 2024. 8. 9.
맥북 M1, M2 zsh lsd 아이콘 깨짐 문제 발생 시 해결 방법 brew install lsd를 이용해서 아이콘과 같이 해당 폴더 내의 파일을 확인하고자 했는데,아래 사진처럼 아이콘이 깨지는 문제가 발생했다. 찾아보니 아이콘을 지원하는 폰트를 설치해야 하는데,hack Nerd font가 괜찮은 것 같아서 설치해보았다.brew install --cask font-hack-nerd-font   좌측 상단에서 터미널 - 설정으로 접근한 후 모든 서체 - Nerd 검색 후 선택해준다. 터미널 종료 후 다시 시작해서 lsd를 입력해보면 정상적으로 잘 작동되는 것을 볼 수 있다!아이콘이 귀엽다. 2024. 8. 8.
FastAPI 이해부터 router로 백엔드 API 서버 만들고 docs 문서 확인하기 FastAPI는 Python 프레임워크 중 하나로, 특히 API를 구축하는 데 유용하다. 무엇보다 /docs를 통해 자동으로 API 문서화가 가능하다는 점이 정말 좋다고 느꼈는데,간단한 예제를 통해 FastAPI로 백엔드 API 서버를 만들어보면서 차근차근 설명해보겠다. 우선 맥북에는 기본으로 venv라는 가상환경 라이브러리가 설치되어 있다.나는 내가 백엔드 API 서버 개발을 원하는 폴더로 이동한 다음, 가상환경을 먼저 생성하고 실행해주었다.python3 -m venv 가상환경이름source 가상환경이름/bin/activate 다음으로는 fastapi와 uvicorn을 설치해주자.uvicorn은 경량 서버로, FastAPI로 만든 내용을 uvicorn으로 실행할 수 있다.pip install fasta.. 2024. 8. 7.
[오류 해결] unable to get local issuer certificate, ConnectionResetError(54, 'Connection reset by peer) + InsecureRequestWarning python으로 request를 요청하던 중, API 토큰이 만료되어 새로 발급받은 토큰을 넣어줬다.그 다음부터 API 호출이 되지 않았다. unable to get local issuer certificate라는 SSL 인증 관련 오류가 계속 발생하는 것으로 보여아래와 같이 verify=False 파라미터를 이용하여 SSL 인증을 하지 않도록 설정해준 다음,정상적으로 호출이 완료되었다.request.post(url=url, headers=headers, verify=False) 그 다음부터는 간헐적으로 ConnectionResetError(54, 'Connection reset by peer) 오류가 발생했다.해당 오류는 연결이 끊겼다는 메세지인데,매일 출근해서 내가 request를 보내는 서버 측에 .. 2024. 7. 29.
M1 맥북 mysql 설치 및 DB 생성, workbench 설치 로컬에 MySQL 서버를 설치하고, Workbench와 연동해보자. 먼저 터미널을 열고, brew가 최신 버전이 아니라면 brew update 명령어로 업데이트를 해준다.brew로 mysql을 설치해주자.brew install mysql  MySQL 서버 시작 명령어는 아래와 같다.mysql.server start패스워드 설정 없이 그냥 실행을 원한다면?mysql -uroot 패스워드를 포함한 MySQL 서버 설정을 하고 싶다면? mysql_secure_installation Securing the MySQL server deployment. Connecting to MySQL using a blank password. VALIDATE PASSWORD COMPONENT can be used to test.. 2024. 7. 19.
깃허브 개정 여러개 : Github 특정 Repo만 다른 계정으로 쓰기 나는 회사 계정과 개인 계정, 즉 깃헙 2개 계정을 한 컴퓨터에서 써야 한다. 단, 기본적으로는 회사 계정으로 모든 작업을 하고 싶으며개인 계정으로는 내가 업무를 하며 공부하고 정리한 내용을 따로 보관해두고자 했다.즉 나는 특정 로컬 폴더에서만 내 개인 Github 계정을 사용하고 싶은 상황이다. 먼저 터미널을 열고, 내 개인 계정을 사용하고 싶은 로컬 폴더로 이동한다.터미널이 원하는 폴더에 위치해있는지 확인한 후, 아래 두 가지를 입력해 준다.보통 이 경우 --global 옵션이 사용될 텐데, 나는 현재 위치에만 별도 설정값을 적용하고자 하므로 제외해 주었다.git config user.name '사용할_이름'git config user.email 사용할_개인계정_메일주소  이제 SSH 설정을 해줘야 .. 2024. 7. 18.
[오류 해결] M1 M2 brew python 설치 후 맥 VScode pip 안됨 오류 최근 입사하면서 지급받은 맥북을 초기화한 후,회사 서버와 유사한 데이터 수집 환경을 구축하여 내 맥북에서 테스트용 수집 DB를 만들기로 했다. 그 과정에서 파이썬 버전을 맞춰주어야 했고확인해보니 나는 python 3.11.5 버전 설치가 필요한 상황이었다. 그래서 brew install python@3.11 코드로 설치를 해주었으나..vscode에서 코드를 실행하려고 하면 잘 되지 않는 문제가 발생해서 해결한 방법을 공유해둔다. 1. brew로 설치한 python 삭제brew uninstall python@3.11 2. 설치하고자 하는 python 버전을 구글에 검색하여 다운로드 페이지로 이동맨 아래쪽의 Files로 이동 후, 운영체제에 맞는 버전을 클릭하여 다운로드M1 맥북인 나는 macOS 64-bi.. 2024. 7. 17.
tensorflow keras load_data exception: url fetch failure on 에러 Eager execution | TensorFlow Core Google AI Studio에서 Gemini의 텍스트 및 이미지 추론 기능을 사용해 보세요. 빠르고 무료입니다 . Build with Gemini ,Google AI Studio에서 Gemini의 텍스트 및 이미지 추론 기능을 사용해 보세요. 빠르고 무료입 www.tensorflow.org 시험을 위해 텐서플로우 튜토리얼을 차근차근 다시 복습하면서 로컬에서 실행해보고 있다. 케라스 MNIST 데이터셋을 다운받는 단계에서 ssl.sslcertverificationerror 때문에 고생하던 중 해결방법을 찾았다. exception: url fetch failure on 에러가 같이 떴는데, 이 때 해결할 수 있는 간단한 방법. (mnist_ima.. 2023. 12. 27.
맥북 M2 tensorflow certificate 자격증 초기 세팅 Pycharm 구글 부트캠프를 무사히 졸업하고, 텐서플로우 자격증 응시료 지원 코드를 받았다! 10만원짜리인만큼 자격증 시험에 응시해봐야겠다 싶었는데, 문제는 나의 노트북이 맥북 M2라는 것.. 찾아보니 애플 실리콘 맥은 tensorflow 시험 시 이래저래 문제가 많은지 구글 코랩을 이용하거나, 아예 PC방에서 응시하신 분도 있었다. 아래와 같이 시험 환경을 세팅할 수는 있지만, 설명서에서 M1, M2를 권하지는 않고 있다. 그래도 시험 환경과 동일하게 맥북 M2 환경을 구축하고, 텐서플로우를 활용해보실 분들께 참고가 될만한 자료라 정리해보고자 한다. 시험 환경 세팅 한글 버전으로 된 응시자 안내서의 세팅을 찾아보았지만, 무슨 일인지 현재는 텐서플로우 응시자 안내 클릭 시 404에러가 뜨는 중. 그래서 나는 영어 버.. 2023. 12. 26.