aiagents4pharma 1.17.0__py3-none-any.whl → 1.17.1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- aiagents4pharma/__init__.py +0 -1
- aiagents4pharma/talk2biomodels/__init__.py +1 -0
- aiagents4pharma/talk2biomodels/agents/t2b_agent.py +3 -3
- aiagents4pharma/{configs/talk2biomodels → talk2biomodels/configs}/agents/t2b_agent/default.yaml +1 -1
- aiagents4pharma/{configs/talk2biomodels → talk2biomodels/configs}/tools/ask_question/default.yaml +1 -1
- aiagents4pharma/{configs/talk2biomodels → talk2biomodels/configs}/tools/get_annotation/default.yaml +1 -1
- aiagents4pharma/talk2biomodels/tools/ask_question.py +5 -4
- aiagents4pharma/talk2biomodels/tools/get_annotation.py +3 -3
- aiagents4pharma/talk2biomodels/tools/search_models.py +1 -1
- aiagents4pharma-1.17.1.dist-info/METADATA +150 -0
- {aiagents4pharma-1.17.0.dist-info → aiagents4pharma-1.17.1.dist-info}/RECORD +20 -22
- aiagents4pharma/configs/__init__.py +0 -5
- aiagents4pharma/configs/config.yaml +0 -5
- aiagents4pharma-1.17.0.dist-info/METADATA +0 -212
- /aiagents4pharma/{configs/talk2biomodels → talk2biomodels/configs}/__init__.py +0 -0
- /aiagents4pharma/{configs/talk2biomodels → talk2biomodels/configs}/agents/__init__.py +0 -0
- /aiagents4pharma/{configs/talk2biomodels → talk2biomodels/configs}/agents/t2b_agent/__init__.py +0 -0
- /aiagents4pharma/{configs/talk2biomodels → talk2biomodels/configs}/tools/__init__.py +0 -0
- /aiagents4pharma/{configs/talk2biomodels → talk2biomodels/configs}/tools/ask_question/__init__.py +0 -0
- /aiagents4pharma/{configs/talk2biomodels → talk2biomodels/configs}/tools/get_annotation/__init__.py +0 -0
- {aiagents4pharma-1.17.0.dist-info → aiagents4pharma-1.17.1.dist-info}/LICENSE +0 -0
- {aiagents4pharma-1.17.0.dist-info → aiagents4pharma-1.17.1.dist-info}/WHEEL +0 -0
- {aiagents4pharma-1.17.0.dist-info → aiagents4pharma-1.17.1.dist-info}/top_level.txt +0 -0
aiagents4pharma/__init__.py
CHANGED
@@ -55,10 +55,10 @@ def get_app(uniq_id, llm_model='gpt-4o-mini'):
|
|
55
55
|
llm = ChatOpenAI(model=llm_model, temperature=0)
|
56
56
|
# Load hydra configuration
|
57
57
|
logger.log(logging.INFO, "Load Hydra configuration for Talk2BioModels agent.")
|
58
|
-
with hydra.initialize(version_base=None, config_path="
|
58
|
+
with hydra.initialize(version_base=None, config_path="../configs"):
|
59
59
|
cfg = hydra.compose(config_name='config',
|
60
|
-
overrides=['
|
61
|
-
cfg = cfg.
|
60
|
+
overrides=['agents/t2b_agent=default'])
|
61
|
+
cfg = cfg.agents.t2b_agent
|
62
62
|
logger.log(logging.INFO, "state_modifier: %s", cfg.state_modifier)
|
63
63
|
# Create the agent
|
64
64
|
model = create_react_agent(
|
@@ -66,10 +66,10 @@ class AskQuestionTool(BaseTool):
|
|
66
66
|
question_context,
|
67
67
|
experiment_name)
|
68
68
|
# Load hydra configuration
|
69
|
-
with hydra.initialize(version_base=None, config_path="
|
69
|
+
with hydra.initialize(version_base=None, config_path="../configs"):
|
70
70
|
cfg = hydra.compose(config_name='config',
|
71
|
-
overrides=['
|
72
|
-
cfg = cfg.
|
71
|
+
overrides=['tools/ask_question=default'])
|
72
|
+
cfg = cfg.tools.ask_question
|
73
73
|
# Get the context of the question
|
74
74
|
# and based on the context, get the data
|
75
75
|
# and prompt content to ask the question
|
@@ -111,5 +111,6 @@ class AskQuestionTool(BaseTool):
|
|
111
111
|
verbose=True,
|
112
112
|
prefix=prompt_content)
|
113
113
|
# Invoke the agent with the question
|
114
|
-
llm_result = df_agent.invoke(question)
|
114
|
+
llm_result = df_agent.invoke(question, stream_mode=None)
|
115
|
+
# print (llm_result)
|
115
116
|
return llm_result["output"]
|
@@ -34,10 +34,10 @@ def extract_relevant_species_names(model_object, arg_data, state):
|
|
34
34
|
Extract relevant species names based on the user question.
|
35
35
|
"""
|
36
36
|
# Load hydra configuration
|
37
|
-
with hydra.initialize(version_base=None, config_path="
|
37
|
+
with hydra.initialize(version_base=None, config_path="../configs"):
|
38
38
|
cfg = hydra.compose(config_name='config',
|
39
|
-
overrides=['
|
40
|
-
cfg = cfg.
|
39
|
+
overrides=['tools/get_annotation=default'])
|
40
|
+
cfg = cfg.tools.get_annotation
|
41
41
|
logger.info("Loaded the following system prompt for the LLM"
|
42
42
|
" to get a structured output: %s", cfg.prompt)
|
43
43
|
|
@@ -29,7 +29,7 @@ class SearchModelsTool(BaseTool):
|
|
29
29
|
name: str = "search_models"
|
30
30
|
description: str = "Search models in the BioMmodels database based on keywords."
|
31
31
|
args_schema: Type[BaseModel] = SearchModelsInput
|
32
|
-
return_direct: bool =
|
32
|
+
return_direct: bool = False
|
33
33
|
|
34
34
|
def _run(self,
|
35
35
|
query: str,
|
@@ -0,0 +1,150 @@
|
|
1
|
+
Metadata-Version: 2.2
|
2
|
+
Name: aiagents4pharma
|
3
|
+
Version: 1.17.1
|
4
|
+
Summary: AI Agents for drug discovery, drug development, and other pharmaceutical R&D
|
5
|
+
Classifier: Programming Language :: Python :: 3
|
6
|
+
Classifier: License :: OSI Approved :: MIT License
|
7
|
+
Classifier: Operating System :: OS Independent
|
8
|
+
Requires-Python: >=3.12
|
9
|
+
Description-Content-Type: text/markdown
|
10
|
+
License-File: LICENSE
|
11
|
+
Requires-Dist: copasi_basico==0.78
|
12
|
+
Requires-Dist: coverage==7.6.4
|
13
|
+
Requires-Dist: einops==0.8.0
|
14
|
+
Requires-Dist: gdown==5.2.0
|
15
|
+
Requires-Dist: huggingface_hub==0.26.5
|
16
|
+
Requires-Dist: hydra-core==1.3.2
|
17
|
+
Requires-Dist: joblib==1.4.2
|
18
|
+
Requires-Dist: langchain==0.3.7
|
19
|
+
Requires-Dist: langchain-community==0.3.5
|
20
|
+
Requires-Dist: langchain-core==0.3.31
|
21
|
+
Requires-Dist: langchain-experimental==0.3.3
|
22
|
+
Requires-Dist: langchain-openai==0.2.5
|
23
|
+
Requires-Dist: langchain_ollama==0.2.2
|
24
|
+
Requires-Dist: langgraph==0.2.66
|
25
|
+
Requires-Dist: matplotlib==3.9.2
|
26
|
+
Requires-Dist: openai==1.59.4
|
27
|
+
Requires-Dist: ollama==0.4.6
|
28
|
+
Requires-Dist: pandas==2.2.3
|
29
|
+
Requires-Dist: plotly==5.24.1
|
30
|
+
Requires-Dist: pydantic==2.9.2
|
31
|
+
Requires-Dist: pylint==3.3.1
|
32
|
+
Requires-Dist: pypdf==5.2.0
|
33
|
+
Requires-Dist: pytest==8.3.3
|
34
|
+
Requires-Dist: pytest-asyncio==0.25.2
|
35
|
+
Requires-Dist: streamlit==1.39.0
|
36
|
+
Requires-Dist: sentence_transformers==3.3.1
|
37
|
+
Requires-Dist: tabulate==0.9.0
|
38
|
+
Requires-Dist: torch==2.2.2
|
39
|
+
Requires-Dist: torch_geometric==2.6.1
|
40
|
+
Requires-Dist: tqdm==4.66.6
|
41
|
+
Requires-Dist: transformers==4.48.0
|
42
|
+
Requires-Dist: mkdocs==1.6.1
|
43
|
+
Requires-Dist: mkdocs-jupyter==0.25.1
|
44
|
+
Requires-Dist: mkdocs-material==9.5.47
|
45
|
+
Requires-Dist: mkdocstrings-python==1.12.2
|
46
|
+
Requires-Dist: mkdocs-include-markdown-plugin==7.1.2
|
47
|
+
Requires-Dist: mkdocstrings==0.27.0
|
48
|
+
Requires-Dist: streamlit-feedback
|
49
|
+
|
50
|
+
[](https://github.com/VirtualPatientEngine/AIAgents4Pharma/actions/workflows/tests_talk2biomodels.yml)
|
51
|
+
[](https://github.com/VirtualPatientEngine/AIAgents4Pharma/actions/workflows/tests_talk2cells.yml)
|
52
|
+
[](https://github.com/VirtualPatientEngine/AIAgents4Pharma/actions/workflows/tests_talk2knowledgegraphs.yml)
|
53
|
+
[](https://github.com/VirtualPatientEngine/AIAgents4Pharma/actions/workflows/tests_talk2scholars.yml)
|
54
|
+

|
55
|
+

|
56
|
+
|
57
|
+
|
58
|
+
## Introduction
|
59
|
+
|
60
|
+
Welcome to **AIAgents4Pharma** – an open-source project by [Team VPE](https://github.com/VirtualPatientEngine) that brings together AI-driven tools to help researchers and pharma interact seamlessly with complex biological data.
|
61
|
+
|
62
|
+
Our toolkit currently consists of the following agents:
|
63
|
+
|
64
|
+
- **Talk2BioModels** _(v1 released; v2 in progress)_: Engage directly with mathematical models in systems biology.
|
65
|
+
- **Talk2KnowledgeGraphs** _(v1 in progress)_: Access and explore complex biological knowledge graphs for insightful data connections.
|
66
|
+
- **Talk2Scholars** _(v1 in progress)_: Get recommendations for articles related to your choice. Download, query, and write/retrieve them to your reference manager (currently supporting Zotero).
|
67
|
+
- **Talk2Cells** _(v1 in progress)_: Query and analyze sequencing data with ease.
|
68
|
+
|
69
|
+

|
70
|
+
|
71
|
+
## Getting Started
|
72
|
+
|
73
|
+

|
74
|
+
|
75
|
+
### Installation
|
76
|
+
|
77
|
+
#### Option 1: PyPI
|
78
|
+
|
79
|
+
```bash
|
80
|
+
pip install aiagents4pharma
|
81
|
+
```
|
82
|
+
|
83
|
+
Check out the tutorials on each agent for detailed instrcutions.
|
84
|
+
|
85
|
+
#### Option 2: git
|
86
|
+
|
87
|
+
1. **Clone the repository:**
|
88
|
+
```bash
|
89
|
+
git clone https://github.com/VirtualPatientEngine/AIAgents4Pharma
|
90
|
+
cd AIAgents4Pharma
|
91
|
+
```
|
92
|
+
2. **Install dependencies:**
|
93
|
+
```bash
|
94
|
+
pip install .
|
95
|
+
```
|
96
|
+
3. **Initialize OPENAI_API_KEY**
|
97
|
+
```bash
|
98
|
+
export OPENAI_API_KEY=....
|
99
|
+
```
|
100
|
+
4. **[Optional] Initialize LANGSMITH_API_KEY**
|
101
|
+
```bash
|
102
|
+
export LANGCHAIN_TRACING_V2=true
|
103
|
+
export LANGCHAIN_API_KEY=<your-api-key>
|
104
|
+
```
|
105
|
+
_Please note that this will create a new tracing project in your Langsmith
|
106
|
+
account with the name `T2X-xxxx`, where `X` can be `B` (Biomodels), `S` (Scholars),
|
107
|
+
`KG` (KnowledgeGraphs), or `C` (Cells). If you skip the previous step, it will
|
108
|
+
default to the name `default`. `xxxx` will be the 4-digit ID created for the
|
109
|
+
session._
|
110
|
+
|
111
|
+
5. **Launch the app:**
|
112
|
+
```bash
|
113
|
+
streamlit run app/frontend/streamlit_app_<agent>.py
|
114
|
+
```
|
115
|
+
_Replace <agent> with the agent name you are interested to launch._
|
116
|
+
|
117
|
+
For detailed instructions on each agent, please refer to their respective modules.
|
118
|
+
|
119
|
+
---
|
120
|
+
|
121
|
+
## Contributing
|
122
|
+
|
123
|
+
We welcome contributions to AIAgents4Pharma! Here’s how you can help:
|
124
|
+
|
125
|
+
1. **Fork the repository**
|
126
|
+
2. **Create a new branch** for your feature (`git checkout -b feat/feature-name`)
|
127
|
+
3. **Commit your changes** (`git commit -m 'feat: Add new feature'`)
|
128
|
+
4. **Push to the branch** (`git push origin feat/feature-name`)
|
129
|
+
5. **Open a pull request** and reach out to any one of us below via Discussions:
|
130
|
+
|
131
|
+
_Note: We welcome all contributions, not just programming-related ones. Feel free to open bug reports, suggest new features, or participate as a beta tester. Your support is greatly appreciated!_
|
132
|
+
|
133
|
+
- **Talk2Biomodels/Talk2Cells**: [@gurdeep330](https://github.com/gurdeep330) [@lilijap](https://github.com/lilijap) [@dmccloskey](https://github.com/dmccloskey)
|
134
|
+
- **Talk2KnowledgeGraphs**: [@awmulyadi](https://github.com/awmulyadi) [@dmccloskey](https://github.com/dmccloskey)
|
135
|
+
- **Talk2Scholars**: [@ansh-info](https://github.com/ansh-info) [@gurdeep330](https://github.com/gurdeep330) [@dmccloskey](https://github.com/dmccloskey)
|
136
|
+
|
137
|
+
### Current Needs
|
138
|
+
|
139
|
+
- **Beta testers** for Talk2BioModels and Talk2Scholars.
|
140
|
+
- **Developers** with experience in Python and Bioinformatics and/or knowledge graphs for contributions to AIAgents4Pharma.
|
141
|
+
|
142
|
+
Feel free to reach out to us via Discussions.
|
143
|
+
|
144
|
+
Check out our [CONTRIBUTING.md](CONTRIBUTING.md) for more information.
|
145
|
+
|
146
|
+
---
|
147
|
+
|
148
|
+
## Feedback
|
149
|
+
|
150
|
+
Questions/Bug reports/Feature requests/Comments/Suggestions? We welcome all. Please use `Isssues` or `Discussions` 😀
|
@@ -1,22 +1,20 @@
|
|
1
|
-
aiagents4pharma/__init__.py,sha256=
|
2
|
-
aiagents4pharma/
|
3
|
-
aiagents4pharma/configs/config.yaml,sha256=e0w2GOBVWcoPDtX-z4S6yKbv2rja5PfGRBhmTPVIXNU,161
|
4
|
-
aiagents4pharma/configs/talk2biomodels/__init__.py,sha256=safyFKhkd5Wlirl9dMZIHWDLTpY2oLw9wjIM7ZtLIHk,88
|
5
|
-
aiagents4pharma/configs/talk2biomodels/agents/__init__.py,sha256=_ZoG8snICK2bidWtc2KOGs738LWg9_r66V9mOMnEb-E,71
|
6
|
-
aiagents4pharma/configs/talk2biomodels/agents/t2b_agent/__init__.py,sha256=-fAORvyFmG2iSvFOFDixmt9OTQRR58y89uhhu2EgbA8,46
|
7
|
-
aiagents4pharma/configs/talk2biomodels/agents/t2b_agent/default.yaml,sha256=eLrJIezoPJ6_DvrSYsi3eALl03o0hJhntej3ESoeKKg,551
|
8
|
-
aiagents4pharma/configs/talk2biomodels/tools/__init__.py,sha256=B08KWjj7bpizuTETGnnngrEVK4nzdWGREdoCCSw1Sm4,102
|
9
|
-
aiagents4pharma/configs/talk2biomodels/tools/ask_question/__init__.py,sha256=-fAORvyFmG2iSvFOFDixmt9OTQRR58y89uhhu2EgbA8,46
|
10
|
-
aiagents4pharma/configs/talk2biomodels/tools/ask_question/default.yaml,sha256=yy-Sq1u4dBlTFi_UeoWYoHkWRDWueJWVNK_rcUCC5bw,1747
|
11
|
-
aiagents4pharma/configs/talk2biomodels/tools/get_annotation/__init__.py,sha256=-fAORvyFmG2iSvFOFDixmt9OTQRR58y89uhhu2EgbA8,46
|
12
|
-
aiagents4pharma/configs/talk2biomodels/tools/get_annotation/default.yaml,sha256=8vUlzU5Y3BPggId5bVMo9B23VG4mp2ziTglb4LmLCsc,319
|
13
|
-
aiagents4pharma/talk2biomodels/__init__.py,sha256=2ICwVh1u07SZv31Jd2DKHobauOxWNWY29_Gqq3kOnNQ,159
|
1
|
+
aiagents4pharma/__init__.py,sha256=Ua9fqYW5gV1SZ0nOyOMd4T3wTlBui1-mrlJzFUQLFgY,161
|
2
|
+
aiagents4pharma/talk2biomodels/__init__.py,sha256=1cq1HX2xoi_a0nDPuXYoSTrnL26OHQBW3zXNwwwjFO0,181
|
14
3
|
aiagents4pharma/talk2biomodels/agents/__init__.py,sha256=sn5-fREjMdEvb-OUan3iOqrgYGjplNx3J8hYOaW0Po8,128
|
15
|
-
aiagents4pharma/talk2biomodels/agents/t2b_agent.py,sha256=
|
4
|
+
aiagents4pharma/talk2biomodels/agents/t2b_agent.py,sha256=CXlqDRqG_cxb1TUEL6960s2ActFiXblYPraagDDGQpo,3416
|
16
5
|
aiagents4pharma/talk2biomodels/api/__init__.py,sha256=_GmDQqDLYpsUPUeE1nBNlT5AI9oTXIcqgOfNfvmonqA,123
|
17
6
|
aiagents4pharma/talk2biomodels/api/kegg.py,sha256=QzYDAfJ16E7tbHGxP8ZNWRizMkMRS_HJuucueXEC1Gg,2943
|
18
7
|
aiagents4pharma/talk2biomodels/api/ols.py,sha256=qq0Qy-gJDxanQW-HfCChDsTQsY1M41ua8hMlTnfuzrA,2202
|
19
8
|
aiagents4pharma/talk2biomodels/api/uniprot.py,sha256=aPUAVBR7UYXDuuhDpKezAK2aTMzo-NxFYFq6C0W5u6U,1175
|
9
|
+
aiagents4pharma/talk2biomodels/configs/__init__.py,sha256=safyFKhkd5Wlirl9dMZIHWDLTpY2oLw9wjIM7ZtLIHk,88
|
10
|
+
aiagents4pharma/talk2biomodels/configs/agents/__init__.py,sha256=_ZoG8snICK2bidWtc2KOGs738LWg9_r66V9mOMnEb-E,71
|
11
|
+
aiagents4pharma/talk2biomodels/configs/agents/t2b_agent/__init__.py,sha256=-fAORvyFmG2iSvFOFDixmt9OTQRR58y89uhhu2EgbA8,46
|
12
|
+
aiagents4pharma/talk2biomodels/configs/agents/t2b_agent/default.yaml,sha256=pSViMKwKyMQDm8LzbfIaGdxph73iHYaXMiv5YOuxM7k,536
|
13
|
+
aiagents4pharma/talk2biomodels/configs/tools/__init__.py,sha256=B08KWjj7bpizuTETGnnngrEVK4nzdWGREdoCCSw1Sm4,102
|
14
|
+
aiagents4pharma/talk2biomodels/configs/tools/ask_question/__init__.py,sha256=-fAORvyFmG2iSvFOFDixmt9OTQRR58y89uhhu2EgbA8,46
|
15
|
+
aiagents4pharma/talk2biomodels/configs/tools/ask_question/default.yaml,sha256=pMjs-peecRl8xtIucbEM1Z8Mm_8KGZj0JBrKKD3cMxU,1732
|
16
|
+
aiagents4pharma/talk2biomodels/configs/tools/get_annotation/__init__.py,sha256=-fAORvyFmG2iSvFOFDixmt9OTQRR58y89uhhu2EgbA8,46
|
17
|
+
aiagents4pharma/talk2biomodels/configs/tools/get_annotation/default.yaml,sha256=o5kqLJ5QGJsLMUhAqotudIMhxxNfPUVcDVH1tdRIutU,304
|
20
18
|
aiagents4pharma/talk2biomodels/models/__init__.py,sha256=5fTHHm3PVloYPNKXbgNlcPgv3-u28ZquxGydFYDfhJA,122
|
21
19
|
aiagents4pharma/talk2biomodels/models/basico_model.py,sha256=PH25FTOuUjsmw_UUxoRb-4kptOYpicEn4GqS0phS3nk,4807
|
22
20
|
aiagents4pharma/talk2biomodels/models/sys_bio_model.py,sha256=JeoiGQAvQABHnG0wKR2XBmmxqQdtgO6kxaLDUTUmr1s,2001
|
@@ -36,15 +34,15 @@ aiagents4pharma/talk2biomodels/tests/test_simulate_model.py,sha256=GjLE1DZpcKUAF
|
|
36
34
|
aiagents4pharma/talk2biomodels/tests/test_steady_state.py,sha256=zt15KQoQku6jyzvpJXwINGTyhEnQl8wX81ueHlxnUCA,3467
|
37
35
|
aiagents4pharma/talk2biomodels/tests/test_sys_bio_model.py,sha256=HSmBBViMi0jYf4gWX21IbppAfDzG0nr_S3KtKS9fZVQ,2165
|
38
36
|
aiagents4pharma/talk2biomodels/tools/__init__.py,sha256=6H2HWv5Q4NZYEmw-Ti5KZnJlEqhaC2HXSDZa6kiSl-U,350
|
39
|
-
aiagents4pharma/talk2biomodels/tools/ask_question.py,sha256=
|
37
|
+
aiagents4pharma/talk2biomodels/tools/ask_question.py,sha256=ASkqT6VHUWcMdkVAlqqfbwq7_EBVAXdtmlkMFy7-XxI,4698
|
40
38
|
aiagents4pharma/talk2biomodels/tools/custom_plotter.py,sha256=HWwKTX3o4dk0GcRVTO2hPrFSu98mtJ4TKC_hbHXOe1c,4018
|
41
|
-
aiagents4pharma/talk2biomodels/tools/get_annotation.py,sha256=
|
39
|
+
aiagents4pharma/talk2biomodels/tools/get_annotation.py,sha256=Cea0vid_KX1xjI6ZqDygREAcM7sC7wZXNLTkAN8Nk3Y,13387
|
42
40
|
aiagents4pharma/talk2biomodels/tools/get_modelinfo.py,sha256=57dkXrBeRpyiaW3dYkoWIfr6zSsFHcWRhvUVNyLcvUs,6363
|
43
41
|
aiagents4pharma/talk2biomodels/tools/load_arguments.py,sha256=bffNIlBDTCSFYiZprA73yi8Jbb8z3Oh2decVNh1UnZc,4162
|
44
42
|
aiagents4pharma/talk2biomodels/tools/load_biomodel.py,sha256=pyVzLQoMnuJYEwsjeOlqcUrbU1F1Z-pNlgkhFaoKpy0,689
|
45
43
|
aiagents4pharma/talk2biomodels/tools/parameter_scan.py,sha256=aNh94LgBgVXBIczuNkbSsOZ9j54YVEdZWmZbZr7Nk8k,12465
|
46
44
|
aiagents4pharma/talk2biomodels/tools/query_article.py,sha256=1tpYiE69MYcqiNcRaBgNiYzkkNmuTnlxLuBL_FnRuBU,2058
|
47
|
-
aiagents4pharma/talk2biomodels/tools/search_models.py,sha256=
|
45
|
+
aiagents4pharma/talk2biomodels/tools/search_models.py,sha256=b2OK-Z4ilddbEaJPSQlnZ6sHX3UAWXr_Hq-knoSbbAE,2654
|
48
46
|
aiagents4pharma/talk2biomodels/tools/simulate_model.py,sha256=qXs9lg9XgA7EaRiX3wBS8w_ug8tI-G3pzhcRg6dTRio,5060
|
49
47
|
aiagents4pharma/talk2biomodels/tools/steady_state.py,sha256=j3ckuNlUtv7lT922MbN0JhT9H0JpWAdx2mLPwao6uu8,7123
|
50
48
|
aiagents4pharma/talk2cells/__init__.py,sha256=zmOP5RAhabgKIQP-W4P4qKME2tG3fhAXM3MeO5_H8kE,120
|
@@ -114,8 +112,8 @@ aiagents4pharma/talk2scholars/tools/s2/display_results.py,sha256=B8JJGohi1Eyx8C3
|
|
114
112
|
aiagents4pharma/talk2scholars/tools/s2/multi_paper_rec.py,sha256=0Y3q8TkF_Phng9L7g1kk9Fhyit9UNitWurp03H0GZv8,4455
|
115
113
|
aiagents4pharma/talk2scholars/tools/s2/search.py,sha256=CcgFN7YuuQ9Vl1DJcldnnvPrswABKjNxeauK1rABps8,4176
|
116
114
|
aiagents4pharma/talk2scholars/tools/s2/single_paper_rec.py,sha256=irS-igdG8BZbVb0Z4VlIjzsyBlUfREd0v0_RlUM-0_U,4994
|
117
|
-
aiagents4pharma-1.17.
|
118
|
-
aiagents4pharma-1.17.
|
119
|
-
aiagents4pharma-1.17.
|
120
|
-
aiagents4pharma-1.17.
|
121
|
-
aiagents4pharma-1.17.
|
115
|
+
aiagents4pharma-1.17.1.dist-info/LICENSE,sha256=IcIbyB1Hyk5ZDah03VNQvJkbNk2hkBCDqQ8qtnCvB4Q,1077
|
116
|
+
aiagents4pharma-1.17.1.dist-info/METADATA,sha256=6co2HtNzvTLVFczemaajMlZ-7RrM9lmbYwRD3zcfolw,6744
|
117
|
+
aiagents4pharma-1.17.1.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
|
118
|
+
aiagents4pharma-1.17.1.dist-info/top_level.txt,sha256=-AH8rMmrSnJtq7HaAObS78UU-cTCwvX660dSxeM7a0A,16
|
119
|
+
aiagents4pharma-1.17.1.dist-info/RECORD,,
|
@@ -1,212 +0,0 @@
|
|
1
|
-
Metadata-Version: 2.2
|
2
|
-
Name: aiagents4pharma
|
3
|
-
Version: 1.17.0
|
4
|
-
Summary: AI Agents for drug discovery, drug development, and other pharmaceutical R&D
|
5
|
-
Classifier: Programming Language :: Python :: 3
|
6
|
-
Classifier: License :: OSI Approved :: MIT License
|
7
|
-
Classifier: Operating System :: OS Independent
|
8
|
-
Requires-Python: >=3.12
|
9
|
-
Description-Content-Type: text/markdown
|
10
|
-
License-File: LICENSE
|
11
|
-
Requires-Dist: copasi_basico==0.78
|
12
|
-
Requires-Dist: coverage==7.6.4
|
13
|
-
Requires-Dist: einops==0.8.0
|
14
|
-
Requires-Dist: gdown==5.2.0
|
15
|
-
Requires-Dist: huggingface_hub==0.26.5
|
16
|
-
Requires-Dist: hydra-core==1.3.2
|
17
|
-
Requires-Dist: joblib==1.4.2
|
18
|
-
Requires-Dist: langchain==0.3.7
|
19
|
-
Requires-Dist: langchain-community==0.3.5
|
20
|
-
Requires-Dist: langchain-core==0.3.31
|
21
|
-
Requires-Dist: langchain-experimental==0.3.3
|
22
|
-
Requires-Dist: langchain-openai==0.2.5
|
23
|
-
Requires-Dist: langchain_ollama==0.2.2
|
24
|
-
Requires-Dist: langgraph==0.2.66
|
25
|
-
Requires-Dist: matplotlib==3.9.2
|
26
|
-
Requires-Dist: openai==1.59.4
|
27
|
-
Requires-Dist: ollama==0.4.6
|
28
|
-
Requires-Dist: pandas==2.2.3
|
29
|
-
Requires-Dist: plotly==5.24.1
|
30
|
-
Requires-Dist: pydantic==2.9.2
|
31
|
-
Requires-Dist: pylint==3.3.1
|
32
|
-
Requires-Dist: pypdf==5.2.0
|
33
|
-
Requires-Dist: pytest==8.3.3
|
34
|
-
Requires-Dist: pytest-asyncio==0.25.2
|
35
|
-
Requires-Dist: streamlit==1.39.0
|
36
|
-
Requires-Dist: sentence_transformers==3.3.1
|
37
|
-
Requires-Dist: tabulate==0.9.0
|
38
|
-
Requires-Dist: torch==2.2.2
|
39
|
-
Requires-Dist: torch_geometric==2.6.1
|
40
|
-
Requires-Dist: tqdm==4.66.6
|
41
|
-
Requires-Dist: transformers==4.48.0
|
42
|
-
Requires-Dist: mkdocs==1.6.1
|
43
|
-
Requires-Dist: mkdocs-jupyter==0.25.1
|
44
|
-
Requires-Dist: mkdocs-material==9.5.47
|
45
|
-
Requires-Dist: mkdocstrings-python==1.12.2
|
46
|
-
Requires-Dist: mkdocs-include-markdown-plugin==7.1.2
|
47
|
-
Requires-Dist: mkdocstrings==0.27.0
|
48
|
-
Requires-Dist: streamlit-feedback
|
49
|
-
|
50
|
-
[](https://github.com/VirtualPatientEngine/AIAgents4Pharma/actions/workflows/tests_talk2biomodels.yml)
|
51
|
-
[](https://github.com/VirtualPatientEngine/AIAgents4Pharma/actions/workflows/tests_talk2cells.yml)
|
52
|
-
[](https://github.com/VirtualPatientEngine/AIAgents4Pharma/actions/workflows/tests_talk2knowledgegraphs.yml)
|
53
|
-
[](https://github.com/VirtualPatientEngine/AIAgents4Pharma/actions/workflows/tests_talk2scholars.yml)
|
54
|
-

|
55
|
-

|
56
|
-
|
57
|
-
<h1 align="center" style="border-bottom: none;">🤖 AIAgents4Pharma</h1>
|
58
|
-
|
59
|
-
Welcome to **AIAgents4Pharma** – an open-source project by [Team VPE](https://github.com/VirtualPatientEngine) that brings together AI-driven tools to help researchers and pharma interact seamlessly with complex biological data.
|
60
|
-
|
61
|
-
Our toolkit currently consists of three intelligent agents, each designed to simplify and enhance access to specialized data in biology:
|
62
|
-
|
63
|
-
- **Talk2BioModels**: Engage directly with mathematical models in systems biology.
|
64
|
-
- **Talk2Cells** _(Work in progress)_: Query and analyze sequencing data with ease.
|
65
|
-
- **Talk2KnowledgeGraphs** _(Work in progress)_: Access and explore complex biological knowledge graphs for insightful data connections.
|
66
|
-
- **Talk2Scholars** _(Coming soon)_: Get recommendations for articles related to your choice. Download, query, and write/retrieve them to your reference manager (currently supporting Zotero).
|
67
|
-
|
68
|
-
---
|
69
|
-
|
70
|
-
## Overview of Agents
|
71
|
-
|
72
|
-
### 1. Talk2BioModels
|
73
|
-
|
74
|
-
**Talk2BioModels** is an AI agent designed to facilitate interaction with mathematical models in systems biology. Systems biology models are critical in understanding complex biological mechanisms, but they’re often inaccessible to those without coding or mathematical expertise. Talk2BioModels simplifies this, enabling researchers to focus on analysis and interpretation rather than on programming. With Talk2BioModels, users can interact directly with these models through natural language. By simply asking questions or making requests, users can:
|
75
|
-
|
76
|
-
- Forward simulation of both internal and open-source models (BioModels).
|
77
|
-
- Adjust parameters within the model to simulate different conditions.
|
78
|
-
- Query simulation results.
|
79
|
-
- Extract model information such as species, parameters, units and description.
|
80
|
-
|
81
|
-
### 2. Talk2Cells _(Work in Progress)_
|
82
|
-
|
83
|
-
**Talk2Cells** is being developed to provide direct access to and analysis of sequencing data, such as RNA-Seq or DNA-Seq, using natural language.
|
84
|
-
|
85
|
-
### 3. Talk2KnowledgeGraphs _(Work in Progress)_
|
86
|
-
|
87
|
-
**Talk2KnowledgeGraphs** is an agent designed to enable interaction with biological knowledge graphs (KGs). KGs integrate vast amounts of structured biological data into a format that highlights relationships between entities, such as proteins, genes, and diseases.
|
88
|
-
|
89
|
-
### 4. Talk2Scholars _(Work in Progress)_
|
90
|
-
|
91
|
-
Talk2Scholars is an AI-powered hierarchical agent system designed to revolutionize academic paper search and analysis. Through intelligent conversation, users can discover, analyze, and receive recommendations for academic papers using state-of-the-art natural language processing.
|
92
|
-
|
93
|
-
## Getting Started
|
94
|
-
|
95
|
-

|
96
|
-
|
97
|
-
### Installation
|
98
|
-
|
99
|
-
#### Option 1: PyPI
|
100
|
-
|
101
|
-
```bash
|
102
|
-
pip install aiagents4pharma
|
103
|
-
```
|
104
|
-
|
105
|
-
Check out the tutorials on each agent for detailed instrcutions.
|
106
|
-
|
107
|
-
#### Option 2: git
|
108
|
-
|
109
|
-
1. **Clone the repository:**
|
110
|
-
|
111
|
-
```bash
|
112
|
-
git clone https://github.com/VirtualPatientEngine/AIAgents4Pharma
|
113
|
-
cd AIAgents4Pharma
|
114
|
-
```
|
115
|
-
|
116
|
-
2. **Install dependencies:**
|
117
|
-
|
118
|
-
```bash
|
119
|
-
pip install .
|
120
|
-
```
|
121
|
-
|
122
|
-
3. **Initialize OPENAI_API_KEY**
|
123
|
-
|
124
|
-
```bash
|
125
|
-
export OPENAI_API_KEY=....
|
126
|
-
```
|
127
|
-
|
128
|
-
4. **[Optional] Set up login credentials**
|
129
|
-
|
130
|
-
```bash
|
131
|
-
vi .streamlit/secrets.toml
|
132
|
-
```
|
133
|
-
|
134
|
-
and enter
|
135
|
-
|
136
|
-
```
|
137
|
-
password='XXX'
|
138
|
-
```
|
139
|
-
|
140
|
-
Please note that the passoword will be same for all the users.
|
141
|
-
|
142
|
-
5. **[Optional] Initialize LANGSMITH_API_KEY**
|
143
|
-
|
144
|
-
```bash
|
145
|
-
export LANGCHAIN_TRACING_V2=true
|
146
|
-
export LANGCHAIN_API_KEY=<your-api-key>
|
147
|
-
```
|
148
|
-
|
149
|
-
Please note that this will create a new tracing project in your Langsmith
|
150
|
-
account with the name `<user_name>@<uuid>`, where `user_name` is the name
|
151
|
-
you provided in the previous step. If you skip the previous step, it will
|
152
|
-
default to `default`. <uuid> will be the 128 bit unique ID created for the
|
153
|
-
session.
|
154
|
-
|
155
|
-
6. **Launch the app:**
|
156
|
-
```bash
|
157
|
-
streamlit run app/frontend/streamlit_app.py
|
158
|
-
```
|
159
|
-
|
160
|
-
For detailed instructions on each agent, please refer to their respective folders.
|
161
|
-
|
162
|
-
---
|
163
|
-
|
164
|
-
## Usage
|
165
|
-
|
166
|
-
**Talk2BioModels** currently provides an interactive console where you can enter natural language queries to simulate models, adjust parameters, and query the simulated results.
|
167
|
-
|
168
|
-
More detailed usage examples, including sample data for Talk2Cells and Talk2KnowledgeGraphs, will be provided as development progresses.
|
169
|
-
|
170
|
-
---
|
171
|
-
|
172
|
-
## Contributing
|
173
|
-
|
174
|
-
We welcome contributions to AIAgents4Pharma! Here’s how you can help:
|
175
|
-
|
176
|
-
1. **Fork the repository**
|
177
|
-
2. **Create a new branch** for your feature (`git checkout -b feat/feature-name`)
|
178
|
-
3. **Commit your changes** (`git commit -m 'feat: Add new feature'`)
|
179
|
-
4. **Push to the branch** (`git push origin feat/feature-name`)
|
180
|
-
5. **Open a pull request**
|
181
|
-
|
182
|
-
### Current Needs
|
183
|
-
|
184
|
-
- **Beta testers** for Talk2BioModels.
|
185
|
-
- **Developers** with experience in natural language processing, bioinformatics, or knowledge graphs for contributions to AIAgents4Pharma.
|
186
|
-
|
187
|
-
Check out our [CONTRIBUTING.md](CONTRIBUTING.md) for more information.
|
188
|
-
|
189
|
-
---
|
190
|
-
|
191
|
-
## Roadmap
|
192
|
-
|
193
|
-
### Completed
|
194
|
-
|
195
|
-
- **Talk2BioModels**: Initial release with core capabilities for interacting with systems biology models.
|
196
|
-
|
197
|
-
### Planned
|
198
|
-
|
199
|
-
- **User Interface**: Interactive web UI for all agents.
|
200
|
-
- **Talk2Cells**: Integration of sequencing data analysis tools.
|
201
|
-
- **Talk2KnowledgeGraphs**: Interface for biological knowledge graph interaction.
|
202
|
-
- **Talk2Scholars**: Interface for exploring articles
|
203
|
-
|
204
|
-
We’re excited to bring AIAgents4Pharma to the bioinformatics and pharmaceutical research community. Together, let’s make data-driven biological research more accessible and insightful.
|
205
|
-
|
206
|
-
**Get Started** with AIAgents4Pharma today and transform the way you interact with biological data.
|
207
|
-
|
208
|
-
---
|
209
|
-
|
210
|
-
## Feedback
|
211
|
-
|
212
|
-
Questions/Bug reports/Feature requests/Comments/Suggestions? We welcome all. Please use the `Isssues` tab 😀
|
File without changes
|
File without changes
|
/aiagents4pharma/{configs/talk2biomodels → talk2biomodels/configs}/agents/t2b_agent/__init__.py
RENAMED
File without changes
|
File without changes
|
/aiagents4pharma/{configs/talk2biomodels → talk2biomodels/configs}/tools/ask_question/__init__.py
RENAMED
File without changes
|
/aiagents4pharma/{configs/talk2biomodels → talk2biomodels/configs}/tools/get_annotation/__init__.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|