microsoft/onnxruntime-extensions

Public

mirrored fromhttps://github.com/microsoft/onnxruntime-extensionsAvailable

CodeCommitsIssuesPull requestsActionsInsightsSecurity
b3a300d7bf6f3e99fb907e682f7246ed5ed5805e

Branches

Tags

  • No tags available.
0Branches0Tags
Go to file
Add file
Code

Clone

HTTPS

Download ZIP

tokenizer/sentencepiece_tokenizer.hpp

25lines · modecode

1// Copyright (c) Microsoft Corporation. All rights reserved.
2// Licensed under the MIT License.
3
4#pragma once
5
6#include "kernels/kernels.h"
7#include "utils.h"
8#include "sentencepiece_processor.h"
9
10struct KernelSentencepieceTokenizer : BaseKernel {
11 KernelSentencepieceTokenizer(OrtApi api, const OrtKernelInfo* info);
12 void Compute(OrtKernelContext* context);
13
14 private:
15 sentencepiece::SentencePieceProcessor tokenizer_;
16};
17
18struct CustomOpSentencepieceTokenizer : Ort::CustomOpBase<CustomOpSentencepieceTokenizer, KernelSentencepieceTokenizer> {
19 void* CreateKernel(OrtApi api, const OrtKernelInfo* info) const;
20 const char* GetName() const;
21 size_t GetInputTypeCount() const;
22 ONNXTensorElementDataType GetInputType(size_t index) const;
23 size_t GetOutputTypeCount() const;
24 ONNXTensorElementDataType GetOutputType(size_t index) const;
25};
26