hjxdl 0.3.17__py3-none-any.whl → 0.3.19__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 +2 -2
- hdl/utils/llm/llm_wrapper.py +59 -1
- {hjxdl-0.3.17.dist-info → hjxdl-0.3.19.dist-info}/METADATA +1 -1
- {hjxdl-0.3.17.dist-info → hjxdl-0.3.19.dist-info}/RECORD +7 -7
- {hjxdl-0.3.17.dist-info → hjxdl-0.3.19.dist-info}/LICENSE +0 -0
- {hjxdl-0.3.17.dist-info → hjxdl-0.3.19.dist-info}/WHEEL +0 -0
- {hjxdl-0.3.17.dist-info → hjxdl-0.3.19.dist-info}/top_level.txt +0 -0
hdl/_version.py
CHANGED
hdl/utils/llm/llm_wrapper.py
CHANGED
@@ -147,8 +147,66 @@ class OpenAIWrapper(object):
|
|
147
147
|
model=model,
|
148
148
|
messages=messages,
|
149
149
|
tools=tools,
|
150
|
-
stream=stream
|
150
|
+
stream=stream,
|
151
|
+
**kwargs
|
151
152
|
)
|
152
153
|
return resp
|
153
154
|
|
155
|
+
def invoke(
|
156
|
+
self,
|
157
|
+
prompt,
|
158
|
+
**kwargs
|
159
|
+
):
|
160
|
+
answer_dict = {}
|
161
|
+
|
162
|
+
resp = self.get_resp(
|
163
|
+
prompt,
|
164
|
+
stream=False,
|
165
|
+
**kwargs
|
166
|
+
)
|
167
|
+
if resp.choices[0].finish_reason == "stop":
|
168
|
+
answer_dict["type"] = "text"
|
169
|
+
answer_dict["contents"] = resp.choices[0].message.content
|
170
|
+
elif resp.choices[0].finish_reason == "tool_calls":
|
171
|
+
answer_dict["type"] = "tool_calls"
|
172
|
+
answer_dict["tool_parmas"] = resp.choices[0].message.tool_calls[0].function
|
173
|
+
|
174
|
+
return answer_dict
|
175
|
+
|
176
|
+
def stream(self, prompt, **kwargs):
|
177
|
+
resp = self.get_resp(prompt=prompt, stream=True, **kwargs)
|
178
|
+
|
179
|
+
for chunk in resp:
|
180
|
+
try:
|
181
|
+
choice = chunk.choices[0]
|
182
|
+
|
183
|
+
# 如果返回了 tool_calls
|
184
|
+
if hasattr(choice.delta, 'tool_calls') and choice.finish_reason == 'tool_calls':
|
185
|
+
tool_calls = choice.delta.tool_calls
|
186
|
+
if tool_calls: # 防止为空
|
187
|
+
yield {
|
188
|
+
"type": "tool_calls",
|
189
|
+
"tool_params": tool_calls[0].function
|
190
|
+
}
|
191
|
+
return # 直接返回,结束流式输出
|
192
|
+
|
193
|
+
# 返回文本内容
|
194
|
+
if hasattr(choice.delta, 'content'):
|
195
|
+
yield {
|
196
|
+
"type": "text",
|
197
|
+
"content": choice.delta.content
|
198
|
+
}
|
199
|
+
|
200
|
+
except (AttributeError, IndexError) as e:
|
201
|
+
# 防止意外的结构异常
|
202
|
+
yield {
|
203
|
+
"type": "error",
|
204
|
+
"message": f"Stream chunk error: {str(e)}"
|
205
|
+
}
|
206
|
+
return
|
207
|
+
|
208
|
+
return
|
209
|
+
|
210
|
+
|
211
|
+
|
154
212
|
|
@@ -1,5 +1,5 @@
|
|
1
1
|
hdl/__init__.py,sha256=GffnD0jLJdhkd-vo989v40N90sQbofkayRBwxc6TVhQ,72
|
2
|
-
hdl/_version.py,sha256=
|
2
|
+
hdl/_version.py,sha256=TShPZTYoCOKWQEXBwv0B-a34cT3XntbYgzYc_AWIjXw,413
|
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
|
@@ -134,15 +134,15 @@ hdl/utils/llm/chatgr.py,sha256=5F5PJHe8vz3iCfi4TT54DCLRi1UeJshECdVtgvvvao0,3696
|
|
134
134
|
hdl/utils/llm/embs.py,sha256=Tf0FOYrOFZp7qQpEPiSCXzlgyHH0X9HVTUtsup74a9E,7174
|
135
135
|
hdl/utils/llm/extract.py,sha256=2sK_WJzmYIc8iuWaM9DA6Nw3_6q1O4lJ5pKpcZo-bBA,6512
|
136
136
|
hdl/utils/llm/llama_chat.py,sha256=watcHGOaz-bv3x-yDucYlGk5f8FiqfFhwWogrl334fk,4387
|
137
|
-
hdl/utils/llm/llm_wrapper.py,sha256=
|
137
|
+
hdl/utils/llm/llm_wrapper.py,sha256=fGe1jDwJKP7X5twjWbOQdaBH62OEm183bEnbWut_kjE,6420
|
138
138
|
hdl/utils/llm/vis.py,sha256=SSP6tOwKLq0hWcpM3twI9TitqzBmKjlcGrnXEWYlCzM,26055
|
139
139
|
hdl/utils/llm/visrag.py,sha256=0i-VrxqgiV-J7R3VPshu9oc7-rKjFJOldYik3HDXj6M,10176
|
140
140
|
hdl/utils/schedulers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
141
141
|
hdl/utils/schedulers/norm_lr.py,sha256=bDwCmdEK-WkgxQMFBiMuchv8Mm7C0-GZJ6usm-PQk14,4461
|
142
142
|
hdl/utils/weather/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
143
143
|
hdl/utils/weather/weather.py,sha256=k11o6wM15kF8b9NMlEfrg68ak-SfSYLN3nOOflFUv-I,4381
|
144
|
-
hjxdl-0.3.
|
145
|
-
hjxdl-0.3.
|
146
|
-
hjxdl-0.3.
|
147
|
-
hjxdl-0.3.
|
148
|
-
hjxdl-0.3.
|
144
|
+
hjxdl-0.3.19.dist-info/LICENSE,sha256=lkMiSbeZHBQLB9LJEkS9-L3Z-LBC4yGnKrzHSG8RkPM,2599
|
145
|
+
hjxdl-0.3.19.dist-info/METADATA,sha256=E0ZcEclBokJou9oSSvR38M8dgnfoII_NPT7nDAACGjQ,1336
|
146
|
+
hjxdl-0.3.19.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
|
147
|
+
hjxdl-0.3.19.dist-info/top_level.txt,sha256=-kxwTM5JPhylp06z3zAVO3w6_h7wtBfBo2zgM6YZoTk,4
|
148
|
+
hjxdl-0.3.19.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|