This is an automated email from the ASF dual-hosted git repository. sxnan pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/flink-agents.git
The following commit(s) were added to refs/heads/main by this push: new f77ae28 [docs] Update installation instructions for Flink Agents with PyPI and source build details (#170) f77ae28 is described below commit f77ae281af404f55c3a14a553cce4ca2d5549e73 Author: Xuannan <suxuanna...@gmail.com> AuthorDate: Thu Sep 18 21:42:34 2025 +0800 [docs] Update installation instructions for Flink Agents with PyPI and source build details (#170) --- docs/content/docs/try-flink-agents/installation.md | 122 +++++++++++++++++++++ python/pyproject.toml | 1 + 2 files changed, 123 insertions(+) diff --git a/docs/content/docs/try-flink-agents/installation.md b/docs/content/docs/try-flink-agents/installation.md index 732e118..b82e853 100644 --- a/docs/content/docs/try-flink-agents/installation.md +++ b/docs/content/docs/try-flink-agents/installation.md @@ -23,3 +23,125 @@ under the License. --> # Installation + +Flink Agents provides both Python and Java APIs to define a Flink Agents job. + +To try Flink Agents in Python on a local executor, you only need to install the Flink Agents Python package. + +To define a Flink Agents job using the Java API, or to run the job in a Flink cluster, you need to install both the Flink Agents Python and Java dependencies. + +The sections below show how to install the required dependencies. + +## Install from PyPI + +{{< hint warning >}} +__Note:__ This will be available after Flink Agents is released. +{{< /hint >}} + +To install the latest Flink Agents release, run: + +```shell +python -m pip install flink-agents +``` + +<!-- TODO: link to local quickstart example docs --> +Now you can run a Flink Agents job on the local executor. +See [local quickstart example]() for end-to-end examples of running on the local executor. + + +To run on a Flink cluster, ensure the Flink Agents Java JARs are placed in the Flink lib directory: + +<!-- TODO: fill in the command after Flink Agents is released --> +```shell +# Download the Flink Agents released tar + +# After downloading and extracting the Flink Agents release bundle, +# copy the Flink Agents JARs to Flink's lib directory + +``` + +<!-- TODO: link to flink quickstart example docs --> +See [Flink quickstart example]() for end-to-end examples of running on Flink. + + +## Build and Install from Source + +Prerequisites for building Flink Agents: + +* Unix-like environment (we use Linux, Mac OS X, Cygwin, WSL) +* Git +* Maven +* Java 11 +* Python 3.10 or 3.11 + +To clone from Git, run: + +```shell +git clone https://github.com/apache/flink-agents.git +``` + +### Java Build + +The Python wheel depends on the Flink Agents Java modules, so we need to build Flink Agents Java modules first, run: + +```shell +cd flink-agents +mvn clean install -DskipTests +``` + +### Python Build and Install + +Then we can build and install the Flink Agents wheel. + +{{< tabs>}} +{{< tab "uv (Recommended)" >}} + +uv is a modern, fast Python package manager that offers significant performance +improvements over pip. + +If uv is not installed already, you can install it with the following command: + +```shell +pip install uv +``` +Please see [uv installation](https://docs.astral.sh/uv/getting-started/installation) for more detail. + +```shell +cd python + +# Build sdist and wheel into python/dist/ +uv run python -m build + +# Install the built wheel into the environment +uv pip install dist/*.whl +``` + +{{< /tab >}} + +{{< tab "pip" >}} + +We also support building and installing with pip + +```shell +cd python + +# Build sdist and wheel into python/dist/ +python -m build + +# Install the built wheel into the environment +python -m pip install dist/*.whl +``` + +{{< /tab >}} +{{< /tabs >}} + +### Install Flink Agents to Flink + + +To install the Java dependencies to Flink, run: + +<!-- TODO: fill in the command after Flink Agents produce uber jar --> +```shell + +# copy the Flink Agents JARs to Flink's lib directory +``` diff --git a/python/pyproject.toml b/python/pyproject.toml index 6c81753..fff11f5 100644 --- a/python/pyproject.toml +++ b/python/pyproject.toml @@ -47,6 +47,7 @@ dependencies = [ "docstring-parser==0.16", "pyyaml==6.0.2", "mcp>=1.8.0", + "setuptools>=75.3", #TODO: Seperate integration dependencies from project "ollama==0.4.8", "dashscope~=1.24.2",