Skip to content

Gigabyte0x1337/BERT-ML.NET

Repository files navigation

BERT-ML.NET

Question and Answering (Q&A) BERT model implementation for ML.NET.

An example of BERT model predictions in .NET Core/.NET Standard.

Model

https://github.com/onnx/models/tree/master/text/machine_comprehension/bert-squad

Download the pre-trained BERT ONNX model by running getDependicies.sh. Or download the model to the BERT.WebApi/Model folder.

GPU usage

The project is setup to run on CPU. This allows the sample to run on machines without an Nvidia GPU.

To run on an Nvidia CUDA GPU:

  • Set hasGpu = true in OnnxModelConfigurator.cs
  • Remove NuGet Microsoft.ML.OnnxRuntime.NoOpenMP
  • Add NuGet Microsoft.ML.OnnxRuntime.Gpu

Example queries

When the solution runs, it will start an ASP.NET webservice at localhost:5001.

Context Question Model Reply
(link) Bob is walking through the woods collecting blueberries and strawberries to make a pie. What is his name? {"tokens":["bob"],"probability":0.8884454}
(link) Bob is walking through the woods collecting blueberries and strawberries to make a pie. What will he bring home? {"tokens":["blueberries","and","strawberries"],"probability":0.4070111}
(link) Bob is walking through the woods collecting blueberries and strawberries to make a pie. Where is Bob? {"tokens":["walking","through","the","woods"],"probability":0.6123137}
(link) Bob is walking through the woods collecting blueberries and strawberries to make a pie. What will he bake? {"tokens":["blueberries","and","strawberries"],"probability":0.48385787}

Releases

No releases published

Packages

No packages published