@redhat-cloud-services/ai-client-common 0.3.3 → 0.4.0
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.
package/README.md
CHANGED
|
@@ -27,17 +27,21 @@ All AI clients in this workspace implement the `IAIClient` interface:
|
|
|
27
27
|
```typescript
|
|
28
28
|
import { IAIClient } from '@redhat-cloud-services/ai-client-common';
|
|
29
29
|
|
|
30
|
-
interface IAIClient {
|
|
31
|
-
init(): Promise<
|
|
30
|
+
interface IAIClient<AP extends Record<string, unknown> = Record<string, unknown>> {
|
|
31
|
+
init(): Promise<{
|
|
32
|
+
initialConversationId: string;
|
|
33
|
+
conversations: IConversation[];
|
|
34
|
+
}>;
|
|
32
35
|
sendMessage<TChunk = unknown>(
|
|
33
36
|
conversationId: string,
|
|
34
37
|
message: string,
|
|
35
38
|
options?: ISendMessageOptions<TChunk>
|
|
36
|
-
): Promise<TChunk | IMessageResponse | void>;
|
|
39
|
+
): Promise<TChunk | IMessageResponse<AP> | void>;
|
|
37
40
|
getDefaultStreamingHandler?<TChunk = unknown>(): IStreamingHandler<TChunk> | undefined;
|
|
38
|
-
getConversationHistory(conversationId: string, options?: IRequestOptions): Promise<IConversationHistoryResponse
|
|
41
|
+
getConversationHistory(conversationId: string, options?: IRequestOptions): Promise<IConversationHistoryResponse<AP>>;
|
|
39
42
|
healthCheck(options?: IRequestOptions): Promise<unknown>;
|
|
40
43
|
getServiceStatus?(options?: IRequestOptions): Promise<unknown>;
|
|
44
|
+
createNewConversation(): Promise<IConversation>;
|
|
41
45
|
}
|
|
42
46
|
```
|
|
43
47
|
|
|
@@ -165,7 +169,7 @@ import {
|
|
|
165
169
|
IRequestOptions,
|
|
166
170
|
IMessageResponse,
|
|
167
171
|
IConversationHistoryResponse,
|
|
168
|
-
|
|
172
|
+
IConversation
|
|
169
173
|
} from '@redhat-cloud-services/ai-client-common';
|
|
170
174
|
|
|
171
175
|
// Standard request options
|
|
@@ -175,12 +179,18 @@ const options: IRequestOptions = {
|
|
|
175
179
|
};
|
|
176
180
|
|
|
177
181
|
// Message response structure
|
|
178
|
-
interface IMessageResponse {
|
|
182
|
+
interface IMessageResponse<AP = Record<string, unknown>> {
|
|
179
183
|
messageId: string;
|
|
180
184
|
answer: string;
|
|
181
185
|
conversationId: string;
|
|
182
186
|
createdAt?: string;
|
|
183
|
-
|
|
187
|
+
additionalAttributes?: AP;
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
// Conversation structure
|
|
191
|
+
interface IConversation {
|
|
192
|
+
id: string;
|
|
193
|
+
title: string;
|
|
184
194
|
}
|
|
185
195
|
```
|
|
186
196
|
|
package/package.json
CHANGED
|
@@ -48,7 +48,10 @@ export interface IAIClient<AP extends Record<string, unknown> = Record<string, u
|
|
|
48
48
|
* This method is called once when the client is first used by a state manager
|
|
49
49
|
* @returns Promise that resolves to the initial conversation ID
|
|
50
50
|
*/
|
|
51
|
-
init(): Promise<
|
|
51
|
+
init(): Promise<{
|
|
52
|
+
initialConversationId: string;
|
|
53
|
+
conversations: IConversation[];
|
|
54
|
+
}>;
|
|
52
55
|
/**
|
|
53
56
|
* Send a message to the AI service
|
|
54
57
|
* @param conversationId - The conversation ID to send the message to
|
|
@@ -81,6 +84,11 @@ export interface IAIClient<AP extends Record<string, unknown> = Record<string, u
|
|
|
81
84
|
* @returns Promise that resolves to service status information
|
|
82
85
|
*/
|
|
83
86
|
getServiceStatus?(options?: IRequestOptions): Promise<unknown>;
|
|
87
|
+
/**
|
|
88
|
+
* Create a new conversation
|
|
89
|
+
* @returns Promise that resolves to the newly created conversation
|
|
90
|
+
*/
|
|
91
|
+
createNewConversation(): Promise<IConversation>;
|
|
84
92
|
}
|
|
85
93
|
/**
|
|
86
94
|
* Base error class for all AI client errors
|
|
@@ -195,43 +203,21 @@ export interface IAnswerSource {
|
|
|
195
203
|
*/
|
|
196
204
|
snippet?: string | null;
|
|
197
205
|
}
|
|
198
|
-
|
|
199
|
-
* Single message in conversation history
|
|
200
|
-
*/
|
|
201
|
-
export interface IConversationHistoryMessage<T extends Record<string, unknown> = Record<string, unknown>> {
|
|
202
|
-
/**
|
|
203
|
-
* Unique identifier for the message
|
|
204
|
-
*/
|
|
206
|
+
export interface IConversationMessage<T extends Record<string, unknown> = Record<string, unknown>> {
|
|
205
207
|
message_id: string;
|
|
206
|
-
/**
|
|
207
|
-
* When the message was received
|
|
208
|
-
*/
|
|
209
|
-
received_at: string;
|
|
210
|
-
/**
|
|
211
|
-
* The user's input/question
|
|
212
|
-
*/
|
|
213
|
-
input: string;
|
|
214
|
-
/**
|
|
215
|
-
* When the AI response was created
|
|
216
|
-
*/
|
|
217
|
-
created_at: string;
|
|
218
|
-
/**
|
|
219
|
-
* The AI's answer
|
|
220
|
-
*/
|
|
221
208
|
answer: string;
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
*/
|
|
225
|
-
sources: IAnswerSource[];
|
|
226
|
-
/**
|
|
227
|
-
* Additional data associated with the message
|
|
228
|
-
*/
|
|
209
|
+
role: 'user' | 'bot';
|
|
210
|
+
input: string;
|
|
229
211
|
additionalData?: T;
|
|
230
212
|
}
|
|
231
213
|
/**
|
|
232
214
|
* Response type for conversation history requests
|
|
233
215
|
*/
|
|
234
|
-
export type IConversationHistoryResponse<T extends Record<string, unknown> = Record<string, unknown>> =
|
|
216
|
+
export type IConversationHistoryResponse<T extends Record<string, unknown> = Record<string, unknown>> = IConversationMessage<T>[] | null;
|
|
217
|
+
export interface IConversation {
|
|
218
|
+
id: string;
|
|
219
|
+
title: string;
|
|
220
|
+
}
|
|
235
221
|
export interface IErrorMessageResponse {
|
|
236
222
|
error: any;
|
|
237
223
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-client-common.d.ts","sourceRoot":"","sources":["../../../../../packages/ai-client-common/src/lib/ai-client-common.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,CAAC,KAAK,EAAE,WAAW,GAAG,GAAG,EAAE,IAAI,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;CACnE;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB,CAAC,MAAM,GAAG,OAAO;IACjD;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,aAAa,EAAE,cAAc,CAAC;IAE9B;;;;OAIG;IACH,uBAAuB,CAAC,EAAE,iBAAiB,CAAC,MAAM,CAAC,CAAC;CACrD;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEjC;;OAEG;IACH,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED;;;GAGG;AACH,MAAM,WAAW,SAAS,CAAC,EAAE,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACrF;;;;OAIG;IACH,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"ai-client-common.d.ts","sourceRoot":"","sources":["../../../../../packages/ai-client-common/src/lib/ai-client-common.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-client-common.js","sourceRoot":"","sources":["../../../../../packages/ai-client-common/src/lib/ai-client-common.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"ai-client-common.js","sourceRoot":"","sources":["../../../../../packages/ai-client-common/src/lib/ai-client-common.ts"],"names":[],"mappings":";;;AAgHA;;GAEG;AACH,MAAa,aAAc,SAAQ,KAAK;IACtC,YACS,MAAc,EACd,UAAkB,EACzB,OAAe,EACR,IAAc;QAErB,KAAK,CAAC,OAAO,CAAC,CAAC;QALR,WAAM,GAAN,MAAM,CAAQ;QACd,eAAU,GAAV,UAAU,CAAQ;QAElB,SAAI,GAAJ,IAAI,CAAU;QAGrB,IAAI,CAAC,IAAI,GAAG,eAAe,CAAC;IAC9B,CAAC;CACF;AAVD,sCAUC;AAWD,MAAa,uBAAwB,SAAQ,aAAa;IACxD,YAAmB,gBAAoC;QACrD,KAAK,CAAC,GAAG,EAAE,kBAAkB,EAAE,2BAA2B,EAAE,gBAAgB,CAAC,CAAC;QAD7D,qBAAgB,GAAhB,gBAAgB,CAAoB;QAErD,IAAI,CAAC,IAAI,GAAG,yBAAyB,CAAC;IACxC,CAAC;CACF;AALD,0DAKC"}
|