개발 , 컴퓨터, IT지식 8

[OpenAI] OpenAI API Key 발급 받기(feat.chatGPT)

0. OpenAI API Key OpenAI에서 개발한 인공지능 모델들을 외부에서 사용할 수 있도록 인증하는 역할을 합니다. OpenAI는 다양한 유형의 인공지능 모델을 제공하는데요, 대표적인 모델을 살펴보면 아래와 같습니다. ChatGPT: 텍스트 기반 대화를 위한 모델로, 자연어 처리와 대화 생성에 사용됩니다. 사용자와 대화하며 자연어 질문에 답변을 생성하거나 상호작용하는 데 사용됩니다. DALL·E: 이미지 생성을 위한 모델로, 텍스트 설명을 기반으로 고유한 이미지를 생성합니다. 특정 텍스트 입력에 따라 시각적인 결과물을 만들 수 있습니다. CLIP: 이미지와 텍스트 간의 상호 작용을 가능하게 하는 모델로, 이미지나 텍스트에 대해 공통의 임베딩 공간을 학습하여 이를 통해 이미지를 분류하거나 텍스트를..

[Anaconda] Python 버전 변경하기(feat.Solving environment 무한/오래걸림)

MircroSoft에서 제공하는 Simple Baseline 딥러닝 모델을 깃헙에서 클론하고 문서를 보니 Python 3.6버전에서 개발되었다는 것을 확인. Python Interpreter에는 Python 3.7버전이 설치되어 있어서 3.6으로 다운그레이드 시키려는데 Solving environment가 계속 실행되는 현상을 확인. 이 현상의 원인이 Anaconda가 구버전이라서 생긴 이슈이며, 해결법은 Anaconda를 업데이트하면된다고 해서 시도했습니다. conda update --all 그래도 무한로딩에 걸리네요. 그래서 그냥 기존 파이썬을 삭제한뒤 다시 3.6버전 파이썬을 설치하기로 했습니다. 터미널을 종료하고 다시 실행시킨 후 conda uninstall python conda install ..

[Anaconda] win10(윈도우10)에서 Anaconda 가상환경 만들기

가상환경이 필요한 이유 아나콘다에는 가상환경을 설정하고 생성해서 작업을 할 수 있습니다. 그러면 왜 가상환경을 사용할까요?? 가장 대표적인 이유로는 "독립적인 환경에서 작업을 할 수 있다." 한 컴퓨터로 여러 프로젝트를 진행하다보면 라이브러리, 패키지, 여러 개의 언어별 버전, 그에 따른 환경설정 등을 설치해야할 경우가 생기는데 서로 충돌이 나거나 호환이 안되는 경우가 발생합니다.(특히 Python) 때문에 가상환경은 프로젝트 단위, 테스트 등 작업 환경을 구성할 수 있습니다. 1. Anaconda 설치하기 https://www.anaconda.com/products/distribution Anaconda | Anaconda Distribution Anaconda's open-source Distribu..

[m1 homebrew 설치 Warning 해결방법] /opt/homebrew/bin is not in your PATH

이번에 M1에서 MediaPipe를 사용해보려고 구글 문서 따라하다가 Homebrew를 설치하는데 다음과 같은 에러 메세지가 발생했습니다. /opt/homebrew/bin is not in your PATH 터미널에서 설치하라는대로 그대로했는데 왜 안되나.... 다른 글들을 봐도 설치 후 바로 버전확인이 가능했습니다. 게다가 제가 Mac계열은 처음 사용해보는거라 더더욱 답답했습니다.... 도움을 받아 해결하게 되어 다음에 이런일이 발생하거나 저와 같은 분들이 있으면 이글을 보고 해결하는데 도움이 되었으면 좋겠습니다:) 1. Homebrew 설치하기 홈페이지 : https://brew.sh/index_ko Homebrew The Missing Package Manager for macOS (or Linux..

Redis서버 win10에서 설치하기

1. Redis서버 window버전 설치하기 아래 사이트로 이동하여 설치 프로그램을 다운로드 및 설치를 진행합니다. Releases · microsoftarchive/redis Redis is an in-memory database that persists on disk. The data model is key-value, but many different kind of values are supported: Strings, Lists, Sets, Sorted Sets, Hashes - microsoftarchive/redis github.com https://github.com/microsoftarchive/redis/releases 설치파일 실행 Redis의 기본포트는 6379 입니다. 2. Redi..

[객체지향 생활체조 원칙] 2. else 키워드를 사용하지 마라.(2/9)

......?? 대체 왜?? 이유가 뭐지??? 대부분의 프로그래밍 언어는 if / else 구문을 지원하는데.....?? (else 쓰지말라고 해서 swich / case 사용할 생각하는 사람은 없죠...?? = 나) 이유를 검색해보자....!! 숨은 의미 이 원칙의 제시 의도는 한 메소드에서 발생하는 분기문을 줄이자는 것이다. 분기문을 많이 가지고 있는 메소드는 많은 기능을 가지고 있을 확률이 높다. 메소드를 분리하거나, 객체지향적인 구조를 적요해 분기문을 줄일 수 있다. 이는 결국 설계관점에서의 개선을 의미한다. else 키워드는 '조건을 만족하지 않을 때'를 전체하고 시작한다. 가독성이 떨어질 수 밖에 없다. if 조건을 만족하지 않는 모든 경우를 의미하기 때문에, 코드를 읽을 때 양 쪽을 함께 생..

Transpile(트랜트파일)과 Complie(컴파일)

트랜스 파일과 컴파일이라는 두 용어를 헷갈려서 정리해보려고 합니다. 트랜스 파일과 컴파일을 같은 개념으로 사용하기도 하는데, 약간의 차이가 있습니다. complie : 한 언어로 작성된 소스 코드를 다른 언어로 변환하는 것. ex) Java → bytecode C언어 → 기계어 Transpile : 한 언어로 작성된 소스 코드를 비슷한 수준의 추상화(Abstraction)를 가진 다른 언어로 변환하는 것. ex) C++ → C언어 coffescript → javascript 두 용어의 의미의 차이를 이해하기 위해 좀 더 쉬운 예를 하나 들어보자면 C#으로 작성된 소스 코드를 컴파일하면 소스 코드와 기계어 사이의 중간 단계 언어(IL-Intermediate Language)로 변하는데, 이 때 두 언어는 ..

[객체지향 생활체조 원칙] 1. 한 메서드에 오직 한 단계의 들여쓰기만 한다.(1/9)

"잘 알아서 책을 쓰는 게 아니라 책을 쓰면서 알아간다" 라는 말처럼 객체지향언어의 프로그래밍 훈련에 대해 포스팅하며 배우고자 합니다. (구글링하다가 우연히 호돌님 블로그에서 감명깊게 읽고 가져왔습니다.) Object Calisthenics(객체지향 생활체조)는 Jeff Bay가 그의 저서 The ThoughtWorks Anthology에서 발명한 9가지 규칙의 집합으로 공식화 된 프로그래밍 훈련이다. Object라는 단어는 Object Oriented Programming (객체지향 프로그래밍)의 Object를 의미하며, Calisthenics라는 단어는 체조의 맥락에서 운동을 의미한다. 규칙을 지키면 자연스럽게 코드 작성 방식이 변경된다. 항상 모든 규칙을 따라야한다는 의미는 아니며, 이 규칙과 균형..