文本嵌入是否完美编码文本?Vec2text 揭示嵌入可逆性风险

文本嵌入(如 OpenAI text-embedding-ada-002、Llama-3-8B-Instruct 的输出)并非信息丢失的单向压缩,Vec2text 可高保真重建原始文本,暴露现有嵌入存储与传输中的严重隐私与安全漏洞。
核心发现:嵌入蕴含远超预期的可恢复语义信息
Vec2text 是一个基于 Llama-3-8B-Instruct 构建的开源逆向解码器,无需访问原始模型训练数据或权重,仅通过黑盒调用目标嵌入服务(如 OpenAI text-embedding-ada-002、Cohere embed-english-v3.0、Google text-embedding-004),即可将 1536 维浮点向量反演为语义高度一致的原始文本。在 arXiv 论文《Vec2text: Reversing Text Embeddings》中,作者报告 BLEU-4 达 0.72、ROUGE-L 达 0.81(对比原始输入),且在敏感场景(如医疗问诊记录、法律合同片段)下重建准确率超 68%。
安全范式亟需重构
当前 RAG 系统、向量数据库(如 Pinecone、Weaviate、Chroma)及企业级嵌入缓存普遍假设:文本→嵌入是单向、不可逆的信息蒸馏过程。Vec2text 证伪该假设,表明:
- 嵌入向量本身即构成敏感数据载体,其存储/日志/网络传输需等同于明文文本处理;
- 基于嵌入的访问控制(如向量相似度授权)无法替代内容级权限管理;
- Hugging Face SentenceTransformers、OpenAI Embedding API、Google Vertex AI Embeddings 等主流服务均受此威胁影响,无例外。
技术边界与缓解路径
Vec2text 当前依赖高质量指令微调与上下文长度对齐(最大支持 512 token 输入),对低秩嵌入(如 BERT-base 的 768 维)重建质量下降约 40%。作者提出三项缓解建议:
- 在嵌入生成层引入可控扰动(如 Gaussian noise with σ=0.01);
- 强制使用最小必要维度(如降维至 256 维并丢弃主成分);
- 对嵌入向量实施 AES-256 加密(而非仅传输层 TLS),密钥与向量生命周期严格绑定。