aient 1.2.6__tar.gz → 1.2.7__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {aient-1.2.6 → aient-1.2.7}/PKG-INFO +1 -1
- {aient-1.2.6 → aient-1.2.7}/aient/architext/architext/core.py +4 -1
- {aient-1.2.6 → aient-1.2.7}/aient/architext/test/test.py +35 -0
- {aient-1.2.6 → aient-1.2.7}/aient.egg-info/PKG-INFO +1 -1
- {aient-1.2.6 → aient-1.2.7}/pyproject.toml +1 -1
- {aient-1.2.6 → aient-1.2.7}/LICENSE +0 -0
- {aient-1.2.6 → aient-1.2.7}/README.md +0 -0
- {aient-1.2.6 → aient-1.2.7}/aient/__init__.py +0 -0
- {aient-1.2.6 → aient-1.2.7}/aient/architext/architext/__init__.py +0 -0
- {aient-1.2.6 → aient-1.2.7}/aient/architext/test/openai_client.py +0 -0
- {aient-1.2.6 → aient-1.2.7}/aient/architext/test/test_save_load.py +0 -0
- {aient-1.2.6 → aient-1.2.7}/aient/core/__init__.py +0 -0
- {aient-1.2.6 → aient-1.2.7}/aient/core/log_config.py +0 -0
- {aient-1.2.6 → aient-1.2.7}/aient/core/models.py +0 -0
- {aient-1.2.6 → aient-1.2.7}/aient/core/request.py +0 -0
- {aient-1.2.6 → aient-1.2.7}/aient/core/response.py +0 -0
- {aient-1.2.6 → aient-1.2.7}/aient/core/test/test_base_api.py +0 -0
- {aient-1.2.6 → aient-1.2.7}/aient/core/test/test_geminimask.py +0 -0
- {aient-1.2.6 → aient-1.2.7}/aient/core/test/test_image.py +0 -0
- {aient-1.2.6 → aient-1.2.7}/aient/core/test/test_payload.py +0 -0
- {aient-1.2.6 → aient-1.2.7}/aient/core/utils.py +0 -0
- {aient-1.2.6 → aient-1.2.7}/aient/models/__init__.py +0 -0
- {aient-1.2.6 → aient-1.2.7}/aient/models/audio.py +0 -0
- {aient-1.2.6 → aient-1.2.7}/aient/models/base.py +0 -0
- {aient-1.2.6 → aient-1.2.7}/aient/models/chatgpt.py +0 -0
- {aient-1.2.6 → aient-1.2.7}/aient/plugins/__init__.py +0 -0
- {aient-1.2.6 → aient-1.2.7}/aient/plugins/arXiv.py +0 -0
- {aient-1.2.6 → aient-1.2.7}/aient/plugins/config.py +0 -0
- {aient-1.2.6 → aient-1.2.7}/aient/plugins/excute_command.py +0 -0
- {aient-1.2.6 → aient-1.2.7}/aient/plugins/get_time.py +0 -0
- {aient-1.2.6 → aient-1.2.7}/aient/plugins/image.py +0 -0
- {aient-1.2.6 → aient-1.2.7}/aient/plugins/list_directory.py +0 -0
- {aient-1.2.6 → aient-1.2.7}/aient/plugins/read_file.py +0 -0
- {aient-1.2.6 → aient-1.2.7}/aient/plugins/read_image.py +0 -0
- {aient-1.2.6 → aient-1.2.7}/aient/plugins/readonly.py +0 -0
- {aient-1.2.6 → aient-1.2.7}/aient/plugins/registry.py +0 -0
- {aient-1.2.6 → aient-1.2.7}/aient/plugins/run_python.py +0 -0
- {aient-1.2.6 → aient-1.2.7}/aient/plugins/websearch.py +0 -0
- {aient-1.2.6 → aient-1.2.7}/aient/plugins/write_file.py +0 -0
- {aient-1.2.6 → aient-1.2.7}/aient/utils/__init__.py +0 -0
- {aient-1.2.6 → aient-1.2.7}/aient/utils/prompt.py +0 -0
- {aient-1.2.6 → aient-1.2.7}/aient/utils/scripts.py +0 -0
- {aient-1.2.6 → aient-1.2.7}/aient.egg-info/SOURCES.txt +0 -0
- {aient-1.2.6 → aient-1.2.7}/aient.egg-info/dependency_links.txt +0 -0
- {aient-1.2.6 → aient-1.2.7}/aient.egg-info/requires.txt +0 -0
- {aient-1.2.6 → aient-1.2.7}/aient.egg-info/top_level.txt +0 -0
- {aient-1.2.6 → aient-1.2.7}/setup.cfg +0 -0
- {aient-1.2.6 → aient-1.2.7}/test/test_Web_crawler.py +0 -0
- {aient-1.2.6 → aient-1.2.7}/test/test_ddg_search.py +0 -0
- {aient-1.2.6 → aient-1.2.7}/test/test_google_search.py +0 -0
- {aient-1.2.6 → aient-1.2.7}/test/test_ollama.py +0 -0
- {aient-1.2.6 → aient-1.2.7}/test/test_plugin.py +0 -0
- {aient-1.2.6 → aient-1.2.7}/test/test_search.py +0 -0
- {aient-1.2.6 → aient-1.2.7}/test/test_url.py +0 -0
- {aient-1.2.6 → aient-1.2.7}/test/test_whisper.py +0 -0
- {aient-1.2.6 → aient-1.2.7}/test/test_yjh.py +0 -0
@@ -632,6 +632,9 @@ class Messages:
|
|
632
632
|
logging.error(f"Could not deserialize file {file_path}: {e}")
|
633
633
|
return cls()
|
634
634
|
|
635
|
-
def __getitem__(self, index: int) -> Message
|
635
|
+
def __getitem__(self, index: Union[int, slice]) -> Union[Message, 'Messages']:
|
636
|
+
if isinstance(index, slice):
|
637
|
+
return Messages(*self._messages[index])
|
638
|
+
return self._messages[index]
|
636
639
|
def __len__(self) -> int: return len(self._messages)
|
637
640
|
def __iter__(self): return iter(self._messages)
|
@@ -1182,6 +1182,41 @@ Current time: {Texts(lambda: datetime.now().strftime("%Y-%m-%d %H:%M:%S"))}
|
|
1182
1182
|
non_existent_provider = message.provider("non_existent")
|
1183
1183
|
self.assertIsNone(non_existent_provider)
|
1184
1184
|
|
1185
|
+
async def test_zc_slicing_support(self):
|
1186
|
+
"""测试 Messages 对象是否支持切片操作"""
|
1187
|
+
m1 = SystemMessage("1")
|
1188
|
+
m2 = UserMessage("2")
|
1189
|
+
m3 = AssistantMessage("3")
|
1190
|
+
m4 = UserMessage("4")
|
1191
|
+
messages = Messages(m1, m2, m3, m4)
|
1192
|
+
|
1193
|
+
# 1. Test basic slicing
|
1194
|
+
sliced_messages = messages[1:3]
|
1195
|
+
self.assertIsInstance(sliced_messages, Messages)
|
1196
|
+
self.assertEqual(len(sliced_messages), 2)
|
1197
|
+
self.assertIs(sliced_messages[0], m2)
|
1198
|
+
self.assertIs(sliced_messages[1], m3)
|
1199
|
+
|
1200
|
+
# 2. Test slicing with open end
|
1201
|
+
sliced_messages_open = messages[2:]
|
1202
|
+
self.assertIsInstance(sliced_messages_open, Messages)
|
1203
|
+
self.assertEqual(len(sliced_messages_open), 2)
|
1204
|
+
self.assertIs(sliced_messages_open[0], m3)
|
1205
|
+
self.assertIs(sliced_messages_open[1], m4)
|
1206
|
+
|
1207
|
+
# 3. Test slicing with open start
|
1208
|
+
sliced_messages_start = messages[:2]
|
1209
|
+
self.assertIsInstance(sliced_messages_start, Messages)
|
1210
|
+
self.assertEqual(len(sliced_messages_start), 2)
|
1211
|
+
self.assertIs(sliced_messages_start[0], m1)
|
1212
|
+
self.assertIs(sliced_messages_start[1], m2)
|
1213
|
+
|
1214
|
+
# 4. Test slicing a single element
|
1215
|
+
sliced_single = messages[2:3]
|
1216
|
+
self.assertIsInstance(sliced_single, Messages)
|
1217
|
+
self.assertEqual(len(sliced_single), 1)
|
1218
|
+
self.assertIs(sliced_single[0], m3)
|
1219
|
+
|
1185
1220
|
# ==============================================================================
|
1186
1221
|
# 6. 演示
|
1187
1222
|
# ==============================================================================
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|