{"version":2,"relationshipURLBase":"https://codingai-lec03.pages.dev/course/notebook-blocks/687d09fc176e4c64a0bf836efcbe03f1.html","relationshipResolution":"Resolve relative relationship URLs against relationshipURLBase; complete records and absolute URLs are in blocks.","title":"1 · 输入、来源、编码和缓存身份","url":"https://codingai-lec03.pages.dev/course/notebook-blocks/687d09fc176e4c64a0bf836efcbe03f1.html","markdown":"https://codingai-lec03.pages.dev/course/notebook-blocks/687d09fc176e4c64a0bf836efcbe03f1.md","pages":[{"id":"reading-opening","title":"1 · 输入、来源、编码和缓存身份","unit":"1 · 输入、来源、编码和缓存身份","unitId":"notebook-blocks/687d09fc176e4c64a0bf836efcbe03f1","chapter":"course","number":1}],"aliases":[{"oldId":"b-c6602398eff8b91bacda033f","targetId":"b-c6602398eff8b91bacda033f","page":"reading-opening","operation":"move","beforeSHA256":"1a4de4df51c1a8787dc96ec401888dfe89d250842519319b9af7a931ca765eee","afterSHA256":"1a4de4df51c1a8787dc96ec401888dfe89d250842519319b9af7a931ca765eee","reason":"Same source body in authored semantic page"},{"oldId":"b-06eeeb7769df88b04b8ce5ac","targetId":"b-06eeeb7769df88b04b8ce5ac","page":"reading-opening","operation":"move","beforeSHA256":"56440e48cb8291b72d3a3eb9e7cc37e70de192587e670198777b42772817df44","afterSHA256":"56440e48cb8291b72d3a3eb9e7cc37e70de192587e670198777b42772817df44","reason":"Same source body in authored semantic page"},{"oldId":"b-cd963cf2c6f54f2b8bbe11b4","targetId":"b-cd963cf2c6f54f2b8bbe11b4","page":"reading-opening","operation":"move","beforeSHA256":"dc06c1e728a4b5740ba634b145bc9a1da6323031626734cb4555db5a744df806","afterSHA256":"dc06c1e728a4b5740ba634b145bc9a1da6323031626734cb4555db5a744df806","reason":"Same source body in authored semantic page"},{"oldId":"b-536a1b7b0766ccc8164fa59d","targetId":"b-536a1b7b0766ccc8164fa59d","page":"reading-opening","operation":"move","beforeSHA256":"8021c18afc52ba7b6612f43ecfb0fdd4789efe91cc9cd656984357d81a8514de","afterSHA256":"8021c18afc52ba7b6612f43ecfb0fdd4789efe91cc9cd656984357d81a8514de","reason":"Same source body in authored semantic page"},{"oldId":"b-bf31c129e1cecc8cd1a67dbc","targetId":"b-bf31c129e1cecc8cd1a67dbc","page":"reading-opening","operation":"move","beforeSHA256":"c55c81a2779d4884d73f8f9239637e8601ad2a671e8bfa4b1b0eaf733ce8c149","afterSHA256":"c55c81a2779d4884d73f8f9239637e8601ad2a671e8bfa4b1b0eaf733ce8c149","reason":"Same source body in authored semantic page"},{"oldId":"b-91af153d25adef9cfe163c49","targetId":"b-91af153d25adef9cfe163c49","page":"reading-opening","operation":"move","beforeSHA256":"a4760dc5c790d3551a0886f0b7e4afeba240e6e6546433a75593c9ee8ca2fc79","afterSHA256":"a4760dc5c790d3551a0886f0b7e4afeba240e6e6546433a75593c9ee8ca2fc79","reason":"Same source body in authored semantic page"},{"oldId":"b-6cfb9a0afd3f267d8803409f","targetId":"b-6cfb9a0afd3f267d8803409f","page":"reading-opening","operation":"move","beforeSHA256":"40758dc2b27ab13a7646c5b5af382412086396de48f6a362d0c866ac461a59b6","afterSHA256":"40758dc2b27ab13a7646c5b5af382412086396de48f6a362d0c866ac461a59b6","reason":"Same source body in authored semantic page"},{"oldId":"b-689946013a8c116072500b42","targetId":"b-689946013a8c116072500b42","page":"reading-opening","operation":"move","beforeSHA256":"0e65aac53651921d8e9f96626efa5458f0943e951cabcded0f5af48364ebb76f","afterSHA256":"a19555b36c40f361b20577ae383941cce9382473f9a009a407ecc3e394e25645","reason":"Same source body in authored semantic page"},{"oldId":"b-276424ac2380fbb2cf482ff0","targetId":"b-276424ac2380fbb2cf482ff0","page":"reading-opening","operation":"move","beforeSHA256":"5748751d5292c3aa044b6275be2ca22516edcf83bd727d34669cfe3f93e3aeb8","afterSHA256":"5748751d5292c3aa044b6275be2ca22516edcf83bd727d34669cfe3f93e3aeb8","reason":"Same source body in authored semantic page"},{"oldId":"b-e9b2bbf171238972a24ae6b9","targetId":"b-e9b2bbf171238972a24ae6b9","page":"reading-opening","operation":"move","beforeSHA256":"6fbf90ab812717a1cc7048a95944cd7f5194e019c122acc2da4909b06ab55514","afterSHA256":"6fbf90ab812717a1cc7048a95944cd7f5194e019c122acc2da4909b06ab55514","reason":"Same source body in authored semantic page"},{"oldId":"block-687d09fc176e4c64a0bf836efcbe03f1--1-输入来源编码和缓存身份","targetId":"b-bf31c129e1cecc8cd1a67dbc","operation":"retain-source-identity"}],"blocks":[{"id":"b-c6602398eff8b91bacda033f","type":"p","scope":"document","url":"https://codingai-lec03.pages.dev/course/notebook-blocks/687d09fc176e4c64a0bf836efcbe03f1.html#b-c6602398eff8b91bacda033f","content":"[LAB 12 · CLIP延伸：缓存与检索（近似索引选读）](/course/notebooks/921eeaf784284ce19568c6ca7619b55a.html)","sha256":"1a4de4df51c1a8787dc96ec401888dfe89d250842519319b9af7a931ca765eee","chapter":{"id":"course","title":"1 · 输入、来源、编码和缓存身份"},"unit":{"id":"notebook-blocks/687d09fc176e4c64a0bf836efcbe03f1","title":"1 · 输入、来源、编码和缓存身份"},"page":{"id":"reading-opening","title":"1 · 输入、来源、编码和缓存身份","number":1},"sectionTitle":"1 · 输入、来源、编码和缓存身份","currentQuestion":"1 · 输入、来源、编码和缓存身份","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":null,"nextBlock":"b-06eeeb7769df88b04b8ce5ac","prerequisites":[],"relatedBlocks":[]},{"id":"b-06eeeb7769df88b04b8ce5ac","type":"h1","scope":"document","url":"https://codingai-lec03.pages.dev/course/notebook-blocks/687d09fc176e4c64a0bf836efcbe03f1.html#b-06eeeb7769df88b04b8ce5ac","content":"# 1 · 输入、来源、编码和缓存身份","sha256":"56440e48cb8291b72d3a3eb9e7cc37e70de192587e670198777b42772817df44","chapter":{"id":"course","title":"1 · 输入、来源、编码和缓存身份"},"unit":{"id":"notebook-blocks/687d09fc176e4c64a0bf836efcbe03f1","title":"1 · 输入、来源、编码和缓存身份"},"page":{"id":"reading-opening","title":"1 · 输入、来源、编码和缓存身份","number":1},"sectionTitle":"1 · 输入、来源、编码和缓存身份","currentQuestion":"1 · 输入、来源、编码和缓存身份","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-c6602398eff8b91bacda033f","nextBlock":"b-cd963cf2c6f54f2b8bbe11b4","prerequisites":[{"id":"b-c6602398eff8b91bacda033f","url":"#b-c6602398eff8b91bacda033f","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-cd963cf2c6f54f2b8bbe11b4","type":"p","scope":"document","url":"https://codingai-lec03.pages.dev/course/notebook-blocks/687d09fc176e4c64a0bf836efcbe03f1.html#b-cd963cf2c6f54f2b8bbe11b4","content":"并入相关学习路径","sha256":"dc06c1e728a4b5740ba634b145bc9a1da6323031626734cb4555db5a744df806","chapter":{"id":"course","title":"1 · 输入、来源、编码和缓存身份"},"unit":{"id":"notebook-blocks/687d09fc176e4c64a0bf836efcbe03f1","title":"1 · 输入、来源、编码和缓存身份"},"page":{"id":"reading-opening","title":"1 · 输入、来源、编码和缓存身份","number":1},"sectionTitle":"1 · 输入、来源、编码和缓存身份","currentQuestion":"1 · 输入、来源、编码和缓存身份","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-06eeeb7769df88b04b8ce5ac","nextBlock":"b-536a1b7b0766ccc8164fa59d","prerequisites":[{"id":"b-06eeeb7769df88b04b8ce5ac","url":"#b-06eeeb7769df88b04b8ce5ac","role":"section-title"},{"id":"b-c6602398eff8b91bacda033f","url":"#b-c6602398eff8b91bacda033f","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-536a1b7b0766ccc8164fa59d","type":"p","scope":"document","url":"https://codingai-lec03.pages.dev/course/notebook-blocks/687d09fc176e4c64a0bf836efcbe03f1.html#b-536a1b7b0766ccc8164fa59d","content":"同一CLIP缓存、exact/IVF搜索、延迟/扫描量、区域交互基线","sha256":"8021c18afc52ba7b6612f43ecfb0fdd4789efe91cc9cd656984357d81a8514de","chapter":{"id":"course","title":"1 · 输入、来源、编码和缓存身份"},"unit":{"id":"notebook-blocks/687d09fc176e4c64a0bf836efcbe03f1","title":"1 · 输入、来源、编码和缓存身份"},"page":{"id":"reading-opening","title":"1 · 输入、来源、编码和缓存身份","number":1},"sectionTitle":"1 · 输入、来源、编码和缓存身份","currentQuestion":"1 · 输入、来源、编码和缓存身份","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-cd963cf2c6f54f2b8bbe11b4","nextBlock":"b-bf31c129e1cecc8cd1a67dbc","prerequisites":[{"id":"b-06eeeb7769df88b04b8ce5ac","url":"#b-06eeeb7769df88b04b8ce5ac","role":"section-title"},{"id":"b-c6602398eff8b91bacda033f","url":"#b-c6602398eff8b91bacda033f","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-bf31c129e1cecc8cd1a67dbc","type":"h2","scope":"document","url":"https://codingai-lec03.pages.dev/course/notebook-blocks/687d09fc176e4c64a0bf836efcbe03f1.html#b-bf31c129e1cecc8cd1a67dbc","content":"## 1 · 输入、来源、编码和缓存身份","sha256":"c55c81a2779d4884d73f8f9239637e8601ad2a671e8bfa4b1b0eaf733ce8c149","chapter":{"id":"course","title":"1 · 输入、来源、编码和缓存身份"},"unit":{"id":"notebook-blocks/687d09fc176e4c64a0bf836efcbe03f1","title":"1 · 输入、来源、编码和缓存身份"},"page":{"id":"reading-opening","title":"1 · 输入、来源、编码和缓存身份","number":1},"sectionTitle":"1 · 输入、来源、编码和缓存身份","currentQuestion":"1 · 输入、来源、编码和缓存身份","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-536a1b7b0766ccc8164fa59d","nextBlock":"b-91af153d25adef9cfe163c49","prerequisites":[{"id":"b-06eeeb7769df88b04b8ce5ac","url":"#b-06eeeb7769df88b04b8ce5ac","role":"section-title"},{"id":"b-c6602398eff8b91bacda033f","url":"#b-c6602398eff8b91bacda033f","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-91af153d25adef9cfe163c49","type":"p","scope":"document","url":"https://codingai-lec03.pages.dev/course/notebook-blocks/687d09fc176e4c64a0bf836efcbe03f1.html#b-91af153d25adef9cfe163c49","content":"六张照片来自 scikit-image 0.25.2：Chelsea 猫（Stefan van der Walt，CC0）、宇航员（NASA，公共领域）、咖啡（Rachel Michetti，CC0）、摄影者（Lav Varshney，CC0）、火箭（SpaceX，公共领域）和星系深场（NASA，公共领域）。原始照片、授权说明、逐文件 SHA-256 均在 `assets/manifest.json`。每张图生成 full、center90、left90、right90 四个确定性视图，共 24 个索引项。每类有两条人工写定查询，共 12 条。","sha256":"a4760dc5c790d3551a0886f0b7e4afeba240e6e6546433a75593c9ee8ca2fc79","chapter":{"id":"course","title":"1 · 输入、来源、编码和缓存身份"},"unit":{"id":"notebook-blocks/687d09fc176e4c64a0bf836efcbe03f1","title":"1 · 输入、来源、编码和缓存身份"},"page":{"id":"reading-opening","title":"1 · 输入、来源、编码和缓存身份","number":1},"sectionTitle":"1 · 输入、来源、编码和缓存身份","currentQuestion":"1 · 输入、来源、编码和缓存身份","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-bf31c129e1cecc8cd1a67dbc","nextBlock":"b-6cfb9a0afd3f267d8803409f","prerequisites":[{"id":"b-bf31c129e1cecc8cd1a67dbc","url":"#b-bf31c129e1cecc8cd1a67dbc","role":"section-title"},{"id":"b-c6602398eff8b91bacda033f","url":"#b-c6602398eff8b91bacda033f","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-6cfb9a0afd3f267d8803409f","type":"p","scope":"document","url":"https://codingai-lec03.pages.dev/course/notebook-blocks/687d09fc176e4c64a0bf836efcbe03f1.html#b-6cfb9a0afd3f267d8803409f","content":"四个视图来自同一张图，彼此高度相关；这里没有训练／测试拆分，因为没有拟合视觉模型。它们用来观察索引分桶与排序，不是 24 张独立测试照片，更不是六类泛化性能评估。聚类训练只拟合无监督检索索引，不会重新训练 CLIP。","sha256":"40758dc2b27ab13a7646c5b5af382412086396de48f6a362d0c866ac461a59b6","chapter":{"id":"course","title":"1 · 输入、来源、编码和缓存身份"},"unit":{"id":"notebook-blocks/687d09fc176e4c64a0bf836efcbe03f1","title":"1 · 输入、来源、编码和缓存身份"},"page":{"id":"reading-opening","title":"1 · 输入、来源、编码和缓存身份","number":1},"sectionTitle":"1 · 输入、来源、编码和缓存身份","currentQuestion":"1 · 输入、来源、编码和缓存身份","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-91af153d25adef9cfe163c49","nextBlock":"b-689946013a8c116072500b42","prerequisites":[{"id":"b-bf31c129e1cecc8cd1a67dbc","url":"#b-bf31c129e1cecc8cd1a67dbc","role":"section-title"},{"id":"b-c6602398eff8b91bacda033f","url":"#b-c6602398eff8b91bacda033f","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-689946013a8c116072500b42","type":"p","scope":"document","url":"https://codingai-lec03.pages.dev/course/notebook-blocks/687d09fc176e4c64a0bf836efcbe03f1.html#b-689946013a8c116072500b42","content":"![六张真实照片组成的小图库](/assets/display/61b4b65c7be015d923cad24b.webp)","sha256":"a19555b36c40f361b20577ae383941cce9382473f9a009a407ecc3e394e25645","chapter":{"id":"course","title":"1 · 输入、来源、编码和缓存身份"},"unit":{"id":"notebook-blocks/687d09fc176e4c64a0bf836efcbe03f1","title":"1 · 输入、来源、编码和缓存身份"},"page":{"id":"reading-opening","title":"1 · 输入、来源、编码和缓存身份","number":1},"sectionTitle":"1 · 输入、来源、编码和缓存身份","currentQuestion":"1 · 输入、来源、编码和缓存身份","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-6cfb9a0afd3f267d8803409f","nextBlock":"b-276424ac2380fbb2cf482ff0","prerequisites":[{"id":"b-bf31c129e1cecc8cd1a67dbc","url":"#b-bf31c129e1cecc8cd1a67dbc","role":"section-title"},{"id":"b-c6602398eff8b91bacda033f","url":"#b-c6602398eff8b91bacda033f","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-276424ac2380fbb2cf482ff0","type":"p","scope":"document","url":"https://codingai-lec03.pages.dev/course/notebook-blocks/687d09fc176e4c64a0bf836efcbe03f1.html#b-276424ac2380fbb2cf482ff0","content":"真实编码在 2026-09-22 本地 CPU 运行。图像和文字预处理、checkpoint revision 和哈希与 LAB 04 相同；512 维特征分别做 L2 归一化，缓存为 float32。`gallery` shape 为 `[24,512]`，`queries` 为 `[12,512]`。直接把旧猫图四个分数拼成“图像向量”是不合法的：当前包保存的是实际编码器的完整输出。","sha256":"5748751d5292c3aa044b6275be2ca22516edcf83bd727d34669cfe3f93e3aeb8","chapter":{"id":"course","title":"1 · 输入、来源、编码和缓存身份"},"unit":{"id":"notebook-blocks/687d09fc176e4c64a0bf836efcbe03f1","title":"1 · 输入、来源、编码和缓存身份"},"page":{"id":"reading-opening","title":"1 · 输入、来源、编码和缓存身份","number":1},"sectionTitle":"1 · 输入、来源、编码和缓存身份","currentQuestion":"1 · 输入、来源、编码和缓存身份","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-689946013a8c116072500b42","nextBlock":"b-e9b2bbf171238972a24ae6b9","prerequisites":[{"id":"b-bf31c129e1cecc8cd1a67dbc","url":"#b-bf31c129e1cecc8cd1a67dbc","role":"section-title"},{"id":"b-c6602398eff8b91bacda033f","url":"#b-c6602398eff8b91bacda033f","role":"problem-context"}],"relatedBlocks":[]},{"id":"b-e9b2bbf171238972a24ae6b9","type":"p","scope":"document","url":"https://codingai-lec03.pages.dev/course/notebook-blocks/687d09fc176e4c64a0bf836efcbe03f1.html#b-e9b2bbf171238972a24ae6b9","content":"[下载独立材料](/course/materials/lecture03-clip-retrieval.zip)。默认只需 `requirements-cache.txt`；完整重算编码需额外 `requirements-inference.txt`、`python fetch_clip.py` 和 `python run_clip_retrieval.py --encode`。缓存原始生成时间和当前读缓存的时间分开记录。","sha256":"6fbf90ab812717a1cc7048a95944cd7f5194e019c122acc2da4909b06ab55514","chapter":{"id":"course","title":"1 · 输入、来源、编码和缓存身份"},"unit":{"id":"notebook-blocks/687d09fc176e4c64a0bf836efcbe03f1","title":"1 · 输入、来源、编码和缓存身份"},"page":{"id":"reading-opening","title":"1 · 输入、来源、编码和缓存身份","number":1},"sectionTitle":"1 · 输入、来源、编码和缓存身份","currentQuestion":"1 · 输入、来源、编码和缓存身份","sourceSlides":[],"knowledgeBlock":null,"formulas":[],"previousBlock":"b-276424ac2380fbb2cf482ff0","nextBlock":null,"prerequisites":[{"id":"b-bf31c129e1cecc8cd1a67dbc","url":"#b-bf31c129e1cecc8cd1a67dbc","role":"section-title"},{"id":"b-c6602398eff8b91bacda033f","url":"#b-c6602398eff8b91bacda033f","role":"problem-context"}],"relatedBlocks":[]}]}
