작업링크: https://chat.openai.com/share/ce4db6cc-ad59-4b66-b756-0a6c7d704bcb
배경: 지난 기수 때, 코드인터프리터 모드에서 wheel 파일을 넣어 파이썬 패키지를 설치해 chatGPT가 쓸 수 있게 할 수 있다는 정보를 얻었다. 이를 바탕으로 basemap이라는 지도그리는 패키지를 테스트해보다가 태풍이 왔길래 지도에 강수량을 그려보자는 생각에서 출발.
그림: 강수량 추정 레이더 합성자료. 23년 8월 10일 14시 35분. 태풍사례.
(기상청:https://www.weather.go.kr/w/image/radar.do)
목적: Advanced Data Analysis로 위와 같은 그림을 자료만 줘서 그리게 해보기!
목표 질문
wheel 파일(.whl)로 의존성(dependency)이 있는 패키지도 설치될까?
설치한 패키지들을 chatGPT가 알아서 잘 쓸 수 있을까?
임의의 자료(강수량 netCDF)를 읽고 해석할 수 있을까?
요청한 그림을 그릴 수 있을까?
그림에서 컬러맵을 뽑아낼 수 있을까?
1. chatGPT안에서 쓸 wheel 파일 설치하기.
basemap, netCDF4(cftime 필요)
1번 목표 해결. 너무나도 쉽게 설치할 수 있었다. (단, Advanced Data Analysis의 시스템 환경에 맞는 wheel 파일을 설치해야 한다. 파이썬 버전 3.8, 프로세서 x86 64)
basemap 패키지는 지도 그림을 그리기 위해 필요하다.
netCDF4 패키지는 기상 자료는 모두 netcdf 형식의 자료를 쓰기 때문에 자료를 읽기 위해 필요하다.
cftime은 뭔지 모르겠지만 netCDF4에 필요하다고 한다.
2. 자료를 읽고, 그림 그리기.
2.1. 자료 읽기.
강수량 자료는 23년 8월 10일 14시 35분의 레이더 합성의 경량화 자료를 받았다.
(기상자료개방포털: https://data.kma.go.kr/data/rmt/rmtLightList.do?code=11&pgmNo=62&tabNo=5)
이 자료는 본인도 처음 접하는 것이라 잘 모른다.
그림은 다운받은 자료의 세부정보를 나타내고 있고, chatGPT가 이 정보를 이해하길 바랬다.
얼마나 이해했는지 보자.
나보다 더 잘, 빠르게 이해했다 …
2.1 그림 그리기.
이해한 내용을 가지고 그림을 그리게 해보자.
나름 열심히 코드를 짜며 시도해 본다.
그리고 결국 …
쉽게 그림을 그려주었다.
여기서 음수로 표시되는 쓰레기값을 NaN으로 바꾸기 요청과 약간의 수정을 하고, 수정한 그림과 정리한 코드를 요구했다.
수정한 그림은 기상청 그림과 꽤나 유사한 것을 볼 수 있었다.(코드 생략)
3. 컬러맵 추출하기 (실패)
위의 기상청 그림과 똑같이 그리고 싶어서 그림 자체에서 컬러맵을 추출해보고 싶었다.
(작업한지 몇 시간 지났더니 그림이 사라졌다.)
결론은 아직까지는 실패.
컬러바만 잘라서 그림을 줘봐도 잘 추출해 내지 못한다. 나도 그림에서 컬러맵을 추출해 본적이 없어서 아직은 chatGPT에게 어떻게 요청해야할지 모르겠다.
결론
wheel 파일을 통한 파이썬 패키지 설치 쉽게 잘 된다. 환경에 맞는 whl 파일을 받자.
자료에 대해 설명을 안했는데 잘 이해하고 그림을 그려주었다.
(참고로 3차례 각각 다른 시간, 세션에서 시도해 보았는데, 첫번째는 8월달에 힌트를 줘가며 힘들게 이해시켰다. 두 번째로 어제(9월 5일)는 이해를 못했다. 세 번째는 이 글에서 소개한 시도로 별 설명을 하지 않았지만 한번에 알아서 그림까지 그려주었다. 시도들 간에 어떤 차이가 있었는지 알아보고 나 스스로의 프롬프트 쓰는 방법을 정립, 개선해야겠다.)그림에서 정보를 추출하는 방법도 재미있을 것 같지만 아직은 방법을 잘 모르겠다.