Spaces:
Sleeping
Sleeping
Update agent.py
Browse files
agent.py
CHANGED
|
@@ -11,6 +11,7 @@ from langchain_community.tools.tavily_search import TavilySearchResults
|
|
| 11 |
from langchain_community.document_loaders import WikipediaLoader
|
| 12 |
from langchain_community.document_loaders import ArxivLoader
|
| 13 |
from langchain_community.vectorstores import SupabaseVectorStore
|
|
|
|
| 14 |
from langchain_core.messages import SystemMessage, HumanMessage
|
| 15 |
from langchain_core.tools import tool
|
| 16 |
from langchain.tools.retriever import create_retriever_tool
|
|
@@ -118,19 +119,30 @@ with open("system_prompt.txt", "r", encoding="utf-8") as f:
|
|
| 118 |
system_prompt = f.read().strip()
|
| 119 |
sys_msg = SystemMessage(content=system_prompt)
|
| 120 |
|
| 121 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 122 |
embeddings = HuggingFaceEmbeddings(model_name="sentence-transformers/all-mpnet-base-v2")
|
| 123 |
-
|
| 124 |
-
|
| 125 |
-
|
| 126 |
-
|
|
|
|
|
|
|
|
|
|
| 127 |
vector_store = SupabaseVectorStore(
|
| 128 |
-
client=
|
| 129 |
embedding=embeddings,
|
| 130 |
table_name="documents",
|
| 131 |
query_name="match_documents_langchain"
|
| 132 |
)
|
| 133 |
-
|
|
|
|
|
|
|
| 134 |
|
| 135 |
retriever_tool = create_retriever_tool(
|
| 136 |
retriever=vector_store.as_retriever(),
|
|
|
|
| 11 |
from langchain_community.document_loaders import WikipediaLoader
|
| 12 |
from langchain_community.document_loaders import ArxivLoader
|
| 13 |
from langchain_community.vectorstores import SupabaseVectorStore
|
| 14 |
+
from langchain_community.embeddings import HuggingFaceEmbeddings
|
| 15 |
from langchain_core.messages import SystemMessage, HumanMessage
|
| 16 |
from langchain_core.tools import tool
|
| 17 |
from langchain.tools.retriever import create_retriever_tool
|
|
|
|
| 119 |
system_prompt = f.read().strip()
|
| 120 |
sys_msg = SystemMessage(content=system_prompt)
|
| 121 |
|
| 122 |
+
|
| 123 |
+
# Load environment variables
|
| 124 |
+
url = os.environ["SUPABASE_URL"]
|
| 125 |
+
key = os.environ["SUPABASE_SERVICE_KEY"]
|
| 126 |
+
client = create_client(url, key)
|
| 127 |
+
|
| 128 |
+
# Create embedding model
|
| 129 |
embeddings = HuggingFaceEmbeddings(model_name="sentence-transformers/all-mpnet-base-v2")
|
| 130 |
+
|
| 131 |
+
# Sample documents to insert
|
| 132 |
+
docs = [
|
| 133 |
+
{"content": "Newton's First Law states that an object in motion stays in motion unless acted upon."},
|
| 134 |
+
{"content": "LangChain enables developers to build context-aware agents using LLMs and tools."},
|
| 135 |
+
{"content": "Supabase is an open-source alternative to Firebase built on PostgreSQL."}
|
| 136 |
+
]
|
| 137 |
vector_store = SupabaseVectorStore(
|
| 138 |
+
client=client,
|
| 139 |
embedding=embeddings,
|
| 140 |
table_name="documents",
|
| 141 |
query_name="match_documents_langchain"
|
| 142 |
)
|
| 143 |
+
texts = [doc["content"] for doc in docs]
|
| 144 |
+
vectorstore.add_texts(texts)
|
| 145 |
+
print("✅ Documents successfully embedded and stored.")
|
| 146 |
|
| 147 |
retriever_tool = create_retriever_tool(
|
| 148 |
retriever=vector_store.as_retriever(),
|