MCPcopy
hub / github.com/FedML-AI/FedML

github.com/FedML-AI/FedML @v0.8.9 sqlite

repository ↗ · DeepWiki ↗ · release v0.8.9 ↗
9,365 symbols 32,733 edges 1,797 files 967 documented · 10%
README

FEDML Open Source: A Unified and Scalable Machine Learning Library for Running Training and Deployment Anywhere at Any Scale

Backed by FEDML Nexus AI: Next-Gen Cloud Services for LLMs & Generative AI (https://nexus.fedml.ai)

FedML Documentation: https://doc.fedml.ai

FedML Homepage: https://fedml.ai/ \ FedML Blog: https://blog.fedml.ai/ \ FedML Medium: https://medium.com/@FedML \ FedML Research: https://fedml.ai/research-papers/

Join the Community: \ Slack: https://join.slack.com/t/fedml/shared_invite/zt-havwx1ee-a1xfOUrATNfc9DFqU~r34w \ Discord: https://discord.gg/9xkW8ae6RV

FEDML® stands for Foundational Ecosystem Design for Machine Learning. FEDML Nexus AI is the next-gen cloud service for LLMs & Generative AI. It helps developers to launch complex model training, deployment, and federated learning anywhere on decentralized GPUs, multi-clouds, edge servers, and smartphones, easily, economically, and securely.

Highly integrated with FEDML open source library, FEDML Nexus AI provides holistic support of three interconnected AI infrastructure layers: user-friendly MLOps, a well-managed scheduler, and high-performance ML libraries for running any AI jobs across GPU Clouds.

drawing

A typical workflow is showing in figure above. When developer wants to run a pre-built job in Studio or Job Store, FEDML®Launch swiftly pairs AI jobs with the most economical GPU resources, auto-provisions, and effortlessly runs the job, eliminating complex environment setup and management. When running the job, FEDML®Launch orchestrates the compute plane in different cluster topologies and configuration so that any complex AI jobs are enabled, regardless model training, deployment, or even federated learning. FEDML®Open Source is unified and scalable machine learning library for running these AI jobs anywhere at any scale.

In the MLOps layer of FEDML Nexus AI - FEDML® Studio embraces the power of Generative AI! Access popular open-source foundational models (e.g., LLMs), fine-tune them seamlessly with your specific data, and deploy them scalably and cost-effectively using the FEDML Launch on GPU marketplace. - FEDML® Job Store maintains a list of pre-built jobs for training, deployment, and federated learning. Developers are encouraged to run directly with customize datasets or models on cheaper GPUs.

In the scheduler layer of FEDML Nexus AI - FEDML® Launch swiftly pairs AI jobs with the most economical GPU resources, auto-provisions, and effortlessly runs the job, eliminating complex environment setup and management. It supports a range of compute-intensive jobs for generative AI and LLMs, such as large-scale training, serverless deployments, and vector DB searches. FEDML Launch also facilitates on-prem cluster management and deployment on private or hybrid clouds.

In the Compute layer of FEDML Nexus AI - FEDML® Deploy is a model serving platform for high scalability and low latency. - FEDML® Train focuses on distributed training of large and foundational models. - FEDML® Federate is a federated learning platform backed by the most popular federated learning open-source library and the world’s first FLOps (federated learning Ops), offering on-device training on smartphones and cross-cloud GPU servers. - FEDML® Open Source is unified and scalable machine learning library for running these AI jobs anywhere at any scale.

Contributing

FedML embraces and thrive through open-source. We welcome all kinds of contributions from the community. Kudos to all of our amazing contributors!
FedML has adopted Contributor Covenant.

Extension points exported contracts — how you extend this code

MessageDefine (Interface)
(no doc) [5 implementers]
android/fedmlsdk/src/main/java/ai/fedml/edge/service/communicator/message/MessageDefine.java
OnItemClickListener (Interface)
(no doc) [1 implementers]
android/app/src/main/java/ai/fedml/ui/adapter/RvFilePathAdapter.java
OnTrainProgressListener (Interface)
(no doc) [3 implementers]
android/fedmlsdk/src/main/java/ai/fedml/edge/OnTrainProgressListener.java
VersionUpdater (Interface)
(no doc)
android/app/src/main/java/ai/fedml/client/VersionUpdater.java
EdgeMessageDefine (Interface)
(no doc) [2 implementers]
android/fedmlsdk/src/main/java/ai/fedml/edge/EdgeMessageDefine.java
FedEdgeApi (Interface)
(no doc) [2 implementers]
android/fedmlsdk/src/main/java/ai/fedml/edge/FedEdgeApi.java
FedEdgeTrainApi (Interface)
(no doc) [2 implementers]
android/fedmlsdk/src/main/java/ai/fedml/edge/service/FedEdgeTrainApi.java

Core symbols most depended-on inside this repo

info
called by 2275
python/app/fedcv/object_detection/model/yolov5/models/yolo.py
get
called by 647
python/fedml/core/alg_frame/params.py
log
called by 448
python/app/fedcv/object_detection/model/yolov7/utils/wandb_logging/wandb_utils.py
keys
called by 341
python/fedml/core/alg_frame/params.py
get
called by 316
python/fedml/fa/utils/trie.py
load
called by 275
python/fedml/model/nlp/model_args.py
add_params
called by 215
python/fedml/core/distributed/communication/message.py
init
called by 186
android/fedmlsdk/src/main/java/ai/fedml/edge/FedEdgeApi.java

Shape

Method 5,738
Function 2,234
Class 1,335
Route 30
Interface 28

Languages

Python93%
Java7%
TypeScript1%

Modules by API surface

python/app/fedcv/object_detection/model/yolov7/models/common.py238 symbols
python/fedml/model/cv/common.py129 symbols
python/app/fedcv/object_detection/model/yolov5/models/common.py85 symbols
python/app/fedcv/object_detection/model/yolov5/utils/general.py77 symbols
python/fedml/computing/scheduler/master/server_runner.py73 symbols
python/app/fedcv/object_detection/model/yolov5/models/tf.py65 symbols
python/fedml/computing/scheduler/model_scheduler/device_server_runner.py64 symbols
python/app/fedcv/object_detection/model/yolov7/utils/datasets.py59 symbols
python/fedml/computing/scheduler/slave/client_runner.py52 symbols
python/fedml/computing/scheduler/model_scheduler/device_client_runner.py50 symbols
python/app/fedcv/object_detection/model/yolov5/utils/dataloaders.py50 symbols
python/fedml/computing/scheduler/model_scheduler/device_client_constants.py49 symbols

Dependencies from manifests, versioned

Pillow7.1.2 · 1×
PyYAML5.4.1 · 1×
addict2.4.0 · 1×
aiohttp3.8.1 · 1×
boto31.24.32 · 1×
botocore1.27.32 · 1×
certifi2022.6.15 · 1×
click8.1.3 · 1×
dill0.3.5.1 · 1×
docutils0.18.1 · 1×
fastapi0.92.0 · 1×
fedml0.8.3a6 · 1×

For agents

$ claude mcp add FedML \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact