parent
2c00c679c3
commit
9f9c53bf6a
@ -0,0 +1,59 @@
|
|||||||
|
|
||||||
|
|
||||||
|
# ---------- Dependencies ----------
|
||||||
|
import os
|
||||||
|
import asyncio
|
||||||
|
import faiss
|
||||||
|
from typing import Any, Optional, List
|
||||||
|
from contextlib import contextmanager
|
||||||
|
|
||||||
|
from pydantic import BaseModel, Field
|
||||||
|
from langchain import LLMChain, OpenAI, PromptTemplate
|
||||||
|
from langchain.chains.base import Chain
|
||||||
|
|
||||||
|
from langchain.experimental import BabyAGI
|
||||||
|
from langchain.embeddings import OpenAIEmbeddings
|
||||||
|
from langchain.vectorstores.base import VectorStore
|
||||||
|
from langchain.vectorstores import FAISS
|
||||||
|
|
||||||
|
from langchain.docstore import InMemoryDocstore
|
||||||
|
from langchain.chains.qa_with_sources.loading import load_qa_with_sources_chain
|
||||||
|
from langchain.agents import ZeroShotAgent, Tool, AgentExecutor
|
||||||
|
|
||||||
|
from langchain.text_splitter import RecursiveCharacterTextSplitter
|
||||||
|
from langchain.tools import BaseTool, DuckDuckGoSearchRun
|
||||||
|
from langchain.tools.file_management.read import ReadFileTool
|
||||||
|
|
||||||
|
from langchain.tools.file_management.write import WriteFileTool
|
||||||
|
from langchain.tools.human.tool import HumanInputRun
|
||||||
|
from swarms.tools import Terminal, CodeWriter, CodeEditor, process_csv, WebpageQATool
|
||||||
|
|
||||||
|
from langchain.experimental.autonomous_agents.autogpt.agent import AutoGPT
|
||||||
|
from langchain.chat_models import ChatOpenAI
|
||||||
|
from langchain.tools import tool
|
||||||
|
|
||||||
|
# ---------- Constants ----------
|
||||||
|
ROOT_DIR = "./data/"
|
||||||
|
|
||||||
|
# ---------- Tools ----------
|
||||||
|
openai_api_key = os.environ["OPENAI_API_KEY"]
|
||||||
|
llm = ChatOpenAI(model_name="gpt-4", temperature=1.0, openai_api_key=openai_api_key)
|
||||||
|
|
||||||
|
tools = [
|
||||||
|
DuckDuckGoSearchRun(),
|
||||||
|
WriteFileTool(root_dir=ROOT_DIR),
|
||||||
|
ReadFileTool(root_dir=ROOT_DIR),
|
||||||
|
process_csv,
|
||||||
|
|
||||||
|
WebpageQATool(qa_chain=load_qa_with_sources_chain(llm)),
|
||||||
|
|
||||||
|
# Tool(name='terminal', func=Terminal.execute, description='Operates a terminal'),
|
||||||
|
# Tool(name='code_writer', func=CodeWriter(), description='Writes code'),
|
||||||
|
# Tool(name='code_editor', func=CodeEditor(), description='Edits code'),#
|
||||||
|
]
|
||||||
|
|
||||||
|
# ---------- Vector Store ----------
|
||||||
|
embeddings_model = OpenAIEmbeddings()
|
||||||
|
embedding_size = 1536
|
||||||
|
index = faiss.IndexFlatL2(embedding_size)
|
||||||
|
vectorstore = FAISS(embeddings_model.embed_query, index, InMemoryDocstore({}), {})
|
Loading…
Reference in new issue