본문 바로가기

분류 전체보기64

바이브 코딩(Vibe coding) 이 어떤데? 링크드인에서 해외 개발자들이 최근 심심찮게 올리는 게시물이 바이브코딩에 대한 것이다. 바이브코딩이란 코딩의 모든 과정을 AI 에게 맡기고 개발자는 그저 AI 가 답변한 결과물을 복사 붙여넣기만 하는 방식인데, 이슈가 되는 지점은 이렇게 해도 프로젝트가 작동한다는 것에 있다. 이것을 두고 이게 진정한 코딩이라고 할 수 있느냐는 갑론을박이 치열하게 진행중이다. 사실 그런데 기존에도 (대부분의) 개발자들은 구글링을 하고 스택오버플로우를 바이블 삼아 코딩을 해왔다. 오죽하면 개발자 밈중에 내 코드가 왜 오류인지 모르지만, 왜 작동하는지도 모른다는 밈이 있을까. 이제는 구글링과 스택오버플로우가 AI 로 진화하는 과정에 있다고 보는게 맞다고 생각한다. 그리고 이러한 모습이 우리의 미래가 될 것이다. 예를 들어 영화.. 2025. 2. 13.
Expo 프로젝트에서 프론트엔드 코드 수정 후 웹 빌드 반영하는 방법 Expo를 사용해 프론트엔드를 개발하고, Render에 백엔드를 배포한 후 웹 빌드를 함께 배포하는 구조를 사용하고 있다.하지만 프론트엔드 코드를 수정한 후에도 변경 사항이 반영되지 않는 문제가 발생하였는데, 코드를 고쳐도 업데이트가 되지 않고 계속해서 이전 버전의 오류가 발생하여 며칠간 골머리를 앓았다.이 문제를 해결하기 위해 여러 방법을 시도한 후 웹 빌드를 다시 생성하고 백엔드 서버에 반영하는 방법을 정리해보았다.🔎 원인 분석Expo를 사용하면 웹 빌드를 dist 혹은 web-build 폴더에 생성하게 된다.하지만 프론트엔드에서 코드를 수정해도 백엔드의 기존 web-build 폴더를 덮어쓰지 않으면 변경 사항이 반영되지 않는다.즉, 웹 빌드를 새로 생성한 후 백엔드의 web-build 폴더를 교체.. 2025. 2. 10.
LibriSpeech 기반 ResNet, DenseNet, 그리고 앙상블 모델 개발기 서론: 음성 데이터를 활용한 딥러닝 프로젝트 이 프로젝트는 지난 2021년에 진행한 프로젝트이다. 당시 대학원 졸업 논문 주제를 고민하다가 LibriSpeech 데이터셋을 사용하여 음성 데이터를 기반으로 하는 ResNet, DenseNet 모델을 학습시키고, 이를 앙상블하여 성능을 향상하는 프로젝트를 진행하기로 결정했다.이번 포스팅에서는 (매우 늦은 감이 있지만) 당시 프로젝트를 진행하며 겪은 다양한 오류와 해결 과정을 정리하고자 한다. 딥러닝 기반 음성 인식 모델을 구현하는 과정에서 발생하는 문제들을 어떻게 해결했는지 공유하기 위함이다.1. LibriSpeech 데이터셋과 전처리 과정1.1 LibriSpeech 데이터셋LibriSpeech는 읽기 음성 데이터를 포함한 대규모 ASR(Auto Speech.. 2025. 1. 30.
DeepSeek 가 던진 충격 : 우리는 무엇을 놓치고 있었을까. 며칠 전에 DeepSeek 가 발표한 R1 모델 관련 글을 썼고, 오픈소스와 연관 지어서 앞으로 AI 업계의 미래를 예측해 보았는데 내 생각보다 너무나 빠른 속도로 충격파가 발생하고 있다. 오늘 DeepSeek 에서 이미지 생성 및 분석이 가능한 또다른 오픈소스 AI 모델인 Janus-pro 를 공개하였고 역시나 OpenAI 의 DALL-E 를 능가하는 성능을 보여주었다. 그리고 엔비디아의 주가가 17% 폭락했다. 이와 같은 성능이 가능한 이유, 그리고 엔비디아가 폭락하는 이유가 무엇일까.  먼저 배경부터 설명하자면, 현재 최첨단 AI 모델을 훈련시키는 비용은 엄청나게 비싼 상황이다.OpenAI, Anthropic 같은 회사들은 계산에만 1억 달러 이상을 쓰며, 4만 달러짜리 GPU 수천 대가 필요한 대.. 2025. 1. 29.
[React Native] Invariant Violation: "main" has not been registered. React Native 프로젝트에서 파일 호출 순서는 package.json의 main 필드와 index.js 파일의 설정에 따라 달라진다.일반적으로 Expo 또는 React Native 앱의 실행 흐름은 다음과 같다.1. package.json 확인package.json 파일의 "main" 필드가 앱의 진입점(entry point)을 결정하며, 기본적으로 다음과 같이 설정되어 있어야 한다."main": "index.js" 즉, index.js 파일이 먼저 호출된다.2. index.js 파일의 역할index.js 파일은 프로젝트의 진입점(entry point)으로, AppRegistry를 사용해 앱의 루트 컴포넌트를 등록한다.index.js 예시:import { AppRegistry } from 'rea.. 2025. 1. 28.
Working in public : 오픈소스의 미래 DeepSeek 이 OpenAI 의 o1 급 성능의 AI 모델의 오픈소스와 개발방식을 공개했다. 이제 누구나 o1 급 AI 모델에 자체적으로 학습을 시킬 수 있는 시대가 도래한 것이다. 자세한 성능 데이터는 아래 표에서 확인 가능한데, 작은 크기의 AI 모델에서 큰 모델의 지식 Distill 을 통해 경쟁력 있는 성능을 이끌어 내는 것이 가능하다는 기술적인 포인트가 매우 흥미롭다. 게다가 이렇게 오픈소스로 공개하게 되면, 이를 기반으로 한 AI 서비스들은 마치 스마트폰의 안드로이드가 그러했듯이 우리 일상에 더욱 빠른 속도로 침투하게 될 것이다. 뿐만 아니라 지금까지 미국의 AI 기업들이 기술공개에 주저 했던 것이 결국 발목을 잡으면서, 현재 AI 오픈소스를 주도하고 있는 중국이 AI 패권을 잡게 될 가능.. 2025. 1. 25.