diff --git a/.github/workflows/spellcheck.yml b/.github/workflows/spellcheck.yml new file mode 100644 index 000000000..bd1cfcd4c --- /dev/null +++ b/.github/workflows/spellcheck.yml @@ -0,0 +1,37 @@ +name: Spellcheck Documentation + +on: + push: + branches: + - main + paths: + - '**.md' + pull_request: + paths: + - '**.md' + +jobs: + spellcheck: + runs-on: ubuntu-latest + name: Spellcheck Markdown Files + # Non-blocking: spellcheck is advisory, not a merge barrier + continue-on-error: true + steps: + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Install aspell + run: | + sudo apt-get update + sudo apt-get install -y aspell aspell-en + + - name: Set up Python + uses: actions/setup-python@v5 + with: + python-version: '3.x' + + - name: Install pyspelling + run: pip install pyspelling + + - name: Run spellcheck + run: python -m pyspelling --config .spellcheck.yml diff --git a/.spellcheck.yml b/.spellcheck.yml new file mode 100644 index 000000000..83baeef11 --- /dev/null +++ b/.spellcheck.yml @@ -0,0 +1,14 @@ +matrix: +- name: Markdown + sources: + - '**/*.md' + expect_match: false + aspell: + lang: en_US + dictionary: + wordlists: + - .wordlist.txt + pipeline: + - pyspelling.filters.markdown: + markdown_extensions: + - markdown.extensions.extra: diff --git a/.wordlist.txt b/.wordlist.txt new file mode 100644 index 000000000..9fb385947 --- /dev/null +++ b/.wordlist.txt @@ -0,0 +1,94 @@ +ianvs +Ianvs +kubeedge +KubeEdge +Kubeedge +sedna +Sedna +YAML +yaml +yml +LLM +LLMs +vLLM +vllm +TTFT +ITL +GPQA +MMLU +API +APIs +HuggingFace +huggingface +PyTorch +pytorch +TensorFlow +tensorflow +numpy +NumPy +sklearn +ONNX +K8s +CNCF +PCB +AOI +AoI +FPN +RFNET +RFNet +ERFNet +GPU +GPUs +VRAM +CPU +CPUs +fp16 +fp32 +FLOPS +OBS +csv +JSON +json +JSONL +jsonl +url +CLI +ci +cd +dockerfile +Dockerfile +conda +Conda +pyspelling +aspell +hunspell +config +configs +env +testenv +benchmarkingjob +testcase +testcases +leaderboard +repo +repos +plugin +plugins +frontend +backend +hyperparameters +hyperparameter +dataclass +dataloader +warmup +rollback +rollbacks +checkpoint +checkpoints +autoregressive +RTT +RTTs +pre +untitled +localhost +hostname diff --git a/docs/guides/how-to-build-simulation-env.md b/docs/guides/how-to-build-simulation-env.md index e01b183dc..0784a30f0 100644 --- a/docs/guides/how-to-build-simulation-env.md +++ b/docs/guides/how-to-build-simulation-env.md @@ -12,11 +12,11 @@ The models in `simulation controller` are as follows: - The `Simulation System Administrator` is used to 1. parse the system config(simulation) - 2. check the host enviroment, e.g. check if the host has installed docker, kind, and whether memory > 4GB - 3. build the simulation enviroment - 4. create and deploy the moudles needed in simulation enviroment - 5. close and delete the simulation enviroment -- The `Simulation Job Administrator` is the core module for manage the simulation job, and provides the following funcitons: + 2. check the host environment, e.g. check if the host has installed docker, kind, and whether memory > 4GB + 3. build the simulation environment + 4. create and deploy the modules needed in simulation environment + 5. close and delete the simulation environment +- The `Simulation Job Administrator` is the core module for manage the simulation job, and provides the following functions: 1. build the docker images of algorithms to be tested 2. generate the YAML file of `simulation job` 3. deploy and delete the `simulation job` in K8s @@ -113,7 +113,7 @@ See GM status: kubectl -n sedna get deploy See LC status: kubectl -n sedna get ds lc See Pod status: kubectl -n sedna get pod [I1029 01:16:56.974] Mini Sedna is created successfully -[2022-10-29 01:17:12,880] simulation_system_admin.py(170) [INFO] - Congratulation! The simulation enviroment build successful! +[2022-10-29 01:17:12,880] simulation_system_admin.py(170) [INFO] - Congratulations! The simulation environment build successful! ``` In the end. You get an all-in-one environment of sedna. diff --git a/docs/guides/how-to-contribute-algorithms.md b/docs/guides/how-to-contribute-algorithms.md index a676a8c34..59fbdb1eb 100644 --- a/docs/guides/how-to-contribute-algorithms.md +++ b/docs/guides/how-to-contribute-algorithms.md @@ -1,4 +1,4 @@ -# How to contributrbute an algorithm to Ianvs +# How to contribute an algorithm to Ianvs Ianvs serves as testing tools for test objects, e.g., algorithms. Ianvs does NOT include code directly on the test object. Algorithms serve as typical test objects in Ianvs and detailed algorithms are thus NOT included in this Ianvs python file. As for the details of example test objects, e.g., algorithms, please refer to third party packages in the Ianvs example. For example, for AI workflow and interface please refer to sedna and for module implementation please refer to third party packages like FPN_TensorFlow and Sedna IBT algorithm. diff --git a/docs/proposals/simulation/simulation.md b/docs/proposals/simulation/simulation.md index 46107a147..7df9c3b46 100644 --- a/docs/proposals/simulation/simulation.md +++ b/docs/proposals/simulation/simulation.md @@ -104,7 +104,7 @@ Provide ianvs with the feature of industrial distributed system simulation. ![img](images/simulation_framework.jpg) -In the framwork of ianvs, the `simulation controller` is the core module of system simulation. The `simulation controller` has been supplemented, which build and deploy local edge-cloud simulation environment with K8s. +In the framework of ianvs, the `simulation controller` is the core module of system simulation. The `simulation controller` has been supplemented, which build and deploy local edge-cloud simulation environment with K8s. ![img](images/simulation_controller.jpg) @@ -112,11 +112,11 @@ The models in `simulation controller` are as follows: - The `Simulation System Administrator` is used to 1. parse the system config(simulation) - 2. check the host enviroment, e.g. check if the host has installed docker, kind, and whether memory > 4GB - 3. build the simulation enviroment - 4. create and deploy the moudles needed in simulation enviroment - 5. close and delete the simulation enviroment -- The `Simulation Job Administrator` is the core module for manage the simulation job, and provides the following funcitons: + 2. check the host environment, e.g. check if the host has installed docker, kind, and whether memory > 4GB + 3. build the simulation environment + 4. create and deploy the modules needed in simulation environment + 5. close and delete the simulation environment +- The `Simulation Job Administrator` is the core module for manage the simulation job, and provides the following functions: 1. build the docker images of algorithms to be tested 2. generate the YAML file of `simulation job` 3. deploy and delete the `simulation job` in K8s @@ -137,7 +137,7 @@ In the flowchart diagram above, the expected flow is as follows: - check environment: e.g. check if the host has installed docker, kind, and whether the memory > 4GB - parse simulation config -4. `Simulation System Administrator` build the environment and create needed moudles. +4. `Simulation System Administrator` build the environment and create needed modules. - build the environment: deploying a cluster including K8s and GM (global manager) locally through [all-in-one scripts of sedna](https://github.com/kubeedge/sedna/blob/527c574a60d0ae87b0436f9a8b38cf84fb6dab21/docs/setup/all-in-one.md) - create and deploy the `simulation job controller` @@ -145,11 +145,11 @@ In the flowchart diagram above, the expected flow is as follows: - build the docker images of algorithms to be tested - generate the YAML of simulation job base on `testenv.yaml` and `algorithm.yaml` - deploy simulation job: access k8s API-server via `python-k8sclient` to deploy simulation jobs -6. `Simulation Job Administrator` list-watch the configmap of results: ianvs-simualtion-job-result +6. `Simulation Job Administrator` list-watch the configmap of results: ianvs-simulation-job-result 7. `Simulation Job Controller` run the simulation jobs - list-watch the simulation jobs in K8s - run the simulation jobs -8. `Simulation Job Controller` save results of simulation job to configmap: ianvs-simualtion-job-result +8. `Simulation Job Controller` save results of simulation job to configmap: ianvs-simulation-job-result 9. `Simulation Job Administrator` generates the test_results after watched the configmap of results. ## Roadmap diff --git a/examples/cloud-edge-collaborative-inference-for-llm/testalgorithms/query-routing/test_queryrouting.yaml b/examples/cloud-edge-collaborative-inference-for-llm/testalgorithms/query-routing/test_queryrouting.yaml index 650f3a01b..394985267 100644 --- a/examples/cloud-edge-collaborative-inference-for-llm/testalgorithms/query-routing/test_queryrouting.yaml +++ b/examples/cloud-edge-collaborative-inference-for-llm/testalgorithms/query-routing/test_queryrouting.yaml @@ -29,7 +29,7 @@ algorithm: # 2> "vllm": vLLM backend; # 3> "api": OpenAI API backend; # 4> "EagleSpecDec": EAGLE Speculative Decoding framework; - # 5> "LadeSepcDec": Lookahead Decoding framework; + # 5> "LadeSpecDec": Lookahead Decoding framework; values: - "huggingface" - "vllm"