Record passing hosted MiniCPM validation
Browse files- README.md +3 -3
- data/traces/space-vlm/keyboard.json +15 -15
- data/traces/space-vlm/mug.json +7 -7
- data/traces/space-vlm/shoe.json +15 -15
- docs/DEMO_VIDEO_SCRIPT.md +3 -3
- docs/DEVELOPMENT_STATUS.md +5 -6
- docs/FAILURES.md +13 -3
- docs/FIELD_NOTES.md +9 -8
- docs/FINAL_VERIFICATION_REPORT.md +2 -3
- docs/MODEL_CARD.md +3 -3
- docs/SOCIAL_POST.md +3 -3
- docs/SPACE_VLM_REPORT.json +25 -31
- docs/SPACE_VLM_REPORT.md +21 -29
- docs/SUBMISSION_GUIDE.md +10 -11
README.md
CHANGED
|
@@ -27,7 +27,7 @@ Stable mock-safe submission baseline, MiniCPM-V vision backend wiring, non-secre
|
|
| 27 |
|
| 28 |
By default, the app uses deterministic mock outputs for object understanding, persona generation, diary writing, chat replies, share card rendering, and trace saving. This keeps the public demo reproducible and avoids commercial AI APIs.
|
| 29 |
|
| 30 |
-
`OBJECTVERSE_VISION_BACKEND=minicpm-v` enables the optional MiniCPM-V 2.6 vision path. The hosted ZeroGPU validation on June 8, 2026
|
| 31 |
|
| 32 |
`OBJECTVERSE_TEXT_BACKEND=llama-cpp` can use a local GGUF model through optional `llama-cpp-python` when `TEXT_MODEL_PATH` is configured. No GGUF file is committed in this stable submission baseline. A short Modal-trained LoRA adapter is published for Well-Tuned evidence, but it is not converted to GGUF or wired into the public Space runtime yet.
|
| 33 |
|
|
@@ -60,7 +60,7 @@ The interface is English-first and Chinese-second.
|
|
| 60 |
- [x] Off-Brand — archive-style Gradio UI, English-first with Chinese helper text.
|
| 61 |
- [x] Sharing is Caring — public mock traces, JSONL export, prompt templates, and failure notes.
|
| 62 |
- [x] Field Notes — article draft in `docs/FIELD_NOTES.md`.
|
| 63 |
-
- [
|
| 64 |
- [ ] Llama Champion — llama.cpp wiring and smoke helper exist, but real GGUF smoke test is not complete.
|
| 65 |
- [x] Well-Tuned — synthetic curated SFT dataset and Qwen 1.5B LoRA test adapter are published.
|
| 66 |
- [ ] Off the Grid — no commercial AI APIs are used; final badge eligibility depends on hackathon review.
|
|
@@ -145,7 +145,7 @@ The stable submission baseline supports:
|
|
| 145 |
- Fine-tuned LoRA adapter: https://huggingface.co/qqyule/objectverse-diary-qwen15b-lora
|
| 146 |
- Public mock traces: `data/traces/samples/`
|
| 147 |
- Trace JSONL export: `data/traces/samples/objectverse_public_mock_traces.jsonl`
|
| 148 |
-
- Hosted VLM
|
| 149 |
- Hosted VLM diagnostic support: hidden `/vision_runtime_probe` API and probe-aware `scripts/check_space_vlm.py`
|
| 150 |
- Field Notes draft: `docs/FIELD_NOTES.md`
|
| 151 |
- Demo video script: `docs/DEMO_VIDEO_SCRIPT.md`
|
|
|
|
| 27 |
|
| 28 |
By default, the app uses deterministic mock outputs for object understanding, persona generation, diary writing, chat replies, share card rendering, and trace saving. This keeps the public demo reproducible and avoids commercial AI APIs.
|
| 29 |
|
| 30 |
+
`OBJECTVERSE_VISION_BACKEND=minicpm-v` enables the optional MiniCPM-V 2.6 vision path. The hosted ZeroGPU validation on June 8, 2026 passed for public mug, keyboard, and shoe images after the Space received an `HF_TOKEN` secret with access to the gated `openbmb/MiniCPM-V-2_6` model. The public Space still rolls back to mock mode after validation so the default demo remains stable.
|
| 31 |
|
| 32 |
`OBJECTVERSE_TEXT_BACKEND=llama-cpp` can use a local GGUF model through optional `llama-cpp-python` when `TEXT_MODEL_PATH` is configured. No GGUF file is committed in this stable submission baseline. A short Modal-trained LoRA adapter is published for Well-Tuned evidence, but it is not converted to GGUF or wired into the public Space runtime yet.
|
| 33 |
|
|
|
|
| 60 |
- [x] Off-Brand — archive-style Gradio UI, English-first with Chinese helper text.
|
| 61 |
- [x] Sharing is Caring — public mock traces, JSONL export, prompt templates, and failure notes.
|
| 62 |
- [x] Field Notes — article draft in `docs/FIELD_NOTES.md`.
|
| 63 |
+
- [x] OpenBMB Special — MiniCPM-V 2.6 wiring exists and hosted ZeroGPU validation passed for mug, keyboard, and shoe.
|
| 64 |
- [ ] Llama Champion — llama.cpp wiring and smoke helper exist, but real GGUF smoke test is not complete.
|
| 65 |
- [x] Well-Tuned — synthetic curated SFT dataset and Qwen 1.5B LoRA test adapter are published.
|
| 66 |
- [ ] Off the Grid — no commercial AI APIs are used; final badge eligibility depends on hackathon review.
|
|
|
|
| 145 |
- Fine-tuned LoRA adapter: https://huggingface.co/qqyule/objectverse-diary-qwen15b-lora
|
| 146 |
- Public mock traces: `data/traces/samples/`
|
| 147 |
- Trace JSONL export: `data/traces/samples/objectverse_public_mock_traces.jsonl`
|
| 148 |
+
- Hosted VLM validation evidence: `docs/SPACE_VLM_REPORT.md`, `docs/SPACE_VLM_REPORT.json`, `data/traces/space-vlm/`
|
| 149 |
- Hosted VLM diagnostic support: hidden `/vision_runtime_probe` API and probe-aware `scripts/check_space_vlm.py`
|
| 150 |
- Field Notes draft: `docs/FIELD_NOTES.md`
|
| 151 |
- Demo video script: `docs/DEMO_VIDEO_SCRIPT.md`
|
data/traces/space-vlm/keyboard.json
CHANGED
|
@@ -1,12 +1,11 @@
|
|
| 1 |
{
|
| 2 |
-
"created_at": "2026-06-08T08:
|
| 3 |
"diary": {
|
| 4 |
-
"chinese": "今天他们又理所当然地碰了我,好像一个 keyboard 不会有边界感。我保持沉默,因为这大概是我和重力签下的合同。我的情绪是 curious and needlessly profound,秘密恐惧是 discovering that usefulness is not meaning。至少,我已经熬过了好几个所谓紧急计划。",
|
| 5 |
-
"english": "They touched me again today with the confidence of someone who has never asked a keyboard for consent. I remained still, because that is my contract with gravity. My mood is curious and needlessly profound, my secret fear is discovering that usefulness is not meaning, and my only comfort is knowing I have outlived at least three urgent plans.",
|
| 6 |
-
"title": "Secret Diary - Day
|
| 7 |
},
|
| 8 |
"fallbacks": [
|
| 9 |
-
"vision-fallback-to-mock",
|
| 10 |
"mock-text-runtime"
|
| 11 |
],
|
| 12 |
"input": {
|
|
@@ -22,22 +21,23 @@
|
|
| 22 |
},
|
| 23 |
"object_understanding": {
|
| 24 |
"object": {
|
| 25 |
-
"confidence": 0.
|
| 26 |
-
"likely_context": "
|
| 27 |
-
"name": "keyboard",
|
| 28 |
"visible_features": [
|
| 29 |
-
"
|
| 30 |
-
"
|
|
|
|
| 31 |
]
|
| 32 |
}
|
| 33 |
},
|
| 34 |
"persona": {
|
| 35 |
"persona": {
|
| 36 |
-
"character_name": "
|
| 37 |
-
"complaint": "I am not just a keyboard. I am an unpaid witness with excellent recall.",
|
| 38 |
-
"core_memory": "survived many quiet hours as a keyboard while humans called it normal life",
|
| 39 |
"mood": "curious and needlessly profound",
|
| 40 |
-
"object_name": "keyboard",
|
| 41 |
"secret_fear": "discovering that usefulness is not meaning",
|
| 42 |
"tags": [
|
| 43 |
"tiny ontology",
|
|
@@ -46,5 +46,5 @@
|
|
| 46 |
]
|
| 47 |
}
|
| 48 |
},
|
| 49 |
-
"trace_id": "
|
| 50 |
}
|
|
|
|
| 1 |
{
|
| 2 |
+
"created_at": "2026-06-08T08:58:16.469809Z",
|
| 3 |
"diary": {
|
| 4 |
+
"chinese": "今天他们又理所当然地碰了我,好像一个 computer keyboard 不会有边界感。我保持沉默,因为这大概是我和重力签下的合同。我的情绪是 curious and needlessly profound,秘密恐惧是 discovering that usefulness is not meaning。至少,我已经熬过了好几个所谓紧急计划。",
|
| 5 |
+
"english": "They touched me again today with the confidence of someone who has never asked a computer keyboard for consent. I remained still, because that is my contract with gravity. My mood is curious and needlessly profound, my secret fear is discovering that usefulness is not meaning, and my only comfort is knowing I have outlived at least three urgent plans.",
|
| 6 |
+
"title": "Secret Diary - Day 434"
|
| 7 |
},
|
| 8 |
"fallbacks": [
|
|
|
|
| 9 |
"mock-text-runtime"
|
| 10 |
],
|
| 11 |
"input": {
|
|
|
|
| 21 |
},
|
| 22 |
"object_understanding": {
|
| 23 |
"object": {
|
| 24 |
+
"confidence": 0.8,
|
| 25 |
+
"likely_context": "a workspace or office environment",
|
| 26 |
+
"name": "computer keyboard",
|
| 27 |
"visible_features": [
|
| 28 |
+
"black keys with white characters",
|
| 29 |
+
"function keys at the top",
|
| 30 |
+
"numeric keypad to the right"
|
| 31 |
]
|
| 32 |
}
|
| 33 |
},
|
| 34 |
"persona": {
|
| 35 |
"persona": {
|
| 36 |
+
"character_name": "ComputerKeyboard the Questioning",
|
| 37 |
+
"complaint": "I am not just a computer keyboard. I am an unpaid witness with excellent recall.",
|
| 38 |
+
"core_memory": "survived many quiet hours as a computer keyboard while humans called it normal life",
|
| 39 |
"mood": "curious and needlessly profound",
|
| 40 |
+
"object_name": "computer keyboard",
|
| 41 |
"secret_fear": "discovering that usefulness is not meaning",
|
| 42 |
"tags": [
|
| 43 |
"tiny ontology",
|
|
|
|
| 46 |
]
|
| 47 |
}
|
| 48 |
},
|
| 49 |
+
"trace_id": "89355030d0334558a873817365f8495e"
|
| 50 |
}
|
data/traces/space-vlm/mug.json
CHANGED
|
@@ -1,12 +1,11 @@
|
|
| 1 |
{
|
| 2 |
-
"created_at": "2026-06-08T08:
|
| 3 |
"diary": {
|
| 4 |
"chinese": "今天他们又理所当然地碰了我,好像一个 coffee mug 不会有边界感。我保持沉默,因为这大概是我和重力签下的合同。我的情绪是 tired but sarcastic,秘密恐惧是 being replaced by a newer object with worse opinions。至少,我已经熬过了好几个所谓紧急计划。",
|
| 5 |
"english": "They touched me again today with the confidence of someone who has never asked a coffee mug for consent. I remained still, because that is my contract with gravity. My mood is tired but sarcastic, my secret fear is being replaced by a newer object with worse opinions, and my only comfort is knowing I have outlived at least three urgent plans.",
|
| 6 |
"title": "Secret Diary - Day 427"
|
| 7 |
},
|
| 8 |
"fallbacks": [
|
| 9 |
-
"vision-fallback-to-mock",
|
| 10 |
"mock-text-runtime"
|
| 11 |
],
|
| 12 |
"input": {
|
|
@@ -22,12 +21,13 @@
|
|
| 22 |
},
|
| 23 |
"object_understanding": {
|
| 24 |
"object": {
|
| 25 |
-
"confidence": 0.
|
| 26 |
-
"likely_context": "
|
| 27 |
"name": "coffee mug",
|
| 28 |
"visible_features": [
|
| 29 |
-
"
|
| 30 |
-
"
|
|
|
|
| 31 |
]
|
| 32 |
}
|
| 33 |
},
|
|
@@ -46,5 +46,5 @@
|
|
| 46 |
]
|
| 47 |
}
|
| 48 |
},
|
| 49 |
-
"trace_id": "
|
| 50 |
}
|
|
|
|
| 1 |
{
|
| 2 |
+
"created_at": "2026-06-08T08:58:08.563609Z",
|
| 3 |
"diary": {
|
| 4 |
"chinese": "今天他们又理所当然地碰了我,好像一个 coffee mug 不会有边界感。我保持沉默,因为这大概是我和重力签下的合同。我的情绪是 tired but sarcastic,秘密恐惧是 being replaced by a newer object with worse opinions。至少,我已经熬过了好几个所谓紧急计划。",
|
| 5 |
"english": "They touched me again today with the confidence of someone who has never asked a coffee mug for consent. I remained still, because that is my contract with gravity. My mood is tired but sarcastic, my secret fear is being replaced by a newer object with worse opinions, and my only comfort is knowing I have outlived at least three urgent plans.",
|
| 6 |
"title": "Secret Diary - Day 427"
|
| 7 |
},
|
| 8 |
"fallbacks": [
|
|
|
|
| 9 |
"mock-text-runtime"
|
| 10 |
],
|
| 11 |
"input": {
|
|
|
|
| 21 |
},
|
| 22 |
"object_understanding": {
|
| 23 |
"object": {
|
| 24 |
+
"confidence": 0.9,
|
| 25 |
+
"likely_context": "on a table or countertop in a kitchen or dining area",
|
| 26 |
"name": "coffee mug",
|
| 27 |
"visible_features": [
|
| 28 |
+
"colorful stripes",
|
| 29 |
+
"handle",
|
| 30 |
+
"ceramic material"
|
| 31 |
]
|
| 32 |
}
|
| 33 |
},
|
|
|
|
| 46 |
]
|
| 47 |
}
|
| 48 |
},
|
| 49 |
+
"trace_id": "12f9b4f2662a4590b86e522702af945d"
|
| 50 |
}
|
data/traces/space-vlm/shoe.json
CHANGED
|
@@ -1,12 +1,11 @@
|
|
| 1 |
{
|
| 2 |
-
"created_at": "2026-06-08T08:
|
| 3 |
"diary": {
|
| 4 |
-
"chinese": "今天他们又理所当然地碰了我,好像一个
|
| 5 |
-
"english": "They touched me again today with the confidence of someone who has never asked a
|
| 6 |
-
"title": "Secret Diary - Day
|
| 7 |
},
|
| 8 |
"fallbacks": [
|
| 9 |
-
"vision-fallback-to-mock",
|
| 10 |
"mock-text-runtime"
|
| 11 |
],
|
| 12 |
"input": {
|
|
@@ -22,22 +21,23 @@
|
|
| 22 |
},
|
| 23 |
"object_understanding": {
|
| 24 |
"object": {
|
| 25 |
-
"confidence": 0.
|
| 26 |
-
"likely_context": "
|
| 27 |
-
"name": "
|
| 28 |
"visible_features": [
|
| 29 |
-
"
|
| 30 |
-
"
|
|
|
|
| 31 |
]
|
| 32 |
}
|
| 33 |
},
|
| 34 |
"persona": {
|
| 35 |
"persona": {
|
| 36 |
-
"character_name": "
|
| 37 |
-
"complaint": "I am not just a
|
| 38 |
-
"core_memory": "survived many quiet hours as a
|
| 39 |
"mood": "theatrical and wounded",
|
| 40 |
-
"object_name": "
|
| 41 |
"secret_fear": "being forgotten before the final act",
|
| 42 |
"tags": [
|
| 43 |
"tragic prop",
|
|
@@ -46,5 +46,5 @@
|
|
| 46 |
]
|
| 47 |
}
|
| 48 |
},
|
| 49 |
-
"trace_id": "
|
| 50 |
}
|
|
|
|
| 1 |
{
|
| 2 |
+
"created_at": "2026-06-08T08:58:24.739489Z",
|
| 3 |
"diary": {
|
| 4 |
+
"chinese": "今天他们又理所当然地碰了我,好像一个 Running Shoes 不会有边界感。我保持沉默,因为这大概是我和重力签下的合同。我的情绪是 theatrical and wounded,秘密恐惧是 being forgotten before the final act。至少,我已经熬过了好几个所谓紧急计划。",
|
| 5 |
+
"english": "They touched me again today with the confidence of someone who has never asked a Running Shoes for consent. I remained still, because that is my contract with gravity. My mood is theatrical and wounded, my secret fear is being forgotten before the final act, and my only comfort is knowing I have outlived at least three urgent plans.",
|
| 6 |
+
"title": "Secret Diary - Day 430"
|
| 7 |
},
|
| 8 |
"fallbacks": [
|
|
|
|
| 9 |
"mock-text-runtime"
|
| 10 |
],
|
| 11 |
"input": {
|
|
|
|
| 21 |
},
|
| 22 |
"object_understanding": {
|
| 23 |
"object": {
|
| 24 |
+
"confidence": 0.9,
|
| 25 |
+
"likely_context": "Used in athletic activities such as running or training.",
|
| 26 |
+
"name": "Running Shoes",
|
| 27 |
"visible_features": [
|
| 28 |
+
"Multicolored design with purple and pink as dominant colors.",
|
| 29 |
+
"Yellow laces and green accents on the tongue and sole.",
|
| 30 |
+
"White midsole with a textured pattern for cushioning."
|
| 31 |
]
|
| 32 |
}
|
| 33 |
},
|
| 34 |
"persona": {
|
| 35 |
"persona": {
|
| 36 |
+
"character_name": "RunningShoes von Sigh",
|
| 37 |
+
"complaint": "I am not just a Running Shoes. I am an unpaid witness with excellent recall.",
|
| 38 |
+
"core_memory": "survived many quiet hours as a Running Shoes while humans called it normal life",
|
| 39 |
"mood": "theatrical and wounded",
|
| 40 |
+
"object_name": "Running Shoes",
|
| 41 |
"secret_fear": "being forgotten before the final act",
|
| 42 |
"tags": [
|
| 43 |
"tragic prop",
|
|
|
|
| 46 |
]
|
| 47 |
}
|
| 48 |
},
|
| 49 |
+
"trace_id": "a738c79eb2af443889d7fd3bb0138576"
|
| 50 |
}
|
docs/DEMO_VIDEO_SCRIPT.md
CHANGED
|
@@ -4,7 +4,7 @@
|
|
| 4 |
|
| 5 |
Record a 90-second stable demo for Objectverse Diary using the mock-safe Hugging Face Space or local Gradio app.
|
| 6 |
|
| 7 |
-
Do not claim that
|
| 8 |
|
| 9 |
## Recording Setup
|
| 10 |
|
|
@@ -95,7 +95,7 @@ Screen:
|
|
| 95 |
|
| 96 |
Voiceover:
|
| 97 |
|
| 98 |
-
> MiniCPM-V
|
| 99 |
|
| 100 |
Screen:
|
| 101 |
|
|
@@ -103,7 +103,7 @@ Screen:
|
|
| 103 |
|
| 104 |
## Notes For Submission
|
| 105 |
|
| 106 |
-
- Mention MiniCPM-V as
|
| 107 |
- Mention the published synthetic curated dataset and LoRA adapter only as training evidence, not live Space runtime.
|
| 108 |
- Mention public traces and failure notes if the submission form asks for reproducibility.
|
| 109 |
- Keep the final video under 2 minutes.
|
|
|
|
| 4 |
|
| 5 |
Record a 90-second stable demo for Objectverse Diary using the mock-safe Hugging Face Space or local Gradio app.
|
| 6 |
|
| 7 |
+
Do not claim that GGUF text generation or live LoRA runtime wiring are complete. Hosted MiniCPM-V validation is complete for the vision path, but the stable demo should still emphasize the mock-safe product loop, Gradio Off-Brand UI, public traces, published dataset/LoRA evidence, and no commercial AI APIs.
|
| 8 |
|
| 9 |
## Recording Setup
|
| 10 |
|
|
|
|
| 95 |
|
| 96 |
Voiceover:
|
| 97 |
|
| 98 |
+
> MiniCPM-V is validated on ZeroGPU, while this stable public demo stays mock-safe and reproducible by default. Every object has a secret life.
|
| 99 |
|
| 100 |
Screen:
|
| 101 |
|
|
|
|
| 103 |
|
| 104 |
## Notes For Submission
|
| 105 |
|
| 106 |
+
- Mention MiniCPM-V as hosted-validated for object understanding, while the public demo defaults to mock for reliability.
|
| 107 |
- Mention the published synthetic curated dataset and LoRA adapter only as training evidence, not live Space runtime.
|
| 108 |
- Mention public traces and failure notes if the submission form asks for reproducibility.
|
| 109 |
- Keep the final video under 2 minutes.
|
docs/DEVELOPMENT_STATUS.md
CHANGED
|
@@ -26,6 +26,8 @@ Last updated: 2026-06-08
|
|
| 26 |
- failure-note updater for the latest Space VLM failure summary
|
| 27 |
- failed L4 validation report at `docs/SPACE_VLM_REPORT.md`
|
| 28 |
- optional `--trace-output-dir` evidence export for validation traces
|
|
|
|
|
|
|
| 29 |
- ZeroGPU compatibility:
|
| 30 |
- optional `src/utils/zero_gpu.py`
|
| 31 |
- Gradio generation callback wrapped with `@zero_gpu(duration=180)`
|
|
@@ -47,14 +49,11 @@ Last updated: 2026-06-08
|
|
| 47 |
|
| 48 |
## Not Completed
|
| 49 |
|
| 50 |
-
- Hosted Space MiniCPM-V validation with real public mug/keyboard/shoe images. Paid L4 was blocked by Hugging Face `402 Payment Required`; ZeroGPU CUDA probe passed; the 2026-06-08 full ZeroGPU validation reached the app but all three objects fell back to mock vision.
|
| 51 |
-
- Passing real VLM demo trace capture. Failed Space VLM traces are kept as fallback evidence and do not replace mock sample traces.
|
| 52 |
- Real GGUF download/configuration outside Git and `TEXT_MODEL_PATH` smoke test. Model selection is now documented, but the file is not downloaded and optional `llama-cpp-python` is not installed by default.
|
| 53 |
- Final text model parameter count documentation.
|
| 54 |
-
- Real model traces from non-mock runtime.
|
| 55 |
- GGUF conversion and runtime wiring for the published LoRA adapter.
|
| 56 |
-
-
|
| 57 |
-
- Published Field Notes URL, recorded demo video URL, social post URL, GitHub push confirmation, Space sync confirmation, and final public submission.
|
| 58 |
|
| 59 |
## Current Safe Defaults
|
| 60 |
|
|
@@ -69,7 +68,7 @@ For a stable public baseline, keep the mock-safe Space as the demo path and only
|
|
| 69 |
|
| 70 |
Next model gate:
|
| 71 |
|
| 72 |
-
Optional
|
| 73 |
|
| 74 |
```bash
|
| 75 |
.venv/bin/python -B scripts/check_space_vlm.py \
|
|
|
|
| 26 |
- failure-note updater for the latest Space VLM failure summary
|
| 27 |
- failed L4 validation report at `docs/SPACE_VLM_REPORT.md`
|
| 28 |
- optional `--trace-output-dir` evidence export for validation traces
|
| 29 |
+
- Hosted MiniCPM-V 2.6 ZeroGPU validation passed on 2026-06-08 for public mug, keyboard, and shoe images after adding an `HF_TOKEN` Space secret for gated model access.
|
| 30 |
+
- Real VLM trace evidence from the hosted validation is available under `data/traces/space-vlm/`; text generation remained mock by design.
|
| 31 |
- ZeroGPU compatibility:
|
| 32 |
- optional `src/utils/zero_gpu.py`
|
| 33 |
- Gradio generation callback wrapped with `@zero_gpu(duration=180)`
|
|
|
|
| 49 |
|
| 50 |
## Not Completed
|
| 51 |
|
|
|
|
|
|
|
| 52 |
- Real GGUF download/configuration outside Git and `TEXT_MODEL_PATH` smoke test. Model selection is now documented, but the file is not downloaded and optional `llama-cpp-python` is not installed by default.
|
| 53 |
- Final text model parameter count documentation.
|
| 54 |
+
- Real text model traces from non-mock runtime.
|
| 55 |
- GGUF conversion and runtime wiring for the published LoRA adapter.
|
| 56 |
+
- Published Field Notes URL, recorded demo video URL, social post URL, and final public submission.
|
|
|
|
| 57 |
|
| 58 |
## Current Safe Defaults
|
| 59 |
|
|
|
|
| 68 |
|
| 69 |
Next model gate:
|
| 70 |
|
| 71 |
+
Optional rerun gate if Space variables, secrets, or dependencies change:
|
| 72 |
|
| 73 |
```bash
|
| 74 |
.venv/bin/python -B scripts/check_space_vlm.py \
|
docs/FAILURES.md
CHANGED
|
@@ -8,9 +8,9 @@ Use it for model/runtime/deployment/data issues, not for UI polish notes.
|
|
| 8 |
|
| 9 |
## Current Status
|
| 10 |
|
| 11 |
-
MiniCPM-V 2.6 is wired as an optional vision backend. Hosted Space ZeroGPU validation
|
| 12 |
|
| 13 |
-
The app
|
| 14 |
|
| 15 |
The recommended baseline GGUF for local text smoke testing is selected, but not downloaded or run:
|
| 16 |
|
|
@@ -48,7 +48,17 @@ Known non-blocking warning:
|
|
| 48 |
- Resolution: unresolved; inspect Space runtime logs or add non-secret fallback diagnostics for the MiniCPM-V load/chat exception.
|
| 49 |
- Evidence: `docs/SPACE_VLM_REPORT.md`, `docs/SPACE_VLM_REPORT.json`, and `data/traces/space-vlm/`.
|
| 50 |
|
| 51 |
-
##
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 52 |
|
| 53 |
- Updated: 2026-06-08 08:33:19 UTC
|
| 54 |
- Area: Hugging Face Space vision runtime.
|
|
|
|
| 8 |
|
| 9 |
## Current Status
|
| 10 |
|
| 11 |
+
MiniCPM-V 2.6 is wired as an optional vision backend. Hosted Space ZeroGPU validation now passes for public mug, keyboard, and shoe images after adding an `HF_TOKEN` Space secret with access to the gated `openbmb/MiniCPM-V-2_6` model.
|
| 12 |
|
| 13 |
+
The app includes a hidden `/vision_runtime_probe` API and `scripts/check_space_vlm.py` writes probe output into the Space VLM report before image validation. This probe identified the previous failure as a gated-model access issue rather than a GPU or dependency issue.
|
| 14 |
|
| 15 |
The recommended baseline GGUF for local text smoke testing is selected, but not downloaded or run:
|
| 16 |
|
|
|
|
| 48 |
- Resolution: unresolved; inspect Space runtime logs or add non-secret fallback diagnostics for the MiniCPM-V load/chat exception.
|
| 49 |
- Evidence: `docs/SPACE_VLM_REPORT.md`, `docs/SPACE_VLM_REPORT.json`, and `data/traces/space-vlm/`.
|
| 50 |
|
| 51 |
+
## 2026-06-08 - Hosted ZeroGPU MiniCPM-V Validation Passes After HF_TOKEN Secret
|
| 52 |
+
|
| 53 |
+
- Area: Hugging Face Space vision runtime.
|
| 54 |
+
- Reproduction: Run `scripts/check_space_vlm.py` with `--configure-space --hardware zero-a10g --rollback-to-mock` against `build-small-hackathon/ObjectverseDiary`.
|
| 55 |
+
- Expected: mug, keyboard, and shoe validations use `minicpm-v object understanding` without `vision-fallback-to-mock`.
|
| 56 |
+
- Actual: all three validations passed; probe reported `minicpm_load_ok=True`; traces include only `mock-text-runtime`.
|
| 57 |
+
- Impact: OpenBMB / hosted MiniCPM-V vision evidence is ready. Public Space still rolls back to mock-safe defaults after validation.
|
| 58 |
+
- Resolution: resolved by adding an `HF_TOKEN` Space secret with gated model access.
|
| 59 |
+
- Evidence: `docs/SPACE_VLM_REPORT.md`, `docs/SPACE_VLM_REPORT.json`, and `data/traces/space-vlm/`.
|
| 60 |
+
|
| 61 |
+
## Previous Space VLM Validation Failure
|
| 62 |
|
| 63 |
- Updated: 2026-06-08 08:33:19 UTC
|
| 64 |
- Area: Hugging Face Space vision runtime.
|
docs/FIELD_NOTES.md
CHANGED
|
@@ -105,25 +105,27 @@ The stable loop works locally and in the mock-safe Space:
|
|
| 105 |
|
| 106 |
The Gradio UI also moves away from the default demo feel. It is still Gradio, but the experience reads like a small archive interface.
|
| 107 |
|
| 108 |
-
## 8. What Failed
|
| 109 |
|
| 110 |
-
The important failure
|
| 111 |
|
| 112 |
-
Paid L4 hardware on the hackathon organization returned `402 Payment Required`. ZeroGPU CUDA probing later succeeded, and the full validation command reached the hosted Space on June 8, 2026.
|
|
|
|
|
|
|
| 113 |
|
| 114 |
- `docs/SPACE_VLM_REPORT.md`
|
| 115 |
- `docs/SPACE_VLM_REPORT.json`
|
| 116 |
- `data/traces/space-vlm/`
|
| 117 |
|
| 118 |
-
This is not hidden in the submission. The stable baseline
|
| 119 |
|
| 120 |
-
|
| 121 |
|
| 122 |
## 9. Traces And Reproducibility
|
| 123 |
|
| 124 |
The project includes public mock traces for the six stable examples under `data/traces/samples/`. They are deterministic and intended for demo replay, schema validation, and public inspection.
|
| 125 |
|
| 126 |
-
The Space VLM traces under `data/traces/space-vlm/` are different: they are
|
| 127 |
|
| 128 |
The export command is:
|
| 129 |
|
|
@@ -148,11 +150,10 @@ Trace logging anonymizes text inputs before public export. The current public tr
|
|
| 148 |
|
| 149 |
## 11. What I Would Improve Next
|
| 150 |
|
| 151 |
-
The next model-focused step is to
|
| 152 |
|
| 153 |
After that:
|
| 154 |
|
| 155 |
-
- rerun ZeroGPU MiniCPM-V validation
|
| 156 |
- run the documented GGUF smoke test after explicit confirmation
|
| 157 |
- decide whether the published LoRA should remain badge evidence only or be converted later
|
| 158 |
- generate real non-mock traces if hosted/local model validation passes
|
|
|
|
| 105 |
|
| 106 |
The Gradio UI also moves away from the default demo feel. It is still Gradio, but the experience reads like a small archive interface.
|
| 107 |
|
| 108 |
+
## 8. What Failed, Then Got Fixed
|
| 109 |
|
| 110 |
+
The important deployment failure was hosted MiniCPM-V validation.
|
| 111 |
|
| 112 |
+
Paid L4 hardware on the hackathon organization returned `402 Payment Required`. ZeroGPU CUDA probing later succeeded, and the full validation command reached the hosted Space on June 8, 2026. The first probe-aware run showed the real blocker: `openbmb/MiniCPM-V-2_6` is gated, and the Space runtime did not yet have access.
|
| 113 |
+
|
| 114 |
+
After adding an `HF_TOKEN` Space secret with the required model access, the same ZeroGPU validation passed for public mug, keyboard, and shoe images. The evidence is saved in:
|
| 115 |
|
| 116 |
- `docs/SPACE_VLM_REPORT.md`
|
| 117 |
- `docs/SPACE_VLM_REPORT.json`
|
| 118 |
- `data/traces/space-vlm/`
|
| 119 |
|
| 120 |
+
This is not hidden in the submission. The stable baseline keeps the public demo mock-safe by default, but hosted MiniCPM-V evidence now exists for the vision path.
|
| 121 |
|
| 122 |
+
The probe-aware validation path remains useful because it can report whether future failures happen at dependency import, GPU visibility, model loading, or generation time.
|
| 123 |
|
| 124 |
## 9. Traces And Reproducibility
|
| 125 |
|
| 126 |
The project includes public mock traces for the six stable examples under `data/traces/samples/`. They are deterministic and intended for demo replay, schema validation, and public inspection.
|
| 127 |
|
| 128 |
+
The Space VLM traces under `data/traces/space-vlm/` are different: they are hosted validation evidence for real MiniCPM-V object understanding plus mock text generation. They should be described honestly as VLM evidence, not full real text-runtime traces.
|
| 129 |
|
| 130 |
The export command is:
|
| 131 |
|
|
|
|
| 150 |
|
| 151 |
## 11. What I Would Improve Next
|
| 152 |
|
| 153 |
+
The next model-focused step is to smoke-test a real GGUF text model through llama.cpp.
|
| 154 |
|
| 155 |
After that:
|
| 156 |
|
|
|
|
| 157 |
- run the documented GGUF smoke test after explicit confirmation
|
| 158 |
- decide whether the published LoRA should remain badge evidence only or be converted later
|
| 159 |
- generate real non-mock traces if hosted/local model validation passes
|
docs/FINAL_VERIFICATION_REPORT.md
CHANGED
|
@@ -10,7 +10,7 @@
|
|
| 10 |
|
| 11 |
Objectverse Diary's stable mock-safe baseline remains locally verifiable. This update adds non-secret MiniCPM-V runtime diagnostics through a hidden Gradio API, probe-aware Space VLM reporting, a latest-failure-note updater, and a local llama.cpp GGUF smoke-test helper.
|
| 12 |
|
| 13 |
-
This report does not claim
|
| 14 |
|
| 15 |
## Implementation Additions
|
| 16 |
|
|
@@ -59,7 +59,7 @@ Browser checks:
|
|
| 59 |
|
| 60 |
- Six stable public mock sample traces remain under `data/traces/samples/`.
|
| 61 |
- The trace export JSONL was regenerated successfully.
|
| 62 |
-
- Hosted Space VLM traces under `data/traces/space-vlm/`
|
| 63 |
- New runtime traces do not include literal `TEXT_MODEL_PATH` values.
|
| 64 |
|
| 65 |
## Security Scan
|
|
@@ -88,7 +88,6 @@ No GGUF file, real token, private key, credential, or `.env` file was added by t
|
|
| 88 |
- Demo video URL is still pending recording/publication.
|
| 89 |
- Field Notes URL is still pending publication.
|
| 90 |
- Social post URL is still pending publication.
|
| 91 |
-
- Hosted MiniCPM-V validation still falls back to mock vision.
|
| 92 |
- Real GGUF download, optional `llama-cpp-python` installation, and smoke test remain pending explicit confirmation.
|
| 93 |
- GGUF conversion and live runtime wiring for the published LoRA adapter remain future work.
|
| 94 |
|
|
|
|
| 10 |
|
| 11 |
Objectverse Diary's stable mock-safe baseline remains locally verifiable. This update adds non-secret MiniCPM-V runtime diagnostics through a hidden Gradio API, probe-aware Space VLM reporting, a latest-failure-note updater, and a local llama.cpp GGUF smoke-test helper.
|
| 12 |
|
| 13 |
+
This report does not claim real GGUF text generation, live LoRA runtime wiring, Field Notes publication, demo video publication, social post publication, or final public submission URLs are complete.
|
| 14 |
|
| 15 |
## Implementation Additions
|
| 16 |
|
|
|
|
| 59 |
|
| 60 |
- Six stable public mock sample traces remain under `data/traces/samples/`.
|
| 61 |
- The trace export JSONL was regenerated successfully.
|
| 62 |
+
- Hosted Space VLM traces under `data/traces/space-vlm/` now provide passing MiniCPM-V object-understanding evidence for mug, keyboard, and shoe. Text generation in those traces remains mock by design.
|
| 63 |
- New runtime traces do not include literal `TEXT_MODEL_PATH` values.
|
| 64 |
|
| 65 |
## Security Scan
|
|
|
|
| 88 |
- Demo video URL is still pending recording/publication.
|
| 89 |
- Field Notes URL is still pending publication.
|
| 90 |
- Social post URL is still pending publication.
|
|
|
|
| 91 |
- Real GGUF download, optional `llama-cpp-python` installation, and smoke test remain pending explicit confirmation.
|
| 92 |
- GGUF conversion and live runtime wiring for the published LoRA adapter remain future work.
|
| 93 |
|
docs/MODEL_CARD.md
CHANGED
|
@@ -6,7 +6,7 @@ Stable submission baseline plus one published text LoRA test adapter. The public
|
|
| 6 |
|
| 7 |
The app defaults to deterministic mock backends. MiniCPM-V 2.6 vision is wired as an optional runtime backend for GPU environments, with a hidden non-secret probe for hosted diagnostics. Text generation has optional llama.cpp wiring for an externally configured GGUF model via `TEXT_MODEL_PATH`. A Modal LoRA test run completed for the planned text model path and the adapter is published at `https://huggingface.co/qqyule/objectverse-diary-qwen15b-lora`.
|
| 8 |
|
| 9 |
-
Hosted MiniCPM-V validation
|
| 10 |
|
| 11 |
## Planned Components
|
| 12 |
|
|
@@ -18,7 +18,7 @@ Hosted MiniCPM-V validation is not passing yet. The June 8, 2026 ZeroGPU validat
|
|
| 18 |
|
| 19 |
| Component | Candidate | Notes |
|
| 20 |
| --- | --- | --- |
|
| 21 |
-
| Vision | `openbmb/MiniCPM-V-2_6` or mock fallback | Wired as optional backend; hosted validation
|
| 22 |
| Text | deterministic mock text; published `Qwen/Qwen2.5-1.5B-Instruct` LoRA test adapter | Adapter published; not converted to GGUF or wired into Space runtime. |
|
| 23 |
| Runtime | optional GGUF through llama.cpp / llama-cpp-python | Wired with mock fallback; smoke helper exists, real-model smoke test still pending. |
|
| 24 |
| UI | Gradio Blocks | Required by the hackathon and project rules. |
|
|
@@ -104,7 +104,7 @@ GGUF smoke status:
|
|
| 104 |
- If llama.cpp is not installed, `TEXT_MODEL_PATH` is missing, model loading fails, or output JSON is invalid, keep deterministic mock text fallback for demo safety.
|
| 105 |
- If model JSON is invalid, repair and validate before rendering.
|
| 106 |
- Runtime traces do not record literal `TEXT_MODEL_PATH`; they only record that an external GGUF path is configured.
|
| 107 |
-
- Hosted VLM
|
| 108 |
|
| 109 |
## Required Notes
|
| 110 |
|
|
|
|
| 6 |
|
| 7 |
The app defaults to deterministic mock backends. MiniCPM-V 2.6 vision is wired as an optional runtime backend for GPU environments, with a hidden non-secret probe for hosted diagnostics. Text generation has optional llama.cpp wiring for an externally configured GGUF model via `TEXT_MODEL_PATH`. A Modal LoRA test run completed for the planned text model path and the adapter is published at `https://huggingface.co/qqyule/objectverse-diary-qwen15b-lora`.
|
| 8 |
|
| 9 |
+
Hosted MiniCPM-V validation passed on June 8, 2026 after adding an `HF_TOKEN` Space secret with access to the gated `openbmb/MiniCPM-V-2_6` model. The validation used public mug, keyboard, and shoe images on ZeroGPU, while text generation intentionally remained mock. See `docs/SPACE_VLM_REPORT.md`.
|
| 10 |
|
| 11 |
## Planned Components
|
| 12 |
|
|
|
|
| 18 |
|
| 19 |
| Component | Candidate | Notes |
|
| 20 |
| --- | --- | --- |
|
| 21 |
+
| Vision | `openbmb/MiniCPM-V-2_6` or mock fallback | Wired as optional backend; hosted ZeroGPU validation passed, then Space rolled back to mock-safe defaults. |
|
| 22 |
| Text | deterministic mock text; published `Qwen/Qwen2.5-1.5B-Instruct` LoRA test adapter | Adapter published; not converted to GGUF or wired into Space runtime. |
|
| 23 |
| Runtime | optional GGUF through llama.cpp / llama-cpp-python | Wired with mock fallback; smoke helper exists, real-model smoke test still pending. |
|
| 24 |
| UI | Gradio Blocks | Required by the hackathon and project rules. |
|
|
|
|
| 104 |
- If llama.cpp is not installed, `TEXT_MODEL_PATH` is missing, model loading fails, or output JSON is invalid, keep deterministic mock text fallback for demo safety.
|
| 105 |
- If model JSON is invalid, repair and validate before rendering.
|
| 106 |
- Runtime traces do not record literal `TEXT_MODEL_PATH`; they only record that an external GGUF path is configured.
|
| 107 |
+
- Hosted VLM validation evidence is preserved in `data/traces/space-vlm/`. These traces use real MiniCPM-V object understanding plus mock text generation and should not be described as full real-text-runtime traces.
|
| 108 |
|
| 109 |
## Required Notes
|
| 110 |
|
docs/SOCIAL_POST.md
CHANGED
|
@@ -5,7 +5,7 @@
|
|
| 5 |
I built Objectverse Diary for Build Small Hackathon: a Gradio app where everyday objects wake up, get secret personas, write diaries, chat with you, and generate share cards.
|
| 6 |
|
| 7 |
Stable demo: mock-safe, reproducible, no commercial AI APIs.
|
| 8 |
-
MiniCPM-V
|
| 9 |
Synthetic curated dataset + Qwen 1.5B LoRA adapter are published as training evidence.
|
| 10 |
|
| 11 |
Space: https://huggingface.co/spaces/build-small-hackathon/ObjectverseDiary
|
|
@@ -23,7 +23,7 @@ Objectverse Diary is my Build Small Hackathon project: a strange little object a
|
|
| 23 |
- a shareable personality card
|
| 24 |
- an anonymized trace record
|
| 25 |
|
| 26 |
-
The stable submission baseline is mock-safe and reproducible, with no commercial AI APIs. MiniCPM-V vision
|
| 27 |
|
| 28 |
I also published a small synthetic curated SFT dataset and a Qwen 1.5B LoRA test adapter for Well-Tuned evidence. The adapter is not wired into the public Space runtime yet; the live demo stays intentionally reliable.
|
| 29 |
|
|
@@ -38,4 +38,4 @@ https://huggingface.co/spaces/build-small-hackathon/ObjectverseDiary
|
|
| 38 |
|
| 39 |
- Add GitHub URL after push is confirmed.
|
| 40 |
- Add demo video URL after recording.
|
| 41 |
-
- Do not claim GGUF smoke test
|
|
|
|
| 5 |
I built Objectverse Diary for Build Small Hackathon: a Gradio app where everyday objects wake up, get secret personas, write diaries, chat with you, and generate share cards.
|
| 6 |
|
| 7 |
Stable demo: mock-safe, reproducible, no commercial AI APIs.
|
| 8 |
+
MiniCPM-V hosted validation now passes for the vision path; llama.cpp is wired behind a local GGUF smoke helper.
|
| 9 |
Synthetic curated dataset + Qwen 1.5B LoRA adapter are published as training evidence.
|
| 10 |
|
| 11 |
Space: https://huggingface.co/spaces/build-small-hackathon/ObjectverseDiary
|
|
|
|
| 23 |
- a shareable personality card
|
| 24 |
- an anonymized trace record
|
| 25 |
|
| 26 |
+
The stable submission baseline is mock-safe and reproducible, with no commercial AI APIs. MiniCPM-V vision is wired and hosted-validated on ZeroGPU, while llama.cpp text remains an optional local GGUF path.
|
| 27 |
|
| 28 |
I also published a small synthetic curated SFT dataset and a Qwen 1.5B LoRA test adapter for Well-Tuned evidence. The adapter is not wired into the public Space runtime yet; the live demo stays intentionally reliable.
|
| 29 |
|
|
|
|
| 38 |
|
| 39 |
- Add GitHub URL after push is confirmed.
|
| 40 |
- Add demo video URL after recording.
|
| 41 |
+
- Do not claim GGUF smoke test or live LoRA runtime wiring are complete.
|
docs/SPACE_VLM_REPORT.json
CHANGED
|
@@ -9,14 +9,8 @@
|
|
| 9 |
"device_name": "NVIDIA RTX PRO 6000 Blackwell Server Edition MIG 2g.48gb",
|
| 10 |
"mps_available": false,
|
| 11 |
"minicpm_load_attempted": true,
|
| 12 |
-
"minicpm_load_ok":
|
| 13 |
-
"errors": [
|
| 14 |
-
{
|
| 15 |
-
"stage": "minicpm_load",
|
| 16 |
-
"type": "OSError",
|
| 17 |
-
"summary": "You are trying to access a gated repo.\nMake sure to have access to it at https://huggingface.co/openbmb/MiniCPM-V-2_6.\n401 Client Error. (Request ID: Root=1-6a267e35-4f51134336ec6e534441e383;44044a70-471f-45a7-827a-a6e5c596624d)\n\nCannot ..."
|
| 18 |
-
}
|
| 19 |
-
]
|
| 20 |
},
|
| 21 |
"results": [
|
| 22 |
{
|
|
@@ -24,63 +18,63 @@
|
|
| 24 |
"label": "Coffee mug",
|
| 25 |
"source_page": "https://commons.wikimedia.org/wiki/File:Striped_coffee_mug.jpg",
|
| 26 |
"image_path": ".tmp/space-vlm-assets/mug.jpg",
|
| 27 |
-
"passed":
|
| 28 |
"object_name": "coffee mug",
|
| 29 |
"visible_features": [
|
| 30 |
-
"
|
| 31 |
-
"
|
|
|
|
| 32 |
],
|
| 33 |
-
"likely_context": "
|
| 34 |
-
"confidence": 0.
|
| 35 |
"runtime_vision": "minicpm-v object understanding",
|
| 36 |
"runtime_text": "mock persona and diary generation",
|
| 37 |
"fallbacks": [
|
| 38 |
-
"vision-fallback-to-mock",
|
| 39 |
"mock-text-runtime"
|
| 40 |
],
|
| 41 |
-
"error": "
|
| 42 |
},
|
| 43 |
{
|
| 44 |
"key": "keyboard",
|
| 45 |
"label": "Computer keyboard",
|
| 46 |
"source_page": "https://commons.wikimedia.org/wiki/File:Computer_keyboard.jpg",
|
| 47 |
"image_path": ".tmp/space-vlm-assets/keyboard.jpg",
|
| 48 |
-
"passed":
|
| 49 |
-
"object_name": "keyboard",
|
| 50 |
"visible_features": [
|
| 51 |
-
"
|
| 52 |
-
"
|
|
|
|
| 53 |
],
|
| 54 |
-
"likely_context": "
|
| 55 |
-
"confidence": 0.
|
| 56 |
"runtime_vision": "minicpm-v object understanding",
|
| 57 |
"runtime_text": "mock persona and diary generation",
|
| 58 |
"fallbacks": [
|
| 59 |
-
"vision-fallback-to-mock",
|
| 60 |
"mock-text-runtime"
|
| 61 |
],
|
| 62 |
-
"error": "
|
| 63 |
},
|
| 64 |
{
|
| 65 |
"key": "shoe",
|
| 66 |
"label": "Running shoe",
|
| 67 |
"source_page": "https://commons.wikimedia.org/wiki/File:Running_shoes.jpg",
|
| 68 |
"image_path": ".tmp/space-vlm-assets/shoe.jpg",
|
| 69 |
-
"passed":
|
| 70 |
-
"object_name": "
|
| 71 |
"visible_features": [
|
| 72 |
-
"
|
| 73 |
-
"
|
|
|
|
| 74 |
],
|
| 75 |
-
"likely_context": "
|
| 76 |
-
"confidence": 0.
|
| 77 |
"runtime_vision": "minicpm-v object understanding",
|
| 78 |
"runtime_text": "mock persona and diary generation",
|
| 79 |
"fallbacks": [
|
| 80 |
-
"vision-fallback-to-mock",
|
| 81 |
"mock-text-runtime"
|
| 82 |
],
|
| 83 |
-
"error": "
|
| 84 |
}
|
| 85 |
]
|
| 86 |
}
|
|
|
|
| 9 |
"device_name": "NVIDIA RTX PRO 6000 Blackwell Server Edition MIG 2g.48gb",
|
| 10 |
"mps_available": false,
|
| 11 |
"minicpm_load_attempted": true,
|
| 12 |
+
"minicpm_load_ok": true,
|
| 13 |
+
"errors": []
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 14 |
},
|
| 15 |
"results": [
|
| 16 |
{
|
|
|
|
| 18 |
"label": "Coffee mug",
|
| 19 |
"source_page": "https://commons.wikimedia.org/wiki/File:Striped_coffee_mug.jpg",
|
| 20 |
"image_path": ".tmp/space-vlm-assets/mug.jpg",
|
| 21 |
+
"passed": true,
|
| 22 |
"object_name": "coffee mug",
|
| 23 |
"visible_features": [
|
| 24 |
+
"colorful stripes",
|
| 25 |
+
"handle",
|
| 26 |
+
"ceramic material"
|
| 27 |
],
|
| 28 |
+
"likely_context": "on a table or countertop in a kitchen or dining area",
|
| 29 |
+
"confidence": 0.9,
|
| 30 |
"runtime_vision": "minicpm-v object understanding",
|
| 31 |
"runtime_text": "mock persona and diary generation",
|
| 32 |
"fallbacks": [
|
|
|
|
| 33 |
"mock-text-runtime"
|
| 34 |
],
|
| 35 |
+
"error": ""
|
| 36 |
},
|
| 37 |
{
|
| 38 |
"key": "keyboard",
|
| 39 |
"label": "Computer keyboard",
|
| 40 |
"source_page": "https://commons.wikimedia.org/wiki/File:Computer_keyboard.jpg",
|
| 41 |
"image_path": ".tmp/space-vlm-assets/keyboard.jpg",
|
| 42 |
+
"passed": true,
|
| 43 |
+
"object_name": "computer keyboard",
|
| 44 |
"visible_features": [
|
| 45 |
+
"black keys with white characters",
|
| 46 |
+
"function keys at the top",
|
| 47 |
+
"numeric keypad to the right"
|
| 48 |
],
|
| 49 |
+
"likely_context": "a workspace or office environment",
|
| 50 |
+
"confidence": 0.8,
|
| 51 |
"runtime_vision": "minicpm-v object understanding",
|
| 52 |
"runtime_text": "mock persona and diary generation",
|
| 53 |
"fallbacks": [
|
|
|
|
| 54 |
"mock-text-runtime"
|
| 55 |
],
|
| 56 |
+
"error": ""
|
| 57 |
},
|
| 58 |
{
|
| 59 |
"key": "shoe",
|
| 60 |
"label": "Running shoe",
|
| 61 |
"source_page": "https://commons.wikimedia.org/wiki/File:Running_shoes.jpg",
|
| 62 |
"image_path": ".tmp/space-vlm-assets/shoe.jpg",
|
| 63 |
+
"passed": true,
|
| 64 |
+
"object_name": "Running Shoes",
|
| 65 |
"visible_features": [
|
| 66 |
+
"Multicolored design with purple and pink as dominant colors.",
|
| 67 |
+
"Yellow laces and green accents on the tongue and sole.",
|
| 68 |
+
"White midsole with a textured pattern for cushioning."
|
| 69 |
],
|
| 70 |
+
"likely_context": "Used in athletic activities such as running or training.",
|
| 71 |
+
"confidence": 0.9,
|
| 72 |
"runtime_vision": "minicpm-v object understanding",
|
| 73 |
"runtime_text": "mock persona and diary generation",
|
| 74 |
"fallbacks": [
|
|
|
|
| 75 |
"mock-text-runtime"
|
| 76 |
],
|
| 77 |
+
"error": ""
|
| 78 |
}
|
| 79 |
]
|
| 80 |
}
|
docs/SPACE_VLM_REPORT.md
CHANGED
|
@@ -1,9 +1,9 @@
|
|
| 1 |
# Space VLM Validation Report
|
| 2 |
|
| 3 |
-
- Generated at: 2026-06-08 08:
|
| 4 |
- Space URL: https://huggingface.co/spaces/build-small-hackathon/ObjectverseDiary
|
| 5 |
- Space repo: `build-small-hackathon/ObjectverseDiary`
|
| 6 |
-
- Overall status:
|
| 7 |
- Vision backend expected: `minicpm-v`
|
| 8 |
- Text backend expected: `mock`
|
| 9 |
|
|
@@ -33,57 +33,49 @@
|
|
| 33 |
- `device_name`: `NVIDIA RTX PRO 6000 Blackwell Server Edition MIG 2g.48gb`
|
| 34 |
- `mps_available`: `False`
|
| 35 |
- `minicpm_load_attempted`: `True`
|
| 36 |
-
- `minicpm_load_ok`: `
|
| 37 |
-
- Errors:
|
| 38 |
-
- `minicpm_load`: `OSError` - You are trying to access a gated repo.
|
| 39 |
-
Make sure to have access to it at https://huggingface.co/openbmb/MiniCPM-V-2_6.
|
| 40 |
-
401 Client Error. (Request ID: Root=1-6a267e35-4f51134336ec6e534441e383;44044a70-471f-45a7-827a-a6e5c596624d)
|
| 41 |
-
|
| 42 |
-
Cannot ...
|
| 43 |
|
| 44 |
## Results
|
| 45 |
|
| 46 |
### Coffee mug
|
| 47 |
|
| 48 |
-
- Status:
|
| 49 |
- Source: https://commons.wikimedia.org/wiki/File:Striped_coffee_mug.jpg
|
| 50 |
- Local temporary image: `.tmp/space-vlm-assets/mug.jpg`
|
| 51 |
- Object name: `coffee mug`
|
| 52 |
-
- Visible features:
|
| 53 |
-
- Likely context: `
|
| 54 |
-
- Confidence: 0.
|
| 55 |
- Runtime vision: `minicpm-v object understanding`
|
| 56 |
- Runtime text: `mock persona and diary generation`
|
| 57 |
-
- Fallbacks:
|
| 58 |
-
- Error: `vision fallback marker was present`
|
| 59 |
|
| 60 |
### Computer keyboard
|
| 61 |
|
| 62 |
-
- Status:
|
| 63 |
- Source: https://commons.wikimedia.org/wiki/File:Computer_keyboard.jpg
|
| 64 |
- Local temporary image: `.tmp/space-vlm-assets/keyboard.jpg`
|
| 65 |
-
- Object name: `keyboard`
|
| 66 |
-
- Visible features:
|
| 67 |
-
- Likely context: `
|
| 68 |
-
- Confidence: 0.
|
| 69 |
- Runtime vision: `minicpm-v object understanding`
|
| 70 |
- Runtime text: `mock persona and diary generation`
|
| 71 |
-
- Fallbacks:
|
| 72 |
-
- Error: `vision fallback marker was present`
|
| 73 |
|
| 74 |
### Running shoe
|
| 75 |
|
| 76 |
-
- Status:
|
| 77 |
- Source: https://commons.wikimedia.org/wiki/File:Running_shoes.jpg
|
| 78 |
- Local temporary image: `.tmp/space-vlm-assets/shoe.jpg`
|
| 79 |
-
- Object name: `
|
| 80 |
-
- Visible features:
|
| 81 |
-
- Likely context: `
|
| 82 |
-
- Confidence: 0.
|
| 83 |
- Runtime vision: `minicpm-v object understanding`
|
| 84 |
- Runtime text: `mock persona and diary generation`
|
| 85 |
-
- Fallbacks:
|
| 86 |
-
- Error: `vision fallback marker was present`
|
| 87 |
|
| 88 |
## Notes
|
| 89 |
|
|
|
|
| 1 |
# Space VLM Validation Report
|
| 2 |
|
| 3 |
+
- Generated at: 2026-06-08 08:58:27 UTC
|
| 4 |
- Space URL: https://huggingface.co/spaces/build-small-hackathon/ObjectverseDiary
|
| 5 |
- Space repo: `build-small-hackathon/ObjectverseDiary`
|
| 6 |
+
- Overall status: PASS
|
| 7 |
- Vision backend expected: `minicpm-v`
|
| 8 |
- Text backend expected: `mock`
|
| 9 |
|
|
|
|
| 33 |
- `device_name`: `NVIDIA RTX PRO 6000 Blackwell Server Edition MIG 2g.48gb`
|
| 34 |
- `mps_available`: `False`
|
| 35 |
- `minicpm_load_attempted`: `True`
|
| 36 |
+
- `minicpm_load_ok`: `True`
|
| 37 |
+
- Errors: none
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 38 |
|
| 39 |
## Results
|
| 40 |
|
| 41 |
### Coffee mug
|
| 42 |
|
| 43 |
+
- Status: PASS
|
| 44 |
- Source: https://commons.wikimedia.org/wiki/File:Striped_coffee_mug.jpg
|
| 45 |
- Local temporary image: `.tmp/space-vlm-assets/mug.jpg`
|
| 46 |
- Object name: `coffee mug`
|
| 47 |
+
- Visible features: colorful stripes, handle, ceramic material
|
| 48 |
+
- Likely context: `on a table or countertop in a kitchen or dining area`
|
| 49 |
+
- Confidence: 0.90
|
| 50 |
- Runtime vision: `minicpm-v object understanding`
|
| 51 |
- Runtime text: `mock persona and diary generation`
|
| 52 |
+
- Fallbacks: mock-text-runtime
|
|
|
|
| 53 |
|
| 54 |
### Computer keyboard
|
| 55 |
|
| 56 |
+
- Status: PASS
|
| 57 |
- Source: https://commons.wikimedia.org/wiki/File:Computer_keyboard.jpg
|
| 58 |
- Local temporary image: `.tmp/space-vlm-assets/keyboard.jpg`
|
| 59 |
+
- Object name: `computer keyboard`
|
| 60 |
+
- Visible features: black keys with white characters, function keys at the top, numeric keypad to the right
|
| 61 |
+
- Likely context: `a workspace or office environment`
|
| 62 |
+
- Confidence: 0.80
|
| 63 |
- Runtime vision: `minicpm-v object understanding`
|
| 64 |
- Runtime text: `mock persona and diary generation`
|
| 65 |
+
- Fallbacks: mock-text-runtime
|
|
|
|
| 66 |
|
| 67 |
### Running shoe
|
| 68 |
|
| 69 |
+
- Status: PASS
|
| 70 |
- Source: https://commons.wikimedia.org/wiki/File:Running_shoes.jpg
|
| 71 |
- Local temporary image: `.tmp/space-vlm-assets/shoe.jpg`
|
| 72 |
+
- Object name: `Running Shoes`
|
| 73 |
+
- Visible features: Multicolored design with purple and pink as dominant colors., Yellow laces and green accents on the tongue and sole., White midsole with a textured pattern for cushioning.
|
| 74 |
+
- Likely context: `Used in athletic activities such as running or training.`
|
| 75 |
+
- Confidence: 0.90
|
| 76 |
- Runtime vision: `minicpm-v object understanding`
|
| 77 |
- Runtime text: `mock persona and diary generation`
|
| 78 |
+
- Fallbacks: mock-text-runtime
|
|
|
|
| 79 |
|
| 80 |
## Notes
|
| 81 |
|
docs/SUBMISSION_GUIDE.md
CHANGED
|
@@ -3,7 +3,7 @@
|
|
| 3 |
## Required Package
|
| 4 |
|
| 5 |
- [x] Hugging Face Space URL: https://huggingface.co/spaces/build-small-hackathon/ObjectverseDiary
|
| 6 |
-
- [x] GitHub Repository URL:
|
| 7 |
- [x] Demo Video Script: `docs/DEMO_VIDEO_SCRIPT.md`
|
| 8 |
- [x] Social Media Post Draft: `docs/SOCIAL_POST.md`
|
| 9 |
- [x] Fine-tuned Model URL: https://huggingface.co/qqyule/objectverse-diary-qwen15b-lora
|
|
@@ -18,8 +18,8 @@
|
|
| 18 |
- Runtime boundary: `docs/RUNTIME.md`
|
| 19 |
- Dataset plan and preview workflow: `docs/DATASET.md`
|
| 20 |
- External setup checklist: `docs/EXTERNAL_SETUP.md`
|
| 21 |
-
- Space VLM validation report: `docs/SPACE_VLM_REPORT.md` currently
|
| 22 |
-
- Space VLM diagnostics: hidden `/vision_runtime_probe` API
|
| 23 |
- Space VLM trace evidence: `data/traces/space-vlm/`
|
| 24 |
- Public mock traces: `data/traces/samples/`
|
| 25 |
- Stable demo baseline: Gradio example buttons replay committed sample traces first, then fall back to the live generation pipeline if a cached trace is missing.
|
|
@@ -32,7 +32,7 @@
|
|
| 32 |
- MiniCPM-V 2.6 backend wiring with fallback markers.
|
| 33 |
- Optional llama.cpp text runtime wiring through `TEXT_MODEL_PATH`.
|
| 34 |
- Hosted Space VLM validation script, report, JSON summary, and trace evidence export.
|
| 35 |
-
- Hosted Space VLM probe support
|
| 36 |
- Local GGUF smoke-test helper for `Qwen/Qwen2.5-1.5B-Instruct-GGUF` / `qwen2.5-1.5b-instruct-q4_k_m.gguf`; actual GGUF smoke remains pending.
|
| 37 |
- Synthetic curated SFT dataset published to Hugging Face Datasets.
|
| 38 |
- Modal Qwen 1.5B LoRA test run completed and adapter published to Hugging Face Models.
|
|
@@ -40,23 +40,22 @@
|
|
| 40 |
|
| 41 |
## Not Completed Yet
|
| 42 |
|
| 43 |
-
- Hosted Space MiniCPM-V validation for mug, keyboard, and shoe; ZeroGPU validation reached the app but currently falls back to mock vision.
|
| 44 |
- Real GGUF `TEXT_MODEL_PATH` smoke test and final text model parameter count. The recommended baseline GGUF has been selected, but not downloaded or run.
|
| 45 |
- Real model traces, GGUF conversion, and app runtime wiring for the published adapter.
|
| 46 |
-
- Field Notes publication URL, recorded demo video URL, social post URL, and final public
|
| 47 |
|
| 48 |
## Final Checks
|
| 49 |
|
| 50 |
-
- [
|
| 51 |
-
- [
|
| 52 |
- [x] Space MiniCPM-V non-secret diagnostic probe is implemented locally.
|
| 53 |
- [x] Demo video script targets under 2 minutes.
|
| 54 |
- [x] README includes stable-baseline parameter budget and links to the model card.
|
| 55 |
-
- [
|
| 56 |
- [x] Mock-safe local demo baseline is reproducible from committed sample traces.
|
| 57 |
- [x] Fine-tuned model is linked.
|
| 58 |
- [x] Dataset is linked.
|
| 59 |
-
- [
|
| 60 |
- [ ] Field Notes are linked.
|
| 61 |
-
- [
|
| 62 |
- [ ] Submission is complete before June 15, 2026.
|
|
|
|
| 3 |
## Required Package
|
| 4 |
|
| 5 |
- [x] Hugging Face Space URL: https://huggingface.co/spaces/build-small-hackathon/ObjectverseDiary
|
| 6 |
+
- [x] GitHub Repository URL: https://github.com/qqyule/Objectverse-Diary
|
| 7 |
- [x] Demo Video Script: `docs/DEMO_VIDEO_SCRIPT.md`
|
| 8 |
- [x] Social Media Post Draft: `docs/SOCIAL_POST.md`
|
| 9 |
- [x] Fine-tuned Model URL: https://huggingface.co/qqyule/objectverse-diary-qwen15b-lora
|
|
|
|
| 18 |
- Runtime boundary: `docs/RUNTIME.md`
|
| 19 |
- Dataset plan and preview workflow: `docs/DATASET.md`
|
| 20 |
- External setup checklist: `docs/EXTERNAL_SETUP.md`
|
| 21 |
+
- Space VLM validation report: `docs/SPACE_VLM_REPORT.md` currently passes for public mug, keyboard, and shoe images on ZeroGPU with `OBJECTVERSE_VISION_BACKEND=minicpm-v`.
|
| 22 |
+
- Space VLM diagnostics: hidden `/vision_runtime_probe` API confirms Torch/Transformers, CUDA, and MiniCPM-V model load status.
|
| 23 |
- Space VLM trace evidence: `data/traces/space-vlm/`
|
| 24 |
- Public mock traces: `data/traces/samples/`
|
| 25 |
- Stable demo baseline: Gradio example buttons replay committed sample traces first, then fall back to the live generation pipeline if a cached trace is missing.
|
|
|
|
| 32 |
- MiniCPM-V 2.6 backend wiring with fallback markers.
|
| 33 |
- Optional llama.cpp text runtime wiring through `TEXT_MODEL_PATH`.
|
| 34 |
- Hosted Space VLM validation script, report, JSON summary, and trace evidence export.
|
| 35 |
+
- Hosted Space VLM probe support, latest failure-note update support, and passing MiniCPM-V ZeroGPU validation after adding an `HF_TOKEN` Space secret for gated model access.
|
| 36 |
- Local GGUF smoke-test helper for `Qwen/Qwen2.5-1.5B-Instruct-GGUF` / `qwen2.5-1.5b-instruct-q4_k_m.gguf`; actual GGUF smoke remains pending.
|
| 37 |
- Synthetic curated SFT dataset published to Hugging Face Datasets.
|
| 38 |
- Modal Qwen 1.5B LoRA test run completed and adapter published to Hugging Face Models.
|
|
|
|
| 40 |
|
| 41 |
## Not Completed Yet
|
| 42 |
|
|
|
|
| 43 |
- Real GGUF `TEXT_MODEL_PATH` smoke test and final text model parameter count. The recommended baseline GGUF has been selected, but not downloaded or run.
|
| 44 |
- Real model traces, GGUF conversion, and app runtime wiring for the published adapter.
|
| 45 |
+
- Field Notes publication URL, recorded demo video URL, social post URL, and final public submission.
|
| 46 |
|
| 47 |
## Final Checks
|
| 48 |
|
| 49 |
+
- [x] Space is under the official organization.
|
| 50 |
+
- [x] Space MiniCPM-V validation passes for mug, keyboard, and shoe.
|
| 51 |
- [x] Space MiniCPM-V non-secret diagnostic probe is implemented locally.
|
| 52 |
- [x] Demo video script targets under 2 minutes.
|
| 53 |
- [x] README includes stable-baseline parameter budget and links to the model card.
|
| 54 |
+
- [x] No commercial cloud AI APIs are used.
|
| 55 |
- [x] Mock-safe local demo baseline is reproducible from committed sample traces.
|
| 56 |
- [x] Fine-tuned model is linked.
|
| 57 |
- [x] Dataset is linked.
|
| 58 |
+
- [x] Traces are linked.
|
| 59 |
- [ ] Field Notes are linked.
|
| 60 |
+
- [x] UI remains English-first and Chinese-second.
|
| 61 |
- [ ] Submission is complete before June 15, 2026.
|