📌 导读:本文手把手演示如何用 OpenAI 官方开源项目部署一个属于自己的 AI 助理(克隆到 GitHub、本地调试、再部署到 Render)。重要提示:文中使用的 OpenAI Assistants API 现已被官方标记为弃用,并由更新的 Responses API 取代,OpenAI 计划在后续逐步关停 Assistants API。因此本教程保留作为历史记录与思路参考,若要上线新项目,请改用 Responses API,并以 OpenAI 官方文档最新公布为准。
2024年是人工智能飞速崛起的一年,科技领域的风口浪尖正由AI引领。几乎所有的科技巨头都在这场竞赛中押下重注。就在Google 2024 I/O发布会上,一系列全新产品让人眼前一亮——无一例外地,几乎都融入了AI的力量。各种先进的语言模型接连问世,譬如Google的Gemini、OpenAI的ChatGPT、Meta的Llama,以及Anthropic的Claude等。这些技术不断推陈出新、版本迭代极快,但其中最广泛为人熟知并使用的,依然是OpenAI的ChatGPT及其当时较新的模型版本(各家模型的最新版本以官方公布为准)。
如今,人工智能已深刻渗透到我们生活的每一个角落。然而,由于政策和安全的限制,大部分先进的人工智能模型并未在中国大陆开放使用,这使得用户不得不通过翻墙的方式才能体验这些技术。尽管国内也有一些人工智能模型应用产品,但与美国这些科技巨头的AI模型相比,差距显而易见。因此,尽管使用起来略有不便,许多人依然选择跨越屏障,使用全球最前沿的人工智能工具,因为它们在质量和生产力方面遥遥领先。
那么,是否存在一种方法,不用翻墙也能享受ChatGPT这样的人工智能工具?答案是肯定的!今天,我们将探讨如何通过OpenAI Assistant API打造属于你自己的人工智能助理。可能你会担心,这样的操作对那些没有计算机技术背景的人来说,是否过于复杂?别担心,这篇文章将尽量用通俗易懂的语言,带你一步步探索如何创建这个强大的AI助手。在开始之前,让我们先了解一些必要的背景知识。
什么是API?
首先,咱们得了解一个非常重要的概念——API。API的全称是“应用程序编程接口”(Application Programming Interface),它就像是一套规则和指南,让不同的软件可以互相“说话”和交换数据。用更简单的比喻来说,API就像餐厅里的服务员,顾客(也就是一个软件程序)通过点单(API调用)向厨房(另一个软件程序)请求想要的菜品(服务或数据)。然后,服务员把厨房准备好的菜送到你桌前。这样一来,开发者就不用去了解“厨房”里的复杂操作,也能轻松实现不同应用之间的功能集成。
今天我们要介绍的OpenAI的Assistant API,就是一种专门帮开发者打造AI助手的API。它让开发者可以在自己的应用中创建一个类似ChatGPT的智能对话助手。通过使用这个API,你可以:
- 自定义助手的角色和任务,比如设定它是一个帮你写代码的助手,还是一个解答问题的专家;
- 接入一些AI工具,比如代码解释器、知识检索等,让助手更强大;
- 上传自定义的知识库文件,供助手“学习”更多内容;
- 管理助手与用户的多轮对话,让它的回答更连贯;
- 触发助手生成回复,并调用相应的工具。
而且,OpenAI的Assistant API和传统的OpenAI通用API有些不同。因为它有专门的助手特性,开发者可以在OpenAI的管理后台对这个助手进行个性化设置。比如,你可以告诉助手它的主要任务是什么,选择它要使用的语言模型,设置它的响应格式和各种参数。简单来说,OpenAI Assistant API把强大的语言模型与各种AI工具和知识库结合在一起,提供了一个超级灵活的框架,让开发者能快速打造出功能强大的AI助手,而不需要自己训练模型。这大大降低了开发的难度,让更多企业和个人也有机会创建自己的智能对话应用。
用什么语言开发人工智能助理?
很多编程语言都可以读取api的数据,然而,如果你打算通过web方式创建一个自己的人工智能助理,那么主流的两种语言:Python和node.js。当然,还有一种是cURL(客户端URL库),它并不是一种编程语言,而是一种用于在命令行或脚本中传输数据的工具。它的名字代表“Client URL”,提供了一个库和一个命令行工具,用于通过各种协议(如HTTP、HTTPS、FTP等)传输数据。cURL支持广泛的网络协议,并且可以与许多编程语言(如Python、PHP、C等)集成使用,常用于测试API、下载文件、提交表单等任务。
换句话说,你可以利用各种编程语言来接入Openai Assistant API,创建自己的人工智能工具。事实上,我们也用php结合curl开发过一些web应用,简单易懂。然而,现实中的web产品开发中,python和node.js占据了主导地位。openai官方所提供的API参考文档和演示代码,通常也是以这2个为主。

不必纠结用哪种编程语言来创建这个工具,用自己喜欢的,擅长的就行。如果你的应用涉及大量的数据处理、分析和机器学习,Python会是更好的选择,得益于其强大的库和工具支持。如果你的应用需要处理大量并发请求,或者需要实时性强的特性,如实时聊天、在线协作等,Node.js是更合适的选择。如果你希望前后端使用同一种语言,并且希望在前端和后端之间无缝切换,Node.js是一个不错的选择。由于今天我们要讲的例子是基于web的一种开发,所以,这里我们选择了node.js。需要注意的是,Node.js是一个基于Chrome V8 JavaScript引擎的运行时环境,允许开发者在服务器端运行JavaScript代码。它是一个平台,用于构建网络应用和服务器端应用。
到这里,可能很多人已经云里雾里了。 别急,由于我们今天并不自己编写代码,而是直接用OpenAI官方提供的一个开源程序来部署人工智能工具,所以,并不需要自己编写语言代码,也让操作上会简单一些。
GitHub
开始之前,我们还要介绍一下GitHub,这个重量级的工具平台。GitHub,很多人并不陌生,它是一个基于 Git 版本控制系统的代码托管平台,允许开发者存储、管理和共享代码。它还提供了一系列协作功能,使开发团队能够共同开发和维护软件项目。它也是全球最大的开源社区,许多知名的开源项目(如 Linux 内核、React、TensorFlow)都托管在 GitHub 上。
是的,今天,我们要部署的OpenAI官方提供的一个开源程序就是来自这里。
https://github.com/openai/openai-assistants-quickstart/

开始部署
由于我们需要将openai官方的开源程序(也被称为仓库 repository),克隆clone到我们自己的github账户下。首先,我们要在github上注册一个自己的账号。
登录到GitHub账户中,然后创建一个全新的repository,这里我们命名为chenfei。

然后,会看到这个页面:

接下来,我们需要把https://github.com/openai/openai-assistants-quickstart/的repository,下载到本地电脑上,然后,再通过github push的方式同步到我们的账号https://github.com/beyondlifei/chenfei.git中。
这里,我们用的是macbook电脑,先本地电脑上创建一个名为chenfei的文件夹。然后,在这个文件夹上点击new terminal at this folder

然后,在终端中输入:git clone https://github.com/openai/openai-assistants-quickstart.git

整个openai-assistants-quickstart程序就下载到了本地,在终端中,输入cd openai-assistants-quickstart,即可进入程序的根目录上。接下来,我们要把整个文件推送到我们的github的仓库中:https://github.com/beyondlifei/chenfei.git
如果你的电脑是第一次用github,并没有进行过github的密钥配置。那么,还得进行一些设置。下面以在MacBook上进行配置为例,步骤与windows系统稍有不同,但整体过程基本相同。以下是详细的步骤:
1. 安装Git
macOS通常预装了Git,如果还没有安装Homebrew,可以按照官方网站上的说明进行安装:Homebrew官网。验证安装是否成功:git --version
2. 配置Git
配置你的Git用户名和邮箱:
git config --global user.name "Your Name"
git config --global user.email "your.email@example.com"
3. SSH密钥配置(可选但推荐)
生成SSH密钥
如果你还没有SSH密钥,可以生成一个:
ssh-keygen -t ed25519 -C "your.email@example.com"
按提示完成操作,通常保存到默认位置,并设置一个密码(也可以留空)。
添加SSH密钥到SSH代理
启动SSH代理并添加生成的SSH密钥:
eval "$(ssh-agent -s)"
ssh-add -K ~/.ssh/id_ed25519
添加SSH密钥到GitHub
显示生成的SSH公钥:
cat ~/.ssh/id_ed25519.pub

复制输出的公钥内容,然后登录你的GitHub账户,在Settings -> SSH and GPG keys中,点击New SSH key,将公钥粘贴到文本框中并保存。

这样的话,你本地电脑就可以通过一些简单的git命令操控原创github上的repository了,包括pull、push这些。
4. 初始化本地仓库并推送到GitHub
初始化Git仓库
打开终端并导航到你的本地项目目录,如果你的项目目录还没有初始化为Git仓库,需要初始化它:
git init
查看当前远程仓库 URL
git remote -v
更新远程仓库 URL(替换为你自己的仓库):
git remote set-url origin https://github.com/beyondlifei/chenfei.git
或者直接添加远程仓库
将GitHub上的远程仓库添加为本地仓库的origin:
git remote add origin git@github.com:beyondlifei/chenfei.git
添加和提交文件
将所有文件添加到暂存区,并提交到本地仓库:
git add .
git commit -m "Initial commit"
推送到远程仓库
将本地代码推送到远程仓库:
git push -u origin main
这样,你就成功地将本地程序推送到GitHub上的仓库了。请务必熟练掌握这些github操作流程,因为后续的文件修改,都是通过这种方式push到github远程repository上的。

打开https://github.com/beyondlifei/chenfei/tree/main页面,我们看到了被clone过来的repository。

到这里,本地和github的repository的克隆与同步完成了,接下来是进入本地调试阶段。
本地电脑程序调试
本地调试,可以参考openai的官方说明。大致步骤如下:

可以将整个openai-assistants-quickstart文件夹,导入到vs code。点击左侧的.env.example文件,配置里面的2个关键信息,分别是OPENAI_API_KEY和OPENAI_ASSISTANT_ID。
哪里找到OPENAI_API_KEY?
OPENAI_API_KEY实际上,就是你的openai账户的密钥。
1. 注册OpenAI账户
- 访问OpenAI官网:OpenAI
- 点击“Sign Up”按钮,使用你的电子邮件地址注册一个新账户。如果已经有账户,可以直接登录。
2. 创建API密钥
- 登录到OpenAI后,进入你的个人账户仪表盘(Dashboard)。
- 在仪表盘中,找到并点击“API Keys”或类似的选项。这个地址:https://platform.openai.com/api-keys
- 点击“Create new secret key”按钮,生成一个新的API密钥。
- 系统会显示一个新的API密钥。请将这个密钥保存到一个安全的地方,因为这是你调用OpenAI API时所需要的凭证。

哪里找到OPENAI_ASSISTANT_ID?
你可以手动到openai的账户中创建一个assistant,然后获得这个assistant的ID。也可以运行openai-assistants-quickstart程序,在程序中自动创建一个。这里我们通过运行程序来创建。
步骤是前面图片的第三步安装依赖包npm install,第四步运行程序:npm run dev

然后,在浏览器中,打开http://localhost:3000 这个网址,会看到下面这个页面,表示程序已经运行成功,
第一次,需要点击Create Assistant,以便获得Assistant ID。

将获得的密钥和这个assistant ID填写到.env.example文件,并将.env.example文件名修改为.env。
最后,再打开app文件夹下的assistant-config.ts,并将assistant ID填写到 assistantId = “”里面,然后保存。

而这时候,再访问http://localhost:3000时,网站已经变成了可以正式使用的样子。


到这里,在本地搭建并调试openai-assistants-quickstart程序的工作就算完成了。
部署到主机服务器上
接下来是部署到服务器上。网络上有很多支持node.js的主机服务器,包括vercel.com、render.com。其实cloudways也可以部署,然后,在cloudways上部署流程繁杂。
由于vercel.com部署,会出现中文乱码。我做了一些测试,最后选择在render.com进行部署。步骤比较简单,注册一个render.com账号。激活账号后,点击New – Web Service – Build and deploy from a Git repository。

由于我们已经将本地程序push到了github上的repository,所以,我们可以直接连接到我们的GitHub账号,进行快速部署。

这里可以选择Free,进行测试部署,正式商用的产品,建议升级为付费主机。

点击Create Web Service, 很快,网站就部署完成了。

render提供了一个免费的二级域名,可以直接访问。当访问时,我们发现页面提示创建assistant,而非正常的网站显示界面。
这是因为本地程序修改后,并没有push到远程的GitHub上的repository。所以,我们还需要进行最后一步操作。
添加和提交文件
将所有文件添加到暂存区,并提交到本地仓库:
git add .
git commit -m "Initial commit"
推送到远程仓库
将本地代码推送到远程仓库:
git push -u origin main
这样,本地修改后的程序,就被同步到了GitHub上,而GitHub的更新,也被同步到了render服务器上,1-2分钟后,网站会自动完成部署。

这时候,再访问网站时,网站已经完全生效。到这里一个由openai assistant api驱动的人工智能助手就可以使用了。

当然,由于这是openai提供的一个开源程序,您可以按照自己的实际需求,任意修改成你自己想要的效果。或者结合自身的产品或业务需求,改造成自己的由人工智能驱动的web应用产品。最后,你也可以绑定上你自己的域名,分享给你的读者或者客户。让那些原本需要翻墙才能使用海外先进的人工智能产品,也可以使用这种由 OpenAI 接口驱动的人工智能产品。
💡 把 AI 真正用到出海业务里——自动选品、内容批量生产、独立站客服、市场数据分析——才是它的价值所在。晨飞博客会员区分享了大量 AI 工具实测、API 开发思路与跨境创业落地经验,助你在这波浪潮里跑在前面。 📍 这一步在《晨飞十二年》路线图 · 第 2 站「副业试水期」。


