multiDocsQuery method
Implementation
Future<MultiDocsQueryResultDto> multiDocsQuery(MultiDocsQueryRequestDto multiDocsQueryRequestDto) async {
Completer<TokenUsage> completer = Completer<TokenUsage>();
LLMSettings llmSettings = LLMSettings(llmConfig: multiDocsQueryRequestDto.llmConfig.toModel(), listenToken: (TokenUsage tokenUsage) => completer.complete(tokenUsage));
List<MultiDocsQuerySegment> multiDocsQueryResultList = await _vdb.multiQuery(
multiDocsQueryRequestDto.docsIdList,
multiDocsQueryRequestDto.queryText,
llmSettings,
nResults: multiDocsQueryRequestDto.nResults,
removeDuplicates: multiDocsQueryRequestDto.removeDuplicates
);
TokenUsage tokenUsage = await completer.future;
MultiDocsQueryResultDto multiDocsQueryResultDto = MultiDocsQueryResultDto(
segmentResultList: multiDocsQueryResultList.map((multiDocsQuerySegment)=>MultiDocsQuerySegmentDto.fromModel(multiDocsQuerySegment)).toList(),
tokenUsage: TokenUsageDto.fromModel(tokenUsage)
);
return multiDocsQueryResultDto;
}