hjxdl 0.3.52__py3-none-any.whl → 0.3.54__py3-none-any.whl

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.
hdl/_version.py CHANGED
@@ -1,7 +1,14 @@
1
1
  # file generated by setuptools-scm
2
2
  # don't change, don't track in version control
3
3
 
4
- __all__ = ["__version__", "__version_tuple__", "version", "version_tuple"]
4
+ __all__ = [
5
+ "__version__",
6
+ "__version_tuple__",
7
+ "version",
8
+ "version_tuple",
9
+ "__commit_id__",
10
+ "commit_id",
11
+ ]
5
12
 
6
13
  TYPE_CHECKING = False
7
14
  if TYPE_CHECKING:
@@ -9,13 +16,19 @@ if TYPE_CHECKING:
9
16
  from typing import Union
10
17
 
11
18
  VERSION_TUPLE = Tuple[Union[int, str], ...]
19
+ COMMIT_ID = Union[str, None]
12
20
  else:
13
21
  VERSION_TUPLE = object
22
+ COMMIT_ID = object
14
23
 
15
24
  version: str
16
25
  __version__: str
17
26
  __version_tuple__: VERSION_TUPLE
18
27
  version_tuple: VERSION_TUPLE
28
+ commit_id: COMMIT_ID
29
+ __commit_id__: COMMIT_ID
19
30
 
20
- __version__ = version = '0.3.52'
21
- __version_tuple__ = version_tuple = (0, 3, 52)
31
+ __version__ = version = '0.3.54'
32
+ __version_tuple__ = version_tuple = (0, 3, 54)
33
+
34
+ __commit_id__ = commit_id = 'gd7cc5b09f'
hdl/utils/llm/chat.py CHANGED
@@ -302,6 +302,71 @@ class OpenAI_M:
302
302
  continue
303
303
 
304
304
  def get_resp(
305
+ self,
306
+ prompt: str,
307
+ client_id: str = None,
308
+ sys_info: str = None,
309
+ assis_info: str = None,
310
+ images: list = None,
311
+ image_keys: tuple = ("image_url", "url"),
312
+ stop: list[str] | None = ["USER:", "ASSISTANT:"],
313
+ model: str = None,
314
+ stream: bool = True,
315
+ **kwargs: t.Any,
316
+ ):
317
+ """Prepare and send a request to the model, and return the model's response."""
318
+ if not model:
319
+ model = self.client_conf[client_id]["model"]
320
+
321
+ # === 1️⃣ 准备输入 ===
322
+ content = [{"type": "text", "text": prompt}]
323
+ if isinstance(image_keys, str):
324
+ image_keys = (image_keys,) * 3
325
+ elif len(image_keys) == 2:
326
+ image_keys = (image_keys[0],) + tuple(image_keys)
327
+ elif len(image_keys) == 1:
328
+ image_keys = (image_keys[0],) * 3
329
+
330
+ if images:
331
+ if isinstance(images, str):
332
+ images = [images]
333
+ for img in images:
334
+ content.append({
335
+ "type": image_keys[0],
336
+ image_keys[1]: {image_keys[2]: img}
337
+ })
338
+ else:
339
+ content = prompt
340
+
341
+ # === 2️⃣ 构造 messages(兼容旧逻辑) ===
342
+ messages = []
343
+ if sys_info:
344
+ messages.append({"role": "system", "content": sys_info})
345
+ messages.append({"role": "user", "content": content})
346
+ if assis_info:
347
+ messages.append({"role": "assistant", "content": assis_info})
348
+
349
+ # === 3️⃣ 改成 responses.create ===
350
+ client = self.client_conf[client_id]["client"]
351
+
352
+ if stream:
353
+ response = client.responses.create(
354
+ model=model,
355
+ input=messages, # 注意:新版 responses 接口直接用 "input"
356
+ stream=True,
357
+ **kwargs
358
+ )
359
+ else:
360
+ response = client.responses.create(
361
+ model=model,
362
+ input=messages,
363
+ stream=False,
364
+ **kwargs
365
+ )
366
+
367
+ return response
368
+
369
+ def get_resp_legacy(
305
370
  self,
306
371
  prompt: str,
307
372
  client_id: str = None,
hdl/utils/llm/vis.py CHANGED
@@ -75,6 +75,7 @@ def to_base64(img):
75
75
  Returns:
76
76
  str: The image encoded as a base64 string.
77
77
  """
78
+ img_base64=""
78
79
 
79
80
  if isinstance(img, Image.Image):
80
81
  img_base64 = pilimg_to_base64(img)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: hjxdl
3
- Version: 0.3.52
3
+ Version: 0.3.54
4
4
  Summary: A collection of functions for Jupyter notebooks
5
5
  Home-page: https://github.com/huluxiaohuowa/hdl
6
6
  Author: Jianxing Hu
@@ -1,5 +1,5 @@
1
1
  hdl/__init__.py,sha256=GffnD0jLJdhkd-vo989v40N90sQbofkayRBwxc6TVhQ,72
2
- hdl/_version.py,sha256=TTEAfA1bdwKuHjROoE4SBtzNIV89YnQetQ_w7z1XVrU,513
2
+ hdl/_version.py,sha256=_Y5lo8qH4jdRcyRYZCDKbaSN12zS_WhJUDg_HwZG0HU,714
3
3
  hdl/args/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
4
4
  hdl/args/loss_args.py,sha256=s7YzSdd7IjD24rZvvOrxLLFqMZQb9YylxKeyelSdrTk,70
5
5
  hdl/controllers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -131,14 +131,14 @@ hdl/utils/general/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU
131
131
  hdl/utils/general/glob.py,sha256=Zuf7WHU0UdUPOs9UrhxmrCiMC8GrHxQU6n3mTThv6yc,1120
132
132
  hdl/utils/general/runners.py,sha256=R0lhqABIuT43jEyjFkeio84e_PFfvAkszOP1FBlAnQ8,4927
133
133
  hdl/utils/llm/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
134
- hdl/utils/llm/chat.py,sha256=q0zQmf-6DeSYOrC2qDn_QFOlILjRHU69eVRUn0eIIbA,26526
134
+ hdl/utils/llm/chat.py,sha256=DUxvnYTPIEhhrdaXOapmSG_-o_gWe_PWla2cJ3MLHeE,28658
135
135
  hdl/utils/llm/chatgr.py,sha256=5F5PJHe8vz3iCfi4TT54DCLRi1UeJshECdVtgvvvao0,3696
136
136
  hdl/utils/llm/embs.py,sha256=Tf0FOYrOFZp7qQpEPiSCXzlgyHH0X9HVTUtsup74a9E,7174
137
137
  hdl/utils/llm/extract.py,sha256=2sK_WJzmYIc8iuWaM9DA6Nw3_6q1O4lJ5pKpcZo-bBA,6512
138
138
  hdl/utils/llm/llama_chat.py,sha256=watcHGOaz-bv3x-yDucYlGk5f8FiqfFhwWogrl334fk,4387
139
139
  hdl/utils/llm/llm_wrapper.py,sha256=90kuCEYMUAjJtjRSzwHTcQsprxaVHx8kyrtzl_aw1iY,15931
140
140
  hdl/utils/llm/ollama.py,sha256=uEdLsNAc6b56r37hNiE3nrd6oZ2lmQ0gYbVvOc9YVIM,1389
141
- hdl/utils/llm/vis.py,sha256=KuypafAuU4MEzJ5ywvopI0RcYjnyF_WKM_0oDUKbr8A,28808
141
+ hdl/utils/llm/vis.py,sha256=jRa5l1LHaWtohtdIKVpOH_I4yyXWTbyaLGglFHsV_0Q,28826
142
142
  hdl/utils/llm/visrag.py,sha256=0i-VrxqgiV-J7R3VPshu9oc7-rKjFJOldYik3HDXj6M,10176
143
143
  hdl/utils/schedulers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
144
144
  hdl/utils/schedulers/norm_lr.py,sha256=bDwCmdEK-WkgxQMFBiMuchv8Mm7C0-GZJ6usm-PQk14,4461
@@ -146,8 +146,8 @@ hdl/utils/vis_tools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSu
146
146
  hdl/utils/vis_tools/scene_detect.py,sha256=L6TFMT15QHJuOIFcLFVI_RSSSjyTVZhBEqbeUez2auU,6608
147
147
  hdl/utils/weather/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
148
148
  hdl/utils/weather/weather.py,sha256=k11o6wM15kF8b9NMlEfrg68ak-SfSYLN3nOOflFUv-I,4381
149
- hjxdl-0.3.52.dist-info/licenses/LICENSE,sha256=lkMiSbeZHBQLB9LJEkS9-L3Z-LBC4yGnKrzHSG8RkPM,2599
150
- hjxdl-0.3.52.dist-info/METADATA,sha256=gx_FF4lACt8rHaXkm_TplQpK_xf9rbZugqEEOZSsM0Q,1332
151
- hjxdl-0.3.52.dist-info/WHEEL,sha256=Nw36Djuh_5VDukK0H78QzOX-_FQEo6V37m3nkm96gtU,91
152
- hjxdl-0.3.52.dist-info/top_level.txt,sha256=-kxwTM5JPhylp06z3zAVO3w6_h7wtBfBo2zgM6YZoTk,4
153
- hjxdl-0.3.52.dist-info/RECORD,,
149
+ hjxdl-0.3.54.dist-info/licenses/LICENSE,sha256=lkMiSbeZHBQLB9LJEkS9-L3Z-LBC4yGnKrzHSG8RkPM,2599
150
+ hjxdl-0.3.54.dist-info/METADATA,sha256=cyCXEGZj5dolhng5yUMe5XN54Ja_N00RLijtq12XELU,1332
151
+ hjxdl-0.3.54.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
152
+ hjxdl-0.3.54.dist-info/top_level.txt,sha256=-kxwTM5JPhylp06z3zAVO3w6_h7wtBfBo2zgM6YZoTk,4
153
+ hjxdl-0.3.54.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (80.7.1)
2
+ Generator: setuptools (80.9.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5