오픈소스 AI 생태계에서 가장 거센 바람을 일으킨 모델을 하나 꼽으라면 단연 DeepSeek R1입니다 (DeepSeek R1 Overview). 단순히 다음 단어를 예측하여 답변하는 기존 일반 AI 모델과 달리, DeepSeek R1은 질문을 받은 후 스스로 논리적 단계를 검토하고 생각하는 '추론(Reasoning)형 모델' 시대를 열었습니다. 이번 글에서는 DeepSeek R1의 구조적 특징과 로컬 구동 방법, 그리고 실전 업무 활용 분야 3가지를 정리해 드립니다.1. DeepSeek R1 개요 및 주요 특징 분석DeepSeek R1은 상용 고성능 모델과 겨룰 수 있는 오픈 추론 모델로, 연구자 및 개발자 커뮤니티에서 폭발적인 반응을 얻었습니다. 생각의 사슬 (Chain of Thought): 최종 ..
Claude Code를 사용하다 보면 반복적인 작업 패턴이 생기기 마련입니다. 코드 리뷰를 할 때마다 같은 체크리스트를 확인하거나, 디버깅할 때마다 동일한 절차를 따르게 되죠. 이런 작업을 전문화된 AI 에이전트에게 위임할 수 있다면 어떨까요? 바로 그것이 사용자 정의 Subagent입니다.이 글에서는 Claude Code에서 나만의 Subagent를 만드는 방법을 처음부터 끝까지 정리해 보겠습니다.Subagent란 무엇인가?Subagent는 특정 작업에 특화된 AI 어시스턴트입니다. 메인 Claude 대화에서 복잡한 작업을 만나면, 해당 작업을 전문 Subagent에게 위임하여 독립적으로 처리하게 할 수 있습니다.각 Subagent는 독립된 컨텍스트 윈도우에서 실행되며, 다음과 같은 요소를 개별적으로 ..
ELK 알림 설정 가이드ELK 스택은 로그 수집·검색을 위한 매우 강력한 플랫폼이지만, 애플리케이션이나 인프라의 이상 현상이 발생했을 때 이를 자동으로 알려주지 않으면 문제를 빨리 발견하기 어렵습니다. Alerting 기능을 사용하면 일정 조건을 충족할 때 사용자에게 알림을 보내 실시간으로 대응할 수 있습니다. 이 글에서는 초보자도 쉽게 따라할 수 있도록 Kibana에서 기본 알림을 설정하는 방법과 Elasticsearch Watcher를 통한 고급 설정 방법을 설명합니다.1. Alerting 용어와 개념Alerting은 여러 구성 요소로 이루어집니다. 각각의 역할을 이해하면 알림 규칙을 설계하기 쉬워집니다.규칙(Rule): 모니터링할 조건과 시간 간격을 정의합니다. 규칙은 지정된 스케줄에 따라 실행되며..
Elastic APM 설정 가이드Elastic APM은 엘라스틱 스택에 내장된 애플리케이션 성능 모니터링(Application Performance Monitoring) 시스템으로, 서비스 응답 시간, 데이터베이스 쿼리 시간, 캐시 호출 시간 등 다양한 항목을 실시간으로 모니터링하여 성능 문제를 감지하고 진단할 수 있게 해줍니다. APM을 통해 처리량(Throughput), 지연 시간(Latency), 에러 정보를 파악하고 분산 트레이싱을 통해 마이크로 서비스간 요청을 추적할 수 있습니다.Elastic APM 구성 요소Elastic APM은 다음과 같은 구성 요소로 이루어집니다.APM 에이전트(APM agent): 애플리케이션 내에서 실행되며 성능과 오류 데이터를 수집하여 APM 서버로 전송합니다.APM..
1. Spec Kit이란?Spec Kit은 Spec-Driven Development (사양 중심 개발) 방식을 돕기 위한 툴킷입니다. 전통적인 방식에서 “먼저 코드를 짜고 나중에 문서를 작성”하던 흐름 대신, 사양(specification, 스펙)을 먼저 정의하고 이 스펙을 실행 가능한 중심(“source of truth”)으로 삼아 개발 과정을 진행하는 접근을 채택합니다. (GitHub)특히 GitHub Copilot, Claude Code, Gemini CLI 같은 AI 코드 생성 도구(coding agent)와 함께 사용하면서, AI가 더 명확한 사양을 바탕으로 코드를 생성하도록 유도하는 구조입니다. (GitHub)이렇게 사양 중심으로 개발을 시작하면, 요구사항의 애매함을 줄이고 AI가 잘못된 가..
Public NAT IP는 내부 네트워크의 서버(사설 IP)와 외부 인터넷(공인 IP) 사이에서 주소를 변환해주는 '문지기' 또는 '안내데스크' 역할을 합니다. 이 과정을 통해 내부 서버의 실제 주소를 숨기면서 외부와 안전하게 통신할 수 있게 되죠.어떻게 동작하는지 회사 안내데스크에 비유해서 단계별로 설명해 드릴게요. 🏢 회사 안내데스크 비유외부 인터넷: 회사 밖 도로Public NAT IP: 회사의 대표 주소 및 대표 전화번호 (예: 경기도 성남시 분당구 판교역로 235 / 031-123-4567)NAT 장비 (방화벽/라우터): 1층 안내데스크 직원 👩💼Virtual Server IP: 개발팀 김대리의 내선 번호 및 자리 위치 (예: 1234 / 5층 개발팀 A-12)#작동 방식 (단계별 설명)..
코틀린 컴파일러가 suspend 함수를 어떻게 Continuation-기반 상태 머신으로 바꾸는지, 주요 과정을 단계별로 정리해 보겠습니다.1. 함수 시그니처 변환 (CPS: Continuation Passing Style)원래 형태의 suspend 함수suspend fun foo(x: Int): String { val a = computeSomething(x) delay(1000) // suspend 지점 return "Result: $a"}는 컴파일 시 다음처럼 마지막 파라미터로 Continuation 을 받고, 리턴 타입은 Any? (혹은 Object) 로 바뀝니다.fun foo(x: Int, completion: Continuation): Any?continuati..
NeoForge 모드 개발을 위한 프로젝트 세팅은 Mod Generator를 사용하는 것이 가장 표준적이고 간편한 방법입니다. 아래 단계에 따라 쉽게 설정할 수 있습니다.1. 사전 준비물 ⚙️프로젝트를 생성하기 전에 개발 환경에 다음이 설치되어 있어야 합니다.Java Development Kit (JDK) 21: NeoForge는 최신 마인크래프트 버전을 위해 JDK 21 버전을 필요로 합니다. Microsoft Build of OpenJDK 등을 추천합니다.통합 개발 환경 (IDE): Java와 Gradle을 잘 지원하는 IDE가 필요합니다. IntelliJ IDEA (Community 버전도 충분) 또는 Eclipse가 가장 많이 사용됩니다.2. NeoForge Mod Generator 사용하기 📝..
- Total
- Today
- Yesterday
- springai
- 디자인패턴
- Java
- redis
- method Area
- deepseek
- cqrs
- 코프링
- 자바
- Heap Area
- MCP
- generated_body()
- Claude Agent SDK
- RESTfull
- ai통합
- unreal engjin
- Subagent
- 언리얼엔진
- JVM
- AI 에이전트
- model context protocol
- vite
- 일급 객체
- 코틀린
- 카프카 개념
- 언리얼엔진5
- 타입 안전성
- 스브링부트
- Stack Area
- First-class citizen
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | ||
| 6 | 7 | 8 | 9 | 10 | 11 | 12 |
| 13 | 14 | 15 | 16 | 17 | 18 | 19 |
| 20 | 21 | 22 | 23 | 24 | 25 | 26 |
| 27 | 28 | 29 | 30 |
