OpenAI的AgentKit:构建和部署AI智能体的更简单方法

如果你最近一直在关注AI领域,你可能经常会注意到一个新的流行词------智能体。每个人要么正在构建一个智能体,要么在谈论一个智能体,要么试图创建一个真正有效的智能体。

问题何在?从头开始构建一个AI智能体十分困难。你需要管理模型、API、工作流、安全过滤器和UI设置------等你完成时,感觉就像为了运行一个机器人而构建了一个小型操作系统。

按回车键或点击以查看全尺寸图像

OpenAI显然预见到了这一点。他们发布了AgentKit,这是一个简化AI代理的构建、测试和启动的工具包。 将其视为从想法到生产的"简单"方式,而不会迷失在样板代码中。

按回车键或点击以查看全尺寸图像

按回车键或点击以查看全尺寸图像

AgentKit究竟是什么?

简单来说,AgentKit是一个用于开发智能体系统的综合工具包------创建、测试和部署你自己的AI智能体所需的一切,都集成在一个平台上。

它由四个主要部分组成:

  • 智能体构建器 --- 用于构建工作流的可视化编辑器

  • ChatKit --- 一个可以直接集成到您应用程序中的聊天界面

  • 护栏 --- 内置的安全和审核工具

  • 评估 --- 一种测试和提升你的智能体性能的方法

您可以直观地设计您的智能体,将其集成到您的应用程序中,并对其进行微调------所有这些都在同一个生态系统中完成。无需额外设置、缺失配置文件或在十种不同工具之间切换。

按回车键或点击以查看全尺寸图像

步骤1:直观地构建工作流

AgentKit的核心是Agent Builder,这是一个拖放式编辑器,能清晰展示你的智能体是如何思考的。 每个模块(或

节点

)都执行一项功能------一个可能运行模型,另一个可能调用API、存储记忆或做出请求决策。

如果你使用过n8nLangGraphNode-RED等工具,你会立刻明白它的含义。

假设你正在创建一个基本的"作业助手"机器人。你的流程可能如下:[用户问题] → [重新表述] → [搜索笔记] → [生成答案]

在幕后,Agent Builder正在为你处理大量的大语言模型调用。不过,你可以

实时

观察到这一过程。

以下是用普通代码大致呈现的样子:

ini 复制代码
question = input("随便问我点什么: ")
cleaned = model.generate(f"清晰地改写: {question}")
notes = vector_search(cleaned)
answer = model.generate(f"结合上下文回答: {notes}")
print(answer)

与其手动编写,不如直观地连接这些节点,然后点击发布。就是这么简单------您的代理逻辑已准备好运行。

步骤2:使用ChatKit将其添加到您的应用中

一旦你的智能体开始运行,你就会希望人们能够真正与之互动。这正是ChatKit的作用------它是一个可嵌入的聊天界面,能直接接入你的工作流程。

你添加几行代码,将其连接到你的代理,然后它就可以上线运行了。

在您的服务器上生成客户端令牌。

此代码片段初始化一个FastAPI服务,该服务仅使用OpenAI Python SDK创建一个新的ChatKit会话,并返回该会话的客户端密钥。

python 复制代码
from fastapi import FastAPI
from pydantic import BaseModel
from openai import OpenAI
import os

app = FastAPI()
openai = OpenAI(api_key=os.environ["OPENAI_API_KEY"])

@app.post("/api/chatkit/session")
def create_chatkit_session():
    session = openai.chatkit.sessions.create({
      #...
    })
    return { client_secret: session.client_secret }

按回车键或点击以查看全尺寸图像

在您的服务器端代码中,将您的工作流 ID 和密钥提供给会话端点。请参阅GitHub 上的 chatkit-js 仓库

javascript 复制代码
导出默认异步函数 getChatKitSessionToken(
设备ID: 字符串
): Promise<字符串> {
常量响应 = await fetch("https://api.openai.com/v1/chatkit/sessions", {
    方法: "POST",
    头部: {
    "Content-Type": "application/json",
    "OpenAI-Beta": "chatkit_beta=v1",
    授权: "Bearer " + process.env.VITE_OPENAI_API_SECRET_KEY,
    },
    主体: JSON.stringify({
    工作流: { ID: "wf_68df4b13b3588190a09d19288d4610ec0df388c3983f58d1" },
    用户: 设备ID,
    }),
});

const { client_secret } = await response.json();

return client_secret;
}

在你的项目目录中,安装 ChatKit React 绑定。

npm install @openai/chatkit-react

将 ChatKit JS 脚本添加到您的页面。将此代码片段插入到您页面的部分或您加载脚本的任何位置,浏览器将为您获取并运行 ChatKit。

xml 复制代码
<script
src="https://cdn.platform.openai.com/deployments/chatkit/chatkit.js"
async
></script>

将 ChatKit 集成到您的 UI 中。此代码从您的服务器获取客户端密钥,并挂载一个连接到您后端工作流程的实时聊天小部件。

javascript 复制代码
import { ChatKit, useChatKit } from '@openai/chatkit-react';
export function MyChat() {
const { control } = useChatKit({
api: {
async getClientSecret(existing) {
if (existing) {
// implement session refresh
}
const res = await fetch('/api/chatkit/session', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
},
});
           const { client_secret } = await res.json();
           return client_secret;
         },
       },
     });

     return <ChatKit control={control} className="h-[600px] w-[320px]" />;
   }

它能自动处理历史记录、文件上传、工具调用,甚至主题。 在进行原型设计时,你可以自定义外观以匹配你的品牌,也可以保留OpenAI的默认风格。

按回车键或点击以查看全尺寸图像

步骤3:通过评估进行测试和改进

一旦你的智能体上线,下一个问题就是

:它真的好吗?

这就是伊凡斯的用武之地。 这就像你的AI自动分级。

您可以针对数据集或示例对话运行您的智能体,然后使用评分器(脚本或模型)来评估其表现如何。

以下是一个简单的 TypeScript 示例:

php 复制代码
import OpenAI from "openai";

const client = new OpenAI();

const run = await client.evals.create({
  name: "knowledge-assistant-regression",
  data_source: {
      type: "responses",
      filter: {
          project_ids: ["proj_123"],
          prompt_ids: ["pmpt_456"],
      },
  },
  graders: [
      {
          type: "score_model",
          model: "gpt-4.1-mini",
          rubric: "Score from 1-5 based on factual accuracy.",
      },
  ],
});

你可以运行多个评估器------一个检查事实准确性,另一个检查语气或安全性。这本质上是用于AI 质量的CI/CD

内置安全防护栏

OpenAI做出的最明智的举措之一是将护栏直接嵌入到AgentKit中。 这些护栏会自动处理输入和输出过滤,从而保护你的系统免受提示注入、数据泄露或离题响应的影响。

因此,当您的代理在野外运行时,它可以保持安全可靠,无需持续的人工监管。

大局观

AgentKit围绕一个理念构建:AI智能体的构建不应困难

以下是快速概要:

lua 复制代码
|你所做的   |工具|处理的内容|
| ------------- | ------------- | -------------------------------- |
|设计逻辑|智能体构建器|可视化工作流创建|
|在应用中启动|ChatKit|聊天界面和部署    |
|测试质量|评估|性能跟踪和评分|

从创意到发布再到性能检查,您可以始终在OpenAI生态系统内完成所有工作。无需切换上下文,也没有混乱的脚本。

相关推荐
逐星ing4 小时前
【AIGC】语音识别ASR:火山引擎大模型技术实践
aigc·语音识别·火山引擎
中等生4 小时前
深入理解 MCP 的三种传输方式
aigc·mcp
深空数字孪生6 小时前
从代码实现到概念创新:AIGC如何重塑数据可视化的价值链条?
信息可视化·aigc
猫头虎6 小时前
OpenAI发布构建AI智能体的实践指南:实用框架、设计模式与最佳实践解析
人工智能·设计模式·开源·aigc·交互·pip·ai-native
Mintopia6 小时前
⚡ AI 时代,全栈 Next.js 开发的激情在哪里?
前端·aigc·全栈
DisonTangor7 小时前
Lumina-DiMOO:用于多模态生成与理解的全扩散大语言模型
人工智能·语言模型·自然语言处理·ai作画·aigc
DevYK7 小时前
企业级Agent开发教程(四) 基于 MongoDB 实现持久化记忆缓存
langchain·agent
机器之心8 小时前
具身智能迎来ImageNet时刻:RoboChallenge开放首个大规模真机基准测试集
人工智能·openai
Mintopia8 小时前
🌌 知识图谱与 AIGC 融合:
前端·javascript·aigc