aiagents4pharma 1.9.0__py3-none-any.whl → 1.11.0__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 +9 -6
- aiagents4pharma/talk2biomodels/agents/t2b_agent.py +7 -10
- aiagents4pharma/talk2biomodels/models/basico_model.py +29 -32
- aiagents4pharma/talk2biomodels/models/sys_bio_model.py +9 -6
- aiagents4pharma/talk2biomodels/states/state_talk2biomodels.py +3 -3
- aiagents4pharma/talk2biomodels/tests/test_basico_model.py +7 -8
- aiagents4pharma/talk2biomodels/tests/test_langgraph.py +64 -2
- aiagents4pharma/talk2biomodels/tests/test_sys_bio_model.py +13 -7
- aiagents4pharma/talk2biomodels/tools/__init__.py +1 -0
- aiagents4pharma/talk2biomodels/tools/get_modelinfo.py +5 -3
- aiagents4pharma/talk2biomodels/tools/parameter_scan.py +292 -0
- aiagents4pharma/talk2biomodels/tools/simulate_model.py +9 -11
- aiagents4pharma/talk2competitors/__init__.py +5 -0
- aiagents4pharma/talk2competitors/agents/__init__.py +6 -0
- aiagents4pharma/talk2competitors/agents/main_agent.py +130 -0
- aiagents4pharma/talk2competitors/agents/s2_agent.py +75 -0
- aiagents4pharma/talk2competitors/config/__init__.py +5 -0
- aiagents4pharma/talk2competitors/config/config.py +110 -0
- aiagents4pharma/talk2competitors/state/__init__.py +5 -0
- aiagents4pharma/talk2competitors/state/state_talk2competitors.py +32 -0
- aiagents4pharma/talk2competitors/tests/__init__.py +3 -0
- aiagents4pharma/talk2competitors/tests/test_langgraph.py +274 -0
- aiagents4pharma/talk2competitors/tools/__init__.py +7 -0
- aiagents4pharma/talk2competitors/tools/s2/__init__.py +8 -0
- aiagents4pharma/talk2competitors/tools/s2/display_results.py +25 -0
- aiagents4pharma/talk2competitors/tools/s2/multi_paper_rec.py +132 -0
- aiagents4pharma/talk2competitors/tools/s2/search.py +119 -0
- aiagents4pharma/talk2competitors/tools/s2/single_paper_rec.py +141 -0
- {aiagents4pharma-1.9.0.dist-info → aiagents4pharma-1.11.0.dist-info}/METADATA +39 -23
- {aiagents4pharma-1.9.0.dist-info → aiagents4pharma-1.11.0.dist-info}/RECORD +33 -17
- {aiagents4pharma-1.9.0.dist-info → aiagents4pharma-1.11.0.dist-info}/LICENSE +0 -0
- {aiagents4pharma-1.9.0.dist-info → aiagents4pharma-1.11.0.dist-info}/WHEEL +0 -0
- {aiagents4pharma-1.9.0.dist-info → aiagents4pharma-1.11.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,141 @@
|
|
1
|
+
#!/usr/bin/env python3
|
2
|
+
|
3
|
+
"""
|
4
|
+
This tool is used to return recommendations for a single paper.
|
5
|
+
"""
|
6
|
+
|
7
|
+
import logging
|
8
|
+
from typing import Annotated, Any, Dict, Optional
|
9
|
+
|
10
|
+
import pandas as pd
|
11
|
+
import requests
|
12
|
+
from langchain_core.messages import ToolMessage
|
13
|
+
from langchain_core.tools import tool
|
14
|
+
from langchain_core.tools.base import InjectedToolCallId
|
15
|
+
from langgraph.types import Command
|
16
|
+
from pydantic import BaseModel, Field
|
17
|
+
|
18
|
+
# Configure logging
|
19
|
+
logging.basicConfig(level=logging.INFO)
|
20
|
+
logger = logging.getLogger(__name__)
|
21
|
+
|
22
|
+
|
23
|
+
class SinglePaperRecInput(BaseModel):
|
24
|
+
"""Input schema for single paper recommendation tool."""
|
25
|
+
|
26
|
+
paper_id: str = Field(
|
27
|
+
description="Semantic Scholar Paper ID to get recommendations for (40-character string)"
|
28
|
+
)
|
29
|
+
limit: int = Field(
|
30
|
+
default=2,
|
31
|
+
description="Maximum number of recommendations to return",
|
32
|
+
ge=1,
|
33
|
+
le=500,
|
34
|
+
)
|
35
|
+
year: Optional[str] = Field(
|
36
|
+
default=None,
|
37
|
+
description="Year range in format: YYYY for specific year, "
|
38
|
+
"YYYY- for papers after year, -YYYY for papers before year, or YYYY:YYYY for range",
|
39
|
+
)
|
40
|
+
tool_call_id: Annotated[str, InjectedToolCallId]
|
41
|
+
model_config = {"arbitrary_types_allowed": True}
|
42
|
+
|
43
|
+
|
44
|
+
@tool(args_schema=SinglePaperRecInput)
|
45
|
+
def get_single_paper_recommendations(
|
46
|
+
paper_id: str,
|
47
|
+
tool_call_id: Annotated[str, InjectedToolCallId],
|
48
|
+
limit: int = 2,
|
49
|
+
year: Optional[str] = None,
|
50
|
+
) -> Dict[str, Any]:
|
51
|
+
"""
|
52
|
+
Get paper recommendations based on a single paper.
|
53
|
+
|
54
|
+
Args:
|
55
|
+
paper_id (str): The Semantic Scholar Paper ID to get recommendations for.
|
56
|
+
tool_call_id (Annotated[str, InjectedToolCallId]): The tool call ID.
|
57
|
+
limit (int, optional): The maximum number of recommendations to return. Defaults to 2.
|
58
|
+
year (str, optional): Year range for papers.
|
59
|
+
Supports formats like "2024-", "-2024", "2024:2025". Defaults to None.
|
60
|
+
|
61
|
+
Returns:
|
62
|
+
Dict[str, Any]: The recommendations and related information.
|
63
|
+
"""
|
64
|
+
logger.info("Starting single paper recommendations search.")
|
65
|
+
|
66
|
+
endpoint = (
|
67
|
+
f"https://api.semanticscholar.org/recommendations/v1/papers/forpaper/{paper_id}"
|
68
|
+
)
|
69
|
+
params = {
|
70
|
+
"limit": min(limit, 500), # Max 500 per API docs
|
71
|
+
"fields": "paperId,title,abstract,year,authors,citationCount,url",
|
72
|
+
"from": "all-cs", # Using all-cs pool as specified in docs
|
73
|
+
}
|
74
|
+
|
75
|
+
# Add year parameter if provided
|
76
|
+
if year:
|
77
|
+
params["year"] = year
|
78
|
+
|
79
|
+
response = requests.get(endpoint, params=params, timeout=10)
|
80
|
+
data = response.json()
|
81
|
+
papers = data.get("data", [])
|
82
|
+
response = requests.get(endpoint, params=params, timeout=10)
|
83
|
+
# print(f"API Response Status: {response.status_code}")
|
84
|
+
logging.info(
|
85
|
+
"API Response Status for recommendations of paper %s: %s",
|
86
|
+
paper_id,
|
87
|
+
response.status_code,
|
88
|
+
)
|
89
|
+
# print(f"Request params: {params}")
|
90
|
+
logging.info("Request params: %s", params)
|
91
|
+
|
92
|
+
data = response.json()
|
93
|
+
recommendations = data.get("recommendedPapers", [])
|
94
|
+
|
95
|
+
# Extract paper ID and title from recommendations
|
96
|
+
filtered_papers = {
|
97
|
+
paper["paperId"]: {
|
98
|
+
"Title": paper.get("title", "N/A"),
|
99
|
+
"Abstract": paper.get("abstract", "N/A"),
|
100
|
+
"Year": paper.get("year", "N/A"),
|
101
|
+
"Citation Count": paper.get("citationCount", "N/A"),
|
102
|
+
"URL": paper.get("url", "N/A"),
|
103
|
+
# "Publication Type": paper.get("publicationTypes", ["N/A"])[0]
|
104
|
+
# if paper.get("publicationTypes")
|
105
|
+
# else "N/A",
|
106
|
+
# "Open Access PDF": paper.get("openAccessPdf", {}).get("url", "N/A")
|
107
|
+
# if paper.get("openAccessPdf") is not None
|
108
|
+
# else "N/A",
|
109
|
+
}
|
110
|
+
for paper in recommendations
|
111
|
+
if paper.get("title") and paper.get("authors")
|
112
|
+
}
|
113
|
+
|
114
|
+
# Create a DataFrame for pretty printing
|
115
|
+
df = pd.DataFrame(filtered_papers)
|
116
|
+
|
117
|
+
# Format papers for state update
|
118
|
+
papers = [
|
119
|
+
f"Paper ID: {paper_id}\n"
|
120
|
+
f"Title: {paper_data['Title']}\n"
|
121
|
+
f"Abstract: {paper_data['Abstract']}\n"
|
122
|
+
f"Year: {paper_data['Year']}\n"
|
123
|
+
f"Citations: {paper_data['Citation Count']}\n"
|
124
|
+
f"URL: {paper_data['URL']}\n"
|
125
|
+
# f"Publication Type: {paper_data['Publication Type']}\n"
|
126
|
+
# f"Open Access PDF: {paper_data['Open Access PDF']}"
|
127
|
+
for paper_id, paper_data in filtered_papers.items()
|
128
|
+
]
|
129
|
+
|
130
|
+
# Convert DataFrame to markdown table
|
131
|
+
markdown_table = df.to_markdown(tablefmt="grid")
|
132
|
+
logging.info("Search results: %s", papers)
|
133
|
+
|
134
|
+
return Command(
|
135
|
+
update={
|
136
|
+
"papers": filtered_papers, # Now sending the dictionary directly
|
137
|
+
"messages": [
|
138
|
+
ToolMessage(content=markdown_table, tool_call_id=tool_call_id)
|
139
|
+
],
|
140
|
+
}
|
141
|
+
)
|
@@ -1,11 +1,11 @@
|
|
1
1
|
Metadata-Version: 2.2
|
2
2
|
Name: aiagents4pharma
|
3
|
-
Version: 1.
|
3
|
+
Version: 1.11.0
|
4
4
|
Summary: AI Agents for drug discovery, drug development, and other pharmaceutical R&D
|
5
5
|
Classifier: Programming Language :: Python :: 3
|
6
6
|
Classifier: License :: OSI Approved :: MIT License
|
7
7
|
Classifier: Operating System :: OS Independent
|
8
|
-
Requires-Python: >=3.
|
8
|
+
Requires-Python: >=3.12
|
9
9
|
Description-Content-Type: text/markdown
|
10
10
|
License-File: LICENSE
|
11
11
|
Requires-Dist: copasi_basico==0.78
|
@@ -48,6 +48,9 @@ Requires-Dist: streamlit-feedback
|
|
48
48
|
[](https://github.com/VirtualPatientEngine/AIAgents4Pharma/actions/workflows/tests_talk2cells.yml)
|
49
49
|
[](https://github.com/VirtualPatientEngine/AIAgents4Pharma/actions/workflows/tests_talk2knowledgegraphs.yml)
|
50
50
|
[](https://github.com/VirtualPatientEngine/AIAgents4Pharma/actions/workflows/tests_talk2competitors.yml)
|
51
|
+

|
52
|
+

|
53
|
+
|
51
54
|
|
52
55
|
<h1 align="center" style="border-bottom: none;">🤖 AIAgents4Pharma</h1>
|
53
56
|
|
@@ -56,9 +59,9 @@ Welcome to **AIAgents4Pharma** – an open-source project by [Team VPE](https://
|
|
56
59
|
Our toolkit currently consists of three intelligent agents, each designed to simplify and enhance access to specialized data in biology:
|
57
60
|
|
58
61
|
- **Talk2BioModels**: Engage directly with mathematical models in systems biology.
|
59
|
-
- **Talk2Cells**
|
60
|
-
- **Talk2KnowledgeGraphs**
|
61
|
-
- **Talk2Competitors**
|
62
|
+
- **Talk2Cells** _(Work in progress)_: Query and analyze sequencing data with ease.
|
63
|
+
- **Talk2KnowledgeGraphs** _(Work in progress)_: Access and explore complex biological knowledge graphs for insightful data connections.
|
64
|
+
- **Talk2Competitors** _(Coming soon)_: Get recommendations for articles related to your choice. Download, query, and write/retrieve them to your reference manager (currently supporting Zotero).
|
62
65
|
|
63
66
|
---
|
64
67
|
|
@@ -71,68 +74,77 @@ Our toolkit currently consists of three intelligent agents, each designed to sim
|
|
71
74
|
- Forward simulation of both internal and open-source models (BioModels).
|
72
75
|
- Adjust parameters within the model to simulate different conditions.
|
73
76
|
- Query simulation results.
|
77
|
+
- Extract model information such as species, parameters, units and description.
|
74
78
|
|
75
|
-
### 2. Talk2Cells
|
79
|
+
### 2. Talk2Cells _(Work in Progress)_
|
76
80
|
|
77
81
|
**Talk2Cells** is being developed to provide direct access to and analysis of sequencing data, such as RNA-Seq or DNA-Seq, using natural language.
|
78
82
|
|
79
|
-
### 3. Talk2KnowledgeGraphs
|
83
|
+
### 3. Talk2KnowledgeGraphs _(Work in Progress)_
|
80
84
|
|
81
85
|
**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.
|
82
86
|
|
83
|
-
### 4.
|
87
|
+
### 4. Talk2Competitors _(Coming soon)_
|
84
88
|
|
85
89
|
## Getting Started
|
86
90
|
|
87
|
-
|
88
|
-
|
89
|
-
- **Python 3.10+**
|
90
|
-
- **Git**
|
91
|
-
- Required libraries specified in `requirements.txt`
|
91
|
+

|
92
92
|
|
93
93
|
### Installation
|
94
|
+
|
94
95
|
#### Option 1: PyPI
|
95
|
-
|
96
|
-
|
97
|
-
|
96
|
+
|
97
|
+
```bash
|
98
|
+
pip install aiagents4pharma
|
99
|
+
```
|
98
100
|
|
99
101
|
Check out the tutorials on each agent for detailed instrcutions.
|
100
102
|
|
101
103
|
#### Option 2: git
|
104
|
+
|
102
105
|
1. **Clone the repository:**
|
106
|
+
|
103
107
|
```bash
|
104
108
|
git clone https://github.com/VirtualPatientEngine/AIAgents4Pharma
|
105
109
|
cd AIAgents4Pharma
|
106
110
|
```
|
107
111
|
|
108
112
|
2. **Install dependencies:**
|
113
|
+
|
109
114
|
```bash
|
110
115
|
pip install .
|
111
116
|
```
|
112
117
|
|
113
118
|
3. **Initialize OPENAI_API_KEY**
|
119
|
+
|
114
120
|
```bash
|
115
|
-
export OPENAI_API_KEY
|
121
|
+
export OPENAI_API_KEY=....
|
116
122
|
```
|
117
123
|
|
118
124
|
4. **[Optional] Set up login credentials**
|
125
|
+
|
119
126
|
```bash
|
120
127
|
vi .streamlit/secrets.toml
|
121
128
|
```
|
129
|
+
|
122
130
|
and enter
|
131
|
+
|
123
132
|
```
|
124
133
|
password='XXX'
|
125
134
|
```
|
126
|
-
|
135
|
+
|
136
|
+
Please note that the passoword will be same for all the users.
|
127
137
|
|
128
138
|
5. **[Optional] Initialize LANGSMITH_API_KEY**
|
139
|
+
|
129
140
|
```bash
|
130
141
|
export LANGCHAIN_TRACING_V2=true
|
131
142
|
export LANGCHAIN_API_KEY=<your-api-key>
|
132
143
|
```
|
133
|
-
|
134
|
-
|
135
|
-
|
144
|
+
|
145
|
+
Please note that this will create a new tracing project in your Langsmith
|
146
|
+
account with the name `<user_name>@<uuid>`, where `user_name` is the name
|
147
|
+
you provided in the previous step. If you skip the previous step, it will
|
136
148
|
default to `default`. <uuid> will be the 128 bit unique ID created for the
|
137
149
|
session.
|
138
150
|
|
@@ -164,6 +176,7 @@ We welcome contributions to AIAgents4Pharma! Here’s how you can help:
|
|
164
176
|
5. **Open a pull request**
|
165
177
|
|
166
178
|
### Current Needs
|
179
|
+
|
167
180
|
- **Beta testers** for Talk2BioModels.
|
168
181
|
- **Developers** with experience in natural language processing, bioinformatics, or knowledge graphs for contributions to AIAgents4Pharma.
|
169
182
|
|
@@ -174,19 +187,22 @@ Check out our [CONTRIBUTING.md](CONTRIBUTING.md) for more information.
|
|
174
187
|
## Roadmap
|
175
188
|
|
176
189
|
### Completed
|
190
|
+
|
177
191
|
- **Talk2BioModels**: Initial release with core capabilities for interacting with systems biology models.
|
178
192
|
|
179
193
|
### Planned
|
194
|
+
|
180
195
|
- **User Interface**: Interactive web UI for all agents.
|
181
196
|
- **Talk2Cells**: Integration of sequencing data analysis tools.
|
182
197
|
- **Talk2KnowledgeGraphs**: Interface for biological knowledge graph interaction.
|
183
|
-
- **Talk2Competitors
|
198
|
+
- **Talk2Competitors**: Interface for exploring articles
|
184
199
|
|
185
|
-
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.
|
200
|
+
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.
|
186
201
|
|
187
202
|
**Get Started** with AIAgents4Pharma today and transform the way you interact with biological data.
|
188
203
|
|
189
204
|
---
|
190
205
|
|
191
206
|
## Feedback
|
207
|
+
|
192
208
|
Questions/Bug reports/Feature requests/Comments/Suggestions? We welcome all. Please use the `Isssues` tab 😀
|
@@ -1,4 +1,4 @@
|
|
1
|
-
aiagents4pharma/__init__.py,sha256=
|
1
|
+
aiagents4pharma/__init__.py,sha256=5muWWIg89VHPybfxonO_5xOMJPasKNsGdQRhozDaEmk,177
|
2
2
|
aiagents4pharma/configs/__init__.py,sha256=hNkSrXw1Ix1HhkGn_aaidr2coBYySfM0Hm_pMeRcX7k,76
|
3
3
|
aiagents4pharma/configs/config.yaml,sha256=8y8uG6Dzx4-9jyb6hZ8r4lOJz5gA_sQhCiSCgXL5l7k,65
|
4
4
|
aiagents4pharma/configs/talk2biomodels/__init__.py,sha256=5ah__-8XyRblwT0U1ByRigNjt_GyCheu7zce4aM-eZE,68
|
@@ -7,23 +7,24 @@ aiagents4pharma/configs/talk2biomodels/agents/t2b_agent/__init__.py,sha256=-fAOR
|
|
7
7
|
aiagents4pharma/configs/talk2biomodels/agents/t2b_agent/default.yaml,sha256=yD7qZCneaM-JE5PdZjDmDoTRUdsFrzeCKZsBx1b-f20,293
|
8
8
|
aiagents4pharma/talk2biomodels/__init__.py,sha256=qUw3qXrENqSCLIKSLy_qtNPwPDTb1wdZ8fZispcHb3g,141
|
9
9
|
aiagents4pharma/talk2biomodels/agents/__init__.py,sha256=sn5-fREjMdEvb-OUan3iOqrgYGjplNx3J8hYOaW0Po8,128
|
10
|
-
aiagents4pharma/talk2biomodels/agents/t2b_agent.py,sha256=
|
10
|
+
aiagents4pharma/talk2biomodels/agents/t2b_agent.py,sha256=6Im4YFcdykN7wpEM8y9qi_x4lTg02WJpb0SEWh8TPLo,3188
|
11
11
|
aiagents4pharma/talk2biomodels/models/__init__.py,sha256=5fTHHm3PVloYPNKXbgNlcPgv3-u28ZquxGydFYDfhJA,122
|
12
|
-
aiagents4pharma/talk2biomodels/models/basico_model.py,sha256=
|
13
|
-
aiagents4pharma/talk2biomodels/models/sys_bio_model.py,sha256=
|
12
|
+
aiagents4pharma/talk2biomodels/models/basico_model.py,sha256=PH25FTOuUjsmw_UUxoRb-4kptOYpicEn4GqS0phS3nk,4807
|
13
|
+
aiagents4pharma/talk2biomodels/models/sys_bio_model.py,sha256=JeoiGQAvQABHnG0wKR2XBmmxqQdtgO6kxaLDUTUmr1s,2001
|
14
14
|
aiagents4pharma/talk2biomodels/states/__init__.py,sha256=YLg1-N0D9qyRRLRqwqfLCLAqZYDtMVZTfI8Y0b_4tbA,139
|
15
|
-
aiagents4pharma/talk2biomodels/states/state_talk2biomodels.py,sha256=
|
15
|
+
aiagents4pharma/talk2biomodels/states/state_talk2biomodels.py,sha256=Dlsnh9dW1mCXTBXmlDAlOox7f4azFbLBG_2k3YPielM,824
|
16
16
|
aiagents4pharma/talk2biomodels/tests/__init__.py,sha256=Jbw5tJxSrjGoaK5IX3pJWDCNzhrVQ10lkYq2oQ_KQD8,45
|
17
|
-
aiagents4pharma/talk2biomodels/tests/test_basico_model.py,sha256=
|
18
|
-
aiagents4pharma/talk2biomodels/tests/test_langgraph.py,sha256=
|
19
|
-
aiagents4pharma/talk2biomodels/tests/test_sys_bio_model.py,sha256=
|
20
|
-
aiagents4pharma/talk2biomodels/tools/__init__.py,sha256=
|
17
|
+
aiagents4pharma/talk2biomodels/tests/test_basico_model.py,sha256=y82fpTJMPHwtXxlle1cGQ_2Bewwpxi0aJSVrVAYLhN0,2060
|
18
|
+
aiagents4pharma/talk2biomodels/tests/test_langgraph.py,sha256=_71UZS1zucn6Nus4oCH7tINQVRvJEFnL0UIZ6-sUd3I,11967
|
19
|
+
aiagents4pharma/talk2biomodels/tests/test_sys_bio_model.py,sha256=HSmBBViMi0jYf4gWX21IbppAfDzG0nr_S3KtKS9fZVQ,2165
|
20
|
+
aiagents4pharma/talk2biomodels/tools/__init__.py,sha256=SMTMlGHxTuJI7gjwGaTMv0XmilJ73-r5dp568hD3Fw0,266
|
21
21
|
aiagents4pharma/talk2biomodels/tools/ask_question.py,sha256=uxCQ4ON8--D0ACPvT14t6x_aqm9LP6woBA4GM7bPXc4,3061
|
22
22
|
aiagents4pharma/talk2biomodels/tools/custom_plotter.py,sha256=HWwKTX3o4dk0GcRVTO2hPrFSu98mtJ4TKC_hbHXOe1c,4018
|
23
|
-
aiagents4pharma/talk2biomodels/tools/get_modelinfo.py,sha256=
|
23
|
+
aiagents4pharma/talk2biomodels/tools/get_modelinfo.py,sha256=qA-4FOI-O728Nmn7s8JJ8HKwxvA9MZbst7NkPKTAMV4,5391
|
24
24
|
aiagents4pharma/talk2biomodels/tools/load_biomodel.py,sha256=pyVzLQoMnuJYEwsjeOlqcUrbU1F1Z-pNlgkhFaoKpy0,689
|
25
|
+
aiagents4pharma/talk2biomodels/tools/parameter_scan.py,sha256=aIyL_m46s3Q74ieJOZjZBM34VCjBKSMpEtckhdZofbE,12139
|
25
26
|
aiagents4pharma/talk2biomodels/tools/search_models.py,sha256=Iq2ddofOOfZYtAurCISq3bAq5rbwB3l_rL1lgEFyFCI,2653
|
26
|
-
aiagents4pharma/talk2biomodels/tools/simulate_model.py,sha256=
|
27
|
+
aiagents4pharma/talk2biomodels/tools/simulate_model.py,sha256=sWmFVnVvJbdXXTqn_7gQl5UW0tv4FyU5yLXWLweLs_M,7059
|
27
28
|
aiagents4pharma/talk2cells/__init__.py,sha256=zmOP5RAhabgKIQP-W4P4qKME2tG3fhAXM3MeO5_H8kE,120
|
28
29
|
aiagents4pharma/talk2cells/agents/__init__.py,sha256=38nK2a_lEFRjO3qD6Fo9a3983ZCYat6hmJKWY61y2Mo,128
|
29
30
|
aiagents4pharma/talk2cells/agents/scp_agent.py,sha256=gDMfhUNWHa_XWOqm1Ql6yLAdI_7bnIk5sRYn43H2sYk,3090
|
@@ -34,7 +35,22 @@ aiagents4pharma/talk2cells/tools/__init__.py,sha256=38nK2a_lEFRjO3qD6Fo9a3983ZCY
|
|
34
35
|
aiagents4pharma/talk2cells/tools/scp_agent/__init__.py,sha256=s7g0lyH1lMD9pcWHLPtwRJRvzmTh2II7DrxyLulpjmQ,163
|
35
36
|
aiagents4pharma/talk2cells/tools/scp_agent/display_studies.py,sha256=6q59gh_NQaiOU2rn55A3sIIFKlXi4SK3iKgySvUDrtQ,600
|
36
37
|
aiagents4pharma/talk2cells/tools/scp_agent/search_studies.py,sha256=MLe-twtFnOu-P8P9diYq7jvHBHbWFRRCZLcfpUzqPMg,2806
|
37
|
-
aiagents4pharma/talk2competitors/__init__.py,sha256=
|
38
|
+
aiagents4pharma/talk2competitors/__init__.py,sha256=haaikzND3c0Euqq86ndA4fl9q42aOop5rYG_8Zh1D-o,119
|
39
|
+
aiagents4pharma/talk2competitors/agents/__init__.py,sha256=ykszlVGxz3egLHZAttlNoTPxIrnQJZYva_ssR8fwIFk,117
|
40
|
+
aiagents4pharma/talk2competitors/agents/main_agent.py,sha256=UoHCpZd-HoeG0B6_gAF1cEP2OqMvrTuGe7MZDwL_u1U,3878
|
41
|
+
aiagents4pharma/talk2competitors/agents/s2_agent.py,sha256=eTrhc4ZPvWOUWMHNYxK0WltsZedZUnAWNu-TeUa-ruk,2501
|
42
|
+
aiagents4pharma/talk2competitors/config/__init__.py,sha256=HyM6paOpKZ5_tZnyVheSAFmxjT6Mb3PxvWKfP0rz-dE,113
|
43
|
+
aiagents4pharma/talk2competitors/config/config.py,sha256=jd4ltMBJyTztm9wT7j3ujOyYxL2SXRgxQJ4OZUBmCG4,5387
|
44
|
+
aiagents4pharma/talk2competitors/state/__init__.py,sha256=DzFjV3hZNes_pL4bDW2_8RsyK9BJcj6ejfBzU0KWn1k,106
|
45
|
+
aiagents4pharma/talk2competitors/state/state_talk2competitors.py,sha256=GUl1ZfM77XsjIEu-3xy4dtvaiMTA1pXf6i1ozVcX5Gg,993
|
46
|
+
aiagents4pharma/talk2competitors/tests/__init__.py,sha256=U3PsTiUZaUBD1IZanFGkDIOdFieDVJtGKQ5-woYUo8c,45
|
47
|
+
aiagents4pharma/talk2competitors/tests/test_langgraph.py,sha256=sEROK1aU3wFqJhZohONVI6Pr7t1d3PSqs-4erVIyiJw,9283
|
48
|
+
aiagents4pharma/talk2competitors/tools/__init__.py,sha256=YudBDRwaEzDnAcpxGZvEOfyh5-6xd51CTvTKTkywgXw,68
|
49
|
+
aiagents4pharma/talk2competitors/tools/s2/__init__.py,sha256=9RQH3efTj6qkXk0ICKSc7Mzpkitt4gRGsQ1pGPrrREU,181
|
50
|
+
aiagents4pharma/talk2competitors/tools/s2/display_results.py,sha256=B8JJGohi1Eyx8C3MhO_SiyQP3R6hPyUKJOAzcHmq3FU,584
|
51
|
+
aiagents4pharma/talk2competitors/tools/s2/multi_paper_rec.py,sha256=FYLt47DAk6WOKfEk1Gj9zVvJGNyxA283PCp8IKW9U5M,4262
|
52
|
+
aiagents4pharma/talk2competitors/tools/s2/search.py,sha256=pppjrQv5-8ep4fnqgTSBNgnbSnQsVIcNrRrH0p2TP1o,4025
|
53
|
+
aiagents4pharma/talk2competitors/tools/s2/single_paper_rec.py,sha256=dAfUQxI7T5eu0eDxK8VAl7-JH0Wnw24CVkOQqwj-hXc,4810
|
38
54
|
aiagents4pharma/talk2knowledgegraphs/__init__.py,sha256=SW7Ys2A4eXyFtizNPdSw91SHOPVUBGBsrCQ7TqwSUL0,91
|
39
55
|
aiagents4pharma/talk2knowledgegraphs/datasets/__init__.py,sha256=L3gPuHskSegmtXskVrLIYr7FXe_ibKgJ2GGr1_Wok6k,173
|
40
56
|
aiagents4pharma/talk2knowledgegraphs/datasets/biobridge_primekg.py,sha256=QlzDXmXREoa9MA6-GwzqRjdzndQeGBAF11Td6NFk_9Y,23426
|
@@ -55,8 +71,8 @@ aiagents4pharma/talk2knowledgegraphs/utils/embeddings/__init__.py,sha256=xRb0x7S
|
|
55
71
|
aiagents4pharma/talk2knowledgegraphs/utils/embeddings/embeddings.py,sha256=1nGznrAj-xT0xuSMBGz2dOujJ7M_IwSR84njxtxsy9A,2523
|
56
72
|
aiagents4pharma/talk2knowledgegraphs/utils/embeddings/huggingface.py,sha256=2vi_elf6EgzfagFAO5QnL3a_aXZyN7B1EBziu44MTfM,3806
|
57
73
|
aiagents4pharma/talk2knowledgegraphs/utils/embeddings/sentence_transformer.py,sha256=36iKlisOpMtGR5xfTAlSHXWvPqVC_Jbezod8kbBBMVg,2136
|
58
|
-
aiagents4pharma-1.
|
59
|
-
aiagents4pharma-1.
|
60
|
-
aiagents4pharma-1.
|
61
|
-
aiagents4pharma-1.
|
62
|
-
aiagents4pharma-1.
|
74
|
+
aiagents4pharma-1.11.0.dist-info/LICENSE,sha256=IcIbyB1Hyk5ZDah03VNQvJkbNk2hkBCDqQ8qtnCvB4Q,1077
|
75
|
+
aiagents4pharma-1.11.0.dist-info/METADATA,sha256=GsvCuC24bJ_wwQP8aevOB4Eai8WcUIcr9kmN3EwYP_Y,8541
|
76
|
+
aiagents4pharma-1.11.0.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
|
77
|
+
aiagents4pharma-1.11.0.dist-info/top_level.txt,sha256=-AH8rMmrSnJtq7HaAObS78UU-cTCwvX660dSxeM7a0A,16
|
78
|
+
aiagents4pharma-1.11.0.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|