Daddy Makers
SW, HW, CG, ART, 건설, 건축 메이크 과정을 정리, 공유하는 블로그입니다 - 대디 메이커
2026년 1월 7일 수요일
2025년 12월 25일 목요일
kaggle 설치 및 사용방법
kaggle 은 윈도우버전과 호환성이 낮다. 우분투에서는 잘 실행된다.
다음과 같은 순서로 설치하면 된다.
1. kaggle 웹사이트 방문 후 가입한다.
2. kaggle > account > setting > new API key 로 키값을 얻는다. 여기서 브라우저 설정에 따라 kaggle.json이 다운안되는 경우가 많다. 이 경우 다음과 같이 이 파일을 직접 작성해야 한다.
이 파일은 다음 명령으로 생성할 수 있다. 터미널에 입력한다.
mkdir -p ~/.kaggle
echo '{"username":"<user name>","key":"<your key>"}' > ~/.kaggle/kaggle.json
chmod 600 ~/.kaggle/kaggle.json
그 결과 다음 형식의 파일이 생성될 것이다.
{"username":"","key":""}
3. 터미널에서 kaggle 을 설치한다. pip install kaggle
4. 다음과 같이 경진대회 리스트 실행해 본다.
실행 결과는 다음과 같다.
venv_lmm) ktw@tron:~$ kaggle competitions list
ref deadline category reward teamCount userHasEntered
https://www.kaggle.com/competitions/ai-mathematical-olympiad-progress-prize-3 2026-04-15 23:59:00 Featured 2,207,152 Usd 976 False
https://www.kaggle.com/competitions/vesuvius-challenge-surface-detection 2026-02-13 23:59:00 Research 200,000 Usd 446 False
https://www.kaggle.com/competitions/google-tunix-hackathon 2026-01-12 23:59:00 Featured 100,000 Usd 97 False
https://www.kaggle.com/competitions/csiro-biomass 2026-01-28 23:59:00 Research 75,000 Usd 2494 False
https://www.kaggle.com/competitions/recodai-luc-scientific-image-forgery-detection 2026-01-15 23:59:00 Research 55,000 Usd 1029 False
2025년 12월 9일 화요일
Google Antigravity 바이브 코딩 도구 사용기
파이썬으로 주어진 PDF파일을 업로드하면, 여기서 layout, text, image를 분리해서 이를 각 페이지별로 json으로 저장하는 파서 서비스를 개발해. 웹 기반 동작해야 함. 안정적이고 유명한 라이브러리만 사용해.
그럼, 다음과 같이 PRD.md 파일을 우선 생성한다.
이 파일대로 프로젝트 개발하라 요청한다. 다음은 그 결과이다.
실행해본다. 그리고 웹 접속하면 다음 웹앱이 정상동작될 것이다.
적당한 PDF파일로 테스트해본다.
마무리
지금까지 간단하게 구글 안티그레비티 바이브 코딩 도구를 사용하고, 웹 개발 후, 테스트해보았다. 기존 바이브 도구만큼이나 잘 동작하고, 깔끔하게 실행된다. 참고로, 구글 제미나이 프로 버전을 사용한다면 토큰 제한 그리 신경쓰지 않고 활용 가능하다.
2025년 12월 5일 금요일
독일 뮌헨 공과대학교(TUM) 세계 최대 규모 오픈소스 3D 건물 지도 데이터셋 글로벌 빌딩 아틀라스 기술 개발 이야기
이 결과는 오픈소스로 공개되었으며, 기존에 가장 방대하다고 알려진 데이터셋이 포함하던 약 17억 개의 건물 수치를 대폭 상회하는 규모로 개발되었다. 그동안 디지털 지도 데이터에서 소외되었던 아프리카, 남미, 아시아의 농촌 지역 건물들까지 정밀하게 포착해냈다는 점에서 기술적 진보를 보여준다.
개발과정
지도의 기반이 된 데이터는 주로 2019년에 촬영된 플래닛스코프(PlanetScope) 위성 이미지를 활용하였으며, 연구팀은 이를 통해 각 건물의 2D 바닥 면적뿐만 아니라 높이 정보까지 정밀하게 추출했다. 이 지도가 제공하는 높이 데이터의 해상도는 3x3미터 수준으로, 기존의 글로벌 건물 높이 데이터셋들이 주로 90미터 해상도에 그쳤던 것과 비교하면 약 30배 이상 정밀도가 향상된 수치이다. 제공되는 데이터는 건물의 대략적인 형태와 높이를 단순화하여 표현하는 LoD1(Level of Detail 1) 수준의 3D 모델 형식을 따르고 있어, 전 지구적 규모의 방대한 데이터를 다루면서도 활용성을 확보했다.
2025년 11월 29일 토요일
그래프 구조 지원 FalkorDB와 LLM을 활용한 BIM AI 에이전트 개발 방법
개발 환경 및 전제 조건
본 시스템은 온프레미스 환경에서의 실행을 가정하며, 다음 컴포넌트들을 필요로 한다.
- Docker: 그래프 데이터베이스(FalkorDB) 실행
- Python 3.11+: 데이터 변환 및 에이전트 로직 수행
- Ollama: 로컬 LLM 추론 서버
- 하드웨어: LLM 구동을 위한 적정 수준의 GPU 또는 메모리(RAM 16GB 이상 권장)
데이터베이스 서버 구축 (FalkorDB)
FalkorDB는 Redis API 호환 고성능 그래프 데이터베이스다.
docker run -p 6379:6379 -p 3000:3000 -it --rm -v ./data:/var/lib/falkordb/data falkordb/falkordb
상세 옵션은 다음과 같다.
-p 6379:6379: FalkorDB(Redis 프로토콜) 접속 포트 바인딩. Python 클라이언트가 이 포트로 통신한다.
-p 3000:3000: (옵션) FalkorDB 시각화 도구 등을 위한 포트 바인딩.
-it --rm: 대화형 모드로 실행하며, 컨테이너 종료 시 자동 삭제.
-v ./data:/var/lib/falkordb/data: 호스트의 ./data 디렉토리를 컨테이너 내 데이터 저장소로 마운트하여 데이터 영속성(Persistence)을 보장한다.
패키지 및 모델 설치
이제 IFC 파싱, 그래프 DB 연결, LLM 체인 구성을 위한 라이브러리를 pip로 터미널에서 설치한다.
Plaintext
falkordb
langchain
langchain-ollama
langchain-core
ifcopenshell
python-dotenv
streamlit
자연어를 Cypher 쿼리로 변환(Text-to-Cypher)하는 작업에는 코드 생성 능력이 뛰어난 모델이 필요하다. 본 프로젝트에서는 qwen2.5-coder:7b 모델을 사용한다.
Ollama 설치 후 아래 명령어 실행한다
ollama pull qwen2.5-coder:7b
데이터베이스 연결 정보 및 그래프 네임스페이스 설정을 위해 프로젝트 루트에 .env 파일을 생성한다.
FALKORDB_HOST=localhostFALKORDB_PORT=6379FALKORDB_GRAPH=bimFALKORDB_USERNAME=defaultFALKORDB_PASSWORD=
데이터 적재 (ETL Process)
BIM 데이터(.ifc)를 그래프 구조(노드 및 엣지)로 변환하여 FalkorDB에 적재하는 과정이다.
- ifcopenshell을 이용해 IFC 엔티티 파싱.
- src.falkordb_graph_converter 모듈이 엔티티를 노드로, 관계(포함, 집합 등)를 엣지로 변환.
- 속성(Property Set) 정보를 JSON 형태로 직렬화하여 노드에 저장.
python import_ifc_to_falkordb.py
실행된 결과 FalkorDB 의 서버에 접속해 확인해 보면 다음과 같이 파싱된 IFC 데이터셋이 그래프DB로 구축된 것을 확인할 수 있다.
웹 기반 에이전트 실행
데이터 적재가 완료되면 Streamlit 기반의 웹 인터페이스를 구동하여 질의응답 시스템을 활성화한다.
- 질의 입력: 사용자 자연어 질문 수신.
- Cypher 변환: LLM(qwen2.5-coder)이 스키마 정보를 바탕으로 질문을 Cypher 쿼리로 변환.
- 쿼리 실행: FalkorDB 엔진이 그래프 탐색 수행 후 JSON 결과 반환.
- 답변 생성: LLM이 JSON 결과를 해석하여 자연어 답변 생성.
결론
위 과정을 통해 구축된 시스템은 복잡한 BIM 데이터의 위상학적 관계를 그래프로 표현하고, 별도의 쿼리 언어 학습 없이 자연어만으로 건물 정보를 조회할 수 있는 환경을 제공한다. FalkorDB의 빠른 인덱싱, 로컬 LLM의 보안성, vLLM과 같은 캐쉬 도구를 잘 활용하면 실무에 적용 가능한 수준의 응답 속도와 데이터 프라이버시를 확보할 수 있다.
2025년 11월 7일 금요일
Spotify Podcast 이전하기 - BIM Insight Digest 시작
2025년 11월 6일 목요일
어느 코딩 1도 모르는 문과생 바이브 코딩 경험기:)
레퍼런스
- Agentic AI has changed my career. I don’t write code… or at least, I… | by Elliot Graebert | Sep, 2025 | Medium
- Don’t be a Vibe Coder. Problems with Vibe Coding | by Mehul Gupta | Data Science in Your Pocket | Medium
- AI Vibecoding Is a Black Box, Why We Need Transparency and Tinkerability
- Vibe Coding Can Create Unseen Vulnerabilities - DevOps.com



