diff --git a/metagpt/tools/libs/editor.py b/metagpt/tools/libs/editor.py index ab7b2efd6..9a1cf63c3 100644 --- a/metagpt/tools/libs/editor.py +++ b/metagpt/tools/libs/editor.py @@ -17,7 +17,7 @@ from pydantic import BaseModel, ConfigDict from metagpt.config2 import Config from metagpt.const import DEFAULT_WORKSPACE_ROOT from metagpt.logs import logger -from metagpt.tools.libs.index_repo import OTHER_TYPE, IndexRepo +from metagpt.tools.libs.index_repo import DEFAULT_MIN_TOKEN_COUNT, OTHER_TYPE, IndexRepo from metagpt.tools.libs.linter import Linter from metagpt.tools.tool_registry import register_tool from metagpt.utils import read_docx @@ -956,7 +956,7 @@ class Editor(BaseModel): @staticmethod async def search_index_repo( - query: str, files_or_paths: List[Union[str, Path]], min_token_count: int = 0 + query: str, files_or_paths: List[Union[str, Path]], min_token_count: int = DEFAULT_MIN_TOKEN_COUNT ) -> List[str]: """Searches the index repository for a given query across specified files or paths. diff --git a/metagpt/tools/libs/index_repo.py b/metagpt/tools/libs/index_repo.py index 9c1b0886a..b4907d74e 100644 --- a/metagpt/tools/libs/index_repo.py +++ b/metagpt/tools/libs/index_repo.py @@ -27,6 +27,9 @@ CHATS_INDEX_ROOT = "/data/.index/chats" CHATS_ROOT = "/data/chats/" OTHER_TYPE = "other" +DEFAULT_MIN_TOKEN_COUNT = 10000 +DEFAULT_MAX_TOKEN_COUNT = 100000000 + class TextScore(BaseModel): filename: str @@ -41,8 +44,8 @@ class IndexRepo(BaseModel): ) fingerprint_filename: str = "fingerprint.json" model: Optional[str] = None - min_token_count: int = 10000 - max_token_count: int = 100000000 + min_token_count: int = DEFAULT_MIN_TOKEN_COUNT + max_token_count: int = DEFAULT_MAX_TOKEN_COUNT recall_count: int = 5 embedding: Optional[BaseEmbedding] = Field(default=None, exclude=True) fingerprints: Dict[str, str] = Field(default_factory=dict)