codecamp

TRAE 使用 # 符号添加上下文:快速构建 AI 助手对话上下文

在侧边对话的输入框中,你可以使用 # 符号添加上下文,例如代码、文件、文件夹、工作区和外部文档等,从而帮助 AI 更准确地理解你的需求。

TRAE IDE 会优先推荐与当前打开文件相关的内容,你也可以通过搜索自行选择所需上下文。若有需要,你可以同时添加多种类型的上下文。

使用方式

  1. 在输入框中输入 #,或直接点击输入框左下角的 # 图标。

    输入框上方显示上下文类型选择列表。

  2. 选择需要添加的上下文类型。
  3. 选择目标内容,将其添加到当前对话。

上下文类型

类型 适用场景
#Code 只需要让 AI 理解某个函数或类。
#File 需要让 AI 阅读完整的文件。
#Folder 需求涉及某个目录下的多个文件。
#Workspace 需要 AI 从整个项目中查找相关内容。
#Doc 需要引用个人文档集或外部文档。
#Problems 需要 AI 分析 “问题” 页签中的诊断信息。
#Web 需要联网搜索或读取网页内容。
#Rule 需要引用为当前项目创建的项目级规则。
#Past Chats 需要引用历史对话内容。

Code

通过 #Code,你可以将函数或类的相关代码作为上下文。列表中默认展示当前编辑器内打开的文件中的函数或类。选择前,你可以预览列表中推荐的函数或类的相关代码。若推荐的内容非你所需,你可以通过关键词搜索所需的函数或类。

如果 TRAE 未安装对应语言的语言服务协议,可能无法识别代码符号。建议先安装对应语言扩展或语言服务后再使用。

File

通过 #File,你可以将指定文件中的所有内容作为上下文。列表中默认展示近期在编辑器中打开过的文件。你可以预览这些文件所在的目录,以免因存在同名文件而导致错选。若展示的文件非你所需,你可以通过关键词搜索所需文件。

Folder

通过 #Folder,你可以将指定文件夹中的所有内容作为上下文。列表中默认展示与编辑器中当前所打开文件相关的文件夹。你可以预览这些文件夹所在的目录,以免因存在同名文件夹而导致错选。若展示的文件夹非你所需,你可以通过关键词搜索所需文件夹。

#Folder 依赖项目代码索引是否构建完全。若索引暂未构建完全,可能会影响文件夹内容召回的效果,从而导致 AI 助手的回答不够完整。提问时,若索引从未构建或正在构建中,References 位置将出现 “索引构建中” 或 “索引暂未构建” 的提示,你可以根据引导在设置页管理索引。关于如何构建代码索引,参考工作区代码索引

Workspace

你可以使用 #Workspace 来向 AI 提出有关整个工作空间的问题,AI 将自动在工作空间中查找与你的问题最相关的内容作为上下文进行回答。遇到不熟悉的项目时,该功能可以帮助你全局了解该项目所实现的功能和代码,从而使你快速上手该项目的开发。

#Workspace 依赖项目代码索引是否构建完全。若索引暂未构建完全,可能会影响文件夹内容召回的效果,从而导致 AI 的回答不够完整。提问时,若索引从未构建或正在构建中,References 位置将出现 “索引构建中” 或 “索引暂未构建” 的提示,你可以根据引导在设置页管理索引。关于如何构建代码索引,参考工作区代码索引

Doc

你可以上传个人文档集,将文档内容作为上下文。

创建文档集时,TRAE 将针对文档集内容构建索引,在索引过程中文档数据将被传输至 TRAE 服务器进行矢量化,但 TRAE 不会读取或存储任何文档数据,矢量化完成后文档数据和矢量数据都将从 TRAE 的服务器中删除,数据将返回至用户的设备并存储在用户本地。在 TRAE 中删除文档集后,本地数据也将被同步删除。

创建文档集的步骤如下:

  1. 前往 设置 > 索引与文档

你将进入代码索引与文档集管理面板。

  1. 在 部分,点击 按钮。
  2. 从菜单中选择添加文档集的方式。可选方式如下;

    方式 相关说明
    以你输入的入口 URL 为起点,TRAE 会自动抓取同一站点中与入口 URL 同级路径或子路径下,最多三次跳转内的页面内容。若入口 URL 为 https://www.example.com/docs/api,则: 
    · 可抓取内容的路径示例如下: 
     · https://www.example.com/docs/changelog(同级路径) 
     · https://www.example.com/docs/api/abc(子路径) 
     · https://www.example.com/docs/protocol/def(同级路径的子路径) 
    · 不可抓取内容路径示例如下: 
     · https://www.anotherexample.com(不同 Host) 
     · https://www.example.com/(高于入口路径) 
     · https://www.example.com/blogs(不属于同一路径) 
    注意: 
    在使用此方式时,应遵循目标网址的规则,合法合规使用本工具。本工具仅支持查看公开可访问的技术文档类网站,用于学习、研究的目的,感谢你的理解与配合。 
    TRAE 在扫描页面时将会严格遵循网页的 /robots.txt 规范,若被网站拒绝则无法正常索引,索引页面列表中将展示 “网站限制无法访问”。
    添加的本地文件需满足以下要求: 
    · 文件格式.md 和 .txt 
    · 文件大小:单个文件最大 10 MB 
    · 文档集大小:最大 50 MB 
    · 文件数量:不超过 1000 个

    文档添加完成后,将被展示在文档集列表中。你可以按需修改文档集名称、重新索引页面或文件、删除文档集。

Problems

使用 #Problems 符号并向 AI 发送指令后,AI 会全量分析 问题 页签中报告的所有问题并提供解决方案。

Web

你可以将线上网站的内容作为 AI 对话的上下文。

  • 直接在 #Web 后输入你的指令并发送。这种方式会触发联网搜索,AI 会在全网搜索相关内容并生成答复。
  • 在输入框中先输入网址,再输入指令,AI 会直接从该网站查询相关内容并生成回答。通过这种方式,AI 不仅能获取网站的最新信息作为问答依据,还能同时从多个网站检索最相关的内容。

Rule

通过 #Rule,将当前项目 .trae/rules/ 目录下的项目级规则作为上下文。

Past Chats

通过 #Past Chats,将当前项目中的历史对话作为上下文。

若要启用此功能,前往 设置 > Beta > 历史对话,然后打开 启用历史对话 开关。

TRAE 上下文基础用法
TRAE IDE 上下文代码索引:构建精准项目索引,提升 AI 助手效率
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }