Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
@@ -1,5 +1,3 @@
|
|
1 |
-
|
2 |
-
|
3 |
# ------------------------------
|
4 |
# Imports & Dependencies
|
5 |
# ------------------------------
|
@@ -12,12 +10,28 @@ from langgraph.prebuilt import ToolNode
|
|
12 |
from langgraph.graph.message import add_messages
|
13 |
from typing_extensions import TypedDict, Annotated
|
14 |
from typing import Sequence
|
|
|
|
|
15 |
import re
|
16 |
import os
|
17 |
import streamlit as st
|
18 |
import requests
|
19 |
from langchain.tools.retriever import create_retriever_tool
|
20 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
21 |
# ------------------------------
|
22 |
# Dummy Data: Research & Development Texts
|
23 |
# ------------------------------
|
@@ -47,16 +61,21 @@ embeddings = OpenAIEmbeddings(
|
|
47 |
model="text-embedding-3-large",
|
48 |
# dimensions=1024 # Uncomment if needed
|
49 |
)
|
|
|
50 |
research_vectorstore = Chroma.from_documents(
|
51 |
documents=research_docs,
|
52 |
embedding=embeddings,
|
|
|
53 |
collection_name="research_collection"
|
54 |
)
|
|
|
55 |
development_vectorstore = Chroma.from_documents(
|
56 |
documents=development_docs,
|
57 |
embedding=embeddings,
|
|
|
58 |
collection_name="development_collection"
|
59 |
)
|
|
|
60 |
research_retriever = research_vectorstore.as_retriever()
|
61 |
development_retriever = development_vectorstore.as_retriever()
|
62 |
|
@@ -256,7 +275,7 @@ def custom_tools_condition(state: AgentState):
|
|
256 |
return END
|
257 |
|
258 |
# ------------------------------
|
259 |
-
# Workflow Configuration using LangGraph
|
260 |
# ------------------------------
|
261 |
workflow = StateGraph(AgentState)
|
262 |
|
|
|
|
|
|
|
1 |
# ------------------------------
|
2 |
# Imports & Dependencies
|
3 |
# ------------------------------
|
|
|
10 |
from langgraph.graph.message import add_messages
|
11 |
from typing_extensions import TypedDict, Annotated
|
12 |
from typing import Sequence
|
13 |
+
import chromadb
|
14 |
+
from chromadb.config import Settings
|
15 |
import re
|
16 |
import os
|
17 |
import streamlit as st
|
18 |
import requests
|
19 |
from langchain.tools.retriever import create_retriever_tool
|
20 |
|
21 |
+
# Create directory for Chroma persistence
|
22 |
+
os.makedirs("chroma_db", exist_ok=True)
|
23 |
+
|
24 |
+
# ------------------------------
|
25 |
+
# ChromaDB Client Configuration
|
26 |
+
# ------------------------------
|
27 |
+
chroma_client = chromadb.Client(
|
28 |
+
Settings(
|
29 |
+
chroma_db_impl="duckdb+parquet",
|
30 |
+
persist_directory="chroma_db",
|
31 |
+
anonymized_telemetry=False
|
32 |
+
)
|
33 |
+
)
|
34 |
+
|
35 |
# ------------------------------
|
36 |
# Dummy Data: Research & Development Texts
|
37 |
# ------------------------------
|
|
|
61 |
model="text-embedding-3-large",
|
62 |
# dimensions=1024 # Uncomment if needed
|
63 |
)
|
64 |
+
|
65 |
research_vectorstore = Chroma.from_documents(
|
66 |
documents=research_docs,
|
67 |
embedding=embeddings,
|
68 |
+
client=chroma_client,
|
69 |
collection_name="research_collection"
|
70 |
)
|
71 |
+
|
72 |
development_vectorstore = Chroma.from_documents(
|
73 |
documents=development_docs,
|
74 |
embedding=embeddings,
|
75 |
+
client=chroma_client,
|
76 |
collection_name="development_collection"
|
77 |
)
|
78 |
+
|
79 |
research_retriever = research_vectorstore.as_retriever()
|
80 |
development_retriever = development_vectorstore.as_retriever()
|
81 |
|
|
|
275 |
return END
|
276 |
|
277 |
# ------------------------------
|
278 |
+
# Workflow Configuration using LangGraph
|
279 |
# ------------------------------
|
280 |
workflow = StateGraph(AgentState)
|
281 |
|