You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: articles/applied-ai-services/form-recognizer/containers/form-recognizer-disconnected-containers.md
+52-54Lines changed: 52 additions & 54 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -37,11 +37,11 @@ Complete and submit the [request form](https://aka.ms/csdisconnectedcontainers)
37
37
Access is limited to customers that meet the following requirements:
38
38
39
39
* Your organization should be identified as strategic customer or partner with Microsoft.
40
-
* Disconnected containers are expected to run fully offline, hence your use cases must meet one of below or similar requirements:
40
+
* Disconnected containers are expected to run fully offline, hence your use cases must meet one of the following or similar requirements:
41
41
* Environment or device(s) with zero connectivity to internet.
42
42
* Remote location that occasionally has internet access.
43
43
* Organization under strict regulation of not sending any kind of data back to cloud.
44
-
* Application completed as instructed - Please pay close attention to guidance provided throughout the application to ensure you provide all the necessary information required for approval.
44
+
* Application completed as instructed - Pay close attention to guidance provided throughout the application to ensure you provide all the necessary information required for approval.
45
45
46
46
## Create a new resource and purchase a commitment plan
47
47
@@ -80,7 +80,7 @@ Download the Docker container that has been approved to run in a disconnected en
After you've configured the container, use the next section to run the container in your environment with the license, and appropriate memory and CPU allocations.
132
132
133
-
**TODO**
134
-
135
-
## Form Recognizer models and container configuration
133
+
## Form Recognizer container models and configuration
136
134
137
135
> [!IMPORTANT]
138
-
> If you're using the Translator, Neural text-to-speech, or Speech-to-text containers, read the **Additional parameters** section below for information on commands or additional parameters you will need to use.
136
+
> If you're using the Translator, Neural text-to-speech, or Speech-to-text containers, read the **Additional parameters** section for information on commands or additional parameters you will need to use.
137
+
138
+
After you've [configured the container](#configure-the-container-to-be-run-in-a-disconnected-environment), the values for the downloaded translation models and container configuration will be generated and displayed in the container output:
## Run the container in a disconnected environment
139
146
140
-
Once the license file has been downloaded, you can run the container in a disconnected environment. The following example shows the formatting of the `docker run` command you'll use, with placeholder values. Replace these placeholder values with your own values.
147
+
Once the license file has been downloaded, you can run the container in a disconnected environment with your license, appropriate memory, and suitable CPU allocations. The following example shows the formatting of the `docker run` command with placeholder values. Replace these placeholders values with your own values.
141
148
142
-
Wherever the container is run, the license file must be mounted to the container and the location of the license folder on the container's local filesystem must be specified with `Mounts:License=`. An output mount must also be specified so that billing usage records can be written.
149
+
Whenever the container is run, the license file must be mounted to the container and the location of the license folder on the container's local filesystem must be specified with `Mounts:License=`. In addition, an output mount must be specified so that billing usage records can be written.
143
150
144
151
Placeholder | Value | Format or example |
145
152
|-------------|-------|---|
@@ -151,54 +158,41 @@ Placeholder | Value | Format or example |
151
158
|`{CONTAINER_LICENSE_DIRECTORY}`| Location of the license folder on the container's local filesystem. |`/path/to/license/directory`|
152
159
|`{CONTAINER_OUTPUT_DIRECTORY}`| Location of the output folder on the container's local filesystem. |`/path/to/output/directory`|
If you're using the [Translator container](../translator/containers/translator-how-to-install-container.md), you'll need to add parameters for the downloaded translation models and container configuration. These values are generated and displayed in the container output when you [configure the container](#configure-the-container-to-be-run-in-a-disconnected-environment) as described above. For example:
#### Speech-to-text and Neural text-to-speech containers
172
+
eula=accept \
178
173
179
-
The [speech-to-text](../speech-service/speech-container-howto.md?tabs=stt) and [neural text-to-speech](../speech-service/speech-container-howto.md?tabs=ntts) containers provide a default directory for writing the license file and billing log at runtime. The default directories are /license and /output respectively.
174
+
Mounts:License={CONTAINER_LICENSE_DIRECTORY}
180
175
181
-
When you're mounting these directories to the container with the `docker run -v` command, make sure the local machine directory is set ownership to `user:group nonroot:nonroot` before running the container.
176
+
Mounts:Output={CONTAINER_OUTPUT_DIRECTORY}
177
+
```
182
178
183
-
Below is a sample command to set file/directory ownership.
Here are a few more parameters and commands you may need to run the container.
188
182
189
-
## Usage records
183
+
####Usage records
190
184
191
-
When operating Docker containers in a disconnected environment, the container will write usage records to a volume where they're collected over time. You can also call a REST endpoint to generate a report about service usage.
185
+
When operating Docker containers in a disconnected environment, the container will write usage records to a volume where they're collected over time. You can also call a REST API endpoint to generate a report about service usage.
192
186
193
-
### Arguments for storing logs
187
+
####Arguments for storing logs
194
188
195
-
When run in a disconnected environment, an output mount must be available to the container to store usage logs. For example, you would include `-v /host/output:{OUTPUT_PATH}` and `Mounts:Output={OUTPUT_PATH}` in the example below, replacing `{OUTPUT_PATH}` with the path where the logs will be stored:
189
+
When run in a disconnected environment, an output mount must be available to the container to store usage logs. For example, you would include `-v /host/output:{OUTPUT_PATH}` and `Mounts:Output={OUTPUT_PATH}` in the following example, replacing `{OUTPUT_PATH}` with the path where the logs will be stored:
196
190
197
191
```Docker
198
192
docker run -v /host/output:{OUTPUT_PATH} ... <image> ... Mounts:Output={OUTPUT_PATH}
199
193
```
200
194
201
-
### Get records using the container endpoints
195
+
####Get records using the container endpoints
202
196
203
197
The container provides two endpoints for returning records about its usage.
204
198
@@ -210,16 +204,20 @@ The following endpoint will provide a report summarizing all of the usage collec
210
204
https://<service>/records/usage-logs/
211
205
```
212
206
213
-
It will return JSON similar to the example below.
207
+
**Example HTTPS endpoint**
208
+
209
+
`http://localhost:5000/records/usage-logs`
210
+
211
+
The usage-log endpoint will return a JSON response similar to the following example:
214
212
215
213
```json
216
214
{
217
-
"apiType": "noop",
218
-
"serviceName": "noop",
215
+
"apiType": "string",
216
+
"serviceName": "string",
219
217
"meters": [
220
218
{
221
-
"name": "Sample.Meter",
222
-
"quantity": 253
219
+
"name": "string",
220
+
"quantity": 256345435
223
221
}
224
222
]
225
223
}
@@ -233,7 +231,7 @@ The following endpoint will provide a report summarizing usage over a specific m
it will return a JSON response similar to the example below:
234
+
This usage-logs endpoint will return a JSON response similar to the following example:
237
235
238
236
```json
239
237
{
@@ -242,29 +240,29 @@ it will return a JSON response similar to the example below:
242
240
"meters": [
243
241
{
244
242
"name": "string",
245
-
"quantity": 253
243
+
"quantity": 56097
246
244
}
247
245
]
248
246
}
249
247
```
250
248
251
-
## Purchase a different commitment plan for disconnected containers
249
+
###Purchase a different commitment plan for disconnected containers
252
250
253
-
Commitment plans for disconnected containers have a calendar year commitment period. When you purchase a plan, you'll be charged the full price immediately. During the commitment period, you can't change your commitment plan, however you can purchase additional unit(s) at a pro-rated price for the remaining days in the year. You have until midnight (UTC) on the last day of your commitment, to end a commitment plan.
251
+
Commitment plans for disconnected containers have a calendar year commitment period. When you purchase a plan, you'll be charged the full price immediately. During the commitment period, you can't change your commitment plan, however you can purchase more unit(s) at a pro-rated price for the remaining days in the year. You have until midnight (UTC) on the last day of your commitment, to end a commitment plan.
254
252
255
-
You can choose a different commitment plan in the **Commitment Tier pricing** settings of your resource.
253
+
You can choose a different commitment plan in the **Commitment tier pricing** settings of your resource under the **Resource Management** section.
256
254
257
-
## End a commitment plan
255
+
###End a commitment plan
258
256
259
-
If you decide that you don't want to continue purchasing a commitment plan, you can set your resource's auto-renewal to **Do not auto-renew**. Your commitment plan will expire on the displayed commitment end date. After this date, you won't be charged for the commitment plan. You'll be able to continue using the Azure resource to make API calls, charged at pay-as-you-go pricing. You have until midnight (UTC) on the last day of the year to end a commitment plan for disconnected containers, and not be charged for the following year.
257
+
If you decide that you don't want to continue purchasing a commitment plan, you can set your resource's auto-renewal to **Do not auto-renew**. Your commitment plan will expire on the displayed commitment end date. After this date, you won't be charged for the commitment plan. You'll be able to continue using the Azure resource to make API calls, charged at pay-as-you-go pricing. You have until midnight (UTC) on the last day of the year to end a commitment plan for disconnected containers. If you cancel at or before that time, you won't be charged for the following year.
260
258
261
259
## Troubleshooting
262
260
263
-
If you run the container with an output mount and logging enabled, the container generates log files that are helpful to troubleshoot issues that happen while starting or running the container.
261
+
Run the container with an output mount and logging enabled. These settings will enable the container generates log files that are helpful for troubleshooting issues that occur while starting or running the container.
264
262
265
263
> [!TIP]
266
-
> For more troubleshooting information and guidance, see [Disconnected containers Frequently asked questions (FAQ)](disconnected-container-faq.yml).
264
+
> For more troubleshooting information and guidance, see [Disconnected containers Frequently asked questions (FAQ)](../../../cognitive-services/containers/disconnected-container-faq.yml).
0 commit comments