diff --git a/gpt_oss/tools/simple_browser/backend.py b/gpt_oss/tools/simple_browser/backend.py index 03bdf566..9dbd7e78 100644 --- a/gpt_oss/tools/simple_browser/backend.py +++ b/gpt_oss/tools/simple_browser/backend.py @@ -64,12 +64,6 @@ def with_retries( return func -def maybe_truncate(text: str, num_chars: int = 1024) -> str: - if len(text) > num_chars: - text = text[: (num_chars - 3)] + "..." - return text - - @chz.chz(typecheck=True) class Backend: source: str = chz.field(doc="Description of the backend source") diff --git a/gpt_oss/tools/simple_browser/simple_browser_tool.py b/gpt_oss/tools/simple_browser/simple_browser_tool.py index 913ee0bd..9c4e7804 100644 --- a/gpt_oss/tools/simple_browser/simple_browser_tool.py +++ b/gpt_oss/tools/simple_browser/simple_browser_tool.py @@ -28,7 +28,6 @@ VIEW_SOURCE_PREFIX, Backend, BackendError, - maybe_truncate, ) from .page_contents import Extract, PageContents @@ -175,6 +174,11 @@ def wrap_lines(text: str, width: int = 80) -> list[str]: return list(wrapped) +def maybe_truncate(text: str, num_chars: int = 1024) -> str: + """Truncate ``text`` to at most ``num_chars`` characters.""" + return text if len(text) <= num_chars else text[: num_chars - 3] + "..." + + def strip_links(text: str) -> str: text = re.sub(PARTIAL_INITIAL_LINK_PATTERN, "", text) text = re.sub(PARTIAL_FINAL_LINK_PATTERN, lambda mo: mo.group("content"), text)