AI tookit over KubeEdge
Go to file
KubeEdge Bot 8f900d6148
Merge pull request #475 from tangming1996/bugfix/workflow
update workfow actions from v2 to v4
2025-03-06 19:16:47 +08:00
.github update workfow actions from v2 to v4 2025-03-06 14:32:13 +08:00
LICENSES Update client generation tools, remove k8s dependency, fix lint issues 2025-01-17 11:40:40 +08:00
build fix helm crd can not generete error 2025-02-21 10:04:41 +08:00
cmd lc: decouple all features into independent package 2021-08-06 17:39:37 +08:00
components/dashboard Merge pull request #369 from wjf222/wjf_ospp_final 2022-10-30 10:27:47 +08:00
docs Merge pull request #457 from ajie65/docs/hpa-proposal 2024-11-28 18:29:35 +08:00
examples update doc 2023-07-04 17:46:26 +08:00
hack Update client generation tools, remove k8s dependency, fix lint issues 2025-01-17 11:40:40 +08:00
lib Update requirements.txt 2024-08-15 21:05:15 +08:00
pkg Merge pull request #467 from tangming1996/bugfix/federal-learning 2025-02-20 19:18:34 +08:00
scripts Fixbug: cloud node cannot connect k8s apiservice 2022-03-24 10:46:24 +08:00
test Update client generation tools, remove k8s dependency, fix lint issues 2025-01-17 11:40:40 +08:00
vendor Solved the vendor check to fail 2025-01-17 11:40:40 +08:00
.dockerignore Add local-up.sh 2021-01-29 01:03:08 +08:00
.gitignore Fixed helm installation failure 2023-11-08 16:50:24 +08:00
.golangci.yml Update client generation tools, remove k8s dependency, fix lint issues 2025-01-17 11:40:40 +08:00
CODE_OF_CONDUCT.md update CoC 2023-09-06 14:29:33 +08:00
CONTRIBUTING.md Add contributing docs 2021-08-24 17:16:37 +08:00
LICENSE Initial commit 2021-01-28 11:24:14 +08:00
Makefile fix helm crd can not generete error 2025-02-21 10:04:41 +08:00
OWNERS update owners 2025-01-07 20:10:17 +08:00
OWNERS_ALIASES Update Owners 2023-04-14 18:53:27 +08:00
README.md fix slack url 2023-12-07 11:10:43 +08:00
README_zh.md fix slack url 2023-12-07 11:10:43 +08:00
go.mod Upgrade K8s and Go versions 2025-01-17 10:44:29 +08:00
go.sum Upgrade K8s and Go versions 2025-01-17 10:44:29 +08:00

README.md

English | 简体中文

Sedna

CI Go Report Card LICENSE

What is Sedna?

Sedna is an edge-cloud synergy AI project incubated in KubeEdge SIG AI. Benefiting from the edge-cloud synergy capabilities provided by KubeEdge, Sedna can implement across edge-cloud collaborative training and collaborative inference capabilities, such as joint inference, incremental learning, federated learning, and lifelong learning. Sedna supports popular AI frameworks, such as TensorFlow, Pytorch, PaddlePaddle, MindSpore.

Sedna can simply enable edge-cloud synergy capabilities to existing training and inference scripts, bringing the benefits of reducing costs, improving model performance, and protecting data privacy.

Features

Sedna has the following features

  • Provide the edge-cloud synergy AI framework.

    • Provide dataset and model management across edge-cloud, helping developers quickly implement synergy AI applications.
  • Provide edge-cloud synergy training and inference frameworks.

    • Joint inference: under the condition of limited resources on the edge, difficult inference tasks are offloaded to the cloud to improve the overall performance, keeping the throughput.
    • Incremental training: For small samples and non-iid data on the edge, models can be adaptively optimized over time on the cloud or edge.
    • Federated learning: For those scenarios that the data being too large, or unwilling to migrate raw data to the cloud, or high privacy protection requirements, models are trained at the edge and parameters are aggregated on the cloud to resolve data silos effectively.
    • Lifelong learning: Confronted with the challenge of heterogeneous data distributions in complex scenarios and small samples on the edge, the edge-cloud synergy lifelong learning:
      • leverages the cloud knowledge base which empowers the scheme with memory ability, which helps to continuously learn and accumulate historical knowledge to overcome the catastrophic forgetting challenge.
      • is essentially the combination of another two learning schemes, i.e., multi-task learning and incremental learning, so that it can learn unseen tasks with shared knowledge among various scenarios over time.
    • etc..
  • Compatibility

    • Compatible with mainstream AI frameworks such as TensorFlow, Pytorch, PaddlePaddle, and MindSpore.
    • Provides extended interfaces for developers to quickly integrate third-party algorithms, and some necessary algorithms for edge-cloud synergy have been preset, such as hard sample discovering, aggregation algorithm.

Architecture

Sedna's edge-cloud synergy is implemented based on the following capabilities provided by KubeEdge:

  • Unified orchestration of across edge-cloud applications.
  • Router: across edge-cloud message channel in management plane.
  • EdgeMesh: across edge-cloud microservice discovery and traffic governance in data plane.

Component

Sedna consists of the following components

GlobalManager

  • Unified edge-cloud synergy AI task management
  • Cross edge-cloud synergy management and collaboration
  • Central Configuration Management

LocalController

  • Local process control of edge-cloud synergy AI tasks
  • Local general management: model, dataset, and status synchronization

Worker

  • Do inference or training, based on existing ML framework.
  • Launch on demand, imagine they are docker containers.
  • Different workers for different features.
  • Could run on edge or cloud.

Lib

  • Expose the Edge AI features to applications, i.e. training or inference programs.

Guides

Documents

Documentation is located on readthedoc.io. These documents can help you understand Sedna better.

Installation

Follow the Sedna installation document to install Sedna.

Examples

Example1Using Joint Inference Service in Helmet Detection Scenario.
Example2Using Incremental Learning Job in Helmet Detection Scenario.
Example3Using Federated Learning Job in Surface Defect Detection Scenario.
Example4Using Federated Learning Job in YoLov5-based Object Detection.
Example5Using Lifelong Learning Job in Thermal Comfort Prediction Scenario.
Example6Using MultiEdge Inference Service to Track an Infected COVID-19 Carrier in Pandemic Scenarios.

Roadmap

Meeting

Regular Community Meeting:

Resources:

Contact

If you have questions, feel free to reach out to us in the following ways:

Contributing

If you're interested in being a contributor and want to get involved in developing the Sedna code, please see CONTRIBUTING for details on submitting patches and the contribution workflow.

License

Sedna is under the Apache 2.0 license. See the LICENSE file for details.