这一档模型的参数意味着什么
Qwen 这一档模型,上下文长度 128000 意味着模型单次处理的文本总量上限。这直接限制了 RAG 应用中可以召回并输入给模型的知识内容总量。引用上限 100000 设定了知识库检索结果可以被模型引用的最大段落数量,这与实际召回条数和每条段落的长度紧密相关。图片输入 false 明确了此档模型不具备处理图像输入的能力,因此在多模态应用场景中需要额外处理。工具调用 true 则表明模型支持通过外部工具扩展其能力,允许工程师构建更复杂的 Agent 工作流。
配 openGauss 要定哪些
| 配置项 | 建议取法 | 这样取的依据 |
|---|---|---|
OPENGAUSS_URL | jdbc:opengauss://host:port/database?user=xxx&password=yyy | FastGPT 连接 openGauss 数据库实例的 JDBC 连接字符串,确保可达性与认证。 |
ef_construction | 100 | 索引构建时的邻居数量,影响索引质量和构建速度。对于 128K 上下文,建议适当提高以保证召回精度,可根据实际数据量调整。 |
ef_search | 50 | 搜索时遍历的邻居数量,影响搜索精度和查询速度。该值应不小于 ef_construction 的值,通常设定为 ef_construction 的一半或更低。 |
m | 32 | HNSW 索引中每个节点的最大连接数。该值决定了索引的连接密度,影响搜索性能和内存占用。 |
| 召回条数限制 | 前 20 条 | 结合模型上下文长度和平均段落长度估算,确保召回内容在模型处理能力范围内。 |
| 向量维度 | 1536 | 与模型生成嵌入向量的维度保持一致,例如 OpenAI embedding 模型的默认维度。 |
这两者互相约束的地方
Qwen 128K 上下文模型与 openGauss 向量库的配置存在紧密约束。召回条数与每段长度的乘积必须小于或等于 128000 的上下文预算,这是确保所有召回内容都能被模型处理的基础。引用上限 100000 是模型在内部可以处理的最大引用段落数,而向量库返回的实际条数是外部限制。通常情况下,向量库应返回少于或等于引用上限的条数,以避免不必要的模型处理开销。当 openGauss 的索引参数 ef_construction 和 ef_search 调大时,向量搜索的精度会提高,这意味着模型更有可能获得高质量的召回结果。然而,这也会增加索引构建和查询的时间成本,需要工程师在精度与性能之间进行权衡。对于大规模知识库,高精度的召回能显著提升模型基于 RAG 生成回复的质量。
容易做错的三处
- 日志显示
Connection refused: Host is not allowed to connect,原因是OPENGAUSS_URL中的主机地址或端口配置错误,或者数据库未正确监听外部连接。 - 模型返回的回答内容与知识库中的相关性差,甚至出现「我无法回答这个问题」,原因可能是向量库返回的召回条数过少,或者
ef_search值设置过低导致召回精度不足。 - FastGPT 界面显示 RAG 召回的知识段落为空,原因是 openGauss 数据库中未成功导入向量数据,或者索引未正确建立。
怎么确认配好了
- 在 FastGPT 知识库管理页面,上传测试文档并进行分段,确认分段结果符合预期。
- 通过 FastGPT 的 RAG 调试功能,输入测试问题,观察向量库返回的召回条数和内容是否与期望一致。
- 检查 openGauss 数据库的
pg_stat_activity表,确认 FastGPT 服务的数据库连接状态正常,并且查询pg_vector_index_stats视图,验证向量索引的健康状况。