@ 拨号/ sdk
预算选择语音会话;文本会话使用快或智能.
公共级别是预算、快速(默认)和智能。 设定 mode: { kind: 'dialt', instructions: 'Help callers.', brain: 'budget' } 在浏览器或预算节点中以3.33分/分(2分/小时)进行快速推理. 它唯一的分级限制是6个符合条件的股票声音,由服务器执行. 见 预算. 遗产 capacity: 'spot' 财务报告和审定财务报表 spot_fallback 的兼容性字段; 新呼叫从不使用已付回扣.
0.50.0版本增加了一等的TypeScript声明,一个无头的Node.js实时进入点和一个生成的HTTP客户端. 0.49.0版本制作 mode.instructions 需要:代理的角色只来自您的指示。 读取 移徙指南 升级前.
用于Dialt的TypeScript和JavaScript SDK. 一个软件包提供浏览器实时,无头节点.js实时和生成的HTTP API客户端.
安装
npm install @dialt/sdk
通过您的应用程序构建使用已安装软件包 。 不要在其中显示一个持续的 API 密钥 浏览器 JavaScript.
峡谷 脚本 SDK 指南 覆盖后端证书 路由, AudioWorklet 资产, 麦克风寿命周期, 输入选择, 事件, 工具, 再连接, 文本模式,节点.js和HTTP操作. 这个 WebSocket 指南 记录电线协议.
实时浏览器
根导出和 @dialt/sdk/browser 等同起来。 他们拥有浏览器麦克风捕获,回声取消和回放.
实验助理中断使用 mode.assistant_interruptions: 'off' | 'pauses' | 'speech',默认为 'off'。在新的单语语音会话上启用一个模式,并提供说明助手应何时中断的指示。 见 助理中断 用于同口生后继限制,声学驳船保护和恢复行为. Node.js使用相同的模式字段.
每届会议 mode.instructions:客户授权的开发者关于应用角色,目标,知识,政策和任务行为的指示. Dialt的平台迅速结合了平台规则,选择了语音指导,并调用事实. new DialtClient() 当指令缺失或空白时丢出, 服务器拒绝这样开始 missing_instructions。 。 。 .
mode.voice 选择带有默认发音/发音和相接语音指导的合成身份; 3; mode.multilingual 选择试验性多语言指导。 既不选择应用程序角色 。 今天没有独立的客户风格,口音,交付或微调控制. 通过生成的文本,快速引导措辞和交付;综合接收该文本和语音/设置,而不是集合的系统即时发送。 开发者指令与平台内容共享已组装的系统信息,因此意向性所有权并不能保证模型服从. 见 即时所有权和控制权限制。 。 。 .
const client = new DialtClient({
apiKey: credential.api_key,
sessionId: credential.session_id,
mode: {
kind: 'dialt',
instructions: 'You are a helpful voice assistant on a phone call. If a request is missing a key detail, ask one concise clarifying question.',
},
});
实时节点.js
Node.js会话是无头的: 您的应用程序发送 16 kHz 单声道并消耗助理 PCM audio 事件。 设定 outputSampleRate 至 8000, 16,000( 默认值) 或 24000; 每个音频事件报告速度为 detail.sr。它只支持WebSocket的实时操作,不主张麦克风、扬声器、回声取消器或WebRTC的执行.
import { DialtSession } from '@dialt/sdk/node';
const session = new DialtSession({
apiKey: credential.api_key,
sessionId: credential.session_id,
outputSampleRate: 24000,
mode: { kind: 'dialt', instructions: 'Help callers with their orders.' },
});
session.addEventListener('audio', ({ detail }) => {
if (detail.samples) play(detail.samples);
});
await session.connect();
await session.streamAudio(inputPcm, { chunkMs: 20 });
session.nowMs() 返回会话的单音节时钟。 对于客户拥有的回合边界,设置 mode.turn_detection 改为 client发送声音,然后呼叫 session.finishInputTurn()。 。 。 . session.sendClientEvent() 发送其他文件 client_event 控制系统.
HTTP API 密码
@dialt/sdk/http 由 Dialt 的 OpenAPI 合同生成。 仅在信任的后端使用持续的 API 密钥 .
import { createClient, listSessions } from '@dialt/sdk/http';
const http = createClient({ auth: process.env.DIALT_API_KEY });
const { data, error } = await listSessions({ client: http, query: { limit: 50 } });
对于确认的同期代理互换,呼叫
await client.handoffAgent({instructions, tools, voice?, context?, operationId?}). SDK 软件
生成 operationId 省略时; 它只与此活请求相关, 而不是重试
符号 。 它解决最终应用或拒绝的确认(可选队列保存)
),并仅在应用程序之后更新再连接重播状态。 在别人面前等待
模式设置器。 在超时或断开时,结果不确定,SDK不重试.
对于主机更新, await client.injectContext(text, { role: 'context', reply: true })
忙碌时立即附加上下文 。 致谢 accepted: true, (中文(简体) ),
reply_started: false,以及 queued: true 表示回复等待下一个闲置边界.
等待更新将合并为一个回复 。 保持不变 messageId 重试时的有效载荷
丢失的确认; 重放的收据描述原始接受。 重置、 转移
拆分和会话结束取消等待的答复 。 用户角色输入保留其繁忙的拒绝.
client.setMicEnabled(false) 打开当前和未来SDK拥有的麦克风音轨而不重启设备. 设置默认启用并持续到 startMic() 财务报告和审定财务报表 stopMic(),输入-设备倒置,获取已经在进行中的获取并重新连接到 setMicEnabled(true) 名为.
在Apache -2.0的许可.
政策指导
定义每条规则一次 mode.policy 与 id, (中文(简体) ), when,以及 do数字 :
{"include_instructions": true, "background_guidance": true,
"rules": [{"id": "supervisor", "when": "The caller requests a supervisor.",
"do": "Call request_supervisor and explain the tool result to the caller."}]}
两种开关都默认为真并独立工作. 通常申报和处理该工具; 现有许可检查仍然适用。 背景检查悄悄地输入关于 被审查的呼叫者或助理转身时没有要求其他答复或执行工具. 源码修订、旗帜更新/检索、出错和完成事件均通过 普通事件界面。 交货不是代理人遵守规定的证据.
政策规则的使用 id, (中文(简体) ), when 财务报告和审定财务报表 do; 遗留动作配置被拒绝. 见
政策合同。 。 。 .
语音选择是可选的,并使用来自 GET /v1/voices明确的声音优先于节省下来的偏好,然后是美国女性(us_female)是共享默认值。 语音线路独立于Dialt Fast或Dialt Smart. 爱尔兰男性保持稳定的钥匙 classic,和电路(circuit仍可选择.
区域关键是 us_female, (中文(简体) ), us_male, (中文(简体) ), british_male, (中文(简体) ), british_female, (中文(简体) ), mexican_female 财务报告和审定财务报表 brazilian_female英国女性和墨西哥女性西班牙女性保留了带有新语言身份的钥匙. southern_us_female 被接受的别名是: us_female将口音从美国南部改为美国通用英语. brazilian_male 被接受的别名是: brazilian_female包括女性自我参考。 异名作为重复的拾取选项不存在;在新集成中使用犬形键.
客户语音调节和语音创建/删除被移除. 以 stock 键替换已保存的有条件的语音密钥 GET /v1/voices,通过 listVoices 内 @dialt/sdk/http续会除非明确改变,否则保留其确认的股票语音身份。 爱尔兰人Male,Chime,Servo,Circuit,阿拉伯语声音和临时Hinglish Male保留了自己的身份. 见 目录和移徙指南。 。 。 .
本地拒绝空密钥; 未知、 已退休或无法使用的密钥返回服务器的
不可重试 invalid_voice 错误。 一个被拒绝的会中开关离开确认
语音不变,包括重新连接。 必须明确更换已退休的密钥.