Releases: creno-va/korail-program
Releases · creno-va/korail-program
Release list
v1.2.0
v1.2.0
Offline bundle release: the installer now ships the Gemma 4 E2B vision
model alongside the app, so a fresh install is ready to run without the
in-app model download step.
Added
- The Windows installer now includes the
gemma4:e2bmodel (about 6.7GB).
Installing the setup files places the model directly into the user model
directory, so the app can run analysis immediately after installation. - Disk-spanning installer layout: because a single Setup.exe cannot exceed
Windows' 4.2GB limit, the installer is split into
KorailAnalyzerSetup-1.2.0.exeplus numbered.binfiles. Keep all
files in the same folder and run the.exe.
Changed
- Reverted the v1.1.0 OpenAI API migration; local Ollama inference is the
only judge backend again. - Gemma E2B evidence fields are now rewritten in Korean with a few-shot
example, and non-Korean evidence is replaced with a fallback string at
parse time.
Included
- Bundled Ollama and FFmpeg runtimes; no separate Ollama installation is required.
- Model-specific prompt harnesses for supported Qwen3-VL and Gemma 4 variants.
v1.1.0
v1.1.0
주요 변경: GPT API 복귀
AI 판정 엔진을 로컬 Ollama에서 OpenAI GPT 비전 API로 다시 전환했습니다.
변경 내용
- 프레임 판정(judge)과 역명 OCR이 OpenAI Responses API를 호출합니다. 기본 모델은
gpt-5.6-terra입니다. GPT API 설정모달에서 API 키를 저장하고 모델을 선택합니다. 키는 이 PC의 앱 설정 파일에만 보관됩니다.- 설치본에서 Ollama 런타임 번들링을 제거해 설치 용량과 빌드 시간이 크게 줄었습니다.
- 로컬 모델 설치·다운로드 UI, Ollama 서버 관리(브리지·워치독)를 제거했습니다.
- v1.0.x의 UI 개선(홈 워크플로, 프레임 그룹 리포트, 영상 보관함, 단일 프레임 이벤트 유지)은 그대로 유지됩니다.
호환성
- 분석에 인터넷 연결과 OpenAI API 키가 필요합니다. 사용량만큼 API 비용이 발생합니다.
- 분석 프레임이 OpenAI API로 전송됩니다. 오프라인 분석은 지원하지 않습니다.
- CLI의
--ollama-url옵션이--openai-base-url/--openai-api-key-env로 변경되었습니다. - 기존 로컬 모델(
KorailAnalyzer/ollama/models)은 더 이상 사용하지 않습니다. 디스크 공간이 필요하면 해당 폴더를 직접 삭제하세요.
v1.0.9
v1.0.9
Small-model accuracy patch: dedicated Gemma E2B harness and accuracy warnings.
Fixed
- Gemma 4 E2B rated virtually every frame as risk "없음" (none). The 2B edge
model cannot follow the full judge instructions, so it now uses a
dedicated short system and user prompt focused on plants near wires, and
its token budget was raised from 320 to 512. Larger models keep the full
harness.
Added
- The model settings dialog now shows an accuracy warning on Gemma 4 E2B
and E4B: vegetation judgment is limited on these models, and Gemma 4 12B
or Qwen3-VL 8B are recommended when precision matters.
Included
- Bundled Ollama and FFmpeg runtimes; no separate Ollama installation is required.
- In-app vision model download, hardware recommendation, installation, and selection.
- Model-specific prompt harnesses for supported Qwen3-VL and Gemma 4 variants.
v1.0.8
v1.0.8
Suspicion recall patch: single-frame detections now surface as events.
Fixed
- Suspicious vegetation events were never generated ("의심 수목 0건") even
when the model flagged frames. Three chained gates silently dropped
detections and are now relaxed:- The event minimum duration equaled the sampling interval (15s at the
default), so any single-frame detection was discarded. The batch
pipeline now uses a 2s minimum, so one suspicious frame becomes an
event. - A frame only counted as risky when
has_treeornear_catenarywas
also true. Small models fill these auxiliary flags inconsistently, so
risk_levelalone now qualifies a frame. - Events were built only from frames that had saved a capture, coupling
event generation to the report-risk filter. Events are now built from
all risky observations.
- The event minimum duration equaled the sampling interval (15s at the
- Gemma-style contradictory answers (
has_tree: truewith
risk_level: "none") are promoted to low risk instead of being discarded,
so visible trackside trees always surface as suspicions. - Low-confidence frames (
bamboo_likely < 0.6or missing evidence) are
forced toneeds_human_review=trueeven when the model answers false,
keeping single-frame groups eligible for events.
Included
- Bundled Ollama and FFmpeg runtimes; no separate Ollama installation is required.
- In-app vision model download, hardware recommendation, installation, and selection.
- Model-specific prompt harnesses for supported Qwen3-VL and Gemma 4 variants.
v1.0.7
v1.0.7
Model call stability patch: fix empty responses on Qwen models.
Fixed
- Empty model responses ("Model returned an empty response") on Qwen models.
The Qwen harness sampled withtemperature: 0.0and a fixed seed, so when
the model emitted EOS as the first token, every retry deterministically
repeated the same empty output. Qwen now samples attemperature: 0.2, and
empty-response retries change the sampling seed so the model draws a
different token path. Gemma models were unaffected (already sampling at
temperature: 1.0). - Model requests no longer fall back repeatedly and end with "빈 응답"
(empty response). The request chain introduced in v1.0.6 retried each
format with and withoutnum_predict(up to six attempts per frame) and
still surfaced an empty-response error when all attempts returned empty
content. Requests now use the v1.0.3 order — structured schema,"json",
plain — and return the first successful response as-is. - Removed the dead empty-response failure classification from the analysis
batch pipeline; empty model text is now reported as a frame-level parse
failure, matching v1.0.3 behavior.
Kept from v1.0.6
- Timeout resilience for low-spec PCs: 600s request timeout with one retry,
and timeouts are excluded from the consecutive-failure abort threshold. - Structured Ollama error classification (timeout, connection,
model-not-installed, non-vision, out-of-memory). - Stricter risk judging prompts and the empty-text parse guard.
Included
- Bundled Ollama and FFmpeg runtimes; no separate Ollama installation is required.
- In-app vision model download, hardware recommendation, installation, and selection.
- Model-specific prompt harnesses for supported Qwen3-VL and Gemma 4 variants.
v1.0.6
v1.0.6
Model call reliability and stricter risk judging.
Fixed
- Model requests no longer stall and abort with "빈 응답" on low-spec PCs.
Requests now run plain-first (no structured format), which avoids the
schema-validation token overhead that exhaustednum_predictand produced
empty 200 responses. The structured schema remains as the final fallback,
and the unlimited-token-budget retry was removed. - Analysis no longer aborts after repeated failures when a timeout is the
cause; timeouts are retried once and excluded from the abort threshold.
Changed
- Risk judging is now more sensitive. The judge prompt instructs the model to
choose the higher risk level when in doubt, to count small or distant plants
aligned with the corridor, and to request human review for blurred or
partially visible frames. Motion blur was added to the medium-risk
uncertainty conditions. - Reports cover frames rated 주의 (medium) or higher; 관찰 (low) frames stay
in observations.json only.
Included
- Bundled Ollama and FFmpeg runtimes; no separate Ollama installation is required.
- In-app vision model download, hardware recommendation, installation, and selection.
- Model-specific prompt harnesses for supported Qwen3-VL and Gemma 4 variants.
v1.0.5
v1.0.5
Video playback fix, durable video storage, and report filtering.
Fixed
- Video playback now works in the installed app: the Qt Multimedia FFmpeg
backend DLLs (ffmpeg.dll) are bundled with the executable, so the embedded
player, seek bar, and playback controls are functional on Windows.
Previously the player failed with "영상을 재생할 수 없습니다" because the
frozen app shipped without the media backend. - Reports now cover frames rated 주의 (medium) or higher. 관찰 (low) frames
are omitted from the Markdown, HTML, and PDF report bodies; they remain
available in observations.json.
Added
- Videos are now copied into app-managed storage (
KorailAnalyzer/videos)
when analysis starts. Playback, analysis, and reports reference the stored
copy, so past records remain viewable even after the original file is
moved or removed (e.g. camera memory cards, USB drives). - Identical videos are stored once: the vault filename is derived from the
file digest, so re-adding the same video does not duplicate storage.
Included
- Bundled Ollama and FFmpeg runtimes; no separate Ollama installation is required.
- In-app vision model download, hardware recommendation, installation, and selection.
- Model-specific prompt harnesses for supported Qwen3-VL and Gemma 4 variants.
v1.0.4
v1.0.4
Reliability patch for low-spec PCs and report format revert.
Fixed
- Analysis no longer aborts on slow machines: the Ollama request timeout was raised from 180s to 600s, timed-out requests are retried once, and timeout failures no longer count toward the consecutive-failure abort threshold.
- Timeout failures are now reported as "응답 시간 초과" instead of being misclassified as Ollama server connection errors.
- The bundled Ollama server is now supervised by a watchdog during analysis: if the server process dies mid-run, it is restarted automatically instead of failing every subsequent frame.
- Ollama errors are classified structurally (timeout, connection, model-not-installed, non-vision, out-of-memory) instead of by string matching, so failure summaries in reports are accurate.
Reverted
- Report format reverted to v1.0.3 behavior: safe frames (risk level "없음") are included in reports again, and the "안전"/"safe" label mapping introduced in the initial v1.0.4 was removed.
Changed
- Ollama server lifecycle (start, health check, watchdog, shutdown) moved out of the main window into a dedicated bridge module (
app/ollama_bridge.py). - Removed the test-only
build_ollama_chat_payloadcompatibility helper.
Included
- Bundled Ollama and FFmpeg runtimes; no separate Ollama installation is required.
- In-app vision model download, hardware recommendation, installation, and selection.
- Model-specific prompt harnesses for supported Qwen3-VL and Gemma 4 variants.
v1.0.3
v1.0.3
macOS reboot reliability patch for the bundled Ollama runtime.
Fixed
- Fixed the "Ollama 런타임 없음" error on macOS when the app was launched from Finder after a reboot: GUI apps inherit a minimal PATH without Homebrew, so
ollama/ffmpeginstalled via Homebrew (/opt/homebrew/bin,/usr/local/bin) are now discovered directly. - Extended the bundled Ollama server startup wait from 4.5s to 15s so cold boots right after a reboot no longer fail with "Ollama 시작 실패".
- Fixed installed models being reported as "미설치" right after the server started: the model list is now re-queried once when
/api/tagsreturns an empty list, and the query timeout was raised from 5s to 10s.
Included
- Bundled Ollama and FFmpeg runtimes; no separate Ollama installation is required.
- In-app vision model download, hardware recommendation, installation, and selection.
- Model-specific prompt harnesses for supported Qwen3-VL and Gemma 4 variants.
v1.0.2
v1.0.2
Home page visual polish.
Changed
- Updated the home page title text to "전차선로 지장수목 감지".
- Enlarged the home page title to 36px for better readability.
- Hid the CRENOVA co-branding logo from the home page.
Included
- Bundled Ollama and FFmpeg runtimes; no separate Ollama installation is required.
- In-app vision model download, hardware recommendation, installation, and selection.
- Model-specific prompt harnesses for supported Qwen3-VL and Gemma 4 variants.