---
# System prepended metadata

title: Windows Web-UI deploy

---

# Windows Web-UI deploy

## 0.container
NVIDIA並沒有提供windows環境下的可以使用gpu的container，所以暫時沒法提供供windows使用的container。
Linux環境的container如果有需要可以提供。

## 1.虛擬環境
如果使用windows進行deploy，比較建議使用[anaconda](https://www.anaconda.com/)作為虛擬環境，比較容易安裝一些library，virtualenv並不適合windows

## ~~2.folder path Bug~~
~~util中read_folder函數應該改成如下~~
```
s = open( os.path.join(root, filename) , encoding="utf-8" ).read().strip().split("\n")
```

## 3.無法定位package torch==1.3.0
由於windows沒有pip的pytorch 1.3.0的版本，因此會造成安裝失敗，需要把原先的requirements中的torch==1.3.0刪除，再手動安裝pytorch。
手動安裝代碼
```
conda install pytorch torchvision cudatoolkit=10.0 -c pytorch
```

## 4.解決pip無法install semantic_text_similarity
這個library中有部分python-levenshtein（其實他沒有用到），這個包需要C++支援，python默認需要巨大無比的VS2014
不過在conda中有包裝好的vs2015 runtime，用conda安裝，可以不用載那麼大的VS2014
```
conda install -c conda-forge python-levenshtein
pip install semantic_text_similarity
```

## 5.tempfile.NamedTemporaryFile沒有讀取權限
windows中使用這個function需要增加一個參數
之前為
```
with tempfile.NamedTemporaryFile as temp_file:
```
需要改成
```
with tempfile.NamedTemporaryFile(delete=False) as temp_file:
```
所以這個操作需要去改動到library，可以通過pip show semantic_text_similarity找到library的位置，
也可以直接run一次改好的code，見https://paste.ubuntu.com/p/nFVj36Hgtd/

## JVM的問題
設定好環境變數後需要reboot讓cmd重新載入classpath

## deploy
```
conda create -n webui python=3.6
conda create webui
cd <project的路徑>

conda install -c conda-forge python-levenshtein
conda install pytorch torchvision cudatoolkit=10.0 -c pytorch

pip install -r requirements.txt
還需要手動完成step5，修正tempfile.NamedTemporaryFile沒有讀取權限的問題
```