refactor docs build process (#21239)

This commit is contained in:
jmacekx 2023-11-29 12:30:05 +01:00 committed by GitHub
parent a6ea22ad0e
commit 54e61ac9f5
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
868 changed files with 2993 additions and 8361 deletions

View File

@ -4,7 +4,6 @@ on:
env:
DOXY_VER: '1.9.6'
DOXYREST_VER: '2.1.3'
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref && github.ref || github.run_id }}
@ -40,19 +39,18 @@ jobs:
python3 -m pip install -r docs/requirements.txt
(cd docs/openvino_sphinx_theme && python3 setup.py install)
- name: Download and install doxygen && doxyrest
- name: Download and install doxygen
run: |
# install doxyrest
wget https://github.com/vovkos/doxyrest/releases/download/doxyrest-$DOXYREST_VER/doxyrest-$DOXYREST_VER-linux-amd64.tar.xz
tar -xf doxyrest-$DOXYREST_VER-linux-amd64.tar.xz
echo "$(pwd)/doxyrest-$DOXYREST_VER-linux-amd64/bin/" >> $GITHUB_PATH
# install doxygen
wget https://www.doxygen.nl/files/doxygen-$DOXY_VER.linux.bin.tar.gz
tar -xzf doxygen-$DOXY_VER.linux.bin.tar.gz
echo "$(pwd)/doxygen-$DOXY_VER/bin/" >> $GITHUB_PATH
- name: CMake configure
run: cmake -DENABLE_DOCS=ON -B build
- name: Build docs
run: |
rm -rf build && mkdir build && cd build
cmake .. -DCMAKE_BUILD_TYPE=Release -DENABLE_DOCS=ON -DENABLE_CPP_API=ON
cmake --build . --target sphinx_docs
- name: Cache documentation
id: cache_sphinx_docs
@ -61,13 +59,6 @@ jobs:
path: build/docs/_build/.doctrees
key: sphinx-docs-cache
- name: Get number of CPU cores
uses: SimenB/github-actions-cpu-cores@v2
id: cpu-cores
- name: Build docs
run: cmake --build build --target sphinx_docs --parallel ${{ steps.cpu-cores.outputs.count }}
- name: Archive docs HTML
run: (cd build/docs && zip -r openvino_docs_html.zip _build)
@ -97,14 +88,13 @@ jobs:
- name: Run Pytest
run: |
pytest --doxygen="./build/docs/doxygen.log" \
--include_pot \
--sphinx="./build/docs/sphinx.log" \
--suppress-warnings="./docs/suppress_warnings.txt" \
--suppress-warnings="./docs/scripts/tests/suppress_warnings.txt" \
--confcutdir="./docs/scripts/tests/" \
--html="./build/docs/_artifacts/doc-generation.html" \
--doxygen-strip="$(pwd)" \
--sphinx-strip="$(pwd)/build/docs/rst" \
--doxygen-xfail="./docs/doxygen-xfail.txt" \
--sphinx-strip="$(pwd)/build/docs/sphinx_source" \
--xfail="./docs/scripts/tests/xfail.txt" \
--self-contained-html ./docs/scripts/tests/test_docs.py
- name: 'Upload test results'

View File

@ -4,187 +4,122 @@
add_subdirectory(snippets)
set(LINKCHECKER_PY "" CACHE FILEPATH "Path to linkchecker.py for documentation check dir.")
set(ENABLE_OPENVINO_NOTEBOOKS OFF CACHE BOOL "Build with openvino notebooks")
set(OMZ_DOCS_DIR "" CACHE PATH "Path to open_model_zoo documentation dir.")
set(OTE_DOCS_DIR "" CACHE PATH "Path to training_extensions documentation dir.")
set(WORKBENCH_DOCS_DIR "" CACHE PATH "Path to workbench documentation dir.")
set(ENABLE_CPP_API OFF CACHE BOOL "Build with C/C++ API.")
set(ENABLE_PYTHON_API OFF CACHE BOOL "Build with Python API.")
set(ENABLE_NOTEBOOKS OFF CACHE BOOL "Build with openvino notebooks.")
set(ENABLE_OMZ OFF CACHE BOOL "Build with open_model_zoo.")
set(ENABLE_OVMS OFF CACHE BOOL "Build with ovms.")
set(OVMS_DOCS_DIR "" CACHE PATH "Path to model server documentation dir.")
set(GRAPH_CSV_DIR "" CACHE PATH "Path to the folder containing csv data for rendering graphs.")
if(${ENABLE_OVMS} AND (OVMS_DOCS_DIR STREQUAL ""))
message( FATAL_ERROR "You want to build OVMS, but OVMS_DOCS_DIR variable is empty." )
endif()
function(build_docs)
find_package(Doxygen REQUIRED dot)
find_package(LATEX REQUIRED)
find_program(DOXYREST_EXECUTABLE NAMES doxyrest)
if (NOT DOXYREST_EXECUTABLE)
message(FATAL_ERROR "No doxyrest found. Documentation output is not available")
endif()
set(DOCS_BUILD_DIR "${CMAKE_CURRENT_BINARY_DIR}")
set(DOCS_SOURCE_DIR "${OpenVINO_SOURCE_DIR}/docs")
set(SCRIPTS_DIR "${DOCS_SOURCE_DIR}/scripts")
# markdown docs
set(MARKDOWN_INPUT "${DOCS_BUILD_DIR}")
# Preprocessing scripts
set(DOXY_MD_FILTER "${SCRIPTS_DIR}/doxy_md_filter.py")
set(PREPARE_XML_SCRIPT "${SCRIPTS_DIR}/prepare_xml.py")
set(REMOVE_XML_SCRIPT "${SCRIPTS_DIR}/remove_xml.py")
set(FILE_HELPER_SCRIPT "${SCRIPTS_DIR}/filehelper.py")
set(COPY_IMAGES_SCRIPT "${SCRIPTS_DIR}/copy_images.py")
set(DOC_TEST_DIR "${SCRIPTS_DIR}/tests")
set(DOXYGEN_MAPPING_SCRIPT "${SCRIPTS_DIR}/create_mapping.py")
set(BREATHE_APIDOC_SCRIPT "${SCRIPTS_DIR}/apidoc.py")
# out dirs
set(XML_OUTPUT "${DOCS_BUILD_DIR}/xml")
set(RST_OUTPUT "${DOCS_BUILD_DIR}/rst")
# Doxygen/Sphinx setup
set(DOXYGEN_XML_OUTPUT "${DOCS_BUILD_DIR}/xml")
set(SPHINX_SETUP_DIR "${DOCS_SOURCE_DIR}/sphinx_setup")
set(SPHINX_SOURCE_DIR "${DOCS_BUILD_DIR}/sphinx_source")
set(SPHINX_OUTPUT "${DOCS_BUILD_DIR}/_build")
# Sphinx folders, doxyrest templates and config
set(SPHINX_CONF_IN "${DOCS_SOURCE_DIR}/conf.py")
set(SPHINX_TEMPLATES_IN "${DOCS_SOURCE_DIR}/_templates")
set(SPHINX_TEMPLATES_OUT "${RST_OUTPUT}/_templates")
set(SPHINX_CONF_OUT "${RST_OUTPUT}/conf.py")
set(SPHINX_STATIC_IN "${DOCS_SOURCE_DIR}/_static")
set(SPHINX_STATIC_OUT "${RST_OUTPUT}/_static")
set(SPHINX_INDEX_IN "${DOCS_SOURCE_DIR}/index.rst")
set(SPHINX_INDEX_OUT "${RST_OUTPUT}/index.rst")
set(API_DOCS_IN "${DOCS_SOURCE_DIR}/api")
set(API_DOCS_OUT "${RST_OUTPUT}/api")
set(DOXYREST_IN "${DOCS_SOURCE_DIR}/doxyrest")
set(DOXYREST_OUT "${DOCS_BUILD_DIR}/doxyrest")
set(DOXYREST_SPHINX_IN "${DOCS_SOURCE_DIR}/doxyrest-sphinx")
set(DOXYREST_SPHINX_OUT "${RST_OUTPUT}/doxyrest-sphinx")
set(DOXYREST_CONFIG_IN "${DOCS_SOURCE_DIR}/doxyrest-config.lua")
set(DOXYREST_CONFIG_OUT "${DOCS_BUILD_DIR}/doxyrest-config.lua")
configure_file(${DOXYREST_CONFIG_IN} ${DOXYREST_CONFIG_OUT} @ONLY)
configure_file(${SPHINX_CONF_IN} ${SPHINX_CONF_OUT} @ONLY)
# Doxygen config
set(DOXYFILE_SOURCE "${DOCS_SOURCE_DIR}/Doxyfile.config")
set(DOXYFILE_BUILD "${DOCS_BUILD_DIR}/Doxyfile.config")
configure_file(${DOXYFILE_SOURCE} ${DOXYFILE_BUILD} @ONLY)
list(APPEND commands COMMAND ${Python3_EXECUTABLE} ${DOXY_MD_FILTER}
list(APPEND commands COMMAND ${CMAKE_COMMAND} -E cmake_echo_color --green "STARTED preprocessing OpenVINO articles")
list(APPEND commands COMMAND ${Python3_EXECUTABLE} ${FILE_HELPER_SCRIPT}
--filetype=rst
--input_dir=${OpenVINO_SOURCE_DIR}
--output_dir=${DOCS_BUILD_DIR}/openvino
--exclude_dir=${DOCS_BUILD_DIR})
--output_dir=${SPHINX_SOURCE_DIR}
--exclude_dir=${SPHINX_SOURCE_DIR})
list(APPEND commands COMMAND ${CMAKE_COMMAND} -E cmake_echo_color --green "FINISHED preprocessing OpenVINO articles")
# include additional repositories
if(${ENABLE_CPP_API})
# Doxygen config
set(DOXYFILE_SOURCE "${DOCS_SOURCE_DIR}/Doxyfile.config")
set(DOXYFILE_BUILD "${DOCS_BUILD_DIR}/Doxyfile.config")
configure_file(${DOXYFILE_SOURCE} ${DOXYFILE_BUILD} @ONLY)
list(APPEND commands COMMAND ${CMAKE_COMMAND} -E cmake_echo_color --green "STARTED preprocessing OpenVINO C/C++ API reference")
list(APPEND commands COMMAND ${Python3_EXECUTABLE} ${REMOVE_XML_SCRIPT} ${DOXYGEN_XML_OUTPUT})
list(APPEND commands COMMAND ${DOXYGEN_EXECUTABLE} ${DOXYFILE_BUILD})
list(APPEND post_commands COMMAND ${Python3_EXECUTABLE} ${BREATHE_APIDOC_SCRIPT} ${DOXYGEN_XML_OUTPUT} -o "${SPHINX_SOURCE_DIR}/api/c_cpp_api" -m -T -p openvino -g class,group,struct,union,enum)
list(APPEND commands COMMAND ${CMAKE_COMMAND} -E cmake_echo_color --green "FINISHED preprocessing OpenVINO C/C++ API reference")
endif()
# build with openvino notebooks
if(ENABLE_OPENVINO_NOTEBOOKS)
if(${ENABLE_PYTHON_API})
list(APPEND commands COMMAND ${CMAKE_COMMAND} -E cmake_echo_color --green "STARTED preprocessing OpenVINO Python API")
list(APPEND commands COMMAND ${Python3_EXECUTABLE} -m pip install openvino)
list(APPEND commands COMMAND ${CMAKE_COMMAND} -E cmake_echo_color --green "FINISHED preprocessing OpenVINO Python API")
endif()
if(${ENABLE_NOTEBOOKS})
set(NBDOC_SCRIPT "${DOCS_SOURCE_DIR}/nbdoc/nbdoc.py")
list(PREPEND commands
COMMAND ${Python3_EXECUTABLE} "${NBDOC_SCRIPT}" "${DOCS_SOURCE_DIR}/notebooks" "${RST_OUTPUT}/notebooks"
list(APPEND commands COMMAND ${CMAKE_COMMAND} -E cmake_echo_color --green "STARTED preprocessing OpenVINO notebooks")
list(APPEND commands
COMMAND ${Python3_EXECUTABLE} "${NBDOC_SCRIPT}" "${DOCS_SOURCE_DIR}/notebooks" "${SPHINX_SOURCE_DIR}/notebooks"
)
list(APPEND commands COMMAND ${CMAKE_COMMAND} -E cmake_echo_color --green "FINISHED preprocessing OpenVINO notebooks")
endif()
if(GRAPH_CSV_DIR)
set(GRAPH_CSV_DIR_OUT "${RST_OUTPUT}/csv")
list(APPEND commands
COMMAND ${CMAKE_COMMAND} -E copy_directory "${GRAPH_CSV_DIR}" "${GRAPH_CSV_DIR_OUT}"
)
if(${ENABLE_OVMS})
list(APPEND commands COMMAND ${CMAKE_COMMAND} -E cmake_echo_color --green "STARTED preprocessing OVMS")
list(APPEND commands COMMAND ${Python3_EXECUTABLE} ${FILE_HELPER_SCRIPT}
--filetype=md
--input_dir=${OVMS_DOCS_DIR}
--output_dir=${SPHINX_SOURCE_DIR}
--exclude_dir=${SPHINX_SOURCE_DIR})
list(APPEND commands COMMAND ${CMAKE_COMMAND} -E cmake_echo_color --green "FINISHED preprocessing OVMS")
endif()
list(APPEND commands
COMMAND ${CMAKE_COMMAND} -E copy ${API_DOCS_IN}/api_reference.rst ${API_DOCS_OUT}/api_reference.rst
COMMAND ${CMAKE_COMMAND} -E copy_directory ${API_DOCS_IN}/ie_python_api ${API_DOCS_OUT}/ie_python_api
)
# omz doc files
if(EXISTS "${OMZ_DOCS_DIR}")
get_filename_component(OMZ_DOCS_DIR "${OMZ_DOCS_DIR}" ABSOLUTE)
if(${ENABLE_OMZ})
list(APPEND commands COMMAND ${CMAKE_COMMAND} -E cmake_echo_color --green "STARTED preprocessing OMZ")
list(APPEND commands
COMMAND ${Python3_EXECUTABLE} ${OMZ_DOCS_DIR}/ci/prepare-documentation.py ${CMAKE_BINARY_DIR}/open_model_zoo)
list(APPEND commands COMMAND ${Python3_EXECUTABLE} ${DOXY_MD_FILTER}
COMMAND ${Python3_EXECUTABLE} ${OpenVINO_SOURCE_DIR}/thirdparty/open_model_zoo/ci/prepare-documentation.py ${CMAKE_BINARY_DIR}/open_model_zoo)
list(APPEND commands COMMAND ${Python3_EXECUTABLE} ${FILE_HELPER_SCRIPT}
--filetype=md
--input_dir=${CMAKE_BINARY_DIR}/open_model_zoo
--output_dir=${DOCS_BUILD_DIR}/open_model_zoo)
--output_dir=${SPHINX_SOURCE_DIR}
--exclude_dir=${SPHINX_SOURCE_DIR})
list(APPEND commands COMMAND ${CMAKE_COMMAND} -E cmake_echo_color --green "FINISHED preprocessing OMZ")
endif()
# workbench doc files
if(EXISTS "${WORKBENCH_DOCS_DIR}")
get_filename_component(WORKBENCH_DOCS_DIR "${WORKBENCH_DOCS_DIR}" ABSOLUTE)
list(APPEND commands COMMAND ${Python3_EXECUTABLE} ${DOXY_MD_FILTER}
--input_dir=${WORKBENCH_DOCS_DIR}
--output_dir=${DOCS_BUILD_DIR}/workbench)
endif()
# ote doc files
if(EXISTS "${OTE_DOCS_DIR}")
get_filename_component(WORKBENCH_DOCS_DIR "${OTE_DOCS_DIR}" ABSOLUTE)
list(APPEND commands COMMAND ${Python3_EXECUTABLE} ${DOXY_MD_FILTER}
--input_dir=${OTE_DOCS_DIR}
--output_dir=${DOCS_BUILD_DIR}/ote)
endif()
# ovms doc files
if(EXISTS "${OVMS_DOCS_DIR}")
get_filename_component(OVMS_DOCS_DIR "${OVMS_DOCS_DIR}" ABSOLUTE)
list(APPEND commands COMMAND ${Python3_EXECUTABLE} ${DOXY_MD_FILTER}
--input_dir=${OVMS_DOCS_DIR}
--output_dir=${DOCS_BUILD_DIR}/ovms)
endif()
add_custom_target(preprocess_docs
COMMENT "Preprocess documentation"
VERBATIM)
# Preprocess docs
add_custom_target(preprocess_docs
COMMAND ${CMAKE_COMMAND} -E remove_directory ${SPHINX_SOURCE_DIR}
${commands}
WORKING_DIRECTORY ${DOCS_BUILD_DIR}
VERBATIM)
add_custom_command(TARGET preprocess_docs
POST_BUILD
${commands}
WORKING_DIRECTORY ${DOCS_BUILD_DIR}
COMMENT "Preprocess documentation"
VERBATIM)
add_custom_target(doxygen_xml
DEPENDS preprocess_docs
COMMAND ${Python3_EXECUTABLE} ${REMOVE_XML_SCRIPT} ${XML_OUTPUT}
COMMAND ${DOXYGEN_EXECUTABLE} ${DOXYFILE_BUILD}
WORKING_DIRECTORY ${DOCS_BUILD_DIR}
COMMENT "Generate doxygen XML output"
VERBATIM)
# Post-process docs
add_custom_command(TARGET doxygen_xml
POST_BUILD
COMMAND ${Python3_EXECUTABLE} ${PREPARE_XML_SCRIPT} ${XML_OUTPUT}
COMMAND ${CMAKE_COMMAND} -E copy_directory ${DOXYREST_IN} ${DOXYREST_OUT}
COMMAND ${DOXYREST_EXECUTABLE} -c ${DOXYREST_CONFIG_OUT}
COMMAND ${Python3_EXECUTABLE} ${COPY_IMAGES_SCRIPT} ${XML_OUTPUT} ${RST_OUTPUT}
COMMAND ${Python3_EXECUTABLE} ${DOXYGEN_MAPPING_SCRIPT} ${XML_OUTPUT} ${DOCS_BUILD_DIR} ${OpenVINO_SOURCE_DIR}/../
COMMAND ${CMAKE_COMMAND} -E copy ${SPHINX_INDEX_IN} ${SPHINX_INDEX_OUT}
COMMAND ${CMAKE_COMMAND} -E copy_directory ${SPHINX_TEMPLATES_IN} ${SPHINX_TEMPLATES_OUT}
COMMAND ${CMAKE_COMMAND} -E copy_directory ${DOXYREST_IN} ${DOXYREST_OUT}
COMMAND ${CMAKE_COMMAND} -E copy_directory ${DOXYREST_SPHINX_IN} ${DOXYREST_SPHINX_OUT}
COMMAND ${CMAKE_COMMAND} -E copy_directory ${SPHINX_STATIC_IN} ${SPHINX_STATIC_OUT}
COMMENT "Prepare xml"
COMMAND ${Python3_EXECUTABLE} ${COPY_IMAGES_SCRIPT} ${DOXYGEN_XML_OUTPUT} ${SPHINX_SOURCE_DIR}
COMMAND ${Python3_EXECUTABLE} ${DOXYGEN_MAPPING_SCRIPT} ${DOXYGEN_XML_OUTPUT} ${DOCS_BUILD_DIR} ${OpenVINO_SOURCE_DIR}/../
COMMAND ${CMAKE_COMMAND} -E copy_directory ${SPHINX_SETUP_DIR} ${SPHINX_SOURCE_DIR}
${post_commands}
VERBATIM)
# Build docs
add_custom_target(sphinx_docs
DEPENDS doxygen_xml
COMMAND sphinx-build -q -j auto -w ${DOCS_BUILD_DIR}/sphinx.log -b html ${RST_OUTPUT} ${SPHINX_OUTPUT}
WORKING_DIRECTORY ${RST_OUTPUT}
DEPENDS preprocess_docs
COMMAND ${CMAKE_COMMAND} -E cmake_echo_color --green "STARTED sphinx documentation build"
COMMAND sphinx-build -j auto -w ${DOCS_BUILD_DIR}/sphinx.log -b html ${SPHINX_SOURCE_DIR} ${SPHINX_OUTPUT}
COMMAND ${CMAKE_COMMAND} -E cmake_echo_color --green "FINISHED sphinx documentation build"
WORKING_DIRECTORY ${SPHINX_SOURCE_DIR}
VERBATIM)
set_target_properties(doxygen_xml sphinx_docs
PROPERTIES FOLDER docs)
set_target_properties(preprocess_docs sphinx_docs PROPERTIES FOLDER docs)
find_program(browser NAMES xdg-open)
if(browser)
add_custom_target(ie_docs_open
COMMAND ${browser} "${SPHINX_OUTPUT}/index.html"
DEPENDS sphinx_docs
COMMENT "Open OpenVINO documentation"
VERBATIM)
set_target_properties(ie_docs_open PROPERTIES FOLDER docs)
endif()
endfunction()
if(ENABLE_DOCS)

View File

@ -829,8 +829,7 @@ WARN_LOGFILE = "@DOCS_BUILD_DIR@/doxygen.log"
# spaces. See also FILE_PATTERNS and EXTENSION_MAPPING
# Note: If this tag is empty the current directory is searched.
INPUT = "@MARKDOWN_INPUT@" \
"@OpenVINO_SOURCE_DIR@/src/frontends/common/include/" \
INPUT = "@OpenVINO_SOURCE_DIR@/src/frontends/common/include/" \
"@OpenVINO_SOURCE_DIR@/src/common/conditional_compilation/include/" \
"@OpenVINO_SOURCE_DIR@/src/common/itt/include/" \
"@OpenVINO_SOURCE_DIR@/src/common/low_precision_transformations/include/" \

View File

@ -1,4 +1,7 @@
# Representation of low-precision models {#openvino_docs_ie_plugin_dg_lp_representation}
.. {#openvino_docs_ie_plugin_dg_lp_representation}
Representation of low-precision models
======================================
The goal of this document is to describe how optimized models are represented in OpenVINO Intermediate Representation (IR) and provide guidance on interpretation rules for such models at runtime.
Currently, there are two groups of optimization methods that can influence on the IR after applying them to the full-precision model:
- **Sparsity**. It is represented by zeros inside the weights and this is up to the hardware plugin how to interpret these zeros (use weights as is or apply special compression algorithms and sparse arithmetic). No additional mask is provided with the model.

View File

@ -1,6 +1,8 @@
# Legal Information {#openvino_docs_Legal_Information}
.. {#openvino_docs_Legal_Information}
Legal Information
=================
@sphinxdirective
.. meta::
:description: Learn about legal information and policies related to the use
@ -29,6 +31,5 @@ The OpenVINO logo must be used in connection with truthful, non-misleading refer
Modification of the logo or use of any separate element(s) of the logo alone is not allowed.
@endsphinxdirective

View File

@ -1,6 +1,5 @@
# [LEGACY] Extending Model Optimizer with Caffe Python Layers {#openvino_docs_MO_DG_prepare_model_customize_model_optimizer_Extending_Model_Optimizer_With_Caffe_Python_Layers}
@sphinxdirective
.. meta::
:description: Learn how to extract operator attributes in Model Optimizer to
@ -109,4 +108,3 @@ Additional Resources
* :doc:`Graph Traversal and Modification Using Ports and Connections <openvino_docs_MO_DG_prepare_model_customize_model_optimizer_Customize_Model_Optimizer_Model_Optimizer_Ports_Connections>`
* :doc:`Model Optimizer Extensions <openvino_docs_MO_DG_prepare_model_customize_model_optimizer_Model_Optimizer_Extensions>`
@endsphinxdirective

View File

@ -1,6 +1,5 @@
# [LEGACY] Model Optimizer Extensions {#openvino_docs_MO_DG_prepare_model_customize_model_optimizer_Model_Optimizer_Extensions}
@sphinxdirective
.. meta::
:description: Learn about deprecated extensions, which enable injecting logic
@ -59,4 +58,3 @@ Additional Resources
* :doc:`Graph Traversal and Modification Using Ports and Connections <openvino_docs_MO_DG_prepare_model_customize_model_optimizer_Customize_Model_Optimizer_Model_Optimizer_Ports_Connections>`
* :doc:`Extending Model Optimizer with Caffe Python Layers <openvino_docs_MO_DG_prepare_model_customize_model_optimizer_Extending_Model_Optimizer_With_Caffe_Python_Layers>`
@endsphinxdirective

View File

@ -1,6 +1,5 @@
# [LEGACY] Operation Extractor {#openvino_docs_MO_DG_prepare_model_customize_model_optimizer_Model_Optimizer_Extensions_Model_Optimizer_Extractor}
@sphinxdirective
.. meta::
:description: Learn about a deprecated generic extension in Model Optimizer,
@ -112,4 +111,3 @@ Additional Resources
* :doc:`Model Optimizer Extensions <openvino_docs_MO_DG_prepare_model_customize_model_optimizer_Model_Optimizer_Extensions>`
* :doc:`Extending Model Optimizer with Caffe Python Layers <openvino_docs_MO_DG_prepare_model_customize_model_optimizer_Extending_Model_Optimizer_With_Caffe_Python_Layers>`
@endsphinxdirective

View File

@ -1,6 +1,5 @@
# [LEGACY] Model Optimizer Operation {#openvino_docs_MO_DG_prepare_model_customize_model_optimizer_Model_Optimizer_Extensions_Model_Optimizer_Operation}
@sphinxdirective
.. meta::
:description: Learn about the Op class, that contains operation attributes,
@ -109,4 +108,3 @@ Additional Resources
* :doc:`Model Optimizer Extensions <openvino_docs_MO_DG_prepare_model_customize_model_optimizer_Model_Optimizer_Extensions>`
* :doc:`Extending Model Optimizer with Caffe Python Layers <openvino_docs_MO_DG_prepare_model_customize_model_optimizer_Extending_Model_Optimizer_With_Caffe_Python_Layers>`
@endsphinxdirective

View File

@ -1,6 +1,5 @@
# [LEGACY] Graph Traversal and Modification {#openvino_docs_MO_DG_prepare_model_customize_model_optimizer_Customize_Model_Optimizer_Model_Optimizer_Ports_Connections}
@sphinxdirective
.. meta::
:description: Learn about deprecated APIs and the Port and Connection classes
@ -185,4 +184,3 @@ Additional Resources
* :doc:`Model Optimizer Extensions <openvino_docs_MO_DG_prepare_model_customize_model_optimizer_Model_Optimizer_Extensions>`
* :doc:`Extending Model Optimizer with Caffe Python Layers <openvino_docs_MO_DG_prepare_model_customize_model_optimizer_Extending_Model_Optimizer_With_Caffe_Python_Layers>`
@endsphinxdirective

View File

@ -1,6 +1,5 @@
# [LEGACY] Graph Transformation Extensions {#openvino_docs_MO_DG_prepare_model_customize_model_optimizer_Model_Optimizer_Extensions_Model_Optimizer_Transformation_Extensions}
@sphinxdirective
.. meta::
:description: Learn about various base classes for front, middle and back phase
@ -604,4 +603,3 @@ Additional Resources
* :doc:`Model Optimizer Extensions <openvino_docs_MO_DG_prepare_model_customize_model_optimizer_Model_Optimizer_Extensions>`
* :doc:`Extending Model Optimizer with Caffe Python Layers <openvino_docs_MO_DG_prepare_model_customize_model_optimizer_Extending_Model_Optimizer_With_Caffe_Python_Layers>`
@endsphinxdirective

View File

@ -1,6 +1,8 @@
# Debugging Auto-Device Plugin {#openvino_docs_OV_UG_supported_plugins_AUTO_debugging}
.. {#openvino_docs_OV_UG_supported_plugins_AUTO_debugging}
Debugging Auto-Device Plugin
============================
@sphinxdirective
.. meta::
:description: In OpenVINO Runtime, you can enable Instrumentation and Tracing Technology API (ITT API) of Intel® VTune™
@ -128,4 +130,3 @@ With Intel® VTune™ Profiler installed you can configure your analysis with th
:align: center
@endsphinxdirective

View File

@ -1,6 +1,8 @@
# OpenVINO™ Python API Exclusives {#openvino_docs_OV_UG_Python_API_exclusives}
.. {#openvino_docs_OV_UG_Python_API_exclusives}
OpenVINO™ Python API Exclusives
=================================
@sphinxdirective
.. meta::
:description: OpenVINO™ Runtime Python API includes additional features to
@ -215,4 +217,3 @@ List of Functions that Release the GIL
* openvino.runtime.Model.reshape
* openvino.preprocess.PrePostProcessor.build
@endsphinxdirective

View File

@ -1,6 +1,8 @@
# OpenVINO™ Runtime Python API Advanced Inference {#openvino_docs_OV_UG_Python_API_inference}
.. {#openvino_docs_OV_UG_Python_API_inference}
OpenVINO™ Runtime Python API Advanced Inference
=================================================
@sphinxdirective
.. meta::
:description: OpenVINO™ Runtime Python API enables you to share memory on inputs, hide
@ -91,5 +93,4 @@ synchronous calls. "Postponed Return" could be applied when:
:language: python
:fragment: [no_return_inference]
@endsphinxdirective

View File

@ -1,6 +1,8 @@
# Troubleshooting Reshape Errors {#troubleshooting_reshape_errors}
.. {#troubleshooting_reshape_errors}
Troubleshooting Reshape Errors
==============================
@sphinxdirective
.. meta::
:description: In OpenVINO™, you can use several methods to address the issues
@ -48,4 +50,3 @@ To fix some operators which prevent normal shape propagation:
* transform OpenVINO Model during the runtime. For more information, see :doc:`OpenVINO Runtime Transformations <openvino_docs_transformations>`,
* modify the original model with the help of the original framework.
@endsphinxdirective

View File

@ -1,6 +1,8 @@
# Automatic Device Selection {#openvino_docs_OV_UG_supported_plugins_AUTO}
.. {#openvino_docs_OV_UG_supported_plugins_AUTO}
Automatic Device Selection
==========================
@sphinxdirective
.. toctree::
:maxdepth: 1
@ -483,4 +485,3 @@ Additional Resources
- :doc:`Running on Multiple Devices Simultaneously <openvino_docs_OV_UG_Running_on_multiple_devices>`
- :doc:`Supported Devices <openvino_docs_OV_UG_supported_plugins_Supported_Devices>`
@endsphinxdirective

View File

@ -1,6 +1,8 @@
# Automatic Batching {#openvino_docs_OV_UG_Automatic_Batching}
.. {#openvino_docs_OV_UG_Automatic_Batching}
Automatic Batching
==================
@sphinxdirective
.. meta::
:description: The Automatic Batching Execution mode in OpenVINO Runtime
@ -240,5 +242,4 @@ Additional Resources
* :doc:`Supported Devices <openvino_docs_OV_UG_supported_plugins_Supported_Devices>`
@endsphinxdirective

View File

@ -1,6 +1,8 @@
# Heterogeneous execution {#openvino_docs_OV_UG_Hetero_execution}
.. {#openvino_docs_OV_UG_Hetero_execution}
Heterogeneous execution
=======================
@sphinxdirective
.. meta::
:description: Heterogeneous execution mode in OpenVINO Runtime enables
@ -204,4 +206,3 @@ Additional Resources
* :doc:`Supported Devices <openvino_docs_OV_UG_supported_plugins_Supported_Devices>`
@endsphinxdirective

View File

@ -1,6 +1,8 @@
# The LowLatencу2 Transformation {#openvino_docs_OV_UG_lowlatency2}
.. {#openvino_docs_OV_UG_lowlatency2}
The LowLatencу2 Transformation
===============================
@sphinxdirective
.. meta::
:description: The LowLatency2 transformation in OpenVINO Runtime enables restructuring
@ -132,4 +134,3 @@ Known Limitations
}
}
@endsphinxdirective

View File

@ -1,6 +1,8 @@
# Model Representation in OpenVINO™ Runtime {#openvino_docs_OV_UG_Model_Representation}
.. {#openvino_docs_OV_UG_Model_Representation}
Model Representation in OpenVINO™ Runtime
===========================================
@sphinxdirective
.. meta::
:description: In OpenVINO™ Runtime a model is represented by special classes to work with model data types and shapes.
@ -226,5 +228,4 @@ Additional Resources
* :doc:`OpenVINO™ Runtime Extensibility Developer Guide <openvino_docs_Extensibility_UG_Intro>`.
* :doc:`Transformations Developer Guide <openvino_docs_transformations>`.
@endsphinxdirective

View File

@ -1,6 +1,8 @@
# Multi-device execution {#openvino_docs_OV_UG_Running_on_multiple_devices}
.. {#openvino_docs_OV_UG_Running_on_multiple_devices}
Multi-device execution
======================
@sphinxdirective
.. meta::
:description: The Multi-Device execution mode in OpenVINO Runtime assigns
@ -150,4 +152,3 @@ Additional Resources
- :doc:`Automatic Device Selection <openvino_docs_OV_UG_supported_plugins_AUTO>`
@endsphinxdirective

View File

@ -1,6 +1,8 @@
# OpenVINO™ Inference Request {#openvino_docs_OV_UG_Infer_request}
.. {#openvino_docs_OV_UG_Infer_request}
OpenVINO™ Inference Request
=============================
@sphinxdirective
.. meta::
:description: Infer Request mechanism in OpenVINO™ Runtime allows inferring
@ -338,4 +340,3 @@ By using ``ov::RemoteContext`` you can create a remote tensor to work with remot
:fragment: remote_tensor
@endsphinxdirective

View File

@ -1,6 +1,8 @@
# When Dynamic Shapes API is Not Applicable {#openvino_docs_OV_UG_NoDynamicShapes}
.. {#openvino_docs_OV_UG_NoDynamicShapes}
When Dynamic Shapes API is Not Applicable
=========================================
@sphinxdirective
.. meta::
:description: The methods to emulate dynamic shapes are applied only if the
@ -49,4 +51,3 @@ the input tensor with batch ``5`` can be processed with two inference calls with
(At this point, it is assumed that the batch processing is required for performance reasons. In other cases, just loop over images in a batch
and process image by image with a single compiled model.)
@endsphinxdirective

View File

@ -1,6 +1,8 @@
# About OpenVINO {#about_openvino}
.. {#about_openvino}
About OpenVINO
==============
@sphinxdirective
.. toctree::
:maxdepth: 1
@ -72,5 +74,4 @@ Case Studies
OpenVINO has been employed in various case studies across a wide range of industries and applications, including healthcare, retail, safety and security, transportation, and more. Read about how OpenVINO enhances efficiency, accuracy, and safety in different sectors on the `success stories page <https://www.intel.com/content/www/us/en/internet-of-things/ai-in-production/success-stories.html>`__.
@endsphinxdirective

View File

@ -1,7 +1,9 @@
# Additional Resources {#resources}
.. {#resources}
Additional Resources
====================
@sphinxdirective
.. meta::
:description: Learn more about OpenVINO from benchmark results, case studies
@ -28,6 +30,5 @@
`Case Studies <https://www.intel.com/openvino-success-stories>`__ are articles about real-world examples of OpenVINO™ usage.
@endsphinxdirective

View File

@ -1,6 +1,8 @@
# OpenVINO™ Telemetry {#openvino_docs_telemetry_information}
.. {#openvino_docs_telemetry_information}
OpenVINO™ Telemetry
=====================
@sphinxdirective
.. meta::
:description: Learn about OpenVINO™ telemetry, that collects anonymous usage data for the purpose of improving OpenVINO™ tools.
@ -56,4 +58,3 @@ Telemetry Data Collection Details
Any raw data that has reached the 14-month threshold is deleted from Google Analytics on a monthly basis.
@endsphinxdirective

View File

@ -1,6 +1,8 @@
# OpenVINO TensorFlow Frontend Capabilities and Limitations {#openvino_docs_MO_DG_TensorFlow_Frontend}
.. {#openvino_docs_MO_DG_TensorFlow_Frontend}
OpenVINO TensorFlow Frontend Capabilities and Limitations
=========================================================
@sphinxdirective
.. meta::
:description: TensorFlow Frontend in OpenVINO Runtime is a C++ based frontend used
@ -16,4 +18,3 @@ The current limitations:
* There is no full parity between the legacy frontend and the new frontend in MO. Known limitations compared to the legacy approach are: TF1 Control flow, Complex types, models requiring config files and old python extensions. The solution detects unsupported functionalities and provides fallback. To force the use of the legacy frontend, ``--use_legacy_frontend`` must be specified.
@endsphinxdirective

View File

@ -1,6 +1,8 @@
# Compatibility and Support {#compatibility_and_support}
.. {#compatibility_and_support}
Compatibility and Support
=========================
@sphinxdirective
.. toctree::
:maxdepth: 1
@ -22,4 +24,3 @@
@endsphinxdirective

View File

@ -1,7 +1,9 @@
# Supported Devices {#openvino_docs_OV_UG_supported_plugins_Supported_Devices}
.. {#openvino_docs_OV_UG_supported_plugins_Supported_Devices}
Supported Devices
=================
@sphinxdirective
.. meta::
:description: Check the list of officially supported models in Intel®
@ -57,6 +59,5 @@ topic (step 3 "Configure input and output").
@endsphinxdirective

View File

@ -1,7 +1,9 @@
# Supported Models {#openvino_supported_models}
.. {#openvino_supported_models}
Supported Models
================
@sphinxdirective
.. meta::
:description: Check the list of officially supported models in Intel®
@ -30,6 +32,5 @@ The list is based on release 2023.0, as of June 01, 2023
* As OpenVINO™ is open source you can enhance it with your own contribution to the GitHub repository. To learn more, see the articles on :doc:`OpenVINO Extensibility <openvino_docs_Extensibility_UG_Intro>`.
@endsphinxdirective

View File

@ -1,6 +1,8 @@
# Supported Operations - by Framework Frontend {#openvino_resources_supported_operations_frontend}
.. {#openvino_resources_supported_operations_frontend}
Supported Operations - by Framework Frontend
============================================
@sphinxdirective
.. meta::
:description: Check the list of operations supported by OpenVINO Framework Frontend.
@ -1138,4 +1140,3 @@ This page lists operations supported by OpenVINO Framework Frontend.
========================================== ==========================================================================================
@endsphinxdirective

View File

@ -1,6 +1,8 @@
# Supported Operations - by Inference Devices {#openvino_resources_supported_operations}
.. {#openvino_resources_supported_operations}
Supported Operations - by Inference Devices
===========================================
@sphinxdirective
This page lists operations supported by OpenVINO inference devices. The table presents general information,
for a more detailed and most recent listing of operations that are implemented and tested:
@ -168,4 +170,3 @@ for a more detailed and most recent listing of operations that are implemented a
@endsphinxdirective

View File

@ -1,6 +1,8 @@
# Performance Benchmarks {#openvino_docs_performance_benchmarks}
.. {#openvino_docs_performance_benchmarks}
Performance Benchmarks
======================
@sphinxdirective
.. meta::
:description: Use the benchmark results for Intel® Distribution of OpenVINO™
@ -179,4 +181,3 @@ Your costs and results may vary.
Intel optimizations, for Intel compilers or other products, may not optimize to the same degree for non-Intel products.
@endsphinxdirective

View File

@ -1,7 +1,9 @@
# Getting Performance Numbers {#openvino_docs_MO_DG_Getting_Performance_Numbers}
.. {#openvino_docs_MO_DG_Getting_Performance_Numbers}
Getting Performance Numbers
===========================
@sphinxdirective
This guide explains how to use the benchmark_app to get performance numbers. It also explains how the performance
numbers are reflected through internal inference performance counters and execution graphs. It also includes
@ -154,6 +156,5 @@ Therefore, you can also compile OpenVINO from the source code with ITT enabled a
insights in the application-level performance on the timeline view.
@endsphinxdirective

View File

@ -1,7 +1,9 @@
# Performance Information F.A.Q. {#openvino_docs_performance_benchmarks_faq}
.. {#openvino_docs_performance_benchmarks_faq}
Performance Information F.A.Q.
==============================
@sphinxdirective
.. meta::
@ -165,4 +167,3 @@
inference is required.
@endsphinxdirective

View File

@ -1,7 +1,9 @@
# Model Accuracy {#openvino_docs_performance_int8_vs_fp32}
.. {#openvino_docs_performance_int8_vs_fp32}
Model Accuracy
==============
@sphinxdirective
The following two tables present the absolute accuracy drop calculated as the accuracy difference
between OV-accuracy and the original frame work accuracy for FP32, and the same for INT8 and FP16
@ -228,4 +230,3 @@ for more information.
Notes: For all accuracy metrics except perplexity a "-", (minus sign), indicates an accuracy drop.
For perplexity the values do not indicate a deviation from a reference but are the actual measured accuracy for the model.
@endsphinxdirective

View File

@ -1,6 +1,8 @@
# OpenVINO Release Notes {#openvino_release_notes}
.. {#openvino_release_notes}
OpenVINO Release Notes
======================
@sphinxdirective
The Intel® Distribution of OpenVINO™ toolkit is an open-source solution for optimizing
and deploying AI inference in domains such as computer vision,automatic speech
@ -384,4 +386,3 @@ and distribution options.
@endsphinxdirective

View File

@ -1,6 +1,8 @@
# System Requirements {#system_requirements}
.. {#system_requirements}
System Requirements
===================
@sphinxdirective
Certain hardware requires specific drivers to work properly with OpenVINO.
@ -222,4 +224,3 @@ Performance varies by use, configuration and other factors. Learn more at
@endsphinxdirective

View File

@ -1,6 +1,8 @@
# Documentation {#documentation}
.. {#documentation}
Documentation
=============
@sphinxdirective
.. meta::
:description: Explore the OpenVINO toolkit workflow that entails preparing,
@ -33,4 +35,3 @@ This section provides reference documents that guide you through the OpenVINO to
| :doc:`OpenVINO™ Security <openvino_docs_security_guide_introduction>`
| Learn how to use OpenVINO securely and protect your data to meet specific security and privacy requirements.
@endsphinxdirective

View File

@ -1,6 +1,8 @@
# OpenVINO™ Ecosystem Overview {#openvino_ecosystem}
.. {#openvino_ecosystem}
OpenVINO™ Ecosystem Overview
==============================
@sphinxdirective
.. meta::
:description: OpenVINO™ ecosystem offers various resources for developing deep learning solutions.
@ -62,5 +64,4 @@ More resources:
@endsphinxdirective

View File

@ -1,6 +1,8 @@
# Datumaro {#datumaro_documentation}
.. {#datumaro_documentation}
Datumaro
========
@sphinxdirective
.. meta::
:description: Start working with Datumaro, which offers functionalities for basic data
@ -72,5 +74,4 @@ Python Hands-on Examples
* `Deep learning end-to-end use-cases <https://openvinotoolkit.github.io/datumaro/stable/docs/jupyter_notebook_examples/e2e_example.html>`__
@endsphinxdirective

View File

@ -1,6 +1,8 @@
# OpenVINO™ Training Extensions {#ote_documentation}
.. {#ote_documentation}
OpenVINO™ Training Extensions
===============================
@sphinxdirective
.. meta::
:description: OpenVINO™ Training Extensions include advanced algorithms used
@ -42,6 +44,5 @@ Tutorials
* `Base tutorial <https://openvinotoolkit.github.io/training_extensions/stable/guide/tutorials/base/index.html>`__
* `Advanced tutorial <https://openvinotoolkit.github.io/training_extensions/stable/guide/tutorials/advanced/index.html>`__
@endsphinxdirective

View File

@ -1,6 +1,8 @@
# OpenVINO™ Security Add-on {#ovsa_get_started}
.. {#ovsa_get_started}
OpenVINO™ Security Add-on
===========================
@sphinxdirective
.. meta::
:description: Learn how to setup hardware and virtual machines to use the OpenVINO™ Security Add-on to access and run access controlled models.
@ -1053,5 +1055,4 @@ Use these links for more information:
- `OpenVINO Model Server Quick Start Guide <https://github.com/openvinotoolkit/model_server/blob/main/docs/ovms_quickstart.md>`__
- `Model repository <https://github.com/openvinotoolkit/model_server/blob/main/docs/models_repository.md>`__
@endsphinxdirective

View File

@ -1,6 +1,8 @@
# OpenVINO Extensibility Mechanism {#openvino_docs_Extensibility_UG_Intro}
.. {#openvino_docs_Extensibility_UG_Intro}
OpenVINO Extensibility Mechanism
================================
@sphinxdirective
.. meta::
:description: Explore OpenVINO™ Extensibility API, which allows adding
@ -194,4 +196,3 @@ See Also
* :doc:`Using OpenVINO Runtime Samples <openvino_docs_OV_UG_Samples_Overview>`
* :doc:`Hello Shape Infer SSD sample <openvino_inference_engine_samples_hello_reshape_ssd_README>`
@endsphinxdirective

View File

@ -1,6 +1,8 @@
# How to Implement Custom GPU Operations {#openvino_docs_Extensibility_UG_GPU}
.. {#openvino_docs_Extensibility_UG_GPU}
How to Implement Custom GPU Operations
======================================
@sphinxdirective
.. meta::
:description: Learn the details of custom kernel support for the GPU device to
@ -358,4 +360,3 @@ execution ends.
For more information, refer to the `printf Function <https://www.khronos.org/registry/OpenCL/sdk/1.2/docs/man/xhtml/printfFunction.html>`__.
@endsphinxdirective

View File

@ -1,6 +1,8 @@
# Custom OpenVINO™ Operations {#openvino_docs_Extensibility_UG_add_openvino_ops}
.. {#openvino_docs_Extensibility_UG_add_openvino_ops}
Custom OpenVINO™ Operations
=============================
@sphinxdirective
.. meta::
:description: Explore OpenVINO™ Extension API which enables registering
@ -83,4 +85,3 @@ OpenVINO™ operation contains two constructors:
:language: cpp
:fragment: [op:evaluate]
@endsphinxdirective

View File

@ -1,6 +1,8 @@
# Frontend Extensions {#openvino_docs_Extensibility_UG_Frontend_Extensions}
.. {#openvino_docs_Extensibility_UG_Frontend_Extensions}
Frontend Extensions
===================
@sphinxdirective
.. meta::
:description: Learn how to use frontend extension classes to facilitate the mapping
@ -414,6 +416,5 @@ The next example shows such conversion for the ``TopKV2`` operation.
:language: cpp
:fragment: [frontend_extension_tf_TopK]
@endsphinxdirective

View File

@ -1,6 +1,8 @@
# Overview of OpenVINO Plugin Library {#openvino_docs_ie_plugin_dg_overview}
.. {#openvino_docs_ie_plugin_dg_overview}
Overview of OpenVINO Plugin Library
===================================
@sphinxdirective
.. meta::
:description: Develop and implement independent inference solutions for
@ -97,4 +99,3 @@ API References
* `OpenVINO Plugin API <https://docs.openvino.ai/2023.2/groupov_dev_api.html>`__
* `OpenVINO Transformation API <https://docs.openvino.ai/2023.2/groupie_transformation_api.html>`__
@endsphinxdirective

View File

@ -1,6 +1,8 @@
# Asynchronous Inference Request {#openvino_docs_ov_plugin_dg_async_infer_request}
.. {#openvino_docs_ov_plugin_dg_async_infer_request}
Asynchronous Inference Request
==============================
@sphinxdirective
.. meta::
:description: Use the base ov::IAsyncInferRequest class to implement a custom asynchronous inference request in OpenVINO.
@ -73,5 +75,4 @@ The method allows to cancel the infer request execution:
:language: cpp
:fragment: [async_infer_request:cancel]
@endsphinxdirective

View File

@ -1,6 +1,8 @@
# Build Plugin Using CMake {#openvino_docs_ov_plugin_dg_plugin_build}
.. {#openvino_docs_ov_plugin_dg_plugin_build}
Build Plugin Using CMake
========================
@sphinxdirective
.. meta::
:description: Learn how to build a plugin using CMake and OpenVINO Developer Package.
@ -101,5 +103,4 @@ To build a plugin and its tests, run the following CMake scripts:
The ``openvino::funcSharedTests`` static library with common functional OpenVINO Plugin tests is imported via the OpenVINO Developer Package.
@endsphinxdirective

View File

@ -1,6 +1,8 @@
# Compiled Model {#openvino_docs_ov_plugin_dg_compiled_model}
.. {#openvino_docs_ov_plugin_dg_compiled_model}
Compiled Model
==============
@sphinxdirective
.. meta::
:description: Use the ov::CompiledModel class as the base class for a compiled
@ -132,4 +134,3 @@ The methods returns the runtime model with backend specific information.
The next step in plugin library implementation is the :doc:`Synchronous Inference Request <openvino_docs_ov_plugin_dg_infer_request>` class.
@endsphinxdirective

View File

@ -1,6 +1,8 @@
# Synchronous Inference Request {#openvino_docs_ov_plugin_dg_infer_request}
.. {#openvino_docs_ov_plugin_dg_infer_request}
Synchronous Inference Request
=============================
@sphinxdirective
.. meta::
:description: Use the ov::ISyncInferRequest interface as the base class to implement a synchronous inference request in OpenVINO.
@ -146,4 +148,3 @@ The plugin specific method allows to interrupt the synchronous execution from th
The next step in the plugin library implementation is the :doc:`Asynchronous Inference Request <openvino_docs_ov_plugin_dg_async_infer_request>` class.
@endsphinxdirective

View File

@ -1,6 +1,8 @@
# Plugin {#openvino_docs_ov_plugin_dg_plugin}
.. {#openvino_docs_ov_plugin_dg_plugin}
Plugin
======
@sphinxdirective
.. meta::
:description: Explore OpenVINO Plugin API, which includes functions and
@ -232,4 +234,3 @@ OpenVINO plugin library must export only one function creating a plugin instance
Next step in a plugin library implementation is the :doc:`CompiledModel <openvino_docs_ov_plugin_dg_compiled_model>` class.
@endsphinxdirective

View File

@ -1,6 +1,8 @@
# Plugin Testing {#openvino_docs_ov_plugin_dg_plugin_testing}
.. {#openvino_docs_ov_plugin_dg_plugin_testing}
Plugin Testing
==============
@sphinxdirective
.. meta::
:description: Use the openvino::funcSharedTests library, which includes
@ -68,5 +70,4 @@ Add common test case definitions applicable for all plugins to the ``openvino::f
When implementing a new subgraph test, add new single-layer tests for each operation of the subgraph if such test does not exist.
@endsphinxdirective

View File

@ -1,6 +1,8 @@
# Plugin Properties {#openvino_docs_ov_plugin_dg_properties}
.. {#openvino_docs_ov_plugin_dg_properties}
Plugin Properties
=================
@sphinxdirective
.. meta::
:description: Use the ov::Property class to define access rights and
@ -18,5 +20,4 @@ OpenVINO API provides the interface ov::Property which allows to define the prop
:language: cpp
:fragment: [properties:public_header]
@endsphinxdirective

View File

@ -1,6 +1,8 @@
# Remote Context {#openvino_docs_ov_plugin_dg_remote_context}
.. {#openvino_docs_ov_plugin_dg_remote_context}
Remote Context
==============
@sphinxdirective
.. meta::
:description: Use the ov::RemoteContext class as the base class for a plugin-specific remote context.
@ -71,5 +73,4 @@ The method creates device specific remote tensor.
The next step to support device specific tensors is a creation of device specific :doc:`Remote Tensor <openvino_docs_ov_plugin_dg_remote_tensor>` class.
@endsphinxdirective

View File

@ -1,6 +1,8 @@
# Remote Tensor {#openvino_docs_ov_plugin_dg_remote_tensor}
.. {#openvino_docs_ov_plugin_dg_remote_tensor}
Remote Tensor
=============
@sphinxdirective
.. meta::
:description: Use the ov::IRemoteTensor interface as a base class for device-specific remote tensors.
@ -111,5 +113,4 @@ get_device_name()
The method returns tensor specific device name.
@endsphinxdirective

View File

@ -1,6 +1,8 @@
# Advanced Topics {#openvino_docs_ie_plugin_detailed_guides}
.. {#openvino_docs_ie_plugin_detailed_guides}
Advanced Topics
===============
@sphinxdirective
.. meta::
:description: Learn more about plugin development and specific features in
@ -20,5 +22,4 @@ The guides below provides extra information about specific features of OpenVINO
* :doc:`Low precision transformations guide <openvino_docs_OV_UG_lpt>`
* :doc:`Writing OpenVINO™ transformations guide <openvino_docs_transformations>`
@endsphinxdirective

View File

@ -1,7 +1,9 @@
# Quantized models compute and restrictions {#openvino_docs_ov_plugin_dg_quantized_models}
.. {#openvino_docs_ov_plugin_dg_quantized_models}
Quantized models compute and restrictions
=========================================
@sphinxdirective
.. meta::
:description: Learn about the support for quantized models with different
@ -70,4 +72,3 @@ Below we define these rules as follows:
* Non-unified quantization parameters for Eltwise and Concat operations.
* Non-quantized network output, i.e. there are no quantization parameters for it.
@endsphinxdirective

View File

@ -1,6 +1,8 @@
# OpenVINO™ Low Precision Transformations {#openvino_docs_OV_UG_lpt}
.. {#openvino_docs_OV_UG_lpt}
OpenVINO™ Low Precision Transformations
=========================================
@sphinxdirective
.. meta::
:description: Learn about low precision transformations used to infer a quantized model in low precision with the maximum performance on Intel CPU, GPU, and ARM platforms.
@ -10,8 +12,6 @@
:caption: Low Precision Transformations
:hidden:
Low Precision Transformations <openvino_docs_OV_UG_lpt>
Attributes <openvino_docs_OV_UG_lpt_attributes>
Step 1. Prerequisites transformations <openvino_docs_OV_UG_lpt_step1_prerequisites>
Step 2. Markup transformations <openvino_docs_OV_UG_lpt_step2_markup>
@ -471,4 +471,3 @@ Plugin specific customization can be implemented via nGraph transformation callb
:language: cpp
:fragment: [asymmetric_quantization]
@endsphinxdirective

View File

@ -1,6 +1,8 @@
# Attributes {#openvino_docs_OV_UG_lpt_attributes}
.. {#openvino_docs_OV_UG_lpt_attributes}
Attributes
==========
@sphinxdirective
.. meta::
:description: Check the lists of attributes created or used by model transformations.
@ -103,4 +105,3 @@ Attributes usage by transformations:
.. note::
The same type of attribute instances can be created in different transformations. This approach is the result of the transformation single-responsibility principle. For example, ``Precision`` attribute instances are created in ``MarkupCanBeQuantized`` and ``MarkupPrecisions`` transformations, but the reasons for their creation are different.
@endsphinxdirective

View File

@ -1,6 +1,8 @@
# AvgPoolPrecisionPreserved Attribute {#openvino_docs_OV_UG_lpt_AvgPoolPrecisionPreserved}
.. {#openvino_docs_OV_UG_lpt_AvgPoolPrecisionPreserved}
AvgPoolPrecisionPreserved Attribute
===================================
@sphinxdirective
.. meta::
:description: Learn about AvgPoolPrecisionPreserved attribute used only during AvgPool operation.
@ -21,4 +23,3 @@ Utility attribute, which is used only during ``AvgPool`` operation, precision pr
* - Properties
- value (boolean)
@endsphinxdirective

View File

@ -1,6 +1,8 @@
# IntervalsAlignment Attribute {#openvino_docs_OV_UG_lpt_IntervalsAlignment}
.. {#openvino_docs_OV_UG_lpt_IntervalsAlignment}
IntervalsAlignment Attribute
============================
@sphinxdirective
.. meta::
:description: Learn about IntervalsAlignment attribute, which describes a subgraph with the same quantization intervals alignment.
@ -22,4 +24,3 @@ The attribute defines a subgraph with the same quantization intervals alignment.
* - Properties
- combined interval, minimal interval, minimal levels, preferable precisions
@endsphinxdirective

View File

@ -1,6 +1,8 @@
# PrecisionPreserved Attribute {#openvino_docs_OV_UG_lpt_PrecisionPreserved}
.. {#openvino_docs_OV_UG_lpt_PrecisionPreserved}
PrecisionPreserved Attribute
============================
@sphinxdirective
.. meta::
:description: Learn about PrecisionPreserved attribute, which describes a precision preserved operation.
@ -22,4 +24,3 @@ The attribute defines a precision preserved operation. If the attribute is absen
* - Properties
- value (boolean)
@endsphinxdirective

View File

@ -1,6 +1,8 @@
# Precisions Attribute {#openvino_docs_OV_UG_lpt_Precisions}
.. {#openvino_docs_OV_UG_lpt_Precisions}
Precisions Attribute
====================
@sphinxdirective
.. meta::
:description: Learn about Precisions attribute, which describes the precision required for an input/output port or an operation.
@ -22,4 +24,3 @@ The attribute defines precision which is required for input/output port or an op
* - Properties
- precisions
@endsphinxdirective

View File

@ -1,6 +1,8 @@
# QuantizationAlignment Attribute {#openvino_docs_OV_UG_lpt_QuantizationAlignment}
.. {#openvino_docs_OV_UG_lpt_QuantizationAlignment}
QuantizationAlignment Attribute
===============================
@sphinxdirective
.. meta::
:description: Learn about QuantizationAlignment attribute, which describes a subgraph with the same quantization alignment.
@ -22,4 +24,3 @@ The attribute defines a subgraph with the same quantization alignment. ``FakeQua
* - Properties
- value (boolean)
@endsphinxdirective

View File

@ -1,6 +1,8 @@
# QuantizationGranularity Attribute {#openvino_docs_OV_UG_lpt_QuantizationGranularity}
.. {#openvino_docs_OV_UG_lpt_QuantizationGranularity}
QuantizationGranularity Attribute
=================================
@sphinxdirective
.. meta::
:description: Learn about QuantizationGranularity attribute, which describes quantization granularity of operation inputs.
@ -22,4 +24,3 @@ The attribute defines quantization granularity of operation inputs.
* - Properties
- Quantization granularity
@endsphinxdirective

View File

@ -1,6 +1,8 @@
# Step 1. Prerequisites Transformations {#openvino_docs_OV_UG_lpt_step1_prerequisites}
.. {#openvino_docs_OV_UG_lpt_step1_prerequisites}
Step 1. Prerequisites Transformations
=====================================
@sphinxdirective
.. meta::
:description: Learn about optional Prerequisites transformations, that
@ -20,4 +22,3 @@ Prerequisites transformations are optional. The transformations prepare a model
* :doc:`PullTransposeThroughDequantization <openvino_docs_OV_UG_lpt_PullTransposeThroughDequantization>`
* :doc:`LinOpSequenceFusion <openvino_docs_OV_UG_lpt_LinOpSequenceFusion>`
@endsphinxdirective

View File

@ -1,3 +0,0 @@
# ConvertSubtractConstant transformation {#openvino_docs_OV_UG_lpt_ConvertSubtractConstant}
ov::pass::low_precision::ConvertSubtractConstant class represents the `ConvertSubtractConstant` transformation.

View File

@ -0,0 +1,6 @@
.. {#openvino_docs_OV_UG_lpt_ConvertSubtractConstant}
ConvertSubtractConstant transformation
======================================
ov::pass::low_precision::ConvertSubtractConstant class represents the `ConvertSubtractConstant` transformation.

View File

@ -1,4 +1,7 @@
# LinOpSequenceFusion transformation {#openvino_docs_OV_UG_lpt_LinOpSequenceFusion}
.. {#openvino_docs_OV_UG_lpt_LinOpSequenceFusion}
LinOpSequenceFusion transformation
==================================
ngraph::pass::LinOpSequenceFusion class represents the `LinOpSequenceFusion` transformation.

View File

@ -1,3 +0,0 @@
# PullReshapeThroughDequantization transformation {#openvino_docs_OV_UG_lpt_PullReshapeThroughDequantization}
ov::pass::low_precision::PullReshapeThroughDequantization class represents the `PullReshapeThroughDequantization` transformation.

View File

@ -0,0 +1,6 @@
.. {#openvino_docs_OV_UG_lpt_PullReshapeThroughDequantization}
PullReshapeThroughDequantization transformation
===============================================
ov::pass::low_precision::PullReshapeThroughDequantization class represents the `PullReshapeThroughDequantization` transformation.

View File

@ -1,3 +0,0 @@
# PullTransposeThroughDequantization transformation {#openvino_docs_OV_UG_lpt_PullTransposeThroughDequantization}
ov::pass::low_precision::PullTransposeThroughDequantization class represents the `PullTransposeThroughDequantization` transformation.

View File

@ -0,0 +1,6 @@
.. {#openvino_docs_OV_UG_lpt_PullTransposeThroughDequantization}
PullTransposeThroughDequantization transformation
=================================================
ov::pass::low_precision::PullTransposeThroughDequantization class represents the `PullTransposeThroughDequantization` transformation.

View File

@ -1,6 +1,8 @@
# Step 2. Markup Transformations {#openvino_docs_OV_UG_lpt_step2_markup}
.. {#openvino_docs_OV_UG_lpt_step2_markup}
Step 2. Markup Transformations
==============================
@sphinxdirective
.. meta::
:description: Learn about markup transformations, which are used to create
@ -228,4 +230,3 @@ Final model:
.. image:: _static/images/step2_markup7.svg
:alt: AlignQuantizationParameters
@endsphinxdirective

View File

@ -1,3 +0,0 @@
# AlignQuantizationIntervals transformation {#openvino_docs_OV_UG_lpt_AlignQuantizationIntervals}
ov::pass::low_precision::AlignQuantizationIntervals class represents the `AlignQuantizationIntervals` transformation.

View File

@ -0,0 +1,6 @@
.. {#openvino_docs_OV_UG_lpt_AlignQuantizationIntervals}
AlignQuantizationIntervals transformation
=========================================
ov::pass::low_precision::AlignQuantizationIntervals class represents the `AlignQuantizationIntervals` transformation.

View File

@ -1,3 +0,0 @@
# AlignQuantizationParameters transformation {#openvino_docs_OV_UG_lpt_AlignQuantizationParameters}
ov::pass::low_precision::AlignQuantizationParameters class represents the `AlignQuantizationParameters` transformation.

View File

@ -0,0 +1,6 @@
.. {#openvino_docs_OV_UG_lpt_AlignQuantizationParameters}
AlignQuantizationParameters transformation
==========================================
ov::pass::low_precision::AlignQuantizationParameters class represents the `AlignQuantizationParameters` transformation.

View File

@ -1,3 +0,0 @@
# CreateAttribute transformation {#openvino_docs_OV_UG_lpt_CreateAttribute}
ov::pass::low_precision::CreateAttribute class represents the `CreateAttribute` transformation.

View File

@ -0,0 +1,6 @@
.. {#openvino_docs_OV_UG_lpt_CreateAttribute}
CreateAttribute transformation
==============================
ov::pass::low_precision::CreateAttribute class represents the `CreateAttribute` transformation.

View File

@ -1,3 +0,0 @@
# CreatePrecisionsDependentAttribute transformation {#openvino_docs_OV_UG_lpt_CreatePrecisionsDependentAttribute}
ov::pass::low_precision::CreatePrecisionsDependentAttribute class represents the `CreatePrecisionsDependentAttribute` transformation.

View File

@ -0,0 +1,6 @@
.. {#openvino_docs_OV_UG_lpt_CreatePrecisionsDependentAttribute}
CreatePrecisionsDependentAttribute transformation
=================================================
ov::pass::low_precision::CreatePrecisionsDependentAttribute class represents the `CreatePrecisionsDependentAttribute` transformation.

View File

@ -1,3 +0,0 @@
# MarkupAvgPoolPrecisionPreserved transformation {#openvino_docs_OV_UG_lpt_MarkupAvgPoolPrecisionPreserved}
ov::pass::low_precision::MarkupAvgPoolPrecisionPreserved class represents the `MarkupAvgPoolPrecisionPreserved` transformation.

View File

@ -0,0 +1,6 @@
.. {#openvino_docs_OV_UG_lpt_MarkupAvgPoolPrecisionPreserved}
MarkupAvgPoolPrecisionPreserved transformation
==============================================
ov::pass::low_precision::MarkupAvgPoolPrecisionPreserved class represents the `MarkupAvgPoolPrecisionPreserved` transformation.

View File

@ -1,3 +0,0 @@
# MarkupBias transformation {#openvino_docs_OV_UG_lpt_MarkupBias}
ov::pass::low_precision::MarkupBias class represents the `MarkupBias` transformation.

View File

@ -0,0 +1,6 @@
.. {#openvino_docs_OV_UG_lpt_MarkupBias}
MarkupBias transformation
=========================
ov::pass::low_precision::MarkupBias class represents the `MarkupBias` transformation.

View File

@ -1,3 +0,0 @@
# MarkupCanBeQuantized transformation {#openvino_docs_OV_UG_lpt_MarkupCanBeQuantized}
ov::pass::low_precision::MarkupCanBeQuantized class represents the `MarkupCanBeQuantized` transformation.

View File

@ -0,0 +1,6 @@
.. {#openvino_docs_OV_UG_lpt_MarkupCanBeQuantized}
MarkupCanBeQuantized transformation
===================================
ov::pass::low_precision::MarkupCanBeQuantized class represents the `MarkupCanBeQuantized` transformation.

View File

@ -1,3 +0,0 @@
# MarkupPerTensorQuantization transformation {#openvino_docs_OV_UG_lpt_MarkupPerTensorQuantization}
ov::pass::low_precision::MarkupPerTensorQuantization class represents the `MarkupPerTensorQuantization` transformation.

View File

@ -0,0 +1,6 @@
.. {#openvino_docs_OV_UG_lpt_MarkupPerTensorQuantization}
MarkupPerTensorQuantization transformation
==========================================
ov::pass::low_precision::MarkupPerTensorQuantization class represents the `MarkupPerTensorQuantization` transformation.

View File

@ -1,3 +0,0 @@
# MarkupPrecisions transformation {#openvino_docs_OV_UG_lpt_MarkupPrecisions}
ov::pass::low_precision::MarkupPrecisions class represents the `MarkupPrecisions` transformation.

View File

@ -0,0 +1,6 @@
.. {#openvino_docs_OV_UG_lpt_MarkupPrecisions}
MarkupPrecisions transformation
===============================
ov::pass::low_precision::MarkupPrecisions class represents the `MarkupPrecisions` transformation.

View File

@ -1,3 +0,0 @@
# PropagatePrecisions transformation {#openvino_docs_OV_UG_lpt_PropagatePrecisions}
ov::pass::low_precision::PropagatePrecisions class represents the `PropagatePrecisions` transformation.

View File

@ -0,0 +1,6 @@
.. {#openvino_docs_OV_UG_lpt_PropagatePrecisions}
PropagatePrecisions transformation
==================================
ov::pass::low_precision::PropagatePrecisions class represents the `PropagatePrecisions` transformation.

View File

@ -1,3 +0,0 @@
# PropagateSharedValue transformation {#openvino_docs_OV_UG_lpt_PropagateSharedValue}
ov::pass::low_precision::PropagateSharedValue class represents the `PropagateSharedValue` transformation.

View File

@ -0,0 +1,6 @@
.. {#openvino_docs_OV_UG_lpt_PropagateSharedValue}
PropagateSharedValue transformation
===================================
ov::pass::low_precision::PropagateSharedValue class represents the `PropagateSharedValue` transformation.

View File

@ -1,3 +0,0 @@
# PropagateThroughPrecisionPreserved transformation {#openvino_docs_OV_UG_lpt_PropagateThroughPrecisionPreserved}
ov::pass::low_precision::PropagateThroughPrecisionPreserved class represents the `PropagateThroughPrecisionPreserved` transformation.

View File

@ -0,0 +1,6 @@
.. {#openvino_docs_OV_UG_lpt_PropagateThroughPrecisionPreserved}
PropagateThroughPrecisionPreserved transformation
=================================================
ov::pass::low_precision::PropagateThroughPrecisionPreserved class represents the `PropagateThroughPrecisionPreserved` transformation.

Some files were not shown because too many files have changed in this diff Show More