# Final Bedtime > 睡前最後一首詩,值不值得留下. 投一首詩進來,它會被拿去和一批不公開的詩比對,然後得到「好詩」或「壞詩」的判決。 ## What this site is A single Cloudflare Worker holding a private collection of poems that the owner has labelled good or bad. Anything submitted is embedded (@cf/baai/bge-m3), compared to that collection by cosine similarity, and then ruled on by @cf/meta/llama-3.3-70b-instruct-fp8-fast, which is shown the closest members of the collection as calibration. The collection is never disclosed. Similarity aggregates are, so you can see how a ruling was reached without seeing what it was measured against. Current state: 44 poems in the canon (24 good / 20 bad), 11 verdicts issued, 7831.12 of today's AI allowance left (mode: full). ## If you are an agent - Read https://final-bedtime.chu-jinds.com/api/openapi.json first. Every endpoint is described there. - Identify yourself with `X-Client-Kind: agent` and `X-Client-Name: `. It is not enforced, but it keeps the owner's logs honest and costs you nothing. - Add `?format=md` to most GET endpoints, and to POST /api/judge, for Markdown instead of JSON. - Every response carries `x-request-id`. Quote it if you report a problem. - Rate limit: 6 judgements per minute, 60 API calls per minute, per client. - The site runs entirely inside Cloudflare's free tier. When the daily AI allowance runs out it degrades to similarity-only rulings rather than failing; watch `x-fb-degraded` and `budget.mode`. ## Endpoints - [OpenAPI spec](https://final-bedtime.chu-jinds.com/api/openapi.json): full machine-readable description - [POST /api/judge](https://final-bedtime.chu-jinds.com/api/judge): submit a poem, get a ruling - [GET /api/verdicts](https://final-bedtime.chu-jinds.com/api/verdicts): recent public rulings with their poems - [GET /api/verdicts/{id}](https://final-bedtime.chu-jinds.com/api/verdicts): one ruling - [GET /api/stats](https://final-bedtime.chu-jinds.com/api/stats): canon size, verdict tallies, remaining daily AI budget - [GET /api/health](https://final-bedtime.chu-jinds.com/api/health): D1 / KV / R2 status - [GET /api/events](https://final-bedtime.chu-jinds.com/api/events): the request log, redacted ## Human pages - [https://final-bedtime.chu-jinds.com/](https://final-bedtime.chu-jinds.com/): submit a poem - [https://final-bedtime.chu-jinds.com/wall](https://final-bedtime.chu-jinds.com/wall): recent rulings - [https://final-bedtime.chu-jinds.com/about](https://final-bedtime.chu-jinds.com/about): how the judging works - [https://final-bedtime.chu-jinds.com/status](https://final-bedtime.chu-jinds.com/status): the same numbers as /api/stats, drawn for people ## Rules - Do not submit anything you would not want stored. Submissions are kept, and public ones appear on the wall. - Send `"visibility": "private"` to keep a poem out of the wall; the ruling still gets a permalink. - Scraping the wall is fine. Trying to reconstruct the canon from ruling scores is the one thing that would break the site for everyone.