2026/09 14

[프로젝트] Aetheria 2099 — 같은 학습 결과가 81%와 88.6%로 갈렸다 — 이중 양자화 함정

학습은 끝났다. 어댑터도 잘 나왔다. 그런데 모델을 내보내는 방식만 바꿨더니 점수가 7.6%p 움직였다. 학습을 한 번도 다시 돌리지 않고서.양자화가 뭔지부터7B 모델은 파라미터가 70억 개다. 이걸 원래 정밀도(16비트)로 들고 있으면 14GB쯤 된다. 개인 PC에서 돌리기엔 부담스럽다.그래서 양자화를 한다. 숫자의 정밀도를 낮춰서 크기를 줄이는 것이다. 16비트를 4비트로 줄이면 용량이 4분의 1이 된다. 대신 숫자가 살짝 뭉개진다.사진을 JPEG로 저장하는 것과 비슷하다. 용량은 줄고, 화질은 조금 떨어진다. 적당히 하면 눈에 잘 안 띈다.QLoRA는 이 성질을 이용한 학습 방법이다. 큰 모델을 4비트로 눌러 메모리에 올려두고, 그 위에 작은 부품(LoRA 어댑터)만 학습한다. 덕분에 맥에서도 7B..

AI 에이전트 보안: 툴 응답 메시지로 데이터가 유출되는 이유 (간접 프롬프트 인젝션)

툴을 호출할 수 있는 AI 에이전트를 붙이고 나서 세 시간쯤 지나면, 누구나 한 번은 이 질문 앞에 서게 된다. "사용자가 일부러 악의적인 입력을 넣으면 이 에이전트는 어떻게 반응하는가." 에이전트가 실수로 틀린 답을 내놓는 상황이 아니라, 누군가 작정하고 깨려고 달려드는 상황이다. DEV Community에 올라온 "I attacked my own AI agent before someone else did"는 바로 이 지점을 실제로 공격해보고 기록한 글이다.기술 개요 & 등장 배경여기서 다루는 공격 기법은 프롬프트 인젝션(prompt injection)이다. 공격자가 일반 텍스트 입력 안에, AI 모델이 개발자의 지시라고 착각할 만한 문장을 몰래 끼워 넣어 원래 설계된 동작을 우회시키는 방식이다. 원문..

AI&Machine Learning 2026.09.26

LLM 에이전트 개발 시 꼭 알아야 할 '침묵 실패(Silent Failure)' 분석과 방어 전략

에이전트 파이프라인에 붙인 과학 도구 호출 로그를 들여다보다가 이상한 패턴을 발견한 적이 있다. API 응답 코드는 200이고 에이전트는 "성공"이라고 보고하는데, 실제로 돌아온 데이터는 필드 몇 개가 비어 있거나 검색 결과 개수가 기대보다 훨씬 적었다. 에러도, 경고도 없이 그냥 조용히 일부만 돌아온 것이다. 이번에 소개할 논문 "Silent Failures in Agent-Tool Interaction: An Audit of ToolUniverse"(arXiv:2609.26836)는 바로 이 현상을 정면으로 다룬다.기술 개요 & 등장 배경최근 에이전트형(agentic) AI 시스템은 여러 개의 외부 도구를 자동으로 연결해 파이프라인을 구성하는 방식으로 진화하고 있다. 에이전트가 스스로 검색 API를 ..

AI&Machine Learning 2026.09.25

[AI 아키텍처] Jev — LLM 비용과 속도를 잡는 초고속 AI 라우터

TypeSafe AI 'Jev' 뜯어보기생성 기능 다 빼고 '결정(Decision)'에만 미친 AI 모델이 나온 이유▲ 상태(State)를 입력받아 타입화된 결정(Typed Decisions)만 초고속으로 출력하는 Jev 아키텍처 개념도 요즘 AI 에이전트나 백엔드 파이프라인 만들 때 제일 골치 아픈 게 하나 있다.유저 요청이 들어왔을 때 "이 요청이 환불 문의인가, 그냥 잡담인가?" 혹은 "다음 스텝으로 넘겨도 되는 상태인가?" 같은 단순 분류나 라우팅을 해야 하는 순간인데, 이걸 처리하자고 GPT-4o나 Claude 같은 거대한 LLM을 붙이자니 비용도 무겁고 Latency(응답 시간)도 터무니없이 느리다.그렇다고 JSON output mode로 꾸역꾸역 타입 파싱하자니 가끔 스키마 깨져서 에러 나는..

AI&Machine Learning 2026.09.24

7B 모델에게 소설을 맡겼다가, 분류기로 강등시킨 이야기

AI가 서사를 만드는 게임을 만들었다. 그런데 재미가 없었다. 원인을 찾아 들어갔더니, 문제는 게임 설계가 아니라 모델이 글을 못 쓴다는 것이었다. 이 글은 그걸 측정으로 확인하고, 모델의 역할을 바꾼 기록이다.만들던 것Aetheria 2099 — 한국어 사이버펑크 텍스트 어드벤처다. 플레이어는 기억 브로커 제인이 되어 도시의 진실이 담긴 칩 #00을 두고 세 세력 사이에서 선택한다.기술적으로 자랑하고 싶었던 건 이거였다:Claude를 교사로 삼아 데이터를 증류하고Qwen2.5-7B를 QLoRA로 파인튜닝해서로컬 Ollama로 돌린다 — API 비용 0원, 완전 오프라인그리고 그 모델이 매 턴 나레이션·대사·선택지 3개를 JSON으로 만들어냈다. 홀드아웃 40문항 평가에서 스키마 준수율 91.8%. 숫자..

[프로젝트] Aetheria 2099 — 내 모델로 돌아가는 한국어 사이버펑크 텍스트 어드벤처

한 달 동안 만든 개인 프로젝트 기록. 게임을 만들었고, 거기 들어갈 AI 모델도 직접 학습시켰고, 결국 그 모델에게 글쓰기 대신 다른 일을 맡기게 된 이야기.기간: 2026.08 ~ 2026.09스택: Vite · React · Tailwind / Qwen2.5-7B · QLoRA · MLX · Ollama플레이: itch.io에서 무료 체험판 플레이하기 — 브라우저에서 바로, 한국어·영어어떤 게임인가정화된 지구, 거대한 돔 안에 갇힌 인류. 플레이어는 기억 브로커 제인이 되어 도시의 진실이 담긴 칩 #00을 두고 세 세력 사이에서 선택한다.렌 — 칩을 팔아넘기려는 암시장 브로커카엘 — 칩을 회수하려는 보안국 수사관에코 — 칩으로 도시를 깨우려는 방송 해커플레이어는 선택지 3개 중 하나를 고르거나, 직..

KBO 마블 웹게임 플레이 해보세요 #12 (완결)

12화 (마지막) — 직접 해보세요, 그리고 회고1화부터 여기까지 왔다. 기획, 보드, 밸런스, AI, 스킬, 성장, 그래픽… 말로만 설명했는데, 백 마디보다 한 판이 낫다. 지금 이 아래에서 바로 플레이할 수 있다.■ 지금 바로 플레이닉네임 넣고 캐릭터 골라서 시작 → 주사위 굴리고, 기 모아서 스킬 쓰고, 상대를 파산시키면 승리.■ 6개월간 배운 것 (진짜배기)재미는 '기능의 개수'가 아니라 '루프'에서 나온다.기능을 20개 넣고도 재미없던 시절이 있었다(7화). 문제는 기능이 부족한 게 아니라, 한 판이 끝나도 다시 켤 이유가 없다는 것이었다. 성장 루프를 얹고서야 게임이 됐다. 이게 제일 값진 교훈. 배운 것 한 줄 요약 밸런스감으로 맞추지 마라. 수만 판 시뮬레이션이 ..

에셋 0원, 코드로만 만든 게임 그래픽 #11 — CSS로 2.5D 보드와 3D 말 만들기

11화 — 에셋 0원, 코드로만 만든 게임 그래픽혼자 만드는 게임의 진짜 벽은 코드가 아니다. 그림이다. 나는 그림을 못 그리고, 에셋 살 돈도 아까웠다. 그래서 정했다.에셋을 안 사면 된다. 전부 CSS로 그리면 되잖아?■ 2.5D 보드: 사진 아니고 CSS입니다보드를 위에서 살짝 눕히면 입체감이 확 산다. 3D 엔진? 필요 없다. CSS transform: perspective() rotateX() 한 줄이면 평평한 div가 비스듬히 누운 보드가 된다. 아래는 지금 이 글에서 실제로 렌더되는 데모다. ↑ 평범한 사각형 div 5개 + rotateX(38deg) + 아래쪽 그림자 하나. 그게 전부다.다만 함정이 있었다. 보드를 눕히면 칸 안의 글자도 같이 누워서 읽기 힘들어진다. 처음엔 보드를 ..

한 판 끝나도 남는 게 있는 게임 #10 — 수집·성장·정복 시스템 만들기[로그라이크 정복 모드]

10화 — 한 판 끝나도 남는 게 있는 게임9화에서 매치 안의 깊이(스킬)를 만들었다. 근데 7화에서 깨달은 진짜 문제는 따로 있었다. 한 판 끝나면 아무것도 안 남는다는 것. 이겨도 그만, 져도 그만. 다시 켤 이유가 없다.재미있는 한 판보다 어려운 건, "내일 또 켜게 만드는 것"이다.그래서 매치 바깥에 성장 레이어를 통째로 얹었다. 이게 이번 화 주제다.■ 성장 루프: 이 사이클이 중독의 핵심매치 플레이 코인·경험치 가챠·강화캐릭터·스킬·아이템 더 강해짐 정복 모드 도전매치 → 보상 → 성장 → 더 강해짐 → 더 어려운 도전 → 다시 매치. 이 고리가 돌기 시작하면 "딱 한 판만 더"가 나온다.■ 1) 뽑고 싶게: 가챠코인 150으로 뽑는다. 캐릭터·스킬·아이템 세 갈래. 확률로 나오니까 "이번엔 ..

부루마블은 운빨 게임? '스킬'을 넣어서 실력 게임으로 만들었다 #9

9화 — 마블에 '스킬'을 넣다: 운빨 게임 탈출기8화에서 목표를 정했다. 넷마블이랑 물량으로 싸우지 않는다. "이 마블에만 있는 깊이"로 차별화한다. 그럼 그 깊이가 뭐냐. 이번 화 주제다.부루마블의 가장 큰 약점이 뭘까? 주사위 운빨. 잘 굴리면 이기고 못 굴리면 진다. 실력이 낄 틈이 좁다.그래서 넣기로 한 게 액티브 스킬이다. 매 턴 조금씩 차오르는 '기(에너지)'를 모아서, 결정적인 순간에 능력을 발동한다. 주사위는 운이지만, 언제 무슨 스킬을 쓰느냐는 실력이다. 여기서 깊이가 나온다.■ 핵심 규칙은 딱 세 줄매 턴 기(에너지)가 +2 충전된다 (최대 6).스킬은 슬롯에 3개까지 장착.쓸 타이밍은 네가 정한다. 아껴서 한 방에? 자잘하게 계속?이 단순한 자원 관리 하나가 게임을 확 바꿨다. "지..