본문 바로가기

IT issue

파이썬 1도 못하는 내가 GPT-4o를 이용하여 단어 암기 프로그램 만들기

목차

     

    최근에 정보보안 기사를 공부하며 단답형 문제들을 엑셀에 정리하고 있습니다. 영어 단어 암기장과 같이 뜻, 단어, 예문을 가진 엑셀입니다. 단어장을 이용해 외워지지 않은 단어만 빠르게 반복해서 단어를 외우면 효과가 좋다고 해서  단어카드를 만드려고 했었습니다. 

     

    포스팅을 본격적으로 들어가기에 앞서 저의 배경 지식을 설명드리자면,
    저는 파이썬은 할 줄 모르며 간단한 오류도 수정할 수 없습니다.
    그래서 프로그램 만드는 것은 전적으로 GPT-4o에 의존했습니다.
    다만 몇 년전에 파이썬 공부를 하려고 환경만 설치해 놓은 상황이였습니다.

     

    파이썬 설치에 관한 내용은 아래 포스팅을 참고해 주시기 바랍니다.

    https://dolpali.tistory.com/345

     

    파이참(PyCharm)을 이용하여 파이썬 초기 구동 환경 설정하기(ft. 아나콘다(Anaconda))

    지난글에서 파이썬은 하나도 할 줄 모르는 상태에서 GPT-4o를 이용하여 파이썬 코딩을 했던 경험을 포스팅 한 적이 있습니다. 그 포스팅에서는 파이썬 환경을 구성하는 것에 대해서는 설명하지

    dolpali.tistory.com

     

     

    만드려고 했던 단어카드 예제
    만드려고 했던 단어카드 예제

     

    앞면에 단어가 있고 뒷면에 뜻이 있는 그런 단어장 말입니다. 비단 단어 뿐만 아니라 서술형 문제역시 이렇게 암기 카드로 만들면 좋겠다고 생각 했습니다.

    하지만 프린트 해서 오려서 붙이거나 쓰는 것도 시간이 꽤 들고 시중에 있는 프로그램들은 기능이 좋고 화려했지만 광고가 있거나 유료이거나 너무 많은 기능으로 사용하기가 혼란스러웠습니다. 그러던 중에 GPT-4o를 무료로 사용할 수 있다는 소식을 듣고 이를 이용해 PC에서 돌아가는 단어 암기 프로그램을 만들기를 시도해 봤습니다. 업무를 할 때도 그렇고 공부를 할 때도 그렇고 게으르고 게으른편이라 어떻게든 GPT를 활용해서 쉽게 하려고 하다가 오히려 시간이 더 걸린적도 많은데 이번에는 비교적 짧은시간에 성과가 나왔습니다. 아직 완벽하지는 않지만 추후에 GPT가 수정해 주겠지요. 여튼 저는 파이썬을 할 줄 모르니까요.

     

    단어장 엑셀 파일
    단어장 엑셀 파일

     

    엑셀 파일의 구성은 위와 같았습니다. 뜻이 랜덤하게 나오고 정답을 클릭하면 단어에 해당하는 내용이 보이는 것이 핵심적인 기능입니다.

     


    1. GPT-4o를 이용해 프로그램 만들기-기본 로직 구현

    chatgpt.com에 접속하면 구글 계정을 연동해 GPT-4o를 사용할 수 있습니다. 무료 버전은 많은 질문을 할 수는 없으나 테스트 해보기에는 충분했습니다.

     

    GPT-4o를 이용해 프로그램 만들기-기본 로직 구현

     

    1. 위와 같은 chatgpt화면에 엑셀파일을 드래그 앤 드랍합니다.

    2. [이러한 엑셀의 내용을 암기하기 쉽게 하기 위한 프로그램을 작성해줘. 프로그램은 바로 구동할 수 있어야해.]라고 입력합니다.

     

    아주 금방 코드를 작성해 주었습니다. 신나서 복붙하자마자 오류가 발생했습니다. 그래서 오류를 그대로 붙여 넣고 물어봤습니다.

     

    GPT-4o를 이용해 프로그램 만들기-기본 로직 구현-오류1
    GPT-4o를 이용해 프로그램 만들기-기본 로직 구현-오류1

     

     

    3. [엑셀 파일을 불러오는 중 오류가 발생했습니다:Missing optional dependency openpyxl이라는 오류가 발생해]라고 입력합니다.

     

    이제 해결이 됐나 싶었는데 또 오류가 발생합니다.

    GPT-4o를 이용해 프로그램 만들기-기본 로직 구현-오류메세지1
    GPT-4o를 이용해 프로그램 만들기-기본 로직 구현-오류메세지1

     

    역시 그대로 타이핑해서 알려줍니다.

     

    GPT-4o를 이용해 프로그램 만들기-기본 로직 구현-오류2
    GPT-4o를 이용해 프로그램 만들기-기본 로직 구현-오류2

     

    4. [too many values to unpack expected 2 오류가 발생해]라고 입력합니다.

     

    GPT-4o를 이용해 프로그램 만들기-기본 로직 구현-오류메세지2
    GPT-4o를 이용해 프로그램 만들기-기본 로직 구현-오류메세지2

     

    또 다른 오류가 발생했습니다. 여기 까지 했을 때 프로그램을 완성 못할 수도 있겠다라고 생각했습니다. 계속된 오류에 열받았지만 이번에는 예상 가능한 오류도 해결해 달라는 당부도 해봅니다.

     

    GPT-4o를 이용해 프로그램 만들기-기본 로직 구현-오류3
    GPT-4o를 이용해 프로그램 만들기-기본 로직 구현-오류3

     

     

    5. [too many indices for array: array is 0-dimensional, but 1 were indexed오류가 발생해. 예상 가능한 오류도 함께 해결해줘]라고 입력합니다.

     

    당부가 통했는지 이번에는 정상 동작하는 프로그램을 작성해 줬습니다.

     

    GPT-4o를 이용해 프로그램 만들기-기본 로직 구현-완성

     

    그런데 아주 사소한 문제가 있습니다. 정답을 문제와 함께 보여준다는 점과 3번째 열을 보여주지 않는다는 점과 글자가 너무 큰 점 등등 사소한 문제들도 해결해 달라고 요청해 봤습니다.

     

     


    2. GPT-4o를 이용해 프로그램 만들기-추가 기능 구현

    GPT-4o를 이용해 프로그램 만들기-추가 기능 구현
    GPT-4o를 이용해 프로그램 만들기-추가 기능 구현

     

    기본 기능은 완성되었으니 여기에 기능을 추가해 봤습니다.

    1. [이 코드에 답변버튼을 추가해줘. 처음에는 답변이 보이지 않다가 답변 버튼을 클릭하면 답변이 보이는 기능이 있어. 또한 예문 버튼을 추가해줘. 예문 버튼을 클릭하면 3번째 열에 있는 데이터를 보여줘. 그리고 글자 크기를 조절할 수 있는 버튼도 만들어줘.]라고 입력했습니다.

     

    GPT-4o를 이용해 프로그램 만들기-추가 기능 구현-완성
    GPT-4o를 이용해 프로그램 만들기-추가 기능 구현-완성

     

    이제 원하는 대로 동작하는 프로그램이 작성되었습니다. 예문에 nan이라고 나오는 것은 예문이 없는 경우가 있기 때문입니다.

    이와 같이 엑셀을 읽어서 랜덤하게 문제를 보여주고 답변을 보여주는 기능을 하는 파이썬 프로그램을 작성하는데 GPT-4o는 10분도 걸리지 않았습니다. 프로그램을 완성하는데 걸린 시간보다 포스팅을 작성하는데 걸린 시간이 더 많았습니다. GPT-4o는 정말 물건인것 같네요. 다음에는 N지선다형 문제라던지 답변과 질문을 바꾸는 버튼을 만들어 봐야겠습니다.

     

    다음기회에..
    다음기회에..

     

    GPU-4o를 사용할 수 있는 토큰이 제한적이라 더이상 기능 개선은 하지 못했습니다.

     

    GPT-4o 확인
    GPT-4o 확인

     

    만약 내가한 질문에 대답한 GPT엔진이 궁금하다면 반짝이는 모양의 버튼을 클릭하면 GPT-4o인지 확인할 수 있습니다.

    사용하기 어렵지 않으니 업무에 활용하시어 생산성을 높이시면 좋겠습니다.

    다만 이 글을 보고 프로그램 금방되는데 왜 오래걸리냐며 개발자를 탓하지는 말아주시기 바랍니다. 위와 같은 프로그램은 100줄도 되지 않은 간단한 프로그램이지만 여러분이 사용하시는 업무용 프로그램에서 사용 되는 프로그램은 최소 몇 천에서 몇 만, 몇 십만줄의 프로그램이고 수정으로 인한 영향도 분석 등 개인적으로 만들어 사용하는 프로그램과는 고려해야하는 사항도 다르고 걸리는 시간도 다르기 때문입니다.