-
Notifications
You must be signed in to change notification settings - Fork 0
Second attempt at gene list annotator #7
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
Conversation
1. new utilities subpackage has simple wrapper code for openAI API calls - DeepSearch; One shot LLM calls. 2. New services run the first two steps of the workflow. a. DeepSearch with gene list + context. Tested with 4o mini using examples in branch b. Draft Decomposer - one shot GPT5 call. Not yet tested. 3. Vibe coded agent for more general ontology grounding though OLS, based on existing code. Untested. 4. Vibe coded command line runner for gene list annotation pipeline - rescued from first attempt. I kinda like the many options for running and debugging. Not yet wired up to anything in this branch. 4. Claude.md has goals for this branch, not just general instructions 5. Progress.md is intended to support agentic coding - to be added to agent calls as needed, following updates to its contents.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR introduces a second attempt at a gene list annotation system, establishing key infrastructure components and workflow services for analyzing gene lists using LLM capabilities. The changes implement utility wrappers for OpenAI API interactions and create new services for deep search and annotation workflows.
Key changes:
- New OpenAI API utility wrappers for simple responses and deep research functionality
- Gene list contextual deep search service with schema definition and examples
- Ontology mapping agent for grounding biological terms to standardized ontologies
- Command-line interface for gene list annotation workflows
Reviewed Changes
Copilot reviewed 14 out of 20 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| pyproject.toml | Adds OpenAI dependency as optional package |
| gene_list_annotation_cli.py | Complete CLI implementation for gene annotation workflows |
| cellsem_agent/utils/openai/simple_response_wrapper.py | Wrapper for basic OpenAI API responses |
| cellsem_agent/utils/openai/deepsearch.py | Deep research client using OpenAI's research models |
| cellsem_agent/services/gene_list_contextual_deepsearch/ | Service implementation with schema and examples |
| cellsem_agent/agents/ontology_mapping/ | Agent for mapping terms to biological ontologies |
| cellsem_agent/utils/init.py | Package initialization |
| cellsem_agent/init.py | Main package initialization |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
|
|
||
| def __init__(self): | ||
| self.output_dir = Path("./gene_annotation_output") | ||
| self.examples_dir = Path(__file__).parent / "cellsem_agent" / "graphs" / "gene_list_annotation" / "examples" |
Copilot
AI
Sep 22, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The path construction is incorrect. Since this file is at the root level, it should not include 'cellsem_agent' in the path, or use a proper relative path resolution.
updated schema, prompt for deep search contextual and added examples
- Edits to prompts + prompts in schema - New data from Glioblastoma paper - support for list examples
# Conflicts: # cellsem_agent/agents/annotator/annotator_agent.py # poetry.lock
|
Merging this long lived branch to main: |
a. DeepSearch with gene list + context. Tested with 4o mini using examples in branch
b. Draft Decomposer - one shot GPT5 call. Not yet tested.