Spaces:
Configuration error
Configuration error
Commit Β·
c062f77
1
Parent(s): 4dbe32d
docs(readme): mark WS-C complete (HF Space live with /healthz + /v1/captions verified)
Browse files
README.md
CHANGED
|
@@ -557,7 +557,7 @@ The backend test suite ([`backend/app/tests/`](backend/app/tests/)) introduced i
|
|
| 557 |
- [x] **WS-A** β Backend containerisation: `Dockerfile` (python:3.11-slim, non-root UID 1000, EXPOSE 7860, HEALTHCHECK on `/healthz`) + `.dockerignore` + corrected `.env.example` schema
|
| 558 |
- [x] **WS-A4** β Lifespan integration with HuggingFace Hub: extended `BackendSettings` with `weights_hub_repo` / `weights_hub_revision` / `weights_hub_filename` / `weights_cache_dir`; new `app.services.weights_loader.resolve_weights` calls `huggingface_hub.snapshot_download` when configured, falls back to local paths otherwise (4 new unit tests, downloader injected for offline testing)
|
| 559 |
- [x] **WS-B** β Uploaded dev-scaffold weights + tokenizer to [`apoorvrajdev/captioning-inceptionv3-transformer`](https://huggingface.co/apoorvrajdev/captioning-inceptionv3-transformer) on HuggingFace Hub, tagged `v1.0.0`, verified via `snapshot_download` (SHA-256 hashes match local artefacts byte-for-byte)
|
| 560 |
-
- [
|
| 561 |
- [x] **WS-D** β **Backend test suite** ([`backend/app/tests/`](backend/app/tests/)): 12 route tests covering the full `/healthz` + `/v1/captions` contract (200 / 400 / 413 / 415 / 422 / 503) with a duck-typed `FakePredictorService` β no TF loaded, full slice runs in 0.3 s
|
| 562 |
- [ ] **WS-E** β Frontend deploy to Vercel (static SPA, `VITE_API_BASE` baked at build time, SPA rewrites)
|
| 563 |
- [ ] **WS-F** β Production CORS: add the deployed Vercel origin to `serve.cors_allowed_origins`
|
|
|
|
| 557 |
- [x] **WS-A** β Backend containerisation: `Dockerfile` (python:3.11-slim, non-root UID 1000, EXPOSE 7860, HEALTHCHECK on `/healthz`) + `.dockerignore` + corrected `.env.example` schema
|
| 558 |
- [x] **WS-A4** β Lifespan integration with HuggingFace Hub: extended `BackendSettings` with `weights_hub_repo` / `weights_hub_revision` / `weights_hub_filename` / `weights_cache_dir`; new `app.services.weights_loader.resolve_weights` calls `huggingface_hub.snapshot_download` when configured, falls back to local paths otherwise (4 new unit tests, downloader injected for offline testing)
|
| 559 |
- [x] **WS-B** β Uploaded dev-scaffold weights + tokenizer to [`apoorvrajdev/captioning-inceptionv3-transformer`](https://huggingface.co/apoorvrajdev/captioning-inceptionv3-transformer) on HuggingFace Hub, tagged `v1.0.0`, verified via `snapshot_download` (SHA-256 hashes match local artefacts byte-for-byte)
|
| 560 |
+
- [x] **WS-C** β First manual deploy to [`apoorvrajdev/image-captioning-api`](https://huggingface.co/spaces/apoorvrajdev/image-captioning-api) on HuggingFace Spaces (Docker SDK, cpu-basic, port 7860, single worker) β Space variables wire `BACKEND_WEIGHTS_HUB_REPO` / `_REVISION` / `_FILENAME` + `BACKEND_WARMUP=true`; lifespan pulls weights from the Hub on cold start; `/healthz` returns `model_loaded: true` and `/v1/captions` verified end-to-end via Swagger UI
|
| 561 |
- [x] **WS-D** β **Backend test suite** ([`backend/app/tests/`](backend/app/tests/)): 12 route tests covering the full `/healthz` + `/v1/captions` contract (200 / 400 / 413 / 415 / 422 / 503) with a duck-typed `FakePredictorService` β no TF loaded, full slice runs in 0.3 s
|
| 562 |
- [ ] **WS-E** β Frontend deploy to Vercel (static SPA, `VITE_API_BASE` baked at build time, SPA rewrites)
|
| 563 |
- [ ] **WS-F** β Production CORS: add the deployed Vercel origin to `serve.cors_allowed_origins`
|