notdiamond 2.0.0-rc2 → 2.0.0-rc20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (147) hide show
  1. package/CHANGELOG.md +185 -0
  2. package/LICENSE +1 -1
  3. package/README.md +261 -168
  4. package/client.d.mts +26 -43
  5. package/client.d.mts.map +1 -1
  6. package/client.d.ts +26 -43
  7. package/client.d.ts.map +1 -1
  8. package/client.js +49 -68
  9. package/client.js.map +1 -1
  10. package/client.mjs +47 -66
  11. package/client.mjs.map +1 -1
  12. package/core/api-promise.d.mts +2 -2
  13. package/core/api-promise.d.ts +2 -2
  14. package/core/error.d.mts +2 -2
  15. package/core/error.d.ts +2 -2
  16. package/core/error.js +4 -4
  17. package/core/error.mjs +2 -2
  18. package/core/resource.d.mts +3 -3
  19. package/core/resource.d.ts +3 -3
  20. package/index.d.mts +3 -3
  21. package/index.d.ts +3 -3
  22. package/index.js +4 -4
  23. package/index.mjs +3 -3
  24. package/internal/parse.d.mts +2 -2
  25. package/internal/parse.d.ts +2 -2
  26. package/internal/shims.js +1 -1
  27. package/internal/shims.mjs +1 -1
  28. package/internal/uploads.d.mts +4 -4
  29. package/internal/uploads.d.ts +4 -4
  30. package/internal/utils/base64.js +2 -2
  31. package/internal/utils/base64.mjs +3 -3
  32. package/internal/utils/env.d.mts.map +1 -1
  33. package/internal/utils/env.d.ts.map +1 -1
  34. package/internal/utils/env.js +4 -2
  35. package/internal/utils/env.js.map +1 -1
  36. package/internal/utils/env.mjs +4 -2
  37. package/internal/utils/env.mjs.map +1 -1
  38. package/internal/utils/log.d.mts +3 -3
  39. package/internal/utils/log.d.ts +3 -3
  40. package/internal/utils/path.js +1 -1
  41. package/internal/utils/path.mjs +2 -2
  42. package/internal/utils/values.js +5 -5
  43. package/internal/utils/values.mjs +6 -6
  44. package/package.json +11 -12
  45. package/resources/custom-router.d.mts +145 -0
  46. package/resources/custom-router.d.mts.map +1 -0
  47. package/resources/custom-router.d.ts +145 -0
  48. package/resources/custom-router.d.ts.map +1 -0
  49. package/resources/custom-router.js +83 -0
  50. package/resources/custom-router.js.map +1 -0
  51. package/resources/custom-router.mjs +79 -0
  52. package/resources/custom-router.mjs.map +1 -0
  53. package/resources/index.d.mts +5 -6
  54. package/resources/index.d.mts.map +1 -1
  55. package/resources/index.d.ts +5 -6
  56. package/resources/index.d.ts.map +1 -1
  57. package/resources/index.js +5 -7
  58. package/resources/index.js.map +1 -1
  59. package/resources/index.mjs +2 -3
  60. package/resources/index.mjs.map +1 -1
  61. package/resources/model-router.d.mts +194 -0
  62. package/resources/model-router.d.mts.map +1 -0
  63. package/resources/model-router.d.ts +194 -0
  64. package/resources/model-router.d.ts.map +1 -0
  65. package/resources/model-router.js +68 -0
  66. package/resources/model-router.js.map +1 -0
  67. package/resources/model-router.mjs +64 -0
  68. package/resources/model-router.mjs.map +1 -0
  69. package/resources/models.d.mts +50 -25
  70. package/resources/models.d.mts.map +1 -1
  71. package/resources/models.d.ts +50 -25
  72. package/resources/models.d.ts.map +1 -1
  73. package/resources/models.js +5 -0
  74. package/resources/models.js.map +1 -1
  75. package/resources/models.mjs +5 -0
  76. package/resources/models.mjs.map +1 -1
  77. package/resources/preferences.d.mts +37 -54
  78. package/resources/preferences.d.mts.map +1 -1
  79. package/resources/preferences.d.ts +37 -54
  80. package/resources/preferences.d.ts.map +1 -1
  81. package/resources/preferences.js +17 -42
  82. package/resources/preferences.js.map +1 -1
  83. package/resources/preferences.mjs +17 -42
  84. package/resources/preferences.mjs.map +1 -1
  85. package/resources/prompt-adaptation.d.mts +340 -249
  86. package/resources/prompt-adaptation.d.mts.map +1 -1
  87. package/resources/prompt-adaptation.d.ts +340 -249
  88. package/resources/prompt-adaptation.d.ts.map +1 -1
  89. package/resources/prompt-adaptation.js +36 -79
  90. package/resources/prompt-adaptation.js.map +1 -1
  91. package/resources/prompt-adaptation.mjs +36 -79
  92. package/resources/prompt-adaptation.mjs.map +1 -1
  93. package/src/client.ts +72 -128
  94. package/src/core/api-promise.ts +4 -4
  95. package/src/core/error.ts +2 -2
  96. package/src/core/resource.ts +3 -3
  97. package/src/index.ts +3 -3
  98. package/src/internal/parse.ts +2 -2
  99. package/src/internal/shims.ts +1 -1
  100. package/src/internal/uploads.ts +5 -5
  101. package/src/internal/utils/base64.ts +3 -3
  102. package/src/internal/utils/env.ts +4 -2
  103. package/src/internal/utils/log.ts +3 -3
  104. package/src/internal/utils/path.ts +2 -2
  105. package/src/internal/utils/values.ts +6 -6
  106. package/src/resources/custom-router.ts +168 -0
  107. package/src/resources/index.ts +20 -32
  108. package/src/resources/model-router.ts +222 -0
  109. package/src/resources/models.ts +55 -32
  110. package/src/resources/preferences.ts +43 -83
  111. package/src/resources/prompt-adaptation.ts +358 -300
  112. package/src/version.ts +1 -1
  113. package/version.d.mts +1 -1
  114. package/version.d.mts.map +1 -1
  115. package/version.d.ts +1 -1
  116. package/version.d.ts.map +1 -1
  117. package/version.js +1 -1
  118. package/version.js.map +1 -1
  119. package/version.mjs +1 -1
  120. package/version.mjs.map +1 -1
  121. package/resources/admin.d.mts +0 -4
  122. package/resources/admin.d.mts.map +0 -1
  123. package/resources/admin.d.ts +0 -4
  124. package/resources/admin.d.ts.map +0 -1
  125. package/resources/admin.js +0 -9
  126. package/resources/admin.js.map +0 -1
  127. package/resources/admin.mjs +0 -5
  128. package/resources/admin.mjs.map +0 -1
  129. package/resources/report.d.mts +0 -245
  130. package/resources/report.d.mts.map +0 -1
  131. package/resources/report.d.ts +0 -245
  132. package/resources/report.d.ts.map +0 -1
  133. package/resources/report.js +0 -86
  134. package/resources/report.js.map +0 -1
  135. package/resources/report.mjs +0 -82
  136. package/resources/report.mjs.map +0 -1
  137. package/resources/routing.d.mts +0 -391
  138. package/resources/routing.d.mts.map +0 -1
  139. package/resources/routing.d.ts +0 -391
  140. package/resources/routing.d.ts.map +0 -1
  141. package/resources/routing.js +0 -163
  142. package/resources/routing.js.map +0 -1
  143. package/resources/routing.mjs +0 -159
  144. package/resources/routing.mjs.map +0 -1
  145. package/src/resources/admin.ts +0 -5
  146. package/src/resources/report.ts +0 -300
  147. package/src/resources/routing.ts +0 -476
@@ -2,34 +2,10 @@
2
2
 
3
3
  import { APIResource } from '../core/resource';
4
4
  import { APIPromise } from '../core/api-promise';
5
- import { buildHeaders } from '../internal/headers';
6
5
  import { RequestOptions } from '../internal/request-options';
7
6
  import { path } from '../internal/utils/path';
8
7
 
9
8
  export class Preferences extends APIResource {
10
- /**
11
- * Get User Preference By Id
12
- *
13
- * @example
14
- * ```ts
15
- * const preference = await client.preferences.retrieve(
16
- * 'preference_id',
17
- * { user_id: 'user_id', 'x-token': 'x-token' },
18
- * );
19
- * ```
20
- */
21
- retrieve(
22
- preferenceID: string,
23
- params: PreferenceRetrieveParams,
24
- options?: RequestOptions,
25
- ): APIPromise<unknown> {
26
- const { user_id, 'x-token': xToken } = params;
27
- return this._client.get(path`/v2/preferences/${user_id}/${preferenceID}`, {
28
- ...options,
29
- headers: buildHeaders([{ 'x-token': xToken }, options?.headers]),
30
- });
31
- }
32
-
33
9
  /**
34
10
  * Create a new preference ID for personalized LLM routing.
35
11
  *
@@ -37,20 +13,17 @@ export class Preferences extends APIResource {
37
13
  * learning your preferences over time. Once created, you can:
38
14
  *
39
15
  * 1. Use it in model_select() calls to get personalized routing decisions
40
- * 2. Submit feedback via the feedback endpoint to improve routing quality
41
- * 3. Train a custom router specific to your use case
16
+ * 2. Train a custom router specific to your use case
42
17
  *
43
18
  * **Workflow:**
44
19
  *
45
20
  * 1. Create a preference ID (this endpoint)
46
21
  * 2. Use the preference_id in POST /v2/modelRouter/modelSelect requests
47
- * 3. Submit feedback on routing decisions via POST /v2/report/metrics/feedback
48
- * 4. Optionally train a custom router via POST /v2/pzn/trainCustomRouter
22
+ * 3. Optionally train a custom router via POST /v2/pzn/trainCustomRouter
49
23
  *
50
24
  * **Benefits:**
51
25
  *
52
- * - Personalized routing that learns from your feedback
53
- * - Improved accuracy for your specific use case
26
+ * - Personalized routing for your specific use case
54
27
  * - Ability to train custom routers on your evaluation data
55
28
  *
56
29
  * **Note:** If you don't provide a preference_id in model_select() calls, the
@@ -58,88 +31,77 @@ export class Preferences extends APIResource {
58
31
  *
59
32
  * @example
60
33
  * ```ts
61
- * const response =
62
- * await client.preferences.createUserPreference();
34
+ * const preference = await client.preferences.create();
63
35
  * ```
64
36
  */
65
- createUserPreference(
66
- body: PreferenceCreateUserPreferenceParams,
67
- options?: RequestOptions,
68
- ): APIPromise<PreferenceCreateUserPreferenceResponse> {
37
+ create(body: PreferenceCreateParams, options?: RequestOptions): APIPromise<PreferenceCreateResponse> {
69
38
  return this._client.post('/v2/preferences/userPreferenceCreate', { body, ...options });
70
39
  }
71
40
 
72
41
  /**
73
- * Delete User Preference
42
+ * Update User Preference
74
43
  *
75
44
  * @example
76
45
  * ```ts
77
- * const response =
78
- * await client.preferences.deleteUserPreference(
79
- * 'preference_id',
80
- * );
46
+ * const preference = await client.preferences.update({
47
+ * preference_id: 'preference_id',
48
+ * });
81
49
  * ```
82
50
  */
83
- deleteUserPreference(preferenceID: string, options?: RequestOptions): APIPromise<unknown> {
84
- return this._client.delete(path`/v2/preferences/userPreferenceDelete/${preferenceID}`, options);
51
+ update(body: PreferenceUpdateParams, options?: RequestOptions): APIPromise<unknown> {
52
+ return this._client.put('/v2/preferences/userPreferenceUpdate', { body, ...options });
85
53
  }
86
54
 
87
55
  /**
88
- * Update User Preference
56
+ * Delete User Preference
89
57
  *
90
58
  * @example
91
59
  * ```ts
92
- * const response =
93
- * await client.preferences.updateUserPreference({
94
- * preference_id: 'preference_id',
95
- * });
60
+ * const preference = await client.preferences.delete(
61
+ * 'preference_id',
62
+ * );
96
63
  * ```
97
64
  */
98
- updateUserPreference(
99
- body: PreferenceUpdateUserPreferenceParams,
100
- options?: RequestOptions,
101
- ): APIPromise<unknown> {
102
- return this._client.put('/v2/preferences/userPreferenceUpdate', { body, ...options });
65
+ delete(preferenceID: string, options?: RequestOptions): APIPromise<unknown> {
66
+ return this._client.delete(path`/v2/preferences/userPreferenceDelete/${preferenceID}`, options);
103
67
  }
104
68
  }
105
69
 
106
- export type PreferenceRetrieveResponse = unknown;
107
-
108
70
  /**
109
- * Response from preference creation endpoint.
71
+ * Response model for POST /v2/preferences/userPreferenceCreate endpoint.
72
+ *
73
+ * Returns the newly created preference ID which can be used to enable personalized
74
+ * LLM routing. Store this ID and include it in subsequent model_select() calls to
75
+ * activate personalized routing based on your feedback and usage patterns.
76
+ *
77
+ * **Next steps after creation:**
78
+ *
79
+ * 1. Use the preference_id in POST /v2/modelRouter/modelSelect requests
80
+ * 2. Submit feedback on routing decisions to improve accuracy
81
+ * 3. Optionally train a custom router using your evaluation data
110
82
  */
111
- export interface PreferenceCreateUserPreferenceResponse {
83
+ export interface PreferenceCreateResponse {
112
84
  /**
113
- * The newly created preference ID. Use this in model_select() calls for
114
- * personalized routing
85
+ * Unique identifier for the newly created preference. Use this in the
86
+ * 'preference_id' parameter of model_select() calls to enable personalized routing
115
87
  */
116
88
  preference_id: string;
117
89
  }
118
90
 
119
- export type PreferenceDeleteUserPreferenceResponse = unknown;
91
+ export type PreferenceUpdateResponse = unknown;
120
92
 
121
- export type PreferenceUpdateUserPreferenceResponse = unknown;
122
-
123
- export interface PreferenceRetrieveParams {
124
- /**
125
- * Path param:
126
- */
127
- user_id: string;
128
-
129
- /**
130
- * Header param:
131
- */
132
- 'x-token': string;
133
- }
93
+ export type PreferenceDeleteResponse = unknown;
134
94
 
135
- export interface PreferenceCreateUserPreferenceParams {
95
+ export interface PreferenceCreateParams {
136
96
  /**
137
- * Optional name for the preference
97
+ * Optional name for the preference. If not provided, an auto-generated timestamp
98
+ * will be used. Use descriptive names like 'Production API' or 'Customer Support
99
+ * Bot' for easy identification
138
100
  */
139
101
  name?: string | null;
140
102
  }
141
103
 
142
- export interface PreferenceUpdateUserPreferenceParams {
104
+ export interface PreferenceUpdateParams {
143
105
  preference_id: string;
144
106
 
145
107
  name?: string | null;
@@ -147,12 +109,10 @@ export interface PreferenceUpdateUserPreferenceParams {
147
109
 
148
110
  export declare namespace Preferences {
149
111
  export {
150
- type PreferenceRetrieveResponse as PreferenceRetrieveResponse,
151
- type PreferenceCreateUserPreferenceResponse as PreferenceCreateUserPreferenceResponse,
152
- type PreferenceDeleteUserPreferenceResponse as PreferenceDeleteUserPreferenceResponse,
153
- type PreferenceUpdateUserPreferenceResponse as PreferenceUpdateUserPreferenceResponse,
154
- type PreferenceRetrieveParams as PreferenceRetrieveParams,
155
- type PreferenceCreateUserPreferenceParams as PreferenceCreateUserPreferenceParams,
156
- type PreferenceUpdateUserPreferenceParams as PreferenceUpdateUserPreferenceParams,
112
+ type PreferenceCreateResponse as PreferenceCreateResponse,
113
+ type PreferenceUpdateResponse as PreferenceUpdateResponse,
114
+ type PreferenceDeleteResponse as PreferenceDeleteResponse,
115
+ type PreferenceCreateParams as PreferenceCreateParams,
116
+ type PreferenceUpdateParams as PreferenceUpdateParams,
157
117
  };
158
118
  }