xAI PromptIDE:马斯克xAI提示代码编辑器


PromptIDE 是一个用于即时工程和可解释性研究的集成开发环境。它允许通过 SDK 实施复杂的提示技术,并通过分析可视化网络输出。开发 IDE 的目的是为工程师和研究人员提供对 Grok-1(Grok 的驱动模型)的透明访问。

它旨在增强用户能力并帮助他们快速探索大型语言模型。

核心是Python代码编辑器与允许复杂提示的SDK相结合:

  • 在 IDE 中执行提示时,用户会看到有用的分析,例如精确标记化、采样概率、替代标记和聚合注意力掩码。
  • IDE 自动保存带有版本控制的提示,并可以存储分析以比较输出。
  • 用户可以上传 CSV 文件等小文件,并使用 SDK 中的单个 Python 函数读取它们。结合SDK的并发特性,即使是稍大的文件也能快速处理。
  • 提示可以与包含版本或分析的选项公开共享。

该 IDE 可供早期访问成员使用,并且演示了主要功能。

PromptIDE 的核心是代码编辑器和 Python SDK。
SDK 提供了一种新的编程范式,可以优雅地实现复杂的提示技术。所有 Python 函数都在一个隐式上下文中执行,该上下文是一串标记。您可以使用 prompt() 函数手动将标记添加到上下文中,也可以使用 sample() 函数使用我们的模型根据上下文生成标记。从模型采样时,您可以将各种配置选项作为参数传递给函数:


async def sample(
    self,
    max_len: int = 256,
    temperature: float = 1.0,
    nucleus_p: float = 0.7,
    stop_tokens: Optional[list[str]] = None,
    stop_strings: Optional[list[str]] = None,
    rng_seed: Optional[int] = None,
    add_to_context: bool = True,
    return_attention: bool = False,
    allowed_tokens: Optional[Sequence[Union[int, str]]] = None,
    disallowed_tokens: Optional[Sequence[Union[int, str]]] = None,
    augment_tokens: bool = True,
) -> SampleResult:
    """Generates a model response based on the current prompt.

代码通过浏览器内的 Python 解释器在本地执行,该解释器在单独的Web工作者中运行。多个Web工作者可以同时运行,这意味着你可以并行执行许多提示。

在同一个程序中,可以使用多个上下文来实现复杂的提示技术。如果一个函数使用 @prompt_fn 装饰器注解,那么它将在自己的全新上下文中执行。函数可以独立于父上下文执行某些操作,并使用 return 语句将结果传回调用者。这种编程范式允许使用任意嵌套的子上下文进行递归和迭代提示。

更多点击标题