
# 代码库索引
你可以为项目构建索引，来提升AI在代码库中的检索速度与准确度，使结果更贴合你的需求。还可以通过配置忽略文件，来指定在构建代码索引时需剔除的文件。被忽略的文件将完全被排除在代码索引之外，从而有效保护你的敏感数据。
#### 代码库索引分类
代码库索引提供了如下两种模式，请结合你的使用场景，自由选择合适的索引构建方式。
- **本地索引** ：通过本地索引构建**图谱索引**，解析本地项目代码文件，精准检索函数、类、文件之间的调用、依赖与继承关系。
- **云端索引** ：借助代码库索引构建**向量索引** ，基于代码语义，实现功能维度的智能检索与精准匹配。**如果你使用的是老套餐（原个人版/体验版/基础版/专业版** **）** 或**新套餐企业版**，请确保账号已启用席位，若席位未启用，会导致云端索引创建失败。
表1本地索引和云端索引功能对比 
| 对比维度 | 本地索引                                   | 云端索引                                                                          |
|:---|:---|:---|
| 存储位置 | 索引文件存储在你的本地设备（当前项目根目录的".codegraph"路径下） | 首次构建索引，完整索引包上传存储至云端；代码变更生成的增量索引，保存在本地设备（当前项目根目录的".codeartsdoer/.codebase"路径下） |
| 搜索能力 | 支持关键词、符号、文件名检索                         | 语义理解，全库代码逻辑分析                                                                 |
| 构建规则 | - 文件数\<50000的项目：打开项目时自动构建索引  - 文件数≥50000的项目：首次构建需手动触发   ||
| 更新规则 | 文件发生变更自动更新                             | **开启自动更新** 且代码库**文件数量小于50000**时自动更新，其余场景需手动操作                                 |
   
#### 约束与限制
表2约束与限制 
| 限制类别     | 具体限制                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
|:---|:---|
| 语言       | 支持Java、JavaScript、TypeScript、Go、ArkTS、C、C++、Python、Vue和Lua。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| 索引代码文件总数 | - 老套餐 - 体验版≤**5千**个  - 基础版≤**5万**个  - 专业版≤**10万**个    - 新套餐 - 个人体验版≤**5千**个  - 个人标准版/高级版/旗舰版≤**5万**个  - 企业专业版≤**20万**个     |
| 功能限制     | - 仅**老套餐** （**基础版** /**专业版** ）和**新套餐企业版** 支持创建云端**团队级** 和**企业级**代码库索引。  - 本地索引仅支持在**Windows** 、**Linux**系统下创建。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
   
#### 构建代码库索引
1. 参考[快速启动](https://support.huaweicloud.com/usermanual-codeartsagent/codeartsagent_ug_0002.html)操作，登录华为云码道代码智能体IDE。
2. 单击页面右上角的设置图标 ![](https://support.huaweicloud.com/usermanual-codeartsagent/zh-cn_image_0000002724039103.png)，进入IDE模式全局设置页面。
3. 选择"代码库索引"，查看代码库索引构建结果。 
   如果看到[图1]页面，说明你的项目代码文件不足50000个，代码库索引已构建完成。没有看到该页面，可以根据你的具体使用场景，选择构建本地索引或云端索引。
   图1索引构建成功   
   ![](https://support.huaweicloud.com/usermanual-codeartsagent/zh-cn_image_0000002693758972.png "点击放大")
   
   
4. 输入你要查找的内容，查看代码检索效果。 
   ```
   探索代码库中所有调用is_input_required的位置，包括跨文件调用关系
   ```
   图2查看检索结果   
   ![](https://support.huaweicloud.com/usermanual-codeartsagent/zh-cn_image_0000002685038606.png "点击放大")
   
   
 
#### 管理代码库索引
代码库索引除了创建外，还支持重启、删除等操作，具体参见[表3]。
 表3管理代码库索引 
| 操作         | 操作指导                                                                                                                                                                                                              |
|:---|:---|
| 暂停云端索引     | 在云端索引构建过程中，如果您想停止构建，可以单击"暂停"。                                                                                                                                                                                     |
| 重启云端索引     | 如果需要恢复已暂停的索引构建，可单击"继续索引"继续执行。                                                                                                                                                                                     |
| 同步云端更新     | 单击"同步更新"，执行增量索引更新，即系统会对比当前状态与上一次增量更新的结果，仅对新增或修改过的代码文件进行索引，跳过未变更文件以节省时间。                                                                                                                                           |
| 重新云端索引     | 索引删除后，如果需要从头开始重建索引，可单击"开始索引"触发完整索引流程。                                                                                                                                                                             |
| 删除云端索引     | 如果需要清除当前所有索引数据，可单击"删除索引"进行清理。 除了在客户端删除代码库索引，你还可以到控制台执行删除操作，详细介绍请参见[删除云端代码库索引](https://support.huaweicloud.com/usermanual-enterprise/codeartsagent_enterprise_0015.html)。 |
| 忽略当前目录中的文件 | 如果您期望忽略指定代码文件的索引，可以单击"配置"，在".codebaseignore"中指定当前目录下希望忽略的代码文件。                                                                                                                                                    |
   
