aboutsummaryrefslogtreecommitdiff
path: root/src/client/views/nodes/ChatBox/ChatBox.tsx
diff options
context:
space:
mode:
authorA.J. Shulman <Shulman.aj@gmail.com>2024-08-19 12:53:00 -0400
committerA.J. Shulman <Shulman.aj@gmail.com>2024-08-19 12:53:00 -0400
commit4b6ce2ffcb82c1a7467ef7ed8b67b97094a8f6b6 (patch)
tree8878d68bcbf46d176c59baecae69d6ae26bb33d2 /src/client/views/nodes/ChatBox/ChatBox.tsx
parentff3c041af6738d025926732115a032d40cffb859 (diff)
Streaming wiht thoughts and actions working much better but still get error for web search
Diffstat (limited to 'src/client/views/nodes/ChatBox/ChatBox.tsx')
-rw-r--r--src/client/views/nodes/ChatBox/ChatBox.tsx25
1 files changed, 15 insertions, 10 deletions
diff --git a/src/client/views/nodes/ChatBox/ChatBox.tsx b/src/client/views/nodes/ChatBox/ChatBox.tsx
index 099c0298e..36416a330 100644
--- a/src/client/views/nodes/ChatBox/ChatBox.tsx
+++ b/src/client/views/nodes/ChatBox/ChatBox.tsx
@@ -11,7 +11,7 @@ import { ViewBoxAnnotatableComponent } from '../../DocComponent';
import { FieldView, FieldViewProps } from '../FieldView';
import './ChatBox.scss';
import MessageComponentBox from './MessageComponent';
-import { ASSISTANT_ROLE, AssistantMessage, AI_Document, Citation, CHUNK_TYPE, RAGChunk, getChunkType, TEXT_TYPE, SimplifiedChunk } from './types';
+import { ASSISTANT_ROLE, AssistantMessage, AI_Document, Citation, CHUNK_TYPE, RAGChunk, getChunkType, TEXT_TYPE, SimplifiedChunk, ProcessingInfo } from './types';
import { Vectorstore } from './vectorstore/Vectorstore';
import { Agent } from './Agent';
import dotenv from 'dotenv';
@@ -150,26 +150,30 @@ export class ChatBox extends ViewBoxAnnotatableComponent<FieldViewProps>() {
if (trimmedText) {
try {
textInput.value = '';
- this.history.push({ role: ASSISTANT_ROLE.USER, content: [{ index: 0, type: TEXT_TYPE.NORMAL, text: trimmedText, citation_ids: null }] });
+ this.history.push({ role: ASSISTANT_ROLE.USER, content: [{ index: 0, type: TEXT_TYPE.NORMAL, text: trimmedText, citation_ids: null }], processing_info: [] });
this.isLoading = true;
- this.current_message = { role: ASSISTANT_ROLE.ASSISTANT, content: [], thoughts: [], actions: [], citations: [] };
+ this.current_message = { role: ASSISTANT_ROLE.ASSISTANT, content: [], citations: [], processing_info: [] };
- const onUpdate = (update: AssistantMessage) => {
+ const onUpdate = (update: ProcessingInfo[]) => {
runInAction(() => {
- this.current_message = { ...update };
+ if (this.current_message) {
+ this.current_message = { ...this.current_message, processing_info: update };
+ }
});
};
- const finalMessage = await this.agent.askAgent(trimmedText, 20, onUpdate);
+ const finalMessage = await this.agent.askAgent(trimmedText, onUpdate);
runInAction(() => {
- this.history.push({ ...finalMessage });
- this.current_message = undefined;
- this.dataDoc.data = JSON.stringify(this.history);
+ if (this.current_message) {
+ this.history.push({ ...finalMessage });
+ this.current_message = undefined;
+ this.dataDoc.data = JSON.stringify(this.history);
+ }
});
} catch (err) {
console.error('Error:', err);
- this.history.push({ role: ASSISTANT_ROLE.ASSISTANT, content: [{ index: 0, type: TEXT_TYPE.NORMAL, text: 'Sorry, I encountered an error while processing your request.', citation_ids: null }] });
+ this.history.push({ role: ASSISTANT_ROLE.ASSISTANT, content: [{ index: 0, type: TEXT_TYPE.ERROR, text: 'Sorry, I encountered an error while processing your request.', citation_ids: null }], processing_info: [] });
} finally {
this.isLoading = false;
}
@@ -295,6 +299,7 @@ export class ChatBox extends ViewBoxAnnotatableComponent<FieldViewProps>() {
this.history.push({
role: ASSISTANT_ROLE.ASSISTANT,
content: [{ index: 0, type: TEXT_TYPE.NORMAL, text: 'Welcome to the Document Analyser Assistant! Link a document or ask questions to get started.', citation_ids: null }],
+ processing_info: [],
});
});
}