Spaces:
Runtime error
Runtime error
<!--Copyright 2023 The HuggingFace Team. All rights reserved. | |
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. | |
โ ๏ธ Note that this file is in Markdown but contain specific syntax for our doc-builder (similar to MDX) that may not be | |
rendered properly in your Markdown viewer. | |
--> | |
# TFLite๋ก ๋ด๋ณด๋ด๊ธฐ[[export-to-tflite]] | |
[TensorFlow Lite](https://www.tensorflow.org/lite/guide)๋ ์์์ด ์ ํ๋ ํด๋ํฐ, ์๋ฒ ๋๋ ์์คํ , ์ฌ๋ฌผ์ธํฐ๋ท(IoT) ๊ธฐ๊ธฐ์์ | |
๊ธฐ๊ณํ์ต ๋ชจ๋ธ์ ๋ฐฐํฌํ๊ธฐ ์ํ ๊ฒฝ๋ ํ๋ ์์ํฌ์ ๋๋ค. | |
TFLite๋ ์ฐ์ฐ ๋ฅ๋ ฅ, ๋ฉ๋ชจ๋ฆฌ, ์ ๋ ฅ ์๋น๊ฐ ์ ํ๋ ๊ธฐ๊ธฐ์์ ๋ชจ๋ธ์ ํจ์จ์ ์ผ๋ก ์ต์ ํํ๊ณ ์คํํ๊ธฐ ์ํด | |
์ค๊ณ๋์์ต๋๋ค. | |
TensorFlow Lite ๋ชจ๋ธ์ `.tflite` ํ์ผ ํ์ฅ์๋ก ์๋ณ๋๋ ํน์ํ๊ณ ํจ์จ์ ์ธ ํด๋์ฉ ํฌ๋งท์ผ๋ก ํํ๋ฉ๋๋ค. | |
๐ค Optimum์ `exporters.tflite` ๋ชจ๋๋ก ๐ค Transformers ๋ชจ๋ธ์ TFLite๋ก ๋ด๋ณด๋ด๋ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค. | |
์ง์๋๋ ๋ชจ๋ธ ์ํคํ ์ฒ ๋ชฉ๋ก์ [๐ค Optimum ๋ฌธ์](https://huggingface.co/docs/optimum/exporters/tflite/overview)๋ฅผ ์ฐธ๊ณ ํ์ธ์. | |
๋ชจ๋ธ์ TFLite๋ก ๋ด๋ณด๋ด๋ ค๋ฉด, ํ์ํ ์ข ์์ฑ์ ์ค์นํ์ธ์: | |
```bash | |
pip install optimum[exporters-tf] | |
``` | |
๋ชจ๋ ์ฌ์ฉ ๊ฐ๋ฅํ ์ธ์๋ฅผ ํ์ธํ๋ ค๋ฉด, [๐ค Optimum ๋ฌธ์](https://huggingface.co/docs/optimum/main/en/exporters/tflite/usage_guides/export_a_model)๋ฅผ ์ฐธ๊ณ ํ๊ฑฐ๋ | |
ํฐ๋ฏธ๋์์ ๋์๋ง์ ์ดํด๋ณด์ธ์: | |
```bash | |
optimum-cli export tflite --help | |
``` | |
์๋ฅผ ๋ค์ด ๐ค Hub์์์ `bert-base-uncased` ๋ชจ๋ธ ์ฒดํฌํฌ์ธํธ๋ฅผ ๋ด๋ณด๋ด๋ ค๋ฉด, ๋ค์ ๋ช ๋ น์ ์คํํ์ธ์: | |
```bash | |
optimum-cli export tflite --model bert-base-uncased --sequence_length 128 bert_tflite/ | |
``` | |
๋ค์๊ณผ ๊ฐ์ด ์งํ ์ํฉ์ ๋ํ๋ด๋ ๋ก๊ทธ์ ๊ฒฐ๊ณผ๋ฌผ์ธ `model.tflite`๊ฐ ์ ์ฅ๋ ์์น๋ฅผ ๋ณด์ฌ์ฃผ๋ ๋ก๊ทธ๊ฐ ํ์๋ฉ๋๋ค: | |
```bash | |
Validating TFLite model... | |
-[โ] TFLite model output names match reference model (logits) | |
- Validating TFLite Model output "logits": | |
-[โ] (1, 128, 30522) matches (1, 128, 30522) | |
-[x] values not close enough, max diff: 5.817413330078125e-05 (atol: 1e-05) | |
The TensorFlow Lite export succeeded with the warning: The maximum absolute difference between the output of the reference model and the TFLite exported model is not within the set tolerance 1e-05: | |
- logits: max diff = 5.817413330078125e-05. | |
The exported model was saved at: bert_tflite | |
``` | |
์ ์์ ๋ ๐ค Hub์์์ ์ฒดํฌํฌ์ธํธ๋ฅผ ๋ด๋ณด๋ด๋ ๋ฐฉ๋ฒ์ ๋ณด์ฌ์ค๋๋ค. | |
๋ก์ปฌ ๋ชจ๋ธ์ ๋ด๋ณด๋ธ๋ค๋ฉด, ๋จผ์ ๋ชจ๋ธ ๊ฐ์ค์น์ ํ ํฌ๋์ด์ ํ์ผ์ด ๋ชจ๋ ๊ฐ์ ๋๋ ํฐ๋ฆฌ( `local_path` )์ ์ ์ฅ๋๋์ง ํ์ธํ์ธ์. | |
CLI๋ฅผ ์ฌ์ฉํ ๋, ๐ค Hub์์์ ์ฒดํฌํฌ์ธํธ ์ด๋ฆ ๋์ `model` ์ธ์์ `local_path`๋ฅผ ์ ๋ฌํ๋ฉด ๋ฉ๋๋ค. |