docs: fix dead links for App (#18332)
This commit is contained in:
parent
8ade7d08ea
commit
cf8f8ab383
|
@ -8,7 +8,7 @@ Communication between Lightning Components
|
||||||
|
|
||||||
**Level:** Intermediate
|
**Level:** Intermediate
|
||||||
|
|
||||||
**Prerequisite**: Read the `Communication in Lightning Apps article <../../access_app_state.html>`_.
|
**Prerequisite**: Read the :doc:`Communication in Lightning Apps article <../../../workflows/access_app_state>`.
|
||||||
|
|
||||||
----
|
----
|
||||||
|
|
||||||
|
|
|
@ -8,7 +8,7 @@ Sharing Objects between LightningWorks
|
||||||
|
|
||||||
**Level:** Advanced
|
**Level:** Advanced
|
||||||
|
|
||||||
**Prerequisite**: Reach Level 16+, know about the `pandas DataFrames <https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.html>`_ and read and read the `Access app state guide <../../access_app_state.html>`_.
|
**Prerequisite**: Reach Level 16+, know about the `pandas DataFrames <https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.html>`_ and read and read the :doc:`Access app state guide <../../workflows/access_app_state>`.
|
||||||
|
|
||||||
----
|
----
|
||||||
|
|
||||||
|
|
|
@ -15,7 +15,7 @@ In this example, you will learn how to create a simple DAG which:
|
||||||
|
|
||||||
and learn how to schedule this entire process.
|
and learn how to schedule this entire process.
|
||||||
|
|
||||||
Find the complete example `here <https://github.com/Lightning-AI/lightning/blob/master/examples/app_dag/app.py>`_.
|
Find the complete example `here <https://github.com/Lightning-AI/lightning/blob/master/examples/app/dag/app.py>`_.
|
||||||
|
|
||||||
----
|
----
|
||||||
|
|
||||||
|
|
|
@ -19,7 +19,7 @@ Can I Build a DAG with Lightning?
|
||||||
*********************************
|
*********************************
|
||||||
Yes!
|
Yes!
|
||||||
|
|
||||||
DAGs are one of the easiest Lightning Apps to build. For example, here's a `full app that defines a DAG <../examples/dag/dag.html>`_.
|
DAGs are one of the easiest Lightning Apps to build. For example, here's a :doc:`full app that defines a DAG <../examples/dag/dag>`.
|
||||||
|
|
||||||
----
|
----
|
||||||
|
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
What are Lightning Drives?
|
What are Lightning Drives?
|
||||||
**************************
|
**************************
|
||||||
|
|
||||||
Lightning Drives are shared app storage that allow you to share files between `LightningWork (Work) <../../core_api/lightning_work/index.html>`_ components, so that you distributed components can share files when running on the cloud. Using drives, you can run your Lightning App both locally and in the cloud without changing the code.
|
Lightning Drives are shared app storage that allow you to share files between :doc:`LightningWork (Work) <../../core_api/lightning_work/index>` components, so that you distributed components can share files when running on the cloud. Using drives, you can run your Lightning App both locally and in the cloud without changing the code.
|
||||||
|
|
||||||
The Drive object provides a central place for your components to share data.
|
The Drive object provides a central place for your components to share data.
|
||||||
|
|
||||||
|
|
|
@ -3,7 +3,7 @@ Level 17: Rerun components
|
||||||
##########################
|
##########################
|
||||||
**Audience:** Users who want Work.run() to activate multiple times in an app.
|
**Audience:** Users who want Work.run() to activate multiple times in an app.
|
||||||
|
|
||||||
**Prereqs:** Level 16+ and read the `Event Loop guide <../glossary/event_loop.html>`_.
|
**Prereqs:** Level 16+ and read the :doc:`Event Loop guide <../../glossary/event_loop>`.
|
||||||
|
|
||||||
----
|
----
|
||||||
|
|
||||||
|
|
|
@ -3,7 +3,7 @@ Level 18: Share objects between LightningWorks
|
||||||
##############################################
|
##############################################
|
||||||
**Audience:** Users moving DataFrames or outputs, between Lightning Works (usually data engineers).
|
**Audience:** Users moving DataFrames or outputs, between Lightning Works (usually data engineers).
|
||||||
|
|
||||||
**Prereqs:** Level 16+ and know about the Pandas library and read the `Access app state guide <../../access_app_state.html>`_.
|
**Prereqs:** Level 16+ and know about the Pandas library and read the :doc:`Access app state guide <../../workflows/access_app_state>`.
|
||||||
|
|
||||||
----
|
----
|
||||||
|
|
||||||
|
|
|
@ -3,7 +3,7 @@ Level: Start dynamic components
|
||||||
###############################
|
###############################
|
||||||
**Audience:** Users who want to run a Lightning Component in parallel (asynchroneously).
|
**Audience:** Users who want to run a Lightning Component in parallel (asynchroneously).
|
||||||
|
|
||||||
**Prereqs:** You must have finished the `Basic levels <../basic/>`_.
|
**Prereqs:** You must have finished the :doc:`Basic levels <../basic/index>`.
|
||||||
|
|
||||||
----
|
----
|
||||||
|
|
||||||
|
|
|
@ -13,7 +13,7 @@ Why you need Lightning components
|
||||||
A Lightning component is a self-contained, modular machine-learning component
|
A Lightning component is a self-contained, modular machine-learning component
|
||||||
that you can plug into your existing ML workflows. A Lightning component organizes arbitrary code so it can run on the cloud, manages
|
that you can plug into your existing ML workflows. A Lightning component organizes arbitrary code so it can run on the cloud, manages
|
||||||
its own infrastructure, cloud costs, networking and more. Connect components using your current workflow management tools or
|
its own infrastructure, cloud costs, networking and more. Connect components using your current workflow management tools or
|
||||||
our `next-generation reactive orchestrator <../intermediate/index.html>`_.
|
our :doc:`next-generation reactive orchestrator <../intermediate/index>`.
|
||||||
|
|
||||||
Components run on the cloud or your laptop without code changes 🤯🤯.
|
Components run on the cloud or your laptop without code changes 🤯🤯.
|
||||||
|
|
||||||
|
|
|
@ -3,7 +3,7 @@ Level 2: Explore real component implementations
|
||||||
###############################################
|
###############################################
|
||||||
**Audience:** Users who want to deeply understand what is possible with Lightning components.
|
**Audience:** Users who want to deeply understand what is possible with Lightning components.
|
||||||
|
|
||||||
**Prereqs:** You must have finished `level 1 <../basic/build_a_lightning_component.html>`_.
|
**Prereqs:** You must have finished :doc:`level 1 <../basic/build_a_lightning_component>`.
|
||||||
|
|
||||||
----
|
----
|
||||||
|
|
||||||
|
|
|
@ -3,7 +3,7 @@ Level 3: Save money on cloud costs
|
||||||
##################################
|
##################################
|
||||||
**Audience:** Users who want to use the AWS cloud efficiently.
|
**Audience:** Users who want to use the AWS cloud efficiently.
|
||||||
|
|
||||||
**Prereqs:** You must have finished `level 1 <../basic/build_a_lightning_component.html>`_.
|
**Prereqs:** You must have finished :doc:`level 1 <../basic/build_a_lightning_component>`.
|
||||||
|
|
||||||
----
|
----
|
||||||
|
|
||||||
|
|
|
@ -4,7 +4,7 @@ Level 4: Connect components into a full stack AI app
|
||||||
|
|
||||||
**Audience:** Users who want to build apps with multiple components.
|
**Audience:** Users who want to build apps with multiple components.
|
||||||
|
|
||||||
**Prereqs:** You know how to `build a component <../basic/build_a_lightning_component.html>`_.
|
**Prereqs:** You know how to :doc:`build a component <../basic/build_a_lightning_component>`.
|
||||||
|
|
||||||
----
|
----
|
||||||
|
|
||||||
|
@ -12,7 +12,7 @@ Level 4: Connect components into a full stack AI app
|
||||||
What is a full stack AI app?
|
What is a full stack AI app?
|
||||||
****************************
|
****************************
|
||||||
In the ML world, workflows coordinate multiple pieces of code working together. In Lightning,
|
In the ML world, workflows coordinate multiple pieces of code working together. In Lightning,
|
||||||
when we coordinate 2 or more `Lightning components <../basic/build_a_lightning_component.html>`_ working together,
|
when we coordinate 2 or more :doc:`Lightning components <../basic/build_a_lightning_component>` working together,
|
||||||
we instead call it a Lightning App. The difference will become more obvious when we introduce reactive
|
we instead call it a Lightning App. The difference will become more obvious when we introduce reactive
|
||||||
workflows in the advanced section.
|
workflows in the advanced section.
|
||||||
|
|
||||||
|
@ -20,7 +20,7 @@ For the time being, we'll go over how to coordinate 2 components together in a t
|
||||||
and explain how it works.
|
and explain how it works.
|
||||||
|
|
||||||
.. note:: If you've used workflow tools for Python, this page describes conventional DAGs.
|
.. note:: If you've used workflow tools for Python, this page describes conventional DAGs.
|
||||||
In `level 6 <./run_lightning_work_in_parallel.html>`_, we introduce reactive workflows that generalize beyond DAGs
|
In :doc:`level 6 <run_lightning_work_in_parallel>`, we introduce reactive workflows that generalize beyond DAGs
|
||||||
so you can build complex systems without much effort.
|
so you can build complex systems without much effort.
|
||||||
|
|
||||||
----
|
----
|
||||||
|
|
|
@ -3,7 +3,7 @@ Level 5: Debug A Lightning app
|
||||||
##############################
|
##############################
|
||||||
**Audience:** Users who want to debug a distributed app locally.
|
**Audience:** Users who want to debug a distributed app locally.
|
||||||
|
|
||||||
**Prereqs:** You must have finished the `Basic levels <../basic/>`_.
|
**Prereqs:** You must have finished the :doc:`Basic levels <../basic/index>`.
|
||||||
|
|
||||||
----
|
----
|
||||||
|
|
||||||
|
|
|
@ -3,7 +3,7 @@ Level 9: Embed graphical UIs into work
|
||||||
######################################
|
######################################
|
||||||
**Audience:** Users who need to embed a Graphical UI in their Lightning Apps.
|
**Audience:** Users who need to embed a Graphical UI in their Lightning Apps.
|
||||||
|
|
||||||
**Prereqs:** You have finished `Level 8 <share_files_between_components.html>`_.
|
**Prereqs:** You have finished :doc:`Level 8 <share_files_between_components>`.
|
||||||
|
|
||||||
----
|
----
|
||||||
|
|
||||||
|
|
|
@ -3,7 +3,7 @@ Level 6: Run a Lightning component in parallel
|
||||||
##############################################
|
##############################################
|
||||||
**Audience:** Users who want to run a Lightning Component in parallel (asynchroneously).
|
**Audience:** Users who want to run a Lightning Component in parallel (asynchroneously).
|
||||||
|
|
||||||
**Prereqs:** You must have finished `Level 5 <debug_a_lightning_app.html>`_.
|
**Prereqs:** You must have finished :doc:`Level 5 <debug_a_lightning_app>`.
|
||||||
|
|
||||||
----
|
----
|
||||||
|
|
||||||
|
|
|
@ -3,7 +3,7 @@ Level 10: Start from lightning app templates
|
||||||
############################################
|
############################################
|
||||||
**Audience:** All users who want to move quickly with Lightning
|
**Audience:** All users who want to move quickly with Lightning
|
||||||
|
|
||||||
**Prereqs:** You have finished `Level 9 <embed_web_ui_into_lightningwork.html>`_.
|
**Prereqs:** You have finished :doc:`Level 9 <embed_web_ui_into_lightningwork>`.
|
||||||
|
|
||||||
----
|
----
|
||||||
|
|
||||||
|
|
|
@ -15,7 +15,7 @@ You can easily embed other tools and services (like a GitHub repo, a `FastAPI Se
|
||||||
To get started, you can use built-in templates for the following frameworks:
|
To get started, you can use built-in templates for the following frameworks:
|
||||||
|
|
||||||
* `React.js <https://github.com/Lightning-AI/lightning-template-react>`_
|
* `React.js <https://github.com/Lightning-AI/lightning-template-react>`_
|
||||||
* `StreamLit <https://github.com/Lightning-AI/lightning-template-streamlit>`_
|
* `StreamLit <https://github.com/Lightning-Universe/StreamLit_demo>`_
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -38,7 +38,7 @@ For example, here we define a **Flow** component and **Work** component, where t
|
||||||
|
|
||||||
You can easily check the state of your entire App as follows:
|
You can easily check the state of your entire App as follows:
|
||||||
|
|
||||||
.. literalinclude:: ../../code_samples/quickstart/app_01.py
|
.. literalinclude:: ../code_samples/quickstart/app_01.py
|
||||||
|
|
||||||
Run the App with:
|
Run the App with:
|
||||||
|
|
|
@ -28,4 +28,4 @@ Contribute a component
|
||||||
**********************
|
**********************
|
||||||
One of the first principles of the Lightning community is to code something *once* for the benefit or everyone!
|
One of the first principles of the Lightning community is to code something *once* for the benefit or everyone!
|
||||||
|
|
||||||
To contribute a component, `follow this guide <../build_lightning_component/index.html>`_.
|
To contribute a component, :doc:`follow this guide <build_lightning_component/index>`.
|
|
@ -3,7 +3,7 @@ Add a web UI with Dash (intermediate)
|
||||||
#####################################
|
#####################################
|
||||||
**Audience:** Users who want to communicate between the Lightning App and Dash.
|
**Audience:** Users who want to communicate between the Lightning App and Dash.
|
||||||
|
|
||||||
**Prereqs:** Must have read the `dash basic <basic.html>`_ guide.
|
**Prereqs:** Must have read the :doc:`dash basic <basic>` guide.
|
||||||
|
|
||||||
----
|
----
|
||||||
|
|
||||||
|
|
|
@ -3,7 +3,7 @@ Add a web UI with HTML (intermediate)
|
||||||
#####################################
|
#####################################
|
||||||
**Audience:** Users who want to add a web UI using plain html.
|
**Audience:** Users who want to add a web UI using plain html.
|
||||||
|
|
||||||
**Prereqs:** Must have read the `html basic <basic.html>`_ guide.
|
**Prereqs:** Must have read the :doc:`html basic <basic>` guide.
|
||||||
|
|
||||||
----
|
----
|
||||||
|
|
||||||
|
|
|
@ -147,7 +147,7 @@ First, find the Panel app you want to integrate. In this example, that app looks
|
||||||
|
|
||||||
pn.panel("Hello **Panel ⚡** World").servable()
|
pn.panel("Hello **Panel ⚡** World").servable()
|
||||||
|
|
||||||
Refer to the `Panel documentation <https://docs.Panel.io/>`_ and `awesome-panel.org <https://awesome-panel.org>`_ for more complex examples.
|
Refer to the `Panel documentation <https://panel.holoviz.org/>`_ and `awesome-panel.org <https://awesome-panel.org>`_ for more complex examples.
|
||||||
|
|
||||||
----
|
----
|
||||||
|
|
||||||
|
|
|
@ -6,7 +6,7 @@ Add a web UI with Panel (intermediate)
|
||||||
|
|
||||||
**Audience:** Users who want to communicate between the Lightning App and Panel.
|
**Audience:** Users who want to communicate between the Lightning App and Panel.
|
||||||
|
|
||||||
**Prereqs:** Must have read the `Panel basic <basic.html>`_ guide.
|
**Prereqs:** Must have read the :doc:`Panel basic <basic>` guide.
|
||||||
|
|
||||||
----
|
----
|
||||||
|
|
||||||
|
|
|
@ -13,11 +13,11 @@ Communicate Between React and Lightning
|
||||||
Example code
|
Example code
|
||||||
************
|
************
|
||||||
To illustrate how to communicate between a React app and a lightning App, we'll be using the `example_app.py` file
|
To illustrate how to communicate between a React app and a lightning App, we'll be using the `example_app.py` file
|
||||||
which `lightning init react-ui <create_react_template.html>`_ created:
|
which :doc:`lightning init react-ui <create_react_template>` created:
|
||||||
|
|
||||||
.. literalinclude:: ../../../../../src/lightning/app/cli/react-ui-template/example_app.py
|
.. literalinclude:: ../../../../../src/lightning/app/cli/react-ui-template/example_app.py
|
||||||
|
|
||||||
and the App.tsx file also created by `lightning init react-ui <create_react_template.html>`_:
|
and the App.tsx file also created by :doc:`lightning init react-ui <create_react_template>`:
|
||||||
|
|
||||||
.. literalinclude:: ../../../../../src/lightning/app/cli/react-ui-template/ui/src/App.tsx
|
.. literalinclude:: ../../../../../src/lightning/app/cli/react-ui-template/ui/src/App.tsx
|
||||||
|
|
||||||
|
|
|
@ -13,11 +13,11 @@ Connect React to a Lightning app
|
||||||
Example code
|
Example code
|
||||||
************
|
************
|
||||||
To illustrate how to connect a React app and a lightning App, we'll be using the `example_app.py` file
|
To illustrate how to connect a React app and a lightning App, we'll be using the `example_app.py` file
|
||||||
which `lightning init react-ui <create_react_template.html>`_ created:
|
which :doc:`lightning init react-ui <create_react_template>` created:
|
||||||
|
|
||||||
.. literalinclude:: ../../../../../src/lightning/app/cli/react-ui-template/example_app.py
|
.. literalinclude:: ../../../../../src/lightning/app/cli/react-ui-template/example_app.py
|
||||||
|
|
||||||
and the App.tsx file also created by `lightning init react-ui <create_react_template.html>`_:
|
and the App.tsx file also created by :doc:`lightning init react-ui <create_react_template>`:
|
||||||
|
|
||||||
.. literalinclude:: ../../../../../src/lightning/app/cli/react-ui-template/ui/src/App.tsx
|
.. literalinclude:: ../../../../../src/lightning/app/cli/react-ui-template/ui/src/App.tsx
|
||||||
|
|
||||||
|
|
|
@ -3,7 +3,7 @@ Add a web UI with Streamlit (intermediate)
|
||||||
##########################################
|
##########################################
|
||||||
**Audience:** Users who want to communicate between the Lightning App and Streamlit.
|
**Audience:** Users who want to communicate between the Lightning App and Streamlit.
|
||||||
|
|
||||||
**Prereqs:** Must have read the `streamlit basic <basic.html>`_ guide.
|
**Prereqs:** Must have read the :doc:`streamlit basic <basic>` guide.
|
||||||
|
|
||||||
----
|
----
|
||||||
|
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
:hidden:
|
:hidden:
|
||||||
|
|
||||||
basic
|
basic
|
||||||
../add_components/index
|
../add_components
|
||||||
|
|
||||||
.. toctree::
|
.. toctree::
|
||||||
:maxdepth: 1
|
:maxdepth: 1
|
||||||
|
|
|
@ -11,7 +11,7 @@ Add a web user interface (UI)
|
||||||
*****************************
|
*****************************
|
||||||
Every lightning component can have its own user interface (UI). Lightning components support any kind
|
Every lightning component can have its own user interface (UI). Lightning components support any kind
|
||||||
of UI interface such as dash, gradio, panel, react.js, streamlit, vue.js, web urls,
|
of UI interface such as dash, gradio, panel, react.js, streamlit, vue.js, web urls,
|
||||||
etc...(`full list here <../add_web_ui/index.html>`_).
|
etc...(:doc:`full list here <../add_web_ui/index>`).
|
||||||
|
|
||||||
Let's say that we have a user interface defined in html:
|
Let's say that we have a user interface defined in html:
|
||||||
|
|
||||||
|
|
|
@ -16,7 +16,7 @@ You can extend a Lightning App by using community components or building your ow
|
||||||
:header: Add more Components
|
:header: Add more Components
|
||||||
:description: Extend an App by adding a prebuilt component.
|
:description: Extend an App by adding a prebuilt component.
|
||||||
:col_css: col-md-4
|
:col_css: col-md-4
|
||||||
:button_link: add_components/index.html
|
:button_link: add_components.html
|
||||||
:height: 150
|
:height: 150
|
||||||
:tag: basic
|
:tag: basic
|
||||||
|
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
:maxdepth: 1
|
:maxdepth: 1
|
||||||
:hidden:
|
:hidden:
|
||||||
|
|
||||||
access_app_state/access_app_state
|
access_app_state
|
||||||
add_web_ui/index
|
add_web_ui/index
|
||||||
add_web_link
|
add_web_link
|
||||||
secrets <../glossary/secrets>
|
secrets <../glossary/secrets>
|
||||||
|
@ -35,7 +35,7 @@ How to:
|
||||||
:header: Access the App State
|
:header: Access the App State
|
||||||
:description: Learn to work with the app state
|
:description: Learn to work with the app state
|
||||||
:col_css: col-md-4
|
:col_css: col-md-4
|
||||||
:button_link: access_app_state/access_app_state.html
|
:button_link: access_app_state.html
|
||||||
:height: 180
|
:height: 180
|
||||||
|
|
||||||
.. displayitem::
|
.. displayitem::
|
||||||
|
|
|
@ -36,7 +36,7 @@ For example, the source code directory below with the ``.lightningignore`` file
|
||||||
model.pt
|
model.pt
|
||||||
data_dir
|
data_dir
|
||||||
|
|
||||||
A sample ``.lightningignore`` file can be found `here <https://github.com/Lightning-AI/lightning.beta/blob/master/.lightningignore>`_.
|
A sample ``.lightningignore`` file can be found `here <https://github.com/Lightning-AI/lightning/blob/master/.lightningignore>`_.
|
||||||
|
|
||||||
If you are a component author and your components creates local files that you want to ignore, you can do:
|
If you are a component author and your components creates local files that you want to ignore, you can do:
|
||||||
|
|
||||||
|
|
|
@ -3,7 +3,7 @@ Run LightningWork in parallel
|
||||||
#############################
|
#############################
|
||||||
**Audience:** Users who want to run a LightningWork in parallel (asynchroneously).
|
**Audience:** Users who want to run a LightningWork in parallel (asynchroneously).
|
||||||
|
|
||||||
**Prereqs:** You must have finished the `Basic levels <../basic/>`_.
|
**Prereqs:** You must have finished the :doc:`Basic levels <../levels/basic/index>`.
|
||||||
|
|
||||||
----
|
----
|
||||||
|
|
||||||
|
|
|
@ -6,7 +6,7 @@ Cache LightningWork Runs
|
||||||
|
|
||||||
**Level:** Advanced
|
**Level:** Advanced
|
||||||
|
|
||||||
**Prereqs**: Level 16+ and read the `Event Loop guide <../glossary/event_loop.html>`_.
|
**Prereqs**: Level 16+ and read the :doc:`Event Loop guide <../glossary/event_loop>`.
|
||||||
|
|
||||||
----
|
----
|
||||||
|
|
||||||
|
|
|
@ -17,7 +17,7 @@ You can turn caching on or off:
|
||||||
work = MyWork(cache_calls=False)
|
work = MyWork(cache_calls=False)
|
||||||
|
|
||||||
To better understand this, imagine that every day you want to sequentially download and process some data and then train a model on that data.
|
To better understand this, imagine that every day you want to sequentially download and process some data and then train a model on that data.
|
||||||
As explained in the `Event Loop guide <../glossary/event_loop.html>`_, the Lightning App runs within an infinite while loop, so the pseudo-code of your application might looks like this:
|
As explained in the :doc:`Event Loop guide <../../glossary/event_loop>`, the Lightning App runs within an infinite while loop, so the pseudo-code of your application might looks like this:
|
||||||
|
|
||||||
.. code-block:: python
|
.. code-block:: python
|
||||||
|
|
||||||
|
|
|
@ -14,7 +14,7 @@ To share an app, simply run your app on the cloud:
|
||||||
|
|
||||||
lightning run app app.py --cloud
|
lightning run app app.py --cloud
|
||||||
|
|
||||||
Then share the link that's generated (`like this one <https://01g3p4bf3m61xsm2yzn0966q59.litng-ai-03.litng.ai/view/home>`_).
|
Then share the link that's generated.
|
||||||
|
|
||||||
----
|
----
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue