21 lines
1.1 KiB
TypeScript
21 lines
1.1 KiB
TypeScript
import type { TeacherRequest } from '../../shared/coding-teacher';
|
||
import { parseTeacherReply } from '../../shared/teacher-reply';
|
||
|
||
export function teacherReplyInstructions(): string {
|
||
return '本轮界面接收一个 JSON 对象 {"reply":string,"quickReplies":string[]}。reply 是回复正文,可使用 Markdown;quickReplies 是可选的后续回复建议,没有建议时用空数组。只使用这两个字段。依据已配置职责帮助学生整理想法、理解关系、承接已确认的共识;区分学生已确认内容与智能体建议、待定想法。回复的语言、风格、长度、前缀和建议内容遵循当前智能体的云端配置。';
|
||
}
|
||
|
||
/** The original response remains available for diagnosis when parsing is incomplete. */
|
||
export function applyTeacherReply(request: TeacherRequest, raw: string): void {
|
||
const parsed = parseTeacherReply(raw);
|
||
request.response = parsed.reply;
|
||
request.suggestedQuestions = parsed.quickReplies;
|
||
if (parsed.parseError) {
|
||
request.replyParseError = parsed.parseError;
|
||
request.unparsedResponse = raw;
|
||
} else {
|
||
delete request.replyParseError;
|
||
delete request.unparsedResponse;
|
||
}
|
||
}
|