Hong의 모든 글

바이브 데이터 사이언스 – Vibe Data Science

바이브 데이터 사이언스란?

바이드 데이터 사이언스, 바이브 데이터 과학은 바이브 코딩이나 바이브 데이터 분석과 같은 종류의 패러다임입니다.

데이터 과학을 AI를 활용해서 즉흥적이고 빠른 수행과 반복 시행을 하는 것을 말합니다.

핵심 특징

  • 자연어 기반 인터페이스: 사용자는 복잡한 코드나 도구 없이, 자연어로 질문을 입력하면 AI가 데이터를 분석하고 결과를 제공합니다. 예를 들어, “지난달 지역별 매출 보여줘”와 같이 말하면 AI가 즉시 시각화와 요약을 생성합니다.
  • 대화형 분석: 단일 질의에 그치지 않고, AI가 이전 대화 맥락을 기억해 연속적으로 질문을 주고받으며 분석을 심화할 수 있습니다.
  • 다양한 데이터 결합: 소셜 데이터, 공공 통계, 금융 데이터 등 이종 데이터를 결합해, 단일 데이터로는 알기 어려운 시장 변화나 소비 트렌드를 입체적으로 파악할 수 있습니다.
  • AI 자동화와 설명력: AI가 데이터 수집, 분석, 시각화, 요약, 보고서 작성까지 자동화하며, 단순 수치가 아닌 인사이트와 해석을 함께 제공합니다.
  • 접근성: 비전문가도 쉽게 사용할 수 있어, 기업의 의사결정자, 마케터, 기획자 등 누구나 데이터 분석의 혜택을 누릴 수 있습니다26.

주요 활용 예시

  • 실시간 트렌드 분석 및 이슈 모니터링
  • 시장·상권 분석 및 신제품 전략 수립
  • 금융 데이터 분석 및 리포트 자동 생성
  • 소셜 미디어 여론 분석

대표 서비스

  • 썸트렌드(Sometrend): 소셜 빅데이터 분석 서비스
  • VAIV Search: AI 기반 자연어 질의·검색 솔루션
  • VAIV Report: AI가 자동으로 보고서를 작성해주는 서비스

기술적 기반

  • 대규모 자연어 처리 및 딥러닝 모델
  • RAG(Retrieval-Augmented Generation) 등 신뢰도 높은 AI 생성 기술
  • 실시간 데이터 연결 및 시각화 엔진

바이브 데이터 과학과 바이브 데이터 분석의 차이

바이브 데이터 분석은 바이브 데이터 과학에 포함되는 개념입니다. 집중하는 목표만 조금 다릅니다.

  • 바이브 데이터 과학은 실시간 데이터 분석, 데이터 결합, 모델링, 피처 엔지니어링에 더 집중합니다.
  • 바이브 데이터 분석은 데이터에서 인사이트를 찾는 것에 더 집중합니다.

요약

바이브 데이터 사이언스는 AI와 빅데이터, 자연어 처리 기술을 바탕으로, 누구나 쉽게 데이터를 탐색하고 인사이트를 얻을 수 있도록 하는 차세대 데이터 과학 수행 방식입니다.

기존의 복잡한 도구 대신, 대화하듯 질문만 하면 AI가 분석·설명·시각화·모델링·평가까지 자동으로 처리해줍니다.

다만 바이브 코딩과 같이 즉흥적이고 철저한 계획없이 하기 때문에 기술부채나 인지하지 못한 문제를 알아채지 못하고 진행하는 문제도 있습니다.

바이브 데이터 분석 – Vibe Data Analysis

바이브 데이터 분석이란?

바이브 데이터 분석, 바이브 데이터 어낼리시스

인공지능(AI)과 빅데이터 기술을 이용해 데이터에서 인사이트를 도출하는 최신 데이터 분석 방식입니다. 소프트웨어 개발에서 유행하는 바이브 코딩과 유사한 개념입니다.

자연어(일상 언어)로 데이터를 분석하거나, AI가 자동으로 보고서를 생성하는 등 기존 방식보다 훨씬 쉽고 빠르게 데이터를 활용할 수 있습니다.


특징

  • 자연어 기반 분석
    사용자가 “이번 달 SNS에서 우리 브랜드에 대한 긍정적인 반응은 얼마나 많았어?”처럼 자연어로 질문하면, AI가 데이터를 분석해 결과를 시각화하거나 요약해줍니다.
  • AI 자동 보고서 생성
    복잡한 데이터 분석 결과를 AI가 자동으로 정리해 보고서 형태로 만들어줍니다. 이를 통해 비전문가도 데이터 기반 의사결정을 쉽게 할 수 있습니다.
  • 실시간/다채널 데이터 수집
    SNS, 뉴스, 블로그, 기업공시 등 다양한 채널의 데이터를 실시간으로 수집·분석할 수 있습니다.
  • 감성 분석 및 연관어 분석
    단순히 언급량만 파악하는 것이 아니라, 긍정/부정/중립 감성 비율, 연관어, 주요 트렌드까지 한눈에 볼 수 있습니다.
  • 시각화 기능
    분석 결과를 다양한 그래프나 인포그래픽 등으로 시각화하여 쉽게 이해할 수 있도록 지원합니다.

데이터 분석의 어려운 점

  • 다양한 관점으로 데이터를 들여다보고 인사이트를 찾는 일을 반복해야 합니다.
  • 비슷하지만 조금씩 다른 방법으로 시행착오를 반복합니다.
  • 실수하면 안 될 데이터 프로세싱을 많이 해야 합니다.

이런 어려움을 AI의 도움으로 쉽게 할 수 있습니다.


대표 서비스 예시

다음과 같은 서비스들이 있습니다.

  • 썸트렌드(Sometrend)
    바이브컴퍼니가 제공하는 대표 빅데이터 분석 플랫폼으로, SNS 등에서 특정 키워드가 얼마나 언급됐는지, 어떤 감성으로 언급되는지, 연관 키워드는 무엇인지 등을 한 번에 분석할 수 있습니다.
  • 에어(AIR, AI Research)
    생성형 AI 기반 시장조사 서비스로, 궁금한 키워드만 입력하면 AI가 필요한 질문을 자동 생성하고, 다양한 채널의 데이터를 분석해 리포트로 제공합니다. 해외 시장 정보도 한국어로 요약해 주는 기능이 있습니다.

활용 사례

  • 마케팅/브랜드 분석: 소비자 반응, 트렌드, 감성 분석 등
  • 시장 조사: 경쟁사 분석, 신제품 반응, 산업 동향 파악 등
  • 고객 서비스: VOC(고객의 소리) 분석, 이슈 조기 감지 등

장점

  • 비전문가도 쉽게 데이터 분석 가능
  • 빠른 의사결정 지원
  • 다양한 채널/언어/형식의 데이터 통합 분석
  • 자동화된 보고서 및 시각화 제공

한눈에 보는 바이브 데이터 분석

구분기존 데이터 분석바이브 데이터 분석(예: 썸트렌드, 에어)
접근성전문가 중심누구나 자연어로 분석 가능
데이터 수집제한적, 수동실시간, 다양한 채널 자동 수집
분석 결과수작업 보고서AI 자동 보고서, 시각화
감성/트렌드 분석제한적긍/부정/중립 감성, 연관어, 트렌드 분석

R, Python과 cursor를 활용한 바이브 데이터 분석

데이터 분석 서비스들은 이용료가 비싼 편입니다. 빅데이터 플랫폼을 제외한 데이터 탐색과 Text to SQL 기능을 사용하면 바이브 데이터 분석을 할 수 있습니다.

R과 Python을 사용하는 이유

LLM은 할루시네이션 문제로 데이터 분석을 하지 못합니다. 데이터를 논리적이고 수학적으로 분석하지 않기 때문입니다.

그래서 데이터를 분석하는 코드를 작성하게 하고 그 결과를 해석하게 합니다. 그렇게 하려면 데이터 분석에 적합한 언어를 사용해야 합니다. R과 Python이 가장 적합한 선택입니다.

Text to SQL

대량의 데이터를 pc와 노트북컴퓨터에 로딩하는것은 어렵습니다. 로컬 컴퓨터에 데이터를 불러올 수 없다면 원격 데이터 플랫폼에서 대량의 데이터를 분리하고 요약한 후 분석해야 합니다. 원격 데이터 플랫폼을 사용할 때 내부분의 플랫폼이 지원하는 sql을 사용하는 것이 일반적인 방법입니다.

Text to SQL은 자연어를 해석해서 AI가 SQL을 작성하게 하고 그 결과를 이용하게 해서 목적한 것을 달성합니다.

요점

바이브 데이터 분석은 AI와 빅데이터를 결합해, 데이터 분석의 진입장벽을 낮추고, 기업이나 개인이 더 빠르고 쉽게 인사이트를 얻을 수 있도록 돕는 혁신적인 방법입니다

바이브 코딩 – Vibe coding

바이브 코딩(Vibe Coding)은 직관적인 감각을 중심으로 코드를 작성하는 개발 방법입니다.

최근에는 LLM의 에이전트 기능에 도움을 받는 코딩 접근 방식을 말합니다. 프로그래머가 코드를 처음부터 직접 작성하는 대신 자연어를 통해 코드를 생성하는 방식을 사용하기 시작했습니다.

실리콘밸리를 중심으로 바이브 코딩이라는 용어가 확산되고 있으며, 바이브는 ‘느낌’이라는 뜻으로 뉘앙스로는 “내키는 대로”라로 해석하는 것이 맞는 것 같습니다.

특징

  • 엄격한 사전 설계 없이 시작합니다
  • 직관적 판단으로 구조를 결정합니다
  • 빠른 프로토타이핑과 반복 개선을 합니다
  • 창의적이고 유연한 문제 해결을 추구합니다

사용하는 도구들

바이브 코딩은 도구의 도움없이 하려면 매우 힘듭니다. 에이전트 모드를 지원하는 챗봇 서비스 또는 개발 도구를 사용해야 편합니다.

  • ChatGPT Codex: 자연어로 코드 생성 요청
  • GitHub Copilot: IDE 내에서 실시간 코드 자동완성
  • Claude Code: 대화형 코드 작성 지원
  • Cursor: AI 기반 코드 에디터
  • Replit: 웹 기반 AI 코딩 환경
  • CodeWhisperer: Amazon의 AI 코딩 도구

현재 가장 인기 있는 것은 Claude Code, Cursor, ChatGPT Codex입니다.

기술부채 문제

바이브 코딩은 심각한 기술부채를 발생시킬 수 있습니다. 개발자가 면밀한 설계없이 변경에 대한 예측이나 계산 없이 구조를 만들고, 코딩 규칙을 지키지 않고 자신만의 방식으로 프로그램을 개발합니다.

당장 수행은 되지만 이런 경우에는 운영 단계에서 더 많은 노력이 필요하고 문제가 발생되었을 좋은 대처를 하기 어렵습니다.

AI가 생성한 코드를 충분히 검토하지 않고 사용하면, 코드 품질 저하, 보안 취약점, 유지보수 어려움 등의 문제가 누적됩니다. 이런 기술부채는 나중에 리팩토링이나 버그 수정 시 몇 배의 비용으로 되돌아옵니다.

소규모 프로젝트나 프로토타입 개발에서는 효과적이지만, 장기적인 유지보수가 중요한 시스템에서는 신중하게 사용해야 합니다.

마무리

AI는 미래의 변화를 예측해서 유연한 구조를 설계하거나 구조를 망치지 않고 정밀하게 부분을 변경하는 것을 잘 하지 못합니다.

작은 과제를 즉흥적으로 하거나 프로토타입을 만드는 것에 바이브 코딩을 해도 되지만 규모가 크거나 계속 운영할 서비스의 구조를 바이브 코딩에 의존하는 것은 매우 위험합니다.

wsl2 종료되지 않게 하기 – Prevent wsl2 from exiting

wsl2를 실행해두고 간이 linux 서버로 쓰려는 목적으로 mini pc에 실행을 해두었지만 wsl2가 며칠 이내에 반드시 자동으로 종료되는 문제가 있었습니다. 그래서 여러가지 설청 방법을 찾아서 wsl2를 항상 켜두는 방법을 전에 올린 적이 있었습니다. 그런데 그 방법은 결과적으로 작동하지 않는다는 것을 알았습니다.

예전보다 실행되어 있는 시간이 길어 조금 오래 버티기는 하지만 wsl2를 실행하고 열어둔 “터미널(terminal)” 이나 “파워쉘(powershell)”까지 종료 시키면서 확실하게 종료됩니다.

아마도 윈도우에서 실향된지 오랜된 wsl을 강제로 종료하도록 확실해게 처리한 것 같습니다. 특히 “명령 프롬프트”나 “파워쉘”을 통해서 실행한 것은 wsl뿐만 아니라 “명령 프롬프트”와 “파워쉘”까지 모두 종료됩니다.

그래서 다른 방법으로 C#으로 wsl2가 죽었는지 학인해서 되살리는 애플리케이션을 간단하게 돌려서 실행했더니 3주 이상 잘 작동하고 있습니다.

간단한 것이지만 소스는 github에 있으니 필요하면 참고하세요.

https://github.com/euriion/wsl-reviver

Supabase 사용자 추가 에러 – Failed to create user: API error happened while trying to communicate with the server.

Supabase는 실시간 처리를 지원하는 데이터 저장 솔루션인데 backend api 기능과 데이터베이스를 묶어놓은 솔루션입니다.

서비스를 서비스로 제공하는 Saas를 구독해서 쓰거나 자체 설치해서 쓸 수 있습니다. 설치형은 docker를 이용해서 설치하게 됩니다.

그런데 설치할 꼼꼼하게 하지 않으면 문제가 생기는 것을 알았습니다.

문제

Supabase를 docker로 Ubuntu에 설치한 후에 대시보드에 접속해서 사용자를 새로 추가하려고 하니 다음과 같은 에러가 발생했습니다.

Failed to create user: API error happened while trying to communicate with the server.

에러 메세지기 매우 불친절해서 오류를 찾는데 시간이 꽤 오래 걸렸는데요 API와 관련된 부분이 잘못 설치된 것인지 확인하고 재설치까지 여러 번 해봤지만 해결되지 않았습니다.

원인 발견

여러가지를 해보다가 발견한 원인은 supabase를 설치할 때 .env를 잘못 세팅한 것이었습니다.

바로 아래의 화면에서 사용자를 추가할 때 추가되지 않는 것인데 사실 사용자 추가 뿐만 아니라 기능 몇가지가 모두 작동하지 않고 있었습니다. 아래 화면은 사용자 추가가 성공한 모습입니다.

supabase의 레파지토리에 docker를 이용해서 설치할 때 사용하도록 .env.local이라는 파일을 제공하고 있고 실제 사용할 때는 .env로 파일 이름을 바꾸고 내용을 수정해서 사용해야 합니다.

파일내용입니다.

############
# Secrets
# YOU MUST CHANGE THESE BEFORE GOING INTO PRODUCTION
############

POSTGRES_PASSWORD=your-super-secret-and-long-postgres-password
JWT_SECRET=your-super-secret-jwt-token-with-at-least-32-characters-long
ANON_KEY=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyAgCiAgICAicm9sZSI6ICJhbm9uIiwKICAgICJpc3MiOiAic3VwYWJhc2UtZGVtbyIsCiAgICAiaWF0IjogMTY0MTc2OTIwMCwKICAgICJleHAiOiAxNzk5NTM1NjAwCn0.dc_X5iR_VP_qT0zsiyj_I_OZ2T9FtRU2BBNWN8Bu4GE
SERVICE_ROLE_KEY=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyAgCiAgICAicm9sZSI6ICJzZXJ2aWNlX3JvbGUiLAogICAgImlzcyI6ICJzdXBhYmFzZS1kZW1vIiwKICAgICJpYXQiOiAxNjQxNzY5MjAwLAogICAgImV4cCI6IDE3OTk1MzU2MDAKfQ.DaYlNEoUrrEn2Ig7tqibS-PHK5vgusbcbo7X36XVt4Q
DASHBOARD_USERNAME=supabase
DASHBOARD_PASSWORD=this_password_is_insecure_and_should_be_updated
SECRET_KEY_BASE=UpNVntn3cDxHJpq99YMc1T1AQgQpc8kfYTuRgBiYa15BLrx8etQoXz3gZv1/u2oq
VAULT_ENC_KEY=your-encryption-key-32-chars-min


############
# Database - You can change these to any PostgreSQL database that has logical replication enabled.
############

이때 위의 내용을 아무렇게나 입력해서 고치면 안되고 JWT_SECRET, ANON_KEY, SERVICE_ROLE은 생성규칙이 있어 그에 맞게 생성된 것을 사용해야 합니다.

여기서 문제가 되는 것이 key를 생성하는 도구가 따로 있다는 것입니다.

생성하는 방법은 아래의 설치 가이드 페이지에 보면 생성하는 도구가 페이지 안에 붙어 있습니다. 페이지에서 버튼을 몇 번 눌러 사용할 값을 바꾼 후에 바뀌는 것들 중 한 세트를 골라서 .env에 넣으면 됩니다.

https://supabase.com/docs/guides/self-hosting/docker

위와 같은 화면입니다.

.env를 위의 페이지에서 생성한 값으로 바꾸고 나서 다음과 docker를 다운시킵니다.

docker compose down

그리고나서 컨테이너를 다시 실행하면 됩니다.

docker compose up -d