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: 2 additions & 0 deletions MANIFEST.in
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
include openevolve/prompts/defaults/*.txt
include openevolve/prompts/defaults/*.json
2 changes: 1 addition & 1 deletion openevolve/_version.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
"""Version information for openevolve package."""

__version__ = "0.2.6"
__version__ = "0.2.7"
20 changes: 0 additions & 20 deletions openevolve/prompt/templates.py
Original file line number Diff line number Diff line change
Expand Up @@ -187,9 +187,6 @@ def __init__(self, custom_template_dir: Optional[str] = None):
# 2. Override with custom templates (if provided)
if self.custom_dir and self.custom_dir.exists():
self._load_from_directory(self.custom_dir)

# 3. Minimal hardcoded fallbacks (for safety/compatibility)
self._ensure_minimal_templates()

def _load_from_directory(self, directory: Path) -> None:
"""Load all templates and fragments from a directory"""
Expand All @@ -208,23 +205,6 @@ def _load_from_directory(self, directory: Path) -> None:
with open(fragments_file, 'r') as f:
loaded_fragments = json.load(f)
self.fragments.update(loaded_fragments)

def _ensure_minimal_templates(self) -> None:
"""Ensure critical templates exist (backward compatibility)"""
if "system_message" not in self.templates:
self.templates["system_message"] = "You are an AI assistant helping with code evolution."
if "diff_user" not in self.templates:
self.templates["diff_user"] = "# Task\nImprove the program:\n```\n{current_program}\n```"
if "full_rewrite_user" not in self.templates:
self.templates["full_rewrite_user"] = "# Task\nRewrite the program:\n```\n{current_program}\n```"

# Ensure critical fragments exist
if "fitness_improved" not in self.fragments:
self.fragments["fitness_improved"] = "Fitness improved: {prev} → {current}"
if "fitness_declined" not in self.fragments:
self.fragments["fitness_declined"] = "Fitness declined: {prev} → {current}"
if "no_specific_guidance" not in self.fragments:
self.fragments["no_specific_guidance"] = "Focus on improving fitness while maintaining diversity"

def get_template(self, name: str) -> str:
"""Get a template by name"""
Expand Down
3 changes: 3 additions & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -50,5 +50,8 @@ openevolve-run = "openevolve.cli:main"
[tool.setuptools.packages.find]
include = ["openevolve*"]

[tool.setuptools.package-data]
openevolve = ["prompts/defaults/*.txt", "prompts/defaults/*.json"]

[tool.setuptools.dynamic]
version = {attr = "openevolve._version.__version__"}