这一档模型的参数意味着什么
SparkDesk 这一档模型,其 262144 的上下文长度决定了单次请求中可输入的最大文本量,包括用户提问、历史对话和知识库召回内容。引用上限 250000 意味着在 RAG 场景下,模型可接受的知识库引用文本总量。单次最大输出虽然未明确标注具体数值,但通常会有一个隐式限制,影响模型生成回答的长度。工具调用 true 则表明模型具备调用外部工具的能力,可集成到更复杂的 Agent 工作流中,实现信息检索、数据处理等功能。图片输入 false 则说明此档模型不具备直接处理图像信息的能力。
配 PostgreSQL(pgvector) 要定哪些
| 配置项 | 建议取法 | 这样取的依据 |
|---|---|---|
PG_URL | postgresql://user:password@host:port/database | FastGPT 连接 PostgreSQL 数据库的必要凭证,遵循标准连接字符串格式。 |
ef_construction | 64 | HNSW 索引构建时,控制索引图的连接性。较低值可加快构建速度,但可能影响召回质量。 |
ef_search | 32 | HNSW 索引查询时,控制搜索的宽度。此值越大,召回精度越高,但查询延迟也可能增加。 |
m | 32 | HNSW 索引中,每个节点的最大邻居数。较高的 m 值能提高召回质量,但会增加索引大小和构建时间。 |
| 召回条数 | 20–30 | 结合模型引用上限与单条文本长度,平衡召回范围与模型处理能力。 |
| 文本分段长度 | 800–1200 字符 | 确保每段文本包含足够信息,同时避免单段过长导致模型处理效率下降。 |
这两者互相约束的地方
模型上下文长度是核心约束,它决定了召回内容的总量上限。当知识库召回的条数乘以每条文本的平均长度,其总和不能超过 262144 的上下文长度。引用上限 250000 则更具体地限制了可用于模型引用的知识库文本总量。在实际应用中,FastGPT 的召回条数设置会首先生效,决定从 PostgreSQL(pgvector)中取出多少条数据。然后,这些数据会经过截断或合并,确保其总长度不超过模型的引用上限。PostgreSQL(pgvector)的 ef_construction 和 ef_search 参数,若设置过低可能导致召回质量不佳,使得模型无法获取到最相关的知识;若设置过高,则会增加向量搜索的延迟,影响整个 RAG 流程的响应速度,尤其是在高并发场景下。
容易做错的三处
- 日志显示“Context window exceeded”,原因:召回条数过多或单段文本过长,导致输入模型总长度超出 262144。
- RAG 模式下,模型回答未引用知识库内容,原因:
ef_search值设置过低,导致向量检索未能召回相关度高的文本段。 - 查询响应时间显著增加,原因:
ef_construction或m值设置过高,导致 HNSW 索引构建或查询开销过大。
怎么确认配好了
- 在 FastGPT 知识库管理界面,调整单次查询的召回条数,观察模型回答是否能有效利用召回信息。
- 通过 FastGPT 的 RAG 调试功能,查看实际输入模型的上下文长度,确保其在 262144 限制内。
- 在 PostgreSQL 数据库中,执行
EXPLAIN ANALYZE命令,分析pgvector索引查询的执行计划和耗时,根据业务需求调整ef_search参数,使其查询耗时符合预期。 - 向模型提出包含知识库内容的问题,检查模型回答中是否准确引用了相关知识段落,并评估引用文本的准确性和完整性。