phenoml 0.0.7__py3-none-any.whl → 0.0.9__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.
- phenoml/agent/client.py +38 -2
- phenoml/agent/raw_client.py +24 -0
- phenoml/client.py +7 -4
- phenoml/construe/__init__.py +2 -16
- phenoml/construe/client.py +0 -90
- phenoml/construe/raw_client.py +0 -180
- phenoml/construe/types/__init__.py +2 -20
- phenoml/construe/types/extract_request_config.py +33 -4
- phenoml/construe/types/extract_request_config_chunking_method.py +3 -1
- phenoml/construe/types/extract_request_config_validation_method.py +5 -0
- phenoml/construe/types/extract_request_system.py +2 -0
- phenoml/core/client_wrapper.py +8 -10
- phenoml/fhir/client.py +116 -14
- phenoml/fhir/raw_client.py +84 -0
- phenoml/fhir_provider/__init__.py +2 -0
- phenoml/fhir_provider/client.py +21 -4
- phenoml/fhir_provider/raw_client.py +23 -6
- phenoml/fhir_provider/types/__init__.py +2 -0
- phenoml/fhir_provider/types/auth_method.py +1 -1
- phenoml/fhir_provider/types/role.py +27 -0
- phenoml/summary/__init__.py +39 -0
- phenoml/summary/client.py +656 -0
- phenoml/summary/errors/__init__.py +11 -0
- phenoml/summary/errors/bad_request_error.py +10 -0
- phenoml/summary/errors/forbidden_error.py +10 -0
- phenoml/summary/errors/internal_server_error.py +10 -0
- phenoml/summary/errors/not_found_error.py +10 -0
- phenoml/summary/errors/unauthorized_error.py +10 -0
- phenoml/summary/raw_client.py +1190 -0
- phenoml/summary/types/__init__.py +31 -0
- phenoml/summary/types/create_summary_request_fhir_resources.py +8 -0
- phenoml/summary/types/create_summary_request_mode.py +5 -0
- phenoml/{construe/types/construe_cohort_response_queries_item_code_extract_results_item_codes_item.py → summary/types/create_summary_response.py} +7 -10
- phenoml/summary/types/create_summary_template_response.py +23 -0
- phenoml/summary/types/fhir_bundle.py +23 -0
- phenoml/{construe/types/bad_request_error_body.py → summary/types/fhir_bundle_entry_item.py} +3 -10
- phenoml/{construe/types/unauthorized_error_body.py → summary/types/fhir_resource.py} +5 -8
- phenoml/{construe/types/internal_server_error_body.py → summary/types/summary_delete_template_response.py} +3 -10
- phenoml/summary/types/summary_get_template_response.py +21 -0
- phenoml/summary/types/summary_list_templates_response.py +21 -0
- phenoml/summary/types/summary_template.py +41 -0
- phenoml/summary/types/summary_update_template_response.py +22 -0
- phenoml/tools/client.py +112 -6
- phenoml/tools/raw_client.py +82 -2
- {phenoml-0.0.7.dist-info → phenoml-0.0.9.dist-info}/METADATA +1 -1
- {phenoml-0.0.7.dist-info → phenoml-0.0.9.dist-info}/RECORD +48 -32
- phenoml/construe/types/construe_cohort_request_config.py +0 -37
- phenoml/construe/types/construe_cohort_response.py +0 -33
- phenoml/construe/types/construe_cohort_response_queries_item.py +0 -49
- phenoml/construe/types/construe_cohort_response_queries_item_code_extract_results_item.py +0 -31
- {phenoml-0.0.7.dist-info → phenoml-0.0.9.dist-info}/LICENSE +0 -0
- {phenoml-0.0.7.dist-info → phenoml-0.0.9.dist-info}/WHEEL +0 -0
phenoml/tools/raw_client.py
CHANGED
|
@@ -31,6 +31,8 @@ class RawToolsClient:
|
|
|
31
31
|
*,
|
|
32
32
|
resource: Lang2FhirAndCreateRequestResource,
|
|
33
33
|
text: str,
|
|
34
|
+
phenoml_on_behalf_of: typing.Optional[str] = None,
|
|
35
|
+
phenoml_fhir_provider: typing.Optional[str] = None,
|
|
34
36
|
provider: typing.Optional[str] = OMIT,
|
|
35
37
|
request_options: typing.Optional[RequestOptions] = None,
|
|
36
38
|
) -> HttpResponse[Lang2FhirAndCreateResponse]:
|
|
@@ -45,6 +47,14 @@ class RawToolsClient:
|
|
|
45
47
|
text : str
|
|
46
48
|
Natural language text to convert to FHIR resource
|
|
47
49
|
|
|
50
|
+
phenoml_on_behalf_of : typing.Optional[str]
|
|
51
|
+
Optional header for on-behalf-of authentication. Used when making requests on behalf of another user or entity.
|
|
52
|
+
Must be in the format: Patient/{uuid} or Practitioner/{uuid}
|
|
53
|
+
|
|
54
|
+
phenoml_fhir_provider : typing.Optional[str]
|
|
55
|
+
Optional header for FHIR provider authentication. Contains credentials in the format {fhir_provider_id}:{oauth2_token}.
|
|
56
|
+
Multiple FHIR provider integrations can be provided as comma-separated values.
|
|
57
|
+
|
|
48
58
|
provider : typing.Optional[str]
|
|
49
59
|
FHIR provider ID - must be a valid UUID from existing FHIR providers. also supports provider by name (e.g. medplum)
|
|
50
60
|
|
|
@@ -66,6 +76,8 @@ class RawToolsClient:
|
|
|
66
76
|
},
|
|
67
77
|
headers={
|
|
68
78
|
"content-type": "application/json",
|
|
79
|
+
"X-Phenoml-On-Behalf-Of": str(phenoml_on_behalf_of) if phenoml_on_behalf_of is not None else None,
|
|
80
|
+
"X-Phenoml-Fhir-Provider": str(phenoml_fhir_provider) if phenoml_fhir_provider is not None else None,
|
|
69
81
|
},
|
|
70
82
|
request_options=request_options,
|
|
71
83
|
omit=OMIT,
|
|
@@ -144,6 +156,8 @@ class RawToolsClient:
|
|
|
144
156
|
self,
|
|
145
157
|
*,
|
|
146
158
|
text: str,
|
|
159
|
+
phenoml_on_behalf_of: typing.Optional[str] = None,
|
|
160
|
+
phenoml_fhir_provider: typing.Optional[str] = None,
|
|
147
161
|
patient_id: typing.Optional[str] = OMIT,
|
|
148
162
|
practitioner_id: typing.Optional[str] = OMIT,
|
|
149
163
|
count: typing.Optional[int] = OMIT,
|
|
@@ -158,6 +172,14 @@ class RawToolsClient:
|
|
|
158
172
|
text : str
|
|
159
173
|
Natural language text to convert to FHIR search parameters
|
|
160
174
|
|
|
175
|
+
phenoml_on_behalf_of : typing.Optional[str]
|
|
176
|
+
Optional header for on-behalf-of authentication. Used when making requests on behalf of another user or entity.
|
|
177
|
+
Must be in the format: Patient/{uuid} or Practitioner/{uuid}
|
|
178
|
+
|
|
179
|
+
phenoml_fhir_provider : typing.Optional[str]
|
|
180
|
+
Optional header for FHIR provider authentication. Contains credentials in the format {fhir_provider_id}:{oauth2_token}.
|
|
181
|
+
Multiple FHIR provider integrations can be provided as comma-separated values.
|
|
182
|
+
|
|
161
183
|
patient_id : typing.Optional[str]
|
|
162
184
|
Patient ID to filter results
|
|
163
185
|
|
|
@@ -190,6 +212,8 @@ class RawToolsClient:
|
|
|
190
212
|
},
|
|
191
213
|
headers={
|
|
192
214
|
"content-type": "application/json",
|
|
215
|
+
"X-Phenoml-On-Behalf-Of": str(phenoml_on_behalf_of) if phenoml_on_behalf_of is not None else None,
|
|
216
|
+
"X-Phenoml-Fhir-Provider": str(phenoml_fhir_provider) if phenoml_fhir_provider is not None else None,
|
|
193
217
|
},
|
|
194
218
|
request_options=request_options,
|
|
195
219
|
omit=OMIT,
|
|
@@ -265,7 +289,13 @@ class RawToolsClient:
|
|
|
265
289
|
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
|
|
266
290
|
|
|
267
291
|
def analyze_cohort(
|
|
268
|
-
self,
|
|
292
|
+
self,
|
|
293
|
+
*,
|
|
294
|
+
text: str,
|
|
295
|
+
provider: str,
|
|
296
|
+
phenoml_on_behalf_of: typing.Optional[str] = None,
|
|
297
|
+
phenoml_fhir_provider: typing.Optional[str] = None,
|
|
298
|
+
request_options: typing.Optional[RequestOptions] = None,
|
|
269
299
|
) -> HttpResponse[CohortResponse]:
|
|
270
300
|
"""
|
|
271
301
|
Uses LLM to extract search concepts from natural language and builds patient cohorts with inclusion/exclusion criteria
|
|
@@ -278,6 +308,14 @@ class RawToolsClient:
|
|
|
278
308
|
provider : str
|
|
279
309
|
FHIR provider ID - must be a valid UUID from existing FHIR providers. also supports provider by name (e.g. medplum)
|
|
280
310
|
|
|
311
|
+
phenoml_on_behalf_of : typing.Optional[str]
|
|
312
|
+
Optional header for on-behalf-of authentication. Used when making requests on behalf of another user or entity.
|
|
313
|
+
Must be in the format: Patient/{uuid} or Practitioner/{uuid}
|
|
314
|
+
|
|
315
|
+
phenoml_fhir_provider : typing.Optional[str]
|
|
316
|
+
Optional header for FHIR provider authentication. Contains credentials in the format {fhir_provider_id}:{oauth2_token}.
|
|
317
|
+
Multiple FHIR provider integrations can be provided as comma-separated values.
|
|
318
|
+
|
|
281
319
|
request_options : typing.Optional[RequestOptions]
|
|
282
320
|
Request-specific configuration.
|
|
283
321
|
|
|
@@ -295,6 +333,8 @@ class RawToolsClient:
|
|
|
295
333
|
},
|
|
296
334
|
headers={
|
|
297
335
|
"content-type": "application/json",
|
|
336
|
+
"X-Phenoml-On-Behalf-Of": str(phenoml_on_behalf_of) if phenoml_on_behalf_of is not None else None,
|
|
337
|
+
"X-Phenoml-Fhir-Provider": str(phenoml_fhir_provider) if phenoml_fhir_provider is not None else None,
|
|
298
338
|
},
|
|
299
339
|
request_options=request_options,
|
|
300
340
|
omit=OMIT,
|
|
@@ -368,6 +408,8 @@ class AsyncRawToolsClient:
|
|
|
368
408
|
*,
|
|
369
409
|
resource: Lang2FhirAndCreateRequestResource,
|
|
370
410
|
text: str,
|
|
411
|
+
phenoml_on_behalf_of: typing.Optional[str] = None,
|
|
412
|
+
phenoml_fhir_provider: typing.Optional[str] = None,
|
|
371
413
|
provider: typing.Optional[str] = OMIT,
|
|
372
414
|
request_options: typing.Optional[RequestOptions] = None,
|
|
373
415
|
) -> AsyncHttpResponse[Lang2FhirAndCreateResponse]:
|
|
@@ -382,6 +424,14 @@ class AsyncRawToolsClient:
|
|
|
382
424
|
text : str
|
|
383
425
|
Natural language text to convert to FHIR resource
|
|
384
426
|
|
|
427
|
+
phenoml_on_behalf_of : typing.Optional[str]
|
|
428
|
+
Optional header for on-behalf-of authentication. Used when making requests on behalf of another user or entity.
|
|
429
|
+
Must be in the format: Patient/{uuid} or Practitioner/{uuid}
|
|
430
|
+
|
|
431
|
+
phenoml_fhir_provider : typing.Optional[str]
|
|
432
|
+
Optional header for FHIR provider authentication. Contains credentials in the format {fhir_provider_id}:{oauth2_token}.
|
|
433
|
+
Multiple FHIR provider integrations can be provided as comma-separated values.
|
|
434
|
+
|
|
385
435
|
provider : typing.Optional[str]
|
|
386
436
|
FHIR provider ID - must be a valid UUID from existing FHIR providers. also supports provider by name (e.g. medplum)
|
|
387
437
|
|
|
@@ -403,6 +453,8 @@ class AsyncRawToolsClient:
|
|
|
403
453
|
},
|
|
404
454
|
headers={
|
|
405
455
|
"content-type": "application/json",
|
|
456
|
+
"X-Phenoml-On-Behalf-Of": str(phenoml_on_behalf_of) if phenoml_on_behalf_of is not None else None,
|
|
457
|
+
"X-Phenoml-Fhir-Provider": str(phenoml_fhir_provider) if phenoml_fhir_provider is not None else None,
|
|
406
458
|
},
|
|
407
459
|
request_options=request_options,
|
|
408
460
|
omit=OMIT,
|
|
@@ -481,6 +533,8 @@ class AsyncRawToolsClient:
|
|
|
481
533
|
self,
|
|
482
534
|
*,
|
|
483
535
|
text: str,
|
|
536
|
+
phenoml_on_behalf_of: typing.Optional[str] = None,
|
|
537
|
+
phenoml_fhir_provider: typing.Optional[str] = None,
|
|
484
538
|
patient_id: typing.Optional[str] = OMIT,
|
|
485
539
|
practitioner_id: typing.Optional[str] = OMIT,
|
|
486
540
|
count: typing.Optional[int] = OMIT,
|
|
@@ -495,6 +549,14 @@ class AsyncRawToolsClient:
|
|
|
495
549
|
text : str
|
|
496
550
|
Natural language text to convert to FHIR search parameters
|
|
497
551
|
|
|
552
|
+
phenoml_on_behalf_of : typing.Optional[str]
|
|
553
|
+
Optional header for on-behalf-of authentication. Used when making requests on behalf of another user or entity.
|
|
554
|
+
Must be in the format: Patient/{uuid} or Practitioner/{uuid}
|
|
555
|
+
|
|
556
|
+
phenoml_fhir_provider : typing.Optional[str]
|
|
557
|
+
Optional header for FHIR provider authentication. Contains credentials in the format {fhir_provider_id}:{oauth2_token}.
|
|
558
|
+
Multiple FHIR provider integrations can be provided as comma-separated values.
|
|
559
|
+
|
|
498
560
|
patient_id : typing.Optional[str]
|
|
499
561
|
Patient ID to filter results
|
|
500
562
|
|
|
@@ -527,6 +589,8 @@ class AsyncRawToolsClient:
|
|
|
527
589
|
},
|
|
528
590
|
headers={
|
|
529
591
|
"content-type": "application/json",
|
|
592
|
+
"X-Phenoml-On-Behalf-Of": str(phenoml_on_behalf_of) if phenoml_on_behalf_of is not None else None,
|
|
593
|
+
"X-Phenoml-Fhir-Provider": str(phenoml_fhir_provider) if phenoml_fhir_provider is not None else None,
|
|
530
594
|
},
|
|
531
595
|
request_options=request_options,
|
|
532
596
|
omit=OMIT,
|
|
@@ -602,7 +666,13 @@ class AsyncRawToolsClient:
|
|
|
602
666
|
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
|
|
603
667
|
|
|
604
668
|
async def analyze_cohort(
|
|
605
|
-
self,
|
|
669
|
+
self,
|
|
670
|
+
*,
|
|
671
|
+
text: str,
|
|
672
|
+
provider: str,
|
|
673
|
+
phenoml_on_behalf_of: typing.Optional[str] = None,
|
|
674
|
+
phenoml_fhir_provider: typing.Optional[str] = None,
|
|
675
|
+
request_options: typing.Optional[RequestOptions] = None,
|
|
606
676
|
) -> AsyncHttpResponse[CohortResponse]:
|
|
607
677
|
"""
|
|
608
678
|
Uses LLM to extract search concepts from natural language and builds patient cohorts with inclusion/exclusion criteria
|
|
@@ -615,6 +685,14 @@ class AsyncRawToolsClient:
|
|
|
615
685
|
provider : str
|
|
616
686
|
FHIR provider ID - must be a valid UUID from existing FHIR providers. also supports provider by name (e.g. medplum)
|
|
617
687
|
|
|
688
|
+
phenoml_on_behalf_of : typing.Optional[str]
|
|
689
|
+
Optional header for on-behalf-of authentication. Used when making requests on behalf of another user or entity.
|
|
690
|
+
Must be in the format: Patient/{uuid} or Practitioner/{uuid}
|
|
691
|
+
|
|
692
|
+
phenoml_fhir_provider : typing.Optional[str]
|
|
693
|
+
Optional header for FHIR provider authentication. Contains credentials in the format {fhir_provider_id}:{oauth2_token}.
|
|
694
|
+
Multiple FHIR provider integrations can be provided as comma-separated values.
|
|
695
|
+
|
|
618
696
|
request_options : typing.Optional[RequestOptions]
|
|
619
697
|
Request-specific configuration.
|
|
620
698
|
|
|
@@ -632,6 +710,8 @@ class AsyncRawToolsClient:
|
|
|
632
710
|
},
|
|
633
711
|
headers={
|
|
634
712
|
"content-type": "application/json",
|
|
713
|
+
"X-Phenoml-On-Behalf-Of": str(phenoml_on_behalf_of) if phenoml_on_behalf_of is not None else None,
|
|
714
|
+
"X-Phenoml-Fhir-Provider": str(phenoml_fhir_provider) if phenoml_fhir_provider is not None else None,
|
|
635
715
|
},
|
|
636
716
|
request_options=request_options,
|
|
637
717
|
omit=OMIT,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
phenoml/__init__.py,sha256=SeYOCP1ABPA3aB2UDDPr5DOYT4UKKQcw1CHW49I51X8,778
|
|
2
2
|
phenoml/agent/__init__.py,sha256=oHLnXLJ_uzj3zAtpAUaoXuWZcxl1K8cQh2ommFsp1Kg,1433
|
|
3
|
-
phenoml/agent/client.py,sha256=
|
|
3
|
+
phenoml/agent/client.py,sha256=ITjohJGQ0RqsAlFFhCX1Dl7h4GKg0XfncbRSh2uxvqE,27597
|
|
4
4
|
phenoml/agent/errors/__init__.py,sha256=Wnvf4XPELmAIZ-jVxx2t-dBNZ-X9PcDxPSL5EHqJr1Q,434
|
|
5
5
|
phenoml/agent/errors/bad_request_error.py,sha256=nv0bK4gtOnTon6a2NdVxJxHBje_O_7wIoRtXLZHovUQ,339
|
|
6
6
|
phenoml/agent/errors/forbidden_error.py,sha256=ek8-sffTy9gY3F0zyaSkcskDVvq9puXP_YvvB2BJYbA,338
|
|
@@ -13,7 +13,7 @@ phenoml/agent/prompts/raw_client.py,sha256=n2R6TL8Rjix8ewpA3b3J68hy_sqlBOxMYMNcV
|
|
|
13
13
|
phenoml/agent/prompts/types/__init__.py,sha256=N-qiOKtvTg2c7r8DaBddWQDaqjAEve1W-K-yCRLCi84,259
|
|
14
14
|
phenoml/agent/prompts/types/prompts_delete_response.py,sha256=hG7Y3lEyBAF2-cIIicRO5RVoBNOajNR9PHQ-1L2kMK8,599
|
|
15
15
|
phenoml/agent/prompts/types/prompts_list_response.py,sha256=7OzSEUyw2frge0HO7BiZf-I_DJBF0o5e20qsmK1-24s,714
|
|
16
|
-
phenoml/agent/raw_client.py,sha256=
|
|
16
|
+
phenoml/agent/raw_client.py,sha256=7Yx79x2NTWMVbz3UzWC04v1lhPLvAXozaF5k4uAMzfw,65988
|
|
17
17
|
phenoml/agent/types/__init__.py,sha256=jMiQhVO3NTKEv5Qm6ZyAeBueWCEFJUzAd78FSsetdME,1566
|
|
18
18
|
phenoml/agent/types/agent_chat_response.py,sha256=GqPcv7lyZlsypeqFwf1ecouik9A-9xDde0sckYOc8lA,862
|
|
19
19
|
phenoml/agent/types/agent_create_request.py,sha256=zHEnDylu2M6ZcgfxwWJvXTdMa70UqJ6tTYhLMRK151E,1411
|
|
@@ -47,7 +47,7 @@ phenoml/authtoken/raw_client.py,sha256=85R3SJneFJ-fxGXzYOz_Se01pJ9bKXDTB_BP903PL
|
|
|
47
47
|
phenoml/authtoken/types/__init__.py,sha256=ruKn1OfqKNJmeB1h39vh7-8srePTRpWsqGQzCH9_vok,260
|
|
48
48
|
phenoml/authtoken/types/bad_request_error_body.py,sha256=9D69GH2JTNatHxwC7fDlFhTmRKIJ3jRojQP3MwmJ1KI,672
|
|
49
49
|
phenoml/authtoken/types/unauthorized_error_body.py,sha256=fqqAo2_kWj0nNwLjm1fd-2lQPu5QhPuJP0yB7yE8sRw,674
|
|
50
|
-
phenoml/client.py,sha256=
|
|
50
|
+
phenoml/client.py,sha256=jc98KWXJuLEAyDq9bCobbzQATmEbi-RioE_K49ExbxI,7835
|
|
51
51
|
phenoml/cohort/__init__.py,sha256=T7swsjx17aidvorMPqyak0JeX13MT4itAEQvNHNOxuE,320
|
|
52
52
|
phenoml/cohort/client.py,sha256=4bA8cffE6EvLZVMveJ2_aGu90vtXUHYTfO0E9EQuN9U,3312
|
|
53
53
|
phenoml/cohort/errors/__init__.py,sha256=su56D86txLO0suHwq_Yixg4EaMbSyaB00cma1beOFGE,312
|
|
@@ -58,34 +58,27 @@ phenoml/cohort/raw_client.py,sha256=yhquYZ6fNyhAJG_-6YwQqLMOcIP_JvojryxOEXt_Qfc,
|
|
|
58
58
|
phenoml/cohort/types/__init__.py,sha256=zNq1Pom_534srvUJxnEcFPoUK98Cr4oYzPxvL_ifBmc,218
|
|
59
59
|
phenoml/cohort/types/cohort_response.py,sha256=A0ekTeNT6jh_yMRAcdnMoavcrqUGKZuy_6-k4YwoFmk,981
|
|
60
60
|
phenoml/cohort/types/search_concept.py,sha256=yIGRoIp8ASZ0I0G-9UA6eTseoZPwHrUuvRRQMamf4yA,1041
|
|
61
|
-
phenoml/construe/__init__.py,sha256=
|
|
62
|
-
phenoml/construe/client.py,sha256=
|
|
61
|
+
phenoml/construe/__init__.py,sha256=cn_KBBh2epzr6fQAEc8WYPK4RtD2gT2tZmz-FfHFAQM,870
|
|
62
|
+
phenoml/construe/client.py,sha256=VdITc7hZo_ihFPX5_S6sDaxaYoxhRNIYMmTLs8UCSv8,9395
|
|
63
63
|
phenoml/construe/errors/__init__.py,sha256=vqkSMWgMY6cxAgnI7Gij9m9UwXrlDWmMS12HylhMSi4,455
|
|
64
64
|
phenoml/construe/errors/bad_request_error.py,sha256=nv0bK4gtOnTon6a2NdVxJxHBje_O_7wIoRtXLZHovUQ,339
|
|
65
65
|
phenoml/construe/errors/conflict_error.py,sha256=NyA4yoleBcQcrDK2rF79eVs62xclhih2kpEIBlAToow,337
|
|
66
66
|
phenoml/construe/errors/failed_dependency_error.py,sha256=eXiqG062inkUF7fs2Newhx9uAKReK6fosz29PMD4gVw,345
|
|
67
67
|
phenoml/construe/errors/internal_server_error.py,sha256=biBHJfSP1_zWF5CJgxY4B8wrL1uC18RSccQ-BCKmYNs,343
|
|
68
68
|
phenoml/construe/errors/unauthorized_error.py,sha256=h8T6QhXuTo0GLL9MKfIM5p--wDqlB1-ZkMp3lY-aM3E,341
|
|
69
|
-
phenoml/construe/raw_client.py,sha256=
|
|
70
|
-
phenoml/construe/types/__init__.py,sha256=
|
|
71
|
-
phenoml/construe/types/bad_request_error_body.py,sha256=YQ-qSOtzI9G3La2W-xCRbYJCM-rlVct6F6T9Yu8EvCQ,716
|
|
72
|
-
phenoml/construe/types/construe_cohort_request_config.py,sha256=W-9C8RieHtMy1AmhNVK1ITtjJykFvsy34SFH-IQLH24,1272
|
|
73
|
-
phenoml/construe/types/construe_cohort_response.py,sha256=NDJB5ZKUiXyaq5x8OMtNDDuLBN5S0SkOiIwK7dvxi2o,1201
|
|
74
|
-
phenoml/construe/types/construe_cohort_response_queries_item.py,sha256=g5N89Hbh4kXAo5wwj6RczpmzixKHG_Mk7LMIr4ZAHtI,1561
|
|
75
|
-
phenoml/construe/types/construe_cohort_response_queries_item_code_extract_results_item.py,sha256=SFsD7pLvYTqRC4TzqxDL2FV9eXjX9WwpfcRFBb7t2Ho,1120
|
|
76
|
-
phenoml/construe/types/construe_cohort_response_queries_item_code_extract_results_item_codes_item.py,sha256=wpXzzwabEE2hO0Q5gSFEBcn9EWSYnX0LV6RaCRzbK_Q,893
|
|
69
|
+
phenoml/construe/raw_client.py,sha256=xXhtTmLzDELw9TEXWSKk9ZK2UXYNKMfp3IAk2EKxzl0,20722
|
|
70
|
+
phenoml/construe/types/__init__.py,sha256=Id0OJ58ZEQX9Ut-7iMwWEv49MTJLTTmNPH9es1ya8Cw,900
|
|
77
71
|
phenoml/construe/types/construe_upload_code_system_response.py,sha256=s0m5EHpkhkp7hYiC5zLZeIeqQ4mrwXlPI1Msihb-ZGo,566
|
|
78
72
|
phenoml/construe/types/extract_codes_result.py,sha256=DbVDLWqtmt9TyD5MC0q8grgnNXPnXq4eJnLDinTe0uc,701
|
|
79
|
-
phenoml/construe/types/extract_request_config.py,sha256
|
|
80
|
-
phenoml/construe/types/extract_request_config_chunking_method.py,sha256=
|
|
81
|
-
phenoml/construe/types/
|
|
73
|
+
phenoml/construe/types/extract_request_config.py,sha256=-N_yPxXcWeuFx2JNOJIGHjtyJNSFMOGslmLbjYxMh18,1831
|
|
74
|
+
phenoml/construe/types/extract_request_config_chunking_method.py,sha256=AmVPPj0oT5r0pwWUoFxG_K8s5g8xaGYIRsPt3VvqSXQ,209
|
|
75
|
+
phenoml/construe/types/extract_request_config_validation_method.py,sha256=6uUqKn8DXF34EDtNKPa6KLW07DsxgQF2aR5BGdG5Fd4,199
|
|
76
|
+
phenoml/construe/types/extract_request_system.py,sha256=50qkxvinJKS5y1_glr-OFe5tQRyMWLYpeny1NZ9gFzw,1191
|
|
82
77
|
phenoml/construe/types/extracted_code_result.py,sha256=LmhaQYFeLXBWR_NWcF1c-qt3OqwWQduefvInJRHcvio,1121
|
|
83
|
-
phenoml/construe/types/internal_server_error_body.py,sha256=LbZ3C6FayIwL-0oBJAcsSoLF6F4lcz2d3osoNPBCM44,720
|
|
84
|
-
phenoml/construe/types/unauthorized_error_body.py,sha256=j7msnWr6ENYKxLVrfi2ZTg4eh1b1rSyd1VNSsBbOIAc,718
|
|
85
78
|
phenoml/construe/types/upload_request_format.py,sha256=5mJhMM7R7hn6gGQNDJT9lxPDsRpUkRzqNxtRU0Nnlls,158
|
|
86
79
|
phenoml/core/__init__.py,sha256=lTcqUPXcx4112yLDd70RAPeqq6tu3eFMe1pKOqkW9JQ,1562
|
|
87
80
|
phenoml/core/api_error.py,sha256=44vPoTyWN59gonCIZMdzw7M1uspygiLnr3GNFOoVL2Q,614
|
|
88
|
-
phenoml/core/client_wrapper.py,sha256=
|
|
81
|
+
phenoml/core/client_wrapper.py,sha256=G0rdPUowZQHvCLjiF-pS4NXjXKlLAT9VbkywHyrcpAg,2641
|
|
89
82
|
phenoml/core/datetime_utils.py,sha256=nBys2IsYrhPdszxGKCNRPSOCwa-5DWOHG95FB8G9PKo,1047
|
|
90
83
|
phenoml/core/file.py,sha256=d4NNbX8XvXP32z8KpK2Xovv33nFfruIrpz0QWxlgpZk,2663
|
|
91
84
|
phenoml/core/force_multipart.py,sha256=awxh5MtcRYe74ehY8U76jzv6fYM_w_D3Rur7KQQzSDk,429
|
|
@@ -99,13 +92,13 @@ phenoml/core/request_options.py,sha256=h0QUNCFVdCW_7GclVySCAY2w4NhtXVBUCmHgmzaxp
|
|
|
99
92
|
phenoml/core/serialization.py,sha256=ECL3bvv_0i7U4uvPidZCNel--MUbA0iq0aGcNKi3kws,9818
|
|
100
93
|
phenoml/environment.py,sha256=x2TB5u9AblwVCke6_38YZmVhcjjHLE5gXBo5TMeaeO8,164
|
|
101
94
|
phenoml/fhir/__init__.py,sha256=CGOe2OSGyiryHY66fcRyZXsSMHiM5Y_GkTNPUqzwTP8,910
|
|
102
|
-
phenoml/fhir/client.py,sha256=
|
|
95
|
+
phenoml/fhir/client.py,sha256=1hQSCDOYsC89zPlPWHJIKgVBa-j8mRT_97lDHFJ3jN8,43581
|
|
103
96
|
phenoml/fhir/errors/__init__.py,sha256=1K_bceYvXUdWyvhH-WRwOEcc1gkiT_K6kGrs3VKg3PA,372
|
|
104
97
|
phenoml/fhir/errors/bad_request_error.py,sha256=nv0bK4gtOnTon6a2NdVxJxHBje_O_7wIoRtXLZHovUQ,339
|
|
105
98
|
phenoml/fhir/errors/internal_server_error.py,sha256=biBHJfSP1_zWF5CJgxY4B8wrL1uC18RSccQ-BCKmYNs,343
|
|
106
99
|
phenoml/fhir/errors/not_found_error.py,sha256=hQ1KdyGQJCBQqo6iLu2-szlKJdzaoV5odq_7kdXAEbc,337
|
|
107
100
|
phenoml/fhir/errors/unauthorized_error.py,sha256=h8T6QhXuTo0GLL9MKfIM5p--wDqlB1-ZkMp3lY-aM3E,341
|
|
108
|
-
phenoml/fhir/raw_client.py,sha256=
|
|
101
|
+
phenoml/fhir/raw_client.py,sha256=XZE1iWjujv5hSROSSo8kdG773l6T_vKV66iZYqcvNks,66380
|
|
109
102
|
phenoml/fhir/types/__init__.py,sha256=J9Gj1h5TZ5mNjBYE-Vn2bVPR3VCRwRIf1BrS5DHQrV4,1054
|
|
110
103
|
phenoml/fhir/types/error_response.py,sha256=Vw1veSbj51ki93gmYml3fRjB6XAEwvnkcYkSNhyLDeU,897
|
|
111
104
|
phenoml/fhir/types/fhir_bundle.py,sha256=p_CsuL2U1q7Qzmkdu6vCBtNZLznWmHXw5WtMzDnstdE,1373
|
|
@@ -118,17 +111,17 @@ phenoml/fhir/types/fhir_patch_request_body_item_op.py,sha256=qOU6uYuWoscQ876W58a
|
|
|
118
111
|
phenoml/fhir/types/fhir_resource.py,sha256=kZxeWoOMiGqwfwdxgdWg3NUjFFTuVKCAv6Ty80myhuI,1223
|
|
119
112
|
phenoml/fhir/types/fhir_resource_meta.py,sha256=9nXzZ7V7u0x9ehDyjoydmVl7leXzzvIOzxSQJSYmHbk,934
|
|
120
113
|
phenoml/fhir/types/fhir_search_response.py,sha256=rUuRN_iECtOyETTKGx4WNBinrvC0XU4ivsPipI6OyHw,217
|
|
121
|
-
phenoml/fhir_provider/__init__.py,sha256=
|
|
122
|
-
phenoml/fhir_provider/client.py,sha256=
|
|
114
|
+
phenoml/fhir_provider/__init__.py,sha256=eJCs8myQf5vFvBw61XfbU2zREeU2Twq_epJYlX6ldE4,1142
|
|
115
|
+
phenoml/fhir_provider/client.py,sha256=htt7uajiTavAIUe5-45ucaAX0evxcEulHaFV1Hcgaug,23429
|
|
123
116
|
phenoml/fhir_provider/errors/__init__.py,sha256=Wnvf4XPELmAIZ-jVxx2t-dBNZ-X9PcDxPSL5EHqJr1Q,434
|
|
124
117
|
phenoml/fhir_provider/errors/bad_request_error.py,sha256=nv0bK4gtOnTon6a2NdVxJxHBje_O_7wIoRtXLZHovUQ,339
|
|
125
118
|
phenoml/fhir_provider/errors/forbidden_error.py,sha256=ek8-sffTy9gY3F0zyaSkcskDVvq9puXP_YvvB2BJYbA,338
|
|
126
119
|
phenoml/fhir_provider/errors/internal_server_error.py,sha256=biBHJfSP1_zWF5CJgxY4B8wrL1uC18RSccQ-BCKmYNs,343
|
|
127
120
|
phenoml/fhir_provider/errors/not_found_error.py,sha256=hQ1KdyGQJCBQqo6iLu2-szlKJdzaoV5odq_7kdXAEbc,337
|
|
128
121
|
phenoml/fhir_provider/errors/unauthorized_error.py,sha256=h8T6QhXuTo0GLL9MKfIM5p--wDqlB1-ZkMp3lY-aM3E,341
|
|
129
|
-
phenoml/fhir_provider/raw_client.py,sha256=
|
|
130
|
-
phenoml/fhir_provider/types/__init__.py,sha256=
|
|
131
|
-
phenoml/fhir_provider/types/auth_method.py,sha256=
|
|
122
|
+
phenoml/fhir_provider/raw_client.py,sha256=h1f9kQiyzKos3HD-qc0Daw4IuJLRQR3_yYn5101TLd4,60286
|
|
123
|
+
phenoml/fhir_provider/types/__init__.py,sha256=nI5cnzergAlcDXfQkIAtJOEibdOqQ2BYTZGQrLAm2E4,1356
|
|
124
|
+
phenoml/fhir_provider/types/auth_method.py,sha256=Ox5c5SQo1EHAwkhBNOJHEovgE6U2OoSvgXHLlqgk9-U,230
|
|
132
125
|
phenoml/fhir_provider/types/fhir_provider_auth_config.py,sha256=-SGF8RiYF7tdttGCmagmZsO5OxL-Gz0sXV8OaYow9SA,1651
|
|
133
126
|
phenoml/fhir_provider/types/fhir_provider_delete_response.py,sha256=mye_IDz2hAw7BxuzeRjkPjuFAeeEsdFk0RQrSP4ZzjM,603
|
|
134
127
|
phenoml/fhir_provider/types/fhir_provider_list_response.py,sha256=ZoJMAhVgFAONuY0rt7glykjdWOskoSxi6_8JXVEf1_I,736
|
|
@@ -140,6 +133,7 @@ phenoml/fhir_provider/types/fhir_query_response.py,sha256=fOy_oCRexu2iZgDWW6sRIR
|
|
|
140
133
|
phenoml/fhir_provider/types/fhir_query_response_data.py,sha256=TfQ94GSU7NUfkxpy1VNFwOoUmFn4OxZxqFVkQDADsMk,169
|
|
141
134
|
phenoml/fhir_provider/types/json_web_key.py,sha256=ouUPhdvlASdBSJyazqecjQ64A9V9aqvtSt1wt2K3MLg,1615
|
|
142
135
|
phenoml/fhir_provider/types/provider.py,sha256=AmGOmoy5Cv9W0km4rAf3mxqH3g3UUnj_xC4FopPMdAk,238
|
|
136
|
+
phenoml/fhir_provider/types/role.py,sha256=Igag80s-KaGOc4nWfrGWyT81HU__c6_WJ-1oV7DOVdE,638
|
|
143
137
|
phenoml/fhir_provider/types/service_account_key.py,sha256=uup1Xl0HSc_B3278i0CS-ygCroShLS5_q0KtqXI96HY,1085
|
|
144
138
|
phenoml/fhir_provider/types/smart_configuration.py,sha256=bG_J1yNFEWWo9kjxF0s2Ik9rXehB1JHcQ2fTn6dht6k,1174
|
|
145
139
|
phenoml/lang2fhir/__init__.py,sha256=R8VOE03BLTk90GJVBfpiUXHeODUNX3rZLkRIC21s1ow,694
|
|
@@ -159,8 +153,30 @@ phenoml/lang2fhir/types/fhir_resource.py,sha256=EprHErQgwP_MkaCrul94OhkOWQcbvUjM
|
|
|
159
153
|
phenoml/lang2fhir/types/lang2fhir_upload_profile_response.py,sha256=X41WiVztePQtZOcNRzNsder-h3rQTj94Y622HQ1izP8,721
|
|
160
154
|
phenoml/lang2fhir/types/search_response.py,sha256=xM3jNTIl7XuxzCfvaYCzXiBryGXT4siH9UVCpbo0UgI,1019
|
|
161
155
|
phenoml/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
156
|
+
phenoml/summary/__init__.py,sha256=0CioBmGauOx0MxDnrqvq3xVwi1XqmCKtwe2XEDmGYfs,1066
|
|
157
|
+
phenoml/summary/client.py,sha256=2Q8SkqSHUgNl659voCUPT6UasbX27IxkaHq8vU0fiRA,18744
|
|
158
|
+
phenoml/summary/errors/__init__.py,sha256=Wnvf4XPELmAIZ-jVxx2t-dBNZ-X9PcDxPSL5EHqJr1Q,434
|
|
159
|
+
phenoml/summary/errors/bad_request_error.py,sha256=nv0bK4gtOnTon6a2NdVxJxHBje_O_7wIoRtXLZHovUQ,339
|
|
160
|
+
phenoml/summary/errors/forbidden_error.py,sha256=ek8-sffTy9gY3F0zyaSkcskDVvq9puXP_YvvB2BJYbA,338
|
|
161
|
+
phenoml/summary/errors/internal_server_error.py,sha256=biBHJfSP1_zWF5CJgxY4B8wrL1uC18RSccQ-BCKmYNs,343
|
|
162
|
+
phenoml/summary/errors/not_found_error.py,sha256=hQ1KdyGQJCBQqo6iLu2-szlKJdzaoV5odq_7kdXAEbc,337
|
|
163
|
+
phenoml/summary/errors/unauthorized_error.py,sha256=h8T6QhXuTo0GLL9MKfIM5p--wDqlB1-ZkMp3lY-aM3E,341
|
|
164
|
+
phenoml/summary/raw_client.py,sha256=ar7TGzWoGM0XE0d5pZQFdu67NJ-PwQp0Bx0rOEvrbLg,47420
|
|
165
|
+
phenoml/summary/types/__init__.py,sha256=Cef3yEm0KM3HM0lnBut2uTLNgAhX1yocxrwA1ubNCdI,1231
|
|
166
|
+
phenoml/summary/types/create_summary_request_fhir_resources.py,sha256=afdDyX3UPCFrEjynP8XL_w9ulDbgojw8nAFVgZAolvE,232
|
|
167
|
+
phenoml/summary/types/create_summary_request_mode.py,sha256=YvRzzEGxaewryCyqGvJvpoOInjuB5GU1_1Mv3f2UODg,172
|
|
168
|
+
phenoml/summary/types/create_summary_response.py,sha256=8I4AVApJSZCzjIKvZUCIIQ5jBhO2IQBZqVV1VXKzavU,862
|
|
169
|
+
phenoml/summary/types/create_summary_template_response.py,sha256=mOujukt5jMKpTYTovvUagDjdvRIO3LJB2P0lCBzr5yc,751
|
|
170
|
+
phenoml/summary/types/fhir_bundle.py,sha256=ZP4LkXXUs18FQJyCvL1cSdQTas0mKWIYao815eM7qoU,798
|
|
171
|
+
phenoml/summary/types/fhir_bundle_entry_item.py,sha256=nhXcR4Rb68PFL0-l4oMH6kCKaAgTC3k4BXD984ly4gU,604
|
|
172
|
+
phenoml/summary/types/fhir_resource.py,sha256=GUtFqdTEyGJCGA2AOlZPLrwK3JA1dix20TtqBAvqjuU,726
|
|
173
|
+
phenoml/summary/types/summary_delete_template_response.py,sha256=xmgY1Eh6HgVj8y2n2lob7-cmhvbesy4syOd3Dy38rAs,606
|
|
174
|
+
phenoml/summary/types/summary_get_template_response.py,sha256=u71jGARazI2XECeqmRGk4hjF5X7sD3zm5z8eFUsWl7g,662
|
|
175
|
+
phenoml/summary/types/summary_list_templates_response.py,sha256=go45lFGp3KktaZq4lCGN5KV6SYbaik5bNvn5NkTV6xI,678
|
|
176
|
+
phenoml/summary/types/summary_template.py,sha256=eCM6BVMZC4jxp7d2PoIfcluflAMXa07oZcXf0nzytXM,1269
|
|
177
|
+
phenoml/summary/types/summary_update_template_response.py,sha256=1i_2LELTdulyXLNaEaN10Phy9KZfmGUBQCcj_9eZZy4,706
|
|
162
178
|
phenoml/tools/__init__.py,sha256=tWbUCa1RVpte1Ov53WgLExOXvGT72Mol2JM1Ul3nj3M,989
|
|
163
|
-
phenoml/tools/client.py,sha256=
|
|
179
|
+
phenoml/tools/client.py,sha256=JRLj2mUGWuJ_ClRiSRimSKxx55hWQOLtPACpvFFVqxw,18261
|
|
164
180
|
phenoml/tools/errors/__init__.py,sha256=nIzg981R3USgSar0WuuVrpDVg-H5vIp2AceEzbhphGw,458
|
|
165
181
|
phenoml/tools/errors/bad_request_error.py,sha256=nv0bK4gtOnTon6a2NdVxJxHBje_O_7wIoRtXLZHovUQ,339
|
|
166
182
|
phenoml/tools/errors/failed_dependency_error.py,sha256=eXiqG062inkUF7fs2Newhx9uAKReK6fosz29PMD4gVw,345
|
|
@@ -173,7 +189,7 @@ phenoml/tools/mcp_server/raw_client.py,sha256=AVnepraHeEuI4zl1eBeHC3_-mkc7zfEIeY
|
|
|
173
189
|
phenoml/tools/mcp_server/tools/__init__.py,sha256=_VhToAyIt_5axN6CLJwtxg3-CO7THa_23pbUzqhXJa4,85
|
|
174
190
|
phenoml/tools/mcp_server/tools/client.py,sha256=iu-AclviqNB9NWfkS_h7LY9exfzPGmAjOG3MIbQgtuk,9807
|
|
175
191
|
phenoml/tools/mcp_server/tools/raw_client.py,sha256=FC_OQZ526AGrN1lAnYLvtr-s8NrHfcKUpxM_YLKZgos,26380
|
|
176
|
-
phenoml/tools/raw_client.py,sha256=
|
|
192
|
+
phenoml/tools/raw_client.py,sha256=AdHQW0jlx-QtysAT2lo8DuxFZE1rsU_ji8EbPfLrVPc,33432
|
|
177
193
|
phenoml/tools/types/__init__.py,sha256=Q9a9RbiUDz9jFLZi_43I40t8ZZuolzaDtluYJWV8yN8,1021
|
|
178
194
|
phenoml/tools/types/cohort_response.py,sha256=Nft1eLyFhNrKDNYOhQxzSH1o35JS7UdZlTgI9ndjdVM,1503
|
|
179
195
|
phenoml/tools/types/lang2fhir_and_create_request_resource.py,sha256=mIBUXOfKrweiYsCu-vxboK_uDu43GQUEdKWlVLHMOyU,608
|
|
@@ -220,7 +236,7 @@ phenoml/workflows/types/workflows_delete_response.py,sha256=izcubUOnSNOgThD9Ozo6
|
|
|
220
236
|
phenoml/workflows/types/workflows_get_response.py,sha256=gfNyUs14JSynprRwT-fuq4IDsGrPZmUSsK3WmgqIEi8,891
|
|
221
237
|
phenoml/workflows/types/workflows_update_response.py,sha256=FEvQpC9ZRk8dV1oaIAwV5bSDD2tkXZ5fG4mozRjibuQ,1046
|
|
222
238
|
phenoml/wrapper_client.py,sha256=JYTdhXgju4tOsata06wQY_ZbMsuMj3qaxkgvDzpY068,5022
|
|
223
|
-
phenoml-0.0.
|
|
224
|
-
phenoml-0.0.
|
|
225
|
-
phenoml-0.0.
|
|
226
|
-
phenoml-0.0.
|
|
239
|
+
phenoml-0.0.9.dist-info/LICENSE,sha256=Am1fNNveR2gcmOloSWQTsnUw2SQEF8HtowFqIvlagfk,1064
|
|
240
|
+
phenoml-0.0.9.dist-info/METADATA,sha256=21ZdYAdAMn0JWaTIySZ6VT5QbTRFsMU1wc4QEAC0vMs,5330
|
|
241
|
+
phenoml-0.0.9.dist-info/WHEEL,sha256=Zb28QaM1gQi8f4VCBhsUklF61CTlNYfs9YAZn-TOGFk,88
|
|
242
|
+
phenoml-0.0.9.dist-info/RECORD,,
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
-
|
|
3
|
-
import typing
|
|
4
|
-
|
|
5
|
-
import pydantic
|
|
6
|
-
from ...core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
class ConstrueCohortRequestConfig(UniversalBaseModel):
|
|
10
|
-
include_extract_results: typing.Optional[bool] = pydantic.Field(default=None)
|
|
11
|
-
"""
|
|
12
|
-
When enabled, includes detailed information about medical codes extracted from the text.
|
|
13
|
-
"""
|
|
14
|
-
|
|
15
|
-
include_rationale: typing.Optional[bool] = pydantic.Field(default=None)
|
|
16
|
-
"""
|
|
17
|
-
When enabled, includes AI-generated explanations for each query component and code extraction.
|
|
18
|
-
"""
|
|
19
|
-
|
|
20
|
-
exclude_deceased: typing.Optional[bool] = pydantic.Field(default=None)
|
|
21
|
-
"""
|
|
22
|
-
Controls whether deceased patients should be excluded from the cohort.
|
|
23
|
-
"""
|
|
24
|
-
|
|
25
|
-
sql_syntax: typing.Optional[typing.Literal["bigquery"]] = pydantic.Field(default=None)
|
|
26
|
-
"""
|
|
27
|
-
Specifies the SQL dialect for query generation. Currently, only "bigquery" is supported.
|
|
28
|
-
"""
|
|
29
|
-
|
|
30
|
-
if IS_PYDANTIC_V2:
|
|
31
|
-
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
32
|
-
else:
|
|
33
|
-
|
|
34
|
-
class Config:
|
|
35
|
-
frozen = True
|
|
36
|
-
smart_union = True
|
|
37
|
-
extra = pydantic.Extra.allow
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
-
|
|
3
|
-
import typing
|
|
4
|
-
|
|
5
|
-
import pydantic
|
|
6
|
-
import typing_extensions
|
|
7
|
-
from ...core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
|
|
8
|
-
from ...core.serialization import FieldMetadata
|
|
9
|
-
from .construe_cohort_response_queries_item import ConstrueCohortResponseQueriesItem
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
class ConstrueCohortResponse(UniversalBaseModel):
|
|
13
|
-
queries: typing.Optional[typing.List[ConstrueCohortResponseQueriesItem]] = None
|
|
14
|
-
sql: typing.Optional[str] = pydantic.Field(default=None)
|
|
15
|
-
"""
|
|
16
|
-
Generated SQL query when `sql_syntax` is specified. Variables in curly braces need to be replaced with your actual table names.
|
|
17
|
-
"""
|
|
18
|
-
|
|
19
|
-
cohort_description: typing_extensions.Annotated[typing.Optional[str], FieldMetadata(alias="cohortDescription")] = (
|
|
20
|
-
pydantic.Field(default=None)
|
|
21
|
-
)
|
|
22
|
-
"""
|
|
23
|
-
Echo of the input text description for reference.
|
|
24
|
-
"""
|
|
25
|
-
|
|
26
|
-
if IS_PYDANTIC_V2:
|
|
27
|
-
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
28
|
-
else:
|
|
29
|
-
|
|
30
|
-
class Config:
|
|
31
|
-
frozen = True
|
|
32
|
-
smart_union = True
|
|
33
|
-
extra = pydantic.Extra.allow
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
-
|
|
3
|
-
import typing
|
|
4
|
-
|
|
5
|
-
import pydantic
|
|
6
|
-
import typing_extensions
|
|
7
|
-
from ...core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
|
|
8
|
-
from ...core.serialization import FieldMetadata
|
|
9
|
-
from .construe_cohort_response_queries_item_code_extract_results_item import (
|
|
10
|
-
ConstrueCohortResponseQueriesItemCodeExtractResultsItem,
|
|
11
|
-
)
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
class ConstrueCohortResponseQueriesItem(UniversalBaseModel):
|
|
15
|
-
resource: typing.Optional[str] = pydantic.Field(default=None)
|
|
16
|
-
"""
|
|
17
|
-
FHIR resource type (e.g., "Patient", "Condition").
|
|
18
|
-
"""
|
|
19
|
-
|
|
20
|
-
search_params: typing_extensions.Annotated[typing.Optional[str], FieldMetadata(alias="searchParams")] = (
|
|
21
|
-
pydantic.Field(default=None)
|
|
22
|
-
)
|
|
23
|
-
"""
|
|
24
|
-
FHIR search parameters.
|
|
25
|
-
"""
|
|
26
|
-
|
|
27
|
-
exclude: typing.Optional[bool] = pydantic.Field(default=None)
|
|
28
|
-
"""
|
|
29
|
-
Indicates if this is an exclusion criteria.
|
|
30
|
-
"""
|
|
31
|
-
|
|
32
|
-
rationale: typing.Optional[str] = pydantic.Field(default=None)
|
|
33
|
-
"""
|
|
34
|
-
AI-generated explanation for the query component.
|
|
35
|
-
"""
|
|
36
|
-
|
|
37
|
-
code_extract_results: typing_extensions.Annotated[
|
|
38
|
-
typing.Optional[typing.List[ConstrueCohortResponseQueriesItemCodeExtractResultsItem]],
|
|
39
|
-
FieldMetadata(alias="codeExtractResults"),
|
|
40
|
-
] = None
|
|
41
|
-
|
|
42
|
-
if IS_PYDANTIC_V2:
|
|
43
|
-
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
44
|
-
else:
|
|
45
|
-
|
|
46
|
-
class Config:
|
|
47
|
-
frozen = True
|
|
48
|
-
smart_union = True
|
|
49
|
-
extra = pydantic.Extra.allow
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
-
|
|
3
|
-
import typing
|
|
4
|
-
|
|
5
|
-
import pydantic
|
|
6
|
-
import typing_extensions
|
|
7
|
-
from ...core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
|
|
8
|
-
from ...core.serialization import FieldMetadata
|
|
9
|
-
from .construe_cohort_response_queries_item_code_extract_results_item_codes_item import (
|
|
10
|
-
ConstrueCohortResponseQueriesItemCodeExtractResultsItemCodesItem,
|
|
11
|
-
)
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
class ConstrueCohortResponseQueriesItemCodeExtractResultsItem(UniversalBaseModel):
|
|
15
|
-
system_name: typing_extensions.Annotated[typing.Optional[str], FieldMetadata(alias="systemName")] = pydantic.Field(
|
|
16
|
-
default=None
|
|
17
|
-
)
|
|
18
|
-
"""
|
|
19
|
-
Name of the coding system (e.g., "SNOMED_CT_US_LITE").
|
|
20
|
-
"""
|
|
21
|
-
|
|
22
|
-
codes: typing.Optional[typing.List[ConstrueCohortResponseQueriesItemCodeExtractResultsItemCodesItem]] = None
|
|
23
|
-
|
|
24
|
-
if IS_PYDANTIC_V2:
|
|
25
|
-
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
26
|
-
else:
|
|
27
|
-
|
|
28
|
-
class Config:
|
|
29
|
-
frozen = True
|
|
30
|
-
smart_union = True
|
|
31
|
-
extra = pydantic.Extra.allow
|
|
File without changes
|
|
File without changes
|