SlideShare a Scribd company logo
1 of 36
Download to read offline
KFServing Payload Logging
Animesh Singh, Clive Cox
Trust and Transparency
into AI..
Does it really matter?
It does…more so
in these
unprecedented
times….
“If we fail to make ethical
and inclusive artificial
intelligence we risk losing
gains made in civil rights
and gender equity under
the guise of machine
neutrality.”
Joy Buolamwini
Gender Shades
MIT Media Lab
Joy Buolamwini – MIT Media Lab <https://www.media.mit.edu/people/joyab/overview/> (CC BY 4.0).
Is it fair? Is it easy to
understand?
Is it accountable?
Did anyone
tamper with it?
FAIRNESS EXPLAINABILITY
ROBUSTNESS
LINEAGE
Vision for Trusted AI
Bias in AI
Example: Criminal Justice System
● Since 2008, nearly
every arrestee in
Broward County,
Florida has been
assigned a risk score
using Northpointe’s
COMPAS algorithm.
● Defendants with low
risk scores are
released on bail.
● It falsely flagged
black defendants as
future criminals,
wrongly labeling
them this way at
almost twice the rate
as white defendants
Machine Bias— ProPublica<https://www.propublica.org/article/machine-bias-risk-assessments-in-criminal-sentencing>.
.
AI needs to explain its decision!
And there are different ways to explain
One explanation does not fit all
Different stakeholders require explanations for different purposes and with
different objectives, and explanations will have to be tailored to their needs.
End users/customers (trust)
Doctors: Why did you recommend this treatment?
Customers: Why was my loan denied?
Teachers: Why was my teaching evaluated in this way?
Gov’t/regulators (compliance, safety)
Prove to me that you didn't discriminate.
Developers (quality, “debuggability”)
Is our system performing well?
How can we improve it?
https://arxiv.org/pdf/1707.08945.pdf
8
Adversarial threats to AI
Trust and Transparency
into AI..
How Open Source is addressing this…..
FAIRNESS EXPLAINABILITY
ROBUSTNESS LINEAGE
Trusted AI Lifecycle through Open Source..
Adversarial Robustness
360
↳ (ART)
AI Fairness
360
↳ (AIF360)
AI Explainability 360
↳ (AIX360)
github.com/trusted-
ai/adversarial-
robustness-toolbox
art-demo.mybluemix.net
github.com/ trusted-ai
/AIF360
aif360.mybluemix.net
• github.com/ trusted-ai
/AIX360
aix360.mybluemix.net
https://aifs360.myblue
mix.net/
Is it fair?
Is it easy to
understand?
Is it accountable?
Did anyone
tamper with it?
AI Factsheets
360
…..In Open Governance
Adversarial Robustness
360
↳ (ART)
AI Fairness
360
↳ (AIF360)
AI Explainability 360
↳ (AIX360)
github.com/trusted-
ai/adversarial-
robustness-toolbox
art-demo.mybluemix.net
github.com/ trusted-ai
/AIF360
aif360.mybluemix.net
• github.com/ trusted-ai
/AIX360
aix360.mybluemix.net
https://aifs360.myblue
mix.net/
AI Factsheets
360
..And integrated with KFServing
https://ai-fairness-360.org/
https://ai-explainability-360.org/
https://adversarial-robustness-toolbox.org/
Alibi and Alibi Detect integrated with KFServing
AI Explainability and Adversarial Robustness
in KFServing
InferenceService
YAML
Kubernetes
API
ETCD
InferenceService
Controller
Webhook Configmap
(initial create)
Explainer
[Alibi, AIX360, ART]
Transformer
Predictor
Model Server
Model Agent
Queue proxy
AI Explainability 360 KFServing Spec
AIX 360 Explainer Example
AI Explainability 360 using LIME
AI Explainability 360-KFServing Integration
Adversarial Robustness 360 KFServing Spec
ART KFServing Example
Adversarial Robustness Toolbox (ART) using Square Attack
Adversarial Robustness Toolbox-KFServing Integration
What about more advanced metrics?
Bias, Drift, Outlier, Anomaly Detection….
Is single prediction enough?
AI Fairness 360
↳ (AIF360)
AIF360
20
Ø AIF360 toolkit is an open-source library to help detect
and remove bias in machine learning models. AIF360
translates algorithmic research from the lab into practice.
Applicable domains include finance, human capital
management, healthcare, and education.
Ø The AI Fairness 360 Python package includes a
comprehensive set of metrics for datasets and models to
test for biases, explanations for these metrics, and
algorithms to mitigate bias in datasets and models.
Ø Fairness metrics (70+)
Fairness metric explanations
Bias mitigation algorithms (10+)
Ø http://aif360.mybluemix.net/
AIF360 in KFServing
AIF calculates metrics from the payload logs of a model’s previous
predictions
Model Persistent Storage
Prediction
request Store logs
Analyze
prediction logs
AIF360
Explainer
Bias Metrics
Payload Logging for analysis and offline processing
Why:
● Capture payloads for analysis and
future retraining of the model
● Perform offline processing of the
requests and responses
KFServing Implementation (alpha):
● Add to any InferenceService Endpoint:
Predictor, Explainer, Transformer
● Log Requests, Responses or Both from
the Endpoint
● Simple specify a URL to send the
payloads
● URL will receive CloudEvents
POST /event HTTP/1.0
Host: example.com
Content-Type: application/json
ce-specversion: 1.0
ce-type: repo.newItem
ce-source: http://bigco.com/repo
ce-id: 610b6dd4-c85d-417b-b58f-3771e532
<payload>
Parameters for AIF360 in KFServing
Current Samples in KFServing
The current demos uses the logger to send events to the
message dumper for displaying the events as container logs.
Then use a local Jupyter notebook to parse those logs and
display the requests/response payload
What we are working towards….
Extending Payload Logging Design
The Goal of the initial design is to minimize the amount of custom code and try to use out of the box components as much as
possible. The AIF360 bias detector with self queuing approach
Flow:
Ø Logger sends events to the eventing broker ingress. If the broker ingress is behind an eventing channel, the events will be
persistent with the channel config such as Kakfa.
Ø Trigger watch all the broker events and filter them with an attribute. Then sends the matched events to the attribute subscribers.
Ø AIF360 is the subscriber of this trigger. The AIF360 server needs to have some queuing method to stall all the events. Once it
stalls enough events, it will process them as a batch and calculate the bias metrics based on that.
Ø The AIF360 Server can push all the AIF360 metrics and processed events to Prometheus or to a message dumper for displaying
the results
Custom containers:
● AIF360 bias detector with self queuing.
Extending Payload Logging Design
Ideal Design (Single User)
SK-Learn model
with logger
(kafka_connect
schema)
Eventing Broker
Ingress
Cloud event v1
Eventing
Channel
Channel pods
(In-mem, Kakfa, NATS, GCP pub/sub)
Kafka cluster
AIF360
bias detector
(without self-queuing) Visualizer UI
Results
Persistent DB
Pull Batch data and
push back fairness results
Kafka connect with DB driver
(consumer)
1 2
3
4
5
Prometheus
Apply Channel and
Kafka settings (Topics)
Kafka API
Metrics transformer
6
Pull db tables
Push time series metrics
topic
Ideal Design (Single User)
The Goal of the ideal design is to have more flexibility on where we can capture and store events. It also decouple several components to
make it more scalable. Please be aware that Kafka and sink is not necessary in this design. Kafka is here to showcase how easy to plugin a
new streaming services for capturing the event flow at different levels.
Flow:
Ø Logger sends Cloud Events with Kafka connect schema to the eventing broker ingress that’s behind an eventing channel.
Ø The Cloud Event will be translated and be persisted with the channel config such as Kafka using the Kafka API.
Ø The Kafka connect (standalone) is processing the streaming queue. This Kafka connect server transforms all the events and persist them
to a relational db.
Ø The AIF360 Server need to take batched events based on the time period and requests from the database. Then it calculate the bias
metrics store the results back to the relational db.
Ø The Metrics transformer takes all the explainer events/metrics such as ART, AIF, AIX and transform them into a set of time series metrics
that Prometheus can understand.
Ø A visualizer UI is needed for displaying the Prometheus data. It can be a Grafana UI with our custom Grafana graphs.
Custom containers:
● AIF360 bias detector (no custom queuing)
● Event processing container
● Visualizer UI
Multi-User (single event flow)
SK-Learn model
with logger
(kafka_connect
schema)
Eventing Broker
Ingress
Cloud event v1
Channel pods
(In-mem, Kakfa, NATS, GCP pub/sub)
Kafka cluster
AIF360
bias detector
(without self-queuing) Visualizer UI
Results
Persistent db
Pull Batch data and
push back fairness results
Kafka connect with db driver
(consumer A)
1 2
3
4
5
Prometheus
Apply Channel and
Kafka settings (Topics, auth)
Kafka API with SASL auth
Metrics transformer
6
Pull db tables
Push time series metrics
ACL: topic A
Eventing
Channel
Multi-User (user management)
Eventing
channel A CRD*
(with topic A)
Kafka Channel controller**
Kafka cluster
consumer A
2
3
Kafka API with
SASL auth for the user topic
Topic A
User management
and Authorization
(ACL)
Namespace A Namespace B
Eventing
channel B CRD*
(with topic B)
consumer B
Topic B
3
Kafka Broker**
*All the CRD workloads are
handled in the controller in the
Knative control plane namespace.
Knative Webhook**
Broker CRD* Broker CRD*
Apply Channel and
Kafka topic settings (Topics, auth)
Knative Eventing Control plane
(0.17+ with V1 CRD only)
Zookeeper
SK-Learn model
with logger
Cloud event v1
1
Namespace Kafka
**The channel controller and broker
has a dispatcher for offloading the
requests. It's omitted in the diagram
for simplification.
*The total number of pods in the Knative
Control plane is 8 (single replica) + 3
default TM channel pods that are
manually removable.
Multi-User
For Multi-users, each namespace can only have one channel and that channel will bind with an authentication method such
as SASL. On the Kafka level, it will use the same SASL to verify the Kafka API calls and authorize with zookeeper.
Zookeeper then handle the ACL to manage topic permissions for each user.
Flows:
1. KFServing logger sends a cloud event with SASL authentications (TBD) to the Knative broker.
2. KNative broker will verify the authentication and send the request to Kafka. Zookeeper then authorize the request and
determine the permissions. If allows, store the events into the specified topic.
3. Consumers can listen to the topic stream if they have the ACL. Here, authentications are done with the Kafka API.
4. If multiple users are sharing the same database and AIF server, then those components also need to implement ACL
and possibly some kind of authorization.
Challenges:
1. KFServing doesn’t have the concept of users, so anyone who login into Kubeflow have access to all KFServing model
endpoints. This also means KFServing doesn’t know what user token it should use when sending logger events to the
authenticate eventing channel.
Data Schema
Column Name Data Type Description
ts timestamp Measurement timestamp
mid str Uuid for the transaction
measurement str Description of what the measurement
value str Json string of the measurement
binding_id string ID of a service binding
subscription_id string ID of a subscription
deployment_id string ID of a deployment
asset_revision string ID of an asset revision (version)
process string Name of the producer process
KFServing payload logging using
Kafka
insert_json = {
"ts": time.time(),
"mid": str(uuid.uuid4()),
"measurement": "fairness",
"value": json.dumps(metrics_json),
"binding_id": None,
"subscription_id": None,
"deployment_id": model_name,
"asset_revision": None,
"process": "aif-cronjob"
}
insert_stmt = "INSERT INTO " + table + " ("
+ ", ".join(insert_json.keys()).rstrip(", ") + ") "
values_stmt = "VALUES (" + ("%s, " *
len(insert_json.keys())).rstrip(", ") + ")"
Iter8 Integration with KFServing
• Effort to standardize
around capturing
KFServing metrics and
taking actions based on
metrics
• Use an iter8 experiment
to safely expose
competing versions of a
model to traffic, gather
in-depth insights about
key performance and
metrics for your model
versions, and
intelligently rollout the
best version of your
models
LFAI Trusted AI
Committee
https://wiki.lfai.foundation/display/DL/Trusted+AI+Committee
Bring Trust, Transparency and Responsibility into AI
TRUSTED AI
ü Principles Working Group
ü Technical Working Group
Chairs Region Company
Animesh Singh North America IBM
Souad Ouali Europe Orange
Jeff Cao Asia Tencent
Links
Github:
https://github.com/kubeflow/kfserving/tree/master/docs/samples/explanation/a
ix/mnist
https://github.com/drewbutlerbb4/kfserving/tree/trusted-ai-
robustness/docs/samples/explanation/art/mnist
Design Document:
https://docs.google.com/document/d/1avFbKVcaV9zFfEGjvQCGYjaOG8Q_Cz2rk
TSVZOfme00/edit?usp=sharing

More Related Content

What's hot

KFServing and Kubeflow Pipelines
KFServing and Kubeflow PipelinesKFServing and Kubeflow Pipelines
KFServing and Kubeflow PipelinesAnimesh Singh
 
End to-end example: consumer loan acceptance scoring using kubeflow
End to-end example: consumer loan acceptance scoring using kubeflowEnd to-end example: consumer loan acceptance scoring using kubeflow
End to-end example: consumer loan acceptance scoring using kubeflowRadovan Parrak
 
Apache Kafka, Tiered Storage and TensorFlow for Streaming Machine Learning wi...
Apache Kafka, Tiered Storage and TensorFlow for Streaming Machine Learning wi...Apache Kafka, Tiered Storage and TensorFlow for Streaming Machine Learning wi...
Apache Kafka, Tiered Storage and TensorFlow for Streaming Machine Learning wi...confluent
 
Cloud native Kafka | Sascha Holtbruegge and Margaretha Erber, HiveMQ
Cloud native Kafka | Sascha Holtbruegge and Margaretha Erber, HiveMQCloud native Kafka | Sascha Holtbruegge and Margaretha Erber, HiveMQ
Cloud native Kafka | Sascha Holtbruegge and Margaretha Erber, HiveMQHostedbyConfluent
 
Secure Kafka at scale in true multi-tenant environment ( Vishnu Balusu & Asho...
Secure Kafka at scale in true multi-tenant environment ( Vishnu Balusu & Asho...Secure Kafka at scale in true multi-tenant environment ( Vishnu Balusu & Asho...
Secure Kafka at scale in true multi-tenant environment ( Vishnu Balusu & Asho...confluent
 
Serverless Workflow: New approach to Kubernetes service orchestration | DevNa...
Serverless Workflow: New approach to Kubernetes service orchestration | DevNa...Serverless Workflow: New approach to Kubernetes service orchestration | DevNa...
Serverless Workflow: New approach to Kubernetes service orchestration | DevNa...Red Hat Developers
 
Realizing the promise of portability with Apache Beam
Realizing the promise of portability with Apache BeamRealizing the promise of portability with Apache Beam
Realizing the promise of portability with Apache BeamJ On The Beach
 
Kubeflow Distributed Training and HPO
Kubeflow Distributed Training and HPOKubeflow Distributed Training and HPO
Kubeflow Distributed Training and HPOAnimesh Singh
 
Kafka at the Edge: an IoT scenario with OpenShift Streams for Apache Kafka | ...
Kafka at the Edge: an IoT scenario with OpenShift Streams for Apache Kafka | ...Kafka at the Edge: an IoT scenario with OpenShift Streams for Apache Kafka | ...
Kafka at the Edge: an IoT scenario with OpenShift Streams for Apache Kafka | ...Red Hat Developers
 
Using Location Data to Showcase Keys, Windows, and Joins in Kafka Streams DSL...
Using Location Data to Showcase Keys, Windows, and Joins in Kafka Streams DSL...Using Location Data to Showcase Keys, Windows, and Joins in Kafka Streams DSL...
Using Location Data to Showcase Keys, Windows, and Joins in Kafka Streams DSL...confluent
 
Confluent Developer Training
Confluent Developer TrainingConfluent Developer Training
Confluent Developer Trainingconfluent
 
Creating Connector to Bridge the Worlds of Kafka and gRPC at Wework (Anoop Di...
Creating Connector to Bridge the Worlds of Kafka and gRPC at Wework (Anoop Di...Creating Connector to Bridge the Worlds of Kafka and gRPC at Wework (Anoop Di...
Creating Connector to Bridge the Worlds of Kafka and gRPC at Wework (Anoop Di...confluent
 
Failing to Cross the Streams – Lessons Learned the Hard Way | Philip Schmitt,...
Failing to Cross the Streams – Lessons Learned the Hard Way | Philip Schmitt,...Failing to Cross the Streams – Lessons Learned the Hard Way | Philip Schmitt,...
Failing to Cross the Streams – Lessons Learned the Hard Way | Philip Schmitt,...HostedbyConfluent
 
IoT and Event Streaming at Scale with Apache Kafka
IoT and Event Streaming at Scale with Apache KafkaIoT and Event Streaming at Scale with Apache Kafka
IoT and Event Streaming at Scale with Apache Kafkaconfluent
 
From Postgres to Event-Driven: using docker-compose to build CDC pipelines in...
From Postgres to Event-Driven: using docker-compose to build CDC pipelines in...From Postgres to Event-Driven: using docker-compose to build CDC pipelines in...
From Postgres to Event-Driven: using docker-compose to build CDC pipelines in...confluent
 
What's New in Confluent Platform 5.5
What's New in Confluent Platform 5.5What's New in Confluent Platform 5.5
What's New in Confluent Platform 5.5confluent
 
From bytes to objects: describing your events | Dale Lane and Kate Stanley, IBM
From bytes to objects: describing your events | Dale Lane and Kate Stanley, IBMFrom bytes to objects: describing your events | Dale Lane and Kate Stanley, IBM
From bytes to objects: describing your events | Dale Lane and Kate Stanley, IBMHostedbyConfluent
 
Kafka Connect and Streams (Concepts, Architecture, Features)
Kafka Connect and Streams (Concepts, Architecture, Features)Kafka Connect and Streams (Concepts, Architecture, Features)
Kafka Connect and Streams (Concepts, Architecture, Features)Kai Wähner
 
Flexible Authentication Strategies with SASL/OAUTHBEARER (Michael Kaminski, T...
Flexible Authentication Strategies with SASL/OAUTHBEARER (Michael Kaminski, T...Flexible Authentication Strategies with SASL/OAUTHBEARER (Michael Kaminski, T...
Flexible Authentication Strategies with SASL/OAUTHBEARER (Michael Kaminski, T...confluent
 

What's hot (20)

KFServing and Kubeflow Pipelines
KFServing and Kubeflow PipelinesKFServing and Kubeflow Pipelines
KFServing and Kubeflow Pipelines
 
End to-end example: consumer loan acceptance scoring using kubeflow
End to-end example: consumer loan acceptance scoring using kubeflowEnd to-end example: consumer loan acceptance scoring using kubeflow
End to-end example: consumer loan acceptance scoring using kubeflow
 
Apache Kafka, Tiered Storage and TensorFlow for Streaming Machine Learning wi...
Apache Kafka, Tiered Storage and TensorFlow for Streaming Machine Learning wi...Apache Kafka, Tiered Storage and TensorFlow for Streaming Machine Learning wi...
Apache Kafka, Tiered Storage and TensorFlow for Streaming Machine Learning wi...
 
Cloud native Kafka | Sascha Holtbruegge and Margaretha Erber, HiveMQ
Cloud native Kafka | Sascha Holtbruegge and Margaretha Erber, HiveMQCloud native Kafka | Sascha Holtbruegge and Margaretha Erber, HiveMQ
Cloud native Kafka | Sascha Holtbruegge and Margaretha Erber, HiveMQ
 
Secure Kafka at scale in true multi-tenant environment ( Vishnu Balusu & Asho...
Secure Kafka at scale in true multi-tenant environment ( Vishnu Balusu & Asho...Secure Kafka at scale in true multi-tenant environment ( Vishnu Balusu & Asho...
Secure Kafka at scale in true multi-tenant environment ( Vishnu Balusu & Asho...
 
Kubeflow repos
Kubeflow reposKubeflow repos
Kubeflow repos
 
Serverless Workflow: New approach to Kubernetes service orchestration | DevNa...
Serverless Workflow: New approach to Kubernetes service orchestration | DevNa...Serverless Workflow: New approach to Kubernetes service orchestration | DevNa...
Serverless Workflow: New approach to Kubernetes service orchestration | DevNa...
 
Realizing the promise of portability with Apache Beam
Realizing the promise of portability with Apache BeamRealizing the promise of portability with Apache Beam
Realizing the promise of portability with Apache Beam
 
Kubeflow Distributed Training and HPO
Kubeflow Distributed Training and HPOKubeflow Distributed Training and HPO
Kubeflow Distributed Training and HPO
 
Kafka at the Edge: an IoT scenario with OpenShift Streams for Apache Kafka | ...
Kafka at the Edge: an IoT scenario with OpenShift Streams for Apache Kafka | ...Kafka at the Edge: an IoT scenario with OpenShift Streams for Apache Kafka | ...
Kafka at the Edge: an IoT scenario with OpenShift Streams for Apache Kafka | ...
 
Using Location Data to Showcase Keys, Windows, and Joins in Kafka Streams DSL...
Using Location Data to Showcase Keys, Windows, and Joins in Kafka Streams DSL...Using Location Data to Showcase Keys, Windows, and Joins in Kafka Streams DSL...
Using Location Data to Showcase Keys, Windows, and Joins in Kafka Streams DSL...
 
Confluent Developer Training
Confluent Developer TrainingConfluent Developer Training
Confluent Developer Training
 
Creating Connector to Bridge the Worlds of Kafka and gRPC at Wework (Anoop Di...
Creating Connector to Bridge the Worlds of Kafka and gRPC at Wework (Anoop Di...Creating Connector to Bridge the Worlds of Kafka and gRPC at Wework (Anoop Di...
Creating Connector to Bridge the Worlds of Kafka and gRPC at Wework (Anoop Di...
 
Failing to Cross the Streams – Lessons Learned the Hard Way | Philip Schmitt,...
Failing to Cross the Streams – Lessons Learned the Hard Way | Philip Schmitt,...Failing to Cross the Streams – Lessons Learned the Hard Way | Philip Schmitt,...
Failing to Cross the Streams – Lessons Learned the Hard Way | Philip Schmitt,...
 
IoT and Event Streaming at Scale with Apache Kafka
IoT and Event Streaming at Scale with Apache KafkaIoT and Event Streaming at Scale with Apache Kafka
IoT and Event Streaming at Scale with Apache Kafka
 
From Postgres to Event-Driven: using docker-compose to build CDC pipelines in...
From Postgres to Event-Driven: using docker-compose to build CDC pipelines in...From Postgres to Event-Driven: using docker-compose to build CDC pipelines in...
From Postgres to Event-Driven: using docker-compose to build CDC pipelines in...
 
What's New in Confluent Platform 5.5
What's New in Confluent Platform 5.5What's New in Confluent Platform 5.5
What's New in Confluent Platform 5.5
 
From bytes to objects: describing your events | Dale Lane and Kate Stanley, IBM
From bytes to objects: describing your events | Dale Lane and Kate Stanley, IBMFrom bytes to objects: describing your events | Dale Lane and Kate Stanley, IBM
From bytes to objects: describing your events | Dale Lane and Kate Stanley, IBM
 
Kafka Connect and Streams (Concepts, Architecture, Features)
Kafka Connect and Streams (Concepts, Architecture, Features)Kafka Connect and Streams (Concepts, Architecture, Features)
Kafka Connect and Streams (Concepts, Architecture, Features)
 
Flexible Authentication Strategies with SASL/OAUTHBEARER (Michael Kaminski, T...
Flexible Authentication Strategies with SASL/OAUTHBEARER (Michael Kaminski, T...Flexible Authentication Strategies with SASL/OAUTHBEARER (Michael Kaminski, T...
Flexible Authentication Strategies with SASL/OAUTHBEARER (Michael Kaminski, T...
 

Similar to KFServing Payload Logging for Trusted AI

Stream Processing with Flink and Stream Sharing
Stream Processing with Flink and Stream SharingStream Processing with Flink and Stream Sharing
Stream Processing with Flink and Stream Sharingconfluent
 
Apache Kafka vs. Integration Middleware (MQ, ETL, ESB)
Apache Kafka vs. Integration Middleware (MQ, ETL, ESB)Apache Kafka vs. Integration Middleware (MQ, ETL, ESB)
Apache Kafka vs. Integration Middleware (MQ, ETL, ESB)Kai Wähner
 
Apache Kafka - Scalable Message-Processing and more !
Apache Kafka - Scalable Message-Processing and more !Apache Kafka - Scalable Message-Processing and more !
Apache Kafka - Scalable Message-Processing and more !Guido Schmutz
 
How to Build Streaming Apps with Confluent II
How to Build Streaming Apps with Confluent IIHow to Build Streaming Apps with Confluent II
How to Build Streaming Apps with Confluent IIconfluent
 
Building event-driven (Micro)Services with Apache Kafka Ecosystem
Building event-driven (Micro)Services with Apache Kafka EcosystemBuilding event-driven (Micro)Services with Apache Kafka Ecosystem
Building event-driven (Micro)Services with Apache Kafka EcosystemGuido Schmutz
 
A Practical Deep Dive into Observability of Streaming Applications with Kosta...
A Practical Deep Dive into Observability of Streaming Applications with Kosta...A Practical Deep Dive into Observability of Streaming Applications with Kosta...
A Practical Deep Dive into Observability of Streaming Applications with Kosta...HostedbyConfluent
 
Mobile Analytics mit Elasticsearch und Kibana
Mobile Analytics mit Elasticsearch und KibanaMobile Analytics mit Elasticsearch und Kibana
Mobile Analytics mit Elasticsearch und Kibanainovex GmbH
 
Streamsheets and Apache Kafka – Interactively build real-time Dashboards and ...
Streamsheets and Apache Kafka – Interactively build real-time Dashboards and ...Streamsheets and Apache Kafka – Interactively build real-time Dashboards and ...
Streamsheets and Apache Kafka – Interactively build real-time Dashboards and ...confluent
 
Cinema booking system | Movie Booking System
Cinema booking system | Movie Booking SystemCinema booking system | Movie Booking System
Cinema booking system | Movie Booking Systemsekarsadasivam
 
Apache Kafka vs. Traditional Middleware (Kai Waehner, Confluent) Frankfurt 20...
Apache Kafka vs. Traditional Middleware (Kai Waehner, Confluent) Frankfurt 20...Apache Kafka vs. Traditional Middleware (Kai Waehner, Confluent) Frankfurt 20...
Apache Kafka vs. Traditional Middleware (Kai Waehner, Confluent) Frankfurt 20...confluent
 
Apache Kafka vs. Integration Middleware (MQ, ETL, ESB) - Friends, Enemies or ...
Apache Kafka vs. Integration Middleware (MQ, ETL, ESB) - Friends, Enemies or ...Apache Kafka vs. Integration Middleware (MQ, ETL, ESB) - Friends, Enemies or ...
Apache Kafka vs. Integration Middleware (MQ, ETL, ESB) - Friends, Enemies or ...confluent
 
ApacheCon NA - Apache Camel K: connect your Knative serverless applications w...
ApacheCon NA - Apache Camel K: connect your Knative serverless applications w...ApacheCon NA - Apache Camel K: connect your Knative serverless applications w...
ApacheCon NA - Apache Camel K: connect your Knative serverless applications w...Nicola Ferraro
 
IoT Architectures for Apache Kafka and Event Streaming - Industry 4.0, Digita...
IoT Architectures for Apache Kafka and Event Streaming - Industry 4.0, Digita...IoT Architectures for Apache Kafka and Event Streaming - Industry 4.0, Digita...
IoT Architectures for Apache Kafka and Event Streaming - Industry 4.0, Digita...Kai Wähner
 
Concepts and Patterns for Streaming Services with Kafka
Concepts and Patterns for Streaming Services with KafkaConcepts and Patterns for Streaming Services with Kafka
Concepts and Patterns for Streaming Services with KafkaQAware GmbH
 
What is Apache Kafka and What is an Event Streaming Platform?
What is Apache Kafka and What is an Event Streaming Platform?What is Apache Kafka and What is an Event Streaming Platform?
What is Apache Kafka and What is an Event Streaming Platform?confluent
 
JHipster conf 2019 - Kafka Ecosystem
JHipster conf 2019 - Kafka EcosystemJHipster conf 2019 - Kafka Ecosystem
JHipster conf 2019 - Kafka EcosystemFlorent Ramiere
 
Top 5 Event Streaming Use Cases for 2021 with Apache Kafka
Top 5 Event Streaming Use Cases for 2021 with Apache KafkaTop 5 Event Streaming Use Cases for 2021 with Apache Kafka
Top 5 Event Streaming Use Cases for 2021 with Apache KafkaKai Wähner
 
The Top 5 Event Streaming Use Cases & Architectures in 2021
The Top 5 Event Streaming Use Cases & Architectures in 2021The Top 5 Event Streaming Use Cases & Architectures in 2021
The Top 5 Event Streaming Use Cases & Architectures in 2021confluent
 
Applying ML on your Data in Motion with AWS and Confluent | Joseph Morais, Co...
Applying ML on your Data in Motion with AWS and Confluent | Joseph Morais, Co...Applying ML on your Data in Motion with AWS and Confluent | Joseph Morais, Co...
Applying ML on your Data in Motion with AWS and Confluent | Joseph Morais, Co...HostedbyConfluent
 
10 Lessons Learned from using Kafka in 1000 microservices - ScalaUA
10 Lessons Learned from using Kafka in 1000 microservices - ScalaUA10 Lessons Learned from using Kafka in 1000 microservices - ScalaUA
10 Lessons Learned from using Kafka in 1000 microservices - ScalaUANatan Silnitsky
 

Similar to KFServing Payload Logging for Trusted AI (20)

Stream Processing with Flink and Stream Sharing
Stream Processing with Flink and Stream SharingStream Processing with Flink and Stream Sharing
Stream Processing with Flink and Stream Sharing
 
Apache Kafka vs. Integration Middleware (MQ, ETL, ESB)
Apache Kafka vs. Integration Middleware (MQ, ETL, ESB)Apache Kafka vs. Integration Middleware (MQ, ETL, ESB)
Apache Kafka vs. Integration Middleware (MQ, ETL, ESB)
 
Apache Kafka - Scalable Message-Processing and more !
Apache Kafka - Scalable Message-Processing and more !Apache Kafka - Scalable Message-Processing and more !
Apache Kafka - Scalable Message-Processing and more !
 
How to Build Streaming Apps with Confluent II
How to Build Streaming Apps with Confluent IIHow to Build Streaming Apps with Confluent II
How to Build Streaming Apps with Confluent II
 
Building event-driven (Micro)Services with Apache Kafka Ecosystem
Building event-driven (Micro)Services with Apache Kafka EcosystemBuilding event-driven (Micro)Services with Apache Kafka Ecosystem
Building event-driven (Micro)Services with Apache Kafka Ecosystem
 
A Practical Deep Dive into Observability of Streaming Applications with Kosta...
A Practical Deep Dive into Observability of Streaming Applications with Kosta...A Practical Deep Dive into Observability of Streaming Applications with Kosta...
A Practical Deep Dive into Observability of Streaming Applications with Kosta...
 
Mobile Analytics mit Elasticsearch und Kibana
Mobile Analytics mit Elasticsearch und KibanaMobile Analytics mit Elasticsearch und Kibana
Mobile Analytics mit Elasticsearch und Kibana
 
Streamsheets and Apache Kafka – Interactively build real-time Dashboards and ...
Streamsheets and Apache Kafka – Interactively build real-time Dashboards and ...Streamsheets and Apache Kafka – Interactively build real-time Dashboards and ...
Streamsheets and Apache Kafka – Interactively build real-time Dashboards and ...
 
Cinema booking system | Movie Booking System
Cinema booking system | Movie Booking SystemCinema booking system | Movie Booking System
Cinema booking system | Movie Booking System
 
Apache Kafka vs. Traditional Middleware (Kai Waehner, Confluent) Frankfurt 20...
Apache Kafka vs. Traditional Middleware (Kai Waehner, Confluent) Frankfurt 20...Apache Kafka vs. Traditional Middleware (Kai Waehner, Confluent) Frankfurt 20...
Apache Kafka vs. Traditional Middleware (Kai Waehner, Confluent) Frankfurt 20...
 
Apache Kafka vs. Integration Middleware (MQ, ETL, ESB) - Friends, Enemies or ...
Apache Kafka vs. Integration Middleware (MQ, ETL, ESB) - Friends, Enemies or ...Apache Kafka vs. Integration Middleware (MQ, ETL, ESB) - Friends, Enemies or ...
Apache Kafka vs. Integration Middleware (MQ, ETL, ESB) - Friends, Enemies or ...
 
ApacheCon NA - Apache Camel K: connect your Knative serverless applications w...
ApacheCon NA - Apache Camel K: connect your Knative serverless applications w...ApacheCon NA - Apache Camel K: connect your Knative serverless applications w...
ApacheCon NA - Apache Camel K: connect your Knative serverless applications w...
 
IoT Architectures for Apache Kafka and Event Streaming - Industry 4.0, Digita...
IoT Architectures for Apache Kafka and Event Streaming - Industry 4.0, Digita...IoT Architectures for Apache Kafka and Event Streaming - Industry 4.0, Digita...
IoT Architectures for Apache Kafka and Event Streaming - Industry 4.0, Digita...
 
Concepts and Patterns for Streaming Services with Kafka
Concepts and Patterns for Streaming Services with KafkaConcepts and Patterns for Streaming Services with Kafka
Concepts and Patterns for Streaming Services with Kafka
 
What is Apache Kafka and What is an Event Streaming Platform?
What is Apache Kafka and What is an Event Streaming Platform?What is Apache Kafka and What is an Event Streaming Platform?
What is Apache Kafka and What is an Event Streaming Platform?
 
JHipster conf 2019 - Kafka Ecosystem
JHipster conf 2019 - Kafka EcosystemJHipster conf 2019 - Kafka Ecosystem
JHipster conf 2019 - Kafka Ecosystem
 
Top 5 Event Streaming Use Cases for 2021 with Apache Kafka
Top 5 Event Streaming Use Cases for 2021 with Apache KafkaTop 5 Event Streaming Use Cases for 2021 with Apache Kafka
Top 5 Event Streaming Use Cases for 2021 with Apache Kafka
 
The Top 5 Event Streaming Use Cases & Architectures in 2021
The Top 5 Event Streaming Use Cases & Architectures in 2021The Top 5 Event Streaming Use Cases & Architectures in 2021
The Top 5 Event Streaming Use Cases & Architectures in 2021
 
Applying ML on your Data in Motion with AWS and Confluent | Joseph Morais, Co...
Applying ML on your Data in Motion with AWS and Confluent | Joseph Morais, Co...Applying ML on your Data in Motion with AWS and Confluent | Joseph Morais, Co...
Applying ML on your Data in Motion with AWS and Confluent | Joseph Morais, Co...
 
10 Lessons Learned from using Kafka in 1000 microservices - ScalaUA
10 Lessons Learned from using Kafka in 1000 microservices - ScalaUA10 Lessons Learned from using Kafka in 1000 microservices - ScalaUA
10 Lessons Learned from using Kafka in 1000 microservices - ScalaUA
 

More from Animesh Singh

Defend against adversarial AI using Adversarial Robustness Toolbox
Defend against adversarial AI using Adversarial Robustness Toolbox Defend against adversarial AI using Adversarial Robustness Toolbox
Defend against adversarial AI using Adversarial Robustness Toolbox Animesh Singh
 
Advanced Model Inferencing leveraging Kubeflow Serving, KNative and Istio
Advanced Model Inferencing leveraging Kubeflow Serving, KNative and IstioAdvanced Model Inferencing leveraging Kubeflow Serving, KNative and Istio
Advanced Model Inferencing leveraging Kubeflow Serving, KNative and IstioAnimesh Singh
 
Hybrid Cloud, Kubeflow and Tensorflow Extended [TFX]
Hybrid Cloud, Kubeflow and Tensorflow Extended [TFX]Hybrid Cloud, Kubeflow and Tensorflow Extended [TFX]
Hybrid Cloud, Kubeflow and Tensorflow Extended [TFX]Animesh Singh
 
Trusted, Transparent and Fair AI using Open Source
Trusted, Transparent and Fair AI using Open SourceTrusted, Transparent and Fair AI using Open Source
Trusted, Transparent and Fair AI using Open SourceAnimesh Singh
 
AIF360 - Trusted and Fair AI
AIF360 - Trusted and Fair AIAIF360 - Trusted and Fair AI
AIF360 - Trusted and Fair AIAnimesh Singh
 
AI & Machine Learning Pipelines with Knative
AI & Machine Learning Pipelines with KnativeAI & Machine Learning Pipelines with Knative
AI & Machine Learning Pipelines with KnativeAnimesh Singh
 
Fabric for Deep Learning
Fabric for Deep LearningFabric for Deep Learning
Fabric for Deep LearningAnimesh Singh
 
Microservices, Kubernetes and Istio - A Great Fit!
Microservices, Kubernetes and Istio - A Great Fit!Microservices, Kubernetes and Istio - A Great Fit!
Microservices, Kubernetes and Istio - A Great Fit!Animesh Singh
 
How to build a Distributed Serverless Polyglot Microservices IoT Platform us...
How to build a Distributed Serverless Polyglot Microservices IoT Platform us...How to build a Distributed Serverless Polyglot Microservices IoT Platform us...
How to build a Distributed Serverless Polyglot Microservices IoT Platform us...Animesh Singh
 
How to build an event-driven, polyglot serverless microservices framework on ...
How to build an event-driven, polyglot serverless microservices framework on ...How to build an event-driven, polyglot serverless microservices framework on ...
How to build an event-driven, polyglot serverless microservices framework on ...Animesh Singh
 
As a Service: Cloud Foundry on OpenStack - Lessons Learnt
As a Service: Cloud Foundry on OpenStack - Lessons LearntAs a Service: Cloud Foundry on OpenStack - Lessons Learnt
As a Service: Cloud Foundry on OpenStack - Lessons LearntAnimesh Singh
 
Introducing Cloud Native, Event Driven, Serverless, Micrsoservices Framework ...
Introducing Cloud Native, Event Driven, Serverless, Micrsoservices Framework ...Introducing Cloud Native, Event Driven, Serverless, Micrsoservices Framework ...
Introducing Cloud Native, Event Driven, Serverless, Micrsoservices Framework ...Animesh Singh
 
Finding and-organizing Great Cloud Foundry User Groups
Finding and-organizing Great Cloud Foundry User GroupsFinding and-organizing Great Cloud Foundry User Groups
Finding and-organizing Great Cloud Foundry User GroupsAnimesh Singh
 
CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...
CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...
CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...Animesh Singh
 
Building a PaaS Platform like Bluemix on OpenStack
Building a PaaS Platform like Bluemix on OpenStackBuilding a PaaS Platform like Bluemix on OpenStack
Building a PaaS Platform like Bluemix on OpenStackAnimesh Singh
 
Cloud foundry Docker Openstack - Leading Open Source Triumvirate
Cloud foundry Docker Openstack - Leading Open Source TriumvirateCloud foundry Docker Openstack - Leading Open Source Triumvirate
Cloud foundry Docker Openstack - Leading Open Source TriumvirateAnimesh Singh
 
Build Scalable Internet of Things Apps using Cloud Foundry, Bluemix & Cloudant
Build Scalable Internet of Things Apps using Cloud Foundry, Bluemix & CloudantBuild Scalable Internet of Things Apps using Cloud Foundry, Bluemix & Cloudant
Build Scalable Internet of Things Apps using Cloud Foundry, Bluemix & CloudantAnimesh Singh
 
Automated Lifecycle Management - CloudFoundry on OpenStack
Automated Lifecycle Management - CloudFoundry on OpenStackAutomated Lifecycle Management - CloudFoundry on OpenStack
Automated Lifecycle Management - CloudFoundry on OpenStackAnimesh Singh
 
Docker OpenStack Cloud Foundry
Docker OpenStack Cloud FoundryDocker OpenStack Cloud Foundry
Docker OpenStack Cloud FoundryAnimesh Singh
 
Cloud Foundry BOSH CPI for OpenStack
Cloud Foundry BOSH CPI for OpenStackCloud Foundry BOSH CPI for OpenStack
Cloud Foundry BOSH CPI for OpenStackAnimesh Singh
 

More from Animesh Singh (20)

Defend against adversarial AI using Adversarial Robustness Toolbox
Defend against adversarial AI using Adversarial Robustness Toolbox Defend against adversarial AI using Adversarial Robustness Toolbox
Defend against adversarial AI using Adversarial Robustness Toolbox
 
Advanced Model Inferencing leveraging Kubeflow Serving, KNative and Istio
Advanced Model Inferencing leveraging Kubeflow Serving, KNative and IstioAdvanced Model Inferencing leveraging Kubeflow Serving, KNative and Istio
Advanced Model Inferencing leveraging Kubeflow Serving, KNative and Istio
 
Hybrid Cloud, Kubeflow and Tensorflow Extended [TFX]
Hybrid Cloud, Kubeflow and Tensorflow Extended [TFX]Hybrid Cloud, Kubeflow and Tensorflow Extended [TFX]
Hybrid Cloud, Kubeflow and Tensorflow Extended [TFX]
 
Trusted, Transparent and Fair AI using Open Source
Trusted, Transparent and Fair AI using Open SourceTrusted, Transparent and Fair AI using Open Source
Trusted, Transparent and Fair AI using Open Source
 
AIF360 - Trusted and Fair AI
AIF360 - Trusted and Fair AIAIF360 - Trusted and Fair AI
AIF360 - Trusted and Fair AI
 
AI & Machine Learning Pipelines with Knative
AI & Machine Learning Pipelines with KnativeAI & Machine Learning Pipelines with Knative
AI & Machine Learning Pipelines with Knative
 
Fabric for Deep Learning
Fabric for Deep LearningFabric for Deep Learning
Fabric for Deep Learning
 
Microservices, Kubernetes and Istio - A Great Fit!
Microservices, Kubernetes and Istio - A Great Fit!Microservices, Kubernetes and Istio - A Great Fit!
Microservices, Kubernetes and Istio - A Great Fit!
 
How to build a Distributed Serverless Polyglot Microservices IoT Platform us...
How to build a Distributed Serverless Polyglot Microservices IoT Platform us...How to build a Distributed Serverless Polyglot Microservices IoT Platform us...
How to build a Distributed Serverless Polyglot Microservices IoT Platform us...
 
How to build an event-driven, polyglot serverless microservices framework on ...
How to build an event-driven, polyglot serverless microservices framework on ...How to build an event-driven, polyglot serverless microservices framework on ...
How to build an event-driven, polyglot serverless microservices framework on ...
 
As a Service: Cloud Foundry on OpenStack - Lessons Learnt
As a Service: Cloud Foundry on OpenStack - Lessons LearntAs a Service: Cloud Foundry on OpenStack - Lessons Learnt
As a Service: Cloud Foundry on OpenStack - Lessons Learnt
 
Introducing Cloud Native, Event Driven, Serverless, Micrsoservices Framework ...
Introducing Cloud Native, Event Driven, Serverless, Micrsoservices Framework ...Introducing Cloud Native, Event Driven, Serverless, Micrsoservices Framework ...
Introducing Cloud Native, Event Driven, Serverless, Micrsoservices Framework ...
 
Finding and-organizing Great Cloud Foundry User Groups
Finding and-organizing Great Cloud Foundry User GroupsFinding and-organizing Great Cloud Foundry User Groups
Finding and-organizing Great Cloud Foundry User Groups
 
CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...
CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...
CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...
 
Building a PaaS Platform like Bluemix on OpenStack
Building a PaaS Platform like Bluemix on OpenStackBuilding a PaaS Platform like Bluemix on OpenStack
Building a PaaS Platform like Bluemix on OpenStack
 
Cloud foundry Docker Openstack - Leading Open Source Triumvirate
Cloud foundry Docker Openstack - Leading Open Source TriumvirateCloud foundry Docker Openstack - Leading Open Source Triumvirate
Cloud foundry Docker Openstack - Leading Open Source Triumvirate
 
Build Scalable Internet of Things Apps using Cloud Foundry, Bluemix & Cloudant
Build Scalable Internet of Things Apps using Cloud Foundry, Bluemix & CloudantBuild Scalable Internet of Things Apps using Cloud Foundry, Bluemix & Cloudant
Build Scalable Internet of Things Apps using Cloud Foundry, Bluemix & Cloudant
 
Automated Lifecycle Management - CloudFoundry on OpenStack
Automated Lifecycle Management - CloudFoundry on OpenStackAutomated Lifecycle Management - CloudFoundry on OpenStack
Automated Lifecycle Management - CloudFoundry on OpenStack
 
Docker OpenStack Cloud Foundry
Docker OpenStack Cloud FoundryDocker OpenStack Cloud Foundry
Docker OpenStack Cloud Foundry
 
Cloud Foundry BOSH CPI for OpenStack
Cloud Foundry BOSH CPI for OpenStackCloud Foundry BOSH CPI for OpenStack
Cloud Foundry BOSH CPI for OpenStack
 

Recently uploaded

Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DaySri Ambati
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 

Recently uploaded (20)

Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 

KFServing Payload Logging for Trusted AI

  • 2. Trust and Transparency into AI.. Does it really matter?
  • 3. It does…more so in these unprecedented times….
  • 4. “If we fail to make ethical and inclusive artificial intelligence we risk losing gains made in civil rights and gender equity under the guise of machine neutrality.” Joy Buolamwini Gender Shades MIT Media Lab Joy Buolamwini – MIT Media Lab <https://www.media.mit.edu/people/joyab/overview/> (CC BY 4.0).
  • 5. Is it fair? Is it easy to understand? Is it accountable? Did anyone tamper with it? FAIRNESS EXPLAINABILITY ROBUSTNESS LINEAGE Vision for Trusted AI
  • 6. Bias in AI Example: Criminal Justice System ● Since 2008, nearly every arrestee in Broward County, Florida has been assigned a risk score using Northpointe’s COMPAS algorithm. ● Defendants with low risk scores are released on bail. ● It falsely flagged black defendants as future criminals, wrongly labeling them this way at almost twice the rate as white defendants Machine Bias— ProPublica<https://www.propublica.org/article/machine-bias-risk-assessments-in-criminal-sentencing>. .
  • 7. AI needs to explain its decision! And there are different ways to explain One explanation does not fit all Different stakeholders require explanations for different purposes and with different objectives, and explanations will have to be tailored to their needs. End users/customers (trust) Doctors: Why did you recommend this treatment? Customers: Why was my loan denied? Teachers: Why was my teaching evaluated in this way? Gov’t/regulators (compliance, safety) Prove to me that you didn't discriminate. Developers (quality, “debuggability”) Is our system performing well? How can we improve it?
  • 9. Trust and Transparency into AI.. How Open Source is addressing this…..
  • 10. FAIRNESS EXPLAINABILITY ROBUSTNESS LINEAGE Trusted AI Lifecycle through Open Source.. Adversarial Robustness 360 ↳ (ART) AI Fairness 360 ↳ (AIF360) AI Explainability 360 ↳ (AIX360) github.com/trusted- ai/adversarial- robustness-toolbox art-demo.mybluemix.net github.com/ trusted-ai /AIF360 aif360.mybluemix.net • github.com/ trusted-ai /AIX360 aix360.mybluemix.net https://aifs360.myblue mix.net/ Is it fair? Is it easy to understand? Is it accountable? Did anyone tamper with it? AI Factsheets 360
  • 11. …..In Open Governance Adversarial Robustness 360 ↳ (ART) AI Fairness 360 ↳ (AIF360) AI Explainability 360 ↳ (AIX360) github.com/trusted- ai/adversarial- robustness-toolbox art-demo.mybluemix.net github.com/ trusted-ai /AIF360 aif360.mybluemix.net • github.com/ trusted-ai /AIX360 aix360.mybluemix.net https://aifs360.myblue mix.net/ AI Factsheets 360
  • 12. ..And integrated with KFServing https://ai-fairness-360.org/ https://ai-explainability-360.org/ https://adversarial-robustness-toolbox.org/
  • 13. Alibi and Alibi Detect integrated with KFServing
  • 14. AI Explainability and Adversarial Robustness in KFServing InferenceService YAML Kubernetes API ETCD InferenceService Controller Webhook Configmap (initial create) Explainer [Alibi, AIX360, ART] Transformer Predictor Model Server Model Agent Queue proxy
  • 15. AI Explainability 360 KFServing Spec
  • 16. AIX 360 Explainer Example AI Explainability 360 using LIME AI Explainability 360-KFServing Integration
  • 17. Adversarial Robustness 360 KFServing Spec
  • 18. ART KFServing Example Adversarial Robustness Toolbox (ART) using Square Attack Adversarial Robustness Toolbox-KFServing Integration
  • 19. What about more advanced metrics? Bias, Drift, Outlier, Anomaly Detection…. Is single prediction enough?
  • 20. AI Fairness 360 ↳ (AIF360) AIF360 20 Ø AIF360 toolkit is an open-source library to help detect and remove bias in machine learning models. AIF360 translates algorithmic research from the lab into practice. Applicable domains include finance, human capital management, healthcare, and education. Ø The AI Fairness 360 Python package includes a comprehensive set of metrics for datasets and models to test for biases, explanations for these metrics, and algorithms to mitigate bias in datasets and models. Ø Fairness metrics (70+) Fairness metric explanations Bias mitigation algorithms (10+) Ø http://aif360.mybluemix.net/
  • 21. AIF360 in KFServing AIF calculates metrics from the payload logs of a model’s previous predictions Model Persistent Storage Prediction request Store logs Analyze prediction logs AIF360 Explainer Bias Metrics
  • 22. Payload Logging for analysis and offline processing Why: ● Capture payloads for analysis and future retraining of the model ● Perform offline processing of the requests and responses KFServing Implementation (alpha): ● Add to any InferenceService Endpoint: Predictor, Explainer, Transformer ● Log Requests, Responses or Both from the Endpoint ● Simple specify a URL to send the payloads ● URL will receive CloudEvents POST /event HTTP/1.0 Host: example.com Content-Type: application/json ce-specversion: 1.0 ce-type: repo.newItem ce-source: http://bigco.com/repo ce-id: 610b6dd4-c85d-417b-b58f-3771e532 <payload>
  • 23. Parameters for AIF360 in KFServing
  • 24. Current Samples in KFServing The current demos uses the logger to send events to the message dumper for displaying the events as container logs. Then use a local Jupyter notebook to parse those logs and display the requests/response payload
  • 25. What we are working towards….
  • 27. The Goal of the initial design is to minimize the amount of custom code and try to use out of the box components as much as possible. The AIF360 bias detector with self queuing approach Flow: Ø Logger sends events to the eventing broker ingress. If the broker ingress is behind an eventing channel, the events will be persistent with the channel config such as Kakfa. Ø Trigger watch all the broker events and filter them with an attribute. Then sends the matched events to the attribute subscribers. Ø AIF360 is the subscriber of this trigger. The AIF360 server needs to have some queuing method to stall all the events. Once it stalls enough events, it will process them as a batch and calculate the bias metrics based on that. Ø The AIF360 Server can push all the AIF360 metrics and processed events to Prometheus or to a message dumper for displaying the results Custom containers: ● AIF360 bias detector with self queuing. Extending Payload Logging Design
  • 28. Ideal Design (Single User) SK-Learn model with logger (kafka_connect schema) Eventing Broker Ingress Cloud event v1 Eventing Channel Channel pods (In-mem, Kakfa, NATS, GCP pub/sub) Kafka cluster AIF360 bias detector (without self-queuing) Visualizer UI Results Persistent DB Pull Batch data and push back fairness results Kafka connect with DB driver (consumer) 1 2 3 4 5 Prometheus Apply Channel and Kafka settings (Topics) Kafka API Metrics transformer 6 Pull db tables Push time series metrics topic
  • 29. Ideal Design (Single User) The Goal of the ideal design is to have more flexibility on where we can capture and store events. It also decouple several components to make it more scalable. Please be aware that Kafka and sink is not necessary in this design. Kafka is here to showcase how easy to plugin a new streaming services for capturing the event flow at different levels. Flow: Ø Logger sends Cloud Events with Kafka connect schema to the eventing broker ingress that’s behind an eventing channel. Ø The Cloud Event will be translated and be persisted with the channel config such as Kafka using the Kafka API. Ø The Kafka connect (standalone) is processing the streaming queue. This Kafka connect server transforms all the events and persist them to a relational db. Ø The AIF360 Server need to take batched events based on the time period and requests from the database. Then it calculate the bias metrics store the results back to the relational db. Ø The Metrics transformer takes all the explainer events/metrics such as ART, AIF, AIX and transform them into a set of time series metrics that Prometheus can understand. Ø A visualizer UI is needed for displaying the Prometheus data. It can be a Grafana UI with our custom Grafana graphs. Custom containers: ● AIF360 bias detector (no custom queuing) ● Event processing container ● Visualizer UI
  • 30. Multi-User (single event flow) SK-Learn model with logger (kafka_connect schema) Eventing Broker Ingress Cloud event v1 Channel pods (In-mem, Kakfa, NATS, GCP pub/sub) Kafka cluster AIF360 bias detector (without self-queuing) Visualizer UI Results Persistent db Pull Batch data and push back fairness results Kafka connect with db driver (consumer A) 1 2 3 4 5 Prometheus Apply Channel and Kafka settings (Topics, auth) Kafka API with SASL auth Metrics transformer 6 Pull db tables Push time series metrics ACL: topic A Eventing Channel
  • 31. Multi-User (user management) Eventing channel A CRD* (with topic A) Kafka Channel controller** Kafka cluster consumer A 2 3 Kafka API with SASL auth for the user topic Topic A User management and Authorization (ACL) Namespace A Namespace B Eventing channel B CRD* (with topic B) consumer B Topic B 3 Kafka Broker** *All the CRD workloads are handled in the controller in the Knative control plane namespace. Knative Webhook** Broker CRD* Broker CRD* Apply Channel and Kafka topic settings (Topics, auth) Knative Eventing Control plane (0.17+ with V1 CRD only) Zookeeper SK-Learn model with logger Cloud event v1 1 Namespace Kafka **The channel controller and broker has a dispatcher for offloading the requests. It's omitted in the diagram for simplification. *The total number of pods in the Knative Control plane is 8 (single replica) + 3 default TM channel pods that are manually removable.
  • 32. Multi-User For Multi-users, each namespace can only have one channel and that channel will bind with an authentication method such as SASL. On the Kafka level, it will use the same SASL to verify the Kafka API calls and authorize with zookeeper. Zookeeper then handle the ACL to manage topic permissions for each user. Flows: 1. KFServing logger sends a cloud event with SASL authentications (TBD) to the Knative broker. 2. KNative broker will verify the authentication and send the request to Kafka. Zookeeper then authorize the request and determine the permissions. If allows, store the events into the specified topic. 3. Consumers can listen to the topic stream if they have the ACL. Here, authentications are done with the Kafka API. 4. If multiple users are sharing the same database and AIF server, then those components also need to implement ACL and possibly some kind of authorization. Challenges: 1. KFServing doesn’t have the concept of users, so anyone who login into Kubeflow have access to all KFServing model endpoints. This also means KFServing doesn’t know what user token it should use when sending logger events to the authenticate eventing channel.
  • 33. Data Schema Column Name Data Type Description ts timestamp Measurement timestamp mid str Uuid for the transaction measurement str Description of what the measurement value str Json string of the measurement binding_id string ID of a service binding subscription_id string ID of a subscription deployment_id string ID of a deployment asset_revision string ID of an asset revision (version) process string Name of the producer process KFServing payload logging using Kafka insert_json = { "ts": time.time(), "mid": str(uuid.uuid4()), "measurement": "fairness", "value": json.dumps(metrics_json), "binding_id": None, "subscription_id": None, "deployment_id": model_name, "asset_revision": None, "process": "aif-cronjob" } insert_stmt = "INSERT INTO " + table + " (" + ", ".join(insert_json.keys()).rstrip(", ") + ") " values_stmt = "VALUES (" + ("%s, " * len(insert_json.keys())).rstrip(", ") + ")"
  • 34. Iter8 Integration with KFServing • Effort to standardize around capturing KFServing metrics and taking actions based on metrics • Use an iter8 experiment to safely expose competing versions of a model to traffic, gather in-depth insights about key performance and metrics for your model versions, and intelligently rollout the best version of your models
  • 35. LFAI Trusted AI Committee https://wiki.lfai.foundation/display/DL/Trusted+AI+Committee Bring Trust, Transparency and Responsibility into AI TRUSTED AI ü Principles Working Group ü Technical Working Group Chairs Region Company Animesh Singh North America IBM Souad Ouali Europe Orange Jeff Cao Asia Tencent