Partilhar via


Microsoft.ML.Runtime Namespace

Namespace que contém tipos necessários para o runtime do ML.NET.

Classes

ComponentCatalog

Isso cataloga componentes instanciáveis (também conhecidos como classes carregáveis). Os componentes são registrados por meio de um descendente de Microsoft.ML.LoadableClassAttributeBase, identificando os nomes e tipos de assinatura sob os quais o tipo de componente deve ser registrado. As assinaturas são tipos delegados que retornam nulos e especificam os tipos de parâmetro para a instanciação do componente. Cada componente também pode especificar um "objeto arguments" que deve ser fornecido no momento da instanciação.

ProgressHeader

Esse é o "cabeçalho" do relatório de progresso.

Estruturas

ChannelMessage

Uma mensagem de canal.

Interfaces

IChannel

Um canal de comunicação padrão.

IChannelProvider

Um provedor de canal pode criar novos canais e pipes de informações genéricas.

IComponentFactory

Essa é uma interface de token que todas as fábricas de componentes devem implementar.

IComponentFactory<TComponent>

Uma interface para criar um componente sem parâmetros extras (além de um IHostEnvironment).

IComponentFactory<TArg1,TComponent>

Uma interface para criar um componente quando usamos um parâmetro extra (e um IHostEnvironment).

IComponentFactory<TArg1,TArg2,TComponent>

Uma interface para criar um componente quando usamos dois parâmetros extras (e um IHostEnvironment).

IComponentFactory<TArg1,TArg2,TArg3,TComponent>

Uma interface para criar um componente quando usamos três parâmetros extras (e um IHostEnvironment).

IExceptionContext

Interface para exceções de "processamento" antes de serem lançadas. Isso pode ser usado para adicionar contexto à exceção, encapsular a exceção em outra, substituir totalmente a exceção etc. Não é legal retornar nulo do Processo (a menos que nulo tenha sido passado, o que realmente não deve acontecer).

IHost

Um host é acoplado a um componente e fornece diretrizes aleatórias de geração de número e simultaneidade. Observe que a geração de número aleatório, como os métodos de ambiente de host, deve ser acessada somente do thread principal do componente.

IHostEnvironment

A interface do ambiente do host cria hosts para componentes. Observe que os métodos dessa interface devem ser chamados do thread principal para o ambiente. Para obter um ambiente para atender a outro thread, chame Fork e passe o resultado de retorno para esse thread.

IPipe<TMessage>

Um pipe de informações genérico. Observe que os canos são descartáveis. Em geral, Done deve ser chamado antes de descartar para sinalizar um desligamento normal do pipe, em vez de uma conclusão anulada.

IProgressChannel

Uma interface comum para relatórios de progresso. Espera-se que a interface do canal de progresso seja usada de apenas um thread.

Fluxo de trabalho com suporte:

  1. Crie o canal por meio de StartProgressChannel(String).
  2. Ligue SetHeader(ProgressHeader, Action<IProgressEntry>) quantas vezes desejar (incluindo 0). Cada chamada para SetHeader(ProgressHeader, Action<IProgressEntry>) substituir a anterior.
  3. Relatar pontos de verificação (0 ou mais) chamando Checkpoint(Nullable<Double>[]).
  4. Repita as etapas 2 a 3 sempre que necessário.
  5. Descarte o canal.
IProgressChannelProvider

Esta é uma interface de fábrica para IProgressChannel. IProgressChannel E IHostEnvironment implemente essa interface para permitir repórteres de progresso aninhados.

REVISÃO: fazer IChannelProvider com que isso seja implementado, em vez do ambiente?

IProgressEntry

Um item de suporte de métrica/progresso.

Enumerações

ChannelMessageKind

Os tipos de mensagens de canal padrão. Observação: esses valores nunca devem ser alterados. Podemos adicionar novos tipos, mas não alterar esses valores. Outras bases de código, incluindo código nativo para outros projetos, dependem desses valores.

MessageSensitivity

Um sinalizador que pode ser anexado a uma mensagem ou exceção para indicar que ele tem uma determinada classe de dados confidenciais. Por padrão, as mensagens devem ser especificadas como sendo de confidencialidade desconhecida, ou seja, cada sinalizador de confidencialidade está ativado, correspondente a Unknown. As mensagens totalmente seguras devem ser marcadas como None. No entanto, se, digamos, um imprimir dados de um arquivo (por exemplo, isso pode ser feito ao expressar erros de análise), ele deve ser sinalizado nesse caso com UserData.