@botonic/plugin-knowledge-bases 0.32.0 → 0.33.0-alpha.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.
@@ -1,14 +1,15 @@
1
1
  import { AxiosResponse } from 'axios';
2
+ import { Chunk } from './types';
2
3
  export declare class HubtypeApiService {
3
4
  private host;
4
5
  private timeout;
5
6
  constructor(host: string, timeout?: number);
6
- inference(authToken: string, question: string, sources: string[]): Promise<AxiosResponse<{
7
+ inference(authToken: string, sources: string[], instructions: string, messageId: string, memoryLength: number): Promise<AxiosResponse<{
7
8
  inference_id: string;
8
- question: string;
9
- answer: string;
9
+ query: string;
10
+ chunks: Chunk[];
10
11
  has_knowledge: boolean;
11
12
  is_faithful: boolean;
12
- chunk_ids: string[];
13
+ answer: string;
13
14
  }>>;
14
15
  }
@@ -10,18 +10,20 @@ class HubtypeApiService {
10
10
  this.host = host;
11
11
  this.timeout = timeout || DEFAULT_TIMEOUT;
12
12
  }
13
- inference(authToken, question, sources) {
13
+ inference(authToken, sources, instructions, messageId, memoryLength) {
14
14
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
15
15
  return yield (0, axios_1.default)({
16
16
  method: 'POST',
17
- url: `${this.host}/external/v1/ai/knowledge_base/inference/`,
17
+ url: `${this.host}/external/v2/ai/knowledge_base/inference/`,
18
18
  headers: {
19
19
  Authorization: `Bearer ${authToken}`,
20
20
  'Content-Type': 'application/json',
21
21
  },
22
22
  data: {
23
- question,
24
23
  sources,
24
+ instructions,
25
+ message: messageId,
26
+ memory_length: memoryLength,
25
27
  },
26
28
  timeout: this.timeout,
27
29
  });
@@ -1 +1 @@
1
- {"version":3,"file":"hubtype-knowledge-api-service.js","sourceRoot":"","sources":["../../src/hubtype-knowledge-api-service.ts"],"names":[],"mappings":";;;;AAAA,yDAAyD;AACzD,0DAA4C;AAE5C,MAAM,eAAe,GAAG,KAAK,CAAA;AAE7B,MAAa,iBAAiB;IAI5B,YAAY,IAAY,EAAE,OAAgB;QACxC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,OAAO,GAAG,OAAO,IAAI,eAAe,CAAA;IAC3C,CAAC;IAEK,SAAS,CACb,SAAiB,EACjB,QAAgB,EAChB,OAAiB;;YAWjB,OAAO,MAAM,IAAA,eAAK,EAAC;gBACjB,MAAM,EAAE,MAAM;gBACd,GAAG,EAAE,GAAG,IAAI,CAAC,IAAI,2CAA2C;gBAC5D,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,SAAS,EAAE;oBACpC,cAAc,EAAE,kBAAkB;iBACnC;gBACD,IAAI,EAAE;oBACJ,QAAQ;oBACR,OAAO;iBACR;gBACD,OAAO,EAAE,IAAI,CAAC,OAAO;aACtB,CAAC,CAAA;QACJ,CAAC;KAAA;CACF;AArCD,8CAqCC"}
1
+ {"version":3,"file":"hubtype-knowledge-api-service.js","sourceRoot":"","sources":["../../src/hubtype-knowledge-api-service.ts"],"names":[],"mappings":";;;;AAAA,yDAAyD;AACzD,0DAA4C;AAI5C,MAAM,eAAe,GAAG,KAAK,CAAA;AAE7B,MAAa,iBAAiB;IAI5B,YAAY,IAAY,EAAE,OAAgB;QACxC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,OAAO,GAAG,OAAO,IAAI,eAAe,CAAA;IAC3C,CAAC;IAEK,SAAS,CACb,SAAiB,EACjB,OAAiB,EACjB,YAAoB,EACpB,SAAiB,EACjB,YAAoB;;YAWpB,OAAO,MAAM,IAAA,eAAK,EAAC;gBACjB,MAAM,EAAE,MAAM;gBACd,GAAG,EAAE,GAAG,IAAI,CAAC,IAAI,2CAA2C;gBAC5D,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,SAAS,EAAE;oBACpC,cAAc,EAAE,kBAAkB;iBACnC;gBACD,IAAI,EAAE;oBACJ,OAAO;oBACP,YAAY;oBACZ,OAAO,EAAE,SAAS;oBAClB,aAAa,EAAE,YAAY;iBAC5B;gBACD,OAAO,EAAE,IAAI,CAAC,OAAO;aACtB,CAAC,CAAA;QACJ,CAAC;KAAA;CACF;AAzCD,8CAyCC"}
@@ -5,6 +5,6 @@ export default class BotonicPluginKnowledgeBases implements Plugin {
5
5
  private readonly authToken;
6
6
  constructor(options: PluginKnowledgeBaseOptions);
7
7
  pre(_request: PluginPreRequest): Promise<void>;
8
- getInference(session: Session, userInput: string, sources: string[]): Promise<KnowledgeBaseResponse>;
8
+ getInference(session: Session, sources: string[], instructions: string, messageId: string, memoryLength: number): Promise<KnowledgeBaseResponse>;
9
9
  }
10
10
  export { PluginKnowledgeBaseOptions } from './types';
package/lib/cjs/index.js CHANGED
@@ -13,17 +13,16 @@ class BotonicPluginKnowledgeBases {
13
13
  return;
14
14
  });
15
15
  }
16
- getInference(session, userInput, sources) {
16
+ getInference(session, sources, instructions, messageId, memoryLength) {
17
17
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
18
18
  const authToken = isProd ? session._access_token : this.authToken;
19
- const response = yield this.apiService.inference(authToken, userInput, sources);
19
+ const response = yield this.apiService.inference(authToken, sources, instructions, messageId, memoryLength);
20
20
  return {
21
21
  inferenceId: response.data.inference_id,
22
- question: response.data.question,
23
- answer: response.data.answer,
22
+ chunks: response.data.chunks,
24
23
  hasKnowledge: response.data.has_knowledge,
25
- isFaithuful: response.data.is_faithful,
26
- chunkIds: response.data.chunk_ids,
24
+ isFaithful: response.data.is_faithful,
25
+ answer: response.data.answer,
27
26
  };
28
27
  });
29
28
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAEA,mFAAmE;AAGnE,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,CAAA;AAEpD,MAAqB,2BAA2B;IAI9C,YAAY,OAAmC;QAC7C,IAAI,CAAC,UAAU,GAAG,IAAI,iDAAiB,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,CAAA;QACtE,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,EAAE,CAAA;IAC1C,CAAC;IAEK,GAAG,CAAC,QAA0B;;YAClC,OAAM;QACR,CAAC;KAAA;IAEK,YAAY,CAChB,OAAgB,EAChB,SAAiB,EACjB,OAAiB;;YAEjB,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAA;YAEjE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,CAC9C,SAAS,EACT,SAAS,EACT,OAAO,CACR,CAAA;YAED,OAAO;gBACL,WAAW,EAAE,QAAQ,CAAC,IAAI,CAAC,YAAY;gBACvC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,QAAQ;gBAChC,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,MAAM;gBAC5B,YAAY,EAAE,QAAQ,CAAC,IAAI,CAAC,aAAa;gBACzC,WAAW,EAAE,QAAQ,CAAC,IAAI,CAAC,WAAW;gBACtC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,SAAS;aAClC,CAAA;QACH,CAAC;KAAA;CACF;AAnCD,8CAmCC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAEA,mFAAmE;AAGnE,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,CAAA;AAEpD,MAAqB,2BAA2B;IAI9C,YAAY,OAAmC;QAC7C,IAAI,CAAC,UAAU,GAAG,IAAI,iDAAiB,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,CAAA;QACtE,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,EAAE,CAAA;IAC1C,CAAC;IAEK,GAAG,CAAC,QAA0B;;YAClC,OAAM;QACR,CAAC;KAAA;IAEK,YAAY,CAChB,OAAgB,EAChB,OAAiB,EACjB,YAAoB,EACpB,SAAiB,EACjB,YAAoB;;YAEpB,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAA;YAEjE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,CAC9C,SAAS,EACT,OAAO,EACP,YAAY,EACZ,SAAS,EACT,YAAY,CACb,CAAA;YAED,OAAO;gBACL,WAAW,EAAE,QAAQ,CAAC,IAAI,CAAC,YAAY;gBACvC,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,MAAM;gBAC5B,YAAY,EAAE,QAAQ,CAAC,IAAI,CAAC,aAAa;gBACzC,UAAU,EAAE,QAAQ,CAAC,IAAI,CAAC,WAAW;gBACrC,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,MAAM;aAC7B,CAAA;QACH,CAAC;KAAA;CACF;AAtCD,8CAsCC"}
@@ -5,9 +5,12 @@ export interface PluginKnowledgeBaseOptions {
5
5
  }
6
6
  export interface KnowledgeBaseResponse {
7
7
  inferenceId: string;
8
- question: string;
9
- answer: string;
10
8
  hasKnowledge: boolean;
11
- isFaithuful: boolean;
12
- chunkIds: string[];
9
+ isFaithful: boolean;
10
+ chunks: Chunk[];
11
+ answer: string;
12
+ }
13
+ export interface Chunk {
14
+ id: string;
15
+ text: string;
13
16
  }
@@ -1,14 +1,15 @@
1
1
  import { AxiosResponse } from 'axios';
2
+ import { Chunk } from './types';
2
3
  export declare class HubtypeApiService {
3
4
  private host;
4
5
  private timeout;
5
6
  constructor(host: string, timeout?: number);
6
- inference(authToken: string, question: string, sources: string[]): Promise<AxiosResponse<{
7
+ inference(authToken: string, sources: string[], instructions: string, messageId: string, memoryLength: number): Promise<AxiosResponse<{
7
8
  inference_id: string;
8
- question: string;
9
- answer: string;
9
+ query: string;
10
+ chunks: Chunk[];
10
11
  has_knowledge: boolean;
11
12
  is_faithful: boolean;
12
- chunk_ids: string[];
13
+ answer: string;
13
14
  }>>;
14
15
  }
@@ -7,18 +7,20 @@ export class HubtypeApiService {
7
7
  this.host = host;
8
8
  this.timeout = timeout || DEFAULT_TIMEOUT;
9
9
  }
10
- inference(authToken, question, sources) {
10
+ inference(authToken, sources, instructions, messageId, memoryLength) {
11
11
  return __awaiter(this, void 0, void 0, function* () {
12
12
  return yield axios({
13
13
  method: 'POST',
14
- url: `${this.host}/external/v1/ai/knowledge_base/inference/`,
14
+ url: `${this.host}/external/v2/ai/knowledge_base/inference/`,
15
15
  headers: {
16
16
  Authorization: `Bearer ${authToken}`,
17
17
  'Content-Type': 'application/json',
18
18
  },
19
19
  data: {
20
- question,
21
20
  sources,
21
+ instructions,
22
+ message: messageId,
23
+ memory_length: memoryLength,
22
24
  },
23
25
  timeout: this.timeout,
24
26
  });
@@ -1 +1 @@
1
- {"version":3,"file":"hubtype-knowledge-api-service.js","sourceRoot":"","sources":["../../src/hubtype-knowledge-api-service.ts"],"names":[],"mappings":";AAAA,yDAAyD;AACzD,OAAO,KAAwB,MAAM,OAAO,CAAA;AAE5C,MAAM,eAAe,GAAG,KAAK,CAAA;AAE7B,MAAM,OAAO,iBAAiB;IAI5B,YAAY,IAAY,EAAE,OAAgB;QACxC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,OAAO,GAAG,OAAO,IAAI,eAAe,CAAA;IAC3C,CAAC;IAEK,SAAS,CACb,SAAiB,EACjB,QAAgB,EAChB,OAAiB;;YAWjB,OAAO,MAAM,KAAK,CAAC;gBACjB,MAAM,EAAE,MAAM;gBACd,GAAG,EAAE,GAAG,IAAI,CAAC,IAAI,2CAA2C;gBAC5D,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,SAAS,EAAE;oBACpC,cAAc,EAAE,kBAAkB;iBACnC;gBACD,IAAI,EAAE;oBACJ,QAAQ;oBACR,OAAO;iBACR;gBACD,OAAO,EAAE,IAAI,CAAC,OAAO;aACtB,CAAC,CAAA;QACJ,CAAC;KAAA;CACF"}
1
+ {"version":3,"file":"hubtype-knowledge-api-service.js","sourceRoot":"","sources":["../../src/hubtype-knowledge-api-service.ts"],"names":[],"mappings":";AAAA,yDAAyD;AACzD,OAAO,KAAwB,MAAM,OAAO,CAAA;AAI5C,MAAM,eAAe,GAAG,KAAK,CAAA;AAE7B,MAAM,OAAO,iBAAiB;IAI5B,YAAY,IAAY,EAAE,OAAgB;QACxC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,OAAO,GAAG,OAAO,IAAI,eAAe,CAAA;IAC3C,CAAC;IAEK,SAAS,CACb,SAAiB,EACjB,OAAiB,EACjB,YAAoB,EACpB,SAAiB,EACjB,YAAoB;;YAWpB,OAAO,MAAM,KAAK,CAAC;gBACjB,MAAM,EAAE,MAAM;gBACd,GAAG,EAAE,GAAG,IAAI,CAAC,IAAI,2CAA2C;gBAC5D,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,SAAS,EAAE;oBACpC,cAAc,EAAE,kBAAkB;iBACnC;gBACD,IAAI,EAAE;oBACJ,OAAO;oBACP,YAAY;oBACZ,OAAO,EAAE,SAAS;oBAClB,aAAa,EAAE,YAAY;iBAC5B;gBACD,OAAO,EAAE,IAAI,CAAC,OAAO;aACtB,CAAC,CAAA;QACJ,CAAC;KAAA;CACF"}
@@ -5,6 +5,6 @@ export default class BotonicPluginKnowledgeBases implements Plugin {
5
5
  private readonly authToken;
6
6
  constructor(options: PluginKnowledgeBaseOptions);
7
7
  pre(_request: PluginPreRequest): Promise<void>;
8
- getInference(session: Session, userInput: string, sources: string[]): Promise<KnowledgeBaseResponse>;
8
+ getInference(session: Session, sources: string[], instructions: string, messageId: string, memoryLength: number): Promise<KnowledgeBaseResponse>;
9
9
  }
10
10
  export { PluginKnowledgeBaseOptions } from './types';
package/lib/esm/index.js CHANGED
@@ -11,17 +11,16 @@ export default class BotonicPluginKnowledgeBases {
11
11
  return;
12
12
  });
13
13
  }
14
- getInference(session, userInput, sources) {
14
+ getInference(session, sources, instructions, messageId, memoryLength) {
15
15
  return __awaiter(this, void 0, void 0, function* () {
16
16
  const authToken = isProd ? session._access_token : this.authToken;
17
- const response = yield this.apiService.inference(authToken, userInput, sources);
17
+ const response = yield this.apiService.inference(authToken, sources, instructions, messageId, memoryLength);
18
18
  return {
19
19
  inferenceId: response.data.inference_id,
20
- question: response.data.question,
21
- answer: response.data.answer,
20
+ chunks: response.data.chunks,
22
21
  hasKnowledge: response.data.has_knowledge,
23
- isFaithuful: response.data.is_faithful,
24
- chunkIds: response.data.chunk_ids,
22
+ isFaithful: response.data.is_faithful,
23
+ answer: response.data.answer,
25
24
  };
26
25
  });
27
26
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAA;AAGnE,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,CAAA;AAEpD,MAAM,CAAC,OAAO,OAAO,2BAA2B;IAI9C,YAAY,OAAmC;QAC7C,IAAI,CAAC,UAAU,GAAG,IAAI,iBAAiB,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,CAAA;QACtE,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,EAAE,CAAA;IAC1C,CAAC;IAEK,GAAG,CAAC,QAA0B;;YAClC,OAAM;QACR,CAAC;KAAA;IAEK,YAAY,CAChB,OAAgB,EAChB,SAAiB,EACjB,OAAiB;;YAEjB,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAA;YAEjE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,CAC9C,SAAS,EACT,SAAS,EACT,OAAO,CACR,CAAA;YAED,OAAO;gBACL,WAAW,EAAE,QAAQ,CAAC,IAAI,CAAC,YAAY;gBACvC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,QAAQ;gBAChC,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,MAAM;gBAC5B,YAAY,EAAE,QAAQ,CAAC,IAAI,CAAC,aAAa;gBACzC,WAAW,EAAE,QAAQ,CAAC,IAAI,CAAC,WAAW;gBACtC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,SAAS;aAClC,CAAA;QACH,CAAC;KAAA;CACF"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAA;AAGnE,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,CAAA;AAEpD,MAAM,CAAC,OAAO,OAAO,2BAA2B;IAI9C,YAAY,OAAmC;QAC7C,IAAI,CAAC,UAAU,GAAG,IAAI,iBAAiB,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,CAAA;QACtE,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,EAAE,CAAA;IAC1C,CAAC;IAEK,GAAG,CAAC,QAA0B;;YAClC,OAAM;QACR,CAAC;KAAA;IAEK,YAAY,CAChB,OAAgB,EAChB,OAAiB,EACjB,YAAoB,EACpB,SAAiB,EACjB,YAAoB;;YAEpB,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAA;YAEjE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,CAC9C,SAAS,EACT,OAAO,EACP,YAAY,EACZ,SAAS,EACT,YAAY,CACb,CAAA;YAED,OAAO;gBACL,WAAW,EAAE,QAAQ,CAAC,IAAI,CAAC,YAAY;gBACvC,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,MAAM;gBAC5B,YAAY,EAAE,QAAQ,CAAC,IAAI,CAAC,aAAa;gBACzC,UAAU,EAAE,QAAQ,CAAC,IAAI,CAAC,WAAW;gBACrC,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,MAAM;aAC7B,CAAA;QACH,CAAC;KAAA;CACF"}
@@ -5,9 +5,12 @@ export interface PluginKnowledgeBaseOptions {
5
5
  }
6
6
  export interface KnowledgeBaseResponse {
7
7
  inferenceId: string;
8
- question: string;
9
- answer: string;
10
8
  hasKnowledge: boolean;
11
- isFaithuful: boolean;
12
- chunkIds: string[];
9
+ isFaithful: boolean;
10
+ chunks: Chunk[];
11
+ answer: string;
12
+ }
13
+ export interface Chunk {
14
+ id: string;
15
+ text: string;
13
16
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@botonic/plugin-knowledge-bases",
3
- "version": "0.32.0",
3
+ "version": "0.33.0-alpha.0",
4
4
  "description": "Use a Hubtype to make the bot respond through a knowledge base.",
5
5
  "main": "./lib/cjs/index.js",
6
6
  "module": "./lib/esm/index.js",
@@ -1,6 +1,8 @@
1
1
  /* eslint-disable @typescript-eslint/naming-convention */
2
2
  import axios, { AxiosResponse } from 'axios'
3
3
 
4
+ import { Chunk } from './types'
5
+
4
6
  const DEFAULT_TIMEOUT = 10000
5
7
 
6
8
  export class HubtypeApiService {
@@ -14,28 +16,32 @@ export class HubtypeApiService {
14
16
 
15
17
  async inference(
16
18
  authToken: string,
17
- question: string,
18
- sources: string[]
19
+ sources: string[],
20
+ instructions: string,
21
+ messageId: string,
22
+ memoryLength: number
19
23
  ): Promise<
20
24
  AxiosResponse<{
21
25
  inference_id: string
22
- question: string
23
- answer: string
26
+ query: string
27
+ chunks: Chunk[]
24
28
  has_knowledge: boolean
25
29
  is_faithful: boolean
26
- chunk_ids: string[]
30
+ answer: string
27
31
  }>
28
32
  > {
29
33
  return await axios({
30
34
  method: 'POST',
31
- url: `${this.host}/external/v1/ai/knowledge_base/inference/`,
35
+ url: `${this.host}/external/v2/ai/knowledge_base/inference/`,
32
36
  headers: {
33
37
  Authorization: `Bearer ${authToken}`,
34
38
  'Content-Type': 'application/json',
35
39
  },
36
40
  data: {
37
- question,
38
41
  sources,
42
+ instructions,
43
+ message: messageId,
44
+ memory_length: memoryLength,
39
45
  },
40
46
  timeout: this.timeout,
41
47
  })
package/src/index.ts CHANGED
@@ -20,24 +20,27 @@ export default class BotonicPluginKnowledgeBases implements Plugin {
20
20
 
21
21
  async getInference(
22
22
  session: Session,
23
- userInput: string,
24
- sources: string[]
23
+ sources: string[],
24
+ instructions: string,
25
+ messageId: string,
26
+ memoryLength: number
25
27
  ): Promise<KnowledgeBaseResponse> {
26
28
  const authToken = isProd ? session._access_token : this.authToken
27
29
 
28
30
  const response = await this.apiService.inference(
29
31
  authToken,
30
- userInput,
31
- sources
32
+ sources,
33
+ instructions,
34
+ messageId,
35
+ memoryLength
32
36
  )
33
37
 
34
38
  return {
35
39
  inferenceId: response.data.inference_id,
36
- question: response.data.question,
37
- answer: response.data.answer,
40
+ chunks: response.data.chunks,
38
41
  hasKnowledge: response.data.has_knowledge,
39
- isFaithuful: response.data.is_faithful,
40
- chunkIds: response.data.chunk_ids,
42
+ isFaithful: response.data.is_faithful,
43
+ answer: response.data.answer,
41
44
  }
42
45
  }
43
46
  }
package/src/types.ts CHANGED
@@ -6,9 +6,13 @@ export interface PluginKnowledgeBaseOptions {
6
6
 
7
7
  export interface KnowledgeBaseResponse {
8
8
  inferenceId: string
9
- question: string
10
- answer: string
11
9
  hasKnowledge: boolean
12
- isFaithuful: boolean
13
- chunkIds: string[]
10
+ isFaithful: boolean
11
+ chunks: Chunk[]
12
+ answer: string
13
+ }
14
+
15
+ export interface Chunk {
16
+ id: string
17
+ text: string
14
18
  }