250x250

Xtra의 그 무엇

블로그 이미지
욕심많아 진도 느린 Xtra입니다.
by Xtra
  • Total hit
  • Today hit
  • Yesterday hit

728x90
728x90

선 요약

후 사설

 

 

 

요약

   진짜로 만들어 줬다.

 

 

 

사설

 해야할 일이 산더미 인데...

 copilot에게 물어 보았다. AI를 만드는 가장 간단한 방법이 뭐야?

 

 그러다 답변은 과정을 간단하게 설명하는 요약으로 돌아왔다.

 그래서 나는

 

 일단 시키니까 실행해봤다.

 처음에는 되는게 없었다. 여기서 중단해도 됐을것이다. 그런데 나는 더 파고 들었다.

 이 상태로는 대화가 어렵다. 채팅 프로그램 처럼 내가 글을 적고 대화 할 수 있게 해달라

 렇게 새 코드를 받고 설치하라는 것을 추가로 설치 했다.

 그게 아래의 코드이다.

 

import tkinter as tk
from PIL import Image, ImageTk  # Import PIL for handling images
from transformers import AutoModelForCausalLM, AutoTokenizer
import torch

# 모델과 토크나이저 로드
tokenizer = AutoTokenizer.from_pretrained("gpt2")
model = AutoModelForCausalLM.from_pretrained("gpt2")

# 메시지 생성 함수
def generate_response(input_text):
    input_ids = tokenizer.encode(input_text, return_tensors="pt")
    output = model.generate(input_ids, max_length=50)
    response = tokenizer.decode(output[0], skip_special_tokens=True)
    return response

# 채팅 UI 설정
def send_message(event=None):
    user_input = user_entry.get()
    if user_input:
        chat_log.config(state=tk.NORMAL)
        chat_log.insert(tk.END, "You: " + user_input + "\n")
        chat_log.config(state=tk.DISABLED)
        chat_log.yview(tk.END)

        response = generate_response(user_input)
        chat_log.config(state=tk.NORMAL)
        chat_log.insert(tk.END, "AI: " + response + "\n")
        chat_log.config(state=tk.DISABLED)
        chat_log.yview(tk.END)

        user_entry.delete(0, tk.END)

# 메인 윈도우 설정
root = tk.Tk()
root.title("Chatbot")

chat_frame = tk.Frame(root)
scrollbar = tk.Scrollbar(chat_frame)
chat_log = tk.Text(chat_frame, height=20, width=50, yscrollcommand=scrollbar.set, state=tk.DISABLED)
scrollbar.pack(side=tk.RIGHT, fill=tk.Y)
chat_log.pack(side=tk.LEFT, fill=tk.BOTH, padx=10, pady=10)  # Use expand=True to allow resizing
chat_frame.pack(padx=10, pady=10)  # Use fill and expand to resize properly
 
user_entry = tk.Entry(root, width=50)
user_entry.bind("<Return>", send_message)
user_entry.pack(padx=10, pady=10)

send_button = tk.Button(root, text="Send", command=send_message)
send_button.pack(pady=10)

# 프로그램 실행
root.mainloop()

 

 그런데 이제 바로 실행되는것이 아니라 에러가 나면 이거 설치하라 저거 설치하라 말이 계속 나온다.

 

설치 pip install torch

설치 과정 문제 1
 파이선 버전에 따라서 설치가 안된다 정확히는 최신 버전이면 100% 안되고 직전 버전에서도 안정성에 문제가 있을 있으니 홈페이지에서 안전하다고 적혀 있는 가장 최신 버전을 사용하는 것을 추천한다.

 

설치(선택 사항) pip install tensorflow

 

설치 pip install pillow 채팅창에 이미지를 보여줄  있기 위해 

그 결과가 요약에 상태이다.

 

 copilot의 말로는 정상적으로 사용하기 위해서는 좋은 학습 데이터를 이용하면 된다고 한다.

 지금은 학습 데이터를 변경해보면서 테스트를 해보고 있다. 마지막에 부탁한것은 대화 로그를 남겨 그걸 기반으로 대화 할 수 있게 해달라고 했는데 실제로 적용이 되서 대화 내용에 따라서 반응이 조금 변경되기는 한다. 하지만 GPT2의 능력으로는 유아 만도 못한 수준이기 때문에 이걸 대화로 성장 시키는것은 불가능해 보이고 조금은 위의 단계의 학습 데이터가 필요하다고 느낀다.

 

 원래는 렌파이 게임을 만드는데 활용하려고 했는데 copliot이 렌파이는 잘 못하더라...

 

 

 

 

 

728x90
728x90
AND

ARTICLE CATEGORY

전체 카테고리 (1020)
게임 개발 (10)
기획 파트 (25)
그래픽파트 (75)
思-네트워크 (116)
프로그래밍 (75)
2020 ~ 25 잡탕 (463)
2010 ~ 19 잡탕 (197)
만화 연재 (14)
소설 연재 (12)
기타 연재 (0)
네오스 VR (18)
그란 카 리버리 (15)

RECENT ARTICLE

RECENT COMMENT

RECENT TRACKBACK

CALENDAR

«   2025/01   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31

ARCHIVE