模型指南官方文档4 分钟阅读模型组合页

Ernie 32K 上下文 这一档模型配 PostgreSQL(pgvector) 的配置口径

Ernie 32K 上下文模型,其 32000 的上下文长度,决定了单次请求中模型能够处理的输入总字数上限,包括用户提问、系统指令和知识库召回内容。引用上限 27000 意味着在知识库召回场景下,实际用于填充上下文的知识片段总长度不应超过此值。单次最大输出未标注,表示模型生成回答的长度可能没有硬性限

这一档模型的参数意味着什么

Ernie 32K 上下文模型,其 32000 的上下文长度,决定了单次请求中模型能够处理的输入总字数上限,包括用户提问、系统指令和知识库召回内容。引用上限 27000 意味着在知识库召回场景下,实际用于填充上下文的知识片段总长度不应超过此值。单次最大输出未标注,表示模型生成回答的长度可能没有硬性限制,但仍受限于整体上下文长度。不支持图片输入和工具调用,明确了该模型不适用于多模态RAG或Function Calling等高级Agent场景。这些参数共同构成了模型在FastGPT平台中进行知识问答和内容生成的工程约束。

配 PostgreSQL(pgvector) 要定哪些

配置项建议取法这样取的依据
PG_URLpostgresql://user:password@host:port/databaseFastGPT 连接 PostgreSQL 数据库的必要参数,确保数据库可访问。
ef_construction64HNSW索引构建时的参数,影响索引质量和构建速度。此值在召回质量和索引构建时间之间提供平衡。
ef_search32HNSW索引查询时的参数,影响查询召回精度。此值可在召回精度和查询延迟之间取得平衡。
m = 3232HNSW索引层级连接数参数,影响索引结构和查询性能。此值是常见且性能良好的设置。
召回条数10–15 条根据模型引用上限和单条知识段落长度,平衡召回的广度与模型处理能力。
单条知识段落长度800–1200 字符结合模型引用上限和召回条数,避免单条过长导致整体上下文溢出,或过短导致信息不完整。

这两者互相约束的地方

Ernie 32K 上下文模型与 PostgreSQL(pgvector)的结合,主要体现在上下文预算的分配上。模型的 32000 上下文长度是硬性约束,这意味着向量库召回的“召回条数 × 每段长度”之和,加上用户提问和系统指令的长度,必须严格控制在此范围内。引用上限 27000 进一步限定了知识库内容的实际占用空间。向量库的返回条数与模型的引用上限两者,将取其中较小值作为实际可用的知识片段数量。此外,PostgreSQL(pgvector)的索引参数 ef_construction 和 ef_search 调大,通常会提升召回精度,但也可能增加索引构建时间和查询延迟,这需要与模型的响应时间要求进行权衡。

容易做错的三处

  • 知识库召回后,模型返回“上下文窗口已满”错误:原因在于召回条数过多或单条知识段落过长,导致总长度超过了 32000 的上下文限制。
  • 搜索结果看似相关,但模型回答质量不高或信息缺失:原因可能是 ef_search 参数设置过低,导致向量检索未能召回最相关的知识片段。
  • FastGPT 界面显示“向量匹配为空”或召回条数远低于预期:原因可能是 PG_URL 配置有误,导致 FastGPT 无法正确连接到 PostgreSQL 数据库。

怎么确认配好了

  • 在 FastGPT 中创建一个测试应用,配置使用 Ernie 32K 上下文模型和连接的 PostgreSQL(pgvector)数据库。
  • 上传包含不同长度知识段落的测试数据到知识库,并进行多次提问,观察模型是否能稳定返回包含知识库内容的回答。
  • 在 PostgreSQL 数据库中,通过 EXPLAIN ANALYZE 命令分析针对向量字段的查询,确认 HNSW 索引(例如,m = 32)是否被有效利用,并记录查询延迟。
  • 通过 FastGPT 的日志或调试界面,核对模型每次请求的实际输入上下文长度,确保其在 32000 的限制内且接近引用上限 27000 的有效利用。

参考资料