측정대 위의 노트북, 계측 장치와 데스크톱으로 표현한 PoC 실험

Edge0 연재 5: M2 Air 16GB 실측 결과와 사내 PoC 확장 조건

M2 MacBook Air 16GB에서 Microsoft Learn 검색, Edge0 스트리밍, 문장 단위 한국어 번역을 연결한 에이전트를 실행했습니다. 2026년 9월 13일 확인한 샘플 Gist에는 전체 코드와 함께 TTFT 53.47초를 기록한 실행 결과를 공개했습니다. 마지막 글은 측정에 사용한 질문, 검색과 첫 응답까지의 시간, 생성 답변의 근거, 출력 속도의 해석, 후속 최적화와 사내 PoC 확장 조건을 다룹니다. 4편에서 설명한 클라이언트 계측을 기준으로 결과를 읽습니다. 실행 로그와 측정값부터 살펴보겠습니다. 각 단계의 시간을 비교한 뒤 현재 결과로 판단할 수 있는 범위와 추가 실험이 필요한 범위를 나눠 설명합니다. ...

2026년 9월 17일 · 7 분 ·  rkttu
시간 측정 장치와 노트북 사이에 간격을 두고 이어지는 푸른 유리 패널

Edge0 연재 4: 스트리밍 응답의 TTFT와 출력 속도 계측

2026년 9월 13일 기준으로 연재의 Python 샘플은 Edge0의 SSE 응답을 수신하면서 첫 응답 대기 시간과 출력 속도를 기록합니다. 이번 글에서는 3편에서 만든 그라운딩 프롬프트를 실제 생성 요청으로 연결합니다. 이번 글은 측정 시점, 대기 상태 표시, 작업 스레드의 스트림 수신, 문장 단위 한국어 번역, 측정값 해석을 다룹니다. M2 MacBook Air 16GB 실험에서 첫 응답까지 수십 초를 기다렸으므로 생성 전후의 시간을 나누어 기록했습니다. 측정값의 정의부터 살펴보겠습니다. 서버 응답을 받는 코드와 화면 출력을 분리한 뒤 생성 문장을 번역하고 마지막에 지표를 출력하는 순서로 설명합니다. 전체 프로그램은 Gist의 microsoft_expert_agent.py를 기준으로 사용합니다. ...

2026년 9월 16일 · 7 분 ·  rkttu
문서의 강조 구절을 확대하는 돋보기와 선택한 문서 세 장을 담은 유리 상자

Edge0 연재 3: Microsoft Learn 검색을 연결한 로컬 RAG 에이전트

2026년 9월 13일 기준으로 샘플 Gist는 Edge0 서버, Microsoft Learn CLI, Apple Translation을 Python으로 연결하는 코드를 제공합니다. 2편에서 준비한 실행 환경을 바탕으로 이번 글에서는 검색 자료를 모델 입력으로 만드는 부분을 설명합니다. 이번 글에서는 호스트와 모델의 역할 분담, 질문 정규화와 번역, 검색 결과 선택, 그라운딩 프롬프트와 대화 문맥 관리를 다룹니다. 호스트가 검색 순서를 결정하고 모델은 전달받은 자료를 읽어 답을 구성합니다. 데이터 구조와 입력 처리부터 살펴보겠습니다. 검색한 구절에 출처 번호를 붙이고 현재 질문과 함께 전달한 뒤 후속 질문에 필요한 문맥을 구성합니다. 스트리밍 요청과 성능 계측은 4편에서 다룹니다. ...

2026년 9월 15일 · 6 분 ·  rkttu
노트북 앞의 연산 장치, 문서 카드와 반투명 말풍선을 연결한 구성

Edge0 연재 2: Microsoft Learn과 Apple Translation 실행 환경

2026년 9월 13일 기준으로 이 연재의 샘플은 Edge0-35B, Microsoft Learn CLI, macOS Translation 프레임워크를 사용합니다. 1편에서 정한 역할 분담에 따라 추론 서버와 Python 에이전트 호스트를 별도 터미널에서 실행합니다. 이번 글은 Edge0와 모델 설치, 스트리밍 서버 실행, 공식 문서 검색, 한국어와 영어 번역, 질문 정규화를 다룹니다. 전체 파일은 샘플 Gist의 README.md, apple_translate.swift, microsoft_expert_agent.py에서 확인할 수 있습니다. 실행 조건과 설치 순서부터 살펴보겠습니다. 첫 번째 터미널에서 서버를 시작한 뒤 검색 도구와 번역 CLI를 준비하고, 두 번째 터미널에서 에이전트를 실행할 수 있는 상태까지 구성합니다. ...

2026년 9월 14일 · 6 분 ·  rkttu
은색 노트북 위의 유리 블록과 옆에 쌓인 저장 장치로 표현한 로컬 모델 추론

Edge0 연재 1: 16GB Mac의 35B 로컬 LLM과 근거 기반 에이전트

2026년 9월 13일 기준으로 Edge0는 Apple Silicon용 MLX 백엔드와 Edge0-35B-A3B-preview 모델을 공개하고 있습니다. 저는 M2 MacBook Air 16GB에서 이 모델을 실행한 뒤 Microsoft Learn 자료를 근거로 답하는 기술 전문가 에이전트를 구성했습니다. 이 연재는 35B급 모델의 실행 조건, 검색 자료에 따른 답변 변화, 한국어 입출력 구성, 스트리밍 성능 측정, 사내 PoC로 확장할 때의 조건을 다룹니다. 전체 실행 코드는 Edge0 Microsoft Technology Expert Agent Gist에 정리했습니다. 첫 글에서는 모델을 실행한 경험부터 살펴보겠습니다. 외부 근거를 제공한 실험과 입력 자료의 길이를 줄인 결과를 비교한 뒤 나머지 연재에서 구현할 에이전트의 구조를 설명하겠습니다. ...

2026년 9월 13일 · 5 분 ·  rkttu
밝은 갈색 악보 위의 C#과 여러 경로로 연결한 노드로 표현한 플랫폼별 자동 배포

netcoredbg 기반 C# 확장의 8개 플랫폼 자동 릴리스 구축기

2026년 9월 6일 제가 운영하는 vscode-csharp-autobuild 저장소에서 C# (with netcoredbg) 2.148.23001의 첫 릴리스를 완료했습니다. Windows, Linux, Alpine Linux, macOS의 x64와 ARM64용 패키지를 모두 Open VSX에 게시했고, 공개한 파일의 해시가 검증에 사용한 VSIX와 일치하는지 확인했습니다. 첫 릴리스는 C# 확장과 netcoredbg의 소스 버전, 플랫폼별 패키지, 검증 기록을 함께 제공합니다. 이번 글에서는 기존 커뮤니티의 기여와 AI를 활용한 프로젝트의 출발 취지, 8개 플랫폼의 호환성 검증, 게시 중단 후 복구를 다룹니다. 정기 작업이 새 버전을 발견하면 소스 빌드부터 공개 파일 확인까지 처리하고, 문제가 생기면 해당 후보의 게시를 멈추도록 구성했습니다. 이번 릴리스를 바탕으로 생각하고 있는 후속 개발 도구의 방향도 덧붙입니다. ...

2026년 9월 6일 · 10 분 ·  rkttu
구성 파일이 상태 관리자를 거쳐 사용자 범위의 SDK와 런타임 구성 요소로 연결되는 일러스트레이션

dotnetup 프리뷰: global.json에서 SDK와 런타임 관리까지

Microsoft는 Microsoft Build 2026 사전 녹화 세션 OD804 「Simplifying .NET installs with .NET Up」에서 사용자 단위 .NET 설치를 관리하는 새 도구 dotnetup을 소개했습니다. 2026년 8월 22일 현재 dotnet/sdk 저장소의 release/dnup 브랜치는 Windows, macOS, Linux용 프리뷰 설치 방법과 명령 참조 문서를 제공합니다. 이 글은 세션이 제시한 문제와 설계 의도를 토대로 현재 프리뷰에서 확인할 수 있는 동작을 정리합니다. dotnetup은 관리자 권한 없이 사용자 프로필 아래에 .NET SDK와 런타임을 설치합니다. 저장소의 global.json을 읽어 필요한 SDK 채널을 추적하고 여러 요구 사항이 공유하는 설치 파일을 업데이트하거나 정리합니다. 셸과 애플리케이션이 관리 대상 dotnet을 찾는 방식도 선택할 수 있습니다. 이 글에서는 설치 방식, global.json 해석, SDK와 런타임의 분리, 설치 상태 관리, 자동화 활용을 다룹니다. ...

2026년 8월 23일 · 10 분 ·  rkttu
닷넷봇이 반투명한 숫자 11을 향해 날아가는 밝은 보라색 일러스트레이션

출시를 앞둔 .NET 11의 변경 사항과 도입 판단

Microsoft는 .NET 11 정식 버전을 2026년 11월 10일에 출시할 예정입니다. 2026년 8월 23일 현재 Microsoft는 8월 11일에 공개한 .NET 11 Preview 7을 최신 빌드로 제공합니다. Microsoft는 런타임과 SDK, C# 15, ASP.NET Core, .NET MAUI, Entity Framework Core를 포함한 제품군 전반을 계속 다듬고 있습니다. 정식 출시 전까지 기능과 동작이 달라질 가능성도 남아 있습니다. Microsoft의 .NET 11 Preview 7 발표 이 글에서는 .NET 11의 변화를 지원 주기, 하드웨어 기준선, 런타임과 개발 도구, C# 15, 응용 프레임워크라는 다섯 가지 축으로 정리합니다. 기능의 수보다 기존 서비스를 옮길 때 영향을 받는 지점을 중심에 두었습니다. ...

2026년 8월 23일 · 8 분 ·  rkttu
C# 50줄로 OpenAI Codex CLI를 임의의 LLM에 연결하는 개념 이미지

OpenAI Codex CLI를 Claude·Gemini·Llama 위에서 돌리기 — C# 50줄로

OpenAI의 Codex CLI는 훌륭한 에디터 에이전트 UX를 제공합니다(shell 도구, apply_patch, plan tracking이 모두 갖춰져 있습니다). 문제는 2026년 2월 기준 OpenAI Responses API만 지원한다는 점입니다. Chat Completion 지원은 제거됐고(codex-rs/model-provider-info/src/lib.rs의 WireApi enum에는 Responses만 남아 있습니다), Chat Completion만 지원하는 엔드포인트(Ollama, LM Studio, 즐겨 쓰는 Llama runner)는 그대로 막혀버립니다. 이 글은 .NET 10 file-based 프로그램과 Microsoft.Extensions.AI의 IChatClient 추상화를 활용해 50줄짜리 C# 한 파일로 Responses 호환 서버를 세우고, OpenRouter를 거쳐 Codex CLI가 임의의 모델 위에서 동작하도록 만든 과정을 정리합니다. ...

2026년 5월 27일 · 7 분 ·  rkttu
C#과 Python이 만나는 머신러닝 인터롭 개념 이미지

C#에서 허깅페이스 모델 호출하기: DotNetPy 0.6.0으로 Whisper · sentence-transformers · Stable Diffusion 돌려보기

주말에 작은 C# 라이브러리 DotNetPy 의 0.6.0을 출시했습니다. CPython C API를 직접 호출해 .NET 앱 안에서 Python을 실행하는 인터롭 라이브러리입니다. 이 글은 0.6.0에 포함된 세 가지 머신러닝 샘플 — sentence-transformers 의미 검색, Whisper 음성 인식, Stable Diffusion Turbo 이미지 생성 — 을 어떻게 묶었고, 그 과정에서 PEP 703 free-threaded CPython까지 어떻게 검증했는지에 대한 기록입니다. 시작점: C#만 손에 잡혔는데 모델은 허깅페이스에 있을 때 몇 달에 한 번씩 같은 패턴이 반복됩니다. 자막용 Whisper가 필요하거나, 검색용 sentence-transformer가 필요하거나, 가끔은 Stable Diffusion 같은 모델을 써야 하는데 정작 손에 잡은 도구는 C# 한 가지입니다. 이럴 때 흔히 쓰는 우회로는 하나씩 다 결정적인 단점이 있습니다. ...

2026년 5월 11일 · 9 분 ·  rkttu