|
|
@@ -80,7 +80,7 @@ export class AssessmentService {
|
|
|
* Starts a new assessment session.
|
|
|
* kbId can be a KnowledgeBase ID or a KnowledgeGroup ID.
|
|
|
*/
|
|
|
- async startSession(userId: string, kbId: string, tenantId: string, language: string = 'zh'): Promise<AssessmentSession> {
|
|
|
+ async startSession(userId: string, kbId: string, tenantId: string, language: string = 'en'): Promise<AssessmentSession> {
|
|
|
// Try to determine if it's a KB or Group
|
|
|
const isKb = await (this.kbService as any).kbRepository.count({ where: { id: kbId, tenantId } }) > 0;
|
|
|
|
|
|
@@ -145,17 +145,22 @@ export class AssessmentService {
|
|
|
messages: [],
|
|
|
};
|
|
|
|
|
|
+ const isZh = (session.language || 'en') === 'zh';
|
|
|
+ const isJa = session.language === 'ja';
|
|
|
+ const initialMsg = isZh ? "现在生成评估问题。" : (isJa ? "今すぐアセスメント問題を生成してください。" : "Generate the assessment questions now.");
|
|
|
+
|
|
|
const stream = await this.graph.stream(
|
|
|
{
|
|
|
...initialState,
|
|
|
- messages: [new HumanMessage('Generate the assessment questions now.')]
|
|
|
+ language: session.language || 'en', // Ensure language is passed in initial state
|
|
|
+ messages: [new HumanMessage(initialMsg)]
|
|
|
},
|
|
|
{
|
|
|
configurable: {
|
|
|
thread_id: sessionId,
|
|
|
model,
|
|
|
knowledgeBaseContent: content,
|
|
|
- language: session.language || 'zh',
|
|
|
+ language: session.language || 'en',
|
|
|
},
|
|
|
streamMode: ["values", "updates"]
|
|
|
}
|
|
|
@@ -229,7 +234,7 @@ export class AssessmentService {
|
|
|
/**
|
|
|
* Submits a user's answer and continues the assessment.
|
|
|
*/
|
|
|
- async submitAnswer(sessionId: string, userId: string, answer: string, language: string = 'zh'): Promise<any> {
|
|
|
+ async submitAnswer(sessionId: string, userId: string, answer: string, language: string = 'en'): Promise<any> {
|
|
|
const session = await this.sessionRepository.findOne({ where: { id: sessionId, userId } });
|
|
|
if (!session) throw new NotFoundException('Session not found');
|
|
|
|
|
|
@@ -294,7 +299,7 @@ export class AssessmentService {
|
|
|
/**
|
|
|
* Streaming version of submitAnswer.
|
|
|
*/
|
|
|
- submitAnswerStream(sessionId: string, userId: string, answer: string, language: string = 'zh'): Observable<any> {
|
|
|
+ submitAnswerStream(sessionId: string, userId: string, answer: string, language: string = 'en'): Observable<any> {
|
|
|
return new Observable(observer => {
|
|
|
(async () => {
|
|
|
try {
|
|
|
@@ -467,7 +472,7 @@ export class AssessmentService {
|
|
|
questions: session.questions_json || [],
|
|
|
currentQuestionIndex: session.currentQuestionIndex || 0,
|
|
|
followUpCount: session.followUpCount || 0,
|
|
|
- language: session.language || 'zh',
|
|
|
+ language: session.language || 'en',
|
|
|
},
|
|
|
"interviewer"
|
|
|
);
|
|
|
@@ -487,7 +492,7 @@ export class AssessmentService {
|
|
|
thread_id: sessionId,
|
|
|
model,
|
|
|
knowledgeBaseContent: content,
|
|
|
- language: session.language || 'zh',
|
|
|
+ language: session.language || 'en',
|
|
|
},
|
|
|
streamMode: ["values", "updates"]
|
|
|
});
|