Files
modelscope/tests/export/test_export_token_classification.py

42 lines
1.3 KiB
Python

# Copyright (c) Alibaba, Inc. and its affiliates.
import os
import shutil
import tempfile
import unittest
from collections import OrderedDict
from modelscope.exporters import Exporter, TorchModelExporter
from modelscope.models import Model
from modelscope.utils.constant import Tasks
from modelscope.utils.test_utils import test_level
class TestExportTokenClassification(unittest.TestCase):
def setUp(self):
print(('Testing %s.%s' % (type(self).__name__, self._testMethodName)))
self.tmp_dir = tempfile.TemporaryDirectory().name
if not os.path.exists(self.tmp_dir):
os.makedirs(self.tmp_dir)
self.model_id = 'damo/nlp_raner_named-entity-recognition_chinese-base-news'
def tearDown(self):
shutil.rmtree(self.tmp_dir)
super().tearDown()
@unittest.skipUnless(test_level() >= 0, 'skip test in current test level')
def test_export_token_classification(self):
model = Model.from_pretrained(self.model_id)
with self.subTest(format='onnx'):
print(
Exporter.from_model(model).export_onnx(
output_dir=self.tmp_dir))
with self.subTest(format='torchscript'):
print(
Exporter.from_model(model).export_torch_script(
output_dir=self.tmp_dir))
if __name__ == '__main__':
unittest.main()