-
Notifications
You must be signed in to change notification settings - Fork 13
Feat/add bibliometric modules #6
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
anabossler
wants to merge
51
commits into
Josephrp:main
Choose a base branch
from
DeepCritical:feat/add-bibliometric-modules
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Feat/add bibliometric modules #6
anabossler
wants to merge
51
commits into
Josephrp:main
from
DeepCritical:feat/add-bibliometric-modules
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Signed-off-by: Tonic <[email protected]>
Signed-off-by: Tonic <[email protected]>
Signed-off-by: marioaderman <[email protected]>
* fix: resolve circular import chain and missing dependencies - Extract ToolSpec and ToolCategory to separate tool_specs.py module - Fix double src import paths throughout codebase - Use TYPE_CHECKING and runtime imports to break agent circular dependencies - Add missing dependencies: trafilatura, gradio, limits, python-dateutil - Correct analytics module import paths - Add Union import to app.py - Create configs/__init__.py for Hydra - Update graph instantiation to include workflow nodes * fix: resolve CI failures for lint and test jobs Fixes two CI failures blocking PR #23: 1. Lint failure - removed 34 unused imports from DeepResearch/agents.py - Removed unused typing imports (Union, Type, Callable, Tuple) - Removed unused pydantic imports (BaseModel, Field, validator) - Removed unused pydantic_ai imports (RunContext, ModelRetry) - Removed unused datatype imports across rag, bioinformatics, and deep_agent modules - Fixed using ruff --fix for F401 errors 2. Test failure - added missing pytest-cov dependency - Added pytest-cov>=4.0.0 to dev dependencies in pyproject.toml - Updated uv.lock with pytest-cov==7.0.0 and coverage==7.10.7 - Resolves "unrecognized arguments: --cov" error in CI test jobs These changes ensure the circular import fix (commit 12122b2) passes all CI checks. * fix: resolve all remaining lint errors in codebase Fixes all lint errors that were blocking CI checks in PR #23: Automated fixes (ruff --fix): - Removed 240+ unused imports (F401) across 40+ files - Removed 52 unnecessary f-string prefixes (F541) in app.py - Removed 7 unused variable assignments (F841) Manual fixes: - tools/__init__.py: Added noqa comments for intentional side-effect imports - code_sandbox.py: Fixed Python 3.10 f-string syntax (no backslash in f-strings) - workflow_orchestrator.py: Added missing WorkflowConfig import (F821) - chroma_dataclass.py: Renamed count() method to get_count() to avoid redefinition (F811) - chunk_dataclass.py: Changed bare except to except Exception (E722) All ruff checks now pass. This completes the CI lint fixes for the circular import resolution. * fix: apply ruff formatting and add tests directory Addresses CI failures in PR #23: - Applied ruff format to all 76 modified Python files for consistent code style - Added tests/__init__.py to prevent test discovery errors in CI - All files now pass ruff format --check validation These changes ensure the circular import fix passes all CI checks. * fix: add placeholder test to satisfy CI test requirements Resolves pytest exit code 5 when no tests are collected with --cov flag. The placeholder test allows CI to pass while the test suite is being developed. * fix: reorder Hydra defaults and migrate to dependency-groups - Move Hydra override directives to end of defaults list - Add _self_ to defaults to prevent composition warnings - Migrate from tool.uv.dev-dependencies to dependency-groups.dev - Add bandit to dev dependencies for security scanning Resolves ConfigCompositionException in integration tests and eliminates deprecation warnings from uv. * chore: update uv.lock after dependency-groups migration Updates lockfile to reflect the migration from tool.uv.dev-dependencies to dependency-groups.dev and the addition of bandit. * fix: remove unsupported --dry-run flag from integration test The --dry-run flag is not implemented in the application. Removed from CI to allow integration tests to pass.
adds initial refactor
attempts to fix ci
* adds prompt testing using my fork of testcontainers * adds tests , testscontainers , vllm object , scripts
* adds prompt testing using my fork of testcontainers * adds tests , testscontainers , vllm object , scripts * adds agentic design patterns * adds linting , tests pass * Complete agent interaction design patterns implementation - all tests passing * Fix CI dependencies - install pydantic and omegaconf before running tests * adds linting , tests pass --------- Signed-off-by: Tonic <[email protected]>
* adds prompt testing using my fork of testcontainers * adds tests , testscontainers , vllm object , scripts * adds agentic design patterns * adds linting , tests pass * Complete agent interaction design patterns implementation - all tests passing * Fix CI dependencies - install pydantic and omegaconf before running tests * adds linting , tests pass * adds type checking , ruff , black , codecov on dev branch , fixes some linting errors * adds type checking , ruff , black , codecov on dev branch , fixes some linting errors * adds type checking , ruff , black , codecov on dev branch , fixes some linting errors * Potential fix for code scanning alert no. 13: Workflow does not contain permissions Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Tonic <[email protected]> * adds ruff formatting --------- Signed-off-by: Tonic <[email protected]> Signed-off-by: Tonic <[email protected]> Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Removes all references to non-existent @defer decorator from codebase. The @defer decorator never existed in Pydantic AI. Tools are correctly implemented using standard Pydantic AI patterns. Changes: - Removed 16 @defer comments from tool files - Updated README Known Issues section - All tools continue to work correctly (no functional changes) Fixes #2 Signed-off-by: marioaderman <[email protected]>
* adds readme improvements and adds ty and black to the dev tools * adds pre-commit hooks , make file , contributing.md improvements --------- Signed-off-by: Tonic <[email protected]> Signed-off-by: Tonic <[email protected]> Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
* adds docssite * adds documentation site, local deployment configs, github pages - fixes unused import errors * fix: disable black formatter in pre-commit to avoid conflicts with ruff-format * adds documentation site * adds documentation site, removes black linter , adds ruff formater * Type Cast Issues: Fixed ty type checker errors by adding proper type casting with cast(dict[str, Any], config_result) in DeepResearch/src/utils/deepsearch_utils.py Callable Check: Added explicit callable() check for tools_attr.append in DeepResearch/src/statemachines/deep_agent_graph.py Hash Method: Added __hash__ method to UsageDetails class in DeepResearch/src/datatypes/agent_framework_usage.py to resolve PLW1641 error Import Organization: Fixed __all__ sorting issues using ruff --fix --unsafe-fixes Dictionary Iteration: Fixed PLC0206 errors by using .items() for dictionary iteration Configuration: Added PLC0415 (imports outside top-level) to the ignore list in pyproject.toml since these are common and acceptable in test files * attempts to pass linting * attempts to pass linting * attempts to pass linting * attempts to build site from actions --------- Signed-off-by: Tonic <[email protected]> Signed-off-by: Tonic <[email protected]> Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
* adds docs build to pre-commit config --------- Signed-off-by: Tonic <[email protected]>
* fix: remove misleading @defer decorator comments Removes all references to non-existent @defer decorator from codebase. The @defer decorator never existed in Pydantic AI. Tools are correctly implemented using standard Pydantic AI patterns. Changes: - Removed 16 @defer comments from tool files - Updated README Known Issues section - All tools continue to work correctly (no functional changes) Fixes #2 * feat: add custom LLM model wrappers for Pydantic AI - Implement VLLMModel wrapper around existing VLLMClient - Add OpenAICompatibleModel for vLLM, llama.cpp, TGI servers - Provide factory methods (from_vllm, from_llamacpp, from_tgi) - Include streaming support and message conversion - Add convenience aliases for VLLMModel and LlamaCppModel * fix: update OpenAICompatibleModel to use OllamaProvider and add tests - Replace non-existent OpenAIProvider with OllamaProvider from pydantic_ai - Remove dataclass decorator to properly inherit from OpenAIChatModel - Fix factory methods to pass model_name as positional argument - Add comprehensive test suite with 8 passing tests - Skip integration tests that require actual vLLM servers * refactor: integrate LLM models with Hydra configuration system - Add from_config() method to support Hydra DictConfig - Update all factory methods (from_vllm, from_llamacpp, from_tgi, from_custom) to accept optional config - Support config override via direct parameters - Extract generation settings from config (temperature, max_tokens, etc.) - Add environment variable fallbacks (LLM_BASE_URL, LLM_API_KEY) - Create config files for llamacpp, tgi, and vllm - Update tests to cover both config-based and direct parameter approaches - All 10 tests passing * feat: add LLM client support with Pydantic validation (#10) - Add LLMModelConfig and GenerationConfig datatypes - Remove redundant vllm_model.py - Update openai_compatible_model.py with validation - Rewrite tests to use actual config files (30 tests) * fix: add LLM datatypes to __all__ export list * solves type and style errors * Add comprehensive LLM model configuration documentation All code examples include proper type guards and annotations. * Add Models section to core documentation Auto-generates API reference for LLM model classes.
…ScrapperPatents, and neo4j_vector_service
* Start working on literature review agent - pubmed API tools Adds a couple of dependencies, some mocking things to allow us to do API tests This is work in progress, in particular the _build_paper function is not filling everything it needs to yet. * Add fixture to disable ratelimiter during testing May als be useful for the web_search rate limits, though the list of stuff to disable might get big * ruff-format fixes * ruff import order fixes * More linter fixes * Missed linter check on pytest config
* initial commit - adds bio-informatics tools & mcp * initial commit - adds bio-informatics tools & mcp * improves code quality * refactor bioinformatics tools , utils, prompts * adds docs * adds quite a lot of testing , for windows, docker, linux , testcontainers * adds docker tests and related improvements * Potential fix for code scanning alert no. 21: Workflow does not contain permissions Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Tonic <[email protected]> * Potential fix for code scanning alert no. 17: Workflow does not contain permissions Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Tonic <[email protected]> * adds optional bioinformatics tests * adds optional bioinformatics tests per branch option to allow fail * adds pytest to replace uv * adds dockers , docker tests , tools tests , ci , make file improvements * merge commit * removes docker from ci * removes docker from ci * feat: add bioinformatics MCP servers and tools infrastructure * fix linter types and checks version , fix tests * improves ci
* trigger codecov report
* fix: remove misleading @defer decorator comments Removes all references to non-existent @defer decorator from codebase. The @defer decorator never existed in Pydantic AI. Tools are correctly implemented using standard Pydantic AI patterns. Changes: - Removed 16 @defer comments from tool files - Updated README Known Issues section - All tools continue to work correctly (no functional changes) Fixes #2 * feat: add custom LLM model wrappers for Pydantic AI - Implement VLLMModel wrapper around existing VLLMClient - Add OpenAICompatibleModel for vLLM, llama.cpp, TGI servers - Provide factory methods (from_vllm, from_llamacpp, from_tgi) - Include streaming support and message conversion - Add convenience aliases for VLLMModel and LlamaCppModel * fix: update OpenAICompatibleModel to use OllamaProvider and add tests - Replace non-existent OpenAIProvider with OllamaProvider from pydantic_ai - Remove dataclass decorator to properly inherit from OpenAIChatModel - Fix factory methods to pass model_name as positional argument - Add comprehensive test suite with 8 passing tests - Skip integration tests that require actual vLLM servers * refactor: integrate LLM models with Hydra configuration system - Add from_config() method to support Hydra DictConfig - Update all factory methods (from_vllm, from_llamacpp, from_tgi, from_custom) to accept optional config - Support config override via direct parameters - Extract generation settings from config (temperature, max_tokens, etc.) - Add environment variable fallbacks (LLM_BASE_URL, LLM_API_KEY) - Create config files for llamacpp, tgi, and vllm - Update tests to cover both config-based and direct parameter approaches - All 10 tests passing * feat: add LLM client support with Pydantic validation (#10) - Add LLMModelConfig and GenerationConfig datatypes - Remove redundant vllm_model.py - Update openai_compatible_model.py with validation - Rewrite tests to use actual config files (30 tests) * fix: add LLM datatypes to __all__ export list * solves type and style errors * initial commit - adds bio-informatics tools & mcp * initial commit - adds bio-informatics tools & mcp * improves code quality * refactor bioinformatics tools , utils, prompts * adds docs * adds quite a lot of testing , for windows, docker, linux , testcontainers * adds docker tests and related improvements * Potential fix for code scanning alert no. 21: Workflow does not contain permissions Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Tonic <[email protected]> * Potential fix for code scanning alert no. 17: Workflow does not contain permissions Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Tonic <[email protected]> * adds optional bioinformatics tests * adds optional bioinformatics tests per branch option to allow fail * adds pytest to replace uv * adds dockers , docker tests , tools tests , ci , make file improvements * merge commit * removes docker from ci * removes docker from ci * feat: add bioinformatics MCP servers and tools infrastructure * fix linter types and checks version , fix tests * improves ci * trigger codecov report * Update CI to upload test results to Codecov for test analytics * Fix Codecov repository slug to use Josephrp/DeepCritical * adds deepcritical/deepcritical repository slug --------- Signed-off-by: Tonic <[email protected]> Signed-off-by: Tonic <[email protected]> Co-authored-by: MarioAderman <[email protected]> Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
* attempts codecov trigger
* attempts codecov trigger
* attempts codecov trigger
* adds codecov cli
* adds codecov components and upload
Signed-off-by: Tonic <[email protected]>
Signed-off-by: Tonic <[email protected]>
* fix permissions
- attempts ci fix
* attempts ci fix for upload
- try hard
- attempts make upload optional
- try hardest
revert optional
* Add workflow context and edge tests * Add workflow events test * Add workflow middleware test * Add middleware test
* adds code quality improvements * adds code execution tests, documentation , agents , flows * adds code execution tests, documentation , agents , flows * update tests
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Pull Request
Description
This PR implements the Neo4j Vector Store feature requested in #7.
Adds the following bibliometric analysis modules:
Type of Change
Component
Related Issues
Changes Made
Testing
Test Configuration
Configuration Changes
Configuration Details
Documentation
Performance Impact
Performance Details
Breaking Changes
Checklist
Additional Notes
This implementation provides a foundation for graph-based bibliometric analysis and vector search capabilities. The modules are designed to work both independently and as part of integrated workflows.
Screenshots/Output
N/A - Backend modules for data processing and vector search
Reviewer Notes
Please review the following areas: