/* =========================
Speak – Structured Outputs (page-scoped)
– Same layout pattern as Voice Agents page
– Minimal CSS: relies on global tokens + btn-* classes
========================= */
.sp-structured-outputs{
–sp-text: var(–bodyText, #0f172a);
–sp-muted: var(–bodyMuted, #475569);
–sp-light: var(–bodyLight, #64748b);
–sp-border: var(–border, #e5e7eb);
–sp-soft: var(–soft, #f8fafc);
–sp-shadow: var(–shadowMd, 0 10px 30px rgba(0,0,0,.06));
–sp-radius: 14px;
–sp-focus: 0 0 0 3px rgba(37, 99, 235, .22);
color: var(–sp-text);
font-family: var(–fontBody, system-ui, -apple-system, BlinkMacSystemFont, “Segoe UI”, Roboto, Arial, sans-serif);
}
.sp-structured-outputs *{ box-sizing:border-box; }
.sp-structured-outputs section{ padding: clamp(2.75rem, 5.5vw, 4.75rem) 1.25rem; }
.sp-structured-outputs .sp-container{ max-width: 1180px; margin: 0 auto; }
.sp-structured-outputs .sp-kicker{
font-size:.85rem; font-weight:650; color:var(–sp-muted);
letter-spacing:.05em; text-transform:uppercase; margin:0 0 .6rem;
}
.sp-structured-outputs h1{
font-family: var(–fontHeading, inherit);
font-size: clamp(2.05rem, 4.2vw, 3.05rem);
line-height: 1.06;
margin: 0 0 1rem;
letter-spacing: -0.02em;
}
.sp-structured-outputs h2{
font-family: var(–fontHeading, inherit);
font-size: clamp(1.55rem, 2.6vw, 2.05rem);
line-height: 1.15;
margin: 0 0 1rem;
letter-spacing: -0.01em;
}
.sp-structured-outputs .sp-lead{
font-size: 1.1rem;
color: var(–sp-muted);
line-height: 1.55;
max-width: 920px;
margin: 0;
}
.sp-structured-outputs a{ color: inherit; }
.sp-structured-outputs a:not(.elementor-button):not(.elementor-button-link):not([role=”button”]){
text-decoration: underline;
text-underline-offset: 3px;
}
.sp-structured-outputs a.elementor-button,
.sp-structured-outputs a.elementor-button:hover{ text-decoration:none !important; }
/* Hero */
.sp-structured-outputs .sp-hero{ background:#fff; border-bottom:1px solid var(–sp-border); }
.sp-structured-outputs .sp-hero-grid{
display:grid;
grid-template-columns: 1.1fr .9fr;
gap: 1.75rem;
align-items:start;
}
@media (max-width: 920px){
.sp-structured-outputs .sp-hero-grid{ grid-template-columns: 1fr; }
}
.sp-structured-outputs .sp-cta-row{
display:flex; flex-wrap:wrap; gap:.75rem;
margin-top: 1.35rem; align-items:center;
}
.sp-structured-outputs .sp-trial{
margin-top:.85rem; color:var(–sp-muted);
font-size:.9rem; line-height:1.45;
}
.sp-structured-outputs .sp-trial b{ color:var(–sp-text); font-weight:650; }
.sp-structured-outputs .sp-hero-side{
border:1px solid var(–sp-border);
border-radius: var(–sp-radius);
background: var(–sp-soft);
padding: 1.15rem 1.15rem 1.25rem;
box-shadow: var(–sp-shadow);
}
.sp-structured-outputs .sp-hero-side h3{
margin:0 0 .65rem;
font-size:1rem; font-weight:700; letter-spacing:-0.01em;
}
.sp-structured-outputs .sp-mini-list{
margin:0; padding-left: 1.1rem;
color:var(–sp-muted); line-height:1.55; font-size:.95rem;
}
.sp-structured-outputs .sp-mini-list li{ margin:.25rem 0; }
.sp-structured-outputs .sp-pills{ display:flex; flex-wrap:wrap; gap:.5rem; margin-top:1rem; }
.sp-structured-outputs .sp-pill{
display:inline-flex; align-items:center; gap:.45rem;
padding:.35rem .75rem; border-radius:999px;
border:1px solid var(–sp-border); background:#fff;
font-size:.82rem; color:var(–sp-muted); white-space:nowrap;
}
/* Code snippet */
.sp-structured-outputs .sp-code{
background:#0b1220; color:#e5e7eb;
border-radius:14px; padding:14px; overflow:auto;
font-size:13px; line-height:1.55;
border:1px solid rgba(255,255,255,.08);
margin-top: .9rem;
}
.sp-structured-outputs .sp-code code{ color:inherit; }
.sp-structured-outputs .sp-code__row{
display:flex; align-items:center; justify-content:space-between;
gap:10px; margin:0 0 10px 0;
}
.sp-structured-outputs .sp-code__label{
font-size:12px; letter-spacing:.02em;
text-transform:uppercase; opacity:.9; font-weight:700;
}
.sp-structured-outputs .sp-copybtn{
background:rgba(255,255,255,.08);
border:1px solid rgba(255,255,255,.14);
color:#fff; border-radius:12px;
padding:8px 10px; cursor:pointer;
font-weight:700; font-size:12px;
}
.sp-structured-outputs .sp-copybtn:hover{ background:rgba(255,255,255,.12); }
/* Sections */
.sp-structured-outputs .sp-section-alt{
background: var(–sp-soft);
border-top:1px solid var(–sp-border);
border-bottom:1px solid var(–sp-border);
}
/* Trust */
.sp-structured-outputs .sp-trust{
padding-top: clamp(1.8rem, 3vw, 2.5rem);
padding-bottom: clamp(1.8rem, 3vw, 2.5rem);
background:#fff;
border-bottom:1px solid var(–sp-border);
}
.sp-structured-outputs .sp-trust-pill{
display:inline-block;
background: var(–sp-soft);
border:1px solid var(–sp-border);
padding:.35rem .75rem;
border-radius:999px;
font-size:.85rem;
color:var(–sp-muted);
}
.sp-structured-outputs .sp-trust-pill b{ color:var(–sp-text); font-weight:700; }
.sp-structured-outputs .sp-logo-grid{
display:grid;
grid-template-columns: repeat(6, minmax(0, 1fr));
gap: 1rem;
align-items:center;
margin-top: 1.15rem;
}
@media (max-width: 1020px){
.sp-structured-outputs .sp-logo-grid{ grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (max-width: 560px){
.sp-structured-outputs .sp-logo-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
.sp-structured-outputs .sp-logo{
display:flex; align-items:center; justify-content:center;
padding:.6rem .5rem; border-radius: 12px;
border:1px solid transparent;
}
.sp-structured-outputs .sp-logo img{
max-height:42px; width:auto;
filter: grayscale(1); opacity:.78;
transition: all .18s ease;
}
.sp-structured-outputs .sp-logo:hover{
border-color: var(–sp-border);
background: var(–sp-soft);
}
.sp-structured-outputs .sp-logo:hover img{ filter:none; opacity:1; }
.sp-structured-outputs .sp-metrics{
display:grid;
grid-template-columns: repeat(4, minmax(0,1fr));
gap: 1rem;
margin-top: 1.25rem;
}
@media (max-width: 980px){
.sp-structured-outputs .sp-metrics{ grid-template-columns: repeat(2, minmax(0,1fr)); }
}
.sp-structured-outputs .sp-metric{
background:#fff;
border:1px solid var(–sp-border);
border-radius: var(–sp-radius);
padding: 1.05rem 1.1rem;
box-shadow: var(–sp-shadow);
}
.sp-structured-outputs .sp-metric b{
display:block;
font-size:1.15rem;
letter-spacing:-0.01em;
margin-bottom:.25rem;
}
.sp-structured-outputs .sp-metric span{
color:var(–sp-muted);
font-size:.9rem;
line-height:1.35;
display:block;
}
/* Cards */
.sp-structured-outputs .sp-grid{
display:grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 1.15rem;
margin-top: 1.25rem;
}
@media (max-width: 980px){
.sp-structured-outputs .sp-grid{ grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 620px){
.sp-structured-outputs .sp-grid{ grid-template-columns: 1fr; }
}
.sp-structured-outputs .sp-card{
background:#fff;
border:1px solid var(–sp-border);
border-radius: var(–sp-radius);
padding: 1.25rem 1.25rem 1.15rem;
box-shadow: var(–sp-shadow);
display:flex;
flex-direction:column;
min-height: 190px;
}
.sp-structured-outputs .sp-ic{
width:38px; height:38px;
border-radius:12px;
border:1px solid var(–sp-border);
background: var(–sp-soft);
display:flex;
align-items:center;
justify-content:center;
margin-bottom:.9rem;
flex:0 0 auto;
}
.sp-structured-outputs .sp-ic svg{
width:20px; height:20px;
stroke: var(–sp-muted);
fill:none;
stroke-width:2;
stroke-linecap:round;
stroke-linejoin:round;
}
.sp-structured-outputs .sp-card h3{
margin:0 0 .55rem;
font-size:1.02rem;
line-height:1.25;
letter-spacing:-0.01em;
min-height:2.6em;
}
.sp-structured-outputs .sp-card p{
margin:0;
color:var(–sp-muted);
line-height:1.55;
font-size:.95rem;
min-height:4.9em;
}
.sp-structured-outputs .sp-card-foot{
margin-top:.9rem;
display:flex;
gap:.75rem;
flex-wrap:wrap;
align-items:center;
}
.sp-structured-outputs .sp-chip{
font-size:.82rem;
color:var(–sp-muted);
border:1px solid var(–sp-border);
background: var(–sp-soft);
border-radius:999px;
padding:.25rem .6rem;
}
/* Split cards */
.sp-structured-outputs .sp-split{
display:grid;
grid-template-columns: repeat(2, minmax(0,1fr));
gap: 1.15rem;
margin-top: 1.25rem;
}
@media (max-width: 920px){
.sp-structured-outputs .sp-split{ grid-template-columns: 1fr; }
}
.sp-structured-outputs .sp-split-card{
border:1px solid var(–sp-border);
border-radius: var(–sp-radius);
background:#fff;
padding: 1.2rem 1.2rem 1.1rem;
box-shadow: var(–sp-shadow);
}
.sp-structured-outputs .sp-split-card h3{
margin:0 0 .5rem;
font-size:1.08rem;
letter-spacing:-0.01em;
}
.sp-structured-outputs .sp-split-card p{
margin:0 0 .9rem;
color:var(–sp-muted);
line-height:1.55;
font-size:.95rem;
}
.sp-structured-outputs .sp-split-actions{
display:flex;
gap:.75rem;
flex-wrap:wrap;
align-items:center;
}
/* SEO */
.sp-structured-outputs .sp-seo{
background:#fff;
border-top:1px solid var(–sp-border);
border-bottom:1px solid var(–sp-border);
}
.sp-structured-outputs .sp-seo-grid{
display:grid;
grid-template-columns: 1.05fr .95fr;
gap: 1.5rem;
align-items:start;
margin-top: 1.25rem;
}
@media (max-width: 980px){
.sp-structured-outputs .sp-seo-grid{ grid-template-columns: 1fr; }
}
.sp-structured-outputs .sp-seo p{
color:var(–sp-muted);
line-height:1.7;
font-size:1rem;
margin:0 0 1rem;
max-width: 980px;
}
.sp-structured-outputs .sp-seo h3{
margin: 1.25rem 0 .55rem;
font-size: 1.05rem;
letter-spacing:-0.01em;
}
.sp-structured-outputs .sp-seo-card{
background: var(–sp-soft);
border:1px solid var(–sp-border);
border-radius: var(–sp-radius);
padding: 1.15rem 1.15rem 1.05rem;
box-shadow: var(–sp-shadow);
}
.sp-structured-outputs .sp-seo-card h3{
margin:0 0 .55rem;
font-size:1.02rem;
letter-spacing:-0.01em;
}
.sp-structured-outputs .sp-seo-card p{
margin:0 0 .85rem;
color:var(–sp-muted);
line-height:1.6;
font-size:.95rem;
}
.sp-structured-outputs .sp-seo-card ul{
margin:0;
padding-left: 1.1rem;
color:var(–sp-muted);
line-height:1.6;
font-size:.95rem;
}
.sp-structured-outputs .sp-seo-card li{ margin:.35rem 0; }
/* FAQ */
.sp-structured-outputs .sp-faq-wrap{
margin-top: 1.25rem;
background:#fff;
border:1px solid var(–sp-border);
border-radius: var(–sp-radius);
overflow:hidden;
box-shadow: var(–sp-shadow);
}
.sp-structured-outputs .sp-at-faq{ border-bottom:1px solid var(–sp-border); padding: 0 1.15rem; }
.sp-structured-outputs .sp-at-faq:last-child{ border-bottom:none; }
.sp-structured-outputs .sp-at-faq-q{
width:100%;
text-align:left;
padding: 1rem 0;
background:none;
border:none;
cursor:pointer;
font-weight:700;
display:flex;
align-items:center;
justify-content:space-between;
gap:1rem;
color:var(–sp-text);
font-size:.98rem;
}
.sp-structured-outputs .sp-at-faq-q:focus{ outline:none; box-shadow: var(–sp-focus); border-radius:10px; }
.sp-structured-outputs .sp-at-faq-ic{
width:28px; height:28px;
border-radius:999px;
border:1px solid var(–sp-border);
background: var(–sp-soft);
display:flex;
align-items:center;
justify-content:center;
font-weight:800;
color:var(–sp-muted);
flex:0 0 auto;
}
.sp-structured-outputs .sp-at-faq-a{
padding: 0 0 1rem;
color: var(–sp-muted);
line-height: 1.6;
font-size: .95rem;
}
/* Final CTA */
.sp-structured-outputs .sp-final{ background:#fff; border-top:1px solid var(–sp-border); }
.sp-structured-outputs .sp-final-grid{
display:grid;
grid-template-columns: repeat(2, minmax(0,1fr));
gap: 1.25rem;
margin-top: 1.25rem;
text-align:left;
}
@media (max-width: 920px){
.sp-structured-outputs .sp-final-grid{ grid-template-columns: 1fr; }
}
.sp-structured-outputs .sp-panel{
background: var(–sp-soft);
border:1px solid var(–sp-border);
border-radius: var(–sp-radius);
padding: 1.25rem;
box-shadow: var(–sp-shadow);
}
.sp-structured-outputs .sp-panel h3{
margin:0 0 .5rem;
font-size:1.02rem;
letter-spacing:-0.01em;
}
.sp-structured-outputs .sp-panel p{
margin:0 0 .95rem;
color:var(–sp-muted);
line-height:1.55;
font-size:.95rem;
}
.sp-structured-outputs .sp-panel-actions{
display:flex;
gap:.75rem;
flex-wrap:wrap;
align-items:center;
}

语音AI代理+结构化输出

将混乱的对话转化为清晰、可用的字段

定义您关注的标签,Speak 会自动从每次通话或会议中提取这些标签。获取一致的结构化输出,例如资格评分、关键需求、异议、后续步骤等等。.

免费试用
预约咨询
请参阅常见问题解答
7 天试用包括 积分 (个人电子邮件)等 积分 (工作邮件)转录和人工智能分析。.

值得信赖 by 300,000+ people and teams
安大略省
德勤
HubSpot

IEEE
女王大学
减少琐事
停止反复观看通话细节
更稳定
每次对话中都使用相同的字段
更深入的分析
大规模趋势场随时间的变化
更快的后续跟进
立即发送摘要和后续步骤

结构化输出如何运作

对话本身是非结构化的。结构化输出允许您定义重要内容,然后自动提取,以便您可以搜索、筛选、评分和生成数百个通话的报告。.

创建标签和提示

选择一个字段名称,例如“资格分数”或“主要痛点”,并编写一个简短的提示,准确描述要提取的内容。.

前往发言
请参阅示例

Speak 从每次对话中提取出来

通话结束后,Speak 会从转录文本中识别值,并返回一个一致的结构化输出,您可以查看和导出该输出。.

集成
阅读常见问题解答

免费试用
预约咨询
文档/API

常用的结构化输出示例

先从常用字段入手,然后根据您的工作流程进行自定义。您可以创建任意数量的结构化输出,并按团队、用例或文件夹定制提示。.

通话摘要

为每次对话生成简短、一致的总结,以便队友无需收听完整录音即可参与讨论。.

支持
销售

资格评分

根据匹配度、紧迫性和准备程度,分配一个简单的分数。非常适合大规模的来电和潜在客户筛选。.

潜在客户开发
路由

主要疼痛点

用客户的原话提炼出他们的主要问题。这对于市场调研、市场定位和改进用户引导内容都很有用。.

研究
洞察力

反对意见和阻碍因素

抓住客户的犹豫点(价格、安全性、时机),以便销售人员能够跟进合适的辅助材料,快速消除摩擦。.

销售
后续

下一步

提取承诺和行动。无需手动记录,即可将对话内容转化为简洁的后续邮件或内部任务清单。.

行动
执行

联系字段

自动提取名字、姓氏、电子邮件、公司、职位或地区,让您的 CRM 系统保持整洁,让您的团队行动更迅速。.

客户关系管理
自动化

免费试用
预约咨询
帮助文档

结构化输出:对话与分析之间缺失的环节

电话和会议记录包含着企业中最有价值的信息,但大规模利用这些信息却十分困难。笔记格式不统一,录音回放耗时,而且每个团队追踪的细节也不尽相同。结构化输出通过将非结构化的对话转化为一组统一的字段来解决这些问题,您可以随时进行搜索、筛选和分析。.

结构化输出是指从对话中提取的已定义字段。它可以是简单的值,例如“名字”;可以是分数,例如“资格评分”;可以是列表,例如“关键要求”;也可以是简短的段落,例如“通话摘要”。其核心在于一致性:您定义要捕获的内容,Speak 会为每次对话生成相同类型的输出。.

为什么结构化输出很重要

大多数组织将对话视为孤立事件。销售电话在当下或许有用,但后续邮件中的洞察却往往消失殆尽。支持电话虽然解决了问题,但根本原因却无法转化为可衡量的趋势。调研访谈蕴藏着宝贵的信息,但这些洞察却被锁在文字记录中。结构化的输出使对话具有可比性,从而让您能够了解几周、几个月甚至几个团队之间发生的情况。.

为任何工作流程提供自定义结构化输出

Speak 包含针对常见用例的标准结构化输出,但其最大的亮点在于自定义功能。您可以通过定义标签并编写提示来创建自定义输出。例如:“用一句话提取来电者的主要目标”或“返回 1-5 分的资质评分并附上简要说明”。这种灵活性适用于销售、研究、人力资源、运营以及任何对话包含关键细节的工作流程。.

例如:销售电话和潜在客户资格审查

在销售中,结构化的输出结果有助于您持续捕捉关键信息。跟踪预算、时间表、异议、决策者状态和后续步骤。使用资格评分自动分配销售线索。当您的团队审核销售渠道时,他们可以一目了然地看到结构化的信号,而无需根据不完整的记录进行猜测。.

例如:研究访谈和定性分析

在研究中,结构化的输出结果有助于定性研究的规模化开展。提取主题、痛点、成果和关键引语,然后分析这些领域在多次访谈中的表现。这有助于研究人员更快地从原始对话转化为研究结果,同时保留参与者语言中的细微差别。.

例如:支持电话和质量改进

支持团队可以对问题类型、严重程度、根本原因和解决方案进行结构化描述。随着时间的推移,您可以识别出反复出现的问题并确定产品修复的优先级。结构化的输出还有助于新团队成员更快地上手,因为无需手动监听数十个电话,即可发现问题的规律。.

确保结构化输出的可靠性

最佳的结构化输出应具体明确。明确定义哪些信息构成证据、在信息未知时应如何处理,以及答案应有多简短。例如:“如果呼叫者未提供时间线,则返回‘未知’。”这样可以使输出更加一致,也更容易被信任。.

用于自动化的结构化输出

将结构化输出路由到下游系统时,其价值会更高。例如,自动更新 CRM 字段、将关键需求推送到项目简报中,或根据后续步骤和异议创建跟进邮件草稿。这样,无需人工管理即可将对话转化为行动。.

针对长时间对话的结构化输出

通话时间越长,重要细节就越容易被忽略。结构化输出就像每次对话结束时的一个“清晰提取层”,确保关键信息始终被捕获,即使通话涉及多个主题。.

常见问题解答

关于结构化输出、自定义字段、格式设置以及团队如何将其用于销售、研究和支持的常见问题。.


结构化输出是从对话中提取的已定义字段,例如值、分数、列表或简短摘要,这些字段在通话中保持一致。.

是的。创建一个标签,并编写提取信息的提示。您可以根据销售、研究、支持、人力资源或任何工作流程定制字段。.

首先列出 5 项:通话摘要、关键要求、后续步骤、异议或障碍,以及简单的资格评分(或支持问题的严重性)。.

明确规定格式和证据构成要素。明确在信息未知时应采取的措施,并保持输出内容简洁明了。.

是的。因为字段是一致的,所以您可以筛选和分析许多通话中的模式,例如常见异议、反复出现的问题或热门主题。.

是的。许多团队会将结构化输出连接到客户关系管理系统、电子表格和内部仪表板,以便将对话洞察自动导入工作流程。.
免费试用
预约咨询
帮助文档

Define your fields once – then extract them automatically

为您的工作流程创建结构化输出,将其应用于所有对话,并长期分析结果。避免在漫长的通话中遗漏关键细节。.

开始自助服务

创建一些结构化的输出,对最近的通话运行这些输出,并在试用期间将结果导出到您的工作流程中。.

免费试用
登录

与我们的团队合作

我们将帮助您设计字段集、提示和自动化功能,以便结构化输出能够可靠地支持报告和路由。.

预约咨询
安全与隐私

如有疑问?请致电 +1 (647) 372-1565 或电子邮件 [email protected]



Speak AI 驱动的 AI 分析

Speak AI 将转录、NLP 分析、情感分析和 AI 代理整合到一个平台中。专为处理音频、视频和文本数据的研究人员、团队和企业而构建。支持 100 多种语言。

文本分析工具
自动转录
人工智能语音代理
人工智能咨询与实施
人工智能会议助理

免费试用 Speak AI →

How to Extract Structured Data from Audio Using Speak AI

Speak AI’s structured output extraction lets you define a JSON schema and deploy an AI agent that extracts matching fields from any audio or video recording — turning unstructured voice data into clean, structured records your applications can consume directly.

What structured output extraction enables

  • Custom JSON schema — define the fields you want to extract (contact name, intent, sentiment, action items, entities) and the agent extracts them from every transcript
  • Contact and entity extraction — pull names, organizations, locations, and custom entity types from recorded conversations automatically
  • Meeting action item extraction — define an action item schema and extract tasks, owners, and deadlines from any meeting or call recording
  • Survey coding automation — define a coding schema for qualitative survey responses and apply it across the full respondent dataset
  • CRM and database integration — structured output JSON feeds directly into your CRM, data warehouse, or internal tools without manual data entry

Structured output extraction FAQ

How do I extract structured data from audio files with AI?

Define your output schema via the Speak AI API, submit audio files for transcription, and configure the structured extraction step to run on the resulting transcript. The API returns a JSON object matching your schema for each recording. Full documentation at docs.speakai.co.

What data can Speak AI extract from audio recordings as structured output?

Any information present in the spoken content: named entities, sentiment scores, action items, custom field values, topic classifications, and any other fields you define in your extraction schema. The AI reasons over the full transcript to populate your schema.

Can I use Speak AI structured outputs to feed a CRM automatically?

Yes. A common pattern: Speak AI transcribes call recordings via API, runs structured extraction (contact name, intent, follow-up required), and the JSON output is written to your CRM via webhook — eliminating manual call logging for sales and customer success teams.

Extract structured data from audio — get your API key free, no credit card required.

获取免费 API 密钥