chapyter
Chapyter 是一款专为 JupyterLab 设计的扩展工具,旨在将 GPT-4 的强大能力无缝融入您的编程环境。它充当智能代码解释器,能够直接将您的自然语言描述转化为可执行的 Python 代码并自动运行,让您在熟悉的 IDE 中实现“自然语言编程”。
对于经常受困于繁琐语法细节或希望快速验证想法的开发者与数据研究人员而言,Chapyter 有效解决了从构思到代码实现的效率瓶颈。您只需在单元格中输入如“列出文件夹所有文件”这样的指令,加上 %%chat 标记,即可瞬间获得结果。其独特亮点在于支持利用历史执行记录进行上下文感知生成,并能直接在笔记本环境中对生成的代码进行调试和修正,无需切换窗口。此外,Chapyter 坚持隐私优先原则,通过 OpenAI API 交互的数据不会被用于模型训练,同时完全开源提示词配置,允许用户根据需求灵活定制。无论是需要加速原型开发的专业工程师,还是希望探索数据分析新思路的研究者,Chapyter 都能成为提升生产力的得力助手。
使用场景
数据分析师小李需要在 Jupyter Notebook 中快速探索一份陌生的销售数据集,并生成多维度的可视化报告。
没有 chapyter 时
- 上下文切换频繁:遇到不熟悉的库或语法时,必须离开 Notebook 去浏览器搜索文档或询问 ChatGPT,再手动复制代码回来,打断分析心流。
- 调试效率低下:生成的代码常因环境缺失或数据格式问题报错,需要逐行检查并手动安装依赖,排查过程耗时且枯燥。
- 迭代成本高昂:若想基于上一步的图表调整配色或增加维度,往往需要重写大量样板代码,难以利用之前的执行历史进行智能修正。
- 隐私顾虑:担心将敏感业务数据直接粘贴到公共 AI 聊天窗口会导致信息泄露或被用于模型训练。
使用 chapyter 后
- 自然语言直达执行:只需在单元格输入
%%chat并用中文描述“绘制各地区季度销售额热力图”,chapyter 即可自动生成 Python 代码并立即运行出图。 - 原地调试与修复:若代码报错(如缺少库),chapyter 能结合错误信息自动尝试修复或在当前界面提示安装,无需跳出开发环境。
- 智能记忆与迭代:通过添加
--history参数,chapyter 能理解前序代码逻辑和数据状态,轻松实现“把刚才的柱状图改为折线图并添加趋势线”等复杂指令。 - 企业级隐私保护:所有交互通过 OpenAI API 进行,遵循官方数据不使用于训练的政策,确保内部数据安全可控。
chapyter 将自然语言编程无缝融入 Jupyter 工作流,让数据分析师从繁琐的代码编写中解放,专注于业务洞察本身。
运行环境要求
- 未说明
不需要 GPU
未说明

快速开始
什么是 Chapyter?
Chapyter 是一个 JupyterLab 扩展,能够无缝地将 GPT-4 连接到您的编程环境。它配备了一个代码解释器,可以将您的自然语言描述转换为 Python 代码并自动执行。通过在您最熟悉的 IDE 中实现“自然语言编程”,Chapyter 可以显著提升您的工作效率,并帮助您探索许多原本不会尝试的新想法。
| 功能 | 示例 |
|---|---|
| 从自然语言生成代码并自动执行 只需在包含任务自然语言描述的单元格开头添加魔法命令 %%chat,几秒钟内即可生成代码并显示结果。 |
![]() |
| 利用编码历史和执行输出生成代码 通过在生成时添加 --history 或 -h 标志,Chapyter 可以使用之前的执行历史和输出,为加载的 IRIS 数据集生成合适的可视化图表。 |
![]() |
| 就地调试和代码编辑 生成的代码可能并不完美,可能会包含一些错误或缺陷。由于 Chapyter 完全集成在 Jupyter Notebook 中,您可以轻松检查代码并修复任何问题或错误(例如,在这种情况下安装缺失的依赖项),而无需离开 IDE。 |
![]() |
| 提示词和 AI 配置透明化,并支持自定义 | 我们公开了库中使用的所有提示词,并且正在开发一种简便的方式来自定义这些提示词和设置。详情请参见 chapyter/programs.py。 |
| 在使用最新强大 AI 时优先考虑隐私 | 由于我们使用的是 OpenAI API,所有发送到 OpenAI 的数据都不会被保存用于训练(详见 OpenAI API 数据使用政策)。相比之下,当您使用 Copilot 或 ChatGPT 时,您的数据可能会被缓存,并用于它们的训练和分析。 |
快速入门
安装
pip install chapyter # 自动将扩展安装到 JupyterLab pip uninstall chapyter # 从 JupyterLab 卸载扩展注意:此操作会将 JupyterLab 升级到 ≥ 4.0 版本,这可能会破坏您的现有环境。
使用:请参阅 examples/01-quick-start.ipynb 作为入门笔记本。
- 在环境变量中设置正确的
OPENAI_API_KEY和OPENAI_ORGANIZATION - 在代码单元格中使用魔法命令
%%chat:
此命令将调用 gpt-4-0613 生成列出文件夹中所有文件的 Python 代码,并自动执行该代码。在这种情况下,该插件充当将自然语言翻译成 Python 代码并执行的解释器。%%chat -m gpt-4-0613 列出文件夹中的所有文件
- 在环境变量中设置正确的
示例:
- examples/01-quick-start.ipynb 展示了
chapyter的基本功能,包括如何使用魔法命令%%chat - examples/02-configure-chapyter.ipynb 说明了如何自定义
chapyter:- 使用不同的默认模型(例如,gpt-3.5-turbo 而不是 gpt-4)
- 使用不同类型的 API(目前支持使用默认的 OpenAI API 或 Azure OpenAI API)
- examples/01-quick-start.ipynb 展示了
开发说明
Chapyter 包含两个主要组件:一个是实现处理提示并调用 GPT-X 模型的 IPython 魔法命令;另一个是前端,负责监听 Chapyter 单元格的执行情况,自动执行新生成的单元格并更新单元格样式。下图展示了 Chapyter 单元格执行后前端与 IPython 内核之间的协同工作流程。

详细信息
构建扩展包需要 NodeJS。
jlpm命令是 JupyterLab 自带的 yarn 固定版本,随 JupyterLab 一起安装。您也可以使用yarn或npm替代下面的jlpm。# 克隆仓库到本地环境 # 切换到 chapyter 目录 # 以开发模式安装包 pip install -e "." # 将您开发的扩展版本链接到 JupyterLab jupyter labextension develop . --overwrite # 修改源代码后重新构建扩展的 Typescript 源码 jlpm build您可以在不同的终端中同时监视源代码目录并运行 JupyterLab,以便实时查看扩展源代码的变化并自动重新构建。
# 在一个终端中监视源代码目录,必要时自动重新构建 jlpm watch # 在另一个终端中运行 JupyterLab jupyter lab当
watch命令运行时,每次保存的更改都会立即在本地构建,并在您正在运行的 JupyterLab 中生效。刷新 JupyterLab 即可使浏览器加载最新的更改(可能需要等待几秒钟,直到扩展完成重新构建)。默认情况下,
jlpm build命令会生成此扩展的源映射文件,以便更方便地使用浏览器开发者工具进行调试。如果您还想为 JupyterLab 核心扩展生成源映射文件,可以运行以下命令:jupyter lab build --minimize=False打包与发布:请参考 RELEASE。
版本历史
v0.3.12023/08/01v0.3.02023/07/27v0.2.02023/07/10常见问题
相似工具推荐
everything-claude-code
everything-claude-code 是一套专为 AI 编程助手(如 Claude Code、Codex、Cursor 等)打造的高性能优化系统。它不仅仅是一组配置文件,而是一个经过长期实战打磨的完整框架,旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。 通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能,everything-claude-code 能显著提升 AI 在复杂任务中的表现,帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略,使得模型响应更快、成本更低,同时有效防御潜在的攻击向量。 这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库,还是需要 AI 协助进行安全审计与自动化测试,everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目,它融合了多语言支持与丰富的实战钩子(hooks),让 AI 真正成长为懂上
gemini-cli
gemini-cli 是一款由谷歌推出的开源 AI 命令行工具,它将强大的 Gemini 大模型能力直接集成到用户的终端环境中。对于习惯在命令行工作的开发者而言,它提供了一条从输入提示词到获取模型响应的最短路径,无需切换窗口即可享受智能辅助。 这款工具主要解决了开发过程中频繁上下文切换的痛点,让用户能在熟悉的终端界面内直接完成代码理解、生成、调试以及自动化运维任务。无论是查询大型代码库、根据草图生成应用,还是执行复杂的 Git 操作,gemini-cli 都能通过自然语言指令高效处理。 它特别适合广大软件工程师、DevOps 人员及技术研究人员使用。其核心亮点包括支持高达 100 万 token 的超长上下文窗口,具备出色的逻辑推理能力;内置 Google 搜索、文件操作及 Shell 命令执行等实用工具;更独特的是,它支持 MCP(模型上下文协议),允许用户灵活扩展自定义集成,连接如图像生成等外部能力。此外,个人谷歌账号即可享受免费的额度支持,且项目基于 Apache 2.0 协议完全开源,是提升终端工作效率的理想助手。
markitdown
MarkItDown 是一款由微软 AutoGen 团队打造的轻量级 Python 工具,专为将各类文件高效转换为 Markdown 格式而设计。它支持 PDF、Word、Excel、PPT、图片(含 OCR)、音频(含语音转录)、HTML 乃至 YouTube 链接等多种格式的解析,能够精准提取文档中的标题、列表、表格和链接等关键结构信息。 在人工智能应用日益普及的今天,大语言模型(LLM)虽擅长处理文本,却难以直接读取复杂的二进制办公文档。MarkItDown 恰好解决了这一痛点,它将非结构化或半结构化的文件转化为模型“原生理解”且 Token 效率极高的 Markdown 格式,成为连接本地文件与 AI 分析 pipeline 的理想桥梁。此外,它还提供了 MCP(模型上下文协议)服务器,可无缝集成到 Claude Desktop 等 LLM 应用中。 这款工具特别适合开发者、数据科学家及 AI 研究人员使用,尤其是那些需要构建文档检索增强生成(RAG)系统、进行批量文本分析或希望让 AI 助手直接“阅读”本地文件的用户。虽然生成的内容也具备一定可读性,但其核心优势在于为机器
LLMs-from-scratch
LLMs-from-scratch 是一个基于 PyTorch 的开源教育项目,旨在引导用户从零开始一步步构建一个类似 ChatGPT 的大型语言模型(LLM)。它不仅是同名技术著作的官方代码库,更提供了一套完整的实践方案,涵盖模型开发、预训练及微调的全过程。 该项目主要解决了大模型领域“黑盒化”的学习痛点。许多开发者虽能调用现成模型,却难以深入理解其内部架构与训练机制。通过亲手编写每一行核心代码,用户能够透彻掌握 Transformer 架构、注意力机制等关键原理,从而真正理解大模型是如何“思考”的。此外,项目还包含了加载大型预训练权重进行微调的代码,帮助用户将理论知识延伸至实际应用。 LLMs-from-scratch 特别适合希望深入底层原理的 AI 开发者、研究人员以及计算机专业的学生。对于不满足于仅使用 API,而是渴望探究模型构建细节的技术人员而言,这是极佳的学习资源。其独特的技术亮点在于“循序渐进”的教学设计:将复杂的系统工程拆解为清晰的步骤,配合详细的图表与示例,让构建一个虽小但功能完备的大模型变得触手可及。无论你是想夯实理论基础,还是为未来研发更大规模的模型做准备
NextChat
NextChat 是一款轻量且极速的 AI 助手,旨在为用户提供流畅、跨平台的大模型交互体验。它完美解决了用户在多设备间切换时难以保持对话连续性,以及面对众多 AI 模型不知如何统一管理的痛点。无论是日常办公、学习辅助还是创意激发,NextChat 都能让用户随时随地通过网页、iOS、Android、Windows、MacOS 或 Linux 端无缝接入智能服务。 这款工具非常适合普通用户、学生、职场人士以及需要私有化部署的企业团队使用。对于开发者而言,它也提供了便捷的自托管方案,支持一键部署到 Vercel 或 Zeabur 等平台。 NextChat 的核心亮点在于其广泛的模型兼容性,原生支持 Claude、DeepSeek、GPT-4 及 Gemini Pro 等主流大模型,让用户在一个界面即可自由切换不同 AI 能力。此外,它还率先支持 MCP(Model Context Protocol)协议,增强了上下文处理能力。针对企业用户,NextChat 提供专业版解决方案,具备品牌定制、细粒度权限控制、内部知识库整合及安全审计等功能,满足公司对数据隐私和个性化管理的高标准要求。
ML-For-Beginners
ML-For-Beginners 是由微软推出的一套系统化机器学习入门课程,旨在帮助零基础用户轻松掌握经典机器学习知识。这套课程将学习路径规划为 12 周,包含 26 节精炼课程和 52 道配套测验,内容涵盖从基础概念到实际应用的完整流程,有效解决了初学者面对庞大知识体系时无从下手、缺乏结构化指导的痛点。 无论是希望转型的开发者、需要补充算法背景的研究人员,还是对人工智能充满好奇的普通爱好者,都能从中受益。课程不仅提供了清晰的理论讲解,还强调动手实践,让用户在循序渐进中建立扎实的技能基础。其独特的亮点在于强大的多语言支持,通过自动化机制提供了包括简体中文在内的 50 多种语言版本,极大地降低了全球不同背景用户的学习门槛。此外,项目采用开源协作模式,社区活跃且内容持续更新,确保学习者能获取前沿且准确的技术资讯。如果你正寻找一条清晰、友好且专业的机器学习入门之路,ML-For-Beginners 将是理想的起点。


