DiskBasedReportingConfiguration.Create Método

Definição

Cria um ReportingConfiguration que persiste ScenarioRunResults para disco e também usa o disco para armazenar em cache respostas de IA.

public static Microsoft.Extensions.AI.Evaluation.Reporting.ReportingConfiguration Create(string storageRootPath, System.Collections.Generic.IEnumerable<Microsoft.Extensions.AI.Evaluation.IEvaluator> evaluators, Microsoft.Extensions.AI.Evaluation.ChatConfiguration? chatConfiguration = default, bool enableResponseCaching = true, TimeSpan? timeToLiveForCacheEntries = default, System.Collections.Generic.IEnumerable<string>? cachingKeys = default, string executionName = "Default", Func<Microsoft.Extensions.AI.Evaluation.EvaluationMetric,Microsoft.Extensions.AI.Evaluation.EvaluationMetricInterpretation?>? evaluationMetricInterpreter = default, System.Collections.Generic.IEnumerable<string>? tags = default);
static member Create : string * seq<Microsoft.Extensions.AI.Evaluation.IEvaluator> * Microsoft.Extensions.AI.Evaluation.ChatConfiguration * bool * Nullable<TimeSpan> * seq<string> * string * Func<Microsoft.Extensions.AI.Evaluation.EvaluationMetric, Microsoft.Extensions.AI.Evaluation.EvaluationMetricInterpretation> * seq<string> -> Microsoft.Extensions.AI.Evaluation.Reporting.ReportingConfiguration
Public Shared Function Create (storageRootPath As String, evaluators As IEnumerable(Of IEvaluator), Optional chatConfiguration As ChatConfiguration = Nothing, Optional enableResponseCaching As Boolean = true, Optional timeToLiveForCacheEntries As Nullable(Of TimeSpan) = Nothing, Optional cachingKeys As IEnumerable(Of String) = Nothing, Optional executionName As String = "Default", Optional evaluationMetricInterpreter As Func(Of EvaluationMetric, EvaluationMetricInterpretation) = Nothing, Optional tags As IEnumerable(Of String) = Nothing) As ReportingConfiguration

Parâmetros

storageRootPath
String

O caminho para um diretório no disco no qual as ScenarioRunResultrespostas de IA armazenadas em cache e s devem ser armazenadas.

evaluators
IEnumerable<IEvaluator>

O conjunto de IEvaluators que deve ser invocado para avaliar as respostas de IA.

chatConfiguration
ChatConfiguration

Um ChatConfiguration que especifica o IChatClient que é usado por baseado em evaluators IA incluído no retornado ReportingConfiguration. Pode ser omitido se nenhum dos incluídos evaluators for baseado em IA.

enableResponseCaching
Boolean

true para habilitar o cache de respostas de IA; false Caso contrário.

timeToLiveForCacheEntries
Nullable<TimeSpan>

Um opcional TimeSpan que especifica o tempo máximo que as respostas de IA armazenadas em cache devem sobreviver no cache antes de serem consideradas expiradas e removidas.

cachingKeys
IEnumerable<String>

Uma coleção opcional de cadeias de caracteres exclusivas que devem ser hash ao gerar as chaves de cache para respostas de IA armazenadas em cache. Confira CachingKeys mais informações sobre esse conceito.

executionName
String

O nome da execução atual. Confira ExecutionName mais informações sobre esse conceito. Usa um valor "Default" padrão fixo se omitido.

evaluationMetricInterpreter
Func<EvaluationMetric,EvaluationMetricInterpretation>

Uma função opcional que pode ser usada para substituir EvaluationMetricInterpretations para EvaluationMetrics retornados de avaliações que usam o retornado ReportingConfiguration. A função fornecida pode retornar uma nova EvaluationMetricInterpretation para qualquer EvaluationMetric uma que seja fornecida a ela ou retornar null se a Interpretation função deve ser deixada inalterada.

tags
IEnumerable<String>

Um conjunto opcional de marcas de texto aplicáveis a todos os ScenarioRuns criados usando o retornado ReportingConfiguration.

Retornos

Um ReportingConfiguration que persiste ScenarioRunResults para disco e também usa o disco para armazenar em cache respostas de IA.

Comentários

Observe que, quando enableResponseCaching definido como true, as chaves de cache usadas para as respostas armazenadas em cache não têm garantia de serem estáveis entre as versões da biblioteca. Em outras palavras, quando você atualiza seu código para fazer referência a uma versão mais recente da biblioteca, é possível que respostas antigas armazenadas em cache (persistidas no cache usando versões mais antigas da biblioteca) não sejam mais usadas– em vez disso, novas respostas serão buscadas do LLM e adicionadas ao cache para uso em execuções subsequentes.

Aplica-se a