AI 聊天
AI 聊天是与 AI Assistant 支持的 LLMs 交互的主要入口点。 在此,您可以与语言模型对话,询问有关项目的问题,或对任务进行迭代。
基本上,交互过程包括以下步骤:
选择聊天模式
AI 聊天可以运行在两种 模式下:用于日常提问的 聊天以及用于高级开发任务的 Agent。
为您的请求添加上下文
提供与请求相关的信息。 添加文件、文件夹、图像、符号或其他元素作为查询的上下文。
处理响应
AI Assistant 可以回答问题、生成代码段和终端命令,并编辑文件。 每条建议都可以根据您的需要单独 处理。
开始新的聊天
要开始与 AI Assistant 聊天,请点击 AI 聊天 右侧工具栏中的图标(在 DataGrip 中 ,点击
More tool windows 页眉中的图标,并选择
AI Assistant)。

这将打开 AI 聊天工具窗口,其中包含以下元素:

聊天模式选择器 -可在用于快速对话的 聊天 和为复杂任务设计的支持的 代理 之间切换。
模型选择器 -允许选择将处理您请求的模型,包括已配置的本地模型。
附件 -添加文件、文件夹、图像、符号或其他元素作为您请求的上下文。
聊天记录与视图设置-查看、重命名或删除先前的对话,并配置聊天窗口布局。
使用 AI 聊天咨询代码库相关问题、请求建议、生成代码段、编辑文件等。
选择聊天模式
AI 聊天可以运行于两种模式: 通用聊天用于回答问题,或 专用 agent用于处理更复杂的开发任务。
要选择聊天模式:
在聊天中,点击
。从列表中选择模式。

聊天模式
聊天 模式用于提出一般性或与项目相关的问题。 在此模式下,不会对文件进行任何更改 —— 您只能请求信息、说明或建议。 所有生成的代码段都必须经过审查并 手动应用。
默认情况下,AI Assistant 会自动收集其提供答案所需的上下文信息。 如果您更倾向于手动添加上下文,则可以禁用此行为。 要执行此操作,请点击 ,然后禁用 启用代码库模式 设置。

之后,您可以通过 按钮或使用
@ 引用手动 添加相关信息。
Agent 模式
Agent 模式适用于更复杂的开发任务。 Agent 可帮助实施修复、重构代码、生成测试等。 建议的更改可引入到 多个文件中,并可在应用之前进行审查。
目前,AI Assistant 支持以下 agent:
JetBrains 出品的 Junie
Junie 是 JetBrains 开发的 AI coding agent,其主要任务是根据用户提示自主制定并执行复杂的多步操作计划。 它可以对项目进行大规模编辑、运行测试或终端命令、在需要时使用外部工具,并向用户报告进度。
安装 Junie
要安装和使用 Junie:
在对话中,点击
,并从列表中选择
Junie。

输入您的提示并按下 Enter。 这将触发安装。
请等待安装完成。
选择模式
模式 是 Junie 中的 agent 配置,可根据任务类型调整其行为。 您可以选择以下模式之一:
代码—— Junie 会将任务拆分为多步方案并执行,同时报告进度。 它可以自主运行终端命令、创建新文件、编写或编辑代码、运行测试并验证更改。

任务完成后,您可以向 Junie 发出后续指令:保留更改并开始新任务,或拒绝更改并回滚所有操作。
询问—— Junie 在只读模式下运行:它可以浏览文件、分析代码并理解项目结构,但无法修改代码或项目文件。

使用询问模式可以获取您的问题的答案,浏览并理解代码库和项目结构,与 Junie 协作制定操作方案,或集思广益以构思新功能和改进。
要在各个模式之间切换,可在提示窗口中使用模式选择下拉菜单。 选择 自动 可让 Junie 自动判断应使用哪个模式。

批准操作
回滚操作
如果 Junie 引入的更改不符合您的需求,您可以将其回滚。 为此:
导航到引入这些更改的特定提示。
将鼠标悬停在其上并点击
在此回滚。

通过点击 回滚 确认此操作。 这将还原 Junie 所做的所有更改以及在该点之后人工进行的任何更改。
如果更改已应用于多个文件,且您希望在特定文件中还原更改,请将鼠标悬停在窗格中的该文件名称上,然后点击 。

勇敢模式
深入思考
您可以指示 Junie 执行 深入思考 ,以便在处理任务时实现更深入的推理和更全面的分析。 启用后,Junie 将花费额外时间进行计划并验证其操作,从而可能生成更高质量的结果,例如更简洁的代码和更结构化的解决方案。

操作允许列表
通过 操作允许列表 ,您可以指定允许 Junie 无需用户批准即可执行的操作和命令。 此方式比允许 Junie 自主执行所有可能的敏感操作更安全。
当代理正在执行任务时,您可以直接从聊天中向操作允许列表添加规则。 为此,请点击建议操作旁的 ,然后选择以下任一项:

将命令添加到允许列表 以仅将该特定命令添加到操作允许列表。
将类似命令添加到允许列表 让 Junie 为该命令模式生成一个正则表达式(Regex),并将其添加到操作允许列表中。 例如,对于
git log --oneline -2命令,将添加一个^\Qgit log --oneline \E\S+$正则表达式。管理允许列表 以打开操作允许列表设置页面。
启用外部工具的使用
您可以将 Junie 连接到 Model Context Protocol(MCP)服务器。 这将为 Junie 提供与数据源和工具(如文件系统、效率工具或数据库)协作所需的可执行功能。
在运行提示时,Junie 会分析已在配置的 MCP 服务器中注册为可用工具的命令,并通过相应的 MCP 服务器执行它们。

要将 Junie 连接至 MCP 服务器:
在 IDE 设置(Ctrl+Alt+S )中,转到 。
点击
工具栏。 在打开的
mcp.json文件中,在"mcpServers"密钥下添加一个或多个服务器配置。
有关 JSON 架构,请参阅所添加 MCP 服务器的文档。
选择处理模型
要选择 Junie 用于处理请求的模型:
请导航至 。

选择模型并点击 确定。
Junie 附加设置
Junie 还有一组附加设置,您可以在 中进行配置。

项目路径—— Junie 允许进行更改的目录路径。Junie 将请求确认操作以编辑此目录之外的文件或文件夹。 Junie 将请求确认以编辑此目录之外的文件或文件夹。
指南路径—— 指向 agent 指南文件的路径,相对于项目路径。 支持的文件类型:
guidelines.md(Junie 专用)和AGENTS.md。如果未指定路径,则 Junie 会默认在
.junie/guidelines.md查找 agent 指南。对于 monorepo 或具有非标准结构的项目,始终指定 指南路径。
已启用的技术—— 选择 Junie 将处理的语言和技术的复选框。 可用语言和技术列表由您使用的 JetBrains IDE 决定。
Junie 提问的频率—— 控制 Junie 提问的频率。
正常数量 选项默认启用,使 Junie 能够在任务处理期间与用户进行交互并请求人工输入。
选择 从不询问我 以禁用 Junie 的提问功能。
Claude Agent
Claude Agent 是由 Anthropic 提供的第三方 coding agent,已集成至 AI Assistant。 它能够理解您的代码库,规划并执行开发任务,并使用工具运行命令,分析其结果,以完成复杂的编程工作流程。
此集成的主要优势在于,除了自身的工具外,Claude Agent 还可以使用 JetBrains MCP Server 提供的工具。
下载 Claude Agent
最初,Claude Agent 并未安装在 AI Assistant 中。 要安装:
在对话中,点击
,并从列表中选择
Claude Agent。

输入您的提示并按下 Enter。 这将触发安装。
点击 安装并继续 以接受服务条款。

安装完成后,即可开始使用 Claude Agent。
使用 Anthropic API 令牌配合 Claude Agent
如果您已有 Anthropic 帐号并希望使用现有订阅,可以在设置中提供您的 API 令牌来配合 Claude Agent 使用。
请导航至 。

在 Claude Agent 部分,启用 使用 API 密钥连接 设置。
在 Anthropic API 令牌 字段中输入您的令牌。
点击 确定 以应用更改。
批准操作
勇敢模式
方案模式
Claude Agent 可在修改您的文件之前,分析代码库并生成多步实现方案。 该 agent 以只读模式运行,收集所需上下文并提出结构化代码修改建议。 要启用此模式,请在聊天输入字段中点击 计划。

处理完您的请求后,Claude Agent 会准备一份详细的更改实现方案。 在对代码库应用任何修改之前,您必须审查并批准该方案以确认其符合您的要求。

选择一个模型
不同模型具有不同的能力,因此您可能需要根据任务切换模型。 AI Assistant 允许您从 多种基于云的 LLM 中 选择 ,或 连接到本地 LLM。
选择基于云的 LLM
要选择基于云的模型:
在聊天中,点击模型名称旁的
按钮。从列表中选择所需的模型。

如果您不确定要选择哪个模型,可以将其设置为 自动。 AI Assistant 将自动选择在性能与成本之间提供最佳平衡的模型。
将 AI 聊天连接到您的本地 LLM
在选择本地模型之前,您必须连接到安装在机器上的第三方提供商:
转到 。
在 第三方 AI 提供商 部分中,选择您的 LLM 提供商,指定其可访问的 URL,并应用更改。

配置第三方提供商后,已安装的本地模型将可在聊天中使用。 它们会列在 本地模型 部分下方。

从列表中选择所需的模型。
添加和管理上下文
为请求附加正确的上下文有助于 AI Assistant 提供更准确、相关度更高的回应。 您可以添加文件、文件夹、图像、符号、提交或其他条目,以向 AI Assistant 提供与您的问题相关的其它信息。
添加上下文
可以通过几种方式添加上下文。 您可以通过 @ 引用添加,或通过 添加附件 按钮添加:
在聊天输入框中键入
@,选择相关类别,然后选择要添加的条目。
- 可用类别
@thisFile指的是当前打开的文件。@selection指当前在编辑器中选中的代码片段。@projectStructure是指在 Project 工具窗口中显示的项目结构。@problems指的是在当前打开文件中检测到的问题。@localChanges指的是未提交的更改。@file:会调出当前项目中的文件选择弹窗。 您可以从弹窗中选择所需的 文件 或 图像 ,也可以手动输入文件名称(例如@file:Foo.md或@file:img.png)。@folder:是指当前项目中的一个 文件夹。 所选文件夹及其所有内容将作为上下文添加到提示中。@rule:会将一个 项目规则 添加到提示中。 您可以在弹出的窗口中选择规则,也可以手动输入规则名称。@dbObject:是指一个 数据库对象 ,例如架构或表。 例如,您可以将数据库架构附加到请求中,以提升生成的 SQL 查询质量。@commit:将提交引用添加到提示中。 您可以从弹出的窗口中选择一个提交,或者手动输入提交哈希值。@symbol:将一个符号添加到提示中(例如,@symbol:FieldName)。用于 PyCharm 和 DataDrip,将 Jupyter 变量添加到提示中(例如,
@jupyter:df)。
另外,您可以点击
添加附件 按钮,并从列表中选择相关上下文。 此方法还允许您 从 UI 添加上下文 ,而这是无法通过
@引用实现的。
无论哪种方式,所选条目都会作为上下文附加到您的请求中。 下方提供了有关如何为查询添加特定类型上下文的详细说明。
将文件或文件夹添加到上下文中
将文件和文件夹添加到上下文中可以使 AI Assistant 访问相关的代码和项目结构,从而帮助其理解依赖关系,并提供更准确、具上下文意识的回答。
要将文件或文件夹添加到上下文中:
在聊天中,点击
添加附件。
从菜单中选择 文件与文件夹 选项,并指定要添加的文件或文件夹。

在聊天中输入您的问题并提交查询。
AI Assistant 将使用附加的文件或文件夹来收集额外的上下文,以便提供回答。
从 UI 添加上下文
在聊天中提问时,您可以直接从 UI 元素向查询添加上下文。 它可以是终端、工具窗口、控制台等。 例如,您可以从控制台附加构建日志以询问为什么构建失败。
在聊天中,点击
添加附件。
从菜单中选择 从 UI 添加上下文 选项。

选择包含您希望添加到上下文中的数据的 UI 元素。
在聊天中输入您的问题并提交查询。
AI Assistant 在生成回复时会考虑添加的上下文。
附加数据库对象
适用于:DataGrip 和自 IDE 版本 2025.2 起具备 Database Tools and SQL 插件的 IDE
您可以在 AI 聊天请求中附加特定的数据库对象,以便为 LLM 提供更多上下文。 为此:
在聊天中,键入
@,然后开始输入或选择dbObject:。在出现的数据库对象列表中,选择您要附加的对象。

您可以查看附加到消息中的对象,并通过点击聊天中的对应附件来导航至该对象。
在聊天中输入您的问题并提交查询。
将选区附加为上下文
有时,在处理代码时,您需要解释代码的特定部分、运行时警告、终端输出或在各个工具窗口中显示的其他结果。 AI Assistant 允许您选择这些内容并将其添加到聊天中,作为请求的上下文。
要获取解释:
选择您希望解释的内容。 这可以是来自编辑器的代码段、运行时错误、终端输出,或在对应工具窗口中显示的其他控制台消息。

所选内容会自动作为上下文添加到聊天中。
在聊天中,请求 AI Assistant 解释所选内容。
查看附件
您可以通过点击任意附件来查看其内容。 该项目将在单独的窗口中打开。
如果请求已发送,您可以点击 按钮查看添加到请求中的附件。

AI Assistant 在回答中提供的附件始终显示,但如有需要,您可以点击 将其隐藏。
设置消息修剪阈值
每个语言模型都有一个 上下文窗口——即它一次可以处理的最大上下文量。 如果超过此限制,模型可能会产生错误或不完整的响应,并且对话的早期部分可能会被丢弃。

为了确保您的请求在模型可处理范围内,您可以配置消息修剪阈值。 如果超出该阈值,AI Assistant 将优先处理较小的文件,并从较大的文件中提取关键信息,以优化发送给模型的上下文数量。
要设置消息修剪阈值:
转到 。
或者,将鼠标悬停在已修剪的附件上(其带有
图标标记),然后点击 调整阈值。

在 消息修剪阈值 部分中,为 如果消息超过模型上下文窗口的百分比,则修剪消息 设置选择一个值。

点击 确定 以保存更改。
因此,当您的消息超过指定阈值时,AI Assistant 会修剪附件,以确保模型能够处理请求。 被修剪的内容会标记为 图标。

使用命令
命令用作特定操作的快捷方式,可帮助您在输入查询时节省时间。 您可以将它们与 @ 引用 结合使用。
AI Assistant 支持以下 / 命令:
/explain——解释提及的实体。/refactor——为编辑器中选中的代码建议重构。/docs——在 IDE 文档中搜索指定主题的信息。 如果适用,AI Assistant 将提供指向相应设置或文档页面的链接。/web——在互联网上搜索信息。 AI Assistant 将提供答案并附上用于检索信息的相关链接集。
处理响应
AI Assistant 的响应可以包含代码段、终端命令、编辑建议,或对单个或多个文件所做的更改。 根据所选的 聊天模式 ,可用的处理选项可能有所不同。
例如,在 聊天 模式中,您可以使用代码段右上角的工具处理建议:

Apply – 将建议应用到当前打开的文件。 此操作将更新整个文件,并调整相关代码以整合更新内容。
– 复制代码段。 然后,您可以在需要的地方手动粘贴它。
– 将生成的代码段或其选中的片段插入到在编辑器中打开的文件的文本光标位置。
– 创建一个包含 AI 生成代码的单独文件。
– 运行生成的终端命令。 在 PyCharm 中 ,该按钮还用于在 Python 控制台 中运行生成的代码段,与项目其他部分分开执行。
在 Agent 模式中,建议的更改通常更为复杂,可能会影响多个文件。 为帮助您审查这些更改,AI Assistant 提供了一个差异视图,您可以在接受之前检查每项更改。

有关如何处理多个文件更改的说明,请参阅 将更改应用到多个文件。
将建议应用到当前文件
由 AI Assistant 在 聊天 模式下生成的代码段可以应用到当前打开的文件。 更改将应用于整个文件,并调整相关代码以整合更新内容。
要应用此建议:
找到您想要应用的代码段。
点击 Apply 按钮。

在编辑器中,点击
下一个更改 或
上次更改 按钮以查看更改。

准备好应用更改后,请点击 全部接受。 否则,请点击 全部丢弃 拒绝这些更改。
将更改应用到多个文件
在 Agent 模式下工作时,AI Assistant 可以对整个项目的多个文件进行更改。 您可以查看受影响的文件,并在聊天中直接处理这些更改。
要应用多个文件中的更改:
查看建议的更改。 除了提供问题的解释外,AI Assistant 还会显示受影响文件的列表,并让您选择如何继续操作:

全部丢弃 – 点击以放弃所有建议的更改。
全部保留 – 点击以保留所有受影响文件中的建议更改。
在工具栏中显示更改 – 点击以在单独的工具栏中显示受影响文件的列表。

显示差异 – 点击以打开选中文件的差异查看器。 差异查看器允许您直观比较和查看文件版本之间的差异,帮助您了解更改内容。

创建补丁 – 点击以创建一个包含更改的 .patch 文件。 该文件可稍后应用到您的源代码中。
接受 – 点击以接受所选文件中的建议更改。
丢弃 – 点击以放弃所选文件中的建议更改。
按以下内容分组 – 点击以选择如何对已修改的文件进行分组——按目录或模块。
全部展开 – 点击以展开文件树中的所有节点。
全部折叠 – 点击以收起文件树中的所有节点。
根据需要处理更改。
重新生成响应
如果您不喜欢 AI Assistant 提供的答案,请在回答末尾点击 重新生成此回复 以生成新的回答。

查看聊天记录
AI Assistant 会在不同的 IDE 会话中对每个项目分别保留聊天记录。 您可以在 聊天记录 列表中找到已保存的聊天记录。

聊天的名称会自动生成,并包含初始查询的摘要。 右键点击聊天名称以重命名或将其从列表中删除。 使用 Ctrl+F 搜索特定的聊天记录名称。
除了可以搜索特定聊天记录外,您还可以在某个聊天实例中进行搜索。 要重新查看对话中的特定部分:
在聊天实例中,按 Ctrl+F。 或者,点击
并选择 在聊天中查找。
在搜索字段中输入您的查询内容。 AI Assistant 将在聊天中高亮显示所有指定文本的匹配项。
使用
按钮导航到上一个/下一个匹配项。

自定义聊天
您可以调整 AI 聊天的行为以符合您的偏好。
更改聊天回复语言
您可以指示 AI Assistant 使用特定语言提供回答。
按 Ctrl+Alt+S 打开设置,然后选择 。
在 自然语言 部分,启用 以自定义语言接收 AI 助手的聊天回复 设置。
在文本字段中,指定您希望接收聊天回复的语言。

点击 Apply。
之后,AI Assistant 将在其回复中使用指定的语言。




