88API88API
使用指南AI 应用API 文档帮助支持

Jupyter - 交互式 AI 编程与数据分析

在 JupyterLab 或 Jupyter Notebook 中一键配置 88API,并使用 Python SDK 完成文本生成、流式输出、模型查询和图片生成。

适用范围

本教程适用于 JupyterLab 和 Jupyter Notebook。配置完成后,可以在 Python 单元格中直接调用 88API 的文本、图片等模型,并把代码、说明和输出保存在同一个 Notebook 中。

本文步骤依据 Jupyter 官方安装说明JupyterLab Notebook 操作说明IPython 启动文件说明整理。教程图片使用 JupyterLab 4.6.3 在隔离临时环境中实机操作,不使用生成式界面图。

使用前准备

  1. 登录 88API,在控制台创建 API Key,并确认余额充足。
  2. 本机安装 Python 3.9 或更高版本。
  3. 安装 JupyterLab 或 Jupyter Notebook。
  4. 安装最新版 OpenAI Python SDK。

安装 Jupyter

JupyterLab

JupyterLab 是功能更完整的新界面,推荐首次使用者选择:

python -m pip install --upgrade jupyterlab openai
jupyter lab

经典 Jupyter Notebook

python -m pip install --upgrade notebook openai
jupyter notebook

如果使用 Conda,可以从 conda-forge 安装 JupyterLab,再在同一环境中安装 OpenAI SDK:

conda install -c conda-forge jupyterlab
python -m pip install --upgrade openai

安装完成后运行 jupyter lab。进入启动器后,在 Notebook 区域选择 Python 3 (ipykernel),即可创建 Python Notebook:

JupyterLab 启动器中选择 Python 3 内核创建 Notebook

确认安装到当前内核

Jupyter 可能同时使用多个 Python 环境。打开 Notebook 后运行 import sys; print(sys.executable),可以确认当前内核使用的 Python 路径。

一键配置 88API

脚本会询问 API 基础地址和 API Key,并创建 Jupyter/IPython 启动文件。以后每次启动 Python 内核时,都会自动设置:

OPENAI_BASE_URL=https://88api.ai/v1
OPENAI_API_KEY=你的88API密钥

Windows

打开 PowerShell,执行:

iex (irm 'https://88api.ai/helper/jupyter-setup.ps1')

按提示操作:

  1. API 基础地址直接回车,使用默认 https://88api.ai/v1
  2. 粘贴 88API API Key;输入密钥时屏幕不会显示字符;
  3. 配置完成后,完全重启 Jupyter 内核。

脚本默认写入:

%USERPROFILE%\.ipython\profile_default\startup\00-88api.py

macOS / Linux

打开终端,执行:

curl -fsSL https://88api.ai/helper/jupyter-setup.sh | bash

脚本默认写入:

~/.ipython/profile_default/startup/00-88api.py

如果系统设置了 IPYTHONDIR,脚本会使用该目录。配置文件权限会设为仅当前用户可读写。

脚本会做什么

  • 自动补齐 https:///v1
  • 不在终端输出 API Key;
  • 只写入 Jupyter/IPython 的专用启动文件;
  • 不修改 Codex、Claude Code 或系统全局 API 环境变量;
  • 再次运行时先备份旧的 00-88api.py,再写入新配置。

API Key 会保存在本机配置文件中

一键配置适合自己的可信设备。不要把 00-88api.py 上传到 Git、网盘共享目录或发送给他人;不要在 Notebook 输出中打印完整 API Key。

让配置生效

一键脚本运行完成后,在 Jupyter 中选择:

  1. Kernel / 内核
  2. Restart Kernel / 重启内核
  3. 重新运行 Notebook 单元格。

在 JupyterLab 的 Kernel 菜单中选择 Restart Kernel

只刷新浏览器页面不一定会重启 Python 内核,因此必须执行“重启内核”。

验证配置

新建一个 Python Notebook,运行:

import os

print("API 地址:", os.getenv("OPENAI_BASE_URL"))
print("API Key:", "已配置" if os.getenv("OPENAI_API_KEY") else "未配置")

正常结果应显示:

API 地址: https://88api.ai/v1
API Key: 已配置

不要运行 print(os.getenv("OPENAI_API_KEY")),避免密钥被保存到 Notebook 输出中。

在真实 JupyterLab 内核中验证 88API 地址和 API Key 状态

第一次调用

Responses API

OpenAI Python SDK 会自动读取一键脚本设置的 API 地址和 API Key:

from openai import OpenAI

client = OpenAI()

response = client.responses.create(
    model="gpt-5.5",
    input="用三点说明为什么 Jupyter 适合数据分析。",
)

print(response.output_text)

Chat Completions

需要兼容传统消息格式时,可以使用:

from openai import OpenAI

client = OpenAI()

response = client.chat.completions.create(
    model="gpt-5.5",
    messages=[
        {"role": "system", "content": "你是一名数据分析助手。"},
        {"role": "user", "content": "给出一份 CSV 数据清洗检查清单。"},
    ],
)

print(response.choices[0].message.content)

流式输出

流式输出适合较长回答,可以边生成边显示:

from openai import OpenAI

client = OpenAI()

stream = client.responses.create(
    model="gpt-5.5",
    input="写一段包含读取 CSV、缺失值统计和分组汇总的 Python 示例。",
    stream=True,
)

for event in stream:
    if event.type == "response.output_text.delta":
        print(event.delta, end="", flush=True)

查看可用模型

from openai import OpenAI

client = OpenAI()
models = client.models.list()

for model in models.data[:30]:
    print(model.id)

模型列表会随账户权限和 88API 配置变化。示例中的模型不可用时,请从返回列表选择当前可用模型。

在 Notebook 中生成图片

下面的单元格会生成图片并直接显示。该操作可能产生费用:

import base64
from openai import OpenAI
from IPython.display import Image as NotebookImage, display

client = OpenAI()

result = client.images.generate(
    model="gpt-image-2",
    prompt="一张极简风格的数据分析工作台插画,深蓝背景,发光图表,16:9",
    size="1536x1024",
)

image = result.data[0]
if image.b64_json:
    display(NotebookImage(data=base64.b64decode(image.b64_json)))
elif image.url:
    display(NotebookImage(url=image.url))

不同图片模型支持的尺寸和参数不同。如果返回参数错误,请根据模型文档调整 size,或先使用生图工作台确认模型能力。

不使用一键脚本

如果只想在当前 Notebook 临时使用 88API,不在本机保存密钥,可以通过安全输入创建客户端:

from getpass import getpass
from openai import OpenAI

client = OpenAI(
    api_key=getpass("88API API Key: "),
    base_url="https://88api.ai/v1",
)

getpass 输入不会显示在单元格中,但客户端只在当前内核有效;重启内核后需要重新输入。

更新或移除配置

更换 API Key

重新运行对应系统的一键脚本即可。脚本会备份旧配置,再写入新的 API 地址和密钥。

移除 Windows 配置

$dir = if ($env:IPYTHONDIR) { $env:IPYTHONDIR } else { Join-Path $env:USERPROFILE '.ipython' }
Remove-Item (Join-Path $dir 'profile_default\startup\00-88api.py')

移除 macOS / Linux 配置

rm "${IPYTHONDIR:-$HOME/.ipython}/profile_default/startup/00-88api.py"

移除后重启 Jupyter 内核。之后 OpenAI() 将不再自动使用 88API 配置。

常见问题

安装成功,但 Notebook 提示没有 openai

通常是 Jupyter 内核和安装命令使用了不同 Python。先运行:

import sys
print(sys.executable)

再在 Notebook 中使用当前内核安装:

import sys
!{sys.executable} -m pip install --upgrade openai

安装完成后重启内核。

请求仍然发往默认 API 地址

运行“验证配置”单元格,确认 OPENAI_BASE_URLhttps://88api.ai/v1。如果没有更新,请完全停止并重新启动 JupyterLab/Notebook,再重启内核。

返回 401 认证失败

重新运行一键脚本,确认 API Key 完整且没有空格或换行。不要把 Codex 登录令牌、Claude 账号凭据或其他服务的 Key 当作 88API API Key。

返回 404 或模型不存在

先运行“查看可用模型”,确认模型名称与返回值完全一致。模型权限和名称可能随账户配置变化。

返回 429 或余额不足

检查账户余额和当前模型价格,降低并发请求数量,等待限流窗口恢复后再试。Notebook 中重复运行同一个计费单元格会创建新的请求。

Notebook 要分享给别人

分享前清除包含敏感内容的输出,并确认代码中没有硬编码 API Key。推荐只分享使用 OpenAI()getpass() 的代码,不分享本机 00-88api.py

相关教程