API 概述
LIVE Training AI 平台提供三个核心服务的 API 接口,支持第三方训练平台集成。
基础信息
- • 基础URL:
https://api.live-training-ai.com - • 认证方式: API Key (开发中)
- • 数据格式: JSON
- • 字符编码: UTF-8
AI观众服务
生成群体观众响应
POST
/api/audience/group-response根据主播内容生成群体虚拟观众的个性化响应。每个群体包含10-25个独特的虚拟观众。
请求参数
{
"hostContent": "主播的直播内容",
"groupType": "supportive_group",
"groupSize": 20,
"context": {
"sessionId": "xxx",
"topic": "技术讨论",
"timestamp": "..."
}
}groupType 选项:
- supportive_group - 支持型群体
- active_group - 活跃型群体
- critical_group - 批判型群体
- quiet_group - 安静型群体
- tech_expert_group - 技术专家群体
- mixed_group - 混合群体 (默认)
响应示例
{
"success": true,
"data": {
"groupId": "supportive_group_1704234567890",
"timestamp": "2025-01-01T12:00:00.000Z",
"individualResponses": [
{
"audienceId": "audience_1234_1",
"nickname": "温暖1234",
"avatar": "😊",
"content": "主播讲得很好!",
"type": "comment",
"confidence": 0.92,
"timing": {
"delay": 1500,
"duration": 3500
}
}
],
"groupStats": {
"totalResponses": 15,
"responseRate": 0.75,
"sentimentDistribution": {
"positive": 0.8,
"neutral": 0.15,
"negative": 0.05
}
},
"groupInfo": {
"groupType": "supportive_group",
"onlineCount": 18,
"totalCount": 20,
"averageEngagement": 0.78
}
}
}获取群体状态
GET
/api/audience/group-response?groupType=supportive_group获取指定群体的详细状态信息,包括成员信息和群体统计。
查询参数
- •
groupType- 群体类型 (可选,默认mixed_group)
响应示例
{
"success": true,
"data": {
"groupType": "supportive_group",
"groupState": {
"groupId": "supportive_group_1234",
"onlineCount": 18,
"totalCount": 20,
"averageEngagement": 0.78,
"groupPersonality": {
"dominant_type": "supportive",
"diversity": 0.4,
"activity_level": 0.82
},
"audiences": [...]
}
}
}观众配置管理
GET
/api/audience/configs获取所有可用的观众类型配置。支持GET(查询)、POST(创建)、PUT(更新)、DELETE(删除)操作。
GET 响应示例
{
"success": true,
"data": {
"configs": [
{
"type_id": "supportive",
"name": "支持型观众",
"description": "积极支持主播的观众",
"version": "1.0.0",
"personality_traits": {
"enthusiasm": 0.8,
"supportiveness": 0.9,
"curiosity": 0.6,
"criticism": 0.1,
"humor": 0.5,
"knowledge_level": 0.4
},
"behavior_characteristics": {...},
"speech_patterns": {...}
}
],
"total": 5
}
}POST 创建配置
// 请求体包含完整的配置对象
{
"type_id": "custom_type",
"name": "自定义观众",
"description": "自定义的观众类型",
"version": "1.0.0",
"personality_traits": {
"enthusiasm": 0.7,
"supportiveness": 0.6,
"curiosity": 0.8,
"criticism": 0.3,
"humor": 0.6,
"knowledge_level": 0.7
},
// ... 其他配置项
}AI教练服务
🎯 AI教练反馈
基于LLM增强技术的多层智能教练分析,支持即时、深度、战略三层分析。
端点:
/api/coach/llm-enhanced方法:POST
生成教练反馈
POST
/api/coach/generate-feedback根据表现指标和教练策略生成个性化的反馈和建议。
请求参数
{
"coachingStrategy": "encouraging",
"performanceMetrics": {
"engagementScore": 8.5,
"contentQuality": 7.8,
"audienceInteraction": 8.0
},
"sessionData": {
"duration": 1800,
"messageCount": 50
}
}响应示例
{
"success": true,
"data": {
"feedback": "表现很棒!继续保持这种热情!",
"suggestions": ["增加互动环节", "分享个人经历"],
"score": 8.2,
"coachingStrategy": "encouraging",
"timestamp": "2025-06-25T09:09:10.654Z"
}
}AI评估师服务
评估训练会话
POST
/api/evaluator/evaluate-session对训练会话进行多维度评估,生成详细报告和改进建议。
请求参数
{
"sessionData": {
"duration": 1800,
"hostMessages": ["大家好,欢迎来到直播间"],
"engagementMetrics": {
"audienceCount": 50,
"interactionRate": 0.7
}
},
"evaluationCriteria": "comprehensive"
}响应示例
{
"success": true,
"data": {
"overallScore": 85,
"dimensions": {
"contentQuality": {
"score": 94,
"weight": 0.3,
"details": ["内容结构清晰", "话题选择恰当"]
}
},
"strengths": ["内容准备充分", "个人魅力突出"],
"improvements": ["增加互动环节", "放慢语速"],
"recommendations": ["制定互动计划", "练习语速控制"]
}
}错误处理
所有API接口都遵循统一的错误响应格式:
{
"success": false,
"error": "错误描述",
"details": "详细错误信息"
}常见HTTP状态码
- •
200- 请求成功 - •
400- 请求参数错误 - •
401- 未授权 - •
404- 资源不存在 - •
409- 资源冲突 - •
500- 服务器内部错误
限流信息
- • 免费版: 1000次/天
- • 专业版: 10000次/天
- • 企业版: 无限制
集成示例
JavaScript 示例
// 生成群体观众响应
const groupResponse = await fetch('/api/audience/group-response', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
},
body: JSON.stringify({
hostContent: '今天我们来聊聊AI技术的发展趋势',
groupType: 'tech_expert_group',
groupSize: 15,
context: {
sessionId: 'session-123',
topic: '技术讨论'
}
})
});
const groupData = await groupResponse.json();
console.log('群体响应:', groupData.data.individualResponses);
// 获取观众配置
const configs = await fetch('/api/audience/configs');
const configData = await configs.json();
console.log('可用配置:', configData.data.configs);
// 生成教练反馈
const feedback = await fetch('/api/coach/llm-enhanced', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
},
body: JSON.stringify({
sessionId: 'session-001',
timestamp: Date.now(),
action: 'analyze',
streamerRawOutput: {
timestamp: Date.now(),
sessionId: 'session-001',
audio: {
sampleRate: 44100,
channels: 2,
volume: 0.8
},
text: {
spokenWords: '今天我们来学习React Hooks...'
}
},
analysisLayers: ['immediate', 'deep']
})
});
const feedbackData = await feedback.json();
console.log(feedbackData.data.feedback);