세계 최고의 딥러닝 석학 4대 천왕 중 한 분인 앤드류 응 교수님과 OpenAI에서 Cookbook 공식 가이드와 Retrieval plugin 만드신 직원분이 함께 "개발자를 위한 ChatGPT 프롬프트 엔지니어링" 강의를 최근 무료로 출시하셨습니다. 1시간 정도 되는 짧은 강의라 저도 빠르게 훑어보았는데 프롬프트 엔지니어링을 어떻게 하면 좋을지 다양한 사례를 배우고 피자 주문받아주는 챗봇 만드는 예제까지 다룹니다. PC에 뭘 설치할 필요도 없이 그냥 키 넣고 바로 실행해 볼 수 있습니다! 프롬프트 엔지니어링 관심 있으신 분들은 한번
들어보시는 것을 추천드립니다! 최고 딥러닝 석학과 OpenAI 직원 피셜이라 신뢰가 가네요.
ChatGPT Prompt Engineering for Developers
https://lnkd.in/gFVs_YDX
ChatGPT Prompt Engineering for Developers
What you’ll learn in this course In ChatGPT Prompt Engineering for Developers, you will learn how to use a large language model (LLM) to quickly build new and powerful applications. Using the OpenAI API, you’ll...
www.deeplearning.ai
- 참고 : 이해가 어려우시면 아래 강의 듣고 배우시면 좋습니다.
파이썬 기초 배우기
https://lnkd.in/gDDVTzhg
ChatGPT API 활용한 수익형 웹서비스 만들기
https://lnkd.in/gdiiJEcz
다음 비디오는 추론에 관한 내용입니다. 저는 이러한 작업을 모델이 텍스트를 입력으로 받아 어떤 종류의 분석을 수행하는 과제로 생각합니다. 이는 레이블 추출, 이름 추출, 텍스트의 감정 파악 등을 포함할 수 있습니다. 따라서 텍스트로부터 긍정적인 또는 부정적인 감정을 추출하려면, 기존의 기계 학습 워크플로우에서는 레이블 데이터 세트를 수집하고 모델을 훈련시키고, 클라우드에 모델을 배포하고, 추론을 수행해야 했습니다. 이 방법은 꽤 잘 작동할 수 있지만, 그 과정을 거치는 데에는 많은 작업이 필요했습니다. 또한 감정 추출, 이름 추출 등과 같은 각 작업마다 별도의 모델을 훈련하고 배포해야 했습니다. 대형 언어 모델의 큰 장점 중 하나는 이와 같은 많은 작업들에 대해 프롬프트(prompt)를 작성하고 거의 즉시 결과를 생성할 수 있다는 점입니다. 이를 통해 애플리케이션 개발에서 엄청난 속도 향상을 얻을 수 있습니다. 또한 다양한 작업을 수행하기 위해 여러 다른 모델을 훈련하고 배포하는 대신 하나의 모델, 하나의 API를 사용할 수 있습니다. 그러므로 이를 활용해 보기 위해 코드로 넘어가 봅시다. 다음은 일반적인 시작 코드입니다. 해당 코드를 실행해 보겠습니다.
다음 비디오는 추론에 관한 내용입니다. 저는 이러한 작업을 모델이 텍스트를 입력으로 받아 어떤 종류의 분석을 수행하는 과제로 생각합니다. 이는 레이블 추출, 이름 추출, 텍스트의 감정 파악 등을 포함할 수 있습니다. 따라서 텍스트로부터 긍정적인 또는 부정적인 감정을 추출하려면, 기존의 기계 학습 워크플로우에서는 레이블 데이터 세트를 수집하고 모델을 훈련시키고, 클라우드에 모델을 배포하고, 추론을 수행해야 했습니다. 이 방법은 꽤 잘 작동할 수 있지만, 그 과정을 거치는 데에는 많은 작업이 필요했습니다. 또한 감정 추출, 이름 추출 등과 같은 각 작업마다 별도의 모델을 훈련하고 배포해야 했습니다. 대형 언어 모델의 큰 장점 중 하나는 이와 같은 많은 작업들에 대해 프롬프트(prompt)를 작성하고 거의 즉시 결과를 생성할 수 있다는 점입니다. 이를 통해 애플리케이션 개발에서 엄청난 속도 향상을 얻을 수 있습니다. 또한 다양한 작업을 수행하기 위해 여러 다른 모델을 훈련하고 배포하는 대신 하나의 모델, 하나의 API를 사용할 수 있습니다. 그러므로 이를 활용해 보기 위해 코드로 넘어가 봅시다. 다음은 일반적인 시작 코드입니다. 해당 코드를 실행해 보겠습니다.
큰 언어 모델의 멋진 응용 중 하나는 주제를 추론하는 것입니다. 긴 텍스트가 주어졌을 때, 이 텍스트는 무엇에 대해 얘기하고 있는 걸까요? 어떤 주제들이 있는 걸까요? 이곳에는 정부 직원들이 자신들이 근무하는 기관에 대해 어떻게 생각하는지에 대한 가상의 신문 기사가 있습니다. 정부에서 실시한 최근 조사 등이 언급되었고, 그 결과는 NASA에서 검토한 바 있으며, 고객 만족도가 높은 인기 있는 부서였습니다. 저는 NASA의 팬이며, 그들의 작업을 사랑하지만, 이는 가상의 기사입니다. 그래서 이와 같은 기사가 주어지면, 우리는 다음과 같이 물어볼 수 있습니다. 이 프롬프트로, 다음 텍스트에서 논의되고 있는 다섯 가지 주제를 판별해보세요. 각 항목을 한 단어 또는 두 단어로 만들고, 응답을 쉼표로 구분된 목록 형식으로 서식 지정하도록 하겠습니다. 그래서 실행하면, 이 기사는 정부 조사에 관한 것이며, 직장 만족도에 관한 것이며, NASA에 관한 것이고, 등등이라는 결과가 나옵니다. 따라서 전반적으로, 주제 목록을 꽤 잘 추출한 것 같습니다. 물론, 여러분은 또한 이를 분할하여 이 기사에서 다루는 다섯 가지 주제가 포함된 목록을 얻을 수도 있습니다.
만약 여러 기사들을 모아서 주제를 추출한다면, 큰 언어 모델을 사용하여 다른 주제로 색인을 만드는 데 도움을 받을 수 있습니다. 그래서, 조금 다른 주제 목록을 사용해보겠습니다. 우리가 뉴스 웹사이트라고 가정하고, 우리가 추적하는 주제는 NASA, 지방 정부, 공학, 직원 만족도, 연방 정부라고 해봅시다. 그리고 뉴스 기사가 주어졌을 때, 이 기사에서 어떤 주제가 다루어지고 있는지 알고 싶다고 가정해봅시다. 그래서, 다음과 같은 프롬프트를 사용할 수 있습니다. 다음 주제 목록에 있는 각 항목이 주어진 텍스트에서 주제인지 판별하세요. 각 주제에 대한 대답을 0과 1의 목록으로 제시하세요. 그래서, 이전과 같은 이야기 텍스트입니다. 이것은 이야기입니다. 이는 NASA에 관한 것입니다. 지방 정부에 관한 것은 아니며, 공학에 관한 것도 아닙니다. 직원 만족도에 관한 것이며, 연방 정부에 관한 것입니다. 이렇게, 기계 학습에서는 이를 가끔씩 제로샷 학습 알고리즘이라고 부릅니다. 왜냐하면 우리가 레이블이 지정된 어떠한 훈련 데이터도 제공하지 않았기 때문입니다. 그래서 이렇게 단순한 프롬프트로도 해당 뉴스 기사에서 어떤 주제가 다뤄지고 있는지 판별할 수 있었습니다.
그래서, 뉴스 알림을 생성하려면 이런 과정을 거쳐야 합니다. 뉴스를 처리하고, 그리고 저는 NASA의 작업을 정말 좋아합니다. 그러니 이 정보를 사전에 넣고, NASA 뉴스가 나타나면 '새로운 NASA 기사'라는 알림을 출력하는 시스템을 구축하고 싶다면, 기사를 가져와 어떤 주제에 대한 내용인지 신속하게 파악하고, 주제에 NASA가 포함되어 있다면 '새로운 NASA 기사'라는 알림을 출력하도록 할 수 있습니다. 한 가지 주의할 점은, 위에서 사용한 프롬프트는 매우 견고하지 않습니다. 운영 시스템에 적용한다면, 응답을 목록 형식으로 출력하는 대신 JSON 형식으로 출력하는 것이 좋을 것입니다. 큰 언어 모델의 출력은 조금 일관성이 없을 수 있기 때문에 이 코드는 상당히 빠르게 깨지기 쉽습니다. 그러나 이 비디오를 시청한 후에는 이 프롬프트를 수정하여 이와 같이 목록 대신 JSON 형식으로 출력하고, NASA에 대한 큰 기사가 있는지 신뢰할 수 있는 방법을 찾아보세요.
요약하자면, 몇 분 만에 이전에는 숙련된 기계 학습 개발자에게 몇 일이나 심지어 몇 주가 걸렸던 텍스트에 대한 추론 시스템을 여러 개 구축할 수 있습니다. 나는 이것을 매우 흥미롭게 생각하며, 숙련된 기계 학습 개발자뿐만 아니라 기계 학습에 입문한 사람들도 이러한 복잡한 자연어 처리 작업에 대해 프롬프팅을 사용하여 매우 빠르게 추론을 시작할 수 있다는 점이 매우 흥미로워요. 다음 비디오에서는 큰 언어 모델로 수행할 수 있는 흥미로운 작업을 계속 이야기하고, 변환에 대해 이야기할 것입니다. 어떻게 하면 하나의 텍스트를 다른 텍스트로 변환할 수 있을까요? 예를 들어 다른 언어로 번역하는 방법은 무엇일까요? 다음 비디오로 넘어갑시다.
구글 애널리틱스 GA4 (0) | 2023.06.20 |
---|---|
[레전드 강의] 개발자를 위한 프롬프트 엔지니어링 스터디 노트 3 (0) | 2023.05.08 |
프롬프트엔지니어링 프롬프트란? (0) | 2023.05.03 |
[레전드 강의] 개발자를 위한 프롬프트 엔지니어링 스터디 노트 2 (0) | 2023.05.03 |
[레전드 강의] 개발자를 위한 프롬프트 엔지니어링스터디 노트 1 (0) | 2023.05.02 |
댓글 영역