오늘은 방과후에 남아서 MS에서 진행하는 Chat GPT강의를 듣고 실습까지 하고 같다!
그럼 오늘 배운 내용을 정리해보도록 하겠다!
인공지능
- 인공 + 지능
- 인간의 학습능력과 추론능력, 지각능력, 자연어 등을 컴퓨터 프로그램으로 실현한 기술
분야
- 전문가 시스템 (의학)
- 자연어 처리 (학습, GPT)
- 데이터 마이닝( 필요한 정보 추출)
- 컴퓨터 비전(얼굴인식, 필터, 자율주행기술)
- 지능로봇
챗 GPT
- Chat + gpt(Generative pre-trained transformer)
- 방대한 양의 책, 논문, 인터넷의 텍스트 정보를 학습
- 대화형, 거대 자연어 모델
- 이전 단어들을 바탕으로 다음 단어가 나올 확률을 계산해 다음 단어 예측
Chat gpt의 시대
- 우수한 성능
- 파라미터 수, 인간 피드백을 통한 강화학습
- 사용자 친화적인 UI
- 무료 서비스
한계
- 최신 정보 미반영 ( 2021년도까지의 데이터만을 학습, 과거 학습한 정보를 기반으로 답을 생성)
- 환각현상
* 틀린 답을 그럴듯하게 생성해 내는 현상
- 윤리적 문제 ( 과제,시험 등 부정행위, 저작권 문제, 가짜 뉴스 및 정보 생성)
Gradio
-인공지능 모델에 대한 웹 기반 사용자 인터페이스를 손쉽게 구축할 수 있는 라이브러리
- python 프로그래밍 언어로 작성됨
- 다양한 입력과 출력을 다룰 수 있음
Github
-git repository를 위한 웹 기반 호스팅 서비스
- 클라우드 서버를 사용해서 로컬에서 버전 관리한 소스코드를 업로드하여 공유 가능
- 분산 버전 제어, 액세스 제어, 소스 코드 관리, 버그 추적, 기능 요청 및 작업 관리를 제공

Chat GPT에 접속해볼려고 했는데 접속이 안되서 chatgt-poe에 들어가 직접 실습을 해보았다.
내가 원하는 질문과 주제를 던져주면 그에관한 답을 써 내려가는 것이 신기했고 앞으로 유용하게 쓰일 것 같다.
그 후 Gradio의 파이썬 언어를 가지고 '나만의 챗봇 사이트'를 만들어보는 시간을 가졌다.

-s.append(input) 코드는 파이썬에서 리스트(List)에 값을 추가하는 코드다.
s는 리스트 객체를 가리키는 변수 이름이며,
append() 함수는 리스트에 새로운 값을 추가하는 함수다.
input은 값을 입력하는 함수로, 이 함수를 통해 사용자로부터 값을 입력받아 리스트 s에 추가하게 된다!
s = [1, 2, 3]
s.append(4)
리스트 s는 [1, 2, 3, 4]가 된다.
이렇게 append() 함수를 사용하면, 리스트에 값을 추가하거나 변경할 수 있다.
# 메세지 입력하기

# 함수 호출하기

import openai
import gradio
openai.api_key = "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"
start_sequence = "\nAI: "
restart_sequence = "\nHuman: "
prompt = "The following is a conversation with an AI assistant. The assistant is helpful, creative, clever, and very friendly.\n\nHuman: Hello, who are you?\nAI: I am an AI created by OpenAI. How can I help you today?\nHuman: "
def openai_create(prompt):
response = openai.Completion.create(
model="text-davinci-003",
prompt=prompt,
temperature=0.9,
max_tokens=150,
top_p=1,
frequency_penalty=0,
presence_penalty=0.6,
stop=[" Human:", " AI:"]
)
return response.choices[0].text
def chatgpt_clone(input, history):
history = history or []
s = list(sum(history, ()))
# input을 추가한다-> 한 문자로 만듦
s.append(input)
inp = ' '.join(s)
output = openai_create(inp)
history.append((input, output))
print(input, output, history)
return history, history
block = gradio.Blocks()
with block:
gradio.Markdown("""<h1><center>나만의 GPT 챗봇</center></h1>""")
chatbot = gradio.Chatbot()
# 메세지 입력창
message = gradio.Textbox(placeholder=prompt)
state = gradio.State()
submit = gradio.Button("SEND")
# 함수호출
submit.click(chatgpt_clone, inputs=[message, state], outputs=[chatbot, state])
block.launch(debug=True)
# block.launch(share=True)
위와같이 코드를 짜주게 되면 드디어 나만의 GPT 챗봇을 만들 수 있게 된다!


http://127.0.0.1:7860/
↑ 위 링크를 복붙하시면 챗봇 사이트에 들어가실 수 있습니다
'강의 정리 > 2023' 카테고리의 다른 글
MS_마이크로소프트 Azure를 활용한 인공지능 웹, 앱 클라우드 교육과정 (0) | 2023.07.13 |
---|