Grok怎么建立可检索知识库?Collections上传、语义检索与来源核对
在xAI Console建立Collection并上传练习文档,通过Responses API的…
文章目录
有一批需要反复查询的资料,逐次把文件附到会话并不方便。xAI Collections把文档保存在集合中,并通过嵌入索引支持语义检索。本教程从两份虚构规则文档开始,验证模型能否找到相应依据,区分“文件上传成功”“可检索”和“回答正确”三件事。
第一步:准备有明确版本的练习资料
需要有权限的xAI Console账号、相应API能力和额度。创建两份UTF-8文本,标题分别注明“演示规则—10月1日版”和“演示规则—10月20日版”,各写清生效日期、适用范围和一条不同规则,明确它们仅为练习,不能作为任何平台真实政策。
给每份文件写入独特的测试句,例如旧版处理期限为三天、新版为五天,并在新版注明替代旧版的范围。另准备一个两份资料都没有答案的问题。知识库是否可靠,要同时检查已知答案能否找到、未知答案是否如实留空,而不是只做一个容易命中的查询。
第二步:在控制台建立集合并上传
在xAI Console确认当前团队,进入Collections,选择Create new collection。官方建议保留生成embeddings的设置,以便语义检索。进入集合后点击Upload document,上传练习文件;不要把只存了文件但未建立可用索引,当成知识库已经验收。
点击文档表格中的行可查看File ID、Collection ID和文件哈希等信息。调用检索时需要集合ID,不能拿单份文件ID替代。记录集合、团队与上传版本,并等待页面显示的处理状态完成;界面若仍有失败提示,应先解决上传或索引问题。
第三步:通过file_search检索集合
官方Responses API示例使用file_search工具,vector_store_ids填写已创建的集合ID。以下示例保存并打印完整响应,便于检查输出内容和来源注释;它不会自动创建集合或上传文档,也未实际执行付费调用。密钥与集合ID分别放入环境变量。
import os
import json
from pathlib import Path
import requests
response = requests.post(
"https://api.x.ai/v1/responses",
headers={"Authorization": "Bearer " + os.environ["XAI_API_KEY"]},
json={
"model": "grok-4.7",
"input": [{"role": "user", "content":
"只根据练习集合,说明10月20日生效的处理期限。列出文档标题、版本和支持结论的原句。冲突或证据不足时明确说明,不自行补写规则。"}],
"tools": [{"type": "file_search",
"vector_store_ids": [os.environ["XAI_COLLECTION_ID"]],
"max_num_results": 5}],
},
timeout=120,
)
response.raise_for_status()
data = response.json()
Path("collection-result.json").write_text(
json.dumps(data, ensure_ascii=False, indent=2), encoding="utf-8")
print(json.dumps(data, ensure_ascii=False, indent=2))
第四步:检查引用是否真的支持结论
查看实际响应中output消息的文本和annotations等来源信息,按官方当前结构处理,不自行伪造引用字段。回到原文件确认标题、版本、生效日期和短引文。如果模型引用了旧规则,就把版本优先规则说清楚后重查;不能仅因附带文件名就认定答案已获证实。
请再次检索练习集合:资料是否规定了跨境运费?若没有,明确说资料未提供,并列出检索到但不足以回答的内容。不要把其他规则推断成运费政策,不补充常识数字。
第二轮用于检查资料缺失时的行为。模型若编出金额或时限,应视为验收未通过。对冲突规则,应同时列出两个版本及适用条件,无法确定优先关系时交由人工确认;检索增强并不能保证每次推理都正确。
第五步:处理空结果与后续更新
空结果先查团队、密钥权限、Collection ID是否准确,再查文档是否成功处理和生成嵌入,最后检查查询是否过窄或术语不同。不要把改成另一个模型作为所有问题的第一步,也不要把索引故障解释成资料没有提到。
后续更新保留清楚的版本及有效范围,测试通过后再按管理规则处理旧资料。控制台可删除文档或集合,但删除前应确认依赖和备份,不能为修复一次查询随意清空。完成标准是已知事实可回到原文、未知问题不编造、版本冲突可解释,且集合与单次附件的用途分得清楚。
官方资料
资料核对日期:2026年10月25日。
本文地址:https://www.163264.com/18017

