From bc312eb2fc93a1643e9e5d87bf991cb2790e5dc1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tobias=20Bjurstr=C3=B6m?= Date: Mon, 14 Sep 2026 14:04:04 +0200 Subject: [PATCH 1/2] Create README.md for MLOps assignment proposal Testing --- .../demo/week4/tbju-pbystrom/README.md | 48 +++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 contributions/demo/week4/tbju-pbystrom/README.md diff --git a/contributions/demo/week4/tbju-pbystrom/README.md b/contributions/demo/week4/tbju-pbystrom/README.md new file mode 100644 index 000000000..7eebbbfdd --- /dev/null +++ b/contributions/demo/week4/tbju-pbystrom/README.md @@ -0,0 +1,48 @@ +# Assignment Proposal + +## Title + +MLOps + +## Names and KTH ID + + - Student name 1 (student123@kth.se) + - Student name 2 (student321@kth.se) + +## Deadline + +_Selected deadline for the assignment_ + +_If contribution is a **demo** or **scientific-paper** pick one of the following:_ +- Week 2 +- Week 3 +- Week 4 +- Week 5 +- Week 6 +- Week 7 + +_Else pick one of the following:_ +- Task 1 +- Task 2 +- Task 3 + +## Category + +_Category of your proposal_ + +_Pick one of the following:_ +- Demo +- Project +- Executable tutorial +- Scientific paper +- Open source +- Feedback + +## Description + +_Description of your proposal_ + +**Relevance** + +_Motivate the relevance of your proposal with respect to DevOps_ + From 616e4283b2a138015d688f88542a69ced457312d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tobias=20Bjurstr=C3=B6m?= Date: Mon, 14 Sep 2026 14:46:57 +0200 Subject: [PATCH 2/2] Revise assignment proposal for chatbot prompt injection demo Updated the assignment proposal to reflect the new title, team members, and detailed project description. Added information about the demo setup and relevance to DevOps practices. --- .../demo/week4/tbju-pbystrom/README.md | 41 +++++++------------ 1 file changed, 14 insertions(+), 27 deletions(-) diff --git a/contributions/demo/week4/tbju-pbystrom/README.md b/contributions/demo/week4/tbju-pbystrom/README.md index 7eebbbfdd..621ab6e09 100644 --- a/contributions/demo/week4/tbju-pbystrom/README.md +++ b/contributions/demo/week4/tbju-pbystrom/README.md @@ -2,47 +2,34 @@ ## Title -MLOps +Prompt injection protection of a customer support AI bot using Promptfoo ## Names and KTH ID - - Student name 1 (student123@kth.se) - - Student name 2 (student321@kth.se) + - Tobias Bjurström (tbju@kth.se) + - Peter Byström (pbystrom@kth.se ) ## Deadline -_Selected deadline for the assignment_ - -_If contribution is a **demo** or **scientific-paper** pick one of the following:_ -- Week 2 -- Week 3 - Week 4 -- Week 5 -- Week 6 -- Week 7 - -_Else pick one of the following:_ -- Task 1 -- Task 2 -- Task 3 ## Category -_Category of your proposal_ - -_Pick one of the following:_ - Demo -- Project -- Executable tutorial -- Scientific paper -- Open source -- Feedback + ## Description -_Description of your proposal_ +We demo setting up rules and policies for a customer support chatbot and test it against prompt injections and out of scope answers. Each prompt is wrapped by a text declaring the purpose and limitations of the chatbot. A simple devops pipeline is constructed using Github Actions and Promptfoo to define the tests for each pull request. We showcase: -**Relevance** +- The chatbot being vulnerable to prompt injections and going out of scope when the text wrapper is not enabled. +- The wrapper being enabled and it preventing the previous behaviour. +- The .yaml file declaring the tests for the chatbot to pass. This defines the policy-as-code. +- The .yaml file for the Github Actions workflow. +- A pull request failing the defined tests by changing the wrapper text, thus breaking the pre-defined policy. + +We plan to use Gemini CLI as the chatbot and give it simple instructions on what purpose and what limitations it has. For example, bookings at a restaurant, directions there etc. The prompt injection will be to simply try to go out of scope. -_Motivate the relevance of your proposal with respect to DevOps_ +**Relevance** +Continuous maintenance of AI chatbots are becoming more and more common. OWASP cites multiple vulnerabilities in LLMs, for example prompt injections (LLM01:2026). By integrating the development and maintenance of the AI model using Devops principles, we show that such attacks can be prevented and remain prevented.