仓库索引与语义搜索
了解自动索引、更新时点、非 GitHub 仓库上传和内容排除的处理。
This page has not been translated into English yet. The original Chinese version is shown below.
语义代码搜索根据含义定位相关实现,帮助处理不知道精确函数名或文本模式的问题。索引改善上下文检索,不代表整个仓库一次装入模型,也不保证回答已经覆盖所有相关文件。
何时创建和更新
带仓库上下文启动 Chat 时,会自动为仓库建立索引。首次索引在后台执行,大仓库可能需要最多约 60 秒;后续更新更快,通常在开始新对话后数秒内包含最新改动。官方没有限制可索引的仓库数量。
同一仓库索引可供 GitHub / VS Code 的 Copilot Chat,以及 cloud agent 使用。cloud agent 会在合适时自动使用语义搜索,无需额外配置。官方明确:不会用已索引的仓库训练模型;这句话针对索引用途,不等于所有 Copilot 数据类型具有相同处理政策。
非 GitHub 仓库
VS Code 可以为 GitLab 等其他托管平台或本地仓库的工作区文件建立语义索引。此功能会把数据上传到 GitHub 供搜索使用,目前仅支持 GitHub.com,不支持 GHE.com 或 GitHub Enterprise Server。
该功能默认关闭。Business / Enterprise 的组织或企业所有者需要将 Semantic indexing for non-GitHub repositories 明确设为 Enabled;保持 Unconfigured 不会开放。多重授权时还应核对政策冲突例外。
与内容排除的关系
如果索引所属仓库在内容排除规则范围内,交给 Copilot Chat 前会按政策过滤数据。不要把这一描述扩大为所有 Agent 模式都支持内容排除,具体客户端边界见内容排除。
回答遗漏新改动时,先核对所选仓库与分支上下文、索引更新和适用政策,再提供具体文件或代码片段;索引存在不能替代检查引用。