TypeScript 和 ChatGPT:从零开始创建 AI 助手

面向初学者的在线Python训练器

轻松学习Python,无需理论负担。在浏览器中直接解决带自动检查的实践任务,无需安装任何东西。

开始课程

为什么 TypeScript 和 ChatGPT 是现代开发者的理想组合

\n\n

想象一下:您正在用 TypeScript 编写代码,突然需要快速生成一个复杂的 SQL 查询、重写过时的 JavaScript,甚至创建一个用于用户支持的完整聊天机器人。以前这需要几个小时,而现在只需几分钟。这一切都得益于 TypeScript 和 ChatGPT 不仅成为了时髦的工具,更是全球数千名开发者的真正得力助手。

\n\n

在本文中,我们不会进行枯燥的讲解。我们将直接动手实践:编写真正能运行的代码。您将学习如何让 TypeScript 与 OpenAI API 协同工作,创建您的第一个 AI 助手,并了解如何在开发中使用 ChatGPT 来自动化日常任务。我们开始吧!

\n\n

开始前您需要准备什么

\n\n

在我们深入代码之前,请确保您已具备以下条件:

\n\n
    \n
  • Node.js 版本 18+(我们将使用现代的 fetch)
  • \n
  • npm 或 yarn 用于安装包
  • \n
  • OpenAI 的 API 密钥 — 在 platform.openai.com 获取(如果您刚开始使用,这是免费的)
  • \n
  • 对 TypeScript 有基本了解:类型、接口、async/await
  • \n
\n\n

其余的一切我们将一起完成。即使您从未使用过神经网络,也不必担心,我会解释每一步。

\n\n

步骤 1:配置用于 AI 开发的 TypeScript 项目

\n\n

创建一个新文件夹并初始化项目:

\n\n
mkdir ai-chatbot\ncd ai-chatbot\nnpm init -y\nnpm install typescript @types/node ts-node --save-dev\nnpx tsc --init
\n\n

现在安装 OpenAI 客户端。以前大家都使用 openai 库,但在 2024-2025 年,OpenAI 推荐使用其官方 SDK:

\n\n
npm install openai dotenv
\n\n

在项目根目录创建 .env 文件,并添加您的密钥:

\n\n
OPENAI_API_KEY=您的密钥在此处
\n\n

重要提示: 切勿将 .env 提交到仓库!请将其添加到 .gitignore 中。

\n\n

步骤 2:编写第一个用于与 ChatGPT 通信的 TypeScript 函数

\n\n

创建文件 chat.ts。我们从简单的开始:向神经网络发送消息并获取回复。代码如下:

\n\n
import OpenAI from 'openai';\nimport dotenv from 'dotenv';\n\ndotenv.config();\n\nconst openai = new OpenAI({\n  apiKey: process.env.OPENAI_API_KEY,\n});\n\ninterface ChatResponse {\n  content: string | null;\n  error?: string;\n}\n\nasync function askChatGPT(prompt: string): Promise<ChatResponse> {\n  try {\n    const response = await openai.chat.completions.create({\n      model: 'gpt-4o-mini', // 快速且便宜的模型\n      messages: [\n        {\n          role: 'system',\n          content: '你是一位对 TypeScript 开发者有用的助手。请简洁回答并附带代码示例。',\n        },\n        {\n          role: 'user',\n          content: prompt,\n        },\n      ],\n      max_tokens: 500,\n      temperature: 0.7,\n    });\n\n    return {\n      content: response.choices[0]?.message?.content || null,\n    };\n  } catch (error) {\n    console.error('请求 OpenAI 时出错:', error);\n    return {\n      content: null,\n      error: '无法从神经网络获取回复',\n    };\n  }\n}\n\n// 使用示例\nasync function main() {\n  const result = await askChatGPT('编写一个 TypeScript 函数,检查字符串是否为回文');\n  \n  if (result.content) {\n    console.log('ChatGPT 回复:');\n    console.log(result.content);\n  } else {\n    console.error('错误:', result.error);\n  }\n}\n\nmain();
\n\n

使用命令 npx ts-node chat.ts 运行脚本。如果一切配置正确,您将在控制台中看到神经网络的回复,包含代码和解释。ChatGPT 集成

博客

书籍推荐