文本是终极用户界面,在大型语言模型的时代更是如此。因此,Zed Industries 热衷于创建文本的终极用户界面。
在今天发布的 Zed 0.92 版本中,我们添加了使用新的对话编辑器编辑语言模型上下文的支持。
像 ChatGPT 这样的界面鼓励我们按顺序编辑对话,但与底层模型的交互实际上是无状态的。我们将对话的历史记录作为每次推理的一部分发送,当历史记录超过 token 限制时,我们需要压缩它。在 ChatGPT 中,这种压缩是自动的并在后台执行的,这对大众市场受众来说是有意义的。
但是,作为更专业的技术客户,我们发现自己希望直接使用 OpenAI 的 API,以便我们了解并控制发送给推理的确切数据。因此,我们构建了一个对话编辑器。这个特殊用途的编辑器将与语言模型的对话视为任何其他文本一样,除了我们将文本分成块,对应于对话中的每条消息。
除了直接键入消息之外,您还可以使用 cmd->
插入上一个活动编辑器窗格中选择的文本,如果它是代码,Zed 会将其包装在 fenced code block 中。要向模型发送消息,请将光标放在标记为 "You" 的消息中,然后按 cmd-enter
。助手的回复将流式传输到下方,您可以使用 escape
取消。要在对话中的任何位置起草新的回复,请将光标放在助手消息中,然后按 cmd-enter
。将在下方插入一条空消息,您可以使用 ctrl-r
将其循环到不同的角色。最后,您可以使用 shift-enter
分割消息。
当您第一次打开面板时,Zed 会要求您提供 OpenAI API 密钥,该密钥将保存到您的钥匙串中。如果定义了 OPENAI_API_KEY
环境变量,它也会使用该变量。一旦您的对话被命名,我们会自动将其保存到您的文件系统中,位于 ~/.config/zed/conversations
。
虽然此助理的初始版本已经成为我们最喜欢的 ChatGPT 界面,但我们很高兴继续迭代使语言模型能够与您的代码库交互的方式,并且我们还期待添加多人游戏支持。如果您使用的是 Mac,请获取 OpenAI API 密钥,下载 Zed,然后尝试一下新的助理!