助手面板

助手面板为您提供了一种与大型语言模型交互的方式。助手可用于各种任务,例如生成代码、询问有关现有代码的问题,甚至编写纯文本,例如电子邮件和文档。

要打开助手面板,请使用命令面板中的 workspace: toggle right dock 操作或使用 cmd-r|ctrl-alt-b 快捷键切换右侧停靠栏。

注意:可以设置自定义 按键绑定 来切换右侧停靠栏。

一旦您配置了提供商,您就可以与提供商的语言模型进行交互。

要在助手面板中创建新聊天,请按 cmd-n|ctrl-n 或使用助手面板右上角的菜单并选择 New Chat 选项。

在面板中,从配置的提供商中选择一个模型,在 You 块中键入消息,然后使用 cmd-enter|ctrl-enter 提交。

与助手交互

Zed 中的助手面板的功能与任何其他编辑器类似。您可以使用自定义按键绑定并使用多个光标,从而可以在编码和与语言模型进行讨论之间无缝过渡。

但是,助手编辑器与众不同之处在于包含了消息块。这些块用作文本的容器,这些文本对应于上下文中的不同角色。这些角色包括

  • 助手
  • 系统

首先,选择一个模型并在 You 块中键入消息。

Asking a question

在您键入时,所选模型的剩余令牌计数会更新。

从编辑器插入文本就像高亮显示文本并运行 assistant: quote selection (cmd->|ctrl->) 一样简单;如果它是代码,Zed 会将其包装在带围栏的代码块中。

Quoting a selection

要提交消息,请使用 cmd-enter|ctrl-enter (assistant: assist)。与典型的聊天应用程序中按 enter 会提交消息不同,在助手编辑器中,我们的目标是使其尽可能接近常规编辑器。因此,按 enter|enter 只是插入一个新行。

提交消息后,助手的响应将以流的形式显示在下面的 Assistant 消息块中。

Receiving an answer

可以使用 escape 在任何时候取消该流。如果您很早就意识到响应不是您想要的,这将非常有用。

如果您想随时开始新的对话,可以点击 cmd-n|ctrl-n 或使用面板左上角汉堡菜单中的 New Chat 菜单选项。

简单的来回对话可以很好地与助手配合使用。但是,有时您可能需要修改对话中的先前文本,并将其引导到不同的方向。

编辑上下文

注意:想知道上下文与对话的区别吗?在此处阅读更多内容

助手使您可以灵活地控制上下文。您可以自由编辑任何先前的文本,包括助手的响应。如果您想完全删除消息块,只需将光标放在块的开头并使用 delete 键。典型的工作流程可能涉及在整个上下文中进行编辑和调整,以完善您的查询或提供其他信息。这是一个示例

  1. You 块中写入文本。
  2. 使用 cmd-enter|ctrl-enter 提交消息。
  3. 收到不符合您期望的 Assistant 响应。
  4. 使用 escape 取消响应。
  5. 擦除 Assistant 消息块的内容并完全删除该块。
  6. 将其他上下文添加到您的原始消息。
  7. 使用 cmd-enter|ctrl-enter 提交消息。

能够编辑以前的消息使您可以控制令牌的使用方式。您无需启动新的聊天来纠正错误或添加其他信息,也不必通过提交后续更正来浪费令牌。

注意:在语言模型的上下文中,编辑过去的消息通常被称为“重写历史”。

需要记住的一些其他要点

  • 您可以随时在对话中更改模型类型。
  • 您可以通过单击角色来循环消息块的角色,这在您收到 Assistant 块中的响应并希望对其进行编辑并将其作为 You 块发送回时非常有用。