这一档模型的参数意味着什么
ERNIE-Speed-128K 模型提供 128000 的上下文长度,这意味着在单次对话中能够处理大量输入文本,为复杂的知识问答和信息整合提供了充足空间。引用上限为 120000,这直接决定了知识库召回内容在提交给模型时,可以引用的最大字符数量。该模型不支持图片输入和工具调用,因此,在设计 RAG 应用时,无需考虑多模态输入处理和外部工具集成链路。单次最大输出未标注,但通常需要预留足够的输出缓冲,以应对长篇回复场景。
配 Milvus 要定哪些
| 配置项 | 建议取法 | 这样取的依据 |
|---|---|---|
MILVUS_ADDRESS | localhost:19530 或 your_milvus_host:19530 | 指定 Milvus 服务的网络地址和端口,确保连接性。 |
MILVUS_TOKEN | Bearer your_token_string | Milvus 开启认证时,用于鉴权,保障数据安全。 |
HNSW 索引参数 M | 32 | 影响 HNSW 索引的邻居节点数量,过小影响召回质量,过大增加内存消耗。 |
HNSW 索引参数 efConstruction | 200 | 索引构建时搜索的邻居数量,影响索引构建速度和查询精度。 |
| 向量召回条数 | 前 5 条 | 平衡召回质量与模型上下文长度限制,减少不必要的内容填充。 |
| 单段文本分块长度 | 800–1200 字符 | 确保每段内容包含足够信息,同时避免单段过长,影响模型理解。 |
这两者互相约束的地方
ERNIE-Speed-128K 模型的 128000 上下文长度是核心约束。知识库召回的“向量召回条数”与“单段文本分块长度”直接影响最终提交给模型的总字符数。例如,如果召回 5 条、每条 1000 字符,总计 5000 字符,远低于 120000 的引用上限,模型有足够空间处理。但如果单段过长或召回条数过多,可能触及上下文上限,导致截断或性能下降。引用上限 120000 规定了模型能处理的最大引用内容,而向量库返回的条数是前端 RAG 逻辑限制。实际生效的是二者中较小的那一个。Milvus 的 HNSW 索引参数 M 和 efConstruction 调大通常能提升召回精度,但会增加索引构建时间和查询延迟,这需要与模型处理速度和用户体验进行权衡。
容易做错的三处
- 连接 Milvus 失败,返回
Connection refused错误码。原因可能是MILVUS_ADDRESS配置错误或 Milvus 服务未启动。 - 召回的知识段落为空,导致模型回答“我不知道”。原因可能是 Milvus 索引未正确构建,或查询参数与数据不匹配。
- 模型返回的回答内容被截断,且日志中显示
context_length_exceeded。原因可能是召回内容总长度超过了 128000 的上下文限制。
怎么确认配好了
- 通过 FastGPT 界面,在知识库管理中上传文档并等待 Milvus 索引构建完成,确认状态为“已索引”。
- 在 FastGPT 的调试界面,输入测试问题,观察“引用内容”字段是否能正确显示从 Milvus 召回的知识段落,并检查其数量。
- 监控 Milvus 服务的 CPU 和内存使用情况,确保在查询压力下资源消耗在预期范围内,避免因
HNSW参数过高导致资源耗尽。 - 通过多次测试不同长度的问题,观察模型回答的完整性和相关性,对比实际召回内容与预期是否一致,以此判断召回条数和分块长度是否合适。