projectdavid 1.34.11__tar.gz → 1.34.13__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.

Potentially problematic release.


This version of projectdavid might be problematic. Click here for more details.

Files changed (72) hide show
  1. {projectdavid-1.34.11 → projectdavid-1.34.13}/CHANGELOG.md +16 -0
  2. {projectdavid-1.34.11/src/projectdavid.egg-info → projectdavid-1.34.13}/PKG-INFO +2 -2
  3. {projectdavid-1.34.11 → projectdavid-1.34.13}/pyproject.toml +2 -3
  4. {projectdavid-1.34.11 → projectdavid-1.34.13}/src/projectdavid/clients/runs.py +27 -17
  5. {projectdavid-1.34.11 → projectdavid-1.34.13/src/projectdavid.egg-info}/PKG-INFO +2 -2
  6. {projectdavid-1.34.11 → projectdavid-1.34.13}/src/projectdavid.egg-info/requires.txt +1 -1
  7. {projectdavid-1.34.11 → projectdavid-1.34.13}/LICENSE +0 -0
  8. {projectdavid-1.34.11 → projectdavid-1.34.13}/MANIFEST.in +0 -0
  9. {projectdavid-1.34.11 → projectdavid-1.34.13}/README.md +0 -0
  10. {projectdavid-1.34.11 → projectdavid-1.34.13}/docs/UPDATE-V133.23.md +0 -0
  11. {projectdavid-1.34.11 → projectdavid-1.34.13}/docs/assistants.md +0 -0
  12. {projectdavid-1.34.11 → projectdavid-1.34.13}/docs/code_interpretation.md +0 -0
  13. {projectdavid-1.34.11 → projectdavid-1.34.13}/docs/database.md +0 -0
  14. {projectdavid-1.34.11 → projectdavid-1.34.13}/docs/database_assistant_example.md +0 -0
  15. {projectdavid-1.34.11 → projectdavid-1.34.13}/docs/docker_comtainers.md +0 -0
  16. {projectdavid-1.34.11 → projectdavid-1.34.13}/docs/file_search.md +0 -0
  17. {projectdavid-1.34.11 → projectdavid-1.34.13}/docs/files.md +0 -0
  18. {projectdavid-1.34.11 → projectdavid-1.34.13}/docs/function_call_definition.md +0 -0
  19. {projectdavid-1.34.11 → projectdavid-1.34.13}/docs/function_calls.md +0 -0
  20. {projectdavid-1.34.11 → projectdavid-1.34.13}/docs/handling_function_calls.md +0 -0
  21. {projectdavid-1.34.11 → projectdavid-1.34.13}/docs/inference.md +0 -0
  22. {projectdavid-1.34.11 → projectdavid-1.34.13}/docs/messages.md +0 -0
  23. {projectdavid-1.34.11 → projectdavid-1.34.13}/docs/runs.md +0 -0
  24. {projectdavid-1.34.11 → projectdavid-1.34.13}/docs/streams.md +0 -0
  25. {projectdavid-1.34.11 → projectdavid-1.34.13}/docs/threads.md +0 -0
  26. {projectdavid-1.34.11 → projectdavid-1.34.13}/docs/tools.md +0 -0
  27. {projectdavid-1.34.11 → projectdavid-1.34.13}/docs/users.md +0 -0
  28. {projectdavid-1.34.11 → projectdavid-1.34.13}/docs/vector_store.md +0 -0
  29. {projectdavid-1.34.11 → projectdavid-1.34.13}/docs/versioning.md +0 -0
  30. {projectdavid-1.34.11 → projectdavid-1.34.13}/setup.cfg +0 -0
  31. {projectdavid-1.34.11 → projectdavid-1.34.13}/src/projectdavid/__init__.py +0 -0
  32. {projectdavid-1.34.11 → projectdavid-1.34.13}/src/projectdavid/_version.py +0 -0
  33. {projectdavid-1.34.11 → projectdavid-1.34.13}/src/projectdavid/clients/actions_client.py +0 -0
  34. {projectdavid-1.34.11 → projectdavid-1.34.13}/src/projectdavid/clients/api_key_client.py +0 -0
  35. {projectdavid-1.34.11 → projectdavid-1.34.13}/src/projectdavid/clients/assistants_client.py +0 -0
  36. {projectdavid-1.34.11 → projectdavid-1.34.13}/src/projectdavid/clients/base_client.py +0 -0
  37. {projectdavid-1.34.11 → projectdavid-1.34.13}/src/projectdavid/clients/base_vector_store.py +0 -0
  38. {projectdavid-1.34.11 → projectdavid-1.34.13}/src/projectdavid/clients/event_handler.py +0 -0
  39. {projectdavid-1.34.11 → projectdavid-1.34.13}/src/projectdavid/clients/file_processor.py +0 -0
  40. {projectdavid-1.34.11 → projectdavid-1.34.13}/src/projectdavid/clients/file_search.py +0 -0
  41. {projectdavid-1.34.11 → projectdavid-1.34.13}/src/projectdavid/clients/files_client.py +0 -0
  42. {projectdavid-1.34.11 → projectdavid-1.34.13}/src/projectdavid/clients/inference_client.py +0 -0
  43. {projectdavid-1.34.11 → projectdavid-1.34.13}/src/projectdavid/clients/messages_client.py +0 -0
  44. {projectdavid-1.34.11 → projectdavid-1.34.13}/src/projectdavid/clients/synchronous_inference_wrapper.py +0 -0
  45. {projectdavid-1.34.11 → projectdavid-1.34.13}/src/projectdavid/clients/threads_client.py +0 -0
  46. {projectdavid-1.34.11 → projectdavid-1.34.13}/src/projectdavid/clients/tools_client.py +0 -0
  47. {projectdavid-1.34.11 → projectdavid-1.34.13}/src/projectdavid/clients/users_client.py +0 -0
  48. {projectdavid-1.34.11 → projectdavid-1.34.13}/src/projectdavid/clients/vector_store_manager.py +0 -0
  49. {projectdavid-1.34.11 → projectdavid-1.34.13}/src/projectdavid/clients/vectors.py +0 -0
  50. {projectdavid-1.34.11 → projectdavid-1.34.13}/src/projectdavid/clients/vision-file_processor.py +0 -0
  51. {projectdavid-1.34.11 → projectdavid-1.34.13}/src/projectdavid/clients/vision_vectors.py +0 -0
  52. {projectdavid-1.34.11 → projectdavid-1.34.13}/src/projectdavid/constants/platform.py +0 -0
  53. {projectdavid-1.34.11 → projectdavid-1.34.13}/src/projectdavid/decorators.py +0 -0
  54. {projectdavid-1.34.11 → projectdavid-1.34.13}/src/projectdavid/entity.py +0 -0
  55. {projectdavid-1.34.11 → projectdavid-1.34.13}/src/projectdavid/events.py +0 -0
  56. {projectdavid-1.34.11 → projectdavid-1.34.13}/src/projectdavid/serializers.py +0 -0
  57. {projectdavid-1.34.11 → projectdavid-1.34.13}/src/projectdavid/services/logging_service.py +0 -0
  58. {projectdavid-1.34.11 → projectdavid-1.34.13}/src/projectdavid/synthesis/__init__.py +0 -0
  59. {projectdavid-1.34.11 → projectdavid-1.34.13}/src/projectdavid/synthesis/llm_synthesizer.py +0 -0
  60. {projectdavid-1.34.11 → projectdavid-1.34.13}/src/projectdavid/synthesis/prompt.py +0 -0
  61. {projectdavid-1.34.11 → projectdavid-1.34.13}/src/projectdavid/synthesis/reranker.py +0 -0
  62. {projectdavid-1.34.11 → projectdavid-1.34.13}/src/projectdavid/synthesis/retriever.py +0 -0
  63. {projectdavid-1.34.11 → projectdavid-1.34.13}/src/projectdavid/utils/__init__.py +0 -0
  64. {projectdavid-1.34.11 → projectdavid-1.34.13}/src/projectdavid/utils/function_call_suppressor.py +0 -0
  65. {projectdavid-1.34.11 → projectdavid-1.34.13}/src/projectdavid/utils/monitor_launcher.py +0 -0
  66. {projectdavid-1.34.11 → projectdavid-1.34.13}/src/projectdavid/utils/peek_gate.py +0 -0
  67. {projectdavid-1.34.11 → projectdavid-1.34.13}/src/projectdavid/utils/run_monitor.py +0 -0
  68. {projectdavid-1.34.11 → projectdavid-1.34.13}/src/projectdavid/utils/vector_search_formatter.py +0 -0
  69. {projectdavid-1.34.11 → projectdavid-1.34.13}/src/projectdavid.egg-info/SOURCES.txt +0 -0
  70. {projectdavid-1.34.11 → projectdavid-1.34.13}/src/projectdavid.egg-info/dependency_links.txt +0 -0
  71. {projectdavid-1.34.11 → projectdavid-1.34.13}/src/projectdavid.egg-info/top_level.txt +0 -0
  72. {projectdavid-1.34.11 → projectdavid-1.34.13}/tests/test_clients.py +0 -0
@@ -1,3 +1,19 @@
1
+ ## [1.34.13](https://github.com/frankie336/projectdavid/compare/v1.34.12...v1.34.13) (2025-09-30)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * correct projectdavid_common==0.17.19 ([1a72e36](https://github.com/frankie336/projectdavid/commit/1a72e368ab0228f26c3dae08be0cc9a0b4edfcbe))
7
+
8
+ ## [1.34.12](https://github.com/frankie336/projectdavid/compare/v1.34.11...v1.34.12) (2025-09-30)
9
+
10
+
11
+ ### Bug Fixes
12
+
13
+ * correct projectdavid_common==0.17.19 ([d636c31](https://github.com/frankie336/projectdavid/commit/d636c31066e33bce0332df2538093040ae36f40f))
14
+ * set truncation strategy to auto ([3d00a38](https://github.com/frankie336/projectdavid/commit/3d00a383eb688a51f9d8bbfc66b0a47e52e86b2a))
15
+ * set truncation strategy to auto ([357ec09](https://github.com/frankie336/projectdavid/commit/357ec09bc34ca36d837cae4e279e740074d9756d))
16
+
1
17
  ## [1.34.11](https://github.com/frankie336/projectdavid/compare/v1.34.10...v1.34.11) (2025-08-25)
2
18
 
3
19
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: projectdavid
3
- Version: 1.34.11
3
+ Version: 1.34.13
4
4
  Summary: Python SDK for interacting with the Entities Assistant API.
5
5
  Author-email: Francis Neequaye Armah <francis.neequaye@projectdavid.co.uk>
6
6
  License: PolyForm Noncommercial License 1.0.0
@@ -20,7 +20,7 @@ Requires-Dist: pydantic<3.0,>=2.0
20
20
  Requires-Dist: python-dotenv<2.0,>=1.0.1
21
21
  Requires-Dist: aiofiles<25.0,>=23.2.1
22
22
  Requires-Dist: ollama<0.5.0,>=0.4.4
23
- Requires-Dist: projectdavid_common==0.17.17
23
+ Requires-Dist: projectdavid_common==0.17.19
24
24
  Requires-Dist: qdrant-client<2.0.0,>=1.0.0
25
25
  Requires-Dist: pdfplumber<0.12.0,>=0.11.0
26
26
  Requires-Dist: validators<0.35.0,>=0.29.0
@@ -1,11 +1,10 @@
1
- #!
2
1
  [build-system]
3
2
  requires = ["setuptools>=61.0", "wheel"]
4
3
  build-backend = "setuptools.build_meta"
5
4
 
6
5
  [project]
7
6
  name = "projectdavid"
8
- version = "1.34.11"
7
+ version = "1.34.13"
9
8
  description = "Python SDK for interacting with the Entities Assistant API."
10
9
  readme = "README.md"
11
10
  authors = [
@@ -21,7 +20,7 @@ dependencies = [
21
20
  "python-dotenv>=1.0.1,<2.0",
22
21
  "aiofiles>=23.2.1,<25.0",
23
22
  "ollama>=0.4.4,<0.5.0",
24
- "projectdavid_common==0.17.17",
23
+ "projectdavid_common==0.17.19",
25
24
  "qdrant-client>=1.0.0,<2.0.0",
26
25
  "pdfplumber>=0.11.0,<0.12.0",
27
26
  "validators>=0.29.0,<0.35.0",
@@ -7,7 +7,7 @@ from typing import Any, Callable, Dict, List, Optional, Tuple
7
7
  import httpx
8
8
  import requests
9
9
  from projectdavid_common import UtilsInterface, ValidationInterface
10
- from projectdavid_common.validation import StatusEnum
10
+ from projectdavid_common.validation import StatusEnum, TruncationStrategy
11
11
  from pydantic import ValidationError
12
12
  from sseclient import SSEClient
13
13
 
@@ -43,58 +43,68 @@ class RunsClient(BaseAPIClient):
43
43
  thread_id: str,
44
44
  instructions: str = "",
45
45
  meta_data: Optional[Dict[str, Any]] = None,
46
+ *,
47
+ # new optional knobs; keep backwards compatible
48
+ model: Optional[str] = None,
49
+ response_format: str = "text",
50
+ tool_choice: Optional[str] = None, # allow None in signature, fix below
51
+ temperature: float = 1.0,
52
+ top_p: float = 1.0,
46
53
  ) -> ent_validator.Run:
47
54
  """
48
55
  Create a run. The server injects user_id from the API key.
49
56
  We normalize all timestamp fields to epoch ints (or None).
50
57
  """
51
- # Build the Pydantic payload with epoch-normalized timestamps
58
+ # ── Coerce client-friendly Nones into schema-acceptable values ─────────
59
+ meta_data = meta_data or {} # schema expects Dict
60
+ tool_choice = tool_choice or "none" # schema expects str
61
+ model = model or "gpt-4" # defer to schema default or override at callsite
62
+
63
+ now = int(time.time())
64
+
52
65
  run_payload = ent_validator.RunCreate(
53
66
  id=UtilsInterface.IdentifierService.generate_run_id(),
54
- user_id=None,
67
+ user_id=None, # server fills this
55
68
  assistant_id=assistant_id,
56
69
  thread_id=thread_id,
57
70
  instructions=instructions,
58
71
  meta_data=meta_data,
59
72
  cancelled_at=None,
60
73
  completed_at=None,
61
- created_at=int(time.time()),
62
- expires_at=int(time.time() + 3600),
74
+ created_at=now,
75
+ expires_at=now + 3600,
63
76
  failed_at=None,
64
77
  incomplete_details=None,
65
78
  last_error=None,
66
79
  max_completion_tokens=1000,
67
80
  max_prompt_tokens=500,
68
- model="llama3.1",
81
+ model=model, # ← no more hard-coded llama3.1
69
82
  object="run",
70
83
  parallel_tool_calls=False,
71
84
  required_action=None,
72
- response_format="text",
85
+ response_format=response_format,
73
86
  started_at=None,
74
- status=StatusEnum.queued,
75
- tool_choice=None,
87
+ status=ent_validator.RunStatus.pending,
88
+ # use schema enum; queued is also valid if you prefer
89
+ tool_choice=tool_choice,
76
90
  tools=[],
77
- truncation_strategy={},
91
+ truncation_strategy=ent_validator.TruncationStrategy.auto,
78
92
  usage=None,
79
- temperature=1,
80
- top_p=1,
93
+ temperature=temperature,
94
+ top_p=top_p,
81
95
  tool_resources={},
82
96
  )
83
97
 
84
98
  logging_utility.info(
85
- "Creating run for assistant_id=%s, thread_id=%s",
86
- assistant_id,
87
- thread_id,
99
+ "Creating run for assistant_id=%s, thread_id=%s", assistant_id, thread_id
88
100
  )
89
101
  logging_utility.debug("Run payload: %s", run_payload.model_dump())
90
102
 
91
103
  try:
92
- # Exclude None so we don't send unset fields
93
104
  resp = self.client.post(
94
105
  "/v1/runs", json=run_payload.model_dump(exclude_none=True)
95
106
  )
96
107
  resp.raise_for_status()
97
-
98
108
  run_out = ent_validator.Run(**resp.json())
99
109
  logging_utility.info("Run created successfully: %s", run_out.id)
100
110
  return run_out
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: projectdavid
3
- Version: 1.34.11
3
+ Version: 1.34.13
4
4
  Summary: Python SDK for interacting with the Entities Assistant API.
5
5
  Author-email: Francis Neequaye Armah <francis.neequaye@projectdavid.co.uk>
6
6
  License: PolyForm Noncommercial License 1.0.0
@@ -20,7 +20,7 @@ Requires-Dist: pydantic<3.0,>=2.0
20
20
  Requires-Dist: python-dotenv<2.0,>=1.0.1
21
21
  Requires-Dist: aiofiles<25.0,>=23.2.1
22
22
  Requires-Dist: ollama<0.5.0,>=0.4.4
23
- Requires-Dist: projectdavid_common==0.17.17
23
+ Requires-Dist: projectdavid_common==0.17.19
24
24
  Requires-Dist: qdrant-client<2.0.0,>=1.0.0
25
25
  Requires-Dist: pdfplumber<0.12.0,>=0.11.0
26
26
  Requires-Dist: validators<0.35.0,>=0.29.0
@@ -3,7 +3,7 @@ pydantic<3.0,>=2.0
3
3
  python-dotenv<2.0,>=1.0.1
4
4
  aiofiles<25.0,>=23.2.1
5
5
  ollama<0.5.0,>=0.4.4
6
- projectdavid_common==0.17.17
6
+ projectdavid_common==0.17.19
7
7
  qdrant-client<2.0.0,>=1.0.0
8
8
  pdfplumber<0.12.0,>=0.11.0
9
9
  validators<0.35.0,>=0.29.0
File without changes
File without changes
File without changes