跳转到主要内容

使用tranformers.js的JupyterLab内联补全提供者。

项目描述

jupyterlab-transformers-completer

Extension status Build Binder

使用transformers.js为JupyterLab提供内联补全。

此扩展旨在为JupyterLab扩展的开发者(和高级JupyterLab用户)探索JupyterLab 4.1中添加的内联补全API的集成。

此演示中链接的所有模型仅在您的浏览器中运行,

  • 比最先进模型的数量级小得多,
  • 因此建议/答案的准确性较低。

这些模型未经过准确性或适宜性的审查,不应在没有进一步验证的情况下部署。

demo-transformers

用法

  1. 前往设置 → 内联补全 → 选择代码(在代码单元格和脚本中)和文本(在Markdown单元格和平文文件中)生成的模型。
  2. 模型将被下载、编译并缓存到您的浏览器中,底部右角的弹出通知中会有指示。
  3. 在代码单元格或Markdown单元格中键入几个单词并观察建议;悬停以查看快捷方式。
  4. 根据需要调整设置中的模型配置;特别是建议增加重复惩罚、调整温度和顶部 k

已知问题

  • 有时需要在安装后进入设置并修改设置以触发模型下载和编译。
  • 有时浏览器会缓存一个损坏的文件(例如未完全下载的文件),导致解析时出现语法错误;您可以尝试在隐身/私密模式下确认这是暂时的,并清除浏览器缓存以删除此类文件。

要求

  • JupyterLab >= 4.1.0 或 Jupyter Notebook >= 7.1.0
  • 支持
    • SharedArrayBuffer
    • Web Workers
    • 为工作者动态导入(在Firefox中的 dom.workers.modules.enabled 后面)
    • (可选,用于更快的推理)WebGPU(在Firefox中的 dom.webgpu.enabled 后面)
  • jupyter-server 以启用附加头信息(jupyversejupyterlite 尚未测试)

当此扩展启用时,服务器将返回附加头信息,这将防止获取外部资源,例如GitHub中的扩展徽标将不再在扩展面板中加载。

附加头信息用于通过 SharedArrayBuffer 启用与 WebWorker 的同步通信

Cross-Origin-Opener-Policy: same-origin,
Cross-Origin-Embedder-Policy: require-corp

安装

要安装扩展,请执行

pip install -U 'jupyterlab>=4.1.0' jupyterlab-transformers-completer

卸载

要删除扩展,请执行

pip uninstall jupyterlab-transformers-completer

贡献

开发安装

注意:您将需要 NodeJS 来构建扩展包。

jlpm 命令是 JupyterLab 的固定版本 yarn,它随 JupyterLab 一起安装。您可以使用 yarnnpm 替代下面的 jlpm

# Clone the repo to your local environment
# Change directory to the jupyterlab-transformers-completer directory
# Install package in development mode
pip install -e "."
# Link your development version of the extension with JupyterLab
jupyter labextension develop . --overwrite
# Rebuild extension Typescript source after making changes
jlpm build

您可以在不同的终端中同时监视源目录并运行 JupyterLab,以监视扩展源的变化并自动重新构建扩展。

# Watch the source directory in one terminal, automatically rebuilding when needed
jlpm watch
# Run JupyterLab in another terminal
jupyter lab

当监视命令运行时,每个保存的更改将立即在本地上构建并可供您运行的 JupyterLab 使用。刷新 JupyterLab 以在浏览器中加载更改(您可能需要等待几秒钟以重新构建扩展)。

默认情况下,jlpm build 命令为此扩展生成源映射,以便更容易使用浏览器开发工具进行调试。要为 JupyterLab 核心扩展也生成源映射,可以运行以下命令

jupyter lab build --minimize=False

开发卸载

pip uninstall jupyterlab-transformers-completer

在开发模式下,您还需要删除由 jupyter labextension develop 命令创建的符号链接。要找到其位置,可以运行 jupyter labextension list 以确定 labextensions 文件夹的位置。然后您可以在该文件夹中删除名为 @jupyterlab/transformers-completer 的符号链接。

打包扩展

参见 RELEASE

项目详情


下载文件

下载适用于您的平台的文件。如果您不确定选择哪个,请了解更多关于 安装软件包 的信息。

源分发

jupyterlab_transformers_completer-0.3.0.tar.gz (325.5 kB 查看哈希)

上传时间

构建分发

jupyterlab_transformers_completer-0.3.0-py3-none-any.whl (232.4 kB 查看哈希值)

上传时间 Python 3

支持者