这一档模型的参数意味着什么
Ernie 32K 上下文模型(ernie-4.5-turbo-32k)的上下文长度 32000 token,决定了单次请求中模型能处理的输入总容量,包括指令、历史对话和召回内容。引用上限 27000 token 是为召回内容预留的预算,用于限制模型在生成回答时可以引用的外部知识总量。引用上限是按 token 计数,而向量库返回的是独立的段落条数,两者衡量维度不同。由于 图片输入 和 工具调用 均显示为 false,此模型不支持处理图像输入或直接执行外部工具函数。
配 OceanBase 要定哪些
| 配置项 | 建议取法 | 这样取的依据 |
|---|---|---|
OCEANBASE_URL | ob://user:pass@host:port/database | 连接 OceanBase 实例所需的标准 JDBC 兼容 URL,包含认证信息和数据库路径。 |
ef_construction | 128 | HNSW 索引构建时的参数,影响索引质量和构建速度。较高的值通常能提升查询召回率。 |
m | 16 | HNSW 索引中每个节点的最大连接数。影响索引的存储空间和查询效率,常见取值在 8 到 64 之间。 |
recall_top_k | 5 | 向量检索时返回的相似度最高的前 k 条结果。 |
chunk_size | 800–1200 字符 | 文档切分时每个文本块的建议字符长度。 |
chunk_overlap | 100–200 字符 | 文档切分时相邻文本块之间的重叠字符长度。 |
这两者互相约束的地方
模型上下文长度 32000 token 是总容量,召回内容、系统指令和历史对话都需占用。引用上限 27000 token 是为召回内容设定的独立预算。向量库返回的段落条数与引用上限按 token 计数的逻辑不同,当单段内容较长时,即使召回条数不多,也可能迅速触及引用上限。反之,若段落较短,则能在引用上限内纳入更多召回条数。索引参数 ef_construction 和 m 调大通常能提高向量检索的召回准确性,这使得模型能获得更高质量的输入,从而可能生成更精准的回答。SEEKDB 与 OceanBase 共享底层 MySQL 协议兼容的控制器实现,因此在连接配置和索引参数的口径上具有一致性。
容易做错的三处
- 日志显示
Context window exceeded错误:原因在于召回内容、系统指令和历史对话的总 token 数超出了32000的上下文长度。 - 模型回答未引用任何召回内容:原因可能是召回的段落总 token 数超过了
27000的引用上限,导致模型无法使用。 - 向量检索返回的条数与预期不符:原因可能是
recall_top_k参数设置过小,或者 OceanBase 的ef_construction或m参数配置不当导致检索效率低下。
怎么确认配好了
- 在 FastGPT 界面上传测试文档,观察文档切分后的段落数量和平均长度,确保
chunk_size和chunk_overlap符合预期。 - 执行一次带有召回的查询,检查 FastGPT 日志输出中模型实际接收的输入 token 数量,确保未超出
32000的上下文长度。 - 检查模型回答中是否正确引用了召回内容,确认引用内容的 token 总量未超过
27000的引用上限。 - 通过 OceanBase 监控界面,观察向量检索的查询响应时间,确保
ef_construction和m参数设置下的性能满足需求。