feat(product-suite): improve multi-image AI writing
This commit is contained in:
@@ -494,6 +494,7 @@ class AITests(TempDirMixin, unittest.TestCase):
|
||||
self.assertEqual(231, result["metadata"]["points_balance"])
|
||||
self.assertNotIn("image_base64", result)
|
||||
self.assertEqual("POST", calls[0][0])
|
||||
self.assertEqual(1, len(calls))
|
||||
self.assertEqual(
|
||||
"https://cmhub.example.com/api/v1/analyze/images",
|
||||
calls[0][1],
|
||||
@@ -504,6 +505,13 @@ class AITests(TempDirMixin, unittest.TestCase):
|
||||
self.assertTrue(payload["images"][0]["image_base64"].startswith("data:image/png;base64,"))
|
||||
self.assertTrue(payload["images"][1]["image_base64"].startswith("data:image/jpeg;base64,"))
|
||||
self.assertEqual({"temperature": 0.2}, payload["parameters"])
|
||||
prompt = payload["prompt"]
|
||||
self.assertIn("同一个商品项目", prompt)
|
||||
self.assertIn("一组证据", prompt)
|
||||
self.assertIn("禁止输出“图1/图2/第N张”", prompt)
|
||||
self.assertIn("商品概述、可确认卖点、适用人群与场景、套图画面要求", prompt)
|
||||
self.assertIn("待确认或避免编造的信息", prompt)
|
||||
self.assertIn("可见差异", prompt)
|
||||
self.assertEqual((3, ai.CMHUB_VISION_READ_TIMEOUT_SECONDS), calls[0][2]["timeout"])
|
||||
|
||||
self.assert_removed(temp_dir)
|
||||
|
||||
@@ -933,7 +933,7 @@ class ProductSuiteGuiTests(TempDirMixin, unittest.TestCase):
|
||||
|
||||
self.assert_removed(temp_dir)
|
||||
|
||||
def test_ai_write_uses_first_eight_originals_in_source_order(self):
|
||||
def test_ai_write_uses_first_eight_originals_in_source_order_regardless_of_checks(self):
|
||||
with self.make_temp_dir() as temp_dir:
|
||||
config = self._config(temp_dir)
|
||||
project, assets = self._create_project_with_assets(temp_dir, config, 9)
|
||||
@@ -945,6 +945,7 @@ class ProductSuiteGuiTests(TempDirMixin, unittest.TestCase):
|
||||
state.project_id = project.id
|
||||
state.project_binding_state = project.binding_state
|
||||
tab._load_state(state)
|
||||
tab.original_list.set_checked_asset_ids([assets[-1].id])
|
||||
captured = {}
|
||||
|
||||
class _Signal:
|
||||
|
||||
Reference in New Issue
Block a user