当前位置: 首页 > news >正文

2024年OpenAI DevDay发布实时 API、提示缓存等新功能

就在几天前,一些重要人物如前 CTO Mira Murati 离开了 OpenAI。因此,看到 Sam Altman 在 DevDay 上登台,讨论开发者的新产品,感觉有点奇怪。

随着公司内部的这些变化,你不禁会想:我们还应该信任他吗?

但这不是重点。让我们先把这些戏剧性事件放在一边,看看 Dev Day 的真正主题——OpenAI 刚刚为开发者宣布的新工具。

尽管领导层的变动令人担忧,但显然公司仍在向前推进。事实上,这次活动中有许多值得细细探讨的进展。

如果你错过了去年的 DevDay 2023,这里是自那时以来的一些最新进展:

  • 从 GPT-4 到 4o mini,每个 token 的成本下降了 98%

  • 系统中的 token 处理量增加了 50 倍

  • 显著的模型智能进展

实时 API(Realtime API)

DevDay 2024 的亮点无疑是实时 API

这个 API 使开发者能够在其应用程序中构建低延迟、多模态的对话功能,支持文本、音频以及函数调用。

以下是一个调用 API 的 javascript 示例代码。

const event = {type: 'conversation.item.create',item: {type: 'message',role: 'user',content: [{type: 'input_text',text: 'Hey, how are you doing?'}]}
};
ws.send(JSON.stringify(event));
ws.send(JSON.stringify({type: 'response.create'}));

那么,为什么开发者应该关心这个呢?

  1. 原生语音到语音: 不经过文本中介,意味着低延迟和更细腻的输出。

  2. 自然且可引导的语音: 模型具有自然的语调,能表现出笑声、低语等,并能遵循语气指引。

  3. 同时输出多模态: 文本对内容审核有用,而比实时更快的音频确保了稳定的播放。

现在,数千名开发者可以将这一功能集成到他们的应用中,开启了语音驱动应用的新潮流。

看看一些有机会提前体验实时 API 的开发者分享的产品示例:
在这里插入图片描述

“结果是,我们的学习者体验更加个性化和有帮助!今天,我们宣布推出 Live Roleplays,这是一种结合实时 API 和我们的学习引擎的新 Speak 体验,能够在各种角色扮演场景中提供沉浸式的口语练习。” —Andrew Hsu

以下是实时 API 的定价信息:

  • 文本输入:每 100 万个 token 5 美元

  • 文本输出:每 100 万个 token 20 美元

  • 音频输入:每 100 万个 token 100 美元(约每分钟 0.06 美元)

  • 音频输出:每 100 万个 token 200 美元(约每分钟 0.24 美元)

提示缓存(Prompt Caching)

接下来介绍的是提示缓存,这项功能显著减少了处理重复提示所需的成本和时间。

OpenAI 现在将把 API 请求路由到最近处理过相同或相似提示的服务器,这意味着你可以跳过重复的计算。对于处理长提示或复杂提示且经常重复使用的开发者来说,这项功能特别有用。

此功能可将长提示的延迟减少多达 80%,成本降低 50%。

提示缓存并不是一个全新的概念。事实上,Anthropic不久前推出了一个类似功能,允许开发者缓存经常使用的上下文,最多可减少 90% 的成本。

OpenAI 的提示缓存适用于以下模型:

  • gpt-4o

  • gpt-4o-mini

  • o1-preview

  • o1-mini

当你发出 API 请求时,流程如下:
在这里插入图片描述

  1. 缓存查找:系统检查你的提示的初始部分(前缀)是否已被缓存。

  2. 缓存命中:如果找到了匹配的前缀,系统将使用缓存结果。这显著减少了延迟并降低了成本。

  3. 缓存未命中:如果没有匹配的前缀,系统将处理你的完整提示。处理完成后,提示的前缀会被缓存以备将来使用。

这些缓存的前缀最多可以存储 10 分钟。但在非高峰期,缓存可能会持续长达一小时。

提示缓存的定价如下:

在这里插入图片描述

视觉微调(Vision Fine-Tuning)

DevDay 上另一个重要的新功能是视觉微调

此功能允许用户在 JSONL 文件中使用图像和文本来微调模型。这为不仅依赖文本输入,还可以利用视觉数据训练模型提供了可能性。

以下是 JSONL 文件中一行图像消息的示例。为了方便阅读,JSON 对象已展开,但通常情况下该 JSON 会出现在数据文件的单行中:

{"messages": [{ "role": "system", "content": "You are an assistant that identifies uncommon cheeses." },{ "role": "user", "content": "What is this cheese?" },{ "role": "user", "content": [{"type": "image_url","image_url": {"url": "https://upload.wikimedia.org/wikipedia/commons/3/36/Danbo_Cheese.jpg"}}] },{ "role": "assistant", "content": "Danbo" }]
}

那么,这有什么用呢?
OpenAI 与Grab等领先科技公司合作,展示了视觉微调在现实应用中的强大功能。Grab 是一家主要的食品配送和网约车服务公司,使用此功能提升了其GrabMaps平台的性能。该平台依赖于从司机收集的街道级图像来支持东南亚的运营。

通过使用 100 个样例微调GPT-4o,Grab 提升了识别交通标志和车道分隔线的能力。
在这里插入图片描述

结果是车道计数准确性提高了 20%,速度限制标志定位精度提高了 13%,简化了其地图绘制流程,减少了人工干预的需求。

*注意:您的训练图像不得包含人物、面部、验证码或违反我们使用条款的图像。*包含这些图像的数据集将被自动拒绝。

关于定价问题,OpenAI 目前提供每天 100 万个训练 token 的免费额度,时间截止到 2024 年 10 月 31 日,以用于通过图像微调 GPT-4o。

2024 年 10 月 31 日之后,GPT-4o 微调训练的费用为每 100 万个 token 25 美元,推理费用为每 100 万个输入 token 3.75 美元,每 100 万个输出 token 15 美元。

图像输入首先根据图像大小进行 token 化,然后按照与文本输入相同的 token 费率定价。

谈谈安全问题

尽管这些新功能很酷,但它们确实带来了安全隐患,尤其是实时 API。

我们正接近一个假电话可能与真实电话难以区分的世界。想象一下,你接到了一个听起来完全像你的老板或家人的电话,结果却发现那是 AI 的冒充。

不难想象恶意分子如何滥用这项技术。

事实上,几天前,联邦通信委员会罚款一名政治顾问 600 万美元,原因是他今年早些时候使用 AI 模拟乔·拜登总统的声音进行自动电话。

为了避免滥用,OpenAI 的 API 不能直接拨打餐馆或商店的电话。然而,AI 没有公开声明自己不是人类,因此很难确定你是否在与 AI 对话。目前,似乎开发者有责任添加某种类型的声明。

OpenAI 尝试缓解这些风险。对于语音交互,OpenAI 使用了一种音频安全基础设施,已被证明在最小化潜在滥用方面非常有效,尤其是防止被用于欺骗性目的,如误导电话或声音操纵。

关于视觉微调,微调后的模型完全由用户控制,确保了商业数据的完全所有权。OpenAI 不会在未经明确许可的情况下使用任何用于微调的输入或输出来训练模型,确保数据保持私密和安全。

最终思考

今天宣布了很多内容,但让我印象最深刻的是实时 API。

本质上,这是 ChatGPT 高级语音模式的 API 版本,我预计在未来几周内会有数百款基于该语音 API 的应用程序出现。

据 OpenAI 称,目前已有超过 300 万开发者正在利用其技术构建新应用和功能。

这些新宣布的产品,尤其是实时语音 API,可能有助于扩大这一关键用户群体并增加 OpenAI 的收入。

目前尚不清楚这些 API 在现实应用中有多直观或多具成本效益。

我计划构建一些概念验证(PoC)应用程序来测试它们,并将在后续帖子中分享我的发现。在此之前,我很想听听你对今年 DevDay 的看法。

哪一项产品发布让你最兴奋?请在评论中告诉我!

相关文章:

2024年OpenAI DevDay发布实时 API、提示缓存等新功能

就在几天前,一些重要人物如前 CTO Mira Murati 离开了 OpenAI。因此,看到 Sam Altman 在 DevDay 上登台,讨论开发者的新产品,感觉有点奇怪。 随着公司内部的这些变化,你不禁会想:我们还应该信任他吗&#…...

Raspberry Pi3B+之安装bookworm+Rpanion系统

Raspberry Pi3B之安装bookwormRpanion系统 1. 源由2. 系统安装3. 系统安装3.1 烧录系统3.2 设备接线3.3 配置无线3.4 更新系统3.5 安装git3.6 克隆Rpanion3.7 安装Rpanion 4. 系统管理5. 附录问题1:error: externally-managed-environment问题2:bookworm…...

无人机专业除理论外,飞手执照、组装、调试实操技术详解

无人机专业的学习除了丰富的理论知识外,飞手执照的获取、无人机的组装与调试等实操技术也是至关重要的。以下是对这些方面的详细解析: 一、无人机飞手执照 1. 必要性 法规要求:根据《民用无人驾驶航空器系统驾驶员管理暂行规定》等相关法规…...

【网路通信基础与实践番外二】TCP协议的流量控制和拥塞控制以及二者区别和例题

TCP协议是端对端的协议,因此在数据进行传输的过程受发送方,数据通道,接收方三方状态的影响。我们用水龙头来比喻数据发送方,水管来比喻数据通道,水桶来表示数据接收方。 图(a)表示水桶太小,来不及接受注入…...

SpringBoot3+Vue3开发后台管理系统脚手架

后台管理系统脚手架 介绍 在快速迭代的软件开发世界里,时间就是生产力,效率决定成败。对于构建复杂而庞大的后台系统而言,一个高效、可定制的后台脚手架(Backend Scaffold)无疑是开发者的得力助手。 脚手架 后台脚…...

OpenFeign微服务部署

一.开启nacos 和redis 1.查看nacos和redis是否启动 docker ps2.查看是否安装nacos和redis docker ps -a3.启动nacos和redis docker start nacos docker start redis-6379 docker ps 二.使用SpringSession共享例子 这里的两个例子在我的一个博客有创建过程&#xff0c…...

【C语言】数组(下)

【C语言】数组(下) 6、二维数组的创建6.1二维数组的概念6.2二维数组的创建 7、二维数组的初始化7.1不完全初始化7.2完全初始化7.3按照行初始化7.4初始化时可以省略行,但是不能省略列 8、二维数组的使用8.1 二维数组的下标8.2二维数组的输入和…...

cGANs with Projection Discriminator

基于映射鉴别器的CGAN 模型中,判别器(Discriminator)不是通过将条件信息简单地与特征向量拼接(concatenate)来使用条件信息,而是采用一种基于投影的方式,这种方式更加尊重条件信息在底层概率模…...

mysql学习教程,从入门到精通,SQL HAVING 子句(32)

1、SQL HAVING 子句 当然!HAVING 子句在 SQL 中用于对分组后的结果进行过滤。它通常与 GROUP BY 子句一起使用,以便对聚合函数(如 SUM(), COUNT(), AVG(), MAX(), MIN() 等)的结果进行条件筛选。 以下是一个示例,假设…...

JavaScript while循环语句

While语句包括一个循环条件和一段代码块&#xff0c;只要条件为真&#xff0c;就不断循环执行代码块。 while(条件){语句;} var i0;while(i<100){console.log(i);i1;} 注意&#xff1a;所有的for循环都可以改写为while循环...

49天精通Java(Day 2):Java的基本语法

上期内容回顾 在上一期的内容中&#xff0c;我们介绍了Java的基本概念、历史背景&#xff0c;并完成了JDK 1.8的安装与环境配置。你还编写并运行了第一个简单的Java程序“Hello, World!”。今天&#xff0c;我们将深入探讨Java的基本语法&#xff0c;包括变量、数据类型、运算…...

uni-app之旅-day01-home页

首页 3.0 创建 home 分支 &#x1f355;&#x1f355;&#x1f355;运行如下的命令&#xff0c;基于 master 分支在本地创建 home 子分支&#xff0c;用来开发和 home 首页相关的功能git branch(查看分支)git checkout -b home(创建home分支) 3.1 配置网络请求 &#x1f32…...

Vue3轻松实现导出Excel文件功能

文章目录 1.前言2.安装插件3.案例3.1 定义表格数据,设置 id 选择器3.2 据所选 dom 对象生成 sheetbook3.3 写入文件3.4 生成 xlsx文件4.完整代码1.前言 前端常用的导出 Excel的 js 库是 xlsx,但是 xlsx不能设置样式。要想设置样式,必要要结合 xlsx-style 插件一起使用,但是…...

在Kali Linux中使用VNC和iptables配置xrdp以实现远程连接

在Kali Linux中&#xff0c;使用VNC和iptables配置xrdp以实现远程连接涉及几个步骤。不过&#xff0c;值得注意的是&#xff0c;VNC和xrdp是两种不同的远程桌面协议&#xff0c;它们通常不会在同一配置中同时使用&#xff08;除非有特殊的网络架构需求&#xff09;。然而&#…...

小徐影院:Spring Boot技术下的影院革新

第四章 系统设计 4.1 系统的功能结构图 通过系统需求分析&#xff0c;本小徐影城管理系统的功能结构设计如图4-1所示&#xff1a; 图4-1 系统功能图 4.2 系统数据库设计 4.2.1 数据库E-R图 在该系统的信息中&#xff0c;由于数据库的支持&#xff0c;我们可以对数据库进行收集…...

命名空间

在 C 中&#xff0c;变量、函数和类都是大量存在的&#xff0c;这些变量、函数和类的名称将都存在于全局作用域中&#xff0c;可能会导致很多冲突&#xff0c;使用命名空间的目的是对标识符的名称进行本地化&#xff0c;以避免命名冲突或名字污染&#xff0c;namespace 关键字的…...

使用 Elastic 将 AI 摘要添加到你的网站

作者&#xff1a;来自 Elastic Gustavo Llermaly 我们目前所知道的搜索&#xff08;搜索栏、结果、过滤器、页面等&#xff09;已经取得了长足的进步&#xff0c;并实现了多种不同的功能。当我们知道找到所需内容所需的关键字或知道哪些文档包含我们想要的信息时&#xff0c;尤…...

dOOv:Java 数据验证与映射库(简化业务逻辑)

dOOv 是一个为 Java 开发人员设计的轻量化库&#xff0c;专注于数据验证和对象间的映射。与传统的验证框架不同&#xff0c;dOOv 通过提供简洁、声明式的 API&#xff0c;使得开发者可以轻松地编写、扩展和维护验证和映射规则。其设计灵感源自领域驱动设计&#xff08;DDD&…...

Arthas sc(查看JVM已加载的类信息 )

文章目录 二、命令列表2.2 class/classloader相关命令2.2.5 sc&#xff08;查看JVM已加载的类信息 &#xff09;举例1&#xff1a;模糊搜索&#xff0c;xx包下所有的类举例2&#xff1a;打印类的详细信息举例3&#xff1a;打印出类的Field信息 本人其他相关文章链接 二、命令列…...

OCR 行驶证识别 离线识别

目录 正页识别 副页识别 全部识别 OCR 行驶证识别 离线识别 正页识别 副页识别 全部识别...

KubeSphere 容器平台高可用:环境搭建与可视化操作指南

Linux_k8s篇 欢迎来到Linux的世界&#xff0c;看笔记好好学多敲多打&#xff0c;每个人都是大神&#xff01; 题目&#xff1a;KubeSphere 容器平台高可用&#xff1a;环境搭建与可视化操作指南 版本号: 1.0,0 作者: 老王要学习 日期: 2025.06.05 适用环境: Ubuntu22 文档说…...

C++_核心编程_多态案例二-制作饮品

#include <iostream> #include <string> using namespace std;/*制作饮品的大致流程为&#xff1a;煮水 - 冲泡 - 倒入杯中 - 加入辅料 利用多态技术实现本案例&#xff0c;提供抽象制作饮品基类&#xff0c;提供子类制作咖啡和茶叶*//*基类*/ class AbstractDr…...

React Native在HarmonyOS 5.0阅读类应用开发中的实践

一、技术选型背景 随着HarmonyOS 5.0对Web兼容层的增强&#xff0c;React Native作为跨平台框架可通过重新编译ArkTS组件实现85%以上的代码复用率。阅读类应用具有UI复杂度低、数据流清晰的特点。 二、核心实现方案 1. 环境配置 &#xff08;1&#xff09;使用React Native…...

django filter 统计数量 按属性去重

在Django中&#xff0c;如果你想要根据某个属性对查询集进行去重并统计数量&#xff0c;你可以使用values()方法配合annotate()方法来实现。这里有两种常见的方法来完成这个需求&#xff1a; 方法1&#xff1a;使用annotate()和Count 假设你有一个模型Item&#xff0c;并且你想…...

基于数字孪生的水厂可视化平台建设:架构与实践

分享大纲&#xff1a; 1、数字孪生水厂可视化平台建设背景 2、数字孪生水厂可视化平台建设架构 3、数字孪生水厂可视化平台建设成效 近几年&#xff0c;数字孪生水厂的建设开展的如火如荼。作为提升水厂管理效率、优化资源的调度手段&#xff0c;基于数字孪生的水厂可视化平台的…...

新能源汽车智慧充电桩管理方案:新能源充电桩散热问题及消防安全监管方案

随着新能源汽车的快速普及&#xff0c;充电桩作为核心配套设施&#xff0c;其安全性与可靠性备受关注。然而&#xff0c;在高温、高负荷运行环境下&#xff0c;充电桩的散热问题与消防安全隐患日益凸显&#xff0c;成为制约行业发展的关键瓶颈。 如何通过智慧化管理手段优化散…...

用docker来安装部署freeswitch记录

今天刚才测试一个callcenter的项目&#xff0c;所以尝试安装freeswitch 1、使用轩辕镜像 - 中国开发者首选的专业 Docker 镜像加速服务平台 编辑下面/etc/docker/daemon.json文件为 {"registry-mirrors": ["https://docker.xuanyuan.me"] }同时可以进入轩…...

Spring数据访问模块设计

前面我们已经完成了IoC和web模块的设计&#xff0c;聪明的码友立马就知道了&#xff0c;该到数据访问模块了&#xff0c;要不就这俩玩个6啊&#xff0c;查库势在必行&#xff0c;至此&#xff0c;它来了。 一、核心设计理念 1、痛点在哪 应用离不开数据&#xff08;数据库、No…...

rnn判断string中第一次出现a的下标

# coding:utf8 import torch import torch.nn as nn import numpy as np import random import json""" 基于pytorch的网络编写 实现一个RNN网络完成多分类任务 判断字符 a 第一次出现在字符串中的位置 """class TorchModel(nn.Module):def __in…...

sipsak:SIP瑞士军刀!全参数详细教程!Kali Linux教程!

简介 sipsak 是一个面向会话初始协议 (SIP) 应用程序开发人员和管理员的小型命令行工具。它可以用于对 SIP 应用程序和设备进行一些简单的测试。 sipsak 是一款 SIP 压力和诊断实用程序。它通过 sip-uri 向服务器发送 SIP 请求&#xff0c;并检查收到的响应。它以以下模式之一…...