projectdavid 1.33.30__tar.gz → 1.33.32__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.33.30 → projectdavid-1.33.32}/CHANGELOG.md +16 -0
  2. {projectdavid-1.33.30/src/projectdavid.egg-info → projectdavid-1.33.32}/PKG-INFO +2 -2
  3. {projectdavid-1.33.30 → projectdavid-1.33.32}/pyproject.toml +2 -2
  4. {projectdavid-1.33.30 → projectdavid-1.33.32}/src/projectdavid/clients/messages_client.py +18 -20
  5. {projectdavid-1.33.30 → projectdavid-1.33.32}/src/projectdavid/clients/threads_client.py +18 -4
  6. {projectdavid-1.33.30 → projectdavid-1.33.32/src/projectdavid.egg-info}/PKG-INFO +2 -2
  7. {projectdavid-1.33.30 → projectdavid-1.33.32}/src/projectdavid.egg-info/requires.txt +1 -1
  8. {projectdavid-1.33.30 → projectdavid-1.33.32}/LICENSE +0 -0
  9. {projectdavid-1.33.30 → projectdavid-1.33.32}/MANIFEST.in +0 -0
  10. {projectdavid-1.33.30 → projectdavid-1.33.32}/README.md +0 -0
  11. {projectdavid-1.33.30 → projectdavid-1.33.32}/docs/UPDATE-V133.23.md +0 -0
  12. {projectdavid-1.33.30 → projectdavid-1.33.32}/docs/assistants.md +0 -0
  13. {projectdavid-1.33.30 → projectdavid-1.33.32}/docs/code_interpretation.md +0 -0
  14. {projectdavid-1.33.30 → projectdavid-1.33.32}/docs/database.md +0 -0
  15. {projectdavid-1.33.30 → projectdavid-1.33.32}/docs/database_assistant_example.md +0 -0
  16. {projectdavid-1.33.30 → projectdavid-1.33.32}/docs/docker_comtainers.md +0 -0
  17. {projectdavid-1.33.30 → projectdavid-1.33.32}/docs/file_search.md +0 -0
  18. {projectdavid-1.33.30 → projectdavid-1.33.32}/docs/files.md +0 -0
  19. {projectdavid-1.33.30 → projectdavid-1.33.32}/docs/function_call_definition.md +0 -0
  20. {projectdavid-1.33.30 → projectdavid-1.33.32}/docs/function_calls.md +0 -0
  21. {projectdavid-1.33.30 → projectdavid-1.33.32}/docs/handling_function_calls.md +0 -0
  22. {projectdavid-1.33.30 → projectdavid-1.33.32}/docs/inference.md +0 -0
  23. {projectdavid-1.33.30 → projectdavid-1.33.32}/docs/messages.md +0 -0
  24. {projectdavid-1.33.30 → projectdavid-1.33.32}/docs/runs.md +0 -0
  25. {projectdavid-1.33.30 → projectdavid-1.33.32}/docs/streams.md +0 -0
  26. {projectdavid-1.33.30 → projectdavid-1.33.32}/docs/threads.md +0 -0
  27. {projectdavid-1.33.30 → projectdavid-1.33.32}/docs/tools.md +0 -0
  28. {projectdavid-1.33.30 → projectdavid-1.33.32}/docs/users.md +0 -0
  29. {projectdavid-1.33.30 → projectdavid-1.33.32}/docs/vector_store.md +0 -0
  30. {projectdavid-1.33.30 → projectdavid-1.33.32}/docs/versioning.md +0 -0
  31. {projectdavid-1.33.30 → projectdavid-1.33.32}/setup.cfg +0 -0
  32. {projectdavid-1.33.30 → projectdavid-1.33.32}/src/projectdavid/__init__.py +0 -0
  33. {projectdavid-1.33.30 → projectdavid-1.33.32}/src/projectdavid/_version.py +0 -0
  34. {projectdavid-1.33.30 → projectdavid-1.33.32}/src/projectdavid/clients/actions_client.py +0 -0
  35. {projectdavid-1.33.30 → projectdavid-1.33.32}/src/projectdavid/clients/api_key_client.py +0 -0
  36. {projectdavid-1.33.30 → projectdavid-1.33.32}/src/projectdavid/clients/assistants_client.py +0 -0
  37. {projectdavid-1.33.30 → projectdavid-1.33.32}/src/projectdavid/clients/base_client.py +0 -0
  38. {projectdavid-1.33.30 → projectdavid-1.33.32}/src/projectdavid/clients/base_vector_store.py +0 -0
  39. {projectdavid-1.33.30 → projectdavid-1.33.32}/src/projectdavid/clients/event_handler.py +0 -0
  40. {projectdavid-1.33.30 → projectdavid-1.33.32}/src/projectdavid/clients/file_processor.py +0 -0
  41. {projectdavid-1.33.30 → projectdavid-1.33.32}/src/projectdavid/clients/file_search.py +0 -0
  42. {projectdavid-1.33.30 → projectdavid-1.33.32}/src/projectdavid/clients/files_client.py +0 -0
  43. {projectdavid-1.33.30 → projectdavid-1.33.32}/src/projectdavid/clients/inference_client.py +0 -0
  44. {projectdavid-1.33.30 → projectdavid-1.33.32}/src/projectdavid/clients/runs.py +0 -0
  45. {projectdavid-1.33.30 → projectdavid-1.33.32}/src/projectdavid/clients/synchronous_inference_wrapper.py +0 -0
  46. {projectdavid-1.33.30 → projectdavid-1.33.32}/src/projectdavid/clients/tools_client.py +0 -0
  47. {projectdavid-1.33.30 → projectdavid-1.33.32}/src/projectdavid/clients/users_client.py +0 -0
  48. {projectdavid-1.33.30 → projectdavid-1.33.32}/src/projectdavid/clients/vector_store_manager.py +0 -0
  49. {projectdavid-1.33.30 → projectdavid-1.33.32}/src/projectdavid/clients/vectors.py +0 -0
  50. {projectdavid-1.33.30 → projectdavid-1.33.32}/src/projectdavid/clients/vision-file_processor.py +0 -0
  51. {projectdavid-1.33.30 → projectdavid-1.33.32}/src/projectdavid/clients/vision_vectors.py +0 -0
  52. {projectdavid-1.33.30 → projectdavid-1.33.32}/src/projectdavid/constants/platform.py +0 -0
  53. {projectdavid-1.33.30 → projectdavid-1.33.32}/src/projectdavid/decorators.py +0 -0
  54. {projectdavid-1.33.30 → projectdavid-1.33.32}/src/projectdavid/entity.py +0 -0
  55. {projectdavid-1.33.30 → projectdavid-1.33.32}/src/projectdavid/events.py +0 -0
  56. {projectdavid-1.33.30 → projectdavid-1.33.32}/src/projectdavid/serializers.py +0 -0
  57. {projectdavid-1.33.30 → projectdavid-1.33.32}/src/projectdavid/services/logging_service.py +0 -0
  58. {projectdavid-1.33.30 → projectdavid-1.33.32}/src/projectdavid/synthesis/__init__.py +0 -0
  59. {projectdavid-1.33.30 → projectdavid-1.33.32}/src/projectdavid/synthesis/llm_synthesizer.py +0 -0
  60. {projectdavid-1.33.30 → projectdavid-1.33.32}/src/projectdavid/synthesis/prompt.py +0 -0
  61. {projectdavid-1.33.30 → projectdavid-1.33.32}/src/projectdavid/synthesis/reranker.py +0 -0
  62. {projectdavid-1.33.30 → projectdavid-1.33.32}/src/projectdavid/synthesis/retriever.py +0 -0
  63. {projectdavid-1.33.30 → projectdavid-1.33.32}/src/projectdavid/utils/__init__.py +0 -0
  64. {projectdavid-1.33.30 → projectdavid-1.33.32}/src/projectdavid/utils/function_call_suppressor.py +0 -0
  65. {projectdavid-1.33.30 → projectdavid-1.33.32}/src/projectdavid/utils/monitor_launcher.py +0 -0
  66. {projectdavid-1.33.30 → projectdavid-1.33.32}/src/projectdavid/utils/peek_gate.py +0 -0
  67. {projectdavid-1.33.30 → projectdavid-1.33.32}/src/projectdavid/utils/run_monitor.py +0 -0
  68. {projectdavid-1.33.30 → projectdavid-1.33.32}/src/projectdavid/utils/vector_search_formatter.py +0 -0
  69. {projectdavid-1.33.30 → projectdavid-1.33.32}/src/projectdavid.egg-info/SOURCES.txt +0 -0
  70. {projectdavid-1.33.30 → projectdavid-1.33.32}/src/projectdavid.egg-info/dependency_links.txt +0 -0
  71. {projectdavid-1.33.30 → projectdavid-1.33.32}/src/projectdavid.egg-info/top_level.txt +0 -0
  72. {projectdavid-1.33.30 → projectdavid-1.33.32}/tests/test_clients.py +0 -0
@@ -1,3 +1,19 @@
1
+ ## [1.33.32](https://github.com/frankie336/projectdavid/compare/v1.33.31...v1.33.32) (2025-07-09)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * use project_david_common 0.17.9 and refactor list_messages to use new envelope ([3fc565c](https://github.com/frankie336/projectdavid/commit/3fc565ce1f69af47fc102d5abd55f90a1fce2288))
7
+ * use project_david_common 0.17.9 and refactor list_messages to use new envelope ([3d802ef](https://github.com/frankie336/projectdavid/commit/3d802efc8cd0ec7425d0d1a1ead944c4d23d0838))
8
+ * use project_david_common 0.17.9 and refactor list_messages to use new envelope ([0549842](https://github.com/frankie336/projectdavid/commit/054984252097c9e843a12fed9a87eacea95aee33))
9
+
10
+ ## [1.33.31](https://github.com/frankie336/projectdavid/compare/v1.33.30...v1.33.31) (2025-07-08)
11
+
12
+
13
+ ### Bug Fixes
14
+
15
+ * update_thread ([2041347](https://github.com/frankie336/projectdavid/commit/2041347839922e2745d14e4ad9136f1aa797b254))
16
+
1
17
  ## [1.33.30](https://github.com/frankie336/projectdavid/compare/v1.33.29...v1.33.30) (2025-07-06)
2
18
 
3
19
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: projectdavid
3
- Version: 1.33.30
3
+ Version: 1.33.32
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.7
23
+ Requires-Dist: projectdavid_common==0.17.10
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
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "projectdavid"
7
- version = "1.33.30"
7
+ version = "1.33.32"
8
8
  description = "Python SDK for interacting with the Entities Assistant API."
9
9
  readme = "README.md"
10
10
  authors = [
@@ -20,7 +20,7 @@ dependencies = [
20
20
  "python-dotenv>=1.0.1,<2.0",
21
21
  "aiofiles>=23.2.1,<25.0",
22
22
  "ollama>=0.4.4,<0.5.0",
23
- "projectdavid_common==0.17.7",
23
+ "projectdavid_common==0.17.10",
24
24
  "qdrant-client>=1.0.0,<2.0.0",
25
25
  "pdfplumber>=0.11.0,<0.12.0",
26
26
  "validators>=0.29.0,<0.35.0",
@@ -153,18 +153,21 @@ class MessagesClient(BaseAPIClient):
153
153
  raise
154
154
 
155
155
  def list_messages(
156
- self, thread_id: str, limit: int = 20, order: str = "asc"
157
- ) -> List[Dict[str, Any]]:
156
+ self,
157
+ thread_id: str,
158
+ limit: int = 20,
159
+ order: str = "asc",
160
+ ) -> ent_validator.MessagesList:
158
161
  """
159
- List messages for a given thread.
162
+ Fetch messages for a thread and return an OpenAI-style envelope.
160
163
 
161
164
  Args:
162
- thread_id (str): The thread ID.
163
- limit (int): Maximum number of messages to retrieve.
164
- order (str): Order of messages ('asc' or 'desc').
165
+ thread_id (str): Target thread ID.
166
+ limit (int): Max messages to fetch.
167
+ order (str): 'asc' or 'desc'.
165
168
 
166
169
  Returns:
167
- List[Dict[str, Any]]: A list of messages as dictionaries.
170
+ MessagesList: Wrapper containing .data[], .first_id, .last_id, .has_more …
168
171
  """
169
172
  logging_utility.info(
170
173
  "Listing messages for thread_id: %s, limit: %d, order: %s",
@@ -178,24 +181,19 @@ class MessagesClient(BaseAPIClient):
178
181
  f"/v1/threads/{thread_id}/messages", params=params
179
182
  )
180
183
  response.raise_for_status()
181
- messages = response.json()
182
- validated_messages = [
183
- ent_validator.MessageRead(**message) for message in messages
184
- ]
185
- logging_utility.info("Retrieved %d messages", len(validated_messages))
186
- return [message.dict() for message in validated_messages]
184
+
185
+ envelope = ent_validator.MessagesList(**response.json())
186
+ logging_utility.info("Retrieved %d messages", len(envelope.data))
187
+ return envelope
188
+
187
189
  except ValidationError as e:
188
190
  logging_utility.error("Validation error: %s", e.json())
189
- raise ValueError(f"Validation error: {e}")
191
+ raise ValueError(f"Validation error: {e}") from e
190
192
  except httpx.HTTPStatusError as e:
191
- logging_utility.error(
192
- "HTTP error occurred while listing messages: %s", str(e)
193
- )
193
+ logging_utility.error("HTTP error while listing messages: %s", str(e))
194
194
  raise
195
195
  except Exception as e:
196
- logging_utility.error(
197
- "An error occurred while listing messages: %s", str(e)
198
- )
196
+ logging_utility.error("Unexpected error while listing messages: %s", str(e))
199
197
  raise
200
198
 
201
199
  def get_formatted_messages(
@@ -104,16 +104,30 @@ class ThreadsClient(BaseAPIClient):
104
104
  logging_utility.error("Unexpected error retrieving thread: %s", str(e))
105
105
  raise
106
106
 
107
- def update_thread(self, thread_id: str, **updates) -> validator.ThreadReadDetailed:
107
+ def update_thread(
108
+ self,
109
+ thread_id: str,
110
+ *,
111
+ participant_ids: Optional[List[str]] = None,
112
+ meta_data: Optional[Dict[str, Any]] = None,
113
+ tool_resources: Optional[Dict[str, Any]] = None,
114
+ ) -> validator.ThreadReadDetailed:
108
115
  logging_utility.info("Updating thread with id: %s", thread_id)
109
116
  try:
110
- validated_updates = validator.ThreadUpdate(**updates)
111
- response = self.client.post(
112
- f"/v1/threads/{thread_id}", json=validated_updates.model_dump()
117
+ validated_updates = validator.ThreadUpdate(
118
+ participant_ids=participant_ids,
119
+ meta_data=meta_data,
120
+ tool_resources=tool_resources,
121
+ )
122
+
123
+ response = self.client.put(
124
+ f"/v1/threads/{thread_id}",
125
+ json=validated_updates.model_dump(),
113
126
  )
114
127
  response.raise_for_status()
115
128
  updated_thread = response.json()
116
129
  return validator.ThreadReadDetailed(**updated_thread)
130
+
117
131
  except httpx.HTTPStatusError as e:
118
132
  logging_utility.error("HTTP error updating thread: %s", str(e))
119
133
  raise
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: projectdavid
3
- Version: 1.33.30
3
+ Version: 1.33.32
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.7
23
+ Requires-Dist: projectdavid_common==0.17.10
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.7
6
+ projectdavid_common==0.17.10
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