Coze Studio 知识库向量化如何配置 Embedding 模型与向量维度【免费下载链接】coze-studioAn AI agent development platform with all-in-one visual tools, simplifying agent creation, debugging, and deployment like never before. Coze your way to AI Agent creation.项目地址: https://gitcode.com/GitHub_Trending/co/coze-studio在 Coze Studio 中部署好服务后要让知识库功能真正跑起来向量化的前提是把 Embedding 模型和向量维度配置好知识库向量化依赖的 Embedding 模型由部署环境的配置提供见 docker/.env.example 中# Settings for Embedding一段的说明。本文以 docker compose 本地部署为环境说明如何选定一种 Embedding 接入方式、填写对应的环境变量或后台配置项、设置向量维度以及确认配置已经生效。如果向量数据库本身带内建 Embedding 能力文档以 VikingDB 为例即设置了VIKING_DB_MODEL_NAME则不需要再配置 Embedding 相关项其余向量库如示例默认的 Milvus都需要按本文完成配置。准备条件已按项目部署方式启动服务环境变量基线为 docker/.env.example向量库已完成选择VECTOR_STORE_TYPE为milvus/vikingdb/oceanbase之一对应的连接变量如MILVUS_ADDR、VIKING_DB_*、OCEANBASE_*已按该向量库的要求填写手上有一个可用的 Embedding 服务属于 Coze Studio 支持的接入方式之一ark、openai、ollama、gemini、http。主路径通过环境变量配置 Embedding编辑.env文件由docker/.env.example复制而来完成以下三步。第一步选定 Embedding 接入方式设置类型开关示例文件默认值为arkexport EMBEDDING_TYPEark # embedding type: ark / openai / ollama / gemini / http注意后端对未识别的值有兜底在 knowledge.go 的getEmbeddingType()中EMBEDDING_TYPE不是上述五种取值时会回落到 Ark所以填错类型不会报未知类型而是静默按 Ark 走。第二步填写所选类型的连接与维度变量各类型的必填变量都遵循类型_EMBEDDING_*前缀来源.env.example 的# Settings for Embedding段类型连接/模型变量维度变量附加可选变量arkARK_EMBEDDING_BASE_URL、ARK_EMBEDDING_MODEL、ARK_EMBEDDING_API_KEYARK_EMBEDDING_DIMS示例值 2048ARK_EMBEDDING_API_TYPEtext_api/multi_modal_api默认text_apiopenaiOPENAI_EMBEDDING_BASE_URL、OPENAI_EMBEDDING_MODEL、OPENAI_EMBEDDING_API_KEYOPENAI_EMBEDDING_DIMS示例值 1024OPENAI_EMBEDDING_BY_AZURE、OPENAI_EMBEDDING_API_VERSION、OPENAI_EMBEDDING_REQUEST_DIMSAPI 不支持指定维度时置空ollamaOLLAMA_EMBEDDING_BASE_URL、OLLAMA_EMBEDDING_MODELOLLAMA_EMBEDDING_DIMS—geminiGEMINI_EMBEDDING_BASE_URL、GEMINI_EMBEDDING_MODEL示例值gemini-embedding-001、GEMINI_EMBEDDING_API_KEYGEMINI_EMBEDDING_DIMS示例值 2048GEMINI_EMBEDDING_BACKEND1为 BackendGeminiAPI2为 BackendVertexAIGEMINI_EMBEDDING_PROJECT、GEMINI_EMBEDDING_LOCATIONhttpHTTP_EMBEDDING_ADDRHTTP_EMBEDDING_DIMS示例值 1024—以上除base_url/api_key/model/addr由你的 Embedding 服务决定外其余均可直接照抄示例文件中的取值。关于维度需要说明两点示例文件把各类型的*_EMBEDDING_DIMS标注为 required而代码兜底逻辑knowledge.go 中getKnowledgeConfigurationFromOldConfig()在未读到维度变量时按 1024 处理。建议显式写维度不要依赖兜底值。Ark 的 API Key 有一个额外来源ARK_EMBEDDING_API_KEY为空时会回退读取ARK_EMBEDDING_AKgetArkEmbeddingAPIKey()。第三步设置批处理大小export EMBEDDING_MAX_BATCH_SIZE100这是 Embedding 调用的批处理大小示例默认 100。重启使配置生效环境变量是进程启动时读取的修改.env后需要按项目部署文档重启后端容器例如docker compose restart以你实际使用的 compose 文件为准。替代路径管理页在线配置 Embedding后端在/admin下挂了管理页面register.go 中r.StaticFS(/admin, ...)提供静态页api.go 中/admin/config路由组受管理端鉴权中间件保护。该页面的Embedding 配置区块见 admin 页面 中knowledge.section.embedding对应区域提供与上面相同字段的表单类型下拉Ark / OpenAI / Ollama / Gemini / HTTP、max_batch_size、各类型的dims以及api_type、by_azure、api_version、backend等附加项。使用这条路径时注意配置的优先级GetKnowledgeConfig()会优先读取数据库knowledge_config键中保存的配置只有该键不存在时才回退到环境变量推导出的配置。也就是说一旦你在管理页保存过知识配置环境变量就不再是生效值后续改动要回到管理页做。验证配置是否生效打开/admin管理页进入Embedding 配置区块。页面加载时会回显当前生效的配置值若数据库里已有保存值则回显保存值否则回显由环境变量推导出的值admin 页面 中embedding_config的回显逻辑。核对你设置过的type、max_batch_size、对应类型的连接信息与dims是否与预期一致。知识库向量化过程使用这份 Embedding 配置.env.example 明确说明该配置是knowledge base vectorization所依赖的 Embedding 模型。创建知识库并上传文档后观察文档向量化任务能否正常完成即可判断所配置的 Embedding 服务地址、Key、模型名、维度是否可用。边界与限制配置优先级数据库knowledge_config 环境变量。两套来源同时存在时以管理页保存的值为准排查改了 .env 没生效时先确认数据库里是否已有保存配置。维度一致性示例文件中各类型的维度示例值并不相同ark 2048、openai 1024、gemini 2048、http 1024、ollama 无示例值维度必须按你所用 Embedding 模型实际产出的维度填写文档未提供通用换算规则。VikingDB 例外向量库为 VikingDB 且已设置VIKING_DB_MODEL_NAME时向量化使用其内建 Embedding可跳过本文的 Embedding 配置。Rerank 不属于本配置知识库的 rerank 走独立的RERANK_TYPEvikingdb/rrf一组变量与向量化 Embedding 配置相互独立本文不展开。完成上述任一路径的配置并通过管理页回显核对后知识库向量化即可使用你所指定的 Embedding 模型与维度工作若后续更换 Embedding 模型需要同步更新对应*_EMBEDDING_DIMS并在管理页或.env中保持单一来源生效。【免费下载链接】coze-studioAn AI agent development platform with all-in-one visual tools, simplifying agent creation, debugging, and deployment like never before. Coze your way to AI Agent creation.项目地址: https://gitcode.com/GitHub_Trending/co/coze-studio创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
