@proofhound/api-client 0.1.6

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 (82) hide show
  1. package/LICENSE +190 -0
  2. package/dist/annotation.d.ts +245 -0
  3. package/dist/annotation.d.ts.map +1 -0
  4. package/dist/annotation.js +19 -0
  5. package/dist/annotation.js.map +1 -0
  6. package/dist/api-token.d.ts +53 -0
  7. package/dist/api-token.d.ts.map +1 -0
  8. package/dist/api-token.js +12 -0
  9. package/dist/api-token.js.map +1 -0
  10. package/dist/auth-source.d.ts +29 -0
  11. package/dist/auth-source.d.ts.map +1 -0
  12. package/dist/auth-source.js +30 -0
  13. package/dist/auth-source.js.map +1 -0
  14. package/dist/canary-release.d.ts +635 -0
  15. package/dist/canary-release.d.ts.map +1 -0
  16. package/dist/canary-release.js +48 -0
  17. package/dist/canary-release.js.map +1 -0
  18. package/dist/configure.d.ts +20 -0
  19. package/dist/configure.d.ts.map +1 -0
  20. package/dist/configure.js +41 -0
  21. package/dist/configure.js.map +1 -0
  22. package/dist/connector.d.ts +446 -0
  23. package/dist/connector.d.ts.map +1 -0
  24. package/dist/connector.js +70 -0
  25. package/dist/connector.js.map +1 -0
  26. package/dist/dataset-import.d.ts +75 -0
  27. package/dist/dataset-import.d.ts.map +1 -0
  28. package/dist/dataset-import.js +25 -0
  29. package/dist/dataset-import.js.map +1 -0
  30. package/dist/dataset.d.ts +136 -0
  31. package/dist/dataset.d.ts.map +1 -0
  32. package/dist/dataset.js +67 -0
  33. package/dist/dataset.js.map +1 -0
  34. package/dist/experiment.d.ts +365 -0
  35. package/dist/experiment.d.ts.map +1 -0
  36. package/dist/experiment.js +65 -0
  37. package/dist/experiment.js.map +1 -0
  38. package/dist/http.d.ts +3 -0
  39. package/dist/http.d.ts.map +1 -0
  40. package/dist/http.js +13 -0
  41. package/dist/http.js.map +1 -0
  42. package/dist/index.d.ts +20 -0
  43. package/dist/index.d.ts.map +1 -0
  44. package/dist/index.js +39 -0
  45. package/dist/index.js.map +1 -0
  46. package/dist/model.d.ts +274 -0
  47. package/dist/model.d.ts.map +1 -0
  48. package/dist/model.js +73 -0
  49. package/dist/model.js.map +1 -0
  50. package/dist/monitoring.d.ts +200 -0
  51. package/dist/monitoring.d.ts.map +1 -0
  52. package/dist/monitoring.js +49 -0
  53. package/dist/monitoring.js.map +1 -0
  54. package/dist/optimization.d.ts +574 -0
  55. package/dist/optimization.d.ts.map +1 -0
  56. package/dist/optimization.js +22 -0
  57. package/dist/optimization.js.map +1 -0
  58. package/dist/production-release.d.ts +122 -0
  59. package/dist/production-release.d.ts.map +1 -0
  60. package/dist/production-release.js +22 -0
  61. package/dist/production-release.js.map +1 -0
  62. package/dist/prompt.d.ts +481 -0
  63. package/dist/prompt.d.ts.map +1 -0
  64. package/dist/prompt.js +22 -0
  65. package/dist/prompt.js.map +1 -0
  66. package/dist/public-env.d.ts +2 -0
  67. package/dist/public-env.d.ts.map +1 -0
  68. package/dist/public-env.js +50 -0
  69. package/dist/public-env.js.map +1 -0
  70. package/dist/quick-start.d.ts +71 -0
  71. package/dist/quick-start.d.ts.map +1 -0
  72. package/dist/quick-start.js +11 -0
  73. package/dist/quick-start.js.map +1 -0
  74. package/dist/release-line.d.ts +1052 -0
  75. package/dist/release-line.d.ts.map +1 -0
  76. package/dist/release-line.js +18 -0
  77. package/dist/release-line.js.map +1 -0
  78. package/dist/run-result.d.ts +120 -0
  79. package/dist/run-result.d.ts.map +1 -0
  80. package/dist/run-result.js +50 -0
  81. package/dist/run-result.js.map +1 -0
  82. package/package.json +45 -0
@@ -0,0 +1,200 @@
1
+ import type { ModelMonitoringRankingResponseDto, ProjectMonitoringFilterDto, PromptMonitoringRankingResponseDto } from '@proofhound/shared';
2
+ export declare const projectMonitoringClient: {
3
+ getStats: (projectId: string, filter: ProjectMonitoringFilterDto) => Promise<{
4
+ requests: {
5
+ total: number;
6
+ previous: number;
7
+ bySource: {
8
+ prod: number;
9
+ canary: number;
10
+ iter: number;
11
+ exp: number;
12
+ };
13
+ };
14
+ errors: {
15
+ total: number;
16
+ previous: number;
17
+ bySource: {
18
+ prod: number;
19
+ canary: number;
20
+ iter: number;
21
+ exp: number;
22
+ };
23
+ };
24
+ rpmPeak: {
25
+ total: number;
26
+ previous: number;
27
+ bySource: {
28
+ prod: number;
29
+ canary: number;
30
+ iter: number;
31
+ exp: number;
32
+ };
33
+ };
34
+ tpmPeak: {
35
+ total: number;
36
+ previous: number;
37
+ bySource: {
38
+ prod: number;
39
+ canary: number;
40
+ iter: number;
41
+ exp: number;
42
+ };
43
+ };
44
+ latencyAverageMs: {
45
+ total: number;
46
+ previous: number;
47
+ bySource: {
48
+ prod: number;
49
+ canary: number;
50
+ iter: number;
51
+ exp: number;
52
+ };
53
+ };
54
+ latencyP50Ms: {
55
+ total: number;
56
+ previous: number;
57
+ bySource: {
58
+ prod: number;
59
+ canary: number;
60
+ iter: number;
61
+ exp: number;
62
+ };
63
+ };
64
+ latencyP95Ms: {
65
+ total: number;
66
+ previous: number;
67
+ bySource: {
68
+ prod: number;
69
+ canary: number;
70
+ iter: number;
71
+ exp: number;
72
+ };
73
+ };
74
+ latencyP99Ms: {
75
+ total: number;
76
+ previous: number;
77
+ bySource: {
78
+ prod: number;
79
+ canary: number;
80
+ iter: number;
81
+ exp: number;
82
+ };
83
+ };
84
+ tokens: {
85
+ total: number;
86
+ previous: number;
87
+ bySource: {
88
+ prod: number;
89
+ canary: number;
90
+ iter: number;
91
+ exp: number;
92
+ };
93
+ };
94
+ cost: {
95
+ total: number;
96
+ previous: number;
97
+ bySource: {
98
+ prod: number;
99
+ canary: number;
100
+ iter: number;
101
+ exp: number;
102
+ };
103
+ };
104
+ }>;
105
+ getTimeseries: (projectId: string, filter: ProjectMonitoringFilterDto) => Promise<{
106
+ granularity: "minute" | "hour" | "day";
107
+ points: {
108
+ bucketAt: string;
109
+ requests: {
110
+ prod: number;
111
+ canary: number;
112
+ iter: number;
113
+ exp: number;
114
+ };
115
+ errors: {
116
+ prod: number;
117
+ canary: number;
118
+ iter: number;
119
+ exp: number;
120
+ };
121
+ rpm: {
122
+ prod: number;
123
+ canary: number;
124
+ iter: number;
125
+ exp: number;
126
+ };
127
+ tpm: {
128
+ prod: number;
129
+ canary: number;
130
+ iter: number;
131
+ exp: number;
132
+ };
133
+ latencyAverageMs: {
134
+ prod: number;
135
+ canary: number;
136
+ iter: number;
137
+ exp: number;
138
+ };
139
+ latencyP50Ms: {
140
+ prod: number;
141
+ canary: number;
142
+ iter: number;
143
+ exp: number;
144
+ };
145
+ latencyP95Ms: {
146
+ prod: number;
147
+ canary: number;
148
+ iter: number;
149
+ exp: number;
150
+ };
151
+ latencyP99Ms: {
152
+ prod: number;
153
+ canary: number;
154
+ iter: number;
155
+ exp: number;
156
+ };
157
+ tokens: {
158
+ prod: number;
159
+ canary: number;
160
+ iter: number;
161
+ exp: number;
162
+ };
163
+ cost: {
164
+ prod: number;
165
+ canary: number;
166
+ iter: number;
167
+ exp: number;
168
+ };
169
+ }[];
170
+ }>;
171
+ getPromptsRanking: (projectId: string, filter: ProjectMonitoringFilterDto, sortBy: PromptMonitoringRankingResponseDto["sortBy"]) => Promise<{
172
+ sortBy: "requests" | "cost" | "failureRate";
173
+ items: {
174
+ promptId: string;
175
+ promptName: string;
176
+ latestVersionNumber: number | null;
177
+ versionCount: number;
178
+ requestCount: number;
179
+ shareRatio: number;
180
+ costEstimate: number;
181
+ failureRate: number;
182
+ hitRate: number | null;
183
+ }[];
184
+ }>;
185
+ getModelsRanking: (projectId: string, filter: ProjectMonitoringFilterDto, sortBy: ModelMonitoringRankingResponseDto["sortBy"]) => Promise<{
186
+ sortBy: "requests" | "cost" | "tokens";
187
+ items: {
188
+ modelId: string;
189
+ modelName: string;
190
+ providerType: string;
191
+ providerModelId: string;
192
+ requestCount: number;
193
+ totalTokens: number;
194
+ costEstimate: number;
195
+ capacityUsedRatio: number | null;
196
+ rpmLimit: number;
197
+ }[];
198
+ }>;
199
+ };
200
+ //# sourceMappingURL=monitoring.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"monitoring.d.ts","sourceRoot":"","sources":["../src/monitoring.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iCAAiC,EACjC,0BAA0B,EAG1B,kCAAkC,EACnC,MAAM,oBAAoB,CAAC;AAiB5B,eAAO,MAAM,uBAAuB;0BACZ,MAAM,UAAU,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+BAQrC,MAAM,UAAU,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mCASxD,MAAM,UACT,0BAA0B,UAC1B,kCAAkC,CAAC,QAAQ,CAAC;;;;;;;;;;;;;;kCAUzC,MAAM,UACT,0BAA0B,UAC1B,iCAAiC,CAAC,QAAQ,CAAC;;;;;;;;;;;;;;CAQtD,CAAC"}
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.projectMonitoringClient = void 0;
4
+ const http_1 = require("./http");
5
+ function toProjectMonitoringParams(filter) {
6
+ const params = {
7
+ from: filter.from,
8
+ to: filter.to,
9
+ granularity: filter.granularity,
10
+ };
11
+ if (filter.modelIds?.length)
12
+ params.modelIds = filter.modelIds.join(',');
13
+ if (filter.promptIds?.length)
14
+ params.promptIds = filter.promptIds.join(',');
15
+ if (filter.promptVersionIds?.length)
16
+ params.promptVersionIds = filter.promptVersionIds.join(',');
17
+ if (filter.sourceIds?.length)
18
+ params.sourceIds = filter.sourceIds.join(',');
19
+ if (filter.sources?.length)
20
+ params.sources = filter.sources.join(',');
21
+ return params;
22
+ }
23
+ exports.projectMonitoringClient = {
24
+ getStats: (projectId, filter) => http_1.httpClient
25
+ .get('/monitoring/stats', {
26
+ params: toProjectMonitoringParams(filter),
27
+ headers: { 'X-ProofHound-Project-Id': projectId },
28
+ })
29
+ .then((r) => r.data),
30
+ getTimeseries: (projectId, filter) => http_1.httpClient
31
+ .get('/monitoring/timeseries', {
32
+ params: toProjectMonitoringParams(filter),
33
+ headers: { 'X-ProofHound-Project-Id': projectId },
34
+ })
35
+ .then((r) => r.data),
36
+ getPromptsRanking: (projectId, filter, sortBy) => http_1.httpClient
37
+ .get('/monitoring/prompts/ranking', {
38
+ params: { ...toProjectMonitoringParams(filter), sortBy },
39
+ headers: { 'X-ProofHound-Project-Id': projectId },
40
+ })
41
+ .then((r) => r.data),
42
+ getModelsRanking: (projectId, filter, sortBy) => http_1.httpClient
43
+ .get('/monitoring/models/ranking', {
44
+ params: { ...toProjectMonitoringParams(filter), sortBy },
45
+ headers: { 'X-ProofHound-Project-Id': projectId },
46
+ })
47
+ .then((r) => r.data),
48
+ };
49
+ //# sourceMappingURL=monitoring.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"monitoring.js","sourceRoot":"","sources":["../src/monitoring.ts"],"names":[],"mappings":";;;AAOA,iCAAoC;AAEpC,SAAS,yBAAyB,CAAC,MAAkC;IACnE,MAAM,MAAM,GAA2B;QACrC,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,EAAE,EAAE,MAAM,CAAC,EAAE;QACb,WAAW,EAAE,MAAM,CAAC,WAAW;KAChC,CAAC;IACF,IAAI,MAAM,CAAC,QAAQ,EAAE,MAAM;QAAE,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACzE,IAAI,MAAM,CAAC,SAAS,EAAE,MAAM;QAAE,MAAM,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC5E,IAAI,MAAM,CAAC,gBAAgB,EAAE,MAAM;QAAE,MAAM,CAAC,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACjG,IAAI,MAAM,CAAC,SAAS,EAAE,MAAM;QAAE,MAAM,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC5E,IAAI,MAAM,CAAC,OAAO,EAAE,MAAM;QAAE,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACtE,OAAO,MAAM,CAAC;AAChB,CAAC;AAEY,QAAA,uBAAuB,GAAG;IACrC,QAAQ,EAAE,CAAC,SAAiB,EAAE,MAAkC,EAAE,EAAE,CAClE,iBAAU;SACP,GAAG,CAA4B,mBAAmB,EAAE;QACnD,MAAM,EAAE,yBAAyB,CAAC,MAAM,CAAC;QACzC,OAAO,EAAE,EAAE,yBAAyB,EAAE,SAAS,EAAE;KAClD,CAAC;SACD,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IAExB,aAAa,EAAE,CAAC,SAAiB,EAAE,MAAkC,EAAE,EAAE,CACvE,iBAAU;SACP,GAAG,CAAiC,wBAAwB,EAAE;QAC7D,MAAM,EAAE,yBAAyB,CAAC,MAAM,CAAC;QACzC,OAAO,EAAE,EAAE,yBAAyB,EAAE,SAAS,EAAE;KAClD,CAAC;SACD,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IAExB,iBAAiB,EAAE,CACjB,SAAiB,EACjB,MAAkC,EAClC,MAAoD,EACpD,EAAE,CACF,iBAAU;SACP,GAAG,CAAqC,6BAA6B,EAAE;QACtE,MAAM,EAAE,EAAE,GAAG,yBAAyB,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE;QACxD,OAAO,EAAE,EAAE,yBAAyB,EAAE,SAAS,EAAE;KAClD,CAAC;SACD,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IAExB,gBAAgB,EAAE,CAChB,SAAiB,EACjB,MAAkC,EAClC,MAAmD,EACnD,EAAE,CACF,iBAAU;SACP,GAAG,CAAoC,4BAA4B,EAAE;QACpE,MAAM,EAAE,EAAE,GAAG,yBAAyB,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE;QACxD,OAAO,EAAE,EAAE,yBAAyB,EAAE,SAAS,EAAE;KAClD,CAAC;SACD,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;CACzB,CAAC"}