Skip to content
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

TrustyAI Client #1318

Merged

Conversation

alexcreasy
Copy link
Contributor

@alexcreasy alexcreasy commented May 31, 2023

Closes: #1152

Description

This adds client code for interacting with the TrustyAI service. There are still some todos that will have to be solved once the TrustyAI Operator code is completed. I'll create a new image to capture these.

How Has This Been Tested?

I've tested it with a dummy component to make the API calls. For expediency, I think we can merge this (once the code has been reviewed) as it will get tested as we work on the tickets that use this API.

Test Impact

None yet. If time permits we'll add them in a separate issue for the feature.

Request review criteria:

  • The commits have meaningful messages (squashes happen on merge by the bot).
  • Included any necessary screenshots or gifs if it was a UI change.
  • Included tags to the UX team if it was a UI/UX change.
  • Testing instructions have been added in the PR body (for PRs involving changes that are not immediately obvious).
  • The developer has manually tested the changes and verified that the changes work
  • The developer has added tests or explained why testing cannot be added (unit tests & storybook for related changes)

@openshift-ci openshift-ci bot added the do-not-merge/work-in-progress This PR is in WIP state label May 31, 2023
@openshift-ci openshift-ci bot requested review from Gkrumbach07 and lucferbux May 31, 2023 15:35
@alexcreasy alexcreasy force-pushed the issue-1151 branch 2 times, most recently from 7455584 to 6158efa Compare May 31, 2023 19:22
@alexcreasy alexcreasy changed the title [WIP] TrustyAI Client TrustyAI Client May 31, 2023
@openshift-ci openshift-ci bot removed the do-not-merge/work-in-progress This PR is in WIP state label May 31, 2023
@DaoDaoNoCode
Copy link
Member

/lgtm

@alexcreasy
Copy link
Contributor Author

/approved

@openshift-ci
Copy link
Contributor

openshift-ci bot commented Jun 1, 2023

[APPROVALNOTIFIER] This PR is APPROVED

Approval requirements bypassed by manually added approval.

This pull-request has been approved by:

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@openshift-merge-robot openshift-merge-robot merged commit 7c4cc3e into opendatahub-io:f/mserving-metrics Jun 1, 2023
@alexcreasy
Copy link
Contributor Author

/approve

openshift-merge-robot pushed a commit that referenced this pull request Jun 30, 2023
* Re-enable Metrics

* Fix Graphs & Configure Infrastructure (#1023)

* Rework Inference Metrics & Add Runtime Metrics (invalid quieries)

* Add stacked line chart functionality

* Trustyai demo phase0 (#1093)

* Explainability: Fairness and Bias Metrics (Phase 0) (#1001) (#1006) (#1007) (#1008)
  - Initial feature set for TrustyAI related UI functionality
  - Adds tab based navigation to modelServing screen
  - Adds a bias metrics tab with charts for visualising SPD and DIR metrics
  - Enhances prometheus query features for accessing TrustyAI data
  - Enhacements to MetricsChart component making it more configurable

* Update key of request name to match trusty backend

* Remove unnecessary div and inline style from tooltip

* Remove 15 minutes refresh option

* Prefer optional prop to type union with undefined

* Move function definitions inline

* Prefer narrowing over type conversion

* Inline tab change handler

* Remove toolbar option from ApplicationsPage

* Inline domain calculator functions

* Move defaultDomainCalculator to utils

* Return null instead of undefined

* Use threshold label instead of index for key

* Add enum for tab keys

* Remove magic numbers from domain calculations

* Make ResponsePredicate mandatory and add predicate to useQueryRangeResourceData

* TrustyAI Client (#1318)

* Add support for insecure http requests in development mode

* Adds low level API client for TrustyAI service

* Adds TrustyAI high level API and contexts

* Get scheme of TrustyAI route from k8s data

* Add model bias configuration table (#1290)

* Add model bias configuration table

* rebase and remove mock data

* Update Trusty AI client to handle API changes (#1336) (#1337)

* Add bias metrics configuration modal (#1343)

* Add configuration modal

* address comments

* get rid of some TODOs and refine the route

* Multi-metric display on model bias screen (#1273) (#1349)

* Enhancements to model bias screen

  * Display of multiple bias charts simultaneously

  * Multi-select component, allowing free text, or select-from-list selection of chartst to display

  * Ability to collapse / expand individual charts

  * User selectable refresh rates of chart data

  * Chart selection and open / closed status is persisted to session cache for life of user's browser session

Display user defined threshold values on charts (#1163)

  * Clean up of bias chart logic

  * Displays thresholds chosen by user, or defaults if none.

  * Improves domain and threshold calculation based on user values or defaults

* Fix metrics submission issue and handle errors (#1378)

* Fix metrics submission issue and handle errors

* fix lint issue

* use error handler on GET functions

* Default and restrict threshold, add tooltips, default duplicate name and set feature flag (#1390)

* Default and restrict threshold, add tooltips, default duplicate name and set feature flag

* fix lint

* add tooltips and dropdown descriptions

* clear data when closing configuration modal

* really solve deleting issue, make empty table view a common component and apply it everywhere

* address comments

* Minor enhancements to bias chart (#1386) (#1399)

* Adds refresh interval options that match openshift observability dashboard

* Show first chart from list, if none selected when user first navigates to bias tab

* Use search icon instead of plus for nothing selected empty state

* Fix error with calculation of 30 days constant

* Deleted charts are removed from session storage

* Fixes issue with bias charts auto-refreshing with stale data (#1403) (#1404)

* Refactor prometheus queries to remove duplication

* Fix graph not refreshing issue

* Add code review suggestions

* Add performance metrics feature flag and refactor runtime server route (#1413)

* Add performance metrics feature flag, refactor runtime server route and solve layout issues

* revert some style changes

* Model serving metrics renaming (#1421)

* Adds support for TrustyAI Operator (#1443)

* Adds support for TrustyAI Operator (#1276)

* Changes from feedback

---------

Co-authored-by: Andrew Ballantyne <aballant@redhat.com>
Co-authored-by: Andrew Ballantyne <8126518+andrewballantyne@users.noreply.github.com>
Co-authored-by: Alex Creasy <acreasy@redhat.com>
Co-authored-by: Alex Creasy <arcreasy@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants