vectorvein 0.1.87__tar.gz → 0.1.88__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.
Files changed (56) hide show
  1. {vectorvein-0.1.87 → vectorvein-0.1.88}/PKG-INFO +1 -1
  2. {vectorvein-0.1.87 → vectorvein-0.1.88}/pyproject.toml +1 -1
  3. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/chat_clients/openai_compatible_client.py +12 -12
  4. {vectorvein-0.1.87 → vectorvein-0.1.88}/README.md +0 -0
  5. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/__init__.py +0 -0
  6. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/chat_clients/__init__.py +0 -0
  7. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/chat_clients/anthropic_client.py +0 -0
  8. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/chat_clients/baichuan_client.py +0 -0
  9. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/chat_clients/base_client.py +0 -0
  10. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/chat_clients/deepseek_client.py +0 -0
  11. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/chat_clients/gemini_client.py +0 -0
  12. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/chat_clients/groq_client.py +0 -0
  13. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/chat_clients/local_client.py +0 -0
  14. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/chat_clients/minimax_client.py +0 -0
  15. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/chat_clients/mistral_client.py +0 -0
  16. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/chat_clients/moonshot_client.py +0 -0
  17. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/chat_clients/openai_client.py +0 -0
  18. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/chat_clients/py.typed +0 -0
  19. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/chat_clients/qwen_client.py +0 -0
  20. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/chat_clients/stepfun_client.py +0 -0
  21. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/chat_clients/utils.py +0 -0
  22. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/chat_clients/xai_client.py +0 -0
  23. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/chat_clients/yi_client.py +0 -0
  24. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/chat_clients/zhipuai_client.py +0 -0
  25. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/py.typed +0 -0
  26. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/server/token_server.py +0 -0
  27. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/settings/__init__.py +0 -0
  28. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/settings/py.typed +0 -0
  29. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/types/defaults.py +0 -0
  30. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/types/enums.py +0 -0
  31. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/types/exception.py +0 -0
  32. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/types/llm_parameters.py +0 -0
  33. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/types/py.typed +0 -0
  34. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/utilities/media_processing.py +0 -0
  35. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/utilities/retry.py +0 -0
  36. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/workflow/graph/edge.py +0 -0
  37. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/workflow/graph/node.py +0 -0
  38. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/workflow/graph/port.py +0 -0
  39. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/workflow/graph/workflow.py +0 -0
  40. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/workflow/nodes/__init__.py +0 -0
  41. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/workflow/nodes/audio_generation.py +0 -0
  42. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/workflow/nodes/control_flows.py +0 -0
  43. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/workflow/nodes/file_processing.py +0 -0
  44. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/workflow/nodes/image_generation.py +0 -0
  45. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/workflow/nodes/llms.py +0 -0
  46. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/workflow/nodes/media_editing.py +0 -0
  47. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/workflow/nodes/media_processing.py +0 -0
  48. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/workflow/nodes/output.py +0 -0
  49. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/workflow/nodes/relational_db.py +0 -0
  50. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/workflow/nodes/text_processing.py +0 -0
  51. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/workflow/nodes/tools.py +0 -0
  52. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/workflow/nodes/triggers.py +0 -0
  53. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/workflow/nodes/vector_db.py +0 -0
  54. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/workflow/nodes/video_generation.py +0 -0
  55. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/workflow/nodes/web_crawlers.py +0 -0
  56. {vectorvein-0.1.87 → vectorvein-0.1.88}/src/vectorvein/workflow/utils/json_to_code.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: vectorvein
3
- Version: 0.1.87
3
+ Version: 0.1.88
4
4
  Summary: VectorVein python SDK
5
5
  Author-Email: Anderson <andersonby@163.com>
6
6
  License: MIT
@@ -17,7 +17,7 @@ description = "VectorVein python SDK"
17
17
  name = "vectorvein"
18
18
  readme = "README.md"
19
19
  requires-python = ">=3.10"
20
- version = "0.1.87"
20
+ version = "0.1.88"
21
21
 
22
22
  [project.license]
23
23
  text = "MIT"
@@ -282,9 +282,9 @@ class OpenAICompatibleChatClient(BaseChatClient):
282
282
  buffer = ""
283
283
  break
284
284
 
285
- message["content"] = "".join(current_content).strip()
285
+ message["content"] = "".join(current_content)
286
286
  if current_reasoning:
287
- message["reasoning_content"] = "".join(current_reasoning).strip()
287
+ message["reasoning_content"] = "".join(current_reasoning)
288
288
  current_content.clear()
289
289
  current_reasoning.clear()
290
290
 
@@ -307,8 +307,8 @@ class OpenAICompatibleChatClient(BaseChatClient):
307
307
  else:
308
308
  current_content.append(buffer)
309
309
  final_message = {
310
- "content": "".join(current_content).strip(),
311
- "reasoning_content": "".join(current_reasoning).strip() if current_reasoning else None,
310
+ "content": "".join(current_content),
311
+ "reasoning_content": "".join(current_reasoning) if current_reasoning else None,
312
312
  }
313
313
  yield ChatCompletionDeltaMessage(**final_message, usage=usage)
314
314
 
@@ -338,8 +338,8 @@ class OpenAICompatibleChatClient(BaseChatClient):
338
338
  if not result["reasoning_content"] and result["content"]:
339
339
  think_match = re.search(r"<think>(.*?)</think>", result["content"], re.DOTALL)
340
340
  if think_match:
341
- result["reasoning_content"] = think_match.group(1).strip()
342
- result["content"] = result["content"].replace(think_match.group(0), "", 1).strip()
341
+ result["reasoning_content"] = think_match.group(1)
342
+ result["content"] = result["content"].replace(think_match.group(0), "", 1)
343
343
 
344
344
  if tools:
345
345
  if self.model_setting.function_call_available and response.choices[0].message.tool_calls:
@@ -608,9 +608,9 @@ class AsyncOpenAICompatibleChatClient(BaseAsyncChatClient):
608
608
  buffer = ""
609
609
  break
610
610
 
611
- message["content"] = "".join(current_content).strip()
611
+ message["content"] = "".join(current_content)
612
612
  if current_reasoning:
613
- message["reasoning_content"] = "".join(current_reasoning).strip()
613
+ message["reasoning_content"] = "".join(current_reasoning)
614
614
  current_content.clear()
615
615
  current_reasoning.clear()
616
616
 
@@ -633,8 +633,8 @@ class AsyncOpenAICompatibleChatClient(BaseAsyncChatClient):
633
633
  else:
634
634
  current_content.append(buffer)
635
635
  final_message = {
636
- "content": "".join(current_content).strip(),
637
- "reasoning_content": "".join(current_reasoning).strip() if current_reasoning else None,
636
+ "content": "".join(current_content),
637
+ "reasoning_content": "".join(current_reasoning) if current_reasoning else None,
638
638
  }
639
639
  yield ChatCompletionDeltaMessage(**final_message, usage=usage)
640
640
 
@@ -663,8 +663,8 @@ class AsyncOpenAICompatibleChatClient(BaseAsyncChatClient):
663
663
  if not result["reasoning_content"] and result["content"]:
664
664
  think_match = re.search(r"<think>(.*?)</think>", result["content"], re.DOTALL)
665
665
  if think_match:
666
- result["reasoning_content"] = think_match.group(1).strip()
667
- result["content"] = result["content"].replace(think_match.group(0), "", 1).strip()
666
+ result["reasoning_content"] = think_match.group(1)
667
+ result["content"] = result["content"].replace(think_match.group(0), "", 1)
668
668
 
669
669
  if tools:
670
670
  if self.model_setting.function_call_available and response.choices[0].message.tool_calls:
File without changes