这一档模型的参数意味着什么
StepFun 32K 上下文模型系列,如 step-1o-vision-32k 和 step-1v-32k,其 上下文长度 32000 意味着模型单次处理的文本总量上限。这直接限制了用户输入、系统指令以及检索召回内容的总和。引用上限 32000 明确了用于 RAG 检索结果的 token 预算。引用内容的总 token 量必须在此预算之内。图片输入 true 表明模型支持多模态输入,能够处理图像数据。工具调用 false 则说明该模型不具备直接调用外部工具的能力。
配 PostgreSQL(pgvector) 要定哪些
| 配置项 | 建议取法 | 这样取的依据 |
|---|---|---|
PG_URL | postgresql://user:password@host:port/database | FastGPT 连接 pgvector 数据库的标准格式,确保数据库可访问 |
ef_construction | 64–128 | 控制 HNSW 索引构建时的图连接数,影响索引质量与构建速度 |
ef_search | 32–64 | 控制 HNSW 搜索时的邻居节点遍历数,影响搜索精度与查询速度 |
m | 32 | HNSW 索引中每个节点的最大连接数,影响索引大小与查询效率 |
vector_dimensions | 1536 | 适配主流 embedding 模型的向量维度,如 OpenAI text-embedding-ada-002 |
max_connections | 100 | PostgreSQL 最大连接数,根据并发请求量和服务器资源调整 |
这两者互相约束的地方
模型 上下文长度 32000 决定了系统能处理的总信息量。当使用 pgvector 进行 RAG 检索时,召回的条数乘以每段文本的平均长度,不能超过这个上下文预算。引用上限 32000 是对引用内容的 token 预算限制。pgvector 返回的是文本段落的条数,每一段文本的 token 长度决定了总的引用内容是否会触及这个上限。引用上限按 token 计,向量库返回的按条数计,谁先触顶取决于每段多长。例如,如果每段文本很短,可以召回更多条;如果每段文本很长,则可能召回较少条就会达到 token 上限。pgvector 的索引参数,如 ef_construction 和 ef_search,调大可以提升检索精度,但也可能增加索引构建时间或查询延时,这会间接影响模型处理的响应时间,尤其是在高并发场景下。
容易做错的三处
- 日志显示
PG_URL连接失败,并伴随FATAL: password authentication failed for user "xxx":数据库连接字符串中的用户名或密码不正确。 - 检索结果返回的条数远低于预期,但未报错:
ef_search参数设置过低,导致 HNSW 索引搜索时无法充分探索邻居节点,影响召回率。 - 数据导入或索引构建时出现
ERROR: could not create unique index "idx_embedding":可能是由于并发写入或数据库权限问题导致索引创建失败。
怎么确认配好了
- 在 FastGPT 知识库管理界面上传一批文档,观察索引构建过程是否顺畅,无报错信息。
- 执行 RAG 检索测试,检查返回的引用内容是否相关且完整,通过调整
ef_search和ef_construction参数,观察召回质量的变化,并确定合适的阈值。 - 监控 PostgreSQL 数据库的 CPU、内存和 I/O 使用情况,特别是在高并发查询时,确保资源消耗在可接受范围内,并根据实际负载评估
max_connections的合理性。