공공연히 개발하기 🧑‍💻 20

[Python] Open AI 패키지 호환성 문제 (Python 3.12 이상)

[충격발언] chatGPT "Python 3.12와 openai 패키지 사이에 호환성 문제 있다" 고 밝혀...특히, OpenAI 패키지가 의존하는aiohttp라이브러리가 Python 3.12에서 제대로 동작하지 않아 설치 과정에서 오류가 발생할 수 있습니다. 이 문제는 OpenAI 패키지의 최신 베타 버전에서 해결되었는데, 해당 버전에서는 aiohttp 대신 httpx 라이브러리를 사용하도록 변경되었습니다​라고 한다. chatGPT 피셜인데 어쩐지 안되더라... 해결방법은 Open AI 베타 버전을 설치하거나 파이썬 버전을 바꾸는 것✅ Python 3.11 이하로 설치하거나✅ 만약 꼭 3.12 버전을 사용해야 한다면 다음 명령어를 통해 Open AI 베타 버전을 설치하는 방법이 있다.pip instal..

[Python] 가상 환경 : Conda, Venv 비교 및 명령어 총정리

물론 Docker라는 훌륭한 도구가 있지만간단하게 파이썬 코드를 작성할 때는 오히려 가상 환경이 편할 수도 있다.오늘은 파이썬의 가상 환경에 대해서만 다룰 예정이다.Table Of Contents1. Python의 가상 환경2. 활용 방법 Conda, Venv3. conda, venv 명령어 정리 ⭐️    - 생성, 삭제, 활성화, 비활성화, 복제, 목록 확인    - 패키지 설치 및 확인, 요구사항 파일로 패키지 설치 4. 어떤 경우에 사용할까? 1. Python의 가상 환경 (Virtual Environment)각각의 프로젝트를 독립적으로 관리하기 위한 방법으로 의존성, 라이브러리 등을 별도로 관리할 수 있다.즉, 하나의 로컬 PC에서도 여러가지의 파이썬 환경을 따로 따로 활용할 수 있는 것.다양한..

[Docker] docker-compose.yaml 빌드할 때 이런 warning 보신 분?

도커 컴포즈로 빌드할 때 이런 경고 문구 보신 분?WARN[0000] /Users/username/dirname/docker-compose.yaml: the attribute `version` is obsolete, it will be ignored, please remove it to avoid potential confusion그게 바로 접니다 ✋▶️ 원인은 단순!Docker Compose V2에서는 version 속성이 더 이상 필요하지 않기 때문입니다.경고 문구에도 나와있듯 version 속성은 무시됩니다.version: '3.8'services: web: ... ✅ 해결도 단순!docker-compose.yaml 파일에서 version 속성 제거하면 끝!services: web: ..

[맥,리눅스] 파일 저장 안될 때 -> 소유권 변경ㄱㄱ chown 명령어

예시) [파일명] 을(를) 저장하지 못함: 파일 [파일경로]'settings.py'을(를) 저장하지 못함: 파일 'vscode-remote://ssh-remote+11111111/home/ubuntu/dir1/dir2/settings.py'(NoPermissions (FileSystemError): Error: EACCES: permission denied, open '/home/ubuntu/dir1/dir2/settings.py')을(를) 쓸 수 없음나는 주로 vscode로 ssh 원격 서버 접속해서 쓰다가 자주 발생했다.⭐️ 해결방법 : 소유권을 root → user(사용자) 로 변경하면 됨!sudo chown -R ubuntu ./dir1형식 : sudo chown -R [사용자이름] ./dir1 ..

[추천시스템] 추천시스템 성능 평가 지표 총정리 (정확도, 정밀도, 재현율, F1 Score, PR Cureve, ROC Curve, Precision/Recall@K, MAP@K, nDCG, Hit Rate@K)

추천시스템의 성능을 명확하게 평가하기는 어렵다.어느 정도의 정량적 평가는 가능하지만, 그것이 정답이라고 할 수는 없다.사용자에 따라 주관적이며 도메인, 서비스, 목적성 등에 따라 기준이 달라질 수 있다.하나의 Metric로 평가하기 보다, 여러 Metric를 통해 다각도에서 평가하는 것이 필요하다고 생각한다.Table of Contents1. 평가 지표    - 비즈니스/서비스 관점    - PV, CTR2. 평가 방법    - Offline Test    - Online A/B Test3. 성능 지표    (1) 정확도, 정밀도, 재현율, F1 Score, PR Curve, ROC Curve    (2) Precsion@K, Recalll@K, MAP, nDCG, Hit Rate    (3) 평점 예측..

[추천시스템] 추천알고리즘 선택 1 - 협업필터링(CF), 컨텐츠기반필터링(CB)

추천시스템을 개발할 때 가장 중요한 부분은 무엇일까? 다양한 의견이 있겠지만, 추천의 기반이 되는 알고리즘, 추천모델의 선택은 신중하게 선택해야 하는 측면임은 분명하다.활용할 데이터의 종류, 크기, 양이나 추구하는 추천 결과의 방식 등을 충분히 고려해 선택해야 한다.내가 추천시스템을 개발할 때 이용한 알고리즘은 GNN 기반의 모델로,유저와 상품의 상호작용에 집중하기 위해 선택한 딥러닝 모델에 커스터마이징을 추가한 방식이었다.이에 관련해서는 나중에 더 자세히 다뤄볼 예정이다.오늘은 협업필터링과 컨텐츠(콘텐츠)기반필터링에 대해 간단히 정리해보았다.Table of Content1. 협업필터링 (CF)    - 메모리 기반의 접근 방식    - 모델 기반의 접근 방식    - 협업필터링의 한계2. 컨텐츠기반필터..

[추천시스템] 그래프와 추천시스템 : 1. 그래프 이론의 기초

Boost course의 강의 내용 정리>1. 그래프 이론의 기초1.1 그래프란 무엇이고 왜 중요할까     1.1.1 그래프란 무엇일까    1.1.2 그래프가 왜 중요할까?1.2 그래프 관련 인공지능 문제    - 정점 분류(Node Classification) 문제    - 연결 예측(Link Prediction) 문제    - 추천(Recommendation) 문제    - 군집 분석(Community Detection)    - 랭킹(Ranking) 및 정보 검색(Information Retrieval)    - 정보 전파(Information Cascading) 및 바이럴 마케팅(Viral Marketing) 문제 1.1 그래프란 무엇이고 왜 중요할까1.1.1 그래프란 무엇일까그래프(Graph..

[리눅스] Ubuntu 진짜 최신 버전 Git 설치하기 - PPA

Table of ContentsGitUbuntu의 기존 버전으로 설치Ubuntu PPA 설정으로 진짜 최신 버전 설치- git 최신 버전 확인- PPA 설정- 시스템 업데이트- git 재설치- git 버전 확인 GitGit은 원래 리눅스 커널 개발 관리 위해 처음 만들어졌다.현재는 가정 널리 사용되는 분산 버전 관리 시스템으로 자리잡았다.기본적으로 우분투에는 Git이 설치되어 있긴 하다.다만 우분투 공식 패키지 저장소에는 주요 프로그램이 아닌 경우, 옛날 버전이 담긴 경우가 많다.하위 버전 보안 이슈 등을 피하기 위해서 버전을 잘 업뎃해주는 것도 필요하다.→ PPA를 통해 안정적인 최신 버전의 Git을 설치할 수 있다.Ubuntu의 기존 버전으로 설치하기기존 방법으로 설치먼저 터미널에서 설치를 하면sud..

[맥,리눅스] 터미널 ssh, scp 원격 파일 전송 - 로컬과 서버, 서버와 서버

Table of Contents1. ssh 접속- .pem 키파일로 접속- ssh config 설정으로 접속2. scp 파일 원격 전송- 로컬에서 서버- 서버에서 로컬- 서버에서 서버 (원격에서 원격) 1. ssh 접속▶️ .pem 키파일로 접속하기형식ssh -i [keyfile경로] [사용자]@[ip혹은도메인네임]예시ssh -i /serverkey/kefile.pem username@127.0.0.1 ▶️ ssh config 설정으로 접속하기형식ssh [설정한 Host이름]예시ssh myserver1 ⭐️ ssh config 설정 방법은 아래글 참고2024.04.25 - [공공연히 개발하기 🧑‍💻/기타] - [맥,리눅스] 터미널 ssh 설치, 접속, config 설정까지 싹정리 - .pem key ..