必须完成配置文件修改、环境变量设置、知识库创建三步闭环操作——缺一不可,否则知识库上传后无向量写入,检索返回空结果;需在pinecone控制台获取v3版api key与environment,手动创建dify-kb索引(维度768,cosine距离),修改dify的.env文件启用pinecone并填入参数,重启服务后验证连接状态,最后创建知识库并选择匹配维度的embedding模型触发向量化。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

要在Dify中接入Pinecone云端向量数据库,必须完成配置文件修改、环境变量设置、知识库创建三步闭环操作,缺一不可——跳过任一环节都会导致知识库上传后无向量写入,检索始终返回空结果。
确认Pinecone服务已就绪
登录 Pinecone 控制台,进入 Projects 页面,复制当前项目的 API Key 和 Environment(如 gcp-us-central1),这两项将在后续配置中直接使用。注意:Pinecone 不再支持旧版 API Key 格式,若看到以 sk- 开头的密钥,请立即在控制台重新生成 v3 版本密钥。
在同一个 Project 内,手动创建一个 Index,名称设为 dify-kb,维度设为 【768】(对应 BGE-base-zh 或 text-embedding-ada-002 等主流中文/英文嵌入模型输出维度),距离度量选 cosine。这一步不能跳过,Dify 不会自动创建 Index,未预建将导致向量化失败并静默报错。
修改 Dify 的 .env 配置文件
进入 Dify 项目根目录,执行 cp .env.example .env 创建配置副本。
用编辑器打开 .env,定位到向量存储相关字段:
将 VECTOR_STORE=weaviate 改为 VECTOR_STORE=pinecone;
取消注释以下四行,并填入 Pinecone 实际参数:
PINECONE_API_KEY=your_actual_api_key_here
PINECONE_ENVIRONMENT=gcp-us-central1
PINECONE_INDEX=dify-kb
PINECONE_PROJECT_ID=your_project_id_if_needed(仅当使用企业版多 Project 场景时填写,社区版留空即可)
【务必删除 PINECONE_PROJECT_ID 行末尾的空格或不可见 Unicode 字符,否则启动时会因 YAML 解析失败而卡在初始化阶段】
重启 Dify 服务并验证连接
执行 docker compose down && docker compose up -d 重启服务。
等待约 90 秒,访问 http://localhost:3000 进入 Dify 控制台,在右上角点击头像 → 「管理后台」→ 「系统状态」,查看「向量数据库」一栏是否显示 pinecone (connected)。
若显示 disconnected,请立即检查容器日志:docker logs dify-api | grep -i pinecone,常见错误是 Invalid API key 或 Index not found,对应修正 API Key 或 Index 名称即可。
创建知识库并触发向量化
第一步:点击左侧导航栏「知识库」→「新建知识库」,输入名称(如「HR政策」),选择「启用向量检索」;
第二步:上传 PDF 或 Markdown 文件,点击「下一步」;
第三步:在「文本分段与清洗」页面,Embedding 模型下拉框中选择 bge-base-zh(或 text-embedding-ada-002),确保其输出维度与 Pinecone Index 创建时一致;
第四步:点击「保存并处理」,Dify 将自动调用 embedding 模型生成向量,并批量写入 Pinecone 的 dify-kb Index;
处理完成后,该知识库右侧状态栏应显示「已索引 X 条文本块」,且 Pinecone 控制台对应 Index 的 Vector Count 数值同步增长。











