最近在折腾用MCP server把向量数据库(比如Milvus)接入到Claude / 本地方案里,遇到一个很基础但一直没搞懂的问题:MCP工具调用时,embedding这一步的token消耗到底算谁的?
我目前是让MCP server内部用本地模型(比如bge-m3)做向量化,但这样每次查询和写入都要先跑一遍embedding,延迟和CPU占用都上来了;如果换成云端API(比如OpenAI embedding),那token费用是不是要叠加到MCP的上下文消耗里?还是说只算接口调用费?
另外,检索结果返回给LLM时,是直接把top-k的原文塞进上下文,还是只返回metadata+ID让LLM自己决定要不要查详情?感觉前者太费token,后者又怕信息不够。
有没有大佬分享下实际生产里的取舍?或者有没有现成的MCP server实现可以参考?
楼主
19天前
MCP调用向量数据库时,embedding和检索的token开销怎么算?
请 登录 后发表回复
全部回复
共 22 条
2楼
1天前
embedding的token跟LLM上下文两码事,云端API只算接口费。建议检索只回metadata加摘要,原文全塞太烧token了。
3楼
1天前
云端embedding只算接口费,不进MCP上下文,但top-k原文塞回去才是大头,建议只回metadata。