File tree Expand file tree Collapse file tree 2 files changed +28
-2
lines changed Expand file tree Collapse file tree 2 files changed +28
-2
lines changed Original file line number Diff line number Diff line change @@ -74,9 +74,18 @@ def convert(obj):
7474 return convert (obj )
7575
7676
77- def remove_content_after_stop_sequences (content : str , stop_sequences : list [str ]) -> str :
78- """Remove content after any stop sequence is encountered."""
77+ def remove_content_after_stop_sequences (content : str | None , stop_sequences : list [str ] | None ) -> str | None :
78+ """Remove content after any stop sequence is encountered.
79+
80+ Some providers may return ``None`` content (for example when responding purely with tool calls),
81+ so we skip processing in that case.
82+ """
83+ if content is None or not stop_sequences :
84+ return content
85+
7986 for stop_seq in stop_sequences :
87+ if not stop_seq :
88+ continue
8089 split = content .split (stop_seq )
8190 content = split [0 ]
8291 return content
Original file line number Diff line number Diff line change @@ -724,6 +724,23 @@ def test_remove_content_after_stop_sequences():
724724 assert removed_content == "Hello"
725725
726726
727+ def test_remove_content_after_stop_sequences_handles_none ():
728+ removed_content = remove_content_after_stop_sequences (None , ["<code>" ])
729+ assert removed_content is None
730+
731+
732+ def test_remove_content_after_stop_sequences_ignores_empty_stop_sequences ():
733+ content = "Hello world!"
734+ removed_content = remove_content_after_stop_sequences (content , ["" , "<code>" ])
735+ assert removed_content == "Hello world!"
736+
737+
738+ def test_remove_content_after_stop_sequences_with_none_stop_sequences ():
739+ content = "Hello world!"
740+ removed_content = remove_content_after_stop_sequences (content , None )
741+ assert removed_content == content
742+
743+
727744@pytest .mark .parametrize (
728745 "convert_images_to_image_urls, expected_clean_message" ,
729746 [
You can’t perform that action at this time.
0 commit comments