这一档模型的参数意味着什么
ernie-4.5-turbo-32k 模型具备 32000 token 的上下文长度,这决定了单次交互中可以处理的总文本量,包括用户输入、历史对话以及召回内容。引用上限为 27000 token,意味着模型在生成回复时,可用于引用外部知识的文本总量被精确限定在这个范围内。引用内容的总预算是 27000 token,实际引用内容占用的 token 量会在此预算内浮动。段落条数由检索结果决定,与引用内容 token 预算是两个独立的衡量维度。该模型不支持图片输入和工具调用,因此 RAG 链路中不需要考虑多模态输入或外部工具集成。
配 Milvus 要定哪些
| 配置项 | 建议取法 | 这样取的依据 |
|---|---|---|
MILVUS_ADDRESS | localhost:19530 或 your_milvus_host:19530 | 指定 Milvus 服务端的网络地址和端口,确保 FastGPT 能够正确连接。 |
MILVUS_TOKEN | your_api_key_or_token | 用于 Milvus 访问控制的身份验证凭证,保障数据安全。 |
HNSW | M=16, efConstruction=128 | HNSW 索引参数,M 影响邻居数量,efConstruction 影响构建时的搜索复杂度,平衡查询速度与索引质量。 |
IP | L2 或 COSINE | 相似度计算方式,L2 适用于欧几里得距离,COSINE 适用于语义相似度,需与 embedding 模型输出匹配。 |
top_k | 5-10 条 | 检索时返回的向量条数,需要与模型引用上限和单段长度综合考虑。 |
chunk_size | 800-1200 字符 | 文本切分时每个段落的理想长度,影响检索精度和模型处理效率。 |
这两者互相约束的地方
模型的 32000 token 上下文长度与 Milvus 检索结果的组合方式存在直接约束。检索返回的条数与每段内容的长度相乘,其总 token 量必须控制在上下文长度预算之内。引用上限 27000 token 是对引用内容的硬性限制,而 Milvus 返回的是固定数量的段落。具体是引用上限先触达还是段落条数先触达,取决于每个段落的平均 token 长度。如果段落较短,可能在达到引用上限前就已返回足够多的条数;如果段落较长,则可能在条数较少时就达到了引用上限。Milvus 的索引参数,如 efConstruction 调大,会提高检索的召回率和准确性,这意味着模型能够获取到更相关、更全面的信息。这会增加模型处理高质量信息的可能性,但如果检索到的内容总量超出引用上限,模型仍将依据上限进行裁剪。
容易做错的三处
- 错误信息显示“连接 Milvus 失败,请检查地址和端口”,原因是
MILVUS_ADDRESS或MILVUS_TOKEN配置错误。 - 模型回复内容与期望的引用知识点不符,原因是 Milvus 向量库中的数据过时或索引参数
HNSW未能有效捕捉语义信息。 - 模型生成回复时出现截断或信息不完整,原因是召回的单段文本长度过长,导致引用内容总 token 超过 27000 的引用上限。
怎么确认配好了
- 执行一次知识库检索,检查日志输出中 Milvus 服务的连接状态是否为正常,并且没有连接超时错误。
- 进行一次 RAG 问答测试,观察 FastGPT 的调试界面,确认检索模块返回的文档条数符合
top_k的预期配置,且每条文档内容是完整的。 - 通过 FastGPT 的 RAG 链路,输入一个明确依赖知识库的问题,观察模型回复中是否包含了知识库中的关键信息,并检查引用内容的总 token 量是否在 27000 预算内。