gen-cards: regenerate Use-it block
Browse files
README.md
CHANGED
|
@@ -35,6 +35,8 @@ Part of the community Core AI model zoo: **https://github.com/john-rocky/coreai-
|
|
| 35 |
<!-- gen-cards:use-it begin id=minicpm5-2b (managed by scripts/gen-cards β edit cards.json / QuickStart.swift, not this block) -->
|
| 36 |
## Use it
|
| 37 |
|
|
|
|
|
|
|
| 38 |
β‘ **One line** β run the kit's task op on this model
|
| 39 |
(`import CoreAIOps`; no session, no model plumbing, downloads on first use):
|
| 40 |
|
|
@@ -42,32 +44,46 @@ Part of the community Core AI model zoo: **https://github.com/john-rocky/coreai-
|
|
| 42 |
let tldr = try await CoreAI.summarize(text, options: .model("minicpm5-2b"))
|
| 43 |
```
|
| 44 |
|
| 45 |
-
Every op, one shape β [Cookbook](https://github.com/john-rocky/coreai-kit/blob/
|
| 46 |
|
| 47 |
-
βΆοΈ **Run it (source)** β the [ChatDemo runner](https://github.com/john-rocky/coreai-kit/tree/
|
| 48 |
(GUI + CLI, one app for every chat model in the catalog):
|
| 49 |
|
| 50 |
```bash
|
| 51 |
-
git clone https://github.com/john-rocky/coreai-kit
|
| 52 |
-
|
|
|
|
| 53 |
# β Run, then pick "MiniCPM5 2B" in the model picker
|
| 54 |
|
| 55 |
# agents / headless (macOS):
|
| 56 |
cd coreai-kit/Examples/ChatDemo
|
| 57 |
-
swift run chat-cli --model minicpm5-2b --prompt "What can you do, offline?"
|
| 58 |
```
|
| 59 |
|
|
|
|
|
|
|
| 60 |
π» **Build with it** β complete; the glue is kit API, copy-paste runs:
|
| 61 |
|
| 62 |
```swift
|
| 63 |
import CoreAIKit
|
| 64 |
|
| 65 |
-
let
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 66 |
let reply = try await chat.respond(to: prompt)
|
| 67 |
// reply: the answer, generated fully on-device
|
| 68 |
```
|
| 69 |
|
| 70 |
-
The take-home is [`Examples/ChatDemo/Sources/QuickStart.swift`](https://github.com/john-rocky/coreai-kit/blob/
|
| 71 |
β this exact code as one typed function, no UI; the CLI is an argument shell over it, and
|
| 72 |
the GUI drives the same `ChatSession` across turns for its transcript.
|
| 73 |
Multi-turn? Hold the `ChatSession` and call `respond(to:)` per turn β it keeps the
|
|
@@ -75,10 +91,10 @@ conversation history; `streamResponse(to:)` yields tokens as they decode.
|
|
| 75 |
|
| 76 |
**Integration checklist**
|
| 77 |
|
| 78 |
-
- SPM: `https://github.com/john-rocky/coreai-kit` β product **CoreAIKit**
|
| 79 |
- Info.plist: none needed
|
| 80 |
- Entitlements: none on Mac; iPhone needs `com.apple.developer.kernel.increased-memory-limit` (the 2.7 GB cold specialization passes the default jetsam limit)
|
| 81 |
-
- First run downloads the model β 2
|
| 82 |
local cache (Application Support; progress via the `downloadProgress` callback)
|
| 83 |
- Measure in Release β Debug is ~3Γ slower on per-token host work
|
| 84 |
<!-- gen-cards:use-it end -->
|
|
|
|
| 35 |
<!-- gen-cards:use-it begin id=minicpm5-2b (managed by scripts/gen-cards β edit cards.json / QuickStart.swift, not this block) -->
|
| 36 |
## Use it
|
| 37 |
|
| 38 |
+
**New to Core AI? [Start with CoreAIKit 0.7.1](https://github.com/john-rocky/coreai-kit#readme).** Follow its requirements and first-run steps for `qwen3-0.6b`, then open the same release's [ChatDemo](https://github.com/john-rocky/coreai-kit/tree/0.7.1/Examples/ChatDemo). The README records the tested OS/SDK and download size; model and device coverage is stated per example.
|
| 39 |
+
|
| 40 |
β‘ **One line** β run the kit's task op on this model
|
| 41 |
(`import CoreAIOps`; no session, no model plumbing, downloads on first use):
|
| 42 |
|
|
|
|
| 44 |
let tldr = try await CoreAI.summarize(text, options: .model("minicpm5-2b"))
|
| 45 |
```
|
| 46 |
|
| 47 |
+
Every op, one shape β [Cookbook](https://github.com/john-rocky/coreai-kit/blob/0.7.1/docs/COOKBOOK.md).
|
| 48 |
|
| 49 |
+
βΆοΈ **Run it (source)** β the [ChatDemo runner](https://github.com/john-rocky/coreai-kit/tree/0.7.1/Examples/ChatDemo)
|
| 50 |
(GUI + CLI, one app for every chat model in the catalog):
|
| 51 |
|
| 52 |
```bash
|
| 53 |
+
git clone --branch 0.7.1 --depth 1 https://github.com/john-rocky/coreai-kit
|
| 54 |
+
export DEVELOPER_DIR=/Applications/Xcode-27.0.0-RC.app/Contents/Developer
|
| 55 |
+
open -a /Applications/Xcode-27.0.0-RC.app coreai-kit/Examples/ChatDemo/ChatDemo.xcodeproj
|
| 56 |
# β Run, then pick "MiniCPM5 2B" in the model picker
|
| 57 |
|
| 58 |
# agents / headless (macOS):
|
| 59 |
cd coreai-kit/Examples/ChatDemo
|
| 60 |
+
swift run -c release chat-cli --model minicpm5-2b --prompt "What can you do, offline?"
|
| 61 |
```
|
| 62 |
|
| 63 |
+
Use Xcode build **27A266a** from the release's `.xcode-pin`; adjust the app path if your installation is named differently.
|
| 64 |
+
|
| 65 |
π» **Build with it** β complete; the glue is kit API, copy-paste runs:
|
| 66 |
|
| 67 |
```swift
|
| 68 |
import CoreAIKit
|
| 69 |
|
| 70 |
+
let id = "minicpm5-2b"
|
| 71 |
+
let chat: ChatSession
|
| 72 |
+
if id == "qwen3-0.6b" {
|
| 73 |
+
// Freeze the release starter; other selections retain the live catalog's
|
| 74 |
+
// model-specific dispatch (including paired Gemma bundles).
|
| 75 |
+
guard let model = ModelCatalog.builtin.entry(id: id)?.modelID else {
|
| 76 |
+
throw CoreAIKitError.modelNotAvailableOnPlatform(id: id)
|
| 77 |
+
}
|
| 78 |
+
chat = try await ChatSession(model: model)
|
| 79 |
+
} else {
|
| 80 |
+
chat = try await ChatSession(catalog: "minicpm5-2b")
|
| 81 |
+
}
|
| 82 |
let reply = try await chat.respond(to: prompt)
|
| 83 |
// reply: the answer, generated fully on-device
|
| 84 |
```
|
| 85 |
|
| 86 |
+
The take-home is [`Examples/ChatDemo/Sources/QuickStart.swift`](https://github.com/john-rocky/coreai-kit/blob/0.7.1/Examples/ChatDemo/Sources/QuickStart.swift)
|
| 87 |
β this exact code as one typed function, no UI; the CLI is an argument shell over it, and
|
| 88 |
the GUI drives the same `ChatSession` across turns for its transcript.
|
| 89 |
Multi-turn? Hold the `ChatSession` and call `respond(to:)` per turn β it keeps the
|
|
|
|
| 91 |
|
| 92 |
**Integration checklist**
|
| 93 |
|
| 94 |
+
- SPM: `https://github.com/john-rocky/coreai-kit` (exact **0.7.1**) β product **CoreAIKit**
|
| 95 |
- Info.plist: none needed
|
| 96 |
- Entitlements: none on Mac; iPhone needs `com.apple.developer.kernel.increased-memory-limit` (the 2.7 GB cold specialization passes the default jetsam limit)
|
| 97 |
+
- First run downloads the model β ~2,685 MB (Mac) / ~2,685 MB (iPhone) β then it loads from the
|
| 98 |
local cache (Application Support; progress via the `downloadProgress` callback)
|
| 99 |
- Measure in Release β Debug is ~3Γ slower on per-token host work
|
| 100 |
<!-- gen-cards:use-it end -->
|