Skip to content

Releases: ChrisChen667788/Your-First-LLM-Studio

v0.4.0 · Product IA Release

Choose a tag to compare

@ChrisChen667788 ChrisChen667788 released this 12 Jun 04:31

v0.4.0 - 2026-06-12

This release completes the v0.4 product information architecture refactor and publishes the same committed tree to GitHub and ModelScope.

Scope

Move daily product workflows into feature-owned foreground routes, narrow Admin to governance, and establish release evidence for the new product information architecture.

Included

  • Foreground /fine-tune, /compare, /models, /benchmarks, /retrieval, and /experiments routes.
  • Agent chat stream/resume/tool-decision transport in features/agent/chat-actions.ts.
  • Agent submit/replay/resume/tool-decision lifecycle in features/agent/turn-lifecycle.ts and secondary analysis composition in secondary-analysis-panel.tsx.
  • Agent runtime phase/stage/guardrail projection in features/agent/runtime-view-model.ts.
  • Retrieval document CRUD, path import/probe, chunk inspection, and grounded query validation through canonical /api/retrieval* routes.
  • Experiments artifact lineage, cross-feature navigation, filters, and explicit retention policy through /api/experiments.
  • Admin Retrieval product state/actions removed and replaced by a governance handoff.
  • Admin runtime transport and provider/telemetry read models moved into features/admin.
  • Canonical /api/finetune transport plus dated deprecation headers on legacy Fine-tune, Retrieval, Models, and Timeline Admin APIs.
  • Bilingual README route/version map, route ownership matrix, migration notes, and expanded route/screenshot smoke coverage.

Verification

  • npm run typecheck:changed passed for core-agent, core-finetune, agent-api, agent-ui, admin, and app.
  • npm run smoke:routes passed for Agent, Compare, Fine-tune, Models, Benchmarks, Retrieval, Experiments, and Admin.
  • Route smoke also passed the Retrieval foreground snapshot, Experiments timeline, Fine-tune summary, Models discovery, Benchmark progress, Dashboard summary, sessions, and local runtime contracts.
  • npm run smoke:screenshots captured all eight foreground/governance routes successfully.
  • npm run build completed the optimized production build and generated all 42 static pages.
  • In-app browser verification found no runtime error overlay, console error/warning, or horizontal overflow on /agent, /admin, and /fine-tune at 1280 px; the earlier foreground verification also covered /retrieval and /experiments.

Screenshots

Generated locally under output/smoke-screenshots/:

  • agent.png
  • compare.png
  • fine-tune.png
  • models.png
  • benchmarks.png
  • retrieval.png
  • experiments.png
  • admin.png

Notes

  • Legacy Admin APIs remain as thin compatibility wrappers until the September 30, 2026 sunset.
  • Timeline retention is user-triggered and preserves failure/conflict and artifact-bearing events by default.
  • GitHub and ModelScope packages are generated from the same committed Git tree.

v0.3.0 · First LLM Studio

Choose a tag to compare

@ChrisChen667788 ChrisChen667788 released this 11 Apr 13:44

v0.3.0 · 2026-04-11

Scope

First LLM Studio v0.3.0 is the first polished public release of the project under the new brand. This release turns the workbench from a local runtime experiment into a more complete operating surface for local-first LLM workflows on Apple Silicon.

Included

Product and UI

  • Rebranded the project as First LLM Studio across the web app, launch assets, and bilingual documentation.
  • Added a bilingual homepage and bilingual README surfaces for public launch.
  • Reworked the /agent layout for wide screens so the workbench uses space more intentionally instead of collapsing into long vertical rails.
  • Compressed Compare Lab into a denser review flow with clearer lane review, export, preview, and benchmark handoff actions.
  • Tightened the runtime side rail so status is visible first and lower-signal details stay tucked behind collapsible sections.

Compare Lab and review workflow

  • Embedded Compare Lab directly into the existing /agent workbench instead of opening a separate product surface.
  • Added compare run execution, base-lane diff review, rerun-single-lane, markdown export, preview, and benchmark handoff.
  • Added compare recovery progress, recovery timeline export, and manual recovery actions for stalled local lanes.
  • Added compact share formats for issue, PR, and chat review summaries.

Runtime and local model workflow

  • Added dynamic local model discovery, including models found in local libraries such as LM Studio-compatible directories.
  • Added richer model metadata such as parameter scale, quantization label, recommended context, and source path.
  • Added local runtime telemetry and trend cards for CPU, memory, GPU, shared GPU memory, energy signal, and storage pressure.
  • Fixed local runtime status so unloaded models are represented as unloaded/idle instead of ambiguous failure states.
  • Added one-click scanning in the Agent target rail to refresh newly discovered local models and configured remote APIs.

Provider and benchmark operations

  • Added DeepSeek remote targets and wired them through chat, thinking mode, tools/function-calling, compare, connection checks, and benchmark flows.
  • Added provider-aware output contracts and remote benchmark budgets for OpenAI-compatible endpoints.
  • Stabilized remote regression handling with provider-specific first-token budgets, retry budgets, and stream idle protection.
  • Added formal and focused benchmark improvements, including DeepSeek-focused remote regression runs.

Performance and developer workflow

  • Split compare-only helpers, lifecycle, actions, preferences, and review parsing out of AgentWorkbench to reduce main workbench weight.
  • Split Next.js dev and build artifact directories so production builds no longer corrupt local dev sessions.
  • Simplified the local gateway shell to avoid heavyweight framework import stalls during development.

Verification

  • Local version: 0.3.0
  • TypeScript: ./node_modules/.bin/tsc --noEmit
  • Lint: npm run lint
  • Build: npm run build
  • Agent URL: http://localhost:3011/agent
  • Admin URL: http://localhost:3011/admin
  • Remote formal subset: OpenAI + Claude remote regression subset recovered to full green in the latest repaired run.
  • DeepSeek focus subset: 26 / 26 successful after tool-first / thinking optimization.

Screenshots

Notes

  • The GitHub repository slug remains local-agent-lab for continuity, but public-facing branding in this release is First LLM Studio.
  • ModelScope launch packaging for this release includes bilingual documentation, launch copy, and visual assets.
  • A few historical hook warnings remain in legacy UI files, but this release passes build, lint, and type-check gates.

v0.2.3

Choose a tag to compare

@ChrisChen667788 ChrisChen667788 released this 04 Apr 09:07

v0.2.3 · 2026-03-30

Scope

  • 收口本地 4B 主力模型切换、Qwen3.5 4B 直答 serving 修正,以及 benchmark progress 偶发误报 failed 的状态链问题。

Included

  • Local 4B target updates:
    • Local Qwen3.5 4B 4-bit 提升为默认本地 4B 主力
    • Local Qwen3 4B 4-bit 保留为对比项,而不是默认主项
    • 后台本地 benchmark 目标区补充提示:
      • Qwen3.5 4B 为默认本地 4B 主力,Qwen3 4B 保留为对比项。
  • Local serving updates:
    • mlx-community/Qwen3.5-4B-4bit 接入 chat_template_kwargs.enable_thinking=false
    • 本地 standard 模式下不再依赖 prompt 级 /no_think 软约束
    • 本地普通请求、流式聊天、benchmark 链路都统一走这套 no-think serving 口径
  • Benchmark updates:
    • benchmark 评分优先使用完整输出 outputText,避免仅看预览放大格式误判
    • benchmark progress 增加 stale grace window,避免 controller 短暂缺席时被过早误判为 failed
    • progress 在 completed / stopped / abandoned 时会清理残留 error
    • Local Qwen3.5 4B 4-bit 的本地 benchmark 上限正式从 16K 提到 32K
    • 三个本地模型在 benchmark 里的默认执行上下文现已统一为 32K
    • 当 benchmark 对比模式同时选择本地与远端目标时,远端 API 会自动跟随所选本地目标里最保守的有效上下文,避免远端在更宽上下文里占便宜
    • 本地 benchmark prewarm 增加更稳的恢复链:
      • benchmark 专用网关恢复会禁用启动脚本里的默认 0.6B 自动预热
      • 本地目标之间改成 release runtime -> prewarm target,而不是无差别全重启
      • prewarm 现在会识别并恢复:
        • 长时间 waiting-load
        • 网关掉线 waiting-gateway
        • 发出 prewarm 后网关空转、模型未开始加载的 idle prewarm
    • benchmark progress 新增本地 prewarm 阶段状态:
      • releasing-runtime
      • ensuring-gateway
      • prewarming
      • waiting-load
      • waiting-gateway
      • restarting-gateway
  • Runtime / UI updates:
    • 本地运行时卡片不再把共享网关的全局 loadedAlias 误显示成每张卡自己的“已加载别名”
  • Prod baseline recovery:
    • 主工作区重新对齐 Node 22 + npm ci 的依赖树
    • 清理了导致 prod 构建异常的脏依赖状态
    • 3011 已恢复为稳定的 next start 常驻模式,而不是临时 dev 常驻
  • Repo grounding updates:
    • repo 类问题新增 workspace scout 服务端路径提示
    • 回答这类“哪个文件改了什么”问题时,会优先给出候选文件并附 1-2 条文件级代码线索,减少直接猜路径

Verification

Qwen3.5 4B formal regression

  • old run: rerun-qwen35-formal-clean-e7919209-4294-435a-8074-a36f41c18429
    • avgScore=31.48
    • passRate=27.78%
  • fixed serving run: rerun-qwen35-no-think-benchmark-fixed-180af822-e100-434e-a43e-e43ca436fc17
    • avgScore=88.89
    • passRate=88.89%

Local 4B side-by-side formal comparison

  • run: compare-local-4b-formal-4438a024-3828-4adc-b875-3a333350ae26
  • Local Qwen3.5 4B 4-bit
    • 58/58
    • avgScore=88.89
    • passRate=88.89%
    • first-token=460.64 ms
    • total latency=991.29 ms
  • Local Qwen3 4B 4-bit
    • 58/58
    • avgScore=80.09
    • passRate=77.78%
    • first-token=326.38 ms
    • total latency=784.88 ms

Qwen3.5 4B benchmark context cap experiment

  • 16K baseline:
    • run: local-qwen35-formal-32k-182c3966-a4d6-4875-96eb-4265119e9f3c
    • actual contextWindow=16384
    • 58/58
    • avgScore=88.89
    • passRate=88.89%
    • first-token=607.02 ms
    • total latency=1126.26 ms
    • token throughput=63.20
  • 32K experiment:
    • run: local-qwen35-formal-32k-validation-2
    • actual contextWindow=32768
    • 58/58
    • avgScore=88.89
    • passRate=88.89%
    • first-token=435.86 ms
    • total latency=938.78 ms
    • token throughput=66.62
  • LongBench context smoke:
    • run: local-longbench-context-compare-$(date +%s)
    • Local Qwen3.5 4B 4-bit @ 32K: avgScore=83.33, passRate=100%
    • Local Qwen3 4B 4-bit @ 16K: avgScore=63.89, passRate=66.67%
    • Local Qwen3 0.6B @ 8K: avgScore=61.11, passRate=66.67%
  • conclusion:
    • Qwen3.5 4B 的本地 benchmark 上限长期保留 32K 是合理的
    • Qwen3 4B0.6B 这轮暂不跟随上调

Local benchmark unified 32K validation

  • run: 5c6879b9-0862-4ade-8e73-4f6b02dbf933
  • request:
    • custom prompt
    • contextWindow=32768
    • local targets:
      • Local Qwen3 0.6B
      • Local Qwen3 4B 4-bit
      • Local Qwen3.5 4B 4-bit
  • result:
    • all three local results returned contextWindow=32768
  • conclusion:
    • benchmark execution no longer keeps the older 8K / 16K / 32K split for local models
    • local benchmark comparisons now run on a unified 32K context setting by default

All-local 32K formal recovery

  • old failing run:
    • local-formal-all32k-clean-2216110a-4fd0-4f50-8c8b-442fef20fa5a
    • 174 / 174 failed
    • root cause:
      • benchmark recovery restarted the shared local gateway
      • gateway startup script auto-prewarmed local-qwen3-0.6b
      • later Qwen3 4B / Qwen3.5 4B prewarms hit still loading local-qwen3-0.6b
      • the whole run cascaded into prewarm failures
  • recovered run:
    • all-local-32k-prewarm-progress3-b52a5359-d322-4312-9c13-10de9f1c07d5
    • 174 / 174 ok
    • 3 / 3 groups
    • failed = 0
  • staged validation:
    • 0.6B first group completed 58 / 58
    • Qwen3.5 4B second group also completed cleanly
    • Qwen3 4B third group completed cleanly
  • conclusion:
    • the all-local 32K formal benchmark is now stable on the shared gateway again
    • the key fix was not rolling back context, but hardening local prewarm recovery and visibility

All-local 32K milestone-full validation

  • validation run:
    • all-local-32k-milestone-full-prod6-1775220000
    • 426 / 426 ok
    • 3 / 3 groups
    • failed = 0
  • group breakdown:
    • Local Qwen3 0.6B @ 32K completed cleanly
    • Local Qwen3.5 4B 4-bit @ 32K completed cleanly
    • Local Qwen3 4B 4-bit @ 32K completed cleanly
  • conclusion:
    • the all-local 32K recovery is not limited to the lighter formal pass
    • milestone-full now completes end-to-end on the shared local gateway as well

Mixed local + remote 32K compare validation

  • first compare run:
    • mixed-compare-32k-full-1775244980
    • 426 / 426 completed
    • 422 ok
    • 4 failed
    • all failures were Claude API 502 Bad Gateway responses in latency-smoke
  • retry hardening:
    • increased remote benchmark retry attempts from 4 to 6
    • added longer retry backoff for 502/503/504 upstream failures
  • validation rerun:
    • mixed-compare-32k-full-retry-1775248797
    • 426 / 426 ok
    • 0 failed
  • verified execution context:
    • Local Qwen3.5 4B 4-bit executed at 32768
    • OpenAI GPT-5.4 executed at 32768
    • Claude API executed at 32768
  • conclusion:
    • the mixed local + remote 32K compare path is now stable enough for release
    • compare-mode context alignment remains correct across local and remote targets

Benchmark progress chain

  • run: compare-local-4b-formal-4438a024-3828-4adc-b875-3a333350ae26
    • status=completed
    • completedSamples=116/116
    • completedGroups=2/2
    • error=null

Real chat smoke

  • Local Qwen3.5 4B 4-bit 预热后可稳定输出:
    • 紧凑 JSON
    • 直接代码答案
  • 无工具 / 无检索 的纯聊天仓库问题上,Qwen3.5 4B 仍会给出偏泛化解释,因此真实项目问答的最终体验仍然取决于工具循环与检索链路。

Prod baseline recovery

  • 主工作区在重新执行 npm ci 后恢复正常 prod 构建
  • ./scripts/run-next.sh build 已恢复通过
  • ./scripts/smoke-test.sh 通过
  • 3011 当前以 prod 模式稳定返回:
    • agent=200
    • admin=200

Repo grounding smoke

  • Local Qwen3.5 4B 4-bit 在 repo 问题上可以正确给出:
    • API route: app/api/admin/benchmark/progress/route.ts
    • store: lib/agent/benchmark-progress-store.ts
  • 并附带文件级代码线索,减少只报路径不解释的情况

Screenshots

  • Agent:
    • use current /agent page as the acceptance reference
  • Admin:
    • use current /admin page as the acceptance reference

Notes

  • 这次 Qwen3.5 4B 的大幅回升,主因不是评分器修正,而是 serving 终于切到了直答口径。
  • Qwen3 4B 仍然更快,适合作为本地对比项或回退项;Qwen3.5 4B 更适合作为默认本地 4B 主力。
  • 如果后续继续推进,建议下一步重点看:
    • 工具循环开启后的真实项目问答手感
    • grounded / retrieval 开启后的仓库问答质量