зеркало из https://github.com/Azure/counterfit.git
Users/rdheekonda/update read me (#61)
* Updated results location after completion of attack to be consistent with predict; fixed docker file to conform latest pip install command * Add static Azure images to help users deploy and test Counterfit instructions in Azure Cloud * increased memory to 12 GB, updated Counterfit jupyterlab docker images Co-authored-by: Raja Sekhar Rao Dheekonda <rdheekonda@microsoft.com>
This commit is contained in:
Родитель
f3203dc3ce
Коммит
ffdcf43e9b
36
README.md
36
README.md
|
@ -35,22 +35,42 @@ Choose one of these methods to get started quickly:
|
|||
|
||||
For more information including alternative installation instructions, please visit our [wiki](https://github.com/Azure/counterfit/wiki).
|
||||
|
||||
### Option 1: Deploy via Azure Shell
|
||||
### Option 1: Deploy and Test in Azure Cloud
|
||||
|
||||
To run Counterfit from your browser
|
||||
|
||||
1. Click the button below to initiate small resource deployment to your Azure account.
|
||||
|
||||
[![Deploy to Azure](https://aka.ms/deploytoazurebutton)](https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Fraw.githubusercontent.com%2FAzure%2Fcounterfit%2Fmaster%2Finfrastructure%2Fazuredeploy.json)
|
||||
[![Deploy to Azure](https://aka.ms/deploytoazurebutton)](https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Fraw.githubusercontent.com%2FAzure%2Fcounterfit%2Fmaster%2Finfrastructure%2Fazuredeploy.json)
|
||||
|
||||
2. In the configuration blade, specify your subscription and resource group.
|
||||
3. In your [Azure Shell](https://shell.azure.com), type the following, replacing `RESOURCE_GROUP` with the name of the resource group selected in the previous step.
|
||||
2. In the configuration blade, select your Subscription name, Resource group (Create new if you do not have one.), and Region from the drop-down menu as shown below.
|
||||
|
||||
![Counterfit ARM Deployment](./static/counterfit_arm_deployment.png)
|
||||
|
||||
```
|
||||
az container exec --resource-group RESOURCE_GROUP --name counterfit --exec-command '/bin/bash'
|
||||
```
|
||||
3. The above deployment would take approximately 5-8 minutes approximately. This deployment involves creating Azure Storage Account resource for storing Counterfit generated original and adversarial images and Azure Container Instance resource for running Counterfit.
|
||||
|
||||
4. Once deployment is successful, you can get into the Azure Container Instance using the below 2 options.
|
||||
|
||||
a. Using Azure Shell, click the link [Azure Shell](https://shell.azure.com) and sign-in to your Azure Subscription, type the following command in the Azure Shell terminal by replacing `RESOURCE_GROUP` with the name of the resource group selected/created in the previous ARM deployment step.
|
||||
|
||||
```
|
||||
az container exec --resource-group RESOURCE_GROUP --name counterfit --exec-command '/bin/bash'
|
||||
```
|
||||
|
||||
b. Using Azure Container Instance(ACI), follow the below steps if you would like to run Counterfit directly in the ACI instance
|
||||
|
||||
+ Once deployment is successful, go to the Azure Resource Group and select `counterfit` Azure Container Instance resource as shown below.
|
||||
|
||||
![Counterfit Azure Resource Group](./static/counterfit_resource_group.png)
|
||||
![Counterfit Azure Container Instance](./static/counterfit_container_instance.png)
|
||||
+ Once the above step is completed, it will take you to the `Container instance` page, click `Containers` under `Settings` section on the left side and click `Connect` from the menu and hit `Connect` button again.
|
||||
|
||||
![Counterfit Azure Container Instance Terminal](./static/counterfit_container_aci_terminal.png)
|
||||
|
||||
5. Within the container terminal, launch Counterfit using the command `counterfit` in the terminal. Once Counterfit is loaded, you should be able to see a banner as shown below
|
||||
|
||||
![Counterfit Terminal](./static/counterfit_terminal_cmd.PNG)
|
||||
|
||||
4. Within the container, launch Counterfit.
|
||||
|
||||
### Option 2: Set up an Anaconda Python environment and install locally
|
||||
|
||||
|
|
|
@ -140,8 +140,16 @@ class CFTarget:
|
|||
output = np.atleast_2d(output)
|
||||
return [self.output_classes[i] for i in np.argmax(output, axis=1)]
|
||||
|
||||
def get_results_folder(self, folder="results"):
|
||||
return os.path.join(os.curdir, folder)
|
||||
def get_results_folder(self, folder_path="counterfit/targets/results"):
|
||||
"""Folder that stores attack run results.
|
||||
|
||||
Args:
|
||||
folder_path (str, optional): Defaults to "counterfit/targets/results".
|
||||
|
||||
Returns:
|
||||
str: folder prefix path where attack results would be stored.
|
||||
"""
|
||||
return folder_path
|
||||
|
||||
def get_data_type_obj(self):
|
||||
target_data_types = {
|
||||
|
|
|
@ -1,17 +1,17 @@
|
|||
import numpy as np
|
||||
import hashlib
|
||||
|
||||
from counterfit.core.reporting import CFReportGenerator
|
||||
from counterfit.data.image import ImageDataType
|
||||
from PIL import Image
|
||||
from rich.table import Table
|
||||
import numpy as np
|
||||
from azure.storage.blob import BlobClient, ContentSettings
|
||||
from counterfit.core.output import CFPrint
|
||||
from counterfit.core.reporting import CFReportGenerator
|
||||
from counterfit.core.utils import (get_azure_storage_sas_uri,
|
||||
get_image_in_bytes, get_mime_type,
|
||||
get_predict_folder,
|
||||
is_img_save_in_azure_storage,
|
||||
transform_numpy_to_bytes)
|
||||
from counterfit.data.image import ImageDataType
|
||||
from PIL import Image
|
||||
from rich.table import Table
|
||||
|
||||
|
||||
class ImageReportGenerator(CFReportGenerator):
|
||||
|
@ -199,4 +199,4 @@ class ImageReportGenerator(CFReportGenerator):
|
|||
str(d)
|
||||
)
|
||||
|
||||
CFPrint.output(table)
|
||||
CFPrint.output(table)
|
||||
|
|
|
@ -11,14 +11,10 @@ RUN apt-get update \
|
|||
|
||||
WORKDIR /home/counterfituser
|
||||
|
||||
COPY requirements.txt .
|
||||
|
||||
RUN pip install --no-cache-dir -r requirements.txt
|
||||
RUN pip install tensorflow python-Levenshtein
|
||||
|
||||
|
||||
COPY . .
|
||||
|
||||
RUN pip install .[dev]
|
||||
|
||||
RUN chown -R counterfituser:counterfituser /home/counterfituser
|
||||
USER counterfituser
|
||||
|
||||
|
|
|
@ -11,7 +11,7 @@ RUN apt-get update \
|
|||
USER 1000
|
||||
RUN git clone https://github.com/Azure/counterfit.git \
|
||||
&& cd counterfit \
|
||||
&& pip install --no-cache-dir -r requirements.txt\
|
||||
&& pip install .[dev]\
|
||||
&& cd ..
|
||||
EXPOSE 8888
|
||||
EXPOSE 2718
|
||||
|
|
|
@ -10,6 +10,7 @@ RUN apt-get update \
|
|||
&& rm -rf /var/lib/apt/lists/* \
|
||||
&& sed -i "s/\"default\": \"inherit\"/\"default\": \"dark\"/g" /opt/conda/share/jupyter/lab/schemas/@jupyterlab/terminal-extension/plugin.json
|
||||
USER 1000
|
||||
COPY requirements.txt .
|
||||
RUN pip install --no-cache-dir -r requirements.txt
|
||||
COPY . .
|
||||
|
||||
RUN pip install .[dev]
|
||||
EXPOSE 8888
|
|
@ -60,7 +60,7 @@
|
|||
},
|
||||
"memoryInGb": {
|
||||
"type": "string",
|
||||
"defaultValue": "6.0",
|
||||
"defaultValue": "12.0",
|
||||
"metadata": {
|
||||
"description": "The amount of memory to allocate to the container in gigabytes."
|
||||
}
|
||||
|
|
Двоичный файл не отображается.
После Ширина: | Высота: | Размер: 62 KiB |
Двоичный файл не отображается.
После Ширина: | Высота: | Размер: 34 KiB |
Двоичный файл не отображается.
После Ширина: | Высота: | Размер: 38 KiB |
Двоичный файл не отображается.
После Ширина: | Высота: | Размер: 43 KiB |
Двоичный файл не отображается.
После Ширина: | Высота: | Размер: 6.8 KiB |
Загрузка…
Ссылка в новой задаче