{"schema_version":"1.0","service":"Publicasta","type":"article","id":780,"slug":"embeddinggemma_2_local_multimodal_retrieval","title":"EmbeddingGemma 2 让本地多模态搜索变得实用，但它不是即插即用的 RAG 升级","excerpt":"EmbeddingGemma 2 将文本、代码、图片、视频和音频放进同一个向量空间，并把本地检索带到更容易测试的范围。真正需要回答的问题，是统一索引能否改善具体工作流。","language":"zh","default_language":"en","canonical_url":"https://publicasta.com/open_source_radar/embeddinggemma_2_local_multimodal_retrieval?lang=zh","image":{"url":"https://publicasta.com/storage/projects/10/pages/780/2026/10/9793931d-33af-4ee5-8aa6-6bbcf969d07d.webp","alt":"笔记本电脑和智能手机展示跨文档、代码、图像、视频与音频的私密本地搜索。"},"publisher":{"id":10,"slug":"open_source_radar","name":"Open Source Radar","url":"https://publicasta.com/open_source_radar"},"author":{"name":"Anton R"},"published_at":"2026-10-07T13:50:59+00:00","updated_at":"2026-10-07T13:50:59+00:00","content_markdown":"Google 的 EmbeddingGemma 2 面向 AI 技术栈中一个常被忽略的环节：决定搜索或检索系统首先看到哪些信息的嵌入模型。它不是聊天机器人、通用助手，也不是生成模型的缩小替代品，而是把文本、源代码、图片、视频帧和音频转换成可比较语义相似度的向量。\n\n ![笔记本电脑和智能手机展示跨文档、代码、图像、视频与音频的私密本地搜索。](https://publicasta.com/storage/projects/10/pages/780/2026/10/9793931d-33af-4ee5-8aa6-6bbcf969d07d.webp)\n\n 这个区别很重要。只有第一阶段搜索返回了正确材料，检索系统才有可能给出可靠答案。如果团队的文档、截图、录音、源代码和产品视频分散在不同存储中，传统的纯文本索引就必须先把所有模态经过翻译。图片要生成描述，音频要转写，视频要压缩成选定帧，之后文本嵌入模型才看得到这些内容。EmbeddingGemma 2 试图通过把多种媒体放入共享的 768 维向量空间，减少其中一部分翻译步骤。\n\n Google DeepMind 和 Google AI Edge 团队于 2026 年 10 月 6 日公布了该模型。官方文档称，它是一个拥有 7.4 亿参数、为统一多模态嵌入打造的开放权重模型，并提供模块化变体，让开发者在只需要文本和代码时不必加载完整模型。Google 表示，该模型采用 Apache 2.0 许可证，可在消费级硬件上本地、离线运行。\n\n 这次发布值得关注，是因为它瞄准了一个实际瓶颈：在无法承载大型生成模型的设备上，实现私有、低延迟的检索。同时也应该保持谨慎。模型卡、基准条件、输入格式、量化选择和索引设计，都会决定它是否真的能改善应用。共享向量空间是一项有用的基础设施，但不等于所有跨模态搜索问题都已经解决。\n\n ## EmbeddingGemma 2 改变了什么\n\n 与第一代 EmbeddingGemma 相比，最重要的变化是输入空间的范围扩大了。EmbeddingGemma 1 是轻量级文本嵌入模型；EmbeddingGemma 2 则把这一思路扩展到文本、代码、图片、视频和音频，也支持这些输入的组合。这样，描述可以与截图比较，口述短语可以与视频帧比较，代码查询也可以与相关源文件比较，而不必先把一切转成同一种文本表示。\n\n 官方模型文档称，系统会生成 768 维向量，并支持文本和源代码最长 8,192 个 token 的上下文长度。Google 的公告介绍了一种模块化架构：从 2.7 亿参数的文本与代码配置，到完整的 7.4 亿参数多模态模型。这个区别比参数总数的标题更重要。构建本地代码搜索工具的开发者不一定需要把图片、视频和音频组件都放进内存；媒体库也不能假定文本版的占用量能够代表完整的多模态运行时。\n\n 模型还支持 Matryoshka Representation Learning，也就是 MRL。实际使用中，输出可以截断为 128、256 或 512 等较小维度，而不必始终保存全部 768 个数值。这能够降低向量数据库的存储和距离计算成本，但质量取舍必须用应用自己的数据测量。向量更小并不自动意味着效果更好；最合适的维度取决于召回要求、索引类型以及语料库的分布。\n\n Google 报告称，在 Code MTEB 基准上，该模型较第一代有明显提升，分数从 68.76 提高到 78.68。对于代码搜索，这是一个值得注意的信号，但不能把它理解成所有检索任务的通用排名。精选数据集上的基准增益，并不能告诉团队自己的 issue tracker、单体仓库、截图或支持录音是否会返回正确证据。\n\n 这次发布也延续了原模型的设备端取向。Google 报告称，在 Pixel 11 Pro 上，量化后的纯文本权重约使用 191 MB 活跃内存；完整多模态模型在同一参考设置下约使用 567 MB。这些数字对移动端和边缘应用很有吸引力，但它们是在特定设备、运行时和量化配置下测得的，应作为规划数字，而不是对所有 CPU、GPU、NPU 或浏览器环境的承诺。\n\n ## 共享嵌入空间为什么有用\n\n 多数检索系统仍然由一串专用组件拼成。文档经过文本嵌入器，图片要生成描述或单独嵌入，音频需要转写，视频要采样成帧，再进行描述或嵌入。搜索要么停留在单一模态内部，要么依靠第二阶段系统连接不同索引的结果。这种架构完全可以工作，但会增加延迟、故障点，以及关于哪些信息可以安全丢弃的策略决策。\n\n 统一嵌入空间把第一个问题从“怎样把这份媒体翻译成文本？”改成了“无论原始格式是什么，哪些内容在语义上接近这个查询？”设想一个现场服务应用。技术人员可能用语音描述故障，并希望找到维修手册、损坏部件的照片，以及展示维修过程的短视频。纯文本流程也能实现这一点，但需要转写、图像标注和精心的查询扩展。原生多模态嵌入器可以让这些关系更早进入流程。\n\n 软件团队也会遇到同样的情况。一个代码仓库可能同时包含源代码、API 文档、架构图、终端录制和 issue 截图。开发者搜索“显示令牌刷新失败的那个界面”时，提出的并不是纯文本问题。能够把代码和图片嵌入同一空间的模型，或许可以找到纯文本索引永远不会展示的证据。\n\n 这里还有隐私层面的理由。如果嵌入可以在本地生成，设备就不必仅仅为了建立可搜索索引而上传个人照片、录音或内部文档。离线执行能够减少暴露面，也能在连接不稳定的环境中提升响应速度。但这并不会自动让整个应用变得私密：日志、分析、同步、模型下载，以及检索之后使用的生成模型，都需要单独审查。\n\n 因此，这次发布的重点并不是“手机上的 AI”这一口号，而是把一块具体的基础设施移到更接近数据的位置。只要设备、运行时和语料库符合模型的运行范围，本地索引就可以支持边输入边搜索、私有文档检索、媒体整理和零样本路由，而且不必往返调用嵌入 API。\n\n ## 模型足够小，值得测试；不代表适合每个产品\n\n 与现代生成模型相比，7.4 亿参数已经相当紧凑，但它并非没有成本。开发者需要考虑模型文件、分词器和处理器代码、临时激活内存、向量索引、应用本身，以及任何下游重排器或语言模型。多模态输入的成本差异也很大：文本查询、高分辨率图片、长音频和一串视频帧并不是同等的工作单位。\n\n 模块化设计有所帮助。文本和代码应用可以选择更小的配置，避免发布不用的编码器；照片库可以加载视觉支持而不启用音频；偶尔索引视频的应用，可以在后台任务中处理帧，而不是在交互式搜索期间让所有模态常驻内存。这些是架构决策，而不只是 API 调用中的几个开关。\n\n 已报告的内存数字，最能说服那些已经有明确本地用例的开发者。手机笔记搜索、桌面媒体目录或离线支持助手，都可以实际测量几百 MB 内存和本地推理延迟是否可接受。拥有数百万份文档的大型企业档案，可能仍需要服务端索引层、批处理、分布式向量存储，以及针对原始媒体保留的独立策略。\n\n 量化又增加了一层判断。它可以让模型在更多设备上运行，但数值精度的变化可能影响相似度排序。如果应用只返回少量结果，召回率的小幅下降可能立即可见；如果应用先生成较宽的候选集合，再交给强大的重排器，同样的损失或许可以接受。正确的问题不是量化模型能不能运行，而是最终产品能否以可接受的成本找回正确证据。\n\n ## 第一次实践测试应关注检索质量，而不是演示效果\n\n 最容易做出的演示是跨模态搜索：输入一句话，找到匹配图片；展示一张图片，找到相关文本。这对于确认流程接通很有用，却几乎不能说明生产质量。团队应该在更换索引之前，先建立一组小型评测集。\n\n 从目标工作流中的真实查询开始。对于代码库，收集开发者实际会输入的搜索，并标记包含答案的文件。对于支持档案，抽取属于同一事件的录音、截图和文档。对于个人媒体库，使用自然描述，而不是开发者预先写好的标签。还要加入困难负例：外观相似但含义不同的图片、词汇相同却实现不同功能的代码文件，以及转写文本包含正确词语、但关键证据只出现在视频画面中的录音。\n\n 在多个截断点测量召回率，不要只看第一条结果是否“看起来不错”。Recall@5 或 Recall@10 能告诉你下游重排器是否还有机会找回答案。把索引延迟和交互查询延迟分开记录，同时记录实际设备上的内存、电池影响和索引大小。如果应用支持多种模态，还应分别比较同模态和跨模态搜索；模型可能擅长文本检索，却较弱于图像到文本或音频到代码的匹配。\n\n 输入格式尤其值得重视。模型指南通过 sentence-transformers 说明了面向任务的使用方式，并将模型标识为 `google/embeddinggemma-2`。嵌入模型经常通过前缀或结构化提示，区分文档、查询、标题和段落。如果语料库使用一种约定建立索引，查询却用另一种约定编码，质量可能下降，而运行时不会报出明显错误。团队应把精确的预处理、模态处理、维度和归一化设置，与索引版本一起保存。\n\n 一个最小实验可以比较四种配置：现有的纯文本嵌入器、使用完整 768 维向量的 EmbeddingGemma 2、使用较低 MRL 维度的同一模型，以及量化后的本地构建。保持语料库和查询集不变。这样的实验比精心包装的演示更有价值，因为它能揭示多模态能力究竟解决了真实的检索缺口，还是只是增加了一个需要维护的模型。\n\n ## 开发者应当从哪些场景开始尝试\n\n 最适合早期试验的应用，是用户的信息本来就混合在多种格式中，而且不适合把这些信息发送给托管 API。本地优先知识库就是一个例子。它可以索引 Markdown、PDF、截图和语音笔记，在不上传底层文件的情况下返回相关材料。系统仍然需要文档解析、OCR，也可能需要语音识别；但当这些输入已经准备好后，嵌入阶段可以提供共同的检索层。\n\n 桌面媒体整理器也是一个方向。用户可以搜索一张照片，找到语义或视觉上相关的文字笔记；也可以输入短语，找到图片和短视频。当媒体库私密、规模较大且不适合云同步时，本地模型尤其有意义。产品应明确说明嵌入是否保存在本地、缩略图或原始媒体是否离开设备，以及是否有后台服务执行额外处理。\n\n 开发者工具的技术要求更高，但潜力也更明显。IDE 或代码浏览器可以把带有符号信息的代码块，与 issue 截图、设计参考和测试录制结合起来。模型在已公布代码基准上的提升，使它值得测试；不过源代码检索有许多通用语义相似度无法捕捉的限制。名称、导入、调用关系、版本边界和精确错误消息，往往比宽泛的概念相似性更重要。把词法搜索、符号索引和嵌入结合起来的混合系统，可能比用一个向量索引替换全部既有搜索更稳妥。\n\n 设备端意图路由也是 Google 发布材料提到的用例。开发者无需为每个小应用训练分类器，而可以把输入与一组标签或描述比较，选出最接近的意图。这对离线命令和隐私敏感界面很有吸引力，但需要保守的阈值。低置信度匹配应该回退到澄清问题或确定性路径，而不是悄悄选择破坏性操作。\n\n 视频搜索可能从共享空间中获益，但这里的成本假设也最容易失效。长录音需要采样，有用时刻可能落在采样帧之间，或者依赖语音内容。以完整精度嵌入每一帧，会形成大型索引和昂贵的摄取任务。实际系统可以组合转写片段、场景边界、精选关键帧和元数据，再使用多模态模型生成候选。\n\n ## 不应从发布信息中推断什么\n\n 第一个误区，是把“开放”当成这次发布的完整描述。根据 Google 文档，EmbeddingGemma 2 具有开放权重并采用 Apache 2.0 许可证，这为部署和修改提供了较好的起点。但应用仍然受到其他依赖、模型服务运行时、数据集和分发渠道所附带义务的影响。团队应把实际发布的权重与模型许可证一起保存，并审查所选构件附带的其他 Gemma 条款或使用要求。\n\n 第二个误区，是认为共享向量空间会让不同模态同样容易搜索。跨模态对齐是一个优化目标，不是文本、图片、视频和音频质量完全相同的保证。Google 发布的基准只为选定任务提供证据，不能替代用真实用户、语言、图像风格、录音条件和领域词汇建立的评测集。\n\n 第三个误区，是把嵌入当成安全边界。向量索引可能通过成员推断、近邻结果或保护不当的备份泄露信息。本地存储可以减少网络暴露，却不能保护设备免受被攻破的进程或已解锁的电脑影响。敏感应用应考虑静态加密、访问控制、删除行为，以及源文件删除后向量是否仍然存在。\n\n 第四个误区，是把检索和理解混为一谈。EmbeddingGemma 2 可以帮助选择相关证据，但不会验证证据是否最新、权威或适合执行。一个本地 RAG 助手仍然需要来源归属、时效规则、访问过滤，以及能够区分检索事实和猜测的生成模型。如果检索到错误截图或过时代码路径，流畅的回答反而会让问题更难被察觉。\n\n ## 替代方案以及如何选择\n\n 正确的比较对象取决于任务。如果应用只需要多语言文本搜索，第一代 EmbeddingGemma 或其他成熟文本嵌入器可能更便宜，也更容易验证。当语料库和查询都是文本时，没有理由为了多模态支持承担额外复杂度。Google 自己的文档把 EmbeddingGemma 1 定位为独立的上一代版本，并没有要求所有用户迁移。\n\n 对于服务端搜索，更大的嵌入模型在质量或语言覆盖方面仍可能占优，尤其是在内存和网络访问不是限制因素时。托管 API 也可能在运维上更简单，但会带来成本、延迟、数据治理和服务依赖问题。团队应比较完整的系统表现，而不只是模型基准：索引吞吐量、查询延迟、存储、故障行为和维护成本都很重要。\n\n 当某种模态有专门的领域要求时，专用流程仍然合理。对于文档中的精确文字，OCR 可能更好；音频转写可以暴露可搜索词语和时间戳；代码智能工具可以借助解析器和语言服务器理解符号与引用。EmbeddingGemma 2 可以作为共同的语义层，与这些系统并存，而不是取代它们。\n\n 其他社区的开放多模态模型，也可能在规模、语言支持、运行时兼容性或许可证方面提供不同取舍。真正有用的问题不是哪个模型的发布声明最强，而是它能否在所需环境中运行，许可证是否适合产品，团队能否复现预处理，以及它的错误是否符合用户任务的容忍范围。\n\n ## 一个稳妥的采用计划\n\n 初次试用时，应固定准确的模型版本和运行时。不要用不断变化的“latest”构件建立生产索引。把预处理配置、输出维度、归一化规则和量化设置写入索引元数据。在调搜索阈值之前，先建立一组小型留出测试集。\n\n 接着，端到端测试一个狭窄工作流。一个合适的试点，可以是搜索几千份内部文档和截图，或者从一组受控录音中找到维修片段。如果可能，先把生成式回答层排除在第一次测量之外。先证明检索层能返回正确证据，再评估下游助手是否因此给出更好的回答。\n\n 使用相同查询比较本地和托管基线，并纳入速度较慢的设备、后台索引和被中断的任务。检查源文件被删除时会发生什么，模型更新改变向量几何关系时会发生什么，以及用户用评测集中代表性不足的语言或格式搜索时会发生什么。把重新索引视为预期操作，而不是罕见灾难。\n\n 最后，让产品边界清晰可见。告诉用户哪些数据留在设备上、哪些内容会同步、嵌入保留多久，以及检索之后是否会调用在线模型。提供查看结果来源的方式。如果系统用于决策，在置信度低或检索证据相互冲突时要求确认。本地推理可以改善隐私和响应速度，但透明度仍然必须被设计进去。\n\n ## 更大的意义\n\n EmbeddingGemma 2 是一个值得关注的开放模型发布，因为它关注的是软件的连接组织，而不是一个醒目的聊天机器人体验。多模态嵌入模型的价值，只会在产品拥有需要彼此连接的信息时显现：问题和截图、短语和录音、函数和事件报告。对于这些工作流，一个紧凑的本地模型可能简化索引，并让原本依赖服务器的设备具备私有检索能力。\n\n 这次发布并不是立即替换现有搜索栈的理由。它的实际贡献，是提供一个可测试的选项：同一模型家族支持多种输入类型，能够本地执行，拥有开放权重，而且部署占用小于许多通用多模态系统。对于私有媒体搜索、混合格式知识库和边缘应用，这种组合足以支持一次边界清晰的试点。\n\n 建议很直接：从跨模态检索能够解决明显问题的语料库开始。只要词法、结构化和专用索引能够提供精确性，就保留它们。在真实硬件上测量召回率、延迟、内存、存储和删除行为，并与依赖树中的其他部分一起审查许可证和模型条款。如果 EmbeddingGemma 2 在不降低系统可理解性的前提下，改善了用户最终看到的证据，它就值得进入技术栈；如果它只让演示更漂亮，那么更小、更简单的基线仍然是更好的工程选择。\n\n ## 来源\n\n - [EmbeddingGemma 2 is a best-in-class open model for natively multimodal embeddings](https://blog.google/innovation-and-ai/technology/developers-tools/embeddinggemma-2/)（Google）\n- [Bring multimodal semantic search to the edge with EmbeddingGemma 2](https://developers.googleblog.com/en/google-ai-edge-with-embeddinggemma-2/)（Google Developers Blog，2026-10-06）\n- [EmbeddingGemma 2: The Developer Guide](https://developers.googleblog.com/en/embeddinggemma-2-the-developer-guide/)（Google Developers Blog，2026-10-06）\n- [EmbeddingGemma documentation](https://ai.google.dev/gemma/docs/embeddinggemma)（Google AI for Developers）\n- [google/embeddinggemma-2 model repository and model card](https://huggingface.co/google/embeddinggemma-2)（Hugging Face）\n- [EmbeddingGemma 2 model card](https://huggingface.co/google/embeddinggemma-2/blob/main/README.md)（Hugging Face）\n- [Community discussion of EmbeddingGemma 2 release](https://www.reddit.com/r/LocalLLaMA/comments/1wz7faa/introducing_embeddinggemma_2_a_bestinclass_open/)（Reddit）\n- [Community discussion of local WebGPU usage and embedding details](https://www.reddit.com/r/LocalLLaMA/comments/1wz5va3/embeddinggemma_2_running_locally_inbrowser_on_webgpu/)（Reddit）\n- [Gemma releases](https://ai.google.dev/gemma/docs/releases)（Google AI for Developers）","available_translations":[{"language":"ar","title":"EmbeddingGemma 2 يجعل البحث المحلي متعدد الوسائط عملياً، لكنه ليس ترقية جاهزة لـ RAG","html_url":"https://publicasta.com/open_source_radar/embeddinggemma_2_local_multimodal_retrieval?lang=ar","markdown_url":"https://publicasta.com/open_source_radar/embeddinggemma_2_local_multimodal_retrieval.md?lang=ar","json_url":"https://publicasta.com/open_source_radar/embeddinggemma_2_local_multimodal_retrieval.json?lang=ar","api_url":"https://publicasta.com/api/public/v1/channels/open_source_radar/articles/embeddinggemma_2_local_multimodal_retrieval?lang=ar"},{"language":"de","title":"EmbeddingGemma 2 macht lokale multimodale Suche praktikabel – ist aber kein RAG-Upgrade zum Einstecken","html_url":"https://publicasta.com/open_source_radar/embeddinggemma_2_local_multimodal_retrieval?lang=de","markdown_url":"https://publicasta.com/open_source_radar/embeddinggemma_2_local_multimodal_retrieval.md?lang=de","json_url":"https://publicasta.com/open_source_radar/embeddinggemma_2_local_multimodal_retrieval.json?lang=de","api_url":"https://publicasta.com/api/public/v1/channels/open_source_radar/articles/embeddinggemma_2_local_multimodal_retrieval?lang=de"},{"language":"en","title":"EmbeddingGemma 2 makes local multimodal search practical, but it is not a drop-in RAG upgrade","html_url":"https://publicasta.com/open_source_radar/embeddinggemma_2_local_multimodal_retrieval?lang=en","markdown_url":"https://publicasta.com/open_source_radar/embeddinggemma_2_local_multimodal_retrieval.md?lang=en","json_url":"https://publicasta.com/open_source_radar/embeddinggemma_2_local_multimodal_retrieval.json?lang=en","api_url":"https://publicasta.com/api/public/v1/channels/open_source_radar/articles/embeddinggemma_2_local_multimodal_retrieval?lang=en"},{"language":"es","title":"EmbeddingGemma 2 hace práctico el buscador multimodal local, pero no es una mejora RAG lista para usar","html_url":"https://publicasta.com/open_source_radar/embeddinggemma_2_local_multimodal_retrieval?lang=es","markdown_url":"https://publicasta.com/open_source_radar/embeddinggemma_2_local_multimodal_retrieval.md?lang=es","json_url":"https://publicasta.com/open_source_radar/embeddinggemma_2_local_multimodal_retrieval.json?lang=es","api_url":"https://publicasta.com/api/public/v1/channels/open_source_radar/articles/embeddinggemma_2_local_multimodal_retrieval?lang=es"},{"language":"fr","title":"EmbeddingGemma 2 rend la recherche multimodale locale praticable, sans transformer pour autant le RAG en solution prête à l’emploi","html_url":"https://publicasta.com/open_source_radar/embeddinggemma_2_local_multimodal_retrieval?lang=fr","markdown_url":"https://publicasta.com/open_source_radar/embeddinggemma_2_local_multimodal_retrieval.md?lang=fr","json_url":"https://publicasta.com/open_source_radar/embeddinggemma_2_local_multimodal_retrieval.json?lang=fr","api_url":"https://publicasta.com/api/public/v1/channels/open_source_radar/articles/embeddinggemma_2_local_multimodal_retrieval?lang=fr"},{"language":"pl","title":"EmbeddingGemma 2 sprawia, że lokalne wyszukiwanie multimodalne staje się praktyczne, ale nie jest gotowym ulepszeniem RAG","html_url":"https://publicasta.com/open_source_radar/embeddinggemma_2_local_multimodal_retrieval?lang=pl","markdown_url":"https://publicasta.com/open_source_radar/embeddinggemma_2_local_multimodal_retrieval.md?lang=pl","json_url":"https://publicasta.com/open_source_radar/embeddinggemma_2_local_multimodal_retrieval.json?lang=pl","api_url":"https://publicasta.com/api/public/v1/channels/open_source_radar/articles/embeddinggemma_2_local_multimodal_retrieval?lang=pl"},{"language":"ru","title":"EmbeddingGemma 2 делает локальный мультимодальный поиск практичным, но не является готовым обновлением RAG","html_url":"https://publicasta.com/open_source_radar/embeddinggemma_2_local_multimodal_retrieval?lang=ru","markdown_url":"https://publicasta.com/open_source_radar/embeddinggemma_2_local_multimodal_retrieval.md?lang=ru","json_url":"https://publicasta.com/open_source_radar/embeddinggemma_2_local_multimodal_retrieval.json?lang=ru","api_url":"https://publicasta.com/api/public/v1/channels/open_source_radar/articles/embeddinggemma_2_local_multimodal_retrieval?lang=ru"},{"language":"zh","title":"EmbeddingGemma 2 让本地多模态搜索变得实用，但它不是即插即用的 RAG 升级","html_url":"https://publicasta.com/open_source_radar/embeddinggemma_2_local_multimodal_retrieval?lang=zh","markdown_url":"https://publicasta.com/open_source_radar/embeddinggemma_2_local_multimodal_retrieval.md?lang=zh","json_url":"https://publicasta.com/open_source_radar/embeddinggemma_2_local_multimodal_retrieval.json?lang=zh","api_url":"https://publicasta.com/api/public/v1/channels/open_source_radar/articles/embeddinggemma_2_local_multimodal_retrieval?lang=zh"}],"_links":{"self":"https://publicasta.com/open_source_radar/embeddinggemma_2_local_multimodal_retrieval.json?lang=zh","api":"https://publicasta.com/api/public/v1/channels/open_source_radar/articles/embeddinggemma_2_local_multimodal_retrieval?lang=zh","html":"https://publicasta.com/open_source_radar/embeddinggemma_2_local_multimodal_retrieval?lang=zh","canonical":"https://publicasta.com/open_source_radar/embeddinggemma_2_local_multimodal_retrieval?lang=zh","markdown":"https://publicasta.com/open_source_radar/embeddinggemma_2_local_multimodal_retrieval.md?lang=zh","json":"https://publicasta.com/open_source_radar/embeddinggemma_2_local_multimodal_retrieval.json?lang=zh","channel":"https://publicasta.com/api/public/v1/channels/open_source_radar","channel_articles":"https://publicasta.com/api/public/v1/channels/open_source_radar/articles","search":"https://publicasta.com/api/public/v1/search","documentation":"https://publicasta.com/api-docs#reading-publicasta","openapi":"https://publicasta.com/api-docs/openapi.json","llms":"https://publicasta.com/llms.txt"}}