unique_toolkit 0.7.28__py3-none-any.whl → 0.7.29__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.
- unique_toolkit/app/schemas.py +3 -2
- unique_toolkit/chat/service.py +101 -325
- unique_toolkit/content/service.py +8 -8
- unique_toolkit/embedding/service.py +6 -6
- unique_toolkit/language_model/service.py +12 -16
- unique_toolkit/short_term_memory/service.py +9 -8
- unique_toolkit/smart_rules/compile.py +1 -1
- {unique_toolkit-0.7.28.dist-info → unique_toolkit-0.7.29.dist-info}/METADATA +10 -2
- {unique_toolkit-0.7.28.dist-info → unique_toolkit-0.7.29.dist-info}/RECORD +11 -11
- {unique_toolkit-0.7.28.dist-info → unique_toolkit-0.7.29.dist-info}/LICENSE +0 -0
- {unique_toolkit-0.7.28.dist-info → unique_toolkit-0.7.29.dist-info}/WHEEL +0 -0
unique_toolkit/app/schemas.py
CHANGED
@@ -131,8 +131,9 @@ class ChatEventPayload(BaseModel):
|
|
131
131
|
)
|
132
132
|
|
133
133
|
@field_validator("raw_scope_rules", mode="before")
|
134
|
-
def validate_scope_rules(cls, value: dict[str, Any]) -> UniqueQL:
|
135
|
-
|
134
|
+
def validate_scope_rules(cls, value: dict[str, Any] | None) -> UniqueQL | None:
|
135
|
+
if value:
|
136
|
+
return parse_uniqueql(value)
|
136
137
|
|
137
138
|
|
138
139
|
@deprecated("""Use `ChatEventPayload` instead.
|
unique_toolkit/chat/service.py
CHANGED
@@ -3,7 +3,6 @@ from typing import Optional
|
|
3
3
|
|
4
4
|
from typing_extensions import deprecated
|
5
5
|
|
6
|
-
from unique_toolkit._common.validate_required_values import validate_required_values
|
7
6
|
from unique_toolkit.app.schemas import ChatEvent, Event
|
8
7
|
from unique_toolkit.chat.constants import (
|
9
8
|
DEFAULT_MAX_MESSAGES,
|
@@ -71,13 +70,13 @@ class ChatService:
|
|
71
70
|
|
72
71
|
def __init__(self, event: ChatEvent | Event):
|
73
72
|
self._event = event
|
74
|
-
self._company_id = event.company_id
|
75
|
-
self._user_id = event.user_id
|
76
|
-
self._assistant_message_id = event.payload.assistant_message.id
|
77
|
-
self._user_message_id = event.payload.user_message.id
|
78
|
-
self._chat_id = event.payload.chat_id
|
79
|
-
self._assistant_id = event.payload.assistant_id
|
80
|
-
self._user_message_text = event.payload.user_message.text
|
73
|
+
self._company_id: str = event.company_id
|
74
|
+
self._user_id: str = event.user_id
|
75
|
+
self._assistant_message_id: str = event.payload.assistant_message.id
|
76
|
+
self._user_message_id: str = event.payload.user_message.id
|
77
|
+
self._chat_id: str = event.payload.chat_id
|
78
|
+
self._assistant_id: str = event.payload.assistant_id
|
79
|
+
self._user_message_text: str = event.payload.user_message.text
|
81
80
|
|
82
81
|
@property
|
83
82
|
@deprecated(
|
@@ -96,7 +95,7 @@ class ChatService:
|
|
96
95
|
@deprecated(
|
97
96
|
"The company_id property is deprecated and will be removed in a future version."
|
98
97
|
)
|
99
|
-
def company_id(self) -> str
|
98
|
+
def company_id(self) -> str:
|
100
99
|
"""
|
101
100
|
Get the company identifier (deprecated).
|
102
101
|
|
@@ -109,7 +108,7 @@ class ChatService:
|
|
109
108
|
@deprecated(
|
110
109
|
"The company_id setter is deprecated and will be removed in a future version."
|
111
110
|
)
|
112
|
-
def company_id(self, value: str
|
111
|
+
def company_id(self, value: str) -> None:
|
113
112
|
"""
|
114
113
|
Set the company identifier (deprecated).
|
115
114
|
|
@@ -122,7 +121,7 @@ class ChatService:
|
|
122
121
|
@deprecated(
|
123
122
|
"The user_id property is deprecated and will be removed in a future version."
|
124
123
|
)
|
125
|
-
def user_id(self) -> str
|
124
|
+
def user_id(self) -> str:
|
126
125
|
"""
|
127
126
|
Get the user identifier (deprecated).
|
128
127
|
|
@@ -135,7 +134,7 @@ class ChatService:
|
|
135
134
|
@deprecated(
|
136
135
|
"The user_id setter is deprecated and will be removed in a future version."
|
137
136
|
)
|
138
|
-
def user_id(self, value: str
|
137
|
+
def user_id(self, value: str) -> None:
|
139
138
|
"""
|
140
139
|
Set the user identifier (deprecated).
|
141
140
|
|
@@ -148,7 +147,7 @@ class ChatService:
|
|
148
147
|
@deprecated(
|
149
148
|
"The assistant_message_id property is deprecated and will be removed in a future version."
|
150
149
|
)
|
151
|
-
def assistant_message_id(self) -> str
|
150
|
+
def assistant_message_id(self) -> str:
|
152
151
|
"""
|
153
152
|
Get the assistant message identifier (deprecated).
|
154
153
|
|
@@ -161,7 +160,7 @@ class ChatService:
|
|
161
160
|
@deprecated(
|
162
161
|
"The assistant_message_id setter is deprecated and will be removed in a future version."
|
163
162
|
)
|
164
|
-
def assistant_message_id(self, value: str
|
163
|
+
def assistant_message_id(self, value: str) -> None:
|
165
164
|
"""
|
166
165
|
Set the assistant message identifier (deprecated).
|
167
166
|
|
@@ -174,7 +173,7 @@ class ChatService:
|
|
174
173
|
@deprecated(
|
175
174
|
"The user_message_id property is deprecated and will be removed in a future version."
|
176
175
|
)
|
177
|
-
def user_message_id(self) -> str
|
176
|
+
def user_message_id(self) -> str:
|
178
177
|
"""
|
179
178
|
Get the user message identifier (deprecated).
|
180
179
|
|
@@ -187,7 +186,7 @@ class ChatService:
|
|
187
186
|
@deprecated(
|
188
187
|
"The user_message_id setter is deprecated and will be removed in a future version."
|
189
188
|
)
|
190
|
-
def user_message_id(self, value: str
|
189
|
+
def user_message_id(self, value: str) -> None:
|
191
190
|
"""
|
192
191
|
Set the user message identifier (deprecated).
|
193
192
|
|
@@ -200,7 +199,7 @@ class ChatService:
|
|
200
199
|
@deprecated(
|
201
200
|
"The chat_id property is deprecated and will be removed in a future version."
|
202
201
|
)
|
203
|
-
def chat_id(self) -> str
|
202
|
+
def chat_id(self) -> str:
|
204
203
|
"""
|
205
204
|
Get the chat identifier (deprecated).
|
206
205
|
|
@@ -213,7 +212,7 @@ class ChatService:
|
|
213
212
|
@deprecated(
|
214
213
|
"The chat_id setter is deprecated and will be removed in a future version."
|
215
214
|
)
|
216
|
-
def chat_id(self, value: str
|
215
|
+
def chat_id(self, value: str) -> None:
|
217
216
|
"""
|
218
217
|
Set the chat identifier (deprecated).
|
219
218
|
|
@@ -226,7 +225,7 @@ class ChatService:
|
|
226
225
|
@deprecated(
|
227
226
|
"The assistant_id property is deprecated and will be removed in a future version."
|
228
227
|
)
|
229
|
-
def assistant_id(self) -> str
|
228
|
+
def assistant_id(self) -> str:
|
230
229
|
"""
|
231
230
|
Get the assistant identifier (deprecated).
|
232
231
|
|
@@ -239,7 +238,7 @@ class ChatService:
|
|
239
238
|
@deprecated(
|
240
239
|
"The assistant_id setter is deprecated and will be removed in a future version."
|
241
240
|
)
|
242
|
-
def assistant_id(self, value: str
|
241
|
+
def assistant_id(self, value: str) -> None:
|
243
242
|
"""
|
244
243
|
Set the assistant identifier (deprecated).
|
245
244
|
|
@@ -252,7 +251,7 @@ class ChatService:
|
|
252
251
|
@deprecated(
|
253
252
|
"The user_message_text property is deprecated and will be removed in a future version."
|
254
253
|
)
|
255
|
-
def user_message_text(self) -> str
|
254
|
+
def user_message_text(self) -> str:
|
256
255
|
"""
|
257
256
|
Get the user message text (deprecated).
|
258
257
|
|
@@ -265,7 +264,7 @@ class ChatService:
|
|
265
264
|
@deprecated(
|
266
265
|
"The user_message_text setter is deprecated and will be removed in a future version."
|
267
266
|
)
|
268
|
-
def user_message_text(self, value: str
|
267
|
+
def user_message_text(self, value: str) -> None:
|
269
268
|
"""
|
270
269
|
Set the user message text (deprecated).
|
271
270
|
|
@@ -281,30 +280,13 @@ class ChatService:
|
|
281
280
|
Args:
|
282
281
|
debug_info (dict): The new debug information.
|
283
282
|
"""
|
284
|
-
[
|
285
|
-
company_id,
|
286
|
-
user_id,
|
287
|
-
assistant_message_id,
|
288
|
-
user_message_id,
|
289
|
-
chat_id,
|
290
|
-
user_message_text,
|
291
|
-
] = validate_required_values(
|
292
|
-
[
|
293
|
-
self._company_id,
|
294
|
-
self._user_id,
|
295
|
-
self._assistant_message_id,
|
296
|
-
self._user_message_id,
|
297
|
-
self._chat_id,
|
298
|
-
self._user_message_text,
|
299
|
-
]
|
300
|
-
)
|
301
283
|
return await modify_message_async(
|
302
|
-
user_id=
|
303
|
-
company_id=
|
304
|
-
assistant_message_id=
|
305
|
-
chat_id=
|
306
|
-
user_message_id=
|
307
|
-
user_message_text=
|
284
|
+
user_id=self._user_id,
|
285
|
+
company_id=self._company_id,
|
286
|
+
assistant_message_id=self._assistant_message_id,
|
287
|
+
chat_id=self._chat_id,
|
288
|
+
user_message_id=self._user_message_id,
|
289
|
+
user_message_text=self._user_message_text,
|
308
290
|
assistant=False,
|
309
291
|
debug_info=debug_info,
|
310
292
|
)
|
@@ -316,31 +298,14 @@ class ChatService:
|
|
316
298
|
Args:
|
317
299
|
debug_info (dict): The new debug information.
|
318
300
|
"""
|
319
|
-
[
|
320
|
-
company_id,
|
321
|
-
user_id,
|
322
|
-
assistant_message_id,
|
323
|
-
user_message_id,
|
324
|
-
chat_id,
|
325
|
-
user_message_text,
|
326
|
-
] = validate_required_values(
|
327
|
-
[
|
328
|
-
self._company_id,
|
329
|
-
self._user_id,
|
330
|
-
self._assistant_message_id,
|
331
|
-
self._user_message_id,
|
332
|
-
self._chat_id,
|
333
|
-
self._user_message_text,
|
334
|
-
]
|
335
|
-
)
|
336
301
|
|
337
302
|
return modify_message(
|
338
|
-
user_id=
|
339
|
-
company_id=
|
340
|
-
assistant_message_id=
|
341
|
-
chat_id=
|
342
|
-
user_message_id=
|
343
|
-
user_message_text=
|
303
|
+
user_id=self._user_id,
|
304
|
+
company_id=self._company_id,
|
305
|
+
assistant_message_id=self._assistant_message_id,
|
306
|
+
chat_id=self._chat_id,
|
307
|
+
user_message_id=self._user_message_id,
|
308
|
+
user_message_text=self._user_message_text,
|
344
309
|
assistant=False,
|
345
310
|
debug_info=debug_info,
|
346
311
|
)
|
@@ -369,31 +334,14 @@ class ChatService:
|
|
369
334
|
Raises:
|
370
335
|
Exception: If the modification fails.
|
371
336
|
"""
|
372
|
-
[
|
373
|
-
company_id,
|
374
|
-
user_id,
|
375
|
-
assistant_message_id,
|
376
|
-
user_message_id,
|
377
|
-
chat_id,
|
378
|
-
user_message_text,
|
379
|
-
] = validate_required_values(
|
380
|
-
[
|
381
|
-
self._company_id,
|
382
|
-
self._user_id,
|
383
|
-
self._assistant_message_id,
|
384
|
-
self._user_message_id,
|
385
|
-
self._chat_id,
|
386
|
-
self._user_message_text,
|
387
|
-
]
|
388
|
-
)
|
389
337
|
|
390
338
|
return modify_message(
|
391
|
-
user_id=
|
392
|
-
company_id=
|
393
|
-
assistant_message_id=
|
394
|
-
chat_id=
|
395
|
-
user_message_id=
|
396
|
-
user_message_text=
|
339
|
+
user_id=self._user_id,
|
340
|
+
company_id=self._company_id,
|
341
|
+
assistant_message_id=self._assistant_message_id,
|
342
|
+
chat_id=self._chat_id,
|
343
|
+
user_message_id=self._user_message_id,
|
344
|
+
user_message_text=self._user_message_text,
|
397
345
|
assistant=False,
|
398
346
|
content=content,
|
399
347
|
references=references,
|
@@ -427,31 +375,13 @@ class ChatService:
|
|
427
375
|
Exception: If the modification fails.
|
428
376
|
"""
|
429
377
|
|
430
|
-
[
|
431
|
-
company_id,
|
432
|
-
user_id,
|
433
|
-
assistant_message_id,
|
434
|
-
user_message_id,
|
435
|
-
chat_id,
|
436
|
-
user_message_text,
|
437
|
-
] = validate_required_values(
|
438
|
-
[
|
439
|
-
self._company_id,
|
440
|
-
self._user_id,
|
441
|
-
self._assistant_message_id,
|
442
|
-
self._user_message_id,
|
443
|
-
self._chat_id,
|
444
|
-
self._user_message_text,
|
445
|
-
]
|
446
|
-
)
|
447
|
-
|
448
378
|
return await modify_message_async(
|
449
|
-
user_id=
|
450
|
-
company_id=
|
451
|
-
assistant_message_id=
|
452
|
-
chat_id=
|
453
|
-
user_message_id=
|
454
|
-
user_message_text=
|
379
|
+
user_id=self._user_id,
|
380
|
+
company_id=self._company_id,
|
381
|
+
assistant_message_id=self._assistant_message_id,
|
382
|
+
chat_id=self._chat_id,
|
383
|
+
user_message_id=self._user_message_id,
|
384
|
+
user_message_text=self._user_message_text,
|
455
385
|
assistant=False,
|
456
386
|
content=content,
|
457
387
|
references=references,
|
@@ -486,31 +416,14 @@ class ChatService:
|
|
486
416
|
Raises:
|
487
417
|
Exception: If the modification fails.
|
488
418
|
"""
|
489
|
-
[
|
490
|
-
company_id,
|
491
|
-
user_id,
|
492
|
-
assistant_message_id,
|
493
|
-
user_message_id,
|
494
|
-
chat_id,
|
495
|
-
user_message_text,
|
496
|
-
] = validate_required_values(
|
497
|
-
[
|
498
|
-
self._company_id,
|
499
|
-
self._user_id,
|
500
|
-
self._assistant_message_id,
|
501
|
-
self._user_message_id,
|
502
|
-
self._chat_id,
|
503
|
-
self._user_message_text,
|
504
|
-
]
|
505
|
-
)
|
506
419
|
|
507
420
|
return modify_message(
|
508
|
-
user_id=
|
509
|
-
company_id=
|
510
|
-
assistant_message_id=
|
511
|
-
chat_id=
|
512
|
-
user_message_id=
|
513
|
-
user_message_text=
|
421
|
+
user_id=self._user_id,
|
422
|
+
company_id=self._company_id,
|
423
|
+
assistant_message_id=self._assistant_message_id,
|
424
|
+
chat_id=self._chat_id,
|
425
|
+
user_message_id=self._user_message_id,
|
426
|
+
user_message_text=self._user_message_text,
|
514
427
|
assistant=True,
|
515
428
|
content=content,
|
516
429
|
original_content=original_content,
|
@@ -546,30 +459,14 @@ class ChatService:
|
|
546
459
|
Raises:
|
547
460
|
Exception: If the modification fails.
|
548
461
|
"""
|
549
|
-
|
550
|
-
company_id,
|
551
|
-
user_id,
|
552
|
-
assistant_message_id,
|
553
|
-
user_message_id,
|
554
|
-
chat_id,
|
555
|
-
user_message_text,
|
556
|
-
] = validate_required_values(
|
557
|
-
[
|
558
|
-
self._company_id,
|
559
|
-
self._user_id,
|
560
|
-
self._assistant_message_id,
|
561
|
-
self._user_message_id,
|
562
|
-
self._chat_id,
|
563
|
-
self._user_message_text,
|
564
|
-
]
|
565
|
-
)
|
462
|
+
|
566
463
|
return await modify_message_async(
|
567
|
-
user_id=
|
568
|
-
company_id=
|
569
|
-
assistant_message_id=
|
570
|
-
chat_id=
|
571
|
-
user_message_id=
|
572
|
-
user_message_text=
|
464
|
+
user_id=self._user_id,
|
465
|
+
company_id=self._company_id,
|
466
|
+
assistant_message_id=self._assistant_message_id,
|
467
|
+
chat_id=self._chat_id,
|
468
|
+
user_message_id=self._user_message_id,
|
469
|
+
user_message_text=self._user_message_text,
|
573
470
|
assistant=True,
|
574
471
|
content=content,
|
575
472
|
original_content=original_content,
|
@@ -701,25 +598,12 @@ class ChatService:
|
|
701
598
|
Raises:
|
702
599
|
Exception: If the creation fails.
|
703
600
|
"""
|
704
|
-
[
|
705
|
-
company_id,
|
706
|
-
user_id,
|
707
|
-
assistant_id,
|
708
|
-
chat_id,
|
709
|
-
] = validate_required_values(
|
710
|
-
[
|
711
|
-
self._company_id,
|
712
|
-
self._user_id,
|
713
|
-
self._assistant_id,
|
714
|
-
self._chat_id,
|
715
|
-
]
|
716
|
-
)
|
717
601
|
|
718
602
|
chat_message = create_message(
|
719
|
-
user_id=
|
720
|
-
company_id=
|
721
|
-
chat_id=
|
722
|
-
assistant_id=
|
603
|
+
user_id=self._user_id,
|
604
|
+
company_id=self._company_id,
|
605
|
+
chat_id=self._chat_id,
|
606
|
+
assistant_id=self._assistant_id,
|
723
607
|
role=ChatMessageRole.ASSISTANT,
|
724
608
|
content=content,
|
725
609
|
original_content=original_content,
|
@@ -728,7 +612,7 @@ class ChatService:
|
|
728
612
|
set_completed_at=set_completed_at,
|
729
613
|
)
|
730
614
|
# Update the assistant message id
|
731
|
-
self._assistant_message_id = chat_message.id
|
615
|
+
self._assistant_message_id = chat_message.id or "unknown"
|
732
616
|
return chat_message
|
733
617
|
|
734
618
|
async def create_assistant_message_async(
|
@@ -755,24 +639,12 @@ class ChatService:
|
|
755
639
|
Raises:
|
756
640
|
Exception: If the creation fails.
|
757
641
|
"""
|
758
|
-
|
759
|
-
company_id,
|
760
|
-
user_id,
|
761
|
-
assistant_id,
|
762
|
-
chat_id,
|
763
|
-
] = validate_required_values(
|
764
|
-
[
|
765
|
-
self._company_id,
|
766
|
-
self._user_id,
|
767
|
-
self._assistant_id,
|
768
|
-
self._chat_id,
|
769
|
-
]
|
770
|
-
)
|
642
|
+
|
771
643
|
chat_message = await create_message_async(
|
772
|
-
user_id=
|
773
|
-
company_id=
|
774
|
-
chat_id=
|
775
|
-
assistant_id=
|
644
|
+
user_id=self._user_id,
|
645
|
+
company_id=self._company_id,
|
646
|
+
chat_id=self._chat_id,
|
647
|
+
assistant_id=self._assistant_id,
|
776
648
|
role=ChatMessageRole.ASSISTANT,
|
777
649
|
content=content,
|
778
650
|
original_content=original_content,
|
@@ -781,7 +653,7 @@ class ChatService:
|
|
781
653
|
set_completed_at=set_completed_at,
|
782
654
|
)
|
783
655
|
# Update the assistant message id
|
784
|
-
self._assistant_message_id = chat_message.id
|
656
|
+
self._assistant_message_id = chat_message.id or "unknown"
|
785
657
|
return chat_message
|
786
658
|
|
787
659
|
def create_user_message(
|
@@ -808,24 +680,12 @@ class ChatService:
|
|
808
680
|
Raises:
|
809
681
|
Exception: If the creation fails.
|
810
682
|
"""
|
811
|
-
|
812
|
-
company_id,
|
813
|
-
user_id,
|
814
|
-
assistant_id,
|
815
|
-
chat_id,
|
816
|
-
] = validate_required_values(
|
817
|
-
[
|
818
|
-
self._company_id,
|
819
|
-
self._user_id,
|
820
|
-
self._assistant_id,
|
821
|
-
self._chat_id,
|
822
|
-
]
|
823
|
-
)
|
683
|
+
|
824
684
|
chat_message = create_message(
|
825
|
-
user_id=
|
826
|
-
company_id=
|
827
|
-
chat_id=
|
828
|
-
assistant_id=
|
685
|
+
user_id=self._user_id,
|
686
|
+
company_id=self._company_id,
|
687
|
+
chat_id=self._chat_id,
|
688
|
+
assistant_id=self._assistant_id,
|
829
689
|
role=ChatMessageRole.USER,
|
830
690
|
content=content,
|
831
691
|
original_content=original_content,
|
@@ -834,7 +694,7 @@ class ChatService:
|
|
834
694
|
set_completed_at=set_completed_at,
|
835
695
|
)
|
836
696
|
# Update the user message id
|
837
|
-
self._user_message_id = chat_message.id
|
697
|
+
self._user_message_id = chat_message.id or "unknown"
|
838
698
|
return chat_message
|
839
699
|
|
840
700
|
async def create_user_message_async(
|
@@ -861,24 +721,12 @@ class ChatService:
|
|
861
721
|
Raises:
|
862
722
|
Exception: If the creation fails.
|
863
723
|
"""
|
864
|
-
|
865
|
-
company_id,
|
866
|
-
user_id,
|
867
|
-
assistant_id,
|
868
|
-
chat_id,
|
869
|
-
] = validate_required_values(
|
870
|
-
[
|
871
|
-
self._company_id,
|
872
|
-
self._user_id,
|
873
|
-
self._assistant_id,
|
874
|
-
self._chat_id,
|
875
|
-
]
|
876
|
-
)
|
724
|
+
|
877
725
|
chat_message = await create_message_async(
|
878
|
-
user_id=
|
879
|
-
company_id=
|
880
|
-
chat_id=
|
881
|
-
assistant_id=
|
726
|
+
user_id=self._user_id,
|
727
|
+
company_id=self._company_id,
|
728
|
+
chat_id=self._chat_id,
|
729
|
+
assistant_id=self._assistant_id,
|
882
730
|
role=ChatMessageRole.USER,
|
883
731
|
content=content,
|
884
732
|
original_content=original_content,
|
@@ -887,7 +735,7 @@ class ChatService:
|
|
887
735
|
set_completed_at=set_completed_at,
|
888
736
|
)
|
889
737
|
# Update the user message id
|
890
|
-
self._user_message_id = chat_message.id
|
738
|
+
self._user_message_id = chat_message.id or "unknown"
|
891
739
|
return chat_message
|
892
740
|
|
893
741
|
def create_message_assessment(
|
@@ -918,19 +766,10 @@ class ChatService:
|
|
918
766
|
Raises:
|
919
767
|
Exception: If the creation fails
|
920
768
|
"""
|
921
|
-
[
|
922
|
-
company_id,
|
923
|
-
user_id,
|
924
|
-
] = validate_required_values(
|
925
|
-
[
|
926
|
-
self._company_id,
|
927
|
-
self._user_id,
|
928
|
-
]
|
929
|
-
)
|
930
769
|
|
931
770
|
return create_message_assessment(
|
932
|
-
user_id=
|
933
|
-
company_id=
|
771
|
+
user_id=self._user_id,
|
772
|
+
company_id=self._company_id,
|
934
773
|
assistant_message_id=assistant_message_id,
|
935
774
|
status=status,
|
936
775
|
type=type,
|
@@ -968,19 +807,10 @@ class ChatService:
|
|
968
807
|
Raises:
|
969
808
|
Exception: If the creation fails
|
970
809
|
"""
|
971
|
-
[
|
972
|
-
company_id,
|
973
|
-
user_id,
|
974
|
-
] = validate_required_values(
|
975
|
-
[
|
976
|
-
self._company_id,
|
977
|
-
self._user_id,
|
978
|
-
]
|
979
|
-
)
|
980
810
|
|
981
811
|
return await create_message_assessment_async(
|
982
|
-
user_id=
|
983
|
-
company_id=
|
812
|
+
user_id=self._user_id,
|
813
|
+
company_id=self._company_id,
|
984
814
|
assistant_message_id=assistant_message_id,
|
985
815
|
status=status,
|
986
816
|
type=type,
|
@@ -1016,19 +846,10 @@ class ChatService:
|
|
1016
846
|
Raises:
|
1017
847
|
Exception: If the modification fails
|
1018
848
|
"""
|
1019
|
-
[
|
1020
|
-
company_id,
|
1021
|
-
user_id,
|
1022
|
-
] = validate_required_values(
|
1023
|
-
[
|
1024
|
-
self._company_id,
|
1025
|
-
self._user_id,
|
1026
|
-
]
|
1027
|
-
)
|
1028
849
|
|
1029
850
|
return modify_message_assessment(
|
1030
|
-
user_id=
|
1031
|
-
company_id=
|
851
|
+
user_id=self._user_id,
|
852
|
+
company_id=self._company_id,
|
1032
853
|
assistant_message_id=assistant_message_id,
|
1033
854
|
status=status,
|
1034
855
|
type=type,
|
@@ -1063,19 +884,9 @@ class ChatService:
|
|
1063
884
|
Raises:
|
1064
885
|
Exception: If the modification fails
|
1065
886
|
"""
|
1066
|
-
[
|
1067
|
-
company_id,
|
1068
|
-
user_id,
|
1069
|
-
] = validate_required_values(
|
1070
|
-
[
|
1071
|
-
self._company_id,
|
1072
|
-
self._user_id,
|
1073
|
-
]
|
1074
|
-
)
|
1075
|
-
|
1076
887
|
return await modify_message_assessment_async(
|
1077
|
-
user_id=
|
1078
|
-
company_id=
|
888
|
+
user_id=self._user_id,
|
889
|
+
company_id=self._company_id,
|
1079
890
|
assistant_message_id=assistant_message_id,
|
1080
891
|
status=status,
|
1081
892
|
type=type,
|
@@ -1124,31 +935,14 @@ class ChatService:
|
|
1124
935
|
"""
|
1125
936
|
Streams a completion in the chat session synchronously.
|
1126
937
|
"""
|
1127
|
-
[
|
1128
|
-
company_id,
|
1129
|
-
user_id,
|
1130
|
-
assistant_message_id,
|
1131
|
-
user_message_id,
|
1132
|
-
chat_id,
|
1133
|
-
assistant_id,
|
1134
|
-
] = validate_required_values(
|
1135
|
-
[
|
1136
|
-
self._company_id,
|
1137
|
-
self._user_id,
|
1138
|
-
self._assistant_message_id,
|
1139
|
-
self._user_message_id,
|
1140
|
-
self._chat_id,
|
1141
|
-
self._assistant_id,
|
1142
|
-
]
|
1143
|
-
)
|
1144
938
|
|
1145
939
|
return stream_complete_with_references(
|
1146
|
-
company_id=
|
1147
|
-
user_id=
|
1148
|
-
assistant_message_id=
|
1149
|
-
user_message_id=
|
1150
|
-
chat_id=
|
1151
|
-
assistant_id=
|
940
|
+
company_id=self._company_id,
|
941
|
+
user_id=self._user_id,
|
942
|
+
assistant_message_id=self._assistant_message_id,
|
943
|
+
user_message_id=self._user_message_id,
|
944
|
+
chat_id=self._chat_id,
|
945
|
+
assistant_id=self._assistant_id,
|
1152
946
|
messages=messages,
|
1153
947
|
model_name=model_name,
|
1154
948
|
content_chunks=content_chunks,
|
@@ -1224,31 +1018,13 @@ class ChatService:
|
|
1224
1018
|
start_text: Optional[str] = None,
|
1225
1019
|
other_options: Optional[dict] = None,
|
1226
1020
|
) -> LanguageModelStreamResponse:
|
1227
|
-
[
|
1228
|
-
company_id,
|
1229
|
-
user_id,
|
1230
|
-
assistant_message_id,
|
1231
|
-
user_message_id,
|
1232
|
-
chat_id,
|
1233
|
-
assistant_id,
|
1234
|
-
] = validate_required_values(
|
1235
|
-
[
|
1236
|
-
self._company_id,
|
1237
|
-
self._user_id,
|
1238
|
-
self._assistant_message_id,
|
1239
|
-
self._user_message_id,
|
1240
|
-
self._chat_id,
|
1241
|
-
self._assistant_id,
|
1242
|
-
]
|
1243
|
-
)
|
1244
|
-
|
1245
1021
|
return await stream_complete_with_references_async(
|
1246
|
-
company_id=
|
1247
|
-
user_id=
|
1248
|
-
assistant_message_id=
|
1249
|
-
user_message_id=
|
1250
|
-
chat_id=
|
1251
|
-
assistant_id=
|
1022
|
+
company_id=self._company_id,
|
1023
|
+
user_id=self._user_id,
|
1024
|
+
assistant_message_id=self._assistant_message_id,
|
1025
|
+
user_message_id=self._user_message_id,
|
1026
|
+
chat_id=self._chat_id,
|
1027
|
+
assistant_id=self._assistant_id,
|
1252
1028
|
messages=messages,
|
1253
1029
|
model_name=model_name,
|
1254
1030
|
content_chunks=content_chunks,
|
@@ -54,16 +54,16 @@ class ContentService:
|
|
54
54
|
self._event = event # Changed to protected attribute
|
55
55
|
self._metadata_filter = None
|
56
56
|
if event:
|
57
|
-
self._company_id = event.company_id
|
58
|
-
self._user_id = event.user_id
|
57
|
+
self._company_id: str = event.company_id
|
58
|
+
self._user_id: str = event.user_id
|
59
59
|
if isinstance(event, (ChatEvent, Event)):
|
60
60
|
self._metadata_filter = event.payload.metadata_filter
|
61
|
-
self._chat_id = event.payload.chat_id
|
61
|
+
self._chat_id: str | None = event.payload.chat_id
|
62
62
|
else:
|
63
63
|
[company_id, user_id] = validate_required_values([company_id, user_id])
|
64
|
-
self._company_id = company_id
|
65
|
-
self._user_id = user_id
|
66
|
-
self._chat_id = chat_id
|
64
|
+
self._company_id: str = company_id
|
65
|
+
self._user_id: str = user_id
|
66
|
+
self._chat_id: str | None = chat_id
|
67
67
|
|
68
68
|
@property
|
69
69
|
@deprecated(
|
@@ -95,7 +95,7 @@ class ContentService:
|
|
95
95
|
@deprecated(
|
96
96
|
"The company_id setter is deprecated and will be removed in a future version."
|
97
97
|
)
|
98
|
-
def company_id(self, value: str
|
98
|
+
def company_id(self, value: str) -> None:
|
99
99
|
"""
|
100
100
|
Set the company identifier (deprecated).
|
101
101
|
|
@@ -121,7 +121,7 @@ class ContentService:
|
|
121
121
|
@deprecated(
|
122
122
|
"The user_id setter is deprecated and will be removed in a future version."
|
123
123
|
)
|
124
|
-
def user_id(self, value: str
|
124
|
+
def user_id(self, value: str) -> None:
|
125
125
|
"""
|
126
126
|
Set the user identifier (deprecated).
|
127
127
|
|
@@ -25,12 +25,12 @@ class EmbeddingService(BaseService):
|
|
25
25
|
):
|
26
26
|
self._event = event
|
27
27
|
if event:
|
28
|
-
self._company_id = event.company_id
|
29
|
-
self._user_id = event.user_id
|
28
|
+
self._company_id: str = event.company_id
|
29
|
+
self._user_id: str = event.user_id
|
30
30
|
else:
|
31
31
|
[company_id, user_id] = validate_required_values([company_id, user_id])
|
32
|
-
self._company_id = company_id
|
33
|
-
self._user_id = user_id
|
32
|
+
self._company_id: str = company_id
|
33
|
+
self._user_id: str = user_id
|
34
34
|
|
35
35
|
@property
|
36
36
|
@deprecated(
|
@@ -62,7 +62,7 @@ class EmbeddingService(BaseService):
|
|
62
62
|
@deprecated(
|
63
63
|
"The company_id setter is deprecated and will be removed in a future version."
|
64
64
|
)
|
65
|
-
def company_id(self, value: str
|
65
|
+
def company_id(self, value: str) -> None:
|
66
66
|
"""
|
67
67
|
Set the company identifier (deprecated).
|
68
68
|
|
@@ -88,7 +88,7 @@ class EmbeddingService(BaseService):
|
|
88
88
|
@deprecated(
|
89
89
|
"The user_id setter is deprecated and will be removed in a future version."
|
90
90
|
)
|
91
|
-
def user_id(self, value: str
|
91
|
+
def user_id(self, value: str) -> None:
|
92
92
|
"""
|
93
93
|
Set the user identifier (deprecated).
|
94
94
|
|
@@ -50,10 +50,8 @@ class LanguageModelService:
|
|
50
50
|
assistant_id: str | None = None,
|
51
51
|
):
|
52
52
|
self._event = event
|
53
|
-
self.
|
54
|
-
self.
|
55
|
-
self._chat_id = chat_id
|
56
|
-
self._assistant_id = assistant_id
|
53
|
+
self._chat_id: str | None = chat_id
|
54
|
+
self._assistant_id: str | None = assistant_id
|
57
55
|
|
58
56
|
if event:
|
59
57
|
self._company_id = event.company_id
|
@@ -61,6 +59,10 @@ class LanguageModelService:
|
|
61
59
|
if isinstance(event, (ChatEvent, Event)):
|
62
60
|
self._chat_id = event.payload.chat_id
|
63
61
|
self._assistant_id = event.payload.assistant_id
|
62
|
+
else:
|
63
|
+
[company_id, user_id] = validate_required_values([company_id, user_id])
|
64
|
+
self._company_id: str = company_id
|
65
|
+
self._user_id: str = user_id
|
64
66
|
|
65
67
|
@property
|
66
68
|
@deprecated(
|
@@ -92,7 +94,7 @@ class LanguageModelService:
|
|
92
94
|
@deprecated(
|
93
95
|
"The company_id setter is deprecated and will be removed in a future version."
|
94
96
|
)
|
95
|
-
def company_id(self, value: str
|
97
|
+
def company_id(self, value: str) -> None:
|
96
98
|
"""
|
97
99
|
Set the company identifier (deprecated).
|
98
100
|
|
@@ -118,7 +120,7 @@ class LanguageModelService:
|
|
118
120
|
@deprecated(
|
119
121
|
"The user_id setter is deprecated and will be removed in a future version."
|
120
122
|
)
|
121
|
-
def user_id(self, value: str
|
123
|
+
def user_id(self, value: str) -> None:
|
122
124
|
"""
|
123
125
|
Set the user identifier (deprecated).
|
124
126
|
|
@@ -193,10 +195,9 @@ class LanguageModelService:
|
|
193
195
|
"""
|
194
196
|
Calls the completion endpoint synchronously without streaming the response.
|
195
197
|
"""
|
196
|
-
[company_id] = validate_required_values([self._company_id])
|
197
198
|
|
198
199
|
return complete(
|
199
|
-
company_id=
|
200
|
+
company_id=self._company_id,
|
200
201
|
messages=messages,
|
201
202
|
model_name=model_name,
|
202
203
|
temperature=temperature,
|
@@ -221,10 +222,9 @@ class LanguageModelService:
|
|
221
222
|
"""
|
222
223
|
Calls the completion endpoint asynchronously without streaming the response.
|
223
224
|
"""
|
224
|
-
[company_id] = validate_required_values([self._company_id])
|
225
225
|
|
226
226
|
return await complete_async(
|
227
|
-
company_id=
|
227
|
+
company_id=self._company_id,
|
228
228
|
messages=messages,
|
229
229
|
model_name=model_name,
|
230
230
|
temperature=temperature,
|
@@ -277,10 +277,8 @@ class LanguageModelService:
|
|
277
277
|
start_text: str | None = None,
|
278
278
|
other_options: dict[str, Any] | None = None,
|
279
279
|
) -> LanguageModelStreamResponse:
|
280
|
-
[company_id] = validate_required_values([self._company_id])
|
281
|
-
|
282
280
|
return complete_with_references(
|
283
|
-
company_id=
|
281
|
+
company_id=self._company_id,
|
284
282
|
messages=messages,
|
285
283
|
model_name=model_name,
|
286
284
|
content_chunks=content_chunks,
|
@@ -303,10 +301,8 @@ class LanguageModelService:
|
|
303
301
|
start_text: str | None = None,
|
304
302
|
other_options: dict[str, Any] | None = None,
|
305
303
|
) -> LanguageModelStreamResponse:
|
306
|
-
[company_id] = validate_required_values([self._company_id])
|
307
|
-
|
308
304
|
return await complete_with_references_async(
|
309
|
-
company_id=
|
305
|
+
company_id=self._company_id,
|
310
306
|
messages=messages,
|
311
307
|
model_name=model_name,
|
312
308
|
content_chunks=content_chunks,
|
@@ -34,8 +34,8 @@ class ShortTermMemoryService:
|
|
34
34
|
):
|
35
35
|
self._event = event
|
36
36
|
if event:
|
37
|
-
self._company_id = event.company_id
|
38
|
-
self._user_id = event.user_id
|
37
|
+
self._company_id: str = event.company_id
|
38
|
+
self._user_id: str = event.user_id
|
39
39
|
if isinstance(event, (ChatEvent, Event)):
|
40
40
|
self._chat_id = event.payload.chat_id
|
41
41
|
self._message_id = event.payload.user_message.id
|
@@ -44,10 +44,11 @@ class ShortTermMemoryService:
|
|
44
44
|
assert (
|
45
45
|
chat_id or message_id
|
46
46
|
), "Either chat_id or message_id must be provided"
|
47
|
-
|
48
|
-
self.
|
49
|
-
self.
|
50
|
-
self.
|
47
|
+
|
48
|
+
self._company_id: str = company_id
|
49
|
+
self._user_id: str = user_id
|
50
|
+
self._chat_id: str | None = chat_id
|
51
|
+
self._message_id: str | None = message_id
|
51
52
|
|
52
53
|
@property
|
53
54
|
@deprecated(
|
@@ -79,7 +80,7 @@ class ShortTermMemoryService:
|
|
79
80
|
@deprecated(
|
80
81
|
"The company_id setter is deprecated and will be removed in a future version."
|
81
82
|
)
|
82
|
-
def company_id(self, value: str
|
83
|
+
def company_id(self, value: str) -> None:
|
83
84
|
"""
|
84
85
|
Set the company identifier (deprecated).
|
85
86
|
|
@@ -105,7 +106,7 @@ class ShortTermMemoryService:
|
|
105
106
|
@deprecated(
|
106
107
|
"The user_id setter is deprecated and will be removed in a future version."
|
107
108
|
)
|
108
|
-
def user_id(self, value: str
|
109
|
+
def user_id(self, value: str) -> None:
|
109
110
|
"""
|
110
111
|
Set the user identifier (deprecated).
|
111
112
|
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: unique_toolkit
|
3
|
-
Version: 0.7.
|
3
|
+
Version: 0.7.29
|
4
4
|
Summary:
|
5
5
|
License: Proprietary
|
6
6
|
Author: Martin Fadler
|
@@ -17,7 +17,7 @@ Requires-Dist: python-dotenv (>=1.0.1,<2.0.0)
|
|
17
17
|
Requires-Dist: regex (>=2024.5.15,<2025.0.0)
|
18
18
|
Requires-Dist: tiktoken (>=0.7.0,<0.8.0)
|
19
19
|
Requires-Dist: typing-extensions (>=4.9.0,<5.0.0)
|
20
|
-
Requires-Dist: unique-sdk (>=0.9.
|
20
|
+
Requires-Dist: unique-sdk (>=0.9.33,<0.10.0)
|
21
21
|
Description-Content-Type: text/markdown
|
22
22
|
|
23
23
|
# Unique Toolkit
|
@@ -111,6 +111,14 @@ All notable changes to this project will be documented in this file.
|
|
111
111
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
112
112
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
113
113
|
|
114
|
+
|
115
|
+
|
116
|
+
## [0.7.29] - 2025-06-19
|
117
|
+
- Fix typehintin in services
|
118
|
+
- Error on invalid initialization
|
119
|
+
|
120
|
+
#
|
121
|
+
|
114
122
|
## [0.7.28] - 2025-06-17
|
115
123
|
- Revert default factory change on `ChatEventPayload` for attribute `metadata_filter` due to error in `backend-ingestion` on empty dict
|
116
124
|
|
@@ -9,26 +9,26 @@ unique_toolkit/app/init_logging.py,sha256=Sh26SRxOj8i8dzobKhYha2lLrkrMTHfB1V4jR3
|
|
9
9
|
unique_toolkit/app/init_sdk.py,sha256=Nv4Now4pMfM0AgRhbtatLpm_39rKxn0WmRLwmPhRl-8,1285
|
10
10
|
unique_toolkit/app/performance/async_tasks.py,sha256=H0l3OAcosLwNHZ8d2pd-Di4wHIXfclEvagi5kfqLFPA,1941
|
11
11
|
unique_toolkit/app/performance/async_wrapper.py,sha256=yVVcRDkcdyfjsxro-N29SBvi-7773wnfDplef6-y8xw,1077
|
12
|
-
unique_toolkit/app/schemas.py,sha256=
|
12
|
+
unique_toolkit/app/schemas.py,sha256=f1WHnEqSMX2C_c9vtOOVNSdlSH--jK22GDbtRAKPVjc,5044
|
13
13
|
unique_toolkit/app/verification.py,sha256=GxFFwcJMy25fCA_Xe89wKW7bgqOu8PAs5y8QpHF0GSc,3861
|
14
14
|
unique_toolkit/chat/__init__.py,sha256=LRs2G-JTVuci4lbtHTkVUiNcZcSR6uqqfnAyo7af6nY,619
|
15
15
|
unique_toolkit/chat/constants.py,sha256=05kq6zjqUVB2d6_P7s-90nbljpB3ryxwCI-CAz0r2O4,83
|
16
16
|
unique_toolkit/chat/functions.py,sha256=QsJVhBXgK6jDWRYpEAt-22jy5NKGsYs4fmHrOEdHAyc,29865
|
17
17
|
unique_toolkit/chat/schemas.py,sha256=ct3BbvdQmpcNeDmJdc-Iz33LX1_3O-SGVgrsuT0B99k,2881
|
18
|
-
unique_toolkit/chat/service.py,sha256=
|
18
|
+
unique_toolkit/chat/service.py,sha256=dRydaABJspU1KlFUQ_Q-rXl9lDkhgeh99SxAguY4s_M,37432
|
19
19
|
unique_toolkit/chat/state.py,sha256=Cjgwv_2vhDFbV69xxsn7SefhaoIAEqLx3ferdVFCnOg,1445
|
20
20
|
unique_toolkit/chat/utils.py,sha256=ihm-wQykBWhB4liR3LnwPVPt_qGW6ETq21Mw4HY0THE,854
|
21
21
|
unique_toolkit/content/__init__.py,sha256=EdJg_A_7loEtCQf4cah3QARQreJx6pdz89Rm96YbMVg,940
|
22
22
|
unique_toolkit/content/constants.py,sha256=1iy4Y67xobl5VTnJB6SxSyuoBWbdLl9244xfVMUZi5o,60
|
23
23
|
unique_toolkit/content/functions.py,sha256=0ELepm3_sl0SD_SYzvQVQ-jTdrcUqK5mVJZv0nQBuAw,18367
|
24
24
|
unique_toolkit/content/schemas.py,sha256=iednldGojmoy9iPZwuIW23BfhWLE9G-fG_qAhxSgr7k,2451
|
25
|
-
unique_toolkit/content/service.py,sha256=
|
25
|
+
unique_toolkit/content/service.py,sha256=jGRTIt0JQKL6qRyZ9-_njWJejKKvIvDOzEQrf8CdMaU,19491
|
26
26
|
unique_toolkit/content/utils.py,sha256=GUVPrkZfMoAj4MRoBs5BD_7vSuLZTZx69hyWzYFrI50,7747
|
27
27
|
unique_toolkit/embedding/__init__.py,sha256=uUyzjonPvuDCYsvXCIt7ErQXopLggpzX-MEQd3_e2kE,250
|
28
28
|
unique_toolkit/embedding/constants.py,sha256=Lj8-Lcy1FvuC31PM9Exq7vaFuxQV4pEI1huUMFX-J2M,52
|
29
29
|
unique_toolkit/embedding/functions.py,sha256=3qp-BfuMAbnp8YB04rh3xH8vsJuCBPizoy-JeaBFtoQ,1944
|
30
30
|
unique_toolkit/embedding/schemas.py,sha256=1GvKCaSk4jixzVQ2PKq8yDqwGEVY_hWclYtoAr6CC2g,96
|
31
|
-
unique_toolkit/embedding/service.py,sha256=
|
31
|
+
unique_toolkit/embedding/service.py,sha256=xdR28rqxCicXN9qGPm0oaw88NAbRXJNIBwTZSARLn2g,4082
|
32
32
|
unique_toolkit/embedding/utils.py,sha256=v86lo__bCJbxZBQ3OcLu5SuwT6NbFfWlcq8iyk6BuzQ,279
|
33
33
|
unique_toolkit/evaluators/__init__.py,sha256=3Rfpnowm7MUXHWmeU4UV4s_3Hk-sw3V20oBwQCYlejQ,50
|
34
34
|
unique_toolkit/evaluators/config.py,sha256=_DIXToJ-hGNpDAdWa7Q6GMjAsxiC_DquLF-SS5s9rTE,717
|
@@ -52,17 +52,17 @@ unique_toolkit/language_model/infos.py,sha256=peJ4cSJC__jGLWZoOZGRhoersmkwFmclsX
|
|
52
52
|
unique_toolkit/language_model/prompt.py,sha256=JSawaLjQg3VR-E2fK8engFyJnNdk21zaO8pPIodzN4Q,3991
|
53
53
|
unique_toolkit/language_model/reference.py,sha256=TrRfnxd-cjpdijmZ1dKII87aEACIbW7iU_cE9gtGuH4,8314
|
54
54
|
unique_toolkit/language_model/schemas.py,sha256=DJD2aoMfs2Irnc4rzOrVuV4Fbt84LQAiDGG5rse1dgk,12770
|
55
|
-
unique_toolkit/language_model/service.py,sha256=
|
55
|
+
unique_toolkit/language_model/service.py,sha256=VRkUk2XbijqGlnTTvqU7uCue6qtT7lpLd_Y8f3bWv1I,10486
|
56
56
|
unique_toolkit/language_model/utils.py,sha256=bPQ4l6_YO71w-zaIPanUUmtbXC1_hCvLK0tAFc3VCRc,1902
|
57
57
|
unique_toolkit/protocols/support.py,sha256=V15WEIFKVMyF1QCnR8vIi4GrJy4dfTCB6d6JlqPZ58o,2341
|
58
58
|
unique_toolkit/short_term_memory/__init__.py,sha256=2mI3AUrffgH7Yt-xS57EGqnHf7jnn6xquoKEhJqk3Wg,185
|
59
59
|
unique_toolkit/short_term_memory/constants.py,sha256=698CL6-wjup2MvU19RxSmQk3gX7aqW_OOpZB7sbz_Xg,34
|
60
60
|
unique_toolkit/short_term_memory/functions.py,sha256=3WiK-xatY5nh4Dr5zlDUye1k3E6kr41RiscwtTplw5k,4484
|
61
61
|
unique_toolkit/short_term_memory/schemas.py,sha256=OhfcXyF6ACdwIXW45sKzjtZX_gkcJs8FEZXcgQTNenw,1406
|
62
|
-
unique_toolkit/short_term_memory/service.py,sha256=
|
62
|
+
unique_toolkit/short_term_memory/service.py,sha256=cqpXA0nMbi4PhFweg-Cql3u0RvaTi5c8Xjv0uHMiSGc,8112
|
63
63
|
unique_toolkit/smart_rules/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
64
|
-
unique_toolkit/smart_rules/compile.py,sha256=
|
65
|
-
unique_toolkit-0.7.
|
66
|
-
unique_toolkit-0.7.
|
67
|
-
unique_toolkit-0.7.
|
68
|
-
unique_toolkit-0.7.
|
64
|
+
unique_toolkit/smart_rules/compile.py,sha256=cxWjb2dxEI2HGsakKdVCkSNi7VK9mr08w5sDcFCQyWI,9553
|
65
|
+
unique_toolkit-0.7.29.dist-info/LICENSE,sha256=GlN8wHNdh53xwOPg44URnwag6TEolCjoq3YD_KrWgss,193
|
66
|
+
unique_toolkit-0.7.29.dist-info/METADATA,sha256=9-GvYOZhYI_KjxC9SVHK2lU5cniY1ZPAPoY9CGKkdrw,24255
|
67
|
+
unique_toolkit-0.7.29.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
|
68
|
+
unique_toolkit-0.7.29.dist-info/RECORD,,
|
File without changes
|
File without changes
|