跳到主要内容
TypeChat

示例

要查看 TypeChat 的实际应用,请查看/typescript/examples中提供的示例。

每个示例都展示了 TypeChat 如何处理自然语言输入,并将其映射为经过验证的 JSON 输出。大多数示例输入都可以在 GPT 3.5 和 GPT 4 上运行。我们正在努力使用其他模型复现输出。通常,在代码和自然语言文本上都经过训练的模型具有很高的准确性。

我们建议按以下顺序阅读每个示例。

名称 描述
情感分析 一个情感分类器,将用户输入归类为消极、中性或积极。这是 TypeChat 的“Hello World!”
咖啡店 一个咖啡店智能代理。此示例将用户意图转换为咖啡订单项目的列表。
日历 一个智能日程安排器。此示例将用户意图转换为修改日历的一系列操作。
餐厅 一个在餐厅点餐的智能代理。类似于咖啡店示例,但使用更复杂的模式来建模更复杂的语言输入。散文文件说明了简单和更高级语言模型在处理复合句、干扰和纠正方面的界限。此示例还展示了我们如何使用 TypeScript 提供用户意图摘要。
数学 给定一个可以执行四种基本数学运算符的 API,将计算转换为简单的程序。此示例突出显示了 TypeChat 的程序生成能力。
音乐 一个通过自然语言在 Spotify 上播放音乐、创建播放列表等的应用程序。每个用户意图都被转换为 JSON 中的一系列操作,这些操作对应于一个简单的数据流程序,其中每个步骤都可以消耗前一个步骤产生的数据。

步骤 1:配置开发环境

选项 1:本地机器

您只需使用 Node.js 即可在本地机器上试验这些 TypeChat 示例。

确保已安装 Node.js (18.16.0 LTS 或更高版本)

git clone https://github.com/microsoft/TypeChat
cd TypeChat
npm install

选项 2:GitHub Codespaces

GitHub Codespaces 使您能够在云端托管的开发环境中快速试用 TypeChat。

在 TypeChat 存储库页面上

  1. 单击标有<> Code的绿色按钮
  2. 选择Codespaces选项卡。
  3. 单击绿色的Create codespace按钮。
如果这是您第一次创建 codespace,请阅读此内容。

如果这是您第一次在此存储库上创建 codespace,GitHub 将花一点时间为您的会话创建开发容器镜像。镜像创建完成后,浏览器将自动在开发环境中加载 Visual Studio Code,该环境已配置必要的先决条件,TypeChat 已克隆,并且包已安装。

请记住,您正在云端运行,因此在销毁 codespace 之前,您对源树所做的所有更改都必须提交并推送。GitHub 账户通常配置为自动删除非活动 30 天的 codespace。

有关更多信息,请参阅 GitHub Codespaces 概述

步骤 2:构建 TypeChat 示例

通过在存储库根目录中运行以下命令来构建 TypeChat 和示例

npm run build-all

步骤 3:配置环境变量

目前,这些示例在 OpenAI 或 Azure OpenAI 终端上运行。要使用 OpenAI 终端,请包含以下环境变量

变量
OPENAI_MODEL OpenAI 模型名称(例如gpt-3.5-turbogpt-4
OPENAI_API_KEY 您的 OpenAI API 密钥

要使用 Azure OpenAI 终端,请包含以下环境变量

变量
AZURE_OPENAI_ENDPOINT Azure OpenAI REST API 的完整 URL(例如https://YOUR_RESOURCE_NAME.openai.azure.com/openai/deployments/YOUR_DEPLOYMENT_NAME/chat/completions?api-version=2023-05-15
AZURE_OPENAI_API_KEY 您的 Azure OpenAI API 密钥

我们建议通过在项目根目录中创建一个如下所示的.env文件来设置环境变量

# For OpenAI
OPENAI_MODEL=...
OPENAI_API_KEY=...

# For Azure OpenAI
AZURE_OPENAI_ENDPOINT=...
AZURE_OPENAI_API_KEY=...

步骤 4:运行示例

示例可以在typescript/examples目录中找到。

要以交互方式运行示例,请从示例目录中键入node ./dist/main.js并在出现提示时输入请求。键入quitexit以结束会话。您也可以在 VS Code 中打开选定示例的目录,然后按 F5 以调试模式启动它。

请注意,每个src目录中都提供了各种示例“散文”文件(例如input.txt),这些文件可以提供您可以运行的内容的感觉。

要使用其中一个输入文件运行示例,请运行node ./dist/main.js <input-file-path>。例如,在coffeeShop目录中,您可以运行

node ./dist/main.js ./dist/input.txt