2020-05-07 18:26:20 +03:00
// Copyright 2019-present, the HuggingFace Inc. team, The Google AI Language Team and Facebook, Inc.
// Copyright 2019 Guillaume Becquin
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
2020-08-12 14:39:04 +03:00
extern crate anyhow ;
2020-05-07 18:26:20 +03:00
use rust_bert ::pipelines ::sequence_classification ::SequenceClassificationModel ;
2020-08-12 14:39:04 +03:00
fn main ( ) -> anyhow ::Result < ( ) > {
2020-06-23 17:54:46 +03:00
// Set-up model
2020-05-07 18:26:20 +03:00
let sequence_classification_model = SequenceClassificationModel ::new ( Default ::default ( ) ) ? ;
2020-06-23 17:54:46 +03:00
// Define input
2020-05-07 18:26:20 +03:00
let input = [
" Probably my all-time favorite movie, a story of selflessness, sacrifice and dedication to a noble cause, but it's not preachy or boring. " ,
" This film tried to be too many things all at once: stinging political satire, Hollywood blockbuster, sappy romantic comedy, family values promo... " ,
" If you like original gut wrenching laughter you will like this movie. If you are young or old then you will love this movie, hell even my mom liked it. " ,
] ;
2020-06-23 17:54:46 +03:00
// Run model
2022-11-07 20:45:52 +03:00
let output = sequence_classification_model . predict ( input ) ;
2020-05-07 18:26:20 +03:00
for label in output {
2023-01-30 20:53:18 +03:00
println! ( " {label:?} " ) ;
2020-05-07 18:26:20 +03:00
}
Ok ( ( ) )
2020-06-23 17:54:46 +03:00
}