TeLLAgent / tools.py
jinysun's picture
Update tools.py
d4aea37 verified
import os
from langchain_community.agent_toolkits.load_tools import load_tools
from langchain.base_language import BaseLanguageModel
from tool import *
def drug_tools(llm: BaseLanguageModel, api_keys: dict = {}, verbose=True, image_path = r"...", file_path = r"..."):
serp_api_key = api_keys.get("SERP_API_KEY") or os.getenv("SERP_API_KEY")
openai_api_key = api_keys.get("OPENAI_API_KEY") or os.getenv("OPENAI_API_KEY")
image_path = image_path
file_path = file_path
semantic_scholar_api_key = api_keys.get("SEMANTIC_SCHOLAR_API_KEY") or os.getenv(
"SEMANTIC_SCHOLAR_API_KEY"
)
chemspace_api_key = api_keys.get("CHEMSPACE_API_KEY") or os.getenv(
"CHEMSPACE_API_KEY"
)
all_tools = load_tools(
[
#"python_repl",
# "ddg-search",
"wikipedia",
"human"
]
)
all_tools += [
rag(openai_api_key),
codewriter(llm=llm ,openai_api_key= openai_api_key),
graphconverter(),
Query2SMILES(chemspace_api_key),
Mol2SMILES(chemspace_api_key) ,
Query2CAS(),
SMILES2Name(),
SMILES2SAScore(),
SMILES2LogP(),
SMILES2Properties(),
MolSimilarity(),
SMILES2Weight(),
FuncGroups(),
QMGen(),
molgen(),
dap_predictor(),
# browseruse(openai_api_key),
druglike(),
ADMETLab(),
]
# if semantic_scholar_api_key:
# all_tools += [ LiteratureSearch(
# llm=llm,
# openai_api_key=openai_api_key,
# semantic_scholar_api_key=semantic_scholar_api_key ),
# ]
if serp_api_key:
all_tools += [WebSearch(serp_api_key)
]
if file_path is not None:
all_tools += [pdfreader(file_path),
]
if image_path is not None:
all_tools += [Imageanalysis(image_path),
]
return all_tools
def make_tools(llm: BaseLanguageModel, api_keys: dict = {}, verbose=True, image_path = r"...", file_path = r"..."):
serp_api_key = api_keys.get("SERP_API_KEY") or os.getenv("SERP_API_KEY")
image_path = image_path
file_path = file_path
openai_api_key = api_keys.get("OPENAI_API_KEY") or os.getenv("OPENAI_API_KEY")
semantic_scholar_api_key = api_keys.get("SEMANTIC_SCHOLAR_API_KEY") or os.getenv(
"SEMANTIC_SCHOLAR_API_KEY"
)
chemspace_api_key = api_keys.get("CHEMSPACE_API_KEY") or os.getenv(
"CHEMSPACE_API_KEY"
)
all_tools = load_tools(
[
#"python_repl",
# "ddg-search",
"wikipedia",
"human"
]
)
all_tools += [
rag(openai_api_key),
codewriter(llm=llm ,openai_api_key= openai_api_key),
graphconverter(),
Query2SMILES(chemspace_api_key),
Mol2SMILES(chemspace_api_key) ,
Query2CAS(),
SMILES2Name(),
SMILES2SAScore(),
SMILES2LogP(),
SMILES2Properties(),
MolSimilarity(),
SMILES2Weight(),
FuncGroups(),
donor_predictor(),
acceptor_predictor(),
homolumo_predictor(),
dap_screen(),
molgen(),
dap_predictor(),
#browseruse(openai_api_key),
]
# if semantic_scholar_api_key:
# all_tools += [ LiteratureSearch(
# llm=llm,
# openai_api_key=openai_api_key,
# semantic_scholar_api_key=semantic_scholar_api_key ),
# ]
if serp_api_key:
all_tools += [WebSearch(serp_api_key)
]
if file_path is not None:
all_tools += [pdfreader(file_path),
]
if image_path is not None:
all_tools += [Imageanalysis(image_path),
]
return all_tools