aiagents4pharma 1.45.1__py3-none-any.whl → 1.46.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.
Files changed (34) hide show
  1. aiagents4pharma/talk2aiagents4pharma/configs/app/__init__.py +0 -0
  2. aiagents4pharma/talk2aiagents4pharma/configs/app/frontend/__init__.py +0 -0
  3. aiagents4pharma/talk2aiagents4pharma/configs/app/frontend/default.yaml +102 -0
  4. aiagents4pharma/talk2aiagents4pharma/configs/config.yaml +1 -0
  5. aiagents4pharma/talk2aiagents4pharma/tests/test_main_agent.py +144 -54
  6. aiagents4pharma/talk2biomodels/api/__init__.py +1 -1
  7. aiagents4pharma/talk2biomodels/configs/app/__init__.py +0 -0
  8. aiagents4pharma/talk2biomodels/configs/app/frontend/__init__.py +0 -0
  9. aiagents4pharma/talk2biomodels/configs/app/frontend/default.yaml +72 -0
  10. aiagents4pharma/talk2biomodels/configs/config.yaml +1 -0
  11. aiagents4pharma/talk2biomodels/tests/test_api.py +0 -30
  12. aiagents4pharma/talk2biomodels/tests/test_get_annotation.py +1 -1
  13. aiagents4pharma/talk2biomodels/tools/get_annotation.py +1 -10
  14. aiagents4pharma/talk2knowledgegraphs/configs/app/frontend/default.yaml +42 -26
  15. aiagents4pharma/talk2knowledgegraphs/configs/config.yaml +1 -0
  16. aiagents4pharma/talk2knowledgegraphs/configs/tools/multimodal_subgraph_extraction/default.yaml +4 -23
  17. aiagents4pharma/talk2knowledgegraphs/configs/utils/database/milvus/__init__.py +3 -0
  18. aiagents4pharma/talk2knowledgegraphs/configs/utils/database/milvus/default.yaml +61 -0
  19. aiagents4pharma/talk2knowledgegraphs/entrypoint.sh +1 -11
  20. aiagents4pharma/talk2knowledgegraphs/milvus_data_dump.py +11 -10
  21. aiagents4pharma/talk2knowledgegraphs/tests/test_agents_t2kg_agent.py +193 -73
  22. aiagents4pharma/talk2knowledgegraphs/tests/test_tools_milvus_multimodal_subgraph_extraction.py +1375 -667
  23. aiagents4pharma/talk2knowledgegraphs/tests/test_utils_database_milvus_connection_manager.py +812 -0
  24. aiagents4pharma/talk2knowledgegraphs/tests/test_utils_extractions_milvus_multimodal_pcst.py +723 -539
  25. aiagents4pharma/talk2knowledgegraphs/tools/milvus_multimodal_subgraph_extraction.py +474 -58
  26. aiagents4pharma/talk2knowledgegraphs/utils/database/__init__.py +5 -0
  27. aiagents4pharma/talk2knowledgegraphs/utils/database/milvus_connection_manager.py +586 -0
  28. aiagents4pharma/talk2knowledgegraphs/utils/extractions/milvus_multimodal_pcst.py +240 -8
  29. aiagents4pharma/talk2scholars/configs/app/frontend/default.yaml +67 -31
  30. {aiagents4pharma-1.45.1.dist-info → aiagents4pharma-1.46.1.dist-info}/METADATA +10 -1
  31. {aiagents4pharma-1.45.1.dist-info → aiagents4pharma-1.46.1.dist-info}/RECORD +33 -23
  32. aiagents4pharma/talk2biomodels/api/kegg.py +0 -87
  33. {aiagents4pharma-1.45.1.dist-info → aiagents4pharma-1.46.1.dist-info}/WHEEL +0 -0
  34. {aiagents4pharma-1.45.1.dist-info → aiagents4pharma-1.46.1.dist-info}/licenses/LICENSE +0 -0
@@ -2,8 +2,8 @@
2
2
  Exctraction of multimodal subgraph using Prize-Collecting Steiner Tree (PCST) algorithm.
3
3
  """
4
4
 
5
+ import asyncio
5
6
  import logging
6
- import pickle
7
7
  import platform
8
8
  import subprocess
9
9
  from typing import NamedTuple
@@ -14,8 +14,8 @@ import pcst_fast
14
14
  from pymilvus import Collection
15
15
 
16
16
  try:
17
- import cudf
18
- import cupy as cp
17
+ import cudf # type: ignore
18
+ import cupy as cp # type: ignore
19
19
 
20
20
  CUDF_AVAILABLE = True
21
21
  except ImportError:
@@ -217,6 +217,110 @@ class MultimodalPCSTPruning(NamedTuple):
217
217
 
218
218
  return colls
219
219
 
220
+ async def load_edge_index_async(self, cfg: dict, _connection_manager=None) -> np.ndarray:
221
+ """
222
+ Load edge index using hybrid async/sync approach to avoid event loop issues.
223
+
224
+ This method queries the edges collection to get head_index and tail_index,
225
+ eliminating the need for pickle caching and reducing memory usage.
226
+
227
+ Args:
228
+ cfg: The configuration dictionary containing the Milvus setup.
229
+ _connection_manager: Unused parameter for interface compatibility.
230
+
231
+ Returns:
232
+ numpy.ndarray: Edge index array with shape [2, num_edges]
233
+ """
234
+ logger.log(logging.INFO, "Loading edge index from Milvus collection (hybrid)")
235
+
236
+ def load_edges_sync():
237
+ """Load edges synchronously to avoid event loop issues."""
238
+
239
+ collection_name = f"{cfg.milvus_db.database_name}_edges"
240
+ edges_collection = Collection(name=collection_name)
241
+ edges_collection.load()
242
+
243
+ # Query all edges in batches
244
+ batch_size = getattr(cfg.milvus_db, "query_batch_size", 10000)
245
+ total_entities = edges_collection.num_entities
246
+ logger.log(logging.INFO, "Total edges to process: %d", total_entities)
247
+
248
+ head_list = []
249
+ tail_list = []
250
+
251
+ for start in range(0, total_entities, batch_size):
252
+ end = min(start + batch_size, total_entities)
253
+ logger.debug("Processing edge batch: %d to %d", start, end)
254
+
255
+ batch = edges_collection.query(
256
+ expr=f"triplet_index >= {start} and triplet_index < {end}",
257
+ output_fields=["head_index", "tail_index"],
258
+ )
259
+
260
+ head_list.extend([r["head_index"] for r in batch])
261
+ tail_list.extend([r["tail_index"] for r in batch])
262
+
263
+ # Convert to numpy array format expected by PCST
264
+ edge_index = self.loader.py.array([head_list, tail_list])
265
+ logger.log(
266
+ logging.INFO,
267
+ "Edge index loaded (hybrid): shape %s",
268
+ str(edge_index.shape),
269
+ )
270
+
271
+ return edge_index
272
+
273
+ # Run in thread to avoid event loop conflicts
274
+ return await asyncio.to_thread(load_edges_sync)
275
+
276
+ def load_edge_index(self, cfg: dict) -> np.ndarray:
277
+ """
278
+ Load edge index synchronously from Milvus collection.
279
+
280
+ This method queries the edges collection to get head_index and tail_index.
281
+
282
+ Args:
283
+ cfg: The configuration dictionary containing the Milvus setup.
284
+
285
+ Returns:
286
+ numpy.ndarray: Edge index array with shape [2, num_edges]
287
+ """
288
+ logger.log(logging.INFO, "Loading edge index from Milvus collection (sync)")
289
+
290
+ collection_name = f"{cfg.milvus_db.database_name}_edges"
291
+ edges_collection = Collection(name=collection_name)
292
+ edges_collection.load()
293
+
294
+ # Query all edges in batches
295
+ batch_size = getattr(cfg.milvus_db, "query_batch_size", 10000)
296
+ total_entities = edges_collection.num_entities
297
+ logger.log(logging.INFO, "Total edges to process: %d", total_entities)
298
+
299
+ head_list = []
300
+ tail_list = []
301
+
302
+ for start in range(0, total_entities, batch_size):
303
+ end = min(start + batch_size, total_entities)
304
+ logger.debug("Processing edge batch: %d to %d", start, end)
305
+
306
+ batch = edges_collection.query(
307
+ expr=f"triplet_index >= {start} and triplet_index < {end}",
308
+ output_fields=["head_index", "tail_index"],
309
+ )
310
+
311
+ head_list.extend([r["head_index"] for r in batch])
312
+ tail_list.extend([r["tail_index"] for r in batch])
313
+
314
+ # Convert to numpy array format expected by PCST
315
+ edge_index = self.loader.py.array([head_list, tail_list])
316
+ logger.log(
317
+ logging.INFO,
318
+ "Edge index loaded (sync): shape %s",
319
+ str(edge_index.shape),
320
+ )
321
+
322
+ return edge_index
323
+
220
324
  def _compute_node_prizes(self, query_emb: list, colls: dict) -> dict:
221
325
  """
222
326
  Compute the node prizes based on the similarity between the query and nodes.
@@ -263,6 +367,56 @@ class MultimodalPCSTPruning(NamedTuple):
263
367
 
264
368
  return n_prizes
265
369
 
370
+ async def _compute_node_prizes_async(
371
+ self,
372
+ query_emb: list,
373
+ collection_name: str,
374
+ connection_manager,
375
+ use_description: bool = False,
376
+ ) -> dict:
377
+ """
378
+ Compute the node prizes asynchronously using connection manager.
379
+
380
+ Args:
381
+ query_emb: The query embedding
382
+ collection_name: Name of the collection to search
383
+ connection_manager: The MilvusConnectionManager instance
384
+ use_description: Whether to use description embeddings
385
+
386
+ Returns:
387
+ The prizes of the nodes
388
+ """
389
+ # Get collection stats for initialization
390
+ stats = await connection_manager.async_get_collection_stats(collection_name)
391
+ num_entities = stats["num_entities"]
392
+
393
+ # Initialize prizes array
394
+ topk = min(self.topk, num_entities)
395
+ n_prizes = self.loader.py.zeros(num_entities, dtype=self.loader.py.float32)
396
+
397
+ # Get the actual metric type to use
398
+ actual_metric_type = self.metric_type or self.loader.metric_type
399
+
400
+ # Determine search field based on use_description
401
+ anns_field = "desc_emb" if use_description else "feat_emb"
402
+
403
+ # Perform async search
404
+ results = await connection_manager.async_search(
405
+ collection_name=collection_name,
406
+ data=[query_emb],
407
+ anns_field=anns_field,
408
+ param={"metric_type": actual_metric_type},
409
+ limit=topk,
410
+ output_fields=["node_id"],
411
+ )
412
+
413
+ # Update the prizes based on the search results
414
+ if results and len(results) > 0:
415
+ result_ids = [hit["id"] for hit in results[0]]
416
+ n_prizes[result_ids] = self.loader.py.arange(topk, 0, -1).astype(self.loader.py.float32)
417
+
418
+ return n_prizes
419
+
266
420
  def _compute_edge_prizes(self, text_emb: list, colls: dict):
267
421
  """
268
422
  Compute the edge prizes based on the similarity between the query and edges.
@@ -305,6 +459,65 @@ class MultimodalPCSTPruning(NamedTuple):
305
459
 
306
460
  return e_prizes
307
461
 
462
+ async def _compute_edge_prizes_async(
463
+ self, text_emb: list, collection_name: str, connection_manager
464
+ ) -> dict:
465
+ """
466
+ Compute the edge prizes asynchronously using connection manager.
467
+
468
+ Args:
469
+ text_emb: The textual description embedding
470
+ collection_name: Name of the edges collection
471
+ connection_manager: The MilvusConnectionManager instance
472
+
473
+ Returns:
474
+ The prizes of the edges
475
+ """
476
+ # Get collection stats for initialization
477
+ stats = await connection_manager.async_get_collection_stats(collection_name)
478
+ num_entities = stats["num_entities"]
479
+
480
+ # Initialize prizes array
481
+ topk_e = min(self.topk_e, num_entities)
482
+ e_prizes = self.loader.py.zeros(num_entities, dtype=self.loader.py.float32)
483
+
484
+ # Get the actual metric type to use
485
+ actual_metric_type = self.metric_type or self.loader.metric_type
486
+
487
+ # Perform async search
488
+ results = await connection_manager.async_search(
489
+ collection_name=collection_name,
490
+ data=[text_emb],
491
+ anns_field="feat_emb",
492
+ param={"metric_type": actual_metric_type},
493
+ limit=topk_e,
494
+ output_fields=["head_id", "tail_id"],
495
+ )
496
+
497
+ # Update the prizes based on the search results
498
+ if results and len(results) > 0:
499
+ result_ids = [hit["id"] for hit in results[0]]
500
+ result_scores = [hit["distance"] for hit in results[0]] # Use distance/score
501
+ e_prizes[result_ids] = result_scores
502
+
503
+ # Process edge prizes using helper method
504
+ return self._process_edge_prizes(e_prizes, topk_e)
505
+
506
+ def _process_edge_prizes(self, e_prizes, topk_e):
507
+ """Helper method to process edge prizes and reduce complexity."""
508
+ unique_prizes, inverse_indices = self.loader.py.unique(e_prizes, return_inverse=True)
509
+ sorted_indices = self.loader.py.argsort(-unique_prizes)[:topk_e]
510
+ topk_e_values = unique_prizes[sorted_indices]
511
+ last_topk_e_value = topk_e
512
+
513
+ for k in range(topk_e):
514
+ indices = inverse_indices == (unique_prizes == topk_e_values[k]).nonzero()[0]
515
+ value = min((topk_e - k) / indices.sum().item(), last_topk_e_value)
516
+ e_prizes[indices] = value
517
+ last_topk_e_value = value * (1 - self.c_const)
518
+
519
+ return e_prizes
520
+
308
521
  def compute_prizes(self, text_emb: list, query_emb: list, colls: dict) -> dict:
309
522
  """
310
523
  Compute the node prizes based on the cosine similarity between the query and nodes,
@@ -331,6 +544,27 @@ class MultimodalPCSTPruning(NamedTuple):
331
544
 
332
545
  return {"nodes": n_prizes, "edges": e_prizes}
333
546
 
547
+ async def compute_prizes_async(
548
+ self, text_emb: list, query_emb: list, cfg: dict, modality: str
549
+ ) -> dict:
550
+ """
551
+ Compute node and edge prizes asynchronously in parallel using sync fallback.
552
+
553
+ Args:
554
+ text_emb: The textual description embedding
555
+ query_emb: The query embedding
556
+ cfg: The configuration dictionary containing the Milvus setup
557
+ modality: The modality to use for the subgraph extraction
558
+
559
+ Returns:
560
+ The prizes of the nodes and edges
561
+ """
562
+ logger.log(logging.INFO, "Computing prizes in parallel (hybrid async/sync)")
563
+
564
+ # Use existing sync method wrapped in asyncio.to_thread
565
+ colls = self.prepare_collections(cfg, modality)
566
+ return await asyncio.to_thread(self.compute_prizes, text_emb, query_emb, colls)
567
+
334
568
  def compute_subgraph_costs(self, edge_index, num_nodes: int, prizes: dict):
335
569
  """
336
570
  Compute the costs in constructing the subgraph proposed by G-Retriever paper.
@@ -481,11 +715,9 @@ class MultimodalPCSTPruning(NamedTuple):
481
715
  logger.log(logging.INFO, "Preparing collections")
482
716
  colls = self.prepare_collections(cfg, modality)
483
717
 
484
- # Load cache edge index
485
- logger.log(logging.INFO, "Loading cache edge index")
486
- with open(cfg.milvus_db.cache_edge_index_path, "rb") as f:
487
- edge_index = pickle.load(f)
488
- edge_index = self.loader.py.array(edge_index)
718
+ # Load edge index directly from Milvus (replaces pickle cache)
719
+ logger.log(logging.INFO, "Loading edge index from Milvus")
720
+ edge_index = self.load_edge_index(cfg)
489
721
 
490
722
  # Assert the topk and topk_e values for subgraph retrieval
491
723
  assert self.topk > 0, "topk must be greater than or equal to 0"
@@ -1,36 +1,72 @@
1
+ _target_: app.frontend.streamlit_app_talk2scholars
2
+ default_user: "talk2scholars_user"
3
+
4
+ # File upload configuration
5
+ upload_data_dir: "../files"
6
+ pdf_allowed_file_types:
7
+ - "pdf"
8
+
9
+ # OpenAI configuration - can use custom base_url for enterprise/Azure deployments
10
+ openai_api_key: ${oc.env:OPENAI_API_KEY}
11
+ openai_base_url: ${oc.env:OPENAI_BASE_URL,null} # Optional: custom OpenAI endpoint
12
+ openai_llms:
13
+ - "OpenAI/gpt-4o-mini"
14
+ openai_embeddings:
15
+ - "text-embedding-ada-002"
16
+ - "text-embedding-3-small"
17
+ # Rate limiting and retry configuration
18
+ llm_max_retries: 5 # Number of retries on rate limit or transient errors
19
+ llm_timeout: 60 # Timeout in seconds for LLM requests
20
+ embedding_max_retries: 3 # Number of retries for embedding requests
21
+ embedding_timeout: 30 # Timeout in seconds for embedding requests
22
+
23
+ # NVIDIA configuration
24
+ nvidia_api_key: ${oc.env:NVIDIA_API_KEY}
25
+ nvidia_llms:
26
+ - "NVIDIA/llama-3.3-70b-instruct"
27
+ - "NVIDIA/llama-3.1-405b-instruct"
28
+ - "NVIDIA/llama-3.1-70b-instruct"
29
+ nvidia_embeddings:
30
+ - "NVIDIA/llama-3.2-nv-embedqa-1b-v2"
31
+
32
+ # Azure OpenAI configuration
33
+ azure_openai_endpoint: ${oc.env:AZURE_OPENAI_ENDPOINT,null} # Azure OpenAI endpoint
34
+ azure_openai_deployment: ${oc.env:AZURE_OPENAI_DEPLOYMENT,null} # Azure deployment name
35
+ azure_openai_api_version: ${oc.env:AZURE_OPENAI_API_VERSION,"2024-02-01"} # Azure API version
36
+ azure_openai_model_name: ${oc.env:AZURE_OPENAI_MODEL_NAME,null} # Model name for analytics
37
+ azure_openai_model_version: ${oc.env:AZURE_OPENAI_MODEL_VERSION,null} # Model version
38
+ # Azure AD authentication (uses AZURE_CLIENT_ID, AZURE_TENANT_ID, AZURE_CLIENT_SECRET)
39
+ azure_client_id: ${oc.env:AZURE_CLIENT_ID,null}
40
+ azure_tenant_id: ${oc.env:AZURE_TENANT_ID,null}
41
+ azure_client_secret: ${oc.env:AZURE_CLIENT_SECRET,null}
42
+ azure_openai_llms:
43
+ - "Azure/gpt-4o-mini" # Will map to Azure deployment
44
+ azure_openai_embeddings:
45
+ - "Azure/text-embedding-ada-002"
46
+
47
+ # Ollama configuration (for local deployment)
48
+ ollama_llms:
49
+ - "Ollama/llama3.1:8b"
50
+ ollama_embeddings:
51
+ - "nomic-embed-text"
52
+
53
+ # Default models
54
+ default_llm_provider: "openai"
55
+ default_embedding_model: "openai"
56
+
57
+ # App settings
58
+ temperature: 0.1
59
+ streaming: False
60
+
61
+ # Logo configuration
62
+ logo_paths:
63
+ container: "/app/docs/assets/VPE.png"
64
+ local: "docs/assets/VPE.png"
65
+ relative: "../../docs/assets/VPE.png"
66
+ logo_link: "https://github.com/VirtualPatientEngine"
67
+
1
68
  # Page configuration
2
69
  page:
3
70
  title: "Talk2Scholars"
4
71
  icon: "🤖"
5
72
  layout: "wide"
6
-
7
- # Available LLM models
8
- llms:
9
- available_models:
10
- - "OpenAI/gpt-4o-mini"
11
- - "NVIDIA/llama-3.3-70b-instruct"
12
- # # Chat UI configuration
13
- # chat:
14
- # assistant_avatar: "🤖"
15
- # user_avatar: "👩🏻‍💻"
16
- # input_placeholder: "Say something ..."
17
- # spinner_text: "Fetching response ..."
18
-
19
- api_keys:
20
- openai_key: "OPENAI_API_KEY"
21
- nvidia_key: "NVIDIA_API_KEY"
22
- # # Feedback configuration
23
- # feedback:
24
- # type: "thumbs"
25
- # text_label: "[Optional] Please provide an explanation"
26
- # success_message: "Your feedback is on its way to the developers. Thank you!"
27
- # success_icon: "🚀"
28
-
29
- # # Layout configuration
30
- # layout:
31
- # column_ratio: [3, 7] # Ratio for main_col1 and main_col2
32
- # chat_container_height: 575
33
- # sidebar_container_height: 500
34
- #
35
- # # Project name prefix
36
- # project_name_prefix: "Talk2Scholars-"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: aiagents4pharma
3
- Version: 1.45.1
3
+ Version: 1.46.1
4
4
  Summary: AI Agents for drug discovery, drug development, and other pharmaceutical R&D.
5
5
  License-File: LICENSE
6
6
  Classifier: License :: OSI Approved :: MIT License
@@ -8,6 +8,7 @@ Classifier: Operating System :: OS Independent
8
8
  Classifier: Programming Language :: Python :: 3
9
9
  Requires-Python: >=3.12
10
10
  Requires-Dist: anndata==0.11.3
11
+ Requires-Dist: azure-identity==1.24.0
11
12
  Requires-Dist: beautifulsoup4==4.13.4
12
13
  Requires-Dist: cell2sentence==1.1.0
13
14
  Requires-Dist: cloudscraper==1.2.71
@@ -192,6 +193,14 @@ export LANGCHAIN_API_KEY=... # Optional for all agents
192
193
 
193
194
  4. **Launch the app:**
194
195
 
196
+ > System Dependency: libmagic (for secure uploads)
197
+ > For accurate file MIME-type detection used by our secure upload validation, install the libmagic system library. This is recommended across all providers (OpenAI, Azure OpenAI, NVIDIA) because it runs locally in the Streamlit apps.
198
+ >
199
+ > - Linux (Debian/Ubuntu): `sudo apt-get install libmagic1`
200
+ > - macOS (Homebrew): `brew install libmagic`
201
+ > - Windows: Use the `python-magic`/`python-magic-bin` package; libmagic is bundled
202
+ > If libmagic is not available, the apps fall back to extension-based detection. For best security, keep libmagic installed.
203
+
195
204
  **Option A: Using UV (recommended)**
196
205
 
197
206
  ```sh
@@ -7,9 +7,12 @@ aiagents4pharma/talk2aiagents4pharma/install.md,sha256=YYzY1vIEA6RrVUvNuv-h_YTar
7
7
  aiagents4pharma/talk2aiagents4pharma/agents/__init__.py,sha256=NpNI6Vr9XIr5m0ZaO32c6NEUTDOZvJUqd8gKzNZhcSw,130
8
8
  aiagents4pharma/talk2aiagents4pharma/agents/main_agent.py,sha256=1nRIhj3huv9eVT7v3nhSvx1dDOEEaiApPi7AMRDviXE,2750
9
9
  aiagents4pharma/talk2aiagents4pharma/configs/__init__.py,sha256=hwLAR-uhZGEbD5R7mp4kiltSvxuKkG6-_ac17sF-4xU,68
10
- aiagents4pharma/talk2aiagents4pharma/configs/config.yaml,sha256=Y7mZzvcaJA3vt4Pcf8dBG4WX0hX4unoRSH72lwhDIeM,52
10
+ aiagents4pharma/talk2aiagents4pharma/configs/config.yaml,sha256=bJpU9_L88dOSqI6-BL3-X5tlR9eznXXNgXCi0qzPdEs,78
11
11
  aiagents4pharma/talk2aiagents4pharma/configs/agents/__init__.py,sha256=8a9wAMF8zcfKYVZw-lQWsPsQtOPL_HQzu62F-EYekvw,72
12
12
  aiagents4pharma/talk2aiagents4pharma/configs/agents/main_agent/default.yaml,sha256=jISv2CazHsK_OuQNgRG2uu3i9i2OeWm1Kxzh-2sPokU,2424
13
+ aiagents4pharma/talk2aiagents4pharma/configs/app/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
14
+ aiagents4pharma/talk2aiagents4pharma/configs/app/frontend/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
15
+ aiagents4pharma/talk2aiagents4pharma/configs/app/frontend/default.yaml,sha256=BpDv_Bau0F7xDPzMHVYxedKpZQAPdo0rAsRnfH32-U8,3470
13
16
  aiagents4pharma/talk2aiagents4pharma/docker-compose/cpu/.env.example,sha256=twsuiEN-FczXfka40_bVoSQXaMDR_3J3ESKCqU4qSkg,585
14
17
  aiagents4pharma/talk2aiagents4pharma/docker-compose/cpu/docker-compose.yml,sha256=2I8jyzaFXSGsBMMFOZ4Hz7hAH3A-ELpoYCphkpT_8rA,2631
15
18
  aiagents4pharma/talk2aiagents4pharma/docker-compose/gpu/.env.example,sha256=twsuiEN-FczXfka40_bVoSQXaMDR_3J3ESKCqU4qSkg,585
@@ -17,7 +20,7 @@ aiagents4pharma/talk2aiagents4pharma/docker-compose/gpu/docker-compose.yml,sha25
17
20
  aiagents4pharma/talk2aiagents4pharma/states/__init__.py,sha256=VuVAFmoH8p2erE-mYiaa0uoqTuFynBcXia5Y8lmjI34,109
18
21
  aiagents4pharma/talk2aiagents4pharma/states/state_talk2aiagents4pharma.py,sha256=ahquXi8hg6Bk1ttskl9QaYdHq4rDWa_bK7hu81E75M4,468
19
22
  aiagents4pharma/talk2aiagents4pharma/tests/__init__.py,sha256=U3PsTiUZaUBD1IZanFGkDIOdFieDVJtGKQ5-woYUo8c,45
20
- aiagents4pharma/talk2aiagents4pharma/tests/test_main_agent.py,sha256=0yx3Ij95M8EdeephO4LWKpLGqMHtQhm-qLai5GRk-IM,7621
23
+ aiagents4pharma/talk2aiagents4pharma/tests/test_main_agent.py,sha256=oLRYlnkSBiD7trIUf-NZBTJDKX0X0JIK8hhMB9nMu9s,10945
21
24
  aiagents4pharma/talk2biomodels/.dockerignore,sha256=-hAM7RzkGbjDeU411-kXOmYzNfl3Z9OlLWvN9zMDAXE,89
22
25
  aiagents4pharma/talk2biomodels/Dockerfile,sha256=BXIqnV5HWHtCsS5dzvN-lL6S8wSzDmKawcIuyLscaqw,3537
23
26
  aiagents4pharma/talk2biomodels/README.md,sha256=0eGxj7jxi_LrCvX-4I4KrQv-7T2ivo3pqLslG7suaCk,74
@@ -25,15 +28,17 @@ aiagents4pharma/talk2biomodels/__init__.py,sha256=DxARZJu91m4WHW4PBSZvlMb1MCbjvk
25
28
  aiagents4pharma/talk2biomodels/install.md,sha256=9YAEeW_vG5hv7WiMnNEzgKQIgVyHnpk1IIWXg_jhLxE,1520
26
29
  aiagents4pharma/talk2biomodels/agents/__init__.py,sha256=4wPy6hWRJksX6z8qX1cVjFctZLpsja8JMngKHqn49N4,129
27
30
  aiagents4pharma/talk2biomodels/agents/t2b_agent.py,sha256=b_9pjnY3VGPRrzy-LCFrbJCkP1PT3M30NiQq6gbavaA,3267
28
- aiagents4pharma/talk2biomodels/api/__init__.py,sha256=2fKfvp7tj6fr6mhesQo2flaNpW5cINjzx_o_zUpTzZc,98
29
- aiagents4pharma/talk2biomodels/api/kegg.py,sha256=znaXYtw6HZe5XoX7wyl0hi1anHd2vzKRgVzt0HZ_TU0,2836
31
+ aiagents4pharma/talk2biomodels/api/__init__.py,sha256=KGok9mCa6RT8whDj3jT3kcpFO1yHxk5vVD8IExsI5Bc,92
30
32
  aiagents4pharma/talk2biomodels/api/ols.py,sha256=QSvbsD0V07-w0OU-wPQ4EypXi9bn_xl0NyliZQxRvCU,2173
31
33
  aiagents4pharma/talk2biomodels/api/uniprot.py,sha256=jXoyd7BhIQA9JNaGMVPzORpQ5k1Ix9iYYduMv6YG7hw,1147
32
34
  aiagents4pharma/talk2biomodels/configs/__init__.py,sha256=WgGZbEtZiVR8EVJeH3iIJ6LxBGFafAjfCftptnTm2Ds,75
33
- aiagents4pharma/talk2biomodels/configs/config.yaml,sha256=ANNi5gKbHpozGHttG3EfTsW8KFmUmHqH8FgJf9jJ1vU,151
35
+ aiagents4pharma/talk2biomodels/configs/config.yaml,sha256=9I9L99j2DxD3MzNX3Ch-x4Q38nsKzh33SrAqv6ftpnk,177
34
36
  aiagents4pharma/talk2biomodels/configs/agents/__init__.py,sha256=6CfgJ15-smSZ4HP4uIlk3QgfVzzpDunBZOuqpuz9CIY,71
35
37
  aiagents4pharma/talk2biomodels/configs/agents/t2b_agent/__init__.py,sha256=fqQQ-GlRcbzru2KmEk3oMma0R6_SzGM8dOXzYeU4oVA,46
36
38
  aiagents4pharma/talk2biomodels/configs/agents/t2b_agent/default.yaml,sha256=oMC7OK3t1tMI2LLJHJcQQcteOoqO6gR12aKJWyZ08_E,535
39
+ aiagents4pharma/talk2biomodels/configs/app/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
40
+ aiagents4pharma/talk2biomodels/configs/app/frontend/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
41
+ aiagents4pharma/talk2biomodels/configs/app/frontend/default.yaml,sha256=dAnLyA8pd02Ko9IURh3xeYTmbC4RK9j1kuZQJwUPqWQ,2478
37
42
  aiagents4pharma/talk2biomodels/configs/tools/__init__.py,sha256=m3Kvvc0YNyJ2_uiLpBVJmEJvJ0WyoPrdokdR7TKQR5I,106
38
43
  aiagents4pharma/talk2biomodels/configs/tools/ask_question/__init__.py,sha256=fqQQ-GlRcbzru2KmEk3oMma0R6_SzGM8dOXzYeU4oVA,46
39
44
  aiagents4pharma/talk2biomodels/configs/tools/ask_question/default.yaml,sha256=9AlSgfb6XSFaH3N80BMQ-CcI_x-ZWfF-52QNgpdtlhE,1296
@@ -49,10 +54,10 @@ aiagents4pharma/talk2biomodels/states/state_talk2biomodels.py,sha256=kKtVBfSK92h
49
54
  aiagents4pharma/talk2biomodels/tests/BIOMD0000000449_url.xml,sha256=RkWbstfLrT1mAfOtZf7JsBz6poyWg6-5G7H_IdVXEXg,72630
50
55
  aiagents4pharma/talk2biomodels/tests/__init__.py,sha256=U3PsTiUZaUBD1IZanFGkDIOdFieDVJtGKQ5-woYUo8c,45
51
56
  aiagents4pharma/talk2biomodels/tests/article_on_model_537.pdf,sha256=rfBnG9XSGRZodq-NQsouQQ3dvm4JKcrAqEkoAQJmuDc,470738
52
- aiagents4pharma/talk2biomodels/tests/test_api.py,sha256=0Gyakd5Yaa0CxUH18040xl-TBrNKGi6aDaIyVFF1d9A,1724
57
+ aiagents4pharma/talk2biomodels/tests/test_api.py,sha256=rfH2_K2pC5fm3DcyKJSHOBcN6Mzz3D37oJEpFCE1Jek,970
53
58
  aiagents4pharma/talk2biomodels/tests/test_ask_question.py,sha256=lMrFI5URqUEz0Cv3WOoj8vhR_ciwDOgoJlqh1dOdaik,1523
54
59
  aiagents4pharma/talk2biomodels/tests/test_basico_model.py,sha256=F_1AbFRcXIDahQKcS-Nq0v45bEozLUOYx_oyyFN0hxw,2429
55
- aiagents4pharma/talk2biomodels/tests/test_get_annotation.py,sha256=T5RvNfiyz9Z49LBo6FkOOaD7f3vSalklF6Oi1Qj3-Kk,8179
60
+ aiagents4pharma/talk2biomodels/tests/test_get_annotation.py,sha256=L4fTQaY2rnkfHwfPSC6GdXD2T3NGTIqNoF2dRklBIQA,8173
56
61
  aiagents4pharma/talk2biomodels/tests/test_getmodelinfo.py,sha256=PlVDIQZaZw8a94_Muw5GMa2Kop6foEBGhp3x-412cQA,3258
57
62
  aiagents4pharma/talk2biomodels/tests/test_integration.py,sha256=t8jR45pX7hKBGOjXySQ-XG5wJpTt41jGba74T8zuIdI,4838
58
63
  aiagents4pharma/talk2biomodels/tests/test_load_biomodel.py,sha256=8nVSDa8_z85dyvxa8aYGQR0YGZDtpzLF5HhBmifCk6w,895
@@ -65,7 +70,7 @@ aiagents4pharma/talk2biomodels/tests/test_sys_bio_model.py,sha256=poMxOsKhg8USnp
65
70
  aiagents4pharma/talk2biomodels/tools/__init__.py,sha256=j6wTW09BOwFMzHERfJbsajctDsNxJDtWJHUE3FmTu-A,279
66
71
  aiagents4pharma/talk2biomodels/tools/ask_question.py,sha256=IbolM6zbYKHd_UCfLMa8bawt9fJH59cCUtkLB_wtxKI,4495
67
72
  aiagents4pharma/talk2biomodels/tools/custom_plotter.py,sha256=dk5HUmPwSTIRp2sbd8Q8__fwSE8m13UseonvcpyDs00,6636
68
- aiagents4pharma/talk2biomodels/tools/get_annotation.py,sha256=spP_EVDlkbg7DfpzZw4YyIIYAsiax5EoJxB0f0gjVbM,13312
73
+ aiagents4pharma/talk2biomodels/tools/get_annotation.py,sha256=oHERHdY4KinQFg9udufEgJP3tE3x0gtoWWy4Kna9H78,12854
69
74
  aiagents4pharma/talk2biomodels/tools/get_modelinfo.py,sha256=mVAqO2TRWIlD93ZsMggs2N3629sxHZWnOisW7r_yBU0,5987
70
75
  aiagents4pharma/talk2biomodels/tools/load_arguments.py,sha256=LZQNkAikXhG0AKRnfLUqqpa5hNAyVGSwPQ4_nBu-DSw,4009
71
76
  aiagents4pharma/talk2biomodels/tools/load_biomodel.py,sha256=025-E5qo2uiJVvHIhyeDh1tfmXTeIguSgS0KIY0LiyY,1208
@@ -90,27 +95,29 @@ aiagents4pharma/talk2knowledgegraphs/.dockerignore,sha256=-hAM7RzkGbjDeU411-kXOm
90
95
  aiagents4pharma/talk2knowledgegraphs/Dockerfile,sha256=qGy6I4oBvQonpDEANQaCW-5JMtHPdd2HKc-JJgoCyYQ,3384
91
96
  aiagents4pharma/talk2knowledgegraphs/README.md,sha256=0eGxj7jxi_LrCvX-4I4KrQv-7T2ivo3pqLslG7suaCk,74
92
97
  aiagents4pharma/talk2knowledgegraphs/__init__.py,sha256=ZztaRzRlovSXtVX3i9Rvf84ivIjPn8RMPiYRkbkEJ0E,114
93
- aiagents4pharma/talk2knowledgegraphs/entrypoint.sh,sha256=O9iXAmfj3vzdp5CxzpRUDb4FmXumDsjZfYK2S7RkAMY,6098
98
+ aiagents4pharma/talk2knowledgegraphs/entrypoint.sh,sha256=EK_jGau1VuW1uTmFWZcKhLMK9VanC5l3q9axF4ZYgmI,5758
94
99
  aiagents4pharma/talk2knowledgegraphs/install.md,sha256=6eZe9czZ8nRrsOHbRmn9WaAk9xgl2kxDZac4Exs1WqU,6022
95
- aiagents4pharma/talk2knowledgegraphs/milvus_data_dump.py,sha256=0eMX0lTFfATR6wZE-sT9n-heXdH7RbD22f41DPj8uzE,35577
100
+ aiagents4pharma/talk2knowledgegraphs/milvus_data_dump.py,sha256=nLChVpn9KwJ2F5zgtb51zG2s81vOzc6o5Ut-xhkjpJI,35550
96
101
  aiagents4pharma/talk2knowledgegraphs/agents/__init__.py,sha256=ugUvVYEdjbZ3y_dogfF5hpQ3lFPFrAvLSydlcpbkGo0,93
97
102
  aiagents4pharma/talk2knowledgegraphs/agents/t2kg_agent.py,sha256=GDeSjJNhAqQWagZOxAWUKqDhzUohHViSsu444W9SzRQ,3240
98
103
  aiagents4pharma/talk2knowledgegraphs/configs/__init__.py,sha256=H-yhTbJ_RXBLe3XSto5x6FmVrgbi7y1WKEfiwmKzLAk,87
99
- aiagents4pharma/talk2knowledgegraphs/configs/config.yaml,sha256=FjloiqLeDx73kM2DVhCbLEuj3N1th2idFNy6p3CJkT4,418
104
+ aiagents4pharma/talk2knowledgegraphs/configs/config.yaml,sha256=W-yjtavcqGE3hZdGwG5o1qDnvjEChQ-BjuU8Y2Salk8,453
100
105
  aiagents4pharma/talk2knowledgegraphs/configs/agents/t2kg_agent/__init__.py,sha256=fqQQ-GlRcbzru2KmEk3oMma0R6_SzGM8dOXzYeU4oVA,46
101
106
  aiagents4pharma/talk2knowledgegraphs/configs/agents/t2kg_agent/default.yaml,sha256=4NcNS8f9A6e9_8DcdYjC_Q5sjgmGA6GZFAwbsmEcPiA,4824
102
107
  aiagents4pharma/talk2knowledgegraphs/configs/app/__init__.py,sha256=JoSZV6N669kGMv5zLDszwf0ZjcRHx9TJfIqGhIIdPXE,70
103
108
  aiagents4pharma/talk2knowledgegraphs/configs/app/frontend/__init__.py,sha256=fqQQ-GlRcbzru2KmEk3oMma0R6_SzGM8dOXzYeU4oVA,46
104
- aiagents4pharma/talk2knowledgegraphs/configs/app/frontend/default.yaml,sha256=eW-pJXgL6uHByOIggMg-N76HHAvP0XRcKKPSzGrAZ_I,2301
109
+ aiagents4pharma/talk2knowledgegraphs/configs/app/frontend/default.yaml,sha256=c5ufnM3rU5affg1s-JEkQ_8LUpnc6EwjIdLRNvQMBOA,3245
105
110
  aiagents4pharma/talk2knowledgegraphs/configs/tools/__init__.py,sha256=lGyiRtLtwBn0pTa7AV2ZzjyVck2lVrVO3D9FQF22s7w,125
106
111
  aiagents4pharma/talk2knowledgegraphs/configs/tools/graphrag_reasoning/__init__.py,sha256=fqQQ-GlRcbzru2KmEk3oMma0R6_SzGM8dOXzYeU4oVA,46
107
112
  aiagents4pharma/talk2knowledgegraphs/configs/tools/graphrag_reasoning/default.yaml,sha256=bSEqSz70hd4gnCSNZ0vlmtF-X1NO4BaXo3CA6Kdcz1o,1038
108
113
  aiagents4pharma/talk2knowledgegraphs/configs/tools/multimodal_subgraph_extraction/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
109
- aiagents4pharma/talk2knowledgegraphs/configs/tools/multimodal_subgraph_extraction/default.yaml,sha256=QEtxF7Fj1DYFEw1qS-JXAptbIgNHc-dnBV6aic0alkk,1330
114
+ aiagents4pharma/talk2knowledgegraphs/configs/tools/multimodal_subgraph_extraction/default.yaml,sha256=pqR9bBQM3sW-V4bBlP7LFB2GpO2RhacHrXzGXmUL6fk,904
110
115
  aiagents4pharma/talk2knowledgegraphs/configs/tools/subgraph_extraction/__init__.py,sha256=fqQQ-GlRcbzru2KmEk3oMma0R6_SzGM8dOXzYeU4oVA,46
111
116
  aiagents4pharma/talk2knowledgegraphs/configs/tools/subgraph_extraction/default.yaml,sha256=r5T29xiWnBK2C1vfsSlNHDlB0DfTvReFbzQgZqqB5l4,1470
112
117
  aiagents4pharma/talk2knowledgegraphs/configs/tools/subgraph_summarization/__init__.py,sha256=fqQQ-GlRcbzru2KmEk3oMma0R6_SzGM8dOXzYeU4oVA,46
113
118
  aiagents4pharma/talk2knowledgegraphs/configs/tools/subgraph_summarization/default.yaml,sha256=kiHerHXsGuohu_FLq58nXkY3bwlSFMw3kGqtQ68LMfA,562
119
+ aiagents4pharma/talk2knowledgegraphs/configs/utils/database/milvus/__init__.py,sha256=fqQQ-GlRcbzru2KmEk3oMma0R6_SzGM8dOXzYeU4oVA,46
120
+ aiagents4pharma/talk2knowledgegraphs/configs/utils/database/milvus/default.yaml,sha256=4J6cIguIy4Z794UM9EHwzwzwrwWv7qvsKTN8c5QucLc,2394
114
121
  aiagents4pharma/talk2knowledgegraphs/configs/utils/enrichments/ols_terms/default.yaml,sha256=7Fu03IkClglxbAzwTUdy-z-Tv6MZuo4oIdBYpQ7TPjI,107
115
122
  aiagents4pharma/talk2knowledgegraphs/configs/utils/enrichments/reactome_pathways/default.yaml,sha256=gyYLJREMO1jDex8-0CcCPfsuD5KguY6fKDmDCL_S4Uc,125
116
123
  aiagents4pharma/talk2knowledgegraphs/configs/utils/enrichments/uniprot_proteins/default.yaml,sha256=JlmawYim5ECgAKCZta3UrPD2YIjkD2d5TvLmR5V6wXM,184
@@ -127,16 +134,17 @@ aiagents4pharma/talk2knowledgegraphs/docker-compose/gpu/docker-compose.yml,sha25
127
134
  aiagents4pharma/talk2knowledgegraphs/states/__init__.py,sha256=9X3zHxvtAJFQ0s0VLZ_-iBn4rMVfZWk5CQiWEKJkr0c,109
128
135
  aiagents4pharma/talk2knowledgegraphs/states/state_talk2knowledgegraphs.py,sha256=QECNXd8IWDh3WlMvePcd2T6G5XqjOI9EkZdWmICcCT0,1088
129
136
  aiagents4pharma/talk2knowledgegraphs/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
130
- aiagents4pharma/talk2knowledgegraphs/tests/test_agents_t2kg_agent.py,sha256=IwoawiVrVR0oixK66rwwOGMpqyLnML5ds7J36f5YuS4,6749
137
+ aiagents4pharma/talk2knowledgegraphs/tests/test_agents_t2kg_agent.py,sha256=1Y-W2uH3goFTKKB_MeVtrfdMwPy-WGnieawF4KQIjkM,11132
131
138
  aiagents4pharma/talk2knowledgegraphs/tests/test_datasets_biobridge_primekg.py,sha256=AHUJ7StFYTBa8l4n_zYgyT0C9_G8j6NY3qHzLBhtkDg,9410
132
139
  aiagents4pharma/talk2knowledgegraphs/tests/test_datasets_dataset.py,sha256=nBLMI1TzulCl1pj-svy_mstomSQ6BRumTiXV8lRV40o,570
133
140
  aiagents4pharma/talk2knowledgegraphs/tests/test_datasets_primekg.py,sha256=csAR86I2RAxYG4Y0wpz-XLSBQf52x5gnhivvW_S17do,2329
134
141
  aiagents4pharma/talk2knowledgegraphs/tests/test_datasets_starkqa_primekg.py,sha256=30hNjv2i8G7VmbU_LLTuwpAkYFuQQdhJguLX_JJ-0MA,4391
135
142
  aiagents4pharma/talk2knowledgegraphs/tests/test_tools_graphrag_reasoning.py,sha256=Z2PIXBb_vV91BlC9x6a3YvQ8lvCtXnn1T28A8iwzKwM,11940
136
- aiagents4pharma/talk2knowledgegraphs/tests/test_tools_milvus_multimodal_subgraph_extraction.py,sha256=eFbFjqwxGkgXGar54JpC0Km2rdP7xWL8z4NEw2h9RnE,29208
143
+ aiagents4pharma/talk2knowledgegraphs/tests/test_tools_milvus_multimodal_subgraph_extraction.py,sha256=U_b8tz7McoX2Vd0rZRkkl_UOmMtiiROvdZZGo59rMjY,52689
137
144
  aiagents4pharma/talk2knowledgegraphs/tests/test_tools_multimodal_subgraph_extraction.py,sha256=fIfs1atTZAYdJArPO1SUYmikYXn8pBIzQ_f3qrAo4Yc,5851
138
145
  aiagents4pharma/talk2knowledgegraphs/tests/test_tools_subgraph_extraction.py,sha256=zdhBkKj7Ygo-X5DSWSrLa-Xz-z8Va00NNekJXJjYl5Q,5428
139
146
  aiagents4pharma/talk2knowledgegraphs/tests/test_tools_subgraph_summarization.py,sha256=dt_wi3bQUDd57HsoVl4_dIOy-EP_KZvvHxJcrdMvt_4,8907
147
+ aiagents4pharma/talk2knowledgegraphs/tests/test_utils_database_milvus_connection_manager.py,sha256=BaHFc5g7rLI3cMaHcgvTA8aI0lGmxZIUzLYyKN_QQtk,25028
140
148
  aiagents4pharma/talk2knowledgegraphs/tests/test_utils_embeddings_embeddings.py,sha256=LXrztJ9ICAph-txBbXB2Dw1hPfSI2fYAdKq8CjqaOhA,1521
141
149
  aiagents4pharma/talk2knowledgegraphs/tests/test_utils_embeddings_huggingface.py,sha256=C36Dn4ri4qABCY3Wh_amPxxKNTWVp5Xed9QsAAkNLhk,1628
142
150
  aiagents4pharma/talk2knowledgegraphs/tests/test_utils_embeddings_nim_molmim.py,sha256=NZF5sP64Q-jV8E-gxtq1NZX6kq3NJcgV74jkcnyM7Jg,2055
@@ -148,19 +156,21 @@ aiagents4pharma/talk2knowledgegraphs/tests/test_utils_enrichments_ols.py,sha256=
148
156
  aiagents4pharma/talk2knowledgegraphs/tests/test_utils_enrichments_pubchem.py,sha256=USHsjpfHxAktxjc5Q8INZ7qQJDWn_XFQYsS6mpeTLv0,1704
149
157
  aiagents4pharma/talk2knowledgegraphs/tests/test_utils_enrichments_reactome.py,sha256=eseSw3flQLQAmXLS2R-bobN3QGEs_i6iId8l4bLEitE,1658
150
158
  aiagents4pharma/talk2knowledgegraphs/tests/test_utils_enrichments_uniprot.py,sha256=8JqptVypftx4IrObzxGPDjQ1C7I24f3zUUx69D8svAo,1615
151
- aiagents4pharma/talk2knowledgegraphs/tests/test_utils_extractions_milvus_multimodal_pcst.py,sha256=Oo6IvPB9L9lAmdxc4UqFJVX-lYYdFKYv3lNaHrjkvS8,21515
159
+ aiagents4pharma/talk2knowledgegraphs/tests/test_utils_extractions_milvus_multimodal_pcst.py,sha256=vBc1nlAawIyp3NNp9P4JO1cu3uKIA_OiajXBNro-T_s,28591
152
160
  aiagents4pharma/talk2knowledgegraphs/tests/test_utils_kg_utils.py,sha256=RDheTkkRxnGCxIoaTmTRKOQA2ewJyOOlKtgxdABgSSA,2397
153
161
  aiagents4pharma/talk2knowledgegraphs/tests/test_utils_pubchem_utils.py,sha256=80PhbFXD287LeCwGpXGtPal5vkjqKKCACefR_BPdfbM,3967
154
162
  aiagents4pharma/talk2knowledgegraphs/tools/__init__.py,sha256=unrqqDUAmfTpgiJSV65Pag9FWHpnf3eEsE8Cwh59NWI,242
155
163
  aiagents4pharma/talk2knowledgegraphs/tools/graphrag_reasoning.py,sha256=cCPBH1tKs9MjX1q9v6BXi-dInz_gxKwMyIVA-XdKocg,5251
156
164
  aiagents4pharma/talk2knowledgegraphs/tools/load_arguments.py,sha256=zhmsRp-8vjB5rRekqTA07d3yb-42HWqng9dDMkvK6hM,623
157
- aiagents4pharma/talk2knowledgegraphs/tools/milvus_multimodal_subgraph_extraction.py,sha256=QIgPJUTPP-AR_bytfmp3WLW8Gqwe6VQn5cYItWsSBE8,23311
165
+ aiagents4pharma/talk2knowledgegraphs/tools/milvus_multimodal_subgraph_extraction.py,sha256=chyHEOlbzLwPd8IXwgA4B2YMWbJAyBikBkf2-x_XH1E,39730
158
166
  aiagents4pharma/talk2knowledgegraphs/tools/multimodal_subgraph_extraction.py,sha256=cAsRkBklFxitBDNvhOIqmqd0ZTjtRYKsgb-rySC0PTk,14774
159
167
  aiagents4pharma/talk2knowledgegraphs/tools/subgraph_extraction.py,sha256=DSUucfzKf3LoOo1v9snp6-Zk1vTGB9jeH-hshatd0PY,11161
160
168
  aiagents4pharma/talk2knowledgegraphs/tools/subgraph_summarization.py,sha256=mXuKTahLXXFYFMS-0HkmiP7o6MSLjE_REEEsxPwCF7c,4372
161
169
  aiagents4pharma/talk2knowledgegraphs/utils/__init__.py,sha256=OwsMjDLRsVdHm6jS_oKbUP9tUKOwGt2yOjz5EgWCv_M,144
162
170
  aiagents4pharma/talk2knowledgegraphs/utils/kg_utils.py,sha256=IeCekDG__hjvIBXk4geLLBzlrLJukVg2y8IZfXTosQ0,2188
163
171
  aiagents4pharma/talk2knowledgegraphs/utils/pubchem_utils.py,sha256=PWjLdXbkdnQig95TkR4zqrhEULbQoGFIQMFK7HIMX8U,3378
172
+ aiagents4pharma/talk2knowledgegraphs/utils/database/__init__.py,sha256=KwsAQO484Ado7GUn0kvymVn5_71h0oxcAkbMxOf6MZQ,154
173
+ aiagents4pharma/talk2knowledgegraphs/utils/database/milvus_connection_manager.py,sha256=IW4FoTAYQvhln4_M8jcRfpXjb-WqaMw65cRe5vvqNOw,21083
164
174
  aiagents4pharma/talk2knowledgegraphs/utils/embeddings/__init__.py,sha256=XWFU0_juBq-8oEP8oAgyGLMpowZ1VdgibwjYdc0I3y4,148
165
175
  aiagents4pharma/talk2knowledgegraphs/utils/embeddings/embeddings.py,sha256=O11r9uKDKBjsgq9gGeKxoUR-HoBSVX6D16wci7eYW8s,2527
166
176
  aiagents4pharma/talk2knowledgegraphs/utils/embeddings/huggingface.py,sha256=rDhksY0g8HfpWiJO1CeKGdvZJ-stFrZ9Q88CXlfXJCU,3724
@@ -175,7 +185,7 @@ aiagents4pharma/talk2knowledgegraphs/utils/enrichments/pubchem_strings.py,sha256
175
185
  aiagents4pharma/talk2knowledgegraphs/utils/enrichments/reactome_pathways.py,sha256=8iyrT1p01GJpi7k7FCuwZBqn-hyueRWYxPqabM5U80Q,1990
176
186
  aiagents4pharma/talk2knowledgegraphs/utils/enrichments/uniprot_proteins.py,sha256=0mTFX5sVgBZHkEuf057lCFNciTBapn9CqPi2-YublUg,3013
177
187
  aiagents4pharma/talk2knowledgegraphs/utils/extractions/__init__.py,sha256=kgioLxc3ZPY46aXe36JMTo2OODchsLnzSzClpz-nwaU,128
178
- aiagents4pharma/talk2knowledgegraphs/utils/extractions/milvus_multimodal_pcst.py,sha256=KfljjljjBetfGdK05oe6eXTBNYu_uOvsqMIWbHkMIig,21312
188
+ aiagents4pharma/talk2knowledgegraphs/utils/extractions/milvus_multimodal_pcst.py,sha256=QZ_hJpeqre1YKKGTRr1fJpY1cb1y1Ldy8UcdxaTYyLU,30570
179
189
  aiagents4pharma/talk2knowledgegraphs/utils/extractions/multimodal_pcst.py,sha256=GD2lsq3yiDf6n-pT9HbJiRd6o0DBgnv6lwq9RuC-zuU,12356
180
190
  aiagents4pharma/talk2knowledgegraphs/utils/extractions/pcst.py,sha256=__IB_hPEQ-GyHAsz6FOmYUlXXmcB0T6J9wvMS2UNiko,9324
181
191
  aiagents4pharma/talk2scholars/.dockerignore,sha256=-hAM7RzkGbjDeU411-kXOmYzNfl3Z9OlLWvN9zMDAXE,89
@@ -205,7 +215,7 @@ aiagents4pharma/talk2scholars/configs/agents/talk2scholars/zotero_agent/__init__
205
215
  aiagents4pharma/talk2scholars/configs/agents/talk2scholars/zotero_agent/default.yaml,sha256=ymVGlho7BZTJlMxT3xMRUsMwd9qNT6ZR7KgB57DgvaY,1002
206
216
  aiagents4pharma/talk2scholars/configs/app/__init__.py,sha256=tXpOW3R4eAfNoqvoaHfabSG-DcMHmUGSTg_4zH_vlgw,94
207
217
  aiagents4pharma/talk2scholars/configs/app/frontend/__init__.py,sha256=fqQQ-GlRcbzru2KmEk3oMma0R6_SzGM8dOXzYeU4oVA,46
208
- aiagents4pharma/talk2scholars/configs/app/frontend/default.yaml,sha256=A6nYjrgzEyRv5JYsGN7oqNX4-tufMBZ6mg-A7bMX6V4,906
218
+ aiagents4pharma/talk2scholars/configs/app/frontend/default.yaml,sha256=Z2oZBqGkJBC_8M5jXCZwrBcJwbllRd5YnCiUtKZdOig,2445
209
219
  aiagents4pharma/talk2scholars/configs/tools/__init__.py,sha256=TTLziqMoxBLU5yZpecgptfySKQJH82tc1K1G6iKzmKg,366
210
220
  aiagents4pharma/talk2scholars/configs/tools/multi_paper_recommendation/__init__.py,sha256=fqQQ-GlRcbzru2KmEk3oMma0R6_SzGM8dOXzYeU4oVA,46
211
221
  aiagents4pharma/talk2scholars/configs/tools/multi_paper_recommendation/default.yaml,sha256=comNgL9hRpH--IWuEsrN6hV5WdrJmh-ZsRh7hbryVhg,631
@@ -318,7 +328,7 @@ aiagents4pharma/talk2scholars/tools/zotero/utils/review_helper.py,sha256=-q-UuzP
318
328
  aiagents4pharma/talk2scholars/tools/zotero/utils/write_helper.py,sha256=K1EatPfC-riGyFmkOAS3ReNBaGPY-znne1KqOnFahkI,7339
319
329
  aiagents4pharma/talk2scholars/tools/zotero/utils/zotero_path.py,sha256=sKkfJu3u4LKSZjfoQRfeqz26IESHRwBtcSDzLMLlJMo,6311
320
330
  aiagents4pharma/talk2scholars/tools/zotero/utils/zotero_pdf_downloader.py,sha256=DBrF5IiF7VRP58hUK8T9LST3lQWLFixLUfnpMSTccoQ,4614
321
- aiagents4pharma-1.45.1.dist-info/METADATA,sha256=JFqD43WM9t6Qp9zi5odBVfXPhDC5WCsmY_pe4RkbGcU,16285
322
- aiagents4pharma-1.45.1.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
323
- aiagents4pharma-1.45.1.dist-info/licenses/LICENSE,sha256=IcIbyB1Hyk5ZDah03VNQvJkbNk2hkBCDqQ8qtnCvB4Q,1077
324
- aiagents4pharma-1.45.1.dist-info/RECORD,,
331
+ aiagents4pharma-1.46.1.dist-info/METADATA,sha256=z8dEOeNUk6HxhM5WQfaFKsnkdrUo-OAbJwf3G8-4Yro,16928
332
+ aiagents4pharma-1.46.1.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
333
+ aiagents4pharma-1.46.1.dist-info/licenses/LICENSE,sha256=IcIbyB1Hyk5ZDah03VNQvJkbNk2hkBCDqQ8qtnCvB4Q,1077
334
+ aiagents4pharma-1.46.1.dist-info/RECORD,,