Spaces:
Running
Running
Update app.py
Browse files
app.py
CHANGED
@@ -7,6 +7,7 @@ from langchain_core.messages import HumanMessage, AIMessage
|
|
7 |
from langchain.text_splitter import RecursiveCharacterTextSplitter
|
8 |
from langchain_core.documents import Document
|
9 |
from langgraph.graph import END, StateGraph
|
|
|
10 |
from typing_extensions import TypedDict, Annotated
|
11 |
from typing import Sequence, Dict, List, Optional, Any
|
12 |
import chromadb
|
@@ -22,10 +23,13 @@ from datetime import datetime
|
|
22 |
from sklearn.metrics.pairwise import cosine_similarity
|
23 |
|
24 |
# ------------------------------
|
25 |
-
# State Schema Definition
|
26 |
# ------------------------------
|
27 |
class AgentState(TypedDict):
|
28 |
-
messages: Annotated[
|
|
|
|
|
|
|
29 |
context: Dict[str, Any]
|
30 |
metadata: Dict[str, Any]
|
31 |
|
@@ -94,7 +98,7 @@ if not ResearchConfig.DEEPSEEK_API_KEY:
|
|
94 |
st.stop()
|
95 |
|
96 |
# ------------------------------
|
97 |
-
# ChromaDB Document Manager
|
98 |
# ------------------------------
|
99 |
class QuantumDocumentManager:
|
100 |
def __init__(self):
|
@@ -139,6 +143,7 @@ class QuantumDocumentManager:
|
|
139 |
qdm = QuantumDocumentManager()
|
140 |
research_docs = qdm.create_collection(ResearchConfig.DOCUMENT_MAP, "research_papers")
|
141 |
|
|
|
142 |
# ------------------------------
|
143 |
# Retrieval System
|
144 |
# ------------------------------
|
|
|
7 |
from langchain.text_splitter import RecursiveCharacterTextSplitter
|
8 |
from langchain_core.documents import Document
|
9 |
from langgraph.graph import END, StateGraph
|
10 |
+
from langgraph.graph.message import add_messages # <-- FIXED IMPORT
|
11 |
from typing_extensions import TypedDict, Annotated
|
12 |
from typing import Sequence, Dict, List, Optional, Any
|
13 |
import chromadb
|
|
|
23 |
from sklearn.metrics.pairwise import cosine_similarity
|
24 |
|
25 |
# ------------------------------
|
26 |
+
# State Schema Definition (Fixed)
|
27 |
# ------------------------------
|
28 |
class AgentState(TypedDict):
|
29 |
+
messages: Annotated[
|
30 |
+
Sequence[AIMessage | HumanMessage],
|
31 |
+
add_messages # <-- NOW PROPERLY DEFINED
|
32 |
+
]
|
33 |
context: Dict[str, Any]
|
34 |
metadata: Dict[str, Any]
|
35 |
|
|
|
98 |
st.stop()
|
99 |
|
100 |
# ------------------------------
|
101 |
+
# ChromaDB Document Manager
|
102 |
# ------------------------------
|
103 |
class QuantumDocumentManager:
|
104 |
def __init__(self):
|
|
|
143 |
qdm = QuantumDocumentManager()
|
144 |
research_docs = qdm.create_collection(ResearchConfig.DOCUMENT_MAP, "research_papers")
|
145 |
|
146 |
+
|
147 |
# ------------------------------
|
148 |
# Retrieval System
|
149 |
# ------------------------------
|