Mario Onboarding Center

We claim badges:

Hipster: We protect privacy by not saving any user information except the name in our database. Also, provide cartoon avatars instead of real face of the employees.

The Existential Risk: Our AI generates interesting background stories where humans may fail to do so.

Mario badge: Gamification of the onboarding process. Instead of boring onboarding we provide users a game character creation experience when joining the company

Thieving Bastards: We use paid ChatGPT api to do api requests.

Do you want a fast onboarding process for your agents? We have the right solution.

In our company, we use AI to generate images that look like your agents. We have customizable prompts to generate different characters. We can create a quick backstory for an immersive customer experience.

You can choose different appearance options. For Image generation, we will need a prompt and an image of the person. Based on the selected character AI will make your avatar a lookalike.

Take your picture and generate an image. We are using chatgpt API for image generation. It is a subscription model for text generation and pay as you go model for image generation. Using existing api instead of building a stable diffusion solution save from time. We use power automate cloud flows to call API requests and retrieve responses. We let the ai combine user picture and prompt to create a cartoony avatar.We do not save any user information in our dataverse to keep up with privacy requirements

Choose your theme for the background. AI will create a nice-looking story for you. Based on what is said in your story it will set a skill level too. This time we are using text generation apis of chatgpt with flows. Based on selected background option ai will generate a background story and skill level. Skill level considers generated story too, so it is meaningful.

.

Princess Support Requests now simpler than ever! And more esthetically pleasing!

Badges to be claimed:

  • Glossy Pixels: We developed a custom Mario-themed UI for our Princess Self Services portal.
  • Chameleon: Our UI maintains it’s structure with the ever-changing screen size.

The backbone of our system is supporting whatever requests our princesses may have. With that in mind, one of the main objectives while planning for the princess-facing side of the system, we opted for simplicity and a fun user experience before all.

Our home page has only one button, so there is no confusion in their time of need. We went with the opposite logiq than the people that post recipes online.

Once the button is clicked, and the princess creates their profile, the next step is a simple form to gather the important information.

Once they are happy with their request details, and submit, they get redirected to a page listing all of their current and historical request.

Glossy ✨personalized✨ diplomas

We are already building a certification app where aspiring plumbers can complete levels to achieve the PLumber Certifications; PL-200, PL-400 and PL-600. As described in the linked blog post, a flow to create a badge in sharepoint is triggered when the level is completed. That flow has been modified by adding an action to create a diploma with ChatGPT.

We created a Custom Connector for OpenAI API i Power Automate to be able to access image generator.

The custom connector is added as an action in the flow. By getting the rank input from the trigger, we set the certification (rank 1 = PL-200). A prompt is added to the Image Generator-action, as well as other inputs (notice the quality input is set to “HD”). When the inputs are added, you can just Go With the Flow

The URL of the Image Generator-action is added as file content to the new sharepoint file.

Each diploma is different every time it’s generated, making it impossible to replicate. This adds an element of exclusivity and value to the certifications earned through our app. You never know what to expect, much like something you might unearth from Pandora’s Box. The Excellent User Experience and Killer AI is impossible to overlook.

Take a look at two extraordinary certifications examples down below. Are your eyes just as blinded by The Glossy Pixels as ours?? Just look at the HD quality… And isn’t the italian typos a charming effect?

Hammer Bro Head2Head

Ready to win the Head2Head Badge for 25 points – and of course win some swag?

The rules are simple: run around a maze and throw hammers at each other.

If you get hit, you lose a life. The last one alive wins!

Sounds easy, right? Well, here’s the catch: You need to write this game in Power Apps, so you have to be creative with how you make the game work. You might use a turn-based system, or poll the server, or even write your own code components using PCF to connect to a game server or game controllers.

The judges have kindly created a starting point for you if you want to use it!

Why would you do this? Because it’s fun, of course! Oh, and because it will teach you how to use Power Apps for real-time notifications and user interactions, which might unlock some new opportunities when building business apps. So what are you waiting for? Grab a hammer and start smashing out that app!

The first person to submit a working multiplayer game via a blog post wins!

Data mine(kart)

In order to train our AI-model we need a lot data, but in order to have the correct data, we also need bananas. Being IT people, we never thought of using actual bananas, but instead had a hotel employee in a suit deliver 20 a3 pages of printed bananas that we cut out and glued to pieces of cardboard. Compete with their individual banana stands:

We then placed the bananas in the road around the hotel, got in the car and drove around filming the road from the dashboard inside the car. The conditions were quite foggy and bad, but the enthusiasm was electric. We ended up with a lot of footage including some of a consenting dog and owner.

We then started feeding all the videos to our model, mining for frames that contained actual bananas – our gold.

This is done in a jupyter notebook in python. The first thing the model does is identify all frames that contained potenital bananas, and singling them out. We ended up with over 10 000 potential banana frames. This is one of them with an obvious banana:

The model then strips away everything that is not a banana, in order to get the precise location of the banana:

Furthermore the model does a cutout of the frame around the banana which ends up being used in our actual dataset giving the banana detection app an excellent base and understanding of how to identify bananas.

Actual video from the training data:

Video of banana making:

Photo gallery of Herman and Erik placing bananas and driving around filming the bananas.

Drag and drop! UPDATED!

Hey, folks! Do you like puzzles? Do you like Power Apps? Do you like drag and drop stuff? If you answered yes to any of these questions, then you will our newest game Puzzle!

What is this game?

The image puzzle is hidden inside a painting in one of our game locations. You will have to drag and drop the pieces of an image to complete the puzzle. Sounds easy, right? Well, not so fast. You probaly need to find some sort of pattern to follow. So good luck with that!

How did we make it?

We used a super awesome component that Scott Durow made. It’s called the Drag and Drop component, and it lets you create drag and drop user interfaces in Power Apps. Scott is a genius and a legend, and he shared his component on GitHub for everyone to use.

Now, you might be thinking: “Wow, that’s so cool! You must be a great developer to use Scott’s component in your game!” Well, not really. You have to download the component and install it in your environment, then add it to your app

We have a table in Dataverse containing links to the images (you have to host the images externally as of now)

Then we display the images by modifying the itemTemplate and force them to be the same size

And then on each onDrop, we check if the images have the right position.

Which gives us this cool puzzle:

How do I play it? 

Ending this post by stating that we are NOT attempting to claim Glossy Pixels with this post at this time.

Come find us! 

LowCode + ProCode

Use power fx to handle the overall function of the canvas app and send the more difficult logic to azure functions and custom api pluggin.

The azure function handles all the major quiz master logic between Azure AI and canvas app. 

The custom api plugin in dynamics written in C# handles the positioning of the user of the app relative to the work order and return if the user is close enough for a quizz to appen. 

In order to generate questions about Super Mario in for the canvas app we are using both Lowcode and Procode. The Azure Function APP consists of two functions written in C# to talk to the Azure Open AI Service through their SDK. In Power Apps there has been defined a new Custom Connector that talks with handles the requests to the Function App. There is also a plugin that has been written in C# to calculate the current position of the user so we can trigger the questions to be shown at the right location.

GetQuestion function:
The purpose of this function is to generate a new question about Super Mario. The canvas app will store these questions and if present it will be included in the next request to ensure that the same question wont be repeated.

CheckAnswer:
The canvas app uses this function together with the saved session to check if the answer is correct. This function will only return true or false.

Third party solutions

We leverage multiple third-party solutions to optimize and enhance the effectiveness of our services for both the company and our customers.

The BingMaps to show the location of the work order and tracking where the plumber is at the current location.

Stripe connection is used inn power pages to pay for the workorder that the customer has order

Linkmobilty connection to confirm that the work order is payed for and that the plumber is on his way

Docusign for generating documents for signing the work order before you pay.

Remarkable Team Spirit

This year we are focusing not only on our own Team Spirit, but we are brining the team spirit to all of the teams!.

Every single team is equipped with a trigger button. When they click the button a signal is sent to a Raspberry PI that starts playing a tune. All teams have their own tunes. At the end of the tune we have a voice “Team X just claimed another badge”.

The intention is to create a competitive and celebratory mindset of claiming badges. This way we can cheer each other along while making progress.

Let us show you our potentyally world destroying AI

Responsible AI implementation is critical, especially as we delve deeper into advanced technologies. Microsoft is leading the way with its six foundational principles of responsible AI. In this post, our spotlight is on one of these key principles: reliability and safety.

Consider a scenario where a language model, which I developed, exercises complete control over another language model’s instructions. This setup immediately poses a challenging question of accountability, particularly if the subordinate language model engages in undesirable behavior, such as generating insults. While it might seem straightforward, the responsibility ultimately falls on me, as the developer. This underscores the importance of integrating robust oversight mechanisms and ethical guidelines in AI systems to ensure they operate within the realms of reliability and safety. By doing so, we can not only mitigate risks but also enhance the trustworthiness of AI applications in our increasingly digital world.

The described solution represents a high-level design overview. Leveraging the Bot Framework, it analyzes user sentiment and feeds this data into PromptFlow. However, it’s at this juncture where we encounter the more nuanced, potentially contentious aspect of our solution.

Our current PromptFlow process is straightforward yet effective. It primarily requires two inputs: sentiment and text input. Utilizing the meta-prompter LLM, the system communicates with an OpenAI instance located in Norway East. The core function here is to relay instructions to a secondary language model, ensuring the generated content aligns with the specified sentiment.

While this mechanism might not seem revolutionary, its effectiveness is largely due to the robust moderation capabilities of Azure’s OpenAI instances. These safeguards are crucial in preventing misuse or unintended consequences.

However, it’s important to acknowledge the potential risks. In the hands of someone with advanced prompt engineering skills and access to the right language models, this system could be manipulated into producing outputs that are ‘very non-compliant’ with ethical guidelines.

We recognize that our self-prompting AI solution might not be groundbreaking in practical applications, but it has already earned us the Dooh badge, showcasing our innovative approach within this technological space.