
공개된지는 약 5개월정도 지났는데, 마이크로소프트사는 LIDA라는 라이브러리를 출시하였다. 이 라이브러리는 주로 LLM을 활용하여 데이터 시각화 및 인포그래픽을 자동으로 생성할 수 있는 기능을 제공합니다. 즉, LIDA는 데이터 시각화 및 데이터를 정확하게 나타내는 인포그래픽을 생성할 수 있는 라이브러리라고 할 수 있습니다. LIDA는 크게 아래 4가지 기능을 제공하는 모듈로 구성되어 있습니다.
1. SUMMERIZER : 주어진 데이터셋을 자연어로 요약하여 변환해주는 기능
2. GOAL EXPLORER : 주어진 데이터셋으로부터 가능한 시각화 목표를 나열
3. VISGENERATOR : 주어진 데이터셋의 시각화 코드를 생성, 정제, 실행 및 필터링 제공
4. INFOGRAPHER : Image Generation Module 활용해서 주어진 데이터셋에 맞는 정형화된 그래픽 생성
이러한 LIDA의 기능은 Matplotlib, Seaborn, Altair, D3 등 시각화 라이브러리와 호환가능하며 Open OpenAI, Cohere 및 Huggingface에 탑재된 모델을 다양하게 사용할 수 있도록 제공합니다.
우선 Github에 공개된 LIDA 오픈소스 문서를 활용하여 MacOS에서 이를 실행시켜보았습니다.
python 환경이 python 3.10 이상인지 확인 후, 아래와 같이 pip을 통해 lida 라이브러리를 설치합니다.
pip install lida
LIDA에서 활용할 모델을 OpenAI에서 제공하는 gpt-3.5 모델로 정하였고, 따라서
OpenAI api key를 발급받고 아래 명령어를 실행하여 LIDA 웹 API로 접속하였습니다. 이를 위해 활용할 OpenAI api key를 발급받는 방법은 해당 포스트를 참고하였습니다.
OPENAI_API_KEY=<your open-api key> lida ui --port=8080 --docs
터미널에서 명령어를 실행하면 아래와 같이 url이 출력되고 출력된 url로 접속하면 LIDA DEMO 버전을 실행시킬 수 있다.


이때 주의할 점은 OpenAI는 일반적으로 무료 사용량에 대한 한도를 설정하기때문에, 이를 초과할 경우 추가 비용이 발생할 수 있으며 이 경우 OpenAI 서비스를 사용하면서 할당된 API 사용량 한도를 초과하였다는 오류 메세지('Error processing file: You exceeded your current quota, please check your plan and billing details')가 나올 수 있다.
DEMO 버전이 실행되었다면 보유하고있는 json, csv 파일을 업로드 하고, LIDA에서 제공하는 4가지 모듈 기능들을 자유롭게 활용해 볼 수 있습니다.
예제 데이터셋 cars.csv 파일을 활용하여 간단히 기능 테스트를 진행해보았습니다.
Q : What is the relationship between engine size and horsepower?
A(LIDA)

LIDA에서 시각화 코드를 나타내고 사용자가 질의한 질문에 대해 데이터 시각화를 나타내었는데, 시각화 결과는 아래 기능을 적용하여 사용자가 원하는대로 적용할 수 있다.
Microsoft 사에서 개발한 LIDA 라이브러리를 활용 후 느낀점을 간단히 요약해보았다. 개인적으로는 llm으로 데이터 업로드를 하면 자체 상호작용을 통해 데이터 분석 시각화를 출력해준다는 점에서 매우 참신하였다.
향후 데이터분석 업무를 수행할 때 LIDA를 활용하여 해당 데이터셋에서 얻을 수 있는 Goals와 효과적인 시각화 방법을 파악한 후, 분석을 진행한다면 보다 효율적이고 효과적인 분석이 가능할 것으로 보였습니다.