LensLink:基于 Sanity 结构化内容的 AI 相机镜头兼容性智能体
LensLink: An AI Camera Compatibility Agent Powered by Structured Sanity Content
LensLink 是一个基于 Sanity 结构化内容的 AI 相机与镜头兼容性智能体,通过建模相机、卡口、镜头、转接环、兼容规则与来源之间的关系来回答兼容性问题,而非仅依赖通用模型知识。
This is a submission for the Sanity Challenge, Path One: Ship an Agent That Queries Real Content.
What I Built
LensLink is an AI camera and lens compatibility agent that answers whether a lens can be used with a camera using structured Sanity content rather than relying only on generic model knowledge.
The content models relationships between cameras, mounts, lenses, adapters, compatibility rules, and sources.
Demo
Live demo: https://lenslink-civq.onrender.com
Try these:
Is the Canon RF50mm F1.8 STM compatible with the Canon EOS R5?
Can I use the Canon EF50mm f/1.8 STM on the Canon EOS R5?
Is the Canon EF-M 22mm f/2 STM compatible with the Canon EOS R5?
These demonstrate direct compatibility, adapter-required compatibility, and an unsupported/evidence-limited case.
Code
GitHub: https://github.com/egbutaify2-ui/sanity-lenslink-agent
How I Used Sanity
I modeled the camera compatibility knowledge as structured Sanity content, including:
Camera → Mount
Lens → Mount
Adapter → From Mount / To Mount
Compatibility Rule → Camera / Lens / Adapter
Source → supporting evidence
I pointed Sanity Context at the LensLink Knowledge Base built from this structured content.
The agent uses these Context MCP tools:
initial_context
knowledge_base_search
knowledge_base_read
For each compatibility question, LensLink retrieves the relevant structured records before Gemini generates the answer.
For example, for the EF50mm + EOS R5 case, the agent can reason across:
EOS R5 → Canon RF Mount
EF50mm → Canon EF Mount
Canon EF-EOS R Adapter → Canon EF → Canon RF
This lets LensLink determine the documented adapter-required path instead of simply guessing from the product names.
Sanity Project Details
Project ID: kv3pdv23
Dataset: production
Agent Session
Agent session evidence is optional, so I have not included a transcript in this submission.
sanitychallenge
来源:Google AI:DEV 作者专属(RSS) · dev.to
