先决条件和如何获得帮助
所有计划,甚至是免费计划,都可以访问API (应用程序编程接口),使您可以通过代码以编程方式使用我们的技术及其全部功能。API是使用DUIX或任何其他服务的应用程序所依赖的基本组件。在本节中,我们将提供一个相当简洁的概述,说明如何使用API向端点发出请求,创建我们的第一个DUIX会话。值得注意的是,网站只是API的前端。因此,如果您体验会话demo或使用代码直接调用API,则在相同设置下,质量或输出应该没有差异。但是,仍然是非确定性的,因此生成的输出的交付可能会有所不同。 DUIX ONE-Omni版API调用连接会话需要消耗token。因此,如果您的帐户中有20万个token,并且您创建了会话,使用API调用会话时需要消耗对应的token。 DUIX ONE-Lite版API调用连接会话需要您已在OpenAPI平台获取GPT4o-realtime的Key,设置后可用通过API调用会话进行验证。 为了方便你使用,可以先去选购计划 (opens new window),或者你可以先使用限时免费体验的额度去验证流程。鉴于API的广泛性和几乎无限的可能性,我们将做一个非常快速的概述,并展示一些例子,让你可以快速运行。
开始使用DUIX API生成您的第一个对话
为了使用我们的DUIX ONE SDK,首先你需要创建一个GUIJI.CN帐户,点击这里去创建 (opens new window)。
登录成功后,点击左侧菜单【创建会话】页面创建你的第一个会话,你还可以选择自己喜欢的数字人 、声音 、背景,可以选择想使用的大模型及要创建的会话语言;若是您选择DUIX ONE-Omni大模型,还可以设置开场白,设置后在开始对话时数字人会先主动开始说话。若是您选择DUIX ONE-Lite大模型,需设置key,方能创建会话。
点击下一步可获取app id和app key及Conversation id,点击”复制“图标复制成功后可取粘贴使用。不要把你的app key给其他人。如果有人获得了您的访问权限app key,他们可以像使用您的密码一样使用您的帐户。
最后,会话创建成功后,就可以去开始对接API及SDK进行运行查看效果啦,可以参考API文档 (opens new window)
如何向我们的API验证您的请求。
如果你不是第一次使用DUIX ONE或者你想创建更多应用,点击左侧【账户】菜单,然后单击【API管理-->我的密钥】去你查看更多或创建新应用。
单击创建新应用,设置应用名称后,即可创建一个新的应用,点击复制时,去粘贴到文档中可查看您的app id和app key。
注意:不要显示你的app-key给其他人。如果有人获得了您的访问权限app-key,他们可以像使用您的密码一样使用您的帐户。
如若你使用的是lite版本,需要设置GPT4o的keys,点击【设置GPT4o】keys弹出输入设置即可;
访问令牌(Token)是调用DUIX ONE交互服务的服务鉴权凭证。所有的HTTP调用接口都需要将Token放入Header头中。
下面介绍获取访问令牌的方法。
已获取appKey和appId,可在创建的API Keys中获取。。 操作步骤 1、通过appKey和appId生成签名。 2、使用签名作为调用h5 sdk的init方法的入参。
签名使用的是JWT机制,用户可以参照下述完成签名
签名生成需要准备以下参数
名称 | 类型 | 描述 | 示例 |
---|---|---|---|
appId | string | 会话标识,会话创建成功后获取 | xxxxxxx |
appKey | string | 会话密钥,会话创建成功后获取 | xxxxxxx |
sigExp | Integer | 签名有效时间,单位秒 | 1800 |
签名的示例代码如下,Java版示例
引入pom依赖
<dependency>
<groupId>com.auth0</groupId>
<artifactId>java-jwt</artifactId>
<version>3.8.3</version>
</dependency>
import com.auth0.jwt.JWT;
import com.auth0.jwt.algorithms.Algorithm;
import java.util.Calendar;
import java.util.Date;
public class SigUtils {
/**
* 创建签名
*
* @param appId 会话标识
* @param appKey 会话密钥
* @param sigExp 签名有效时间:单位秒
* @return
*/
public static String createSig(String appId, String appKey, int sigExp) {
Calendar nowTime = Calendar.getInstance();
nowTime.add(Calendar.SECOND, sigExp);
Date expiresDate = nowTime.getTime();
return JWT.create()
//发行时间
.withIssuedAt(new Date())
//有效时间
.withExpiresAt(expiresDate)
//载荷
.withClaim("appId", appId)
//加密
.sign(Algorithm.HMAC256(appKey));
}
}
** 注意:此签名(Token)即H5 SDK的sign
根据以上几个步骤获取的AppID,秘钥和Token,就可以通过SDK和API概览详细了解在各类平台如何将DUIX ONE集成到您的服务当中。