Home
Introduction
Welcome to AIAgents4Pharma – an open-source project by Team VPE that brings together AI-driven tools to help researchers and pharma interact seamlessly with complex biological data.
Our toolkit currently consists of the following agents:
- Talk2BioModels (v1 released; v2 in progress): Engage directly with mathematical models in systems biology.
- Talk2KnowledgeGraphs (v1 in progress): Access and explore complex biological knowledge graphs for insightful data connections.
- 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).
- Talk2Cells (v1 in progress): Query and analyze sequencing data with ease.
- Talk2AIAgents4Pharma (v1 in progress): Converse with all the agents above (currently supports T2B and T2KG)
Getting Started
Installation
Option 1: PyPI
pip install aiagents4pharma
Check out the tutorials on each agent for detailed instrcutions.
Option 2: Docker Hub
Both Talk2Biomodels
and Talk2Scholars
are now available on Docker Hub.
- Pull the Docker images
docker pull virtualpatientengine/talk2biomodels
docker pull virtualpatientengine/talk2scholars
- Run the containers
docker run -d \
--name talk2biomodels \
-e OPENAI_API_KEY=<your_openai_api_key> \
-e NVIDIA_API_KEY=<your_nvidia_api_key> \
-p 8501:8501 \
virtualpatientengine/talk2biomodels
docker run -d \
--name talk2scholars \
-e OPENAI_API_KEY=<your_openai_api_key> \
-e ZOTERO_API_KEY=<your_zotero_api_key> \
-e ZOTERO_USER_ID=<your_zotero_user_id> \
-p 8501:8501 \
virtualpatientengine/talk2scholars
- Access the Web App Open your browser and go to:
http://localhost:8501
You can create a free account at NVIDIA and apply for their free credits here.
Notes
- Ensure you replace
<your_openai_api_key>
,<your_nvidia_api_key>
,<your_zotero_api_key>
, and<your_zotero_user_id>
with your actual credentials. - Both applications use port
8501
, so run them on different ports if needed:Then, access it viadocker run -d -e OPENAI_API_KEY=<your_openai_api_key> -p 8501:8501 virtualpatientengine/talk2scholars
http://localhost:8501
.
Option 3: git
- Clone the repository:
git clone https://github.com/VirtualPatientEngine/AIAgents4Pharma cd AIAgents4Pharma
- Install dependencies:
The current version of T2KG requires additional Ollama library to be installed.
pip install -r requirements.txt
Ollama can be easily downloaded and installed from the following link: https://ollama.com/download
As an alternative, use the following commands to install the library using terminal and to pull necessary model:
- Ubuntu:
curl -fsSL https://ollama.com/install.sh | sh ollama pull nomic-embed-text
- Windows:
curl -L https://ollama.com/download/ollama-windows-amd64.zip -o ollama-windows-amd64.zip tar -xzf .\ollama-windows-amd64.zip start ollama serve ollama pull nomic-embed-text
- macOS:
A list of pulled Ollama models can be checked using the following command:
brew install ollama ollama pull nomic-embed-text
ollama list
- Initialize OPENAI_API_KEY and NVIDIA_API_KEY
export OPENAI_API_KEY=....
export NVIDIA_API_KEY=....
You can create a free account at NVIDIA and apply for their free credits here.
- Initialize ZOTERO_API_KEY and ZOTERO_USER_ID
export ZOTERO_API_KEY=....
export ZOTERO_USER_ID=....
- [Optional] Initialize LANGSMITH_API_KEY
export LANGCHAIN_TRACING_V2=true
export LANGCHAIN_API_KEY=<your-api-key>
Please note that this will create a new tracing project in your Langsmith
account with the name T2X-xxxx
, where X
can be B
(Biomodels), S
(Scholars),
KG
(KnowledgeGraphs), or C
(Cells). If you skip the previous step, it will
default to the name default
. xxxx
will be the 4-digit ID created for the
session.
- Launch the app:
Replace
streamlit run app/frontend/streamlit_app_<agent>.py
with the agent name you are interested to launch.
For detailed instructions on each agent, please refer to their respective modules.
Contributing
We welcome contributions to AIAgents4Pharma! Here’s how you can help:
- Fork the repository
- Create a new branch for your feature (
git checkout -b feat/feature-name
) - Commit your changes (
git commit -m 'feat: Add new feature'
) - Push to the branch (
git push origin feat/feature-name
) - Open a pull request and reach out to any one of us below via Discussions:
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!
- Talk2Biomodels/Talk2Cells: @gurdeep330 @lilijap @dmccloskey
- Talk2KnowledgeGraphs: @awmulyadi @dmccloskey
- Talk2Scholars: @ansh-info @gurdeep330 @dmccloskey
Current Needs
- Beta testers for Talk2BioModels and Talk2Scholars.
- Developers with experience in Python and Bioinformatics and/or knowledge graphs for contributions to AIAgents4Pharma.
Feel free to reach out to us via Discussions.
Check out our CONTRIBUTING.md for more information.
Feedback
Questions/Bug reports/Feature requests/Comments/Suggestions? We welcome all. Please use Isssues
or Discussions
😀