axinc-ai / ailia-models-cpp

C++ version of ailia models repository
17 stars 2 forks source link

Implement sentence transformers #22

Closed kyakuno closed 1 year ago

kyakuno commented 1 year ago

18

kyakuno commented 1 year ago

Pythonの出力

 INFO sentence_transformers_japanese.py (114) : Generating embeddings...
[array([[    0,     6, 11089,  1434,   154, 25406,     2]]), array([[1, 1, 1, 1, 1, 1, 1]])]
query norm 2.1447282655862807
[ 0.32386481  0.3133517   0.27278855  0.229128    0.23814793  0.25932237
  0.27808477  0.54641926  0.35116385  0.36368895  0.52958476  0.54828987
  0.27118319  0.21542906  0.22282324  0.25069744  0.33052619  0.15293879
  0.17879086  0.22549032  0.33780514  0.09607836  0.26069756  0.03445069
  0.24501098  0.31494167 -0.06189938  0.33583743  0.12237933  0.44934858
  0.54290497  0.47406576  0.43350673  0.49398096  0.42014919  0.29863128
  0.45521317  0.27140063  0.32423021  0.40330902  0.36021114  0.26798432
  0.33908355  0.41386756  0.56621619  0.45038433  0.36719288  0.29544816
  0.41260573  0.26788361  0.25789702  0.2437245   0.2572365   0.41213033
  0.37944211  0.32647565  0.27066615  0.25511561  0.39184735  0.42483996
  0.34692282  0.30510755  0.4401339   0.5752683   0.59162572  0.42695247
  0.38409717  0.4218471   0.38957239  0.39203392  0.28631057  0.12237933]
Prompt: nnapiの速度
Text: 実際、弊社でもSnapdragon 8+ Gen1とyolox_tinyにおいて、CPU(float)に比べてNNAPI NPU(int8)で15倍高速に動作することを確認しています。 (Similarity:0.592)
kyakuno@KazukinoMacBook-Pro sentence_transformers_japanese % 

C++の出力

kyakuno@KazukinoMacBook-Pro sentence_transformers % ./sentence_transformers -e 0
env_id : 0 type : 0 name : CPU
env_id : 1 type : 1 name : CPU-AppleAccelerate
env_id : 2 type : 2 name : MPSDNN-Apple M1 Max (Warning : FP16 backend is not worked this model)
selected env name : CPU
Calculating embeddings
71/72
Input Tokens :
0 6 11089 1434 154 25406 2 
Query norm 2.144729
0.323865 0.313352 0.272789 0.229128 0.238148 0.259322 0.278085 0.546418 0.351164 0.363689 0.529585 0.548290 0.271183 0.215429 0.222823 0.250697 0.330526 0.152939 0.178791 0.225490 0.337805 0.096078 0.260697 0.034451 0.245011 0.314942 -0.061899 0.335837 0.122379 0.449349 0.542905 0.474066 0.433507 0.493981 0.420149 0.298631 0.455213 0.271400 0.324230 0.403308 0.360211 0.267984 0.339083 0.413867 0.566216 0.450384 0.367193 0.295448 0.412605 0.267884 0.257897 0.243724 0.257236 0.412130 0.379442 0.326475 0.270666 0.255116 0.391847 0.424840 0.346923 0.305108 0.440134 0.575268 0.591626 0.426952 0.384097 0.421847 0.389572 0.392034 0.286310 0.122379 Query : nnapiの速度
Result :  実際、弊社でもSnapdragon 8+ Gen1とyolox_tinyにおいて、CPU(float)に比べてNNAPI NPU(int8)で15倍高速に動作することを確認しています。
Similarity : 0.591626
Program finished successfully.