jolly-florist-66728
10/18/2024, 9:14 PMjolly-florist-66728
10/18/2024, 9:14 PM>>│ /root/miniconda3/envs/flyte-example/lib/python3.10/site-packages/flytekit/configuration/plugin.py:28 in <module> ││ │ │ ❱ 28 from flytekit.remote import FlyteRemote │ │ │ │ /root/miniconda3/envs/flyte-example/lib/python3.10/site-packages/flytekit/remote/__init__.py:99 in <module> │ │ │ │ ❱ 99 from flytekit.remote.remote import FlyteRemote │ │ │ │ /root/miniconda3/envs/flyte-example/lib/python3.10/site-packages/flytekit/remote/remote.py:35 in <module> │ │ │ │ ❱ 35 from flytekit.clients.friendly import SynchronousFlyteClient │ │ │ │ /root/miniconda3/envs/flyte-example/lib/python3.10/site-packages/flytekit/clients/friendly.py:16 in <module> │ │ │ │ ❱ 16 from flyteidl.service import dataproxy_pb2 as _data_proxy_pb2 │ │ │ │ /root/miniconda3/envs/flyte-example/lib/python3.10/site-packages/flyteidl/service/dataproxy_pb2.py:15 in <module> │ │ │ │ ❱ 15 from protoc_gen_openapiv2.options import annotations_pb2 as protoc__gen__openapiv2_dot_o │ │ │
jolly-florist-66728
10/18/2024, 9:14 PM>>│ /root/miniconda3/envs/flyte-example/lib/python3.10/site-packages/protoc_gen_openapiv2/options/annotations_pb2.py:23 in <module> ││ │ │ ❱ 23 google_dot_protobuf_dot_descriptor__pb2.FileOptions.RegisterExtension(openapiv2_swagge │ ╰───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ AttributeError: type object 'FileOptions' has no attribute 'RegisterExtension' The requirements.txt for the dev container is: torch pytorch-lightning torchvision lightning fvcore iopath notebook ipywidgets scikit-learn flytekit flytekitplugins-kfpytorch flytekitplugins-deck-standard dvc And the base image is: nvcr.io/nvidia/pytorch:23.12-py3 With the following modifications: COPY requirements.txt /tmp/requirements.txt RUN pip install -r /tmp/requirements.txt RUN pip install "git+https://github.com/facebookresearch/pytorch3d.git@stable" RUN curl -sL https://ctl.flyte.org/install | bash -s -- -b /usr/local/bin COPY .flyte/config.yaml /root/.flyte/config.yaml RUN rm /tmp/requirements.txt # Answer The error you're encountering,
AttributeError: type object 'FileOptions' has no attribute 'RegisterExtension'
, suggests a compatibility issue with the protobuf library. This is a common issue when the installed version of protobuf is not compatible with the other packages in your environment, particularly those related to Flyte.
1. Check Protobuf Version: Ensure that the protobuf version is compatible with Flyte and other installed packages. Flyte often requires a specific range of protobuf versions. You can specify a compatible version in your requirements.txt
file, for example, protobuf==3.20.3
.
2. Rebuild the Container: After updating the requirements.txt
with the correct protobuf version, rebuild your Docker container to ensure all dependencies are correctly installed.
3. Verify Dependency Conflicts: Check for any other dependency conflicts that might arise from the packages listed in your requirements.txt
. You can use tools like pipdeptree
to visualize and resolve any conflicts.
Would you like more detailed steps on how to resolve this issue or further assistance with Flyte setup?
Sources:
- Flyte GitHub Issue #3006
Slack Link
https://.slack.com/archives/CP2HDHKE1/p1729286082.525619 👍 0 button 👎 0 button 💡 Hint: Mention @runllm in the thread for followups.