클라우드/인프라 기본 용어

ChatGPT1

Bordercolli 2023. 7. 21. 13:48
728x90

chatgpt == chatbot

챗봇은 기존에 네이버라든지 다른 앱으로 개발되었는데, chatgpt는 gpt라는 기본 알고리즘을 가지고 동작하는 인공지능 기반 챗봇

기본적인 한국어, 영어를 chatgpt에 입력하게 되면 입력된 언어가 서버로 전달이 되어서 거기서 각 단어마다 부여된 숫자가 있다. 각 단어마다 부여된 숫자로 바꾸는 토근화 과정을 거치고 이 토큰화된 숫자를 가지고 처리를 해서 그 결과를 다시 언어로 바꾸어 출력을 하는 그러한 알고리즘을 gpt가 하고 있다.

10년 전에는 심심이라는 챗봇이 있었고, 네이버라든지 다른 한국업체에서도 챗봇을 개발한 적이 있었는데 그런 것들 같은 경우에는 단어를 골라내서 키워드 위주로 거기에 대한 답변을 미리 하도록 정해놓은 흔히 말해 정답이 정해져 있던 과거의 챗봇

 

chatgpt의 경우 기본적으로 방대한 양의 재료, 즉 우리가 구글링하면 나오는 어떠한 자료도 다 학습되어 있다고 볼 수 있고, 그런 것들에 맞추어서 정해진 대답을 내놓는 것이 아니라 확률에 맞는 대답을 내놓는다.

 

ex) 오늘 날씨가 어떄???라고 질문을 했을때 우선 키워드를 잡고, 그 다음 올 예상 질문을 확률적으로 계산하여서 내뱉는다. 즉, 확률기반으로 대답을 내놓는 것이 gpt의 장점이다. 

 

gpt는 많은 데이터들을 학습하고 분류를 한 것이다. 단순 검색들을 우리 레벨에 맞춰서 내놓을 수 있는 것이 장점이다. 

ex) 어떤 프로그램을 짜고 싶은데, 그 프로그램을 짜려면 gpt가 직접 짜준다. 그게 검색 엔진과 차이다.

 

쉽게 말해서 답이 정해져 있는 것들에 대한 자료들을 정보에 따라서 chatgpt로 웬만하면 대체할 수 있다.  ex) 법률같은 경우는 바뀌지 않는 이상 항상 똑같은 대답을 내놓는다. 

 

현시점 chatgpt로 가장 파급력 있는 분야는 자동번역 실시간 번역, 언어와 언어 사이의 교환이 이루어지는 것 

아무래도 언어 모델이기 떄문에 말을 실시간으로 빨리 번역을 한다던가 일목요연하게 요약을 하는 등의 작업에 가장 많이 파급될 것입니다. 

 

보안 프로젝트 - 조정원 강사

우리가 평소에 아는 일반 챗봇 서비스와 다르다. 

가끔 답변이 느린 이유는 서버에 많은 사람들이 사용 중이기 때문이다. 

 

이런 식으로 답변을 해준다. 그런데 이 답변이 마음에 안들면 Try again을 하면 된다. 

그러면 다른 답변을 해주게 된다. 

 

ChatGPT를 이용한 클라우드 서비스를 공부해보자. 

JS파일은 어느정도 동적인 행위를 할 수 있게 만들 수 있고, HTML은 정적 페이지를 담당해서, 이정도면 S3를 이용해서 작은 홈페이지를 만들 수 있다. 

1. S3를 사용하여 AWS SDK를 사용하여 AWS인증정보 설정해야 한다. 

2. AWS에서 생성한 Key값들을 가져온다.

 

AWS의 AI서비스 

Amazon Rekognition → 사람 얼굴을 인식해주는 서비스 

Amazon Textract → 텍스트들을 여러 형태로 변환

 

Python으로 aws ai서비스를 이용한 텍스트 파일을 음성으로 변환하는 코드를 만들고 싶어. 예제 코드만 보여줘

 

boto3 라이브러리를 이용해서 aws AI를 사용하고 S3를 이용한 홈페이지도 만드는 모습을 확인할 수 있었다. 

 

우리가 인프라를 구축을 할 때 가상네트워크부터 서브넷 같은 경우 그 안에 EC2를 연결하는 과정들을 공부하게 된다.

이러한 것들을 클라우드에서 자동화할 수 있는 Cloudformation이라는 스택을 생성해서 이용하게 된다.

해당 스택을 지우면 앞 전에 생성했던 것들 모두 지워지게 된다. 

여러 분들이 yaml파일을 이용해서 스크립트를 이용해서 제작할 수 있다. 

 

*yaml파일이란??? 

1. .yml, .yaml확장자를 사용

2. json의 상위 집합으로 yaml에서 json파일을 사용할 수 있다.

3. 가장 흔한 용도로는 구성파일이다. yaml과 json은 대부분의 경우 서로 바꿔서 사용할 수 있지만, yaml이 json보다 가독성이 좋고 사용자가 보기 더 좋아서 구성파일은 json이 아닌 yaml으로 작성하는 것이 좋다.

4. ansible, 쿠버네티스 리소스 및 배포에도 사용된다.

5. 장점: 변경 사항을 추적하고 감사하기 위해 git hub와 같은 소스 제어에 yaml파일을 추가할 수 있다. 

 

* JSON(Javascript object notation)은 데이터 포맷으로 단순히 데이터를 표시하는 방법(데이터 경량)

 

 

* vpc(virtual private cloud)

: public cloud내에 호스팅되는 안전하고 격리된 프라이빗 클라우드.

ex) 붐비는 레스토랑을 생각해보자. vpc를 붐비는 레스토랑 사이에 예약된 테이블이다. 식당은 사람들로 가득 차 있는데도 '예약석'이라고 표시된 테이블은 예약한 사람만 앉을 수 있다. 마찬가지로 퍼블릭 클라우드는 컴퓨팅 리소스에 액세스하는 다양한 클라우드 고객으로 가득 차 있다. vpc는 이러한 리소스 중 일부를 한 고객만 사용할 수 있도록 예약한다.