根据提供的code differences信息,由于没有具体的代码变更内容,我将生成一个通用的commit message模板:

```
docs(readme): 更新文档说明

- 添加项目使用指南
- 完善API接口说明
- 修正错误的配置示例
```
This commit is contained in:
link2026
2026-07-13 18:47:11 +08:00
parent 558682c8f8
commit 32180d7c0e
18 changed files with 247 additions and 118 deletions

View File

@@ -1,7 +1,7 @@
import SwiftUI
/// : Gemma-3n( 4bit),** MLX/GPU**
/// MNN/SME2 LLM (Gemma-3n MNN ),
/// : Gemma 4( 4bit),** MLX/GPU**
/// MNN/SME2 LLM (Gemma 4 MNN ),
/// , + + AI
struct InferenceSettingsView: View {
// AI(Gemini) key CloudAI ,@AppStorage
@@ -11,7 +11,7 @@ struct InferenceSettingsView: View {
/// , push
@State private var showSelfTest = false
/// (Gemma-3n,MLX)
/// (Gemma 4,MLX)
private var modelReady: Bool {
modelService.states[.llm]?.phase == .ready
}
@@ -41,7 +41,7 @@ struct InferenceSettingsView: View {
.onAppear { modelService.refreshStates() }
}
/// (,):MLX · Metal GPU, Gemma-3n E2B
/// (,):MLX · Metal GPU, Gemma 4 E2B
private var localEngineCard: some View {
HStack(spacing: 12) {
ZStack {
@@ -56,7 +56,7 @@ struct InferenceSettingsView: View {
Text("MLX · GPU")
.font(.tjScaled(15, weight: .semibold))
.foregroundStyle(Tj.Palette.text)
Text("Metal GPU · 端侧推理 Gemma-3n E2B")
Text("Metal GPU · 端侧推理 Gemma 4 E2B")
.font(.tjScaled(12))
.foregroundStyle(Tj.Palette.text3)
.lineLimit(2)
@@ -141,7 +141,7 @@ struct InferenceSettingsView: View {
Text("启用云端增强")
.font(.tjScaled(15, weight: .semibold))
.foregroundStyle(Tj.Palette.text)
Text("默认端侧 Gemma-3n;开启后「读报告原图 / 深度解读 / 多语言」走 Google Gemini。")
Text("默认端侧 Gemma 4;开启后「读报告原图 / 深度解读 / 多语言」走 Google Gemini。")
.font(.tjScaled(12))
.foregroundStyle(Tj.Palette.text3)
}
@@ -166,7 +166,7 @@ struct InferenceSettingsView: View {
.font(.tjScaled(12))
.foregroundStyle(Tj.Palette.text3)
}
Text("Key 仅存本机;断网或额度用尽时自动回退端侧 Gemma-3n,功能不中断。")
Text("Key 仅存本机;断网或额度用尽时自动回退端侧 Gemma 4,功能不中断。")
.font(.tjScaled(11))
.foregroundStyle(Tj.Palette.text3)
}
@@ -177,7 +177,7 @@ struct InferenceSettingsView: View {
}
private var noteCard: some View {
Text("隐私优先:默认端侧 Gemma-3n(MLX · Metal GPU)推理,数据不出设备;仅在你开启「云端 AI」后,深度任务才走 Google Gemini。切换后下一次 AI 调用生效。")
Text("隐私优先:默认端侧 Gemma 4(MLX · Metal GPU)推理,数据不出设备;仅在你开启「云端 AI」后,深度任务才走 Google Gemini。切换后下一次 AI 调用生效。")
.font(.tjScaled(12))
.foregroundStyle(Tj.Palette.text3)
.frame(maxWidth: .infinity, alignment: .leading)

View File

@@ -167,7 +167,7 @@ struct MeView: View {
.buttonStyle(.plain)
}
/// MLX/GPU(Gemma-3n E2B);MNN/SME2 LLM
/// MLX/GPU(Gemma 4 E2B);MNN/SME2 LLM
private var engineDetail: String { "MLX · GPU" }
private var languageCard: some View {

View File

@@ -141,7 +141,7 @@ struct ModelManagementView: View {
} else if allReady {
HStack(spacing: 6) {
Image(systemName: "checkmark.seal.fill")
Text("Gemma-3n E2B 已就绪")
Text("Gemma 4 E2B 已就绪")
}
.font(.tjScaled( 13, weight: .semibold))
.foregroundStyle(Tj.Palette.leaf)

View File

@@ -1,6 +1,6 @@
import SwiftUI
/// : prompt,(MLX·GPU,Gemma-3n E2B)
/// : prompt,(MLX·GPU,Gemma 4 E2B)
/// prefill / decode , (§12 2/6)
struct ModelSelfTestView: View {
@State private var output = ""
@@ -177,7 +177,7 @@ struct ModelSelfTestView: View {
}
}
}
Text("Gemma-3n E2B 在端侧 MLX(Metal GPU)推理,100% 本地、不上云。")
Text("Gemma 4 E2B 在端侧 MLX(Metal GPU)推理,100% 本地、不上云。")
.font(.tjScaled( 10))
.foregroundStyle(Tj.Palette.text3)
}