Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ dependencies = [
"pillow>=10.1.0",
"numpy>=1.26.0",
"xxhash>=3.5.0",
"gepa[dspy]==0.0.17",
"gepa[dspy]==0.0.18",
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@LakshyAAAgrawal does this need to be [dspy]? It seems the dspy optional dependency group does not have any packages.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, GEPA by default pulls in some dependencies, which may conflict with DSPy. Which is why I have created a dependency free version of GEPA for dspy under gepa[dspy]

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@LakshyAAAgrawal It seems gepa doesn't have any core dependencies though?
What package do you think is installed by default?
https://github.com/gepa-ai/gepa/blob/main/pyproject.toml#L20

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That is true, but the idea is that even if gepa introduces any default dependencies in the future, it should have a separate dependency list so that it never introduces any conflict for dspy.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Iirc, default depencies are installed even if you add [dspy]. So it won't serve for the purpose I think.

]

[project.optional-dependencies]
Expand Down
1 change: 1 addition & 0 deletions tests/teleprompt/test_gepa.py
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,7 @@ def dummy_bootstrap_trace_data(*args, **kwargs):
@pytest.fixture
def mock_mlflow():
mock_mlflow = mock.MagicMock()
mock_mlflow.active_run.return_value = None
with mock.patch.dict("sys.modules", {"mlflow": mock_mlflow}):
yield mock_mlflow

Expand Down