Skip to content

[Meta Provider] Overview of Meta Provider #1277

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
27 tasks done
khlee025 opened this issue Sep 15, 2022 · 6 comments
Open
27 tasks done

[Meta Provider] Overview of Meta Provider #1277

khlee025 opened this issue Sep 15, 2022 · 6 comments
Assignees
Labels

Comments

@khlee025
Copy link
Contributor

khlee025 commented Sep 15, 2022

Hello, we are team AndroMETA from SSAFY (Samsung SW Academy For Youth).

What

We suggests adding meta provider to one-vscode extension.
Meta provider is a feature to provide information for each files. (#1240)
This contains three parts: Metadata viewer, Relation viewer, Metadata management.

Why

ONE Explorer offers limited information about files. The tree view of it depends on the configuration files only.
So that we think we need to store unchanged key information of files and make a method to access them anytime, anywhere.

How

1. Metadata is saved and managed using external hash object files.

File watcher of VScode triggers the managements of Metadata.

image

2. Metadata viewer show the key information of the file as a web view.

image
image
image

3. Relation viewer show the relationship of files using tree structure.

Child files are derived from parents model/circle files.

image

Our plan

Work List:

  • Metadata Viewer

    • create MetadataViewerProvider
    • create index.html
    • create style.css
    • create index.js for html
    • add Command to open Metadata Viewer
    • call api to get Metadata for Metadata viewer
    • Add a folding function to make the data easier to see.
  • Relation Viewer

    • create RelationViewerProvider
    • create index.html
    • create index.css
    • create index.js for html
    • add Command to open Relation Viewer
    • call api to get Relation Data for Relation Viewer
    • add logic to rerender relation viewer when node clicked
    • create a function to group files of the same content through buttons on nodes
    • create a function to right-click on the node to display the context menu. (Open file, show MetadataViewer)
    • create a function to left-click(or double click) on the node to display relation of the node
    • show toolchain/onecc version on node if it has them
  • Metadata Manager

    • Create dummy files
    • create API for Metadata Viewer
    • create API for Relation Viewer
  • Event Management

    • create file creation event with onDidCreateFiles API
    • create file modification event with onDidChangeFile API
    • create file deletion event with onDidDeletedFiles API
    • add function of file creation event
    • add operation information to metadata of circle
    • add exception cases to file creation event

The project plan will be continuously updated.

@dayo09
Copy link
Contributor

dayo09 commented Sep 15, 2022

You can put the plan(SSDC-AndroMETA#4) here too :-D

@chshin59
Copy link
Contributor

just arrived~😊

@dayo09
Copy link
Contributor

dayo09 commented Oct 6, 2022

Could you guys check the done-lists here?

@dayo09
Copy link
Contributor

dayo09 commented Oct 6, 2022

FYI, when generating multiple quantization models from one tflite file...

디렉토리 캡쳐2

@dayo09
Copy link
Contributor

dayo09 commented Oct 19, 2022

Thanks for your guys' hard works :-D.

BTW, I found the draft #1349 has a little bug. It doesn't show the relation properly, only a single node exists even if I generated a circle from the tflite.

If you can, could you revise the draft, and also provides some unit tests?

@khlee025
Copy link
Contributor Author

Thank you for your comments of this works.

We already recognize the similar problem. Can you check if the input/output path of config file(.cfg) is relative path?
If so, could you test the draft with absolute input/output path?

We think the bug occurs when the input/output path of config file(.cfg) is relative path not absolute path.
The bug is related to 'Relation.ts' but need more time to fix it...
If you want to discuss more details about it, please talk with @smj53.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

7 participants